/* =========================
  Learning Path layout
========================= */
.ica-learning-path{display:flex;gap:20px;align-items:flex-start}
.ica-path-left{flex:1;min-width:0}
.ica-path-right{width:260px}

/* Tabs */
.ica-tabs{display:flex;gap:10px;margin:0 0 12px;flex-wrap:wrap}
.ica-tab{
  border:1px solid #cbd5e1;background:#fff;color:#133985;
  border-radius:6px;padding:10px 14px;font-weight:800;
  cursor:pointer;text-decoration:none;display:inline-flex;align-items:center
}
.ica-tab.active{background:#133985;color:#fff}

/* Panels */
.ica-tab-panel{display:none}
.ica-tab-panel.active{display:block}

/* Ẩn YOUR JOURNEY ở tab TIẾN ĐỘ */
[data-ica-lp][data-active-tab="progress"] .ica-path-right{display:none !important;}
[data-ica-lp][data-active-tab="progress"] .ica-path-left{width:100%;}

/* Course cards */
.ica-course-card{
  display:flex;gap:16px;
  border:1px solid #e5e7eb;border-radius:10px;
  padding:14px;background:#fff;
  box-shadow:0 1px 4px rgba(0,0,0,.06);
  margin:0 0 14px;
  align-items:center;
}
.ica-course-card-left{flex:0 0 auto}
.ica-course-card-mid{flex:1;min-width:0}
.ica-course-card-right{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

/* Text */
.ica-course-card-title{font-size:18px;font-weight:900;color:#133985;margin:2px 0 6px}
.ica-course-card-meta{color:#64748b;font-size:13px;margin-bottom:10px}
.ica-course-card-progress .label{color:#475569;font-size:13px;margin-bottom:6px}
.ica-course-card-progress .bar{height:8px;background:#e2e8f0;border-radius:999px;overflow:hidden}
.ica-course-card-progress .bar span{display:block;height:100%;background:#133985;width:0}
.ica-course-card-lock{margin-top:8px;color:#94a3b8;font-size:12px}

/* Button */
.ica-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:120px;
  background:#133985;color:#fff;border-radius:8px;
  padding:10px 14px;font-weight:900;text-decoration:none;border:none;
  white-space:nowrap;
}
.ica-btn.disabled{background:#e2e8f0;color:#94a3b8}

/* =========================
  Journey (right column)
========================= */
.ica-journey{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;background:#f8fafc}
.ica-journey-title{background:#133985;color:#fff;font-weight:900;text-align:center;padding:12px}
.ica-journey-step{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 10px;color:#0f172a}
.ica-journey-step .dot{width:18px;height:18px;border-radius:50%;background:#cbd5e1;position:relative}
.ica-journey-step.done .dot{background:#22c55e}
.ica-journey-step.active .dot{box-shadow:0 0 0 4px rgba(19,57,133,.18)}
.ica-journey-step .label{background:#133985;color:#fff;font-weight:900;border-radius:6px;padding:6px 10px;text-align:center}
.ica-journey-arrow{width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:12px solid #64748b;margin:0 auto}

/* =========================
  Course page layout
========================= */
.ica-course{border:1px solid #e5e7eb;border-radius:12px;background:#fff}
.ica-course--kb .ica-course-body{
  display:flex;gap:18px;
  align-items:flex-start; /* tránh stretch làm sidebar quá cao */
}
.ica-course--kb .ica-course-sidebar{
  width:300px;flex:0 0 300px;
  border-right:1px solid #e5e7eb;background:#fff;
  display:flex;flex-direction:column;
}

/* Sidebar sticky */
.ica-course--kb .ica-course-sidebar{
  position:sticky !important;
  top:90px; /* chỉnh theo header site */
  height:calc(100vh - 110px);
  overflow:auto;
}

/* Sidebar content */
.ica-course--kb .ica-course-sidebar-title{background:#133985;color:#fff;font-weight:900;padding:12px 14px}
.ica-course--kb .ica-course-lessons{list-style:none;margin:0;padding:0}
.ica-course--kb .ica-course-lessons .ica-lesson a{
  display:block;padding:12px 14px;text-decoration:none;color:#0f172a;
  border-top:1px solid #eef2f7
}
.ica-course--kb .ica-course-lessons .ica-lesson:first-child a{border-top:none}
.ica-course--kb .ica-course-lessons .ica-lesson.active a{background:#f5f8ff}
.ica-course--kb .ica-lesson-row{display:flex;gap:10px;align-items:flex-start}
.ica-course--kb .ica-lesson-play{
  width:0;height:0;margin-top:4px;border-left:10px solid #16a34a;
  border-top:6px solid transparent;border-bottom:6px solid transparent;
  opacity:0
}
.ica-course--kb .ica-lesson.active .ica-lesson-play{opacity:1}
.ica-course--kb .ica-lesson-title{display:block;font-weight:800;line-height:1.25}
.ica-course--kb .ica-lesson-sub{
  margin-top:8px;padding-left:20px;color:#64748b;font-size:12px;
  display:flex;flex-direction:column;gap:6px
}
.ica-course--kb .ica-lesson-subline{display:flex;gap:8px;align-items:center}
.ica-course--kb .ica-course-sidebar-footer{padding:14px}
.ica-course--kb .ica-quiz-btn{
  width:100%;display:flex;align-items:center;justify-content:center;gap:8px;
  background:#e2e8f0;color:#64748b;border-radius:8px;padding:10px 12px;
  font-weight:900;text-decoration:none;border:1px solid #cbd5e1
}
.ica-course--kb .ica-quiz-btn[disabled]{cursor:not-allowed;opacity:.9}

.ica-course--kb .ica-course-content{flex:1;min-width:0;background:#fff}
.ica-course--kb .ica-lesson-hero{background:#dbeafe;border-bottom:1px solid #e5e7eb;padding:12px 16px}
.ica-course--kb .ica-lesson-hero-title{font-size:26px;font-weight:900;color:#133985;text-align:center}
.ica-course--kb .ica-toc{max-width:520px;margin:16px auto 10px;border:1px solid #e5e7eb;border-radius:8px;padding:12px 14px;background:#fff}
.ica-course--kb .ica-toc-title{font-weight:900;margin-bottom:8px}
.ica-course--kb .ica-toc-list{margin:0;padding-left:18px;color:#0f172a}
.ica-course--kb .ica-lesson-content{padding:0 16px 16px}
.ica-course--kb .ica-course-quiz{padding:0 16px 18px}
.ica-course--kb .ica-quiz-locked{border:1px dashed #cbd5e1;border-radius:10px;padding:14px;background:#f8fafc;color:#64748b}
.ica-course--kb .ica-quiz-open{border:1px solid #e5e7eb;border-radius:10px;padding:14px;background:#fff}
.ica-course-locked{padding:14px;border:1px solid #f59e0b;background:#fffbeb;border-radius:10px}

/* Tiny icon set (pure CSS) */
.ica-ico{display:inline-block;width:14px;height:14px;border-radius:3px;background:#cbd5e1;position:relative;flex:0 0 14px}
.ica-ico.ica-ico-lock{border-radius:50%}
.ica-ico.ica-ico-doc::after{content:'';position:absolute;left:4px;top:3px;width:6px;height:8px;border:1px solid rgba(15,23,42,.45);border-top-width:2px;border-radius:2px}
.ica-ico.ica-ico-clock{border-radius:50%}
.ica-ico.ica-ico-clock::after{content:'';position:absolute;left:6px;top:3px;width:1px;height:5px;background:rgba(15,23,42,.45)}
.ica-ico.ica-ico-clock::before{content:'';position:absolute;left:6px;top:6px;width:4px;height:1px;background:rgba(15,23,42,.45)}
.ica-ico.ica-ico-mail::after{content:'';position:absolute;left:3px;top:5px;width:8px;height:5px;border:1px solid rgba(15,23,42,.45);border-top:none}
.ica-ico.ica-ico-mail::before{content:'';position:absolute;left:3px;top:5px;width:8px;height:1px;background:rgba(15,23,42,.45);transform:skewY(-20deg)}

/* =========================
  Personal Progress UI
========================= */

/* Pills */
.ica-progress-topbar{display:flex;gap:10px;align-items:center;margin:8px 0 14px;flex-wrap:wrap}
.ica-pill{
  border:1px solid #cbd5e1;background:#fff;color:#0f172a;
  border-radius:8px;padding:8px 12px;font-weight:800;
  cursor:pointer;text-decoration:none;display:inline-flex;align-items:center
}
.ica-pill.active{background:#133985;color:#fff;border-color:#133985}

/* Grid layout */
.ica-progress-grid{display:grid;grid-template-columns:360px 1fr;gap:16px;align-items:start}
.ica-progress-rightcol{display:grid;gap:16px}
.ica-progress-minirow{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* Panels */
.ica-panel{
  border:1px solid #e5e7eb;border-radius:12px;background:#fff;
  padding:14px;box-shadow:0 1px 4px rgba(0,0,0,.06)
}
.ica-panel--mini{padding:14px}
.ica-panel--chart{background:#0f172a;color:#fff}
.ica-panel--wide{margin-top:16px}
.ica-panel-title{font-weight:900;color:#0f172a;margin:0 0 10px}
.ica-panel--chart .ica-panel-title{color:#fff}
.ica-panel-note{margin-top:10px;color:#0f172a}
.ica-panel-foot{margin-top:10px;color:#64748b}

/* Donut */
.ica-donut{
  width:180px;height:180px;border-radius:50%;
  margin:12px auto 10px;
  background: conic-gradient(#22c55e calc(var(--pct)*1%), #e5e7eb 0);
  display:flex;align-items:center;justify-content:center;
}
.ica-donut-inner{
  width:132px;height:132px;border-radius:50%;
  background:#fff;display:flex;flex-direction:column;
  align-items:center;justify-content:center;
}
.ica-donut-pct{font-size:28px;font-weight:900;color:#22c55e;line-height:1}
.ica-donut-sub{font-size:12px;color:#64748b;margin-bottom:6px}

/* Mini info */
.ica-mini-title{color:#64748b;font-size:12px;font-weight:800}
.ica-mini-strong{font-weight:900;color:#0f172a;margin-top:4px}
.ica-mini-sub{color:#64748b;margin-top:2px}

/* Chart wrap + SVG styling (FIX mảng đen) */
.ica-chart-wrap{
  background:#0b1220;
  border-radius:12px;
  padding:14px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
}
.ica-chart-shell{width:100%}
.ica-chart-svg{width:100%;height:220px;display:block}
.ica-bg{fill:transparent}
.ica-grid{stroke:rgba(255,255,255,.10);stroke-width:1}
.ica-ytext,.ica-xtext,.ica-legend{
  fill:rgba(255,255,255,.72);
  font-size:12px;
  font-weight:700;
}
.ica-legend{fill:rgba(255,255,255,.82)}
.ica-line{
  stroke:#3b82f6;
  stroke-width:2.5;
  stroke-linejoin:round;
  stroke-linecap:round;
  fill:none !important;
}
.ica-dot{fill:#22c55e;stroke:#0b1220;stroke-width:2}
.ica-val{fill:rgba(255,255,255,.85);font-size:11px;font-weight:800}
@media (max-width: 640px){
  .ica-val{display:none}
}

/* Img placeholder box */
.ica-imgbox{
  width:100%;
  height:160px;
  border-radius:10px;
  background:#f1f5f9;
  border:1px solid #e5e7eb;
  overflow:hidden;
  display:flex;align-items:center;justify-content:center;
}
.ica-imgbox img{width:100%;height:100%;object-fit:cover;display:block}
.ica-imgbox--thumb{width:140px;height:80px}
.ica-imgbox--wide{height:220px}

/* Sections */
.ica-section{margin-top:18px}
.ica-section-title{font-weight:900;color:#133985;margin:0 0 10px}
.ica-mb-10{margin-bottom:10px}

/* Heatmap */
.ica-progress-grid2{display:grid;grid-template-columns:1fr 320px;gap:16px;align-items:start}

/* Effective */
.ica-effective{display:grid;gap:8px;margin-top:8px}
.ica-effective-item{color:#0f172a}
.ica-effective-note{color:#64748b;font-size:13px}

/* Table grid */
.ica-progress-grid3{display:grid;grid-template-columns:1fr 360px;gap:16px;align-items:start}
.ica-table-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.ica-table-title{font-weight:900;color:#0f172a}
.ica-table{display:grid;gap:8px}
.ica-tr{
  display:grid;grid-template-columns:1.4fr .7fr 1fr;
  gap:10px;align-items:center;padding:10px;
  border:1px solid #eef2f7;border-radius:10px;background:#fff
}
.ica-tr--head{background:#f8fafc;font-weight:900;color:#64748b}
.ica-td-strong{font-weight:900;color:#0f172a}
.ica-mini-bar{
  display:inline-block;width:140px;height:10px;background:#e2e8f0;border-radius:999px;
  overflow:hidden;vertical-align:middle;margin-right:10px
}
.ica-mini-bar i{display:block;height:100%;background:#22c55e}
.ica-mini-pct{font-weight:900;color:#0f172a}

/* Notice */
.ica-notice{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff}
.ica-notice-title{font-weight:900;color:#0f172a;margin-bottom:6px}
.ica-notice-body{color:#64748b}

/* Link */
.ica-link{display:inline-block;color:#133985;text-decoration:none;font-weight:900}
.ica-panel--chart .ica-link{color:#93c5fd}
.ica-link:hover{text-decoration:underline}

/* =========================
  Responsive
========================= */
@media (max-width: 980px){
  .ica-learning-path{flex-direction:column}
  .ica-path-right{width:100%}

  .ica-progress-grid{grid-template-columns:1fr}
  .ica-progress-minirow{grid-template-columns:1fr}
  .ica-progress-grid2{grid-template-columns:1fr}
  .ica-progress-grid3{grid-template-columns:1fr}

  .ica-course--kb .ica-course-body{flex-direction:column}
  .ica-course--kb .ica-course-sidebar{
    width:100%;flex:1;
    position:relative !important;
    top:auto;height:auto;overflow:visible;
  }

  /* progress tab full width already handled */
}
