/* ── Phòng Tập Ca ── dùng lại bảng màu "The Mindful Anchor" của app ── */

.ct-wrap{max-width:860px;margin:0 auto;padding:30px 26px 70px}
@media (max-width:760px){.ct-wrap{padding:22px 16px 60px}}
.ct-head .eyebrow{font-size:.72rem;letter-spacing:.18em;color:var(--d);font-weight:600;margin-bottom:6px}
.ct-head h2{font-size:clamp(1.6rem,1.1rem + 2vw,2.3rem);color:var(--b);margin-bottom:10px}
.ct-head .lead{color:var(--ink-soft);margin-bottom:22px}
.ct-head .bai{font-size:.82rem;color:var(--d);margin-top:10px}

/* Hồ sơ năng lực */
.ct-hoso{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);
  padding:20px 22px;margin-bottom:26px;box-shadow:var(--shadow)}
.ct-hoso h3{font-size:1.05rem;color:var(--b);margin-bottom:14px}
.ct-trucs{display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}
@media (max-width:640px){
  .ct-trucs{grid-template-columns:repeat(2,1fr)}
  .ct-truc p{display:none}            /* màn hẹp: bỏ chú thích, ô còn 2 dòng */
  .ct-truc .lb{font-size:.84rem}
}
@media (max-width:360px){.ct-trucs{grid-template-columns:1fr}}
.ct-truc{background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px 12px}
.ct-truc .lb{display:flex;justify-content:space-between;align-items:baseline;font-size:.88rem;gap:8px}
.ct-truc .lb b{line-height:1.25}
.ct-truc .lb span{font-size:.76rem;color:var(--ink-soft);white-space:nowrap;font-variant-numeric:tabular-nums}
.ct-truc .bar{height:6px;border-radius:99px;background:#ece5d7;overflow:hidden;margin:8px 0 5px}
.ct-truc .bar i{display:block;height:100%;border-radius:99px;transition:width .5s cubic-bezier(.16,1,.3,1)}
.ct-truc .bar i.cao{background:var(--a)} .ct-truc .bar i.vua{background:var(--e)}
.ct-truc .bar i.thap{background:#c08a5e}
.ct-truc p{font-size:.75rem;color:var(--ink-soft);line-height:1.4}
.ct-hoso .ghi{font-size:.78rem;color:var(--ink-soft);margin-top:14px;font-style:italic}

/* Danh sách ca */
.ct-list{display:grid;gap:14px}
.ct-the{display:block;width:100%;text-align:left;background:var(--paper-2);border:1px solid var(--line);
  border-left:4px solid var(--a);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow);
  transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s,border-left-color .25s}
.ct-the:hover{transform:translateY(-2px);box-shadow:0 10px 28px -14px rgba(44,38,32,.3)}
.ct-the:focus-visible{outline:2px solid var(--a);outline-offset:3px}
.ct-the .top{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}
.ct-the .ma{font-size:.7rem;letter-spacing:.14em;color:var(--d);font-weight:700}
.ct-the h4{font-size:1.12rem;color:var(--b);margin-bottom:4px}
.ct-the .the{font-size:.88rem;color:var(--ink-soft)}
.ct-the .bai{font-size:.75rem;color:var(--d);margin-top:8px}
.ct-co{font-size:.66rem;background:#7c2d12;color:#fdf3e7;border-radius:99px;padding:2px 9px;letter-spacing:.06em}
.ct-xong{font-size:.7rem;background:var(--a);color:#f6f2e8;border-radius:99px;padding:2px 10px}
.ct-dang{font-size:.7rem;background:#efe4cd;color:var(--d);border-radius:99px;padding:2px 10px}
.ct-chan{text-align:center;font-size:.8rem;color:var(--ink-soft);margin-top:26px;font-style:italic}

/* Trang một ca */
.ct-back{background:none;border:none;color:var(--d);font-size:.9rem;padding:6px 0;margin-bottom:10px}
.ct-back:hover{text-decoration:underline}
.ct-ai{font-size:.9rem;color:var(--ink-soft);margin-bottom:10px}
.ct-boi{background:var(--paper-2);border:1px solid var(--line);border-radius:14px;padding:16px 18px;
  font-size:.97rem;box-shadow:var(--shadow)}

/* Bậc */
.ct-bac{margin-top:26px;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);
  padding:22px;box-shadow:var(--shadow);position:relative}
.ct-bac.done{border-color:#cbd8bd}
.ct-bac.khoa{opacity:.62}
.ct-bnum{display:inline-block;font-size:.68rem;letter-spacing:.16em;font-weight:700;color:#f6f2e8;
  background:var(--b);border-radius:99px;padding:3px 11px;margin-bottom:10px}
.ct-bac h3{font-size:1.2rem;color:var(--b);margin-bottom:10px}
.ct-bac .hoi,.ct-bac .canh{margin-bottom:12px}
.ct-bac .bao{font-size:.88rem;color:var(--ink-soft);margin-bottom:10px}
.khoa-p{font-size:.9rem;color:var(--ink-soft)}

/* Lựa chọn */
.ct-opts{display:grid;gap:10px}
.ct-opt{text-align:left;background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px 15px;
  font-size:.95rem;line-height:1.6;color:var(--ink);transition:border-color .2s,background .2s,transform .2s}
.ct-opt:hover:not(:disabled){border-color:var(--a);transform:translateX(2px)}
.ct-opt:focus-visible{outline:2px solid var(--a);outline-offset:2px}
.ct-opt.dung{border-color:var(--a);background:#eef2e6}
.ct-opt.sai{opacity:.45;text-decoration:line-through;cursor:not-allowed}
.ct-giai{margin-top:12px}
.ct-giai .ok{background:#eef2e6;border-left:3px solid var(--a);border-radius:10px;padding:13px 15px;font-size:.92rem}
.ct-giai .no{background:#f7efe2;border-left:3px solid var(--e);border-radius:10px;padding:12px 15px;font-size:.9rem}

/* Bậc 2 */
.ct-ta{width:100%;min-height:120px;border:1px solid var(--line);border-radius:12px;padding:13px 15px;
  font-family:inherit;font-size:.97rem;line-height:1.65;background:#fff;color:var(--ink);resize:vertical}
.ct-ta:focus{outline:2px solid var(--a);outline-offset:1px}
.ct-ta.thieu{border-color:#b45309;background:#fdf6ec}
.ct-btn{margin-top:12px;background:var(--a);color:#f6f2e8;border:none;border-radius:99px;
  padding:11px 22px;font-size:.92rem;font-weight:600;transition:transform .2s,filter .2s}
.ct-btn:hover{transform:translateY(-1px);filter:brightness(1.08)}
.ct-btn.phu{background:transparent;color:var(--b);border:1px solid var(--line)}
.ct-mau:empty{display:none}
.ct-cua,.ct-thay,.ct-soi{margin-top:14px;border-radius:12px;padding:14px 16px}
.ct-cua{background:#f7f3ea;border:1px dashed var(--line)}
.ct-thay{background:#1b3426;color:#efe9dc}
.ct-thay .lb{color:var(--e)}
.ct-thay .vi{margin-top:10px;font-size:.87rem;color:#cfc7b4;font-style:italic}
.ct-cua .lb,.ct-thay .lb,.ct-soi .lb{font-size:.7rem;letter-spacing:.14em;font-weight:700;
  text-transform:uppercase;margin-bottom:7px;color:var(--d)}
.ct-soi{background:#fff;border:1px solid var(--line)}
.ct-ck{display:flex;gap:10px;align-items:flex-start;padding:7px 0;font-size:.92rem;cursor:pointer}
.ct-ck input{margin-top:5px;accent-color:var(--a);width:17px;height:17px;flex:none}

/* Bậc 3 */
.ct-luot{margin-top:16px;padding-top:16px;border-top:1px dashed var(--line)}
.ct-luot:first-child{border-top:none;padding-top:0}
.ct-ho,.ct-toi{border-radius:12px;padding:13px 15px;font-size:.95rem;position:relative}
.ct-ho{background:#f2ece0;border-left:3px solid var(--c)}
.ct-toi{background:#eef2e6;border-left:3px solid var(--a);margin-top:9px}
.ct-ho .who,.ct-toi .who{display:block;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--d);font-weight:700;margin-bottom:5px}
.ct-pu{margin-top:9px;border-radius:12px;padding:13px 15px;font-size:.93rem}
.ct-pu.tot{background:#eaf1e2;border-left:3px solid var(--a)}
.ct-pu.vua{background:#faf1de;border-left:3px solid var(--e)}
.ct-pu.kem{background:#f8ece5;border-left:3px solid #9a3412}
.ct-pu .nx{margin-top:8px;font-size:.87rem;color:var(--ink-soft)}
.ct-luot.nay .ct-opts{margin-top:11px}

/* Biên bản */
.ct-bb{margin-top:20px;background:#1b3426;color:#efe9dc;border-radius:16px;padding:22px}
.ct-bb h4{color:var(--e);font-size:1.15rem;margin-bottom:12px}
.ct-diem{display:flex;align-items:baseline;gap:6px;margin-bottom:10px}
.ct-diem b{font-size:2.4rem;font-family:'Lora',serif;color:#fff;line-height:1}
.ct-diem span{color:#cfc7b4}
.ct-bb .loi{font-size:.97rem;margin-bottom:14px}
.ct-roi{background:rgba(255,255,255,.07);border-radius:12px;padding:13px 15px;font-size:.89rem}
.ct-roi .lb{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--e);
  font-weight:700;margin-bottom:7px}
.ct-roi ul{padding-left:18px} .ct-roi li{margin:5px 0}
.ct-bbtn{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.ct-bb .ct-btn.phu{color:#efe9dc;border-color:rgba(255,255,255,.28)}

@media (max-width:520px){
  .ct-hoso{padding:16px 14px}
  .ct-bac{padding:17px 15px}
  .ct-the{padding:14px 15px}
  .ct-bb{padding:18px 16px}
}

/* Dòng nhắc khi bấm Xong mà chưa viết gì — phải NHÌN THẤY, không giấu trong chữ mờ */
.ct-nhac{margin-top:11px;background:#fdf3e3;border:1px solid #e6c98b;border-left:4px solid var(--e);
  border-radius:10px;padding:12px 15px;font-size:.92rem;color:#6b4e12}
