/* ==========================================================================
   9Prep — Gói lớp học / Giáo viên (chỉ nạp cho page-9p-teacher.php)
   Cần 9p-chrome.css + 9p-core.css
   ========================================================================== */
.np-teacher{padding-top:56px}

/* --- bộ chọn kỹ năng + kỳ hạn --- */
.np-tc-controls{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:34px}
.np-tc-skills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:min(660px,100%);padding:6px;background:#fff;border:1px solid var(--np-line);border-radius:16px;box-shadow:0 8px 24px rgba(46,35,25,.06)}
.np-page button.np-tc-skill{appearance:none;display:flex;flex-direction:column;align-items:center;gap:3px;min-height:60px;margin:0;padding:10px 12px;border:0;border-radius:11px;background:transparent;box-shadow:none;cursor:pointer;font-family:var(--np-display);text-transform:none;letter-spacing:0;line-height:1.2;color:var(--np-ink2);transition:background .18s,color .18s}
.np-page button.np-tc-skill:hover{background:var(--np-cream)}
.np-tc-skill b{font-size:15px;font-weight:800}
.np-tc-skill span{font-size:11.5px;font-weight:600;color:var(--np-muted)}
.np-page button.np-tc-skill.is-on{background:var(--np-ink);color:#fff}
.np-tc-skill.is-on span{color:rgba(255,255,255,.72)}
.np-page button.np-tc-skill.is-best.is-on{background:var(--np-brand)}
.np-tc-skill.is-best span{color:var(--np-brand)}
.np-tc-skill.is-best.is-on span{color:var(--np-yellow)}

.np-tc-terms{display:flex;gap:6px;padding:5px;background:#fff;border:1px solid var(--np-line);border-radius:14px}
.np-page button.np-tc-term{appearance:none;display:inline-flex;align-items:center;gap:7px;min-height:42px;margin:0;padding:8px 20px;border:0;border-radius:10px;background:transparent;box-shadow:none;cursor:pointer;font-family:var(--np-display);font-size:14.5px;font-weight:800;text-transform:none;letter-spacing:0;color:var(--np-ink2);transition:background .18s,color .18s}
.np-page button.np-tc-term.is-on{background:var(--np-ink);color:#fff}
.np-tc-term i{font-style:normal;font-size:11.5px;font-weight:800;color:var(--np-brand)}
.np-tc-term.is-on i{color:var(--np-yellow)}

/* --- 2 thẻ --- */
.np-tc-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:18px;align-items:stretch;max-width:940px;margin-inline:auto}
.np-tc-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--np-line);border-radius:20px;padding:26px 24px;box-shadow:0 10px 28px rgba(46,35,25,.05)}
.np-tc-card:first-child{border:2px solid var(--np-brand);box-shadow:0 22px 52px rgba(200,68,44,.14)}
.np-tc-kicker{font-family:var(--np-display);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--np-brand)}
.np-page main .np-tc-card h3{font-size:20px;letter-spacing:-.02em;margin:7px 0 6px}
.np-page main .np-tc-card-head p{font-size:14px;line-height:1.55;color:var(--np-muted)}

/* --- slider --- */
.np-tc-slider{margin:22px 0 18px;padding:18px 18px 12px;background:var(--np-cream);border:1px solid var(--np-line);border-radius:14px}
.np-tc-slider-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;font-size:13.5px;color:var(--np-ink2)}
.np-tc-count b{font-family:var(--np-display);font-size:17px;font-weight:800;color:var(--np-brand)}
.np-page input.np-tc-range{-webkit-appearance:none;appearance:none;width:100%;height:6px;margin:0;padding:0;border:0;border-radius:99px;background:var(--np-cream2);background-image:linear-gradient(var(--np-brand),var(--np-brand));background-size:0% 100%;background-repeat:no-repeat;cursor:pointer}
.np-tc-range::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:#fff;border:3px solid var(--np-brand);box-shadow:0 3px 10px rgba(200,68,44,.35);cursor:pointer}
.np-tc-range::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid var(--np-brand);box-shadow:0 3px 10px rgba(200,68,44,.35);cursor:pointer}
.np-tc-range:focus-visible{outline:3px solid var(--np-yellow);outline-offset:4px}
.np-tc-ticks{display:flex;justify-content:space-between;margin-top:10px}
.np-tc-ticks span{font-family:var(--np-display);font-size:12px;font-weight:700;color:var(--np-muted);transition:color .18s}
.np-tc-ticks span.is-on{color:var(--np-brand)}

/* --- giá --- */
.np-tc-price{padding:18px 0;border-top:1px solid var(--np-line);border-bottom:1px solid var(--np-line);margin-bottom:18px}
.np-tc-unit{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}
.np-tc-unit b{font-family:var(--np-display);font-size:36px;font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--np-brand)}
.np-tc-unit span{font-size:14px;color:var(--np-muted)}
.np-tc-total{margin-top:11px;font-size:14.5px;color:var(--np-ink2)}
.np-tc-total b{font-family:var(--np-display);font-weight:800;color:var(--np-ink)}
.np-tc-save{margin-top:10px;display:inline-block;padding:7px 11px;border-radius:8px;background:var(--np-yellow-soft);font-size:13px;color:var(--np-ink2)}
.np-tc-save s{color:var(--np-muted)}
.np-tc-save b{color:var(--np-green)}
.np-tc-cta{width:100%}
.np-page main ul.np-tc-feat{display:grid;gap:9px;margin:20px 0 0!important}
.np-tc-feat li{display:flex;gap:9px;align-items:flex-start;font-size:14px;line-height:1.5;color:var(--np-ink2)}
.np-tc-feat .np-check{width:18px;height:18px;flex:0 0 18px;margin-top:2px;border-radius:50%;display:grid;place-items:center;background:var(--np-green-soft);color:var(--np-green);font-size:10.5px;font-weight:900}

/* --- thẻ trung tâm --- */
.np-tc-ent{background:var(--np-cream)}
.np-tc-ent .np-tc-kicker{color:var(--np-muted)}
.np-tc-ent-tag{margin:18px 0;padding:16px 18px;background:#fff;border:1px dashed #cfc4b4;border-radius:12px;font-family:var(--np-display);font-size:19px;font-weight:800;color:var(--np-ink)}
.np-tc-ent-tag span{display:block;font-family:var(--np-sans);font-size:13px;font-weight:400;color:var(--np-muted);margin-top:3px}
.np-tc-ent .np-btn{margin-top:auto;width:100%}

/* --- bảng báo cáo minh hoạ --- */
.np-tc-report{background:#fff;border:1px solid var(--np-line);border-radius:17px;padding:20px;box-shadow:var(--np-shadow)}
.np-tc-report-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-bottom:13px;border-bottom:1px solid var(--np-line);margin-bottom:12px;font-family:var(--np-display);font-weight:800;font-size:14px}
.np-tc-report-head small{font-family:var(--np-sans);font-size:11.5px;font-weight:500;color:var(--np-muted)}
.np-tc-row{display:grid;grid-template-columns:1fr 92px 36px;gap:10px;align-items:center;padding:8px 0}
.np-tc-nm{font-size:12.5px}

@media (max-width:980px){
  .np-tc-grid{grid-template-columns:1fr;max-width:520px;margin-inline:auto}
}
@media (max-width:560px){
  .np-tc-skills{grid-template-columns:1fr}
  .np-page button.np-tc-skill{min-height:50px;flex-direction:row;justify-content:space-between}
  .np-tc-terms{width:100%}
  .np-page button.np-tc-term{flex:1;justify-content:center;padding:8px 10px}
  .np-tc-unit b{font-size:34px}
  .np-tc-row{grid-template-columns:1fr 70px 32px}
}
