/* VƯỜN NGOẠI NGỮ v6.15.350 — ENGLISH READING + PART E SHADOWING */
body.v350-reading-shadow #skillTabs .skill-tab[data-skill="shadowing"]{
  display:none!important;
}
body.v350-reading-shadow #skill-reading>.flow-subnav,
body.v350-reading-shadow #skill-reading #readingReadAlongLabel,
body.v350-reading-shadow #skill-reading #readingReadAlongAccess{
  display:none!important;
}
body.v350-reading-shadow .v350-reading-tabs{
  display:flex;
  gap:8px;
  margin:0 0 12px;
  padding:5px;
  border:1px solid #dbe7e3;
  border-radius:15px;
  background:#f6faf8;
}
body.v350-reading-shadow .v350-reading-tabs button{
  flex:1 1 0;
  min-height:46px;
  border:0;
  border-radius:11px;
  background:transparent;
  font:inherit;
  font-weight:850;
  color:#526963;
  cursor:pointer;
}
body.v350-reading-shadow .v350-reading-tabs button.active{
  background:#fff;
  color:#0b746b;
  box-shadow:0 2px 10px rgba(15,143,131,.12);
}
body.v350-reading-shadow #v350PartEShadowing[hidden],
body.v350-reading-shadow #readingContent[hidden]{
  display:none!important;
}
body.v350-reading-shadow .v350-shadow-shell{
  display:grid;
  gap:11px;
}
body.v350-reading-shadow .v350-shadow-intro{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:14px 15px;
  border:1px solid #dbe7e3;
  border-radius:16px;
  background:#fff;
}
body.v350-reading-shadow .v350-shadow-intro span{
  display:block;
  margin-bottom:3px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.06em;
  color:#0f8f83;
}
body.v350-reading-shadow .v350-shadow-intro strong{
  display:block;
  font-size:18px;
  line-height:1.35;
  color:#173b36;
}
body.v350-reading-shadow .v350-shadow-intro small{
  display:block;
  margin-top:5px;
  line-height:1.45;
  color:#64748b;
}
body.v350-reading-shadow .v350-shadow-badge{
  flex:0 0 auto;
  padding:6px 9px;
  border-radius:999px;
  background:#e9f7f5;
  color:#0b746b;
  font-size:11px!important;
  font-weight:900!important;
  white-space:nowrap;
}
body.v350-reading-shadow .v350-karaoke-card,
body.v350-reading-shadow .v350-score-card{
  border:1px solid #dbe7e3;
  border-radius:16px;
  background:#fff;
  padding:13px;
}
body.v350-reading-shadow .v350-karaoke-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin-bottom:10px;
}
body.v350-reading-shadow .v350-karaoke-toolbar button,
body.v350-reading-shadow .v350-record-actions button{
  min-height:42px;
}
body.v350-reading-shadow .v350-karaoke-toolbar label{
  display:flex;
  align-items:center;
  gap:6px;
  margin-left:auto;
  font-size:12px;
  font-weight:800;
  color:#526963;
}
body.v350-reading-shadow .v350-karaoke-toolbar select{
  min-height:38px;
  border:1px solid #d8e4e0;
  border-radius:10px;
  background:#fff;
  padding:0 8px;
}
body.v350-reading-shadow .v350-part-e-audio{
  width:100%;
  margin:0 0 10px;
}
body.v350-reading-shadow .v350-karaoke-status{
  margin:0 0 9px;
  font-size:12px;
  font-weight:750;
  color:#64748b;
}
body.v350-reading-shadow .v350-lines{
  display:grid;
  gap:7px;
  max-height:460px;
  overflow:auto;
  scroll-behavior:smooth;
  padding:2px;
}
body.v350-reading-shadow .v350-line{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:10px;
  align-items:start;
  width:100%;
  border:1px solid #e1e9e6;
  border-radius:13px;
  background:#fbfdfc;
  padding:11px 12px;
  text-align:left;
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
body.v350-reading-shadow .v350-line:hover{
  border-color:#badbd3;
}
body.v350-reading-shadow .v350-line.active{
  border-color:#0f8f83;
  background:#eaf8f5;
  box-shadow:0 0 0 2px rgba(15,143,131,.08);
}
body.v350-reading-shadow .v350-line.selected:not(.active){
  border-color:#8ec8bc;
}
body.v350-reading-shadow .v350-line-num{
  display:flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:#eef4f2;
  color:#4d6761;
  font-size:12px;
  font-weight:900;
}
body.v350-reading-shadow .v350-line.active .v350-line-num{
  background:#0f8f83;
  color:#fff;
}
body.v350-reading-shadow .v350-line-copy strong{
  display:block;
  font-size:17px;
  line-height:1.5;
  color:#173b36;
}
body.v350-reading-shadow .v350-line-copy small{
  display:block;
  margin-top:4px;
  font-size:13px;
  line-height:1.45;
  color:#6b7d79;
}
body.v350-reading-shadow .v350-lines.hide-vi small{
  display:none!important;
}
body.v350-reading-shadow .v350-record-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start;
  margin-bottom:9px;
}
body.v350-reading-shadow .v350-record-head strong{
  font-size:15px;
  color:#173b36;
}
body.v350-reading-shadow .v350-record-head small{
  display:block;
  margin-top:3px;
  line-height:1.4;
  color:#64748b;
}
body.v350-reading-shadow .v350-record-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
body.v350-reading-shadow .v350-recorded-audio{
  width:100%;
  margin-top:10px;
}
body.v350-reading-shadow .v350-ai-result{
  margin-top:10px;
  padding:12px;
  border-radius:13px;
  background:#f8fbfa;
  border:1px solid #dbe7e3;
}
body.v350-reading-shadow .v350-score-row{
  display:flex;
  gap:12px;
  align-items:center;
}
body.v350-reading-shadow .v350-score-number{
  flex:0 0 auto;
  min-width:72px;
  text-align:center;
  padding:10px 8px;
  border-radius:14px;
  background:#e9f7f5;
}
body.v350-reading-shadow .v350-score-number strong{
  display:block;
  font-size:28px;
  line-height:1;
  color:#0b746b;
}
body.v350-reading-shadow .v350-score-number span{
  font-size:11px;
  color:#64748b;
}
body.v350-reading-shadow .v350-ai-copy{
  min-width:0;
}
body.v350-reading-shadow .v350-ai-copy p{
  margin:4px 0;
  line-height:1.5;
}
body.v350-reading-shadow .v350-word-grid{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:9px;
}
body.v350-reading-shadow .v350-word{
  padding:4px 7px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  background:#eef4f2;
  color:#526963;
}
body.v350-reading-shadow .v350-word.ok{
  background:#e8f7ef;
  color:#21704b;
}
body.v350-reading-shadow .v350-word.bad{
  background:#fff0ee;
  color:#a23d32;
}
body.v350-reading-shadow .v350-free-cta{
  margin-top:9px;
  font-weight:800;
  color:#0b746b;
}
body.v350-reading-shadow .v350-warning{
  padding:14px;
  border:1px solid #eadfbe;
  border-radius:14px;
  background:#fffaf0;
  color:#765f2c;
  line-height:1.5;
}

@media(max-width:620px){
  body.v350-reading-shadow .v350-reading-tabs{
    position:sticky;
    top:0;
    z-index:8;
  }
  body.v350-reading-shadow .v350-reading-tabs button{
    min-height:44px;
    font-size:14px;
  }
  body.v350-reading-shadow .v350-shadow-intro{
    flex-direction:column;
  }
  body.v350-reading-shadow .v350-karaoke-toolbar{
    align-items:stretch;
  }
  body.v350-reading-shadow .v350-karaoke-toolbar button{
    flex:1 1 135px;
  }
  body.v350-reading-shadow .v350-karaoke-toolbar label{
    margin-left:0;
    flex:1 1 100%;
    justify-content:space-between;
  }
  body.v350-reading-shadow .v350-lines{
    max-height:54vh;
  }
  body.v350-reading-shadow .v350-line-copy strong{
    font-size:16px;
  }
  body.v350-reading-shadow .v350-record-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:420px){
  body.v350-reading-shadow .v350-record-actions{
    grid-template-columns:1fr;
  }
}

/* v6.15.351 · detailed AI feedback */
body.v350-reading-shadow .v351-ai-breakdown{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px;
  margin-top:11px;
}
body.v350-reading-shadow .v351-ai-breakdown span{
  display:grid;
  gap:2px;
  text-align:center;
  padding:9px 6px;
  border:1px solid #dbe7e3;
  border-radius:11px;
  background:#fbfdfc;
}
body.v350-reading-shadow .v351-ai-breakdown small{
  font-size:10px;
  line-height:1.25;
  color:#64748b;
}
body.v350-reading-shadow .v351-ai-breakdown strong{
  font-size:18px;
  color:#173b36;
}
body.v350-reading-shadow .v351-ai-summary{
  margin:10px 0 0;
  padding:10px 11px;
  border-radius:11px;
  background:#f4faf8;
  line-height:1.5;
}
body.v350-reading-shadow .v351-ai-issues,
body.v350-reading-shadow .v351-ai-priority{
  margin-top:10px;
  padding:10px 11px;
  border:1px solid #e1e9e6;
  border-radius:11px;
  background:#fff;
}
body.v350-reading-shadow .v351-ai-issues ul{
  margin:7px 0 0;
  padding-left:20px;
  display:grid;
  gap:8px;
}
body.v350-reading-shadow .v351-ai-issues li{
  line-height:1.45;
}
body.v350-reading-shadow .v351-ai-issues li small{
  display:block;
  margin-top:2px;
  color:#526963;
}
body.v350-reading-shadow .v351-ai-priority{
  line-height:1.5;
}
body.v350-reading-shadow .v351-ai-evidence{
  margin-top:9px;
  padding:8px 10px;
  border-radius:10px;
  background:#f8fafc;
  color:#64748b;
  font-size:11px;
  line-height:1.45;
}
@media(max-width:620px){
  body.v350-reading-shadow .v351-ai-breakdown{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* v6.15.352 · silent self-practice under Part E */
body.v350-reading-shadow .v352-self-card{
  border:1px solid #dbe7e3;
  border-radius:16px;
  background:#fff;
  padding:13px;
}
body.v350-reading-shadow .v352-self-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
body.v350-reading-shadow .v352-self-head span{
  display:block;
  margin-bottom:3px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.06em;
  color:#0f8f83;
}
body.v350-reading-shadow .v352-self-head strong{
  display:block;
  font-size:17px;
  line-height:1.4;
  color:#173b36;
}
body.v350-reading-shadow .v352-self-head small{
  display:block;
  margin-top:5px;
  max-width:760px;
  line-height:1.45;
  color:#64748b;
}
body.v350-reading-shadow .v352-self-head>b{
  flex:0 0 auto;
  padding:6px 9px;
  border-radius:999px;
  background:#eef4f2;
  color:#526963;
  font-size:10px;
  letter-spacing:.05em;
}
body.v350-reading-shadow .v352-self-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin:12px 0 9px;
}
body.v350-reading-shadow .v352-self-toolbar button{
  min-height:42px;
}
body.v350-reading-shadow .v352-self-toolbar label{
  margin-left:auto;
  display:flex;
  gap:6px;
  align-items:center;
  font-size:12px;
  font-weight:800;
  color:#526963;
}
body.v350-reading-shadow .v352-self-toolbar select{
  min-height:38px;
  border:1px solid #d8e4e0;
  border-radius:10px;
  background:#fff;
  padding:0 8px;
}
body.v350-reading-shadow .v352-self-progress{
  height:5px;
  overflow:hidden;
  border-radius:999px;
  background:#edf3f1;
}
body.v350-reading-shadow .v352-self-progress i{
  display:block;
  width:0;
  height:100%;
  border-radius:999px;
  background:currentColor;
  color:#0f8f83;
  transition:width .2s ease;
}
body.v350-reading-shadow .v352-self-status{
  margin:8px 0;
  font-size:12px;
  font-weight:750;
  color:#64748b;
}
body.v350-reading-shadow .v352-self-passage{
  max-height:330px;
  overflow:auto;
  padding:14px;
  border:1px solid #e4ece9;
  border-radius:13px;
  background:#fbfdfc;
  font-size:17px;
  line-height:1.9;
  color:#173b36;
  scroll-behavior:smooth;
}
body.v350-reading-shadow .v352-self-passage span{
  display:inline;
  padding:2px 3px;
  border-radius:6px;
  cursor:pointer;
  transition:background .15s ease,color .15s ease,box-shadow .15s ease;
}
body.v350-reading-shadow .v352-self-passage span.passed{
  color:#71817d;
}
body.v350-reading-shadow .v352-self-passage span.active{
  background:#e7f7f3;
  color:#0b746b;
  box-shadow:0 0 0 1px rgba(15,143,131,.12);
}
@media(max-width:620px){
  body.v350-reading-shadow .v352-self-head{
    flex-direction:column;
  }
  body.v350-reading-shadow .v352-self-toolbar{
    align-items:stretch;
  }
  body.v350-reading-shadow .v352-self-toolbar button{
    flex:1 1 135px;
  }
  body.v350-reading-shadow .v352-self-toolbar label{
    margin-left:0;
    flex:1 1 100%;
    justify-content:space-between;
  }
  body.v350-reading-shadow .v352-self-passage{
    max-height:42vh;
    font-size:16px;
    line-height:1.85;
  }
}
