
/* CIVILREADY_V287R2_PROGRESS_TIMELINE_20261010 */
#pe-progress .v287-progress-dashboard{display:grid;gap:18px;margin-top:18px}
#pe-progress .v287-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#pe-progress .v287-summary-card{background:#fff;border:1px solid #dbe5ef;border-radius:17px;padding:16px 17px;box-shadow:0 8px 22px rgba(18,52,94,.055);min-width:0}
#pe-progress .v287-summary-label{display:block;color:#66798d;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
#pe-progress .v287-summary-value{display:block;color:#123b69;font-size:27px;font-weight:950;margin:5px 0 2px;line-height:1.1}
#pe-progress .v287-summary-note{display:block;color:#718196;font-size:11.5px;line-height:1.35}
#pe-progress .v287-chart-card{background:#fff;border:1px solid #dbe5ef;border-radius:20px;padding:20px;box-shadow:0 10px 28px rgba(18,52,94,.065)}
#pe-progress .v287-chart-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
#pe-progress .v287-chart-title h2{margin:0;color:#0a2855;font-size:24px}
#pe-progress .v287-chart-title p{margin:5px 0 0;color:#64748b;font-size:13px;line-height:1.45;max-width:700px}
#pe-progress .v287-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
#pe-progress .v287-topic-select{border:1px solid #cfdbe7;border-radius:10px;background:#fff;color:#173a5e;padding:9px 11px;min-height:42px;font-weight:750;max-width:260px}
#pe-progress .v287-range-group{display:flex;background:#f1f5f9;border:1px solid #d9e3ed;border-radius:11px;padding:3px;gap:2px}
#pe-progress .v287-range-btn{border:0;background:transparent;color:#5b6f84;border-radius:8px;min-height:34px;padding:6px 9px;font-size:11px;font-weight:900}
#pe-progress .v287-range-btn.active{background:#fff;color:#1769e0;box-shadow:0 2px 7px rgba(18,52,94,.12)}
#pe-progress .v287-chart-wrap{position:relative;margin-top:15px;width:100%;overflow:hidden}
#pe-progress .v287-chart-svg{display:block;width:100%;height:auto;min-height:310px}
#pe-progress .v287-chart-empty{padding:70px 20px;text-align:center;color:#64748b;border:1px dashed #d7e1eb;border-radius:14px;margin-top:14px;background:#fbfdff}
#pe-progress .v287-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:9px;color:#66798d;font-size:11px}
#pe-progress .v287-legend span{display:inline-flex;align-items:center;gap:6px}
#pe-progress .v287-legend i{display:inline-block;width:20px;height:3px;border-radius:2px;background:#1769e0}
#pe-progress .v287-legend i.avg{height:0;border-top:2px dashed #7c8da1;background:transparent}
#pe-progress .v287-legend i.inactive{width:16px;height:12px;background:#f0f3f7;border:1px solid #dce3ea}
#pe-progress .v287-insight{margin-top:12px;padding:11px 13px;border-radius:11px;background:#f4f8fd;border:1px solid #dce7f2;color:#36536f;font-size:12px;line-height:1.45}
#pe-progress .v287-topics-card{background:#fff;border:1px solid #dbe5ef;border-radius:20px;padding:20px;box-shadow:0 10px 28px rgba(18,52,94,.055)}
#pe-progress .v287-topics-head{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:13px}
#pe-progress .v287-topics-head h2{margin:0;color:#0a2855;font-size:22px}
#pe-progress .v287-topics-head p{margin:4px 0 0;color:#64748b;font-size:12px}
#pe-progress .v287-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#pe-progress .v287-topic-card{border:1px solid #dce5ee;border-radius:14px;padding:13px 14px;background:#fbfdff;display:grid;grid-template-columns:minmax(0,1fr) 122px;gap:12px;align-items:center;cursor:pointer;text-align:left;min-height:88px}
#pe-progress .v287-topic-card:hover{border-color:#a9c8eb;background:#f7fbff}
#pe-progress .v287-topic-card.active{border:2px solid #1769e0;background:#f2f7ff;padding:12px 13px}
#pe-progress .v287-topic-name{display:block;color:#173a5e;font-size:13px;font-weight:900;line-height:1.25}
#pe-progress .v287-topic-score{display:block;color:#1769e0;font-size:20px;font-weight:950;margin-top:4px}
#pe-progress .v287-topic-meta{display:block;color:#6a7c90;font-size:10.5px;margin-top:3px}
#pe-progress .v287-spark{width:122px;height:48px;display:block}
@media(max-width:900px){
  #pe-progress .v287-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  #pe-progress .v287-topic-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  #pe-progress .v287-summary-grid{grid-template-columns:1fr 1fr}
  #pe-progress .v287-summary-value{font-size:23px}
  #pe-progress .v287-chart-card,#pe-progress .v287-topics-card{padding:14px}
  #pe-progress .v287-chart-head{display:block}
  #pe-progress .v287-controls{margin-top:12px}
  #pe-progress .v287-topic-select{max-width:none;width:100%}
  #pe-progress .v287-range-group{width:100%;justify-content:space-between}
  #pe-progress .v287-range-btn{flex:1;padding:6px 4px}
  #pe-progress .v287-topic-card{grid-template-columns:minmax(0,1fr) 92px}
  #pe-progress .v287-spark{width:92px}
}
@media(max-width:390px){
  #pe-progress .v287-summary-grid{grid-template-columns:1fr}
}


/* CIVILREADY_V290_INTUITIVE_TOPIC_PLAN_20261010 */
/* CIVILREADY_V291_PROFESSIONAL_PROGRESS_REFINEMENT_20261010 */
/* CIVILREADY_V292_PREMIUM_PROGRESS_VISUALS_20261010 */
/* CIVILREADY_V293R3_SIMPLE_PROGRESS_AND_WHYUS_20261010 */
/* CIVILREADY_V294_PROGRESS_COLOR_HIERARCHY_20261010 */

/* ---------- Progress: calmer hierarchy ---------- */
#pe-progress .v293-plan{
  background:#fff;
  border:1px solid #d9e3ec;
  border-radius:22px;
  padding:22px;
  box-shadow:0 10px 30px rgba(15,42,72,.05)
}
#pe-progress .v293-kicker{
  display:inline-block;
  margin-bottom:5px;
  color:#1769e0;
  font-size:10px;
  font-weight:950;
  letter-spacing:.11em
}
#pe-progress .v293-plan-head h2{
  margin:0;
  color:#0b2b50;
  font-size:25px;
  letter-spacing:-.25px
}
#pe-progress .v293-plan-head p{
  max-width:940px;
  margin:6px 0 0;
  color:#63758a;
  font-size:13px;
  line-height:1.52
}

#pe-progress .v293-summary-bar{
  margin-top:17px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border:1px solid #dbe4ec;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(135deg,#ffffff,#f8fafc)
}
#pe-progress .v293-summary-item{
  position:relative;
  padding:13px 16px;
  min-width:0
}
#pe-progress .v293-summary-item + .v293-summary-item{
  border-left:1px solid #e1e7ed
}
#pe-progress .v293-summary-item::before{
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:3px;
  border-radius:999px
}
#pe-progress .v293-summary-item.focus::before{background:#b96a13}
#pe-progress .v293-summary-item.coverage::before{background:#4b7093}
#pe-progress .v293-summary-item.relative::before{background:#7551a6}
#pe-progress .v293-summary-item span{
  display:block;
  color:#52667a;
  font-size:9px;
  font-weight:950;
  letter-spacing:.07em
}
#pe-progress .v293-summary-item b{
  display:block;
  margin-top:4px;
  color:#102f54;
  font-size:27px;
  line-height:1
}
#pe-progress .v293-summary-item small{
  display:block;
  margin-top:5px;
  color:#6a7d90;
  font-size:10.5px;
  line-height:1.3
}

#pe-progress .v293-recommendation{
  margin-top:13px;
  padding:17px 18px;
  border-radius:16px;
  background:linear-gradient(118deg,#0b2c55 0%,#124f91 62%,#1769e0 100%);
  box-shadow:0 10px 24px rgba(10,52,96,.14);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px
}
#pe-progress .v293-recommendation-copy>span{
  display:block;
  color:#cfe3ff;
  font-size:9px;
  font-weight:950;
  letter-spacing:.1em
}
#pe-progress .v293-recommendation-copy strong{
  display:block;
  margin-top:4px;
  color:#fff;
  font-size:20px;
  line-height:1.25
}
#pe-progress .v293-recommendation-copy p{
  margin:5px 0 0;
  color:#e2edfb;
  font-size:12px;
  line-height:1.42
}
#pe-progress .v293-recommendation-actions{
  display:flex;
  gap:7px;
  flex:0 0 auto;
  flex-wrap:wrap
}
#pe-progress .v293-btn{
  min-height:35px;
  padding:8px 10px;
  border-radius:9px;
  font-size:11px;
  font-weight:850;
  cursor:pointer
}
#pe-progress .v293-btn.primary{
  border:1px solid #fff;
  background:#fff;
  color:#0e4a88
}
#pe-progress .v293-btn.secondary{
  border:1px solid rgba(255,255,255,.48);
  background:rgba(255,255,255,.10);
  color:#fff
}

#pe-progress .v293-group{
  margin-top:20px;
  border:1px solid #dce4ec;
  border-radius:17px;
  overflow:hidden;
  background:#fff
}
#pe-progress .v293-group-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:13px 15px;
  background:linear-gradient(90deg,#f6f8fb 0%,#fff 100%);
  border-bottom:1px solid #e0e6ec
}

#pe-progress .v293-group.focus .v293-group-head{
  background:linear-gradient(90deg,#fff1dc 0%,#fff8ed 52%,#fff 100%);
  border-bottom-color:#efd2aa
}
#pe-progress .v293-group.coverage .v293-group-head{
  background:linear-gradient(90deg,#edf5fc 0%,#f6faff 52%,#fff 100%);
  border-bottom-color:#d2e2ef
}
#pe-progress .v293-group.relative .v293-group-head{
  background:linear-gradient(90deg,#f3eff9 0%,#faf8fd 52%,#fff 100%);
  border-bottom-color:#ddd2eb
}
#pe-progress .v293-group-head>div{
  display:flex;
  align-items:center;
  gap:8px
}
#pe-progress .v293-group-mark{
  width:9px;
  height:9px;
  border-radius:50%;
  flex:0 0 9px
}
#pe-progress .v293-group.focus .v293-group-mark{background:#b96a13}
#pe-progress .v293-group.coverage .v293-group-mark{background:#4b7093}
#pe-progress .v293-group.relative .v293-group-mark{background:#7551a6}
#pe-progress .v293-group-head h3{
  margin:0;
  color:#173a5e;
  font-size:17px
}
#pe-progress .v293-group-head p{
  margin:0;
  max-width:650px;
  color:#687a8d;
  font-size:10.5px;
  line-height:1.35;
  text-align:right
}

#pe-progress .v293-topic-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
  padding:12px
}
#pe-progress .v293-topic-card{
  overflow:hidden;
  border:1px solid #d9e3ec;
  border-radius:14px;
  background:#fff;
  box-shadow:0 5px 14px rgba(20,49,80,.035);
  min-width:0
}

#pe-progress .v293-topic-card.focus{
  border-color:#e2b77c;
  background:linear-gradient(145deg,#fffdf9 0%,#fff3df 100%)
}
#pe-progress .v293-topic-card.coverage{
  border-color:#bfd4e6;
  background:linear-gradient(145deg,#ffffff 0%,#eef6fc 100%)
}
#pe-progress .v293-topic-card.relative{
  border-color:#d1c3e2;
  background:linear-gradient(145deg,#ffffff 0%,#f4f0f9 100%)
}
#pe-progress .v293-topic-card.active{
  border-color:#83a9d0;
  box-shadow:0 0 0 2px rgba(23,105,224,.12),0 6px 16px rgba(20,49,80,.05)
}
#pe-progress .v293-card-band{
  padding:12px 13px;
  background:linear-gradient(120deg,#0d3159 0%,#155d9f 100%);
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px
}

#pe-progress .v293-topic-card.focus .v293-card-band{
  background:linear-gradient(120deg,#a95200 0%,#dc7b12 58%,#f09a2b 100%)
}
#pe-progress .v293-topic-card.coverage .v293-card-band{
  background:linear-gradient(120deg,#174a75 0%,#2d6f9f 58%,#4f91bb 100%)
}
#pe-progress .v293-topic-card.relative .v293-card-band{
  background:linear-gradient(120deg,#4c3c67 0%,#69558b 58%,#826da3 100%)
}
#pe-progress .v293-card-labels{
  display:flex;
  gap:5px;
  flex-wrap:wrap;
  align-items:center
}
#pe-progress .v293-status,
#pe-progress .v293-priority{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:4px 7px;
  border:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.10);
  color:#fff;
  font-size:8.5px;
  font-weight:900
}
#pe-progress .v293-topic-card.focus .v293-priority{
  background:#ffe2b9;
  border-color:#ffe2b9;
  color:#744000
}
#pe-progress .v293-card-title h4{
  margin:7px 0 0;
  color:#fff;
  font-size:14px;
  line-height:1.25
}
#pe-progress .v293-card-metric{
  flex:0 0 auto;
  text-align:right
}
#pe-progress .v293-card-metric b{
  display:block;
  color:#fff;
  font-size:26px;
  line-height:1
}
#pe-progress .v293-card-metric span{
  display:block;
  margin-top:3px;
  color:#d9e7f7;
  font-size:8.5px;
  font-weight:800
}
#pe-progress .v293-card-body{
  padding:12px 13px 13px
}

#pe-progress .v293-topic-card.focus .v293-card-body{
  background:linear-gradient(180deg,rgba(255,250,242,.92),rgba(255,255,255,.98))
}
#pe-progress .v293-topic-card.coverage .v293-card-body{
  background:linear-gradient(180deg,rgba(246,250,254,.94),rgba(255,255,255,.98))
}
#pe-progress .v293-topic-card.relative .v293-card-body{
  background:linear-gradient(180deg,rgba(249,247,252,.95),rgba(255,255,255,.98))
}
#pe-progress .v293-comparison{
  padding:8px 9px;
  border:1px solid #e0e7ee;
  border-radius:9px;
  background:linear-gradient(135deg,#fbfcfe,#f5f8fb);
  color:#405a73;
  font-size:10.5px;
  font-weight:800;
  line-height:1.35
}
#pe-progress .v293-card-facts{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:9px;
  color:#66798b;
  font-size:9.5px;
  line-height:1.25
}
#pe-progress .v293-card-facts span+span::before{
  content:"•";
  margin-right:6px;
  color:#a0acb9
}
#pe-progress .v293-view-link{
  width:100%;
  margin-top:11px;
  padding:8px 10px;
  border:1px solid #cbd8e4;
  border-radius:9px;
  background:#fff;
  color:#214d78;
  font-size:10.5px;
  font-weight:850;
  cursor:pointer
}
#pe-progress .v293-view-link:hover{
  border-color:#91afd0;
  background:#f7faff
}
#pe-progress .v293-view-link:disabled{
  opacity:.42;
  cursor:not-allowed
}
#pe-progress .v293-empty{
  grid-column:1/-1;
  padding:12px;
  border:1px dashed #cad5df;
  border-radius:11px;
  background:#fafbfd;
  color:#687b8e;
  font-size:11px
}
#pe-progress .v293-method-note{
  margin-top:15px;
  padding:10px 12px;
  border:1px solid #e1e7ed;
  border-radius:10px;
  background:#fafbfd;
  color:#6a7b8d;
  font-size:10px;
  line-height:1.45
}

/* All topics legend: line only — no circles or squares. */
#pe-progress .v293-topic-key{
  width:100%;
  min-width:0;
  padding:8px 9px;
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  gap:7px;
  align-items:center;
  border:1px solid #dbe4ed;
  border-radius:10px;
  background:#fff;
  color:#334e68;
  text-align:left;
  cursor:pointer
}
#pe-progress .v293-topic-key:hover{
  border-color:#96b5d3;
  background:#f8fbfd
}
#pe-progress .v293-line-sample{
  width:44px;
  height:10px;
  display:block;
  overflow:visible
}
#pe-progress .v293-topic-key span{
  min-width:0;
  font-size:10.5px;
  line-height:1.25;
  font-weight:800;
  overflow-wrap:anywhere
}
#pe-progress .v293-topic-key b{
  color:#173a5e;
  font-size:10.5px;
  white-space:nowrap
}
#pe-progress .v293-topic-key.no-data{
  opacity:.5;
  cursor:default;
  background:#fafbfc
}

/* ---------- Why Us: no duplicate Practice / Exams / Progress product navigation ---------- */
#pe-why .v293-why-root{
  padding-top:28px;
  padding-bottom:54px
}
#pe-why .v293-why-hero{
  overflow:hidden;
  position:relative;
  padding:34px;
  border-radius:24px;
  background:linear-gradient(120deg,#09284d 0%,#104a86 58%,#1769e0 100%);
  box-shadow:0 18px 42px rgba(10,47,88,.16);
  color:#fff
}
#pe-why .v293-why-hero::after{
  content:"";
  position:absolute;
  width:340px;
  height:340px;
  right:-130px;
  top:-150px;
  border-radius:50%;
  border:54px solid rgba(255,255,255,.055)
}
#pe-why .v293-why-eyebrow{
  display:inline-block;
  color:#cfe3ff;
  font-size:10px;
  font-weight:950;
  letter-spacing:.12em
}
#pe-why .v293-why-hero h1{
  position:relative;
  z-index:1;
  max-width:820px;
  margin:9px 0 0;
  font-size:38px;
  line-height:1.08;
  letter-spacing:-1px
}
#pe-why .v293-why-hero>p{
  position:relative;
  z-index:1;
  max-width:820px;
  margin:12px 0 0;
  color:#e0ecfa;
  font-size:15px;
  line-height:1.58
}
#pe-why .v293-why-stats{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:24px;
  max-width:850px
}
#pe-why .v293-why-stat{
  padding:13px 14px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:13px;
  background:rgba(255,255,255,.08)
}
#pe-why .v293-why-stat b{
  display:block;
  color:#fff;
  font-size:25px
}
#pe-why .v293-why-stat span{
  display:block;
  margin-top:2px;
  color:#dce9f8;
  font-size:10.5px
}
#pe-why .v293-why-section-head{
  margin-top:30px
}
#pe-why .v293-why-section-head h2{
  margin:0;
  color:#0b2b50;
  font-size:26px
}
#pe-why .v293-why-section-head p{
  max-width:780px;
  margin:6px 0 0;
  color:#66788b;
  font-size:13px;
  line-height:1.5
}
#pe-why .v293-value-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:15px
}
#pe-why .v293-value-card{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:13px;
  align-items:start;
  padding:17px;
  border:1px solid #dbe4ed;
  border-radius:16px;
  background:linear-gradient(145deg,#fff,#f8fafc);
  box-shadow:0 5px 16px rgba(19,50,82,.04)
}
#pe-why .v293-value-icon{
  width:48px;
  height:48px;
  border-radius:13px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#eaf3ff,#f7fbff);
  color:#1769e0
}
#pe-why .v293-value-icon svg{
  width:24px;
  height:24px
}
#pe-why .v293-value-card h3{
  margin:0;
  color:#15395d;
  font-size:15px
}
#pe-why .v293-value-card p{
  margin:5px 0 0;
  color:#64778a;
  font-size:11.5px;
  line-height:1.48
}
#pe-why .v293-feedback-loop{
  margin-top:26px;
  padding:21px;
  border:1px solid #dbe4ed;
  border-radius:18px;
  background:#fff
}
#pe-why .v293-feedback-loop h2{
  margin:0;
  color:#0b2b50;
  font-size:22px
}
#pe-why .v293-loop-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin-top:14px
}
#pe-why .v293-loop-step{
  position:relative;
  padding:14px;
  border-radius:13px;
  background:linear-gradient(145deg,#f4f8fd,#fff);
  border:1px solid #dce6f0
}
#pe-why .v293-loop-step b{
  display:block;
  color:#1769e0;
  font-size:11px
}
#pe-why .v293-loop-step strong{
  display:block;
  margin-top:4px;
  color:#173a5e;
  font-size:14px
}
#pe-why .v293-loop-step small{
  display:block;
  margin-top:4px;
  color:#6a7c8e;
  font-size:10.5px;
  line-height:1.38
}
@media(max-width:760px){
  #pe-progress .v293-plan{padding:14px}
  #pe-progress .v293-summary-bar{grid-template-columns:1fr}
  #pe-progress .v293-summary-item + .v293-summary-item{border-left:0;border-top:1px solid #e1e7ed}
  #pe-progress .v293-recommendation{display:block}
  #pe-progress .v293-recommendation-actions{margin-top:11px}
  #pe-progress .v293-group-head{display:block}
  #pe-progress .v293-group-head p{text-align:left;margin-top:5px}
  #pe-progress .v293-topic-grid{grid-template-columns:1fr;padding:10px}

  #pe-why .v293-why-hero{padding:24px 20px}
  #pe-why .v293-why-hero h1{font-size:31px}
  #pe-why .v293-why-stats{grid-template-columns:1fr}
  #pe-why .v293-value-grid{grid-template-columns:1fr}
  #pe-why .v293-loop-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
  #pe-progress .v293-card-band{display:block}
  #pe-progress .v293-card-metric{text-align:left;margin-top:10px}
  #pe-why .v293-loop-grid{grid-template-columns:1fr}
}

/* CIVILREADY V345: contain the stacked full-exam diagram on phone widths */
@media (max-width: 650px) {
  #view-exam .v170-exam-card[data-kind="full"] .v170-exam-visual {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }
  #view-exam .v170-exam-card[data-kind="full"] .v170-format-diagram.full {
    height: auto !important;
  }
}


/* CIVILREADY_V295_PROGRESS_READABLE_LAYOUT_20261010 */

/* Desktop / laptop: larger, site-consistent type with tighter cards. */
#pe-progress .v293-plan-head h2{
  font-size:26px;
}
#pe-progress .v293-plan-head p{
  font-size:14px;
  line-height:1.55;
}
#pe-progress .v293-summary-item{
  padding:12px 15px;
}
#pe-progress .v293-summary-item span{
  font-size:10px;
}
#pe-progress .v293-summary-item b{
  font-size:28px;
}
#pe-progress .v293-summary-item small{
  font-size:11.5px;
  line-height:1.35;
}
#pe-progress .v293-recommendation{
  padding:16px 18px;
}
#pe-progress .v293-recommendation-copy>span{
  font-size:10px;
}
#pe-progress .v293-recommendation-copy strong{
  font-size:20px;
}
#pe-progress .v293-recommendation-copy p{
  font-size:13px;
  line-height:1.45;
}
#pe-progress .v293-group{
  margin-top:18px;
}
#pe-progress .v293-group-head{
  padding:12px 14px;
}
#pe-progress .v293-group-head h3{
  font-size:18px;
}
#pe-progress .v293-group-head p{
  font-size:12px;
  line-height:1.4;
}
#pe-progress .v293-topic-grid{
  gap:10px;
  padding:10px;
}
#pe-progress .v293-card-band{
  padding:10px 12px;
}
#pe-progress .v293-status,
#pe-progress .v293-priority{
  padding:4px 7px;
  font-size:10px;
}
#pe-progress .v293-card-title h4{
  margin-top:7px;
  font-size:16px;
  line-height:1.3;
}
#pe-progress .v293-card-metric b{
  font-size:28px;
}
#pe-progress .v293-card-metric span{
  font-size:10px;
}
#pe-progress .v293-card-body{
  padding:10px 12px 11px;
}
#pe-progress .v293-comparison{
  padding:7px 9px;
  font-size:12px;
  line-height:1.42;
}
#pe-progress .v293-card-facts{
  margin-top:8px;
  font-size:11px;
  line-height:1.35;
}
#pe-progress .v293-view-link{
  width:auto;
  min-width:0;
  margin-top:9px;
  padding:7px 11px;
  min-height:32px;
  font-size:11.5px;
  line-height:1.2;
  justify-self:start;
}
#pe-progress .v293-method-note{
  font-size:11px;
  line-height:1.5;
}

/* Wide PC/Mac screens: use available width rather than making text tiny. */
@media(min-width:1100px){
  #pe-progress .v293-topic-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:11px;
  }
  #pe-progress .v293-card-band{
    min-height:74px;
  }
  #pe-progress .v293-card-body{
    min-height:112px;
  }
}

/* Tablet / small laptop: preserve readability without oversized cards. */
@media(min-width:761px) and (max-width:1099px){
  #pe-progress .v293-plan-head h2{font-size:24px}
  #pe-progress .v293-plan-head p{font-size:13px}
  #pe-progress .v293-group-head h3{font-size:17px}
  #pe-progress .v293-group-head p{font-size:11.5px}
  #pe-progress .v293-card-title h4{font-size:15px}
  #pe-progress .v293-comparison{font-size:11.5px}
  #pe-progress .v293-card-facts{font-size:10.5px}
}

/* Phone: larger touch target and single-column reading flow. */
@media(max-width:760px){
  #pe-progress .v293-plan-head h2{
    font-size:22px;
    line-height:1.2;
  }
  #pe-progress .v293-plan-head p{
    font-size:12.5px;
  }
  #pe-progress .v293-summary-item span{
    font-size:9.5px;
  }
  #pe-progress .v293-summary-item small{
    font-size:11px;
  }
  #pe-progress .v293-recommendation-copy strong{
    font-size:18px;
  }
  #pe-progress .v293-recommendation-copy p{
    font-size:12px;
  }
  #pe-progress .v293-group-head h3{
    font-size:16px;
  }
  #pe-progress .v293-group-head p{
    font-size:11px;
  }
  #pe-progress .v293-card-band{
    padding:11px 12px;
  }
  #pe-progress .v293-card-title h4{
    font-size:15px;
  }
  #pe-progress .v293-card-metric b{
    font-size:25px;
  }
  #pe-progress .v293-comparison{
    font-size:11.5px;
  }
  #pe-progress .v293-card-facts{
    font-size:10.5px;
  }
  #pe-progress .v293-view-link{
    width:100%;
    min-height:40px;
    padding:9px 11px;
    font-size:12.5px;
  }
  #pe-progress .v293-method-note{
    font-size:10.5px;
  }
}

@media(max-width:390px){
  #pe-progress .v293-status,
  #pe-progress .v293-priority{
    font-size:9.5px;
  }
  #pe-progress .v293-card-title h4{
    font-size:14.5px;
  }
}


/* PE adaptations retain FE design components and exact FE palette. */
#pe-progress .v287-progress-dashboard {display:grid;gap:18px;margin-top:18px}
#pe-progress .v287-chart-card h2 {margin:0;color:#0a2855;font-size:24px}
#pe-progress .v287-chart-card .v287-chart-head p {font-size:13px;color:#64748b}
#pe-progress .v287-topic-select {max-width:450px;min-width:250px;font-size:14px}
#pe-progress .v287-chart-wrap{min-height:220px;width:100%;overflow:hidden}
#pe-progress .v287-chart-svg {display:block;width:100%;height:auto}
#pe-progress .v287-insight{margin-top:14px;padding:11px 14px;background:#f5f9fe;border:1px solid #e0eaf5;border-radius:11px;color:#405a73;font-size:13px}
#pe-progress .v293-topic-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
#pe-progress .v293-group[hidden]{display:none!important}
#pe-progress .v293-topic-card .v293-card-body {min-height:86px}
#pe-progress .v293-topic-card .v293-card-title h4 {font-size:15px}
#pe-progress .v293-topic-card .v293-card-metric b {font-size:24px}
#pe-progress .v293-card-facts span {font-size:12px}
#pe-progress .v293-empty{font-size:13px}
#pe-progress .v293-btn {text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
#pe-progress .v287-range-btn[aria-pressed="true"]{background:#1769e0;color:white}
#pe-progress .v293-recommendation{min-height:105px}
#pe-progress .pe-progress-activity{margin-top:18px}
#pe-progress .pe-progress-activity-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid #e8edf3;font-size:13px;color:#435872}
#pe-progress .pe-progress-activity-row:last-child{border:0}
#pe-progress .pe-progress-empty{padding:15px;border:1px dashed #cfdce9;border-radius:12px;color:#64748b;background:#fafbfd;font-size:14px}
#pe-progress .v293-topic-card .v287-spark{width:100%;height:44px;margin-top:8px}
#pe-progress .pe-progress-view-status{color:#64748b;font-size:13px;margin-top:6px;min-height:18px}
@media(max-width:780px){#pe-progress .v287-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#pe-progress .v293-topic-grid{grid-template-columns:1fr}
#pe-progress .v287-chart-head{display:block}
#pe-progress .v287-controls{margin-top:12px}}
@media(max-width:510px){#pe-progress .v287-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#pe-progress .v287-topic-select{min-width:0;max-width:none;width:100%}
#pe-progress .v287-controls{display:grid}
#pe-progress .v287-range-group{width:100%;justify-content:space-between}
#pe-progress .v287-range-btn{padding:7px}
#pe-progress .v293-summary-bar{grid-template-columns:1fr}
#pe-progress .v293-summary-item + .v293-summary-item{border-left:0;border-top:1px solid #e1e7ed}
#pe-progress .v293-recommendation{display:block}
#pe-progress .v293-recommendation-actions{margin-top:12px}
#pe-progress .v287-chart-card{padding:14px}
}
/* PE specialization progress: reuse FE v287/v293 cards, simplify subtopic drilldown. */
#pe-progress .pe-topic-subtopics{margin-top:12px;border-top:1px solid #dbe5ef;padding-top:11px;width:100%}
#pe-progress .pe-topic-subtopics summary{cursor:pointer;color:#1769e0;font-size:12px;font-weight:850;list-style:revert}
#pe-progress .pe-subtopic-results{display:grid;gap:7px;margin-top:11px}
#pe-progress .pe-subtopic-result{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;border:1px solid #e2eaf2;border-radius:9px;padding:9px;background:#f8fbff}
#pe-progress .pe-subtopic-result span{font-size:12px;font-weight:750;color:#173a5e;overflow-wrap:anywhere}
#pe-progress .pe-subtopic-result strong{font-size:12px;color:#1769e0}
#pe-progress .pe-subtopic-result small{font-size:10px;color:#64748b;white-space:nowrap}
#pe-progress .v287-topic-select{min-width:205px}
#pe-progress .pe-progress-view-status{color:#456580;font-weight:700}
@media(max-width:650px){#pe-progress .pe-subtopic-result{grid-template-columns:minmax(0,1fr) auto}#pe-progress .pe-subtopic-result small{grid-column:1/-1}}

/* One saved PE specialty, FE-consistent progress dashboard, compact topic/subtopic cards. */
#pe-progress .workspace-head{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap}
#pe-progress .workspace-head>div:first-child{flex:1 1 460px}
#pe-progress .pe-specialty-picker{display:grid;gap:6px;flex:0 1 305px;background:#fff;border:1px solid #dbe5ef;padding:14px 17px;border-radius:15px;box-shadow:0 7px 20px rgba(18,52,94,.05)}
#pe-progress .pe-specialty-picker label{font-size:13px;font-weight:850;color:#0a2855}
#pe-progress .pe-specialty-picker select{width:100%;max-width:none;min-height:45px;font-size:16px}
#pe-progress .pe-specialty-picker small{font-size:11.5px;color:#64748b}
#pe-progress .v287-controls{justify-content:flex-end}
#pe-progress .pe-topic-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:18px}
#pe-progress .pe-topic-panel{min-width:0;background:#fff;border:1px solid #dbe5ef;border-radius:16px;overflow:hidden;box-shadow:0 7px 21px rgba(18,52,94,.06)}
#pe-progress .pe-topic-panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 17px;border-bottom:1px solid #e5ebf3;background:#f7faff}
#pe-progress .pe-topic-panel-head h3{font-size:16px;line-height:1.35;margin:8px 0 0;color:#0a2855}
#pe-progress .pe-topic-tag{display:inline-block;color:#1769e0;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
#pe-progress .pe-topic-panel.focus .pe-topic-tag{color:#ad650b}
#pe-progress .pe-topic-panel.ontrack .pe-topic-tag{color:#06754c}
#pe-progress .pe-topic-stat{text-align:right;flex-shrink:0}
#pe-progress .pe-topic-stat b{display:block;font-size:21px;color:#0a2855}
#pe-progress .pe-topic-stat small{display:block;color:#64748b;font-size:11px;white-space:nowrap}
#pe-progress .pe-topic-panel-body{padding:14px 17px}
#pe-progress .pe-topic-meter{height:6px;background:#edf2f8;border-radius:999px;overflow:hidden;margin-bottom:13px}
#pe-progress .pe-topic-meter span{display:block;height:100%;background:#1769e0;border-radius:999px}
#pe-progress .pe-topic-subtopics summary{font-size:13px;font-weight:800;color:#1769e0;cursor:pointer}
#pe-progress .pe-topic-subtopic-list{display:grid;gap:0;margin-top:12px}
#pe-progress .pe-topic-subtopic{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:9px;align-items:center;border-top:1px solid #edf2f8;padding:9px 0;font-size:12px}
#pe-progress .pe-topic-subtopic span{grid-row:span 2;min-width:0}
#pe-progress .pe-topic-subtopic strong{color:#0a2855;text-align:right}
#pe-progress .pe-topic-subtopic small{grid-column:2;color:#64748b;text-align:right}
@media(max-width:760px){#pe-progress .workspace-head{display:grid}#pe-progress .pe-specialty-picker{width:100%;max-width:none}#pe-progress .pe-topic-overview{grid-template-columns:1fr}}

/* PE uses FE v293 topic groups; subtopic rows mirror FE v488 report density. */
#pe-progress .v488-subtopic-summary{
  display:grid;
  gap:0;
  margin-top:11px;
  border:1px solid #dce6f2;
  background:#fff;
  border-radius:11px;
  overflow:hidden
}
#pe-progress .v488-subtopic-line{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:10px;
  padding:9px 10px;
  font-size:12px;
  line-height:1.4;
  color:#36536f
}
#pe-progress .v488-subtopic-line+.v488-subtopic-line{border-top:1px solid #edf1f5}
#pe-progress .v488-subtopic-line>span{overflow-wrap:anywhere}
#pe-progress .v488-subtopic-line>strong{font-size:12px;color:#0a2855;white-space:nowrap}
#pe-progress .v488-subtopic-line>small{font-size:10px;color:#64748b;white-space:nowrap}
#pe-progress .v293-group{margin-top:17px}
#pe-progress .v293-group-head h3{color:#0a2855}
#pe-progress .pe-specialty-picker select{width:100%;max-width:360px}
#pe-progress .pe-progress-activity{margin-top:0}
@media(max-width:640px){
  #pe-progress .v488-subtopic-line{grid-template-columns:minmax(0,1fr) auto;gap:4px 8px}
  #pe-progress .v488-subtopic-line>small{grid-column:1/-1}
  #pe-progress .pe-specialty-picker select{max-width:none}
}
