/* =========================================================
   EITCA — CRA Cyber Resilience Act — shared scoped visual system
   ========================================================= */

.eitca-topic.eitca-aif{
  --aif-text:#0f172a;
  --aif-muted:#475569;
  --aif-muted2:#64748b;
  --aif-border:#e2e8f0;
  --aif-border2:#cbd5e1;
  --aif-surface:#ffffff;
  --aif-soft:#f8fafc;

  --aif-primary:#2563eb;
  --aif-primarySoft:#eff6ff;

  --aif-success:#059669;
  --aif-successSoft:#ecfdf5;

  --aif-warn:#f59e0b;
  --aif-warnSoft:#fffbeb;

  --aif-info:#38bdf8;

  --aif-shadow: 0 10px 28px rgba(15,23,42,.08);
  --aif-shadowSoft: 0 8px 20px rgba(15,23,42,.06);

  color:var(--aif-text);
}

.eitca-topic.eitca-aif,
.eitca-topic.eitca-aif *{ box-sizing:border-box; }

.eitca-topic.eitca-aif .aif-wrap{
  max-width:1120px;
  margin:0 auto;
  /*padding:clamp(14px, 2vw, 22px);*/
}

/* Typography */
.eitca-topic.eitca-aif :where(h1,h2,h3,h4){
  margin:0 0 10px;
  line-height:1.22;
  letter-spacing:-0.01em;
}
.eitca-topic.eitca-aif h1{ font-size: clamp(24px, 2.5vw, 34px); }
.eitca-topic.eitca-aif h2{ font-size: clamp(18px, 2.1vw, 24px); }
.eitca-topic.eitca-aif h3{ font-size: 18px; }
.eitca-topic.eitca-aif h4{ font-size: 16px; }

.eitca-topic.eitca-aif p{ margin:0 0 10px; color:var(--aif-muted); }
.eitca-topic.eitca-aif strong{ color:var(--aif-text); }

.eitca-topic.eitca-aif .aif-mini{
  font-size:13px;
  color:var(--aif-muted2);
  line-height:1.45;
}

.eitca-topic.eitca-aif .aif-lead{
  margin-top:6px;
  color:var(--aif-muted);
  font-size:14px;
}

/* HERO */
.eitca-topic.eitca-aif .aif-hero{
  background: linear-gradient(135deg, #f8fafc 0%, #eff6ff 45%, #ffffff 100%);
  border:1px solid var(--aif-border);
  border-radius:24px;
  padding:18px 18px;
  box-shadow: var(--aif-shadowSoft);
}

.eitca-topic.eitca-aif .aif-kicker{
  margin:0 0 8px;
  font-size:13px;
  font-weight:800;
  color:var(--aif-muted2);
  text-transform:uppercase;
  letter-spacing:.08em;
}

.eitca-topic.eitca-aif .aif-subtitle{
  margin:10px 0 0;
  color:var(--aif-muted);
  font-size:15px;
  max-width:72ch;
}

.eitca-topic.eitca-aif .aif-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.eitca-topic.eitca-aif .aif-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border:1px solid var(--aif-border);
  background:var(--aif-surface);
  border-radius:999px;
  font-size:13px;
  font-weight:700;
  color:var(--aif-text);
  box-shadow: 0 1px 0 rgba(15,23,42,.03);
}

/* Layout helpers */
.eitca-topic.eitca-aif .aif-body{ margin-top:16px; }

.eitca-topic.eitca-aif .aif-grid2{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:14px;
}
@media (max-width: 860px){
  .eitca-topic.eitca-aif .aif-grid2{ grid-template-columns: 1fr; }
}

.eitca-topic.eitca-aif .aif-two{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:14px;
}
@media (max-width: 860px){
  .eitca-topic.eitca-aif .aif-two{ grid-template-columns: 1fr; }
}

.eitca-topic.eitca-aif .aif-hr{
  border:0;
  height:1px;
  background:var(--aif-border);
  margin:22px 0;
}

/* Cards */
.eitca-topic.eitca-aif .aif-card{
  background:var(--aif-surface);
  border:1px solid var(--aif-border);
  border-radius:18px;
  padding:16px;
  box-shadow: var(--aif-shadowSoft);
  color:var(--aif-text);
}

.eitca-topic.eitca-aif .aif-list{
  margin:10px 0 0 18px;
  padding:0;
  color:var(--aif-muted);
}
.eitca-topic.eitca-aif .aif-list li{ margin: 6px 0; }

/* Callouts */
.eitca-topic.eitca-aif .aif-callout{
  display:flex;
  gap:12px;
  padding:14px;
  border-radius:16px;
  border:1px solid var(--aif-border);
  background:var(--aif-soft);
  color:var(--aif-text);
}

.eitca-topic.eitca-aif .aif-callout.info{
  background: var(--aif-primarySoft);
  border-color: #bfdbfe;
}
.eitca-topic.eitca-aif .aif-callout.warn{
  background: var(--aif-warnSoft);
  border-color: #fcd34d;
}
.eitca-topic.eitca-aif .aif-callout.ok{
  background: var(--aif-successSoft);
  border-color: #86efac;
}

.eitca-topic.eitca-aif .aif-ico{
  width:34px;
  height:34px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  background: rgba(255,255,255,.7);
  border:1px solid rgba(15,23,42,.06);
}
.eitca-topic.eitca-aif .aif-callout p{ color: var(--aif-muted); }

/* Details */
.eitca-topic.eitca-aif .aif-details{
  border:1px solid var(--aif-border);
  background:var(--aif-surface);
  border-radius:18px;
  box-shadow: var(--aif-shadowSoft);
  overflow:hidden;
}
.eitca-topic.eitca-aif .aif-details > summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:14px 16px;
  font-weight:900;
  color:var(--aif-text);
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  border-bottom:1px solid var(--aif-border);
}
.eitca-topic.eitca-aif .aif-details > summary::-webkit-details-marker{ display:none; }

.eitca-topic.eitca-aif .aif-summaryNote{
  font-weight:800;
  font-size:12px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid var(--aif-border);
  background:var(--aif-surface);
  color:var(--aif-muted2);
  white-space:nowrap;
}

.eitca-topic.eitca-aif .aif-detailsBody{
  padding:16px;
}

.eitca-topic.eitca-aif .aif-prose{
  color:var(--aif-text);
}
.eitca-topic.eitca-aif .aif-prose p{ color:var(--aif-muted); }
.eitca-topic.eitca-aif .aif-prose ul,
.eitca-topic.eitca-aif .aif-prose ol{
  margin:10px 0 0 20px;
  color:var(--aif-muted);
}

/* Figures / SVG */
.eitca-topic.eitca-aif .aif-figure{
  margin:16px 0;
  padding:14px;
  border:1px solid var(--aif-border);
  border-radius:18px;
  background:var(--aif-surface);
  box-shadow: var(--aif-shadowSoft);
}
.eitca-topic.eitca-aif .aif-figure figcaption{
  margin:0 0 10px;
  font-size:13px;
  font-weight:800;
  color:var(--aif-muted2);
}
.eitca-topic.eitca-aif .aif-svg{
  width:100%;
  height:auto;
  display:block;
  overflow:visible;
}

/* Table */
.eitca-topic.eitca-aif .aif-tableWrap{
  overflow:auto;
  border:1px solid var(--aif-border);
  border-radius:16px;
  background:var(--aif-surface);
}
.eitca-topic.eitca-aif .aif-table{
  width:100%;
  min-width:860px;
  border-collapse:separate;
  border-spacing:0;
}
.eitca-topic.eitca-aif .aif-table th,
.eitca-topic.eitca-aif .aif-table td{
  padding:12px 12px;
  border-bottom:1px solid var(--aif-border);
  vertical-align:top;
}
.eitca-topic.eitca-aif .aif-table th{
  background:#f8fafc;
  color:var(--aif-text);
  font-size:13px;
  text-align:left;
}
.eitca-topic.eitca-aif .aif-table td{ color:var(--aif-muted); font-size:13px; }
.eitca-topic.eitca-aif .aif-table tr:last-child td{ border-bottom:0; }

/* Badges */
.eitca-topic.eitca-aif .aif-badge{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  font-weight:900;
  font-size:12px;
  border:1px solid var(--aif-border);
  background:#ffffff;
  color:var(--aif-text);
}
.eitca-topic.eitca-aif .aif-badge.blue{ background: #eff6ff; border-color:#bfdbfe; }
.eitca-topic.eitca-aif .aif-badge.green{ background: #ecfdf5; border-color:#a7f3d0; }
.eitca-topic.eitca-aif .aif-badge.amber{ background: #fffbeb; border-color:#fde68a; }

/* Keyboard hint pill */
.eitca-topic.eitca-aif .aif-kbd{
  display:inline-block;
  padding:2px 8px;
  border-radius:8px;
  border:1px solid var(--aif-border2);
  background:#ffffff;
  color:var(--aif-text);
  font-weight:800;
  font-size:12px;
}

/* Section */
.eitca-topic.eitca-aif .aif-section{
  margin:18px 0;
}

/* Map */
.eitca-topic.eitca-aif .aif-mapWrap{
  border:1px solid var(--aif-border);
  border-radius:18px;
  background:var(--aif-surface);
  box-shadow: var(--aif-shadowSoft);
  padding:14px;
}
.eitca-topic.eitca-aif .aif-mapHeader{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.eitca-topic.eitca-aif .aif-mapHint{
  margin:0;
  font-size:13px;
  color:var(--aif-muted2);
}
.eitca-topic.eitca-aif .aif-mapGrid{
  display:grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap:14px;
  align-items:start;
}
@media (max-width: 980px){
  .eitca-topic.eitca-aif .aif-mapGrid{
    grid-template-columns: 1fr;
  }
}

.eitca-topic.eitca-aif .aif-mapPanel{
  border:1px solid var(--aif-border);
  border-radius:16px;
  background:var(--aif-soft);
  padding:14px;
}

.eitca-topic.eitca-aif .aif-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.eitca-topic.eitca-aif .aif-tag{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid var(--aif-border);
  background:#ffffff;
  font-size:12px;
  font-weight:800;
  color:var(--aif-muted2);
}

.eitca-topic.eitca-aif .aif-mapNode{ cursor:pointer; }
.eitca-topic.eitca-aif .aif-mapNode:focus{ outline:none; }
.eitca-topic.eitca-aif .aif-mapNode:focus .aif-nodeStroke,
.eitca-topic.eitca-aif .aif-mapNode:hover .aif-nodeStroke{
  stroke: var(--aif-primary) !important;
  stroke-width: 3 !important;
}

/* Mini tool */
.eitca-topic.eitca-aif .aif-split{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:14px;
  align-items:start;
}
@media (max-width: 980px){
  .eitca-topic.eitca-aif .aif-split{ grid-template-columns: 1fr; }
}

.eitca-topic.eitca-aif .aif-toolCard{
  border:1px solid var(--aif-border);
  border-radius:18px;
  background:var(--aif-soft);
  padding:16px;
  box-shadow: var(--aif-shadowSoft);
}

.eitca-topic.eitca-aif .aif-qBlock{ margin-bottom:14px; }
.eitca-topic.eitca-aif .aif-label{
  font-weight:900;
  color:var(--aif-text);
  margin-bottom:8px;
}
.eitca-topic.eitca-aif .aif-choiceGrid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap:10px;
}
.eitca-topic.eitca-aif .aif-choice{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:12px;
  border:1px solid var(--aif-border);
  border-radius:14px;
  background:#ffffff;
  cursor:pointer;
  transition: transform .12s ease, border-color .12s ease, box-shadow .12s ease;
}
.eitca-topic.eitca-aif .aif-choice:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(15,23,42,.06);
}
.eitca-topic.eitca-aif .aif-choice input[type="radio"]{
  margin-top:3px;
  width:18px;
  height:18px;
  flex:0 0 auto;
  accent-color: var(--aif-primary);
}
.eitca-topic.eitca-aif .aif-choice > span{
  display:flex;
  flex-direction:column;
  gap:3px;
  color:var(--aif-muted);
  line-height:1.25;
}
.eitca-topic.eitca-aif .aif-choice > span > strong{
  color:var(--aif-text);
}
.eitca-topic.eitca-aif .aif-choice > span > span{
  color:var(--aif-muted2);
  font-size:12px;
}

.eitca-topic.eitca-aif .aif-result{
  margin-top:10px;
  border:1px solid var(--aif-border);
  border-radius:14px;
  background:#ffffff;
  padding:12px;
}
.eitca-topic.eitca-aif .aif-resultTitle{
  margin:0 0 6px;
  font-weight:900;
  color:var(--aif-text);
}
.eitca-topic.eitca-aif .aif-resultBody{ margin:0 0 8px; color:var(--aif-muted); }
.eitca-topic.eitca-aif .aif-resultList{
  margin:0 0 0 18px;
  color:var(--aif-muted2);
  font-size:13px;
}

/* Buttons */
.eitca-topic.eitca-aif .aif-btnRow{
  display:flex;
  gap:10px;
  align-items:center;
  margin-top:12px;
  flex-wrap:wrap;
}

.eitca-topic.eitca-aif .aif-btn{
  appearance:none;
  border:1px solid var(--aif-border2);
  background:#ffffff;
  color:var(--aif-text);
  padding:10px 14px;
  border-radius:999px;
  font-weight:900;
  cursor:pointer;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.eitca-topic.eitca-aif .aif-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(15,23,42,.06);
}
.eitca-topic.eitca-aif .aif-btn:active{ transform: translateY(0); box-shadow:none; }
.eitca-topic.eitca-aif .aif-btn:focus{ outline:none; }
.eitca-topic.eitca-aif .aif-btn:focus-visible{
  box-shadow: 0 0 0 4px rgba(37,99,235,.18);
  border-color: rgba(37,99,235,.45);
}
.eitca-topic.eitca-aif .aif-btn.primary{
  background: var(--aif-primary);
  border-color: var(--aif-primary);
  color:#fff;
}
.eitca-topic.eitca-aif .aif-btn.ghost{
  background: transparent;
}

/* Inputs */
.eitca-topic.eitca-aif .aif-input{
  width:100%;
  border:1px solid var(--aif-border2);
  border-radius:14px;
  padding:10px 12px;
  background:#ffffff;
  color:var(--aif-text);
  font: inherit;
}
.eitca-topic.eitca-aif textarea.aif-input{
  min-height: 96px;
  resize: vertical;
}
.eitca-topic.eitca-aif .aif-help{
  margin:6px 0 0;
  font-size:13px;
  color:var(--aif-muted2);
}

/* Labs */
.eitca-topic.eitca-aif .aif-labGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:14px;
  margin-top:12px;
  align-items:stretch;
}
@media (max-width: 980px){
  .eitca-topic.eitca-aif .aif-labGrid{ grid-template-columns: 1fr; }
}

.eitca-topic.eitca-aif .aif-labCard{
  background:var(--aif-surface);
  border:1px solid var(--aif-border);
  border-radius:18px;
  padding:16px;
  box-shadow: var(--aif-shadowSoft);
  width:100%;
  max-width:none;
}

.eitca-topic.eitca-aif .aif-meter{
  margin-top:12px;
  height:10px;
  border-radius:999px;
  background:#e2e8f0;
  overflow:hidden;
}
.eitca-topic.eitca-aif .aif-meter > div{
  height:100%;
  width:0%;
  border-radius:999px;
  background: linear-gradient(90deg, #ef4444, #f59e0b, #16a34a);
  transition: width .35s ease;
}

.eitca-topic.eitca-aif .aif-outputBox{
  margin-top:12px;
  border:1px solid var(--aif-border);
  border-radius:14px;
  padding:12px;
  background: var(--aif-soft);
}
.eitca-topic.eitca-aif .aif-outLine{
  font-weight:900;
  color:var(--aif-text);
  margin:0;
}
.eitca-topic.eitca-aif .aif-outSmall{
  margin-top:6px;
  font-size:13px;
  color:var(--aif-muted2);
}
.eitca-topic.eitca-aif .aif-outputPre{
  margin:10px 0 0;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid var(--aif-border);
  background:#ffffff;
  white-space:pre-wrap;
  color:var(--aif-text);
  font-size:13px;
}

.eitca-topic.eitca-aif .aif-highlight{
  margin-top:10px;
  padding:10px 12px;
  border:1px dashed var(--aif-border2);
  border-radius:14px;
  background:#ffffff;
  min-height:44px;
}
.eitca-topic.eitca-aif .aif-chipRow{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.eitca-topic.eitca-aif .aif-chip{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  border:1px solid var(--aif-border);
  background:var(--aif-soft);
}
.eitca-topic.eitca-aif .aif-chip.pos{ background:#ecfdf5; border-color:#a7f3d0; }
.eitca-topic.eitca-aif .aif-chip.neg{ background:#fef2f2; border-color:#fecaca; }

/* Activity 1 — Sort board */
.eitca-topic.eitca-aif .aif-sortBoard{
  display:grid;
  grid-template-columns: 1fr 1.2fr;
  gap:14px;
  align-items:start;
}
@media (max-width: 980px){
  .eitca-topic.eitca-aif .aif-sortBoard{ grid-template-columns: 1fr; }
}

.eitca-topic.eitca-aif .aif-deck{
  border:1px solid var(--aif-border);
  border-radius:16px;
  background:#ffffff;
  padding:12px;
}
.eitca-topic.eitca-aif .aif-deckTitle{
  margin:0 0 10px;
  font-weight:900;
  color:var(--aif-text);
}
.eitca-topic.eitca-aif .aif-cards{
  display:flex;
  flex-direction:column;
  gap:10px;
  max-height:460px;
  overflow:auto;
  padding-right:6px;
}
.eitca-topic.eitca-aif .aif-cardItem{
  border:1px solid var(--aif-border2);
  border-radius:14px;
  background:var(--aif-soft);
  padding:10px 12px;
  font-weight:700;
  color:var(--aif-text);
  cursor:grab;
  user-select:none;
}
.eitca-topic.eitca-aif .aif-cardItem.is-dragging{ opacity:.65; cursor:grabbing; }
.eitca-topic.eitca-aif .aif-cardItem.is-selected{
  outline: 3px solid rgba(37,99,235,.22);
  background: var(--aif-primarySoft);
  border-color: rgba(37,99,235,.35);
}
.eitca-topic.eitca-aif .aif-cardItem.is-correct{
  border-color:#22c55e;
  background:#ecfdf5;
}
.eitca-topic.eitca-aif .aif-cardItem.is-wrong{
  border-color:#ef4444;
  background:#fef2f2;
}

.eitca-topic.eitca-aif .aif-buckets{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:12px;
}
@media (max-width: 640px){
  .eitca-topic.eitca-aif .aif-buckets{ grid-template-columns: 1fr; }
}
.eitca-topic.eitca-aif .aif-bucket{
  border:1px solid var(--aif-border);
  border-radius:16px;
  background:#ffffff;
  padding:12px;
  min-height:180px;
}
.eitca-topic.eitca-aif .aif-bucketHead{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  margin-bottom:10px;
  gap:10px;
}
.eitca-topic.eitca-aif .aif-bucketHead span{
  font-weight:900;
  color:var(--aif-text);
}
.eitca-topic.eitca-aif .aif-bucketHead small{
  color:var(--aif-muted2);
  font-weight:800;
}

.eitca-topic.eitca-aif .aif-dropzone{
  border:2px dashed var(--aif-border2);
  border-radius:14px;
  min-height:120px;
  padding:10px;
  display:flex;
  flex-direction:column;
  gap:10px;
  background: #fbfdff;
}
.eitca-topic.eitca-aif .aif-dropzone.is-over{
  border-color: rgba(37,99,235,.55);
  background: #eff6ff;
}

.eitca-topic.eitca-aif .aif-sortActions{
  display:flex;
  gap:10px;
  align-items:center;
  margin-top:12px;
}
.eitca-topic.eitca-aif .aif-sortResult{
  margin-top:10px;
  padding:12px;
  border-radius:14px;
  border:1px solid var(--aif-border);
  background:var(--aif-soft);
  color:var(--aif-muted);
  min-height:44px;
}

/* Activity 2 — Flashcards */
.eitca-topic.eitca-aif .aif-fcTop{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}
.eitca-topic.eitca-aif .aif-fcProgress{
  font-weight:900;
  color:var(--aif-text);
}
.eitca-topic.eitca-aif .aif-fcControls{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.eitca-topic.eitca-aif .aif-fcStage{
  margin-top:12px;
  display:flex;
  justify-content:center;
}

.eitca-topic.eitca-aif .aif-fcCard{
  width:min(760px, 100%);
  min-height:220px;
  border-radius:18px;
  border:1px solid var(--aif-border);
  background:#ffffff;
  box-shadow: var(--aif-shadowSoft);
  position:relative;
  transform-style:preserve-3d;
  transition: transform .55s ease;
  cursor:pointer;
  outline:none;
}
.eitca-topic.eitca-aif .aif-fcCard:focus-visible{
  box-shadow: 0 0 0 4px rgba(37,99,235,.18), var(--aif-shadowSoft);
  border-color: rgba(37,99,235,.45);
}
.eitca-topic.eitca-aif .aif-fcCard.is-flipped{
  transform: rotateY(180deg);
}

.eitca-topic.eitca-aif .aif-fcSide{
  position:absolute;
  inset:0;
  padding:18px;
  backface-visibility:hidden;  /* IMPORTANT: prevents mirrored overlap */
  -webkit-backface-visibility:hidden;
  border-radius:18px;
  overflow:auto;
}
.eitca-topic.eitca-aif .aif-fcFront{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}
.eitca-topic.eitca-aif .aif-fcBack{
  transform: rotateY(180deg);
  background:#ffffff;
  color:var(--aif-muted);
}

.eitca-topic.eitca-aif .aif-fcLabel{
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--aif-muted2);
}
.eitca-topic.eitca-aif .aif-fcMain{
  font-size:28px;
  font-weight:1000;
  color:var(--aif-text);
  letter-spacing:-0.02em;
}
.eitca-topic.eitca-aif .aif-fcHint{
  font-size:14px;
  font-weight:800;
  color:var(--aif-muted);
}

.eitca-topic.eitca-aif .aif-hidden{ display:none; }

/* Quiz */
.eitca-topic.eitca-aif .aif-quiz{
  border:1px solid var(--aif-border);
  background:var(--aif-surface);
  border-radius:18px;
  padding:16px;
  box-shadow: var(--aif-shadowSoft);
}

.eitca-topic.eitca-aif .aif-quizHeader{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.eitca-topic.eitca-aif .aif-quizTip{
  margin:0;
  color:var(--aif-muted2);
  font-size:13px;
  font-weight:700;
}

.eitca-topic.eitca-aif .aif-q{
  margin-top:12px;
  padding:14px;
  border:1px solid var(--aif-border);
  border-radius:16px;
  background:var(--aif-soft);
}
.eitca-topic.eitca-aif .aif-qTitle{
  margin:0 0 10px;
  font-weight:900;
  color:var(--aif-text);
}

.eitca-topic.eitca-aif .aif-options{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.eitca-topic.eitca-aif .aif-option{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:12px;
  border-radius:14px;
  border:1px solid var(--aif-border);
  background:#ffffff;
  cursor:pointer;
  transition: border-color .12s ease, box-shadow .12s ease, transform .12s ease;
  position:relative;
}
.eitca-topic.eitca-aif .aif-option:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(15,23,42,.06);
}
.eitca-topic.eitca-aif .aif-option:focus-within{
  box-shadow: 0 0 0 4px rgba(37,99,235,.14);
  border-color: rgba(37,99,235,.40);
}

.eitca-topic.eitca-aif .aif-option input[type="radio"]{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.eitca-topic.eitca-aif .aif-radio{
  width:18px;
  height:18px;
  border-radius:50%;
  border:2px solid var(--aif-border2);
  margin-top:2px;
  flex:0 0 auto;
  position:relative;
}
.eitca-topic.eitca-aif .aif-option input[type="radio"]:checked + .aif-radio{
  border-color: var(--aif-primary);
}
.eitca-topic.eitca-aif .aif-option input[type="radio"]:checked + .aif-radio::after{
  content:"";
  position:absolute;
  inset:4px;
  border-radius:50%;
  background: var(--aif-primary);
}

.eitca-topic.eitca-aif .aif-optionText{
  color:var(--aif-text);
  font-weight:400;
  line-height:1.35;
}

/* Selected state (set by JS for broad browser support) */
.eitca-topic.eitca-aif .aif-option.is-selected{
  background: var(--aif-primarySoft);
  border-color: rgba(37,99,235,.35);
}

.eitca-topic.eitca-aif .aif-feedback{
  margin-top:10px;
  font-size:13px;
  color:var(--aif-muted);
}
.eitca-topic.eitca-aif .aif-q.is-correct{
  border-color:#86efac;
  background:#ecfdf5;
}
.eitca-topic.eitca-aif .aif-q.is-wrong{
  border-color:#fecaca;
  background:#fef2f2;
}
.eitca-topic.eitca-aif .aif-q.is-unanswered{
  border-color:#fde68a;
  background:#fffbeb;
}

.eitca-topic.eitca-aif .aif-score{
  margin-top:12px;
  padding:12px;
  border:1px solid var(--aif-border);
  border-radius:14px;
  background:var(--aif-soft);
  font-weight:900;
  color:var(--aif-text);
}


/* =========================================================
   Shared visual additions (lifecycle explorer, scenario and worksheet patterns)
   ========================================================= */

/* Lifecycle explorer */
.eitca-topic.eitca-aif .aif-lcWrap{
  border:1px solid var(--aif-border);
  border-radius:18px;
  background:var(--aif-surface);
  box-shadow: var(--aif-shadowSoft);
  padding:14px;
  display:grid;
  grid-template-columns: 320px 1fr;
  gap:14px;
  align-items:start;
}
@media (max-width: 980px){
  .eitca-topic.eitca-aif .aif-lcWrap{ grid-template-columns: 1fr; }
}

.eitca-topic.eitca-aif .aif-lcSteps{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.eitca-topic.eitca-aif .aif-lcBtn{
  appearance:none;
  border:1px solid var(--aif-border);
  background: #ffffff;
  border-radius:16px;
  padding:12px;
  display:flex;
  gap:10px;
  align-items:center;
  text-align:left;
  cursor:pointer;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.eitca-topic.eitca-aif .aif-lcBtn:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(15,23,42,.06);
}
.eitca-topic.eitca-aif .aif-lcBtn:focus{ outline:none; }
.eitca-topic.eitca-aif .aif-lcBtn:focus-visible{
  box-shadow: 0 0 0 4px rgba(37,99,235,.18);
  border-color: rgba(37,99,235,.45);
}
.eitca-topic.eitca-aif .aif-lcBtn.is-active{
  background: var(--aif-primarySoft);
  border-color: rgba(37,99,235,.35);
}
.eitca-topic.eitca-aif .aif-lcNum{
  width:34px;
  height:34px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:1000;
  border:1px solid var(--aif-border2);
  background:#ffffff;
  color:var(--aif-text);
  flex:0 0 auto;
}
.eitca-topic.eitca-aif .aif-lcBtn.is-active .aif-lcNum{
  border-color: rgba(37,99,235,.45);
}
.eitca-topic.eitca-aif .aif-lcTxt strong{
  display:block;
  color:var(--aif-text);
  font-weight:1000;
}
.eitca-topic.eitca-aif .aif-lcTxt small{
  display:block;
  margin-top:2px;
  color:var(--aif-muted2);
  font-weight:800;
}

.eitca-topic.eitca-aif .aif-lcPanel{
  border:1px solid var(--aif-border);
  border-radius:16px;
  background: var(--aif-soft);
  padding:14px;
}
.eitca-topic.eitca-aif .aif-lcTitle{ margin:0 0 8px; }

/* Metric scenario */
.eitca-topic.eitca-aif .aif-scnWrap{
  border:1px solid var(--aif-border);
  border-radius:18px;
  background:var(--aif-surface);
  box-shadow: var(--aif-shadowSoft);
  padding:14px;
}
.eitca-topic.eitca-aif .aif-scnTop{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}
.eitca-topic.eitca-aif .aif-scnProg{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:240px;
}
.eitca-topic.eitca-aif .aif-scnProgText{
  font-weight:900;
  color:var(--aif-text);
  text-align:right;
}
.eitca-topic.eitca-aif .aif-scnBar{
  height:10px;
  border-radius:999px;
  background:#e2e8f0;
  overflow:hidden;
}
.eitca-topic.eitca-aif .aif-scnBar > div{
  height:100%;
  width:0%;
  border-radius:999px;
  background: linear-gradient(90deg, #2563eb, #059669);
  transition: width .35s ease;
}

.eitca-topic.eitca-aif .aif-scnCard{
  margin-top:12px;
  border:1px solid var(--aif-border);
  border-radius:16px;
  background:var(--aif-soft);
  padding:14px;
}
.eitca-topic.eitca-aif .aif-scnContext{
  border:1px solid var(--aif-border);
  border-radius:14px;
  background:#ffffff;
  padding:12px;
  color:var(--aif-muted);
}
.eitca-topic.eitca-aif .aif-scnQuestion{
  margin-top:12px;
  font-weight:1000;
  color:var(--aif-text);
}
.eitca-topic.eitca-aif .aif-scnOptions{
  margin-top:10px;
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap:10px;
}

.eitca-topic.eitca-aif .aif-scnPick{
  appearance:none;
  border:1px solid var(--aif-border);
  background:#ffffff;
  border-radius:14px;
  padding:12px;
  text-align:left;
  cursor:pointer;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.eitca-topic.eitca-aif .aif-scnPick:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(15,23,42,.06);
}
.eitca-topic.eitca-aif .aif-scnPick:focus{ outline:none; }
.eitca-topic.eitca-aif .aif-scnPick:focus-visible{
  box-shadow: 0 0 0 4px rgba(37,99,235,.18);
  border-color: rgba(37,99,235,.45);
}
.eitca-topic.eitca-aif .aif-scnPick strong{
  display:block;
  font-weight:1000;
  color:var(--aif-text);
}
.eitca-topic.eitca-aif .aif-scnPick span{
  display:block;
  margin-top:4px;
  color:var(--aif-muted2);
  font-size:12px;
  font-weight:800;
}
.eitca-topic.eitca-aif .aif-scnPick.is-selected{
  background: var(--aif-primarySoft);
  border-color: rgba(37,99,235,.35);
}
.eitca-topic.eitca-aif .aif-scnPick.is-correct{
  background:#ecfdf5;
  border-color:#86efac;
}
.eitca-topic.eitca-aif .aif-scnPick.is-wrong{
  background:#fef2f2;
  border-color:#fecaca;
}

.eitca-topic.eitca-aif .aif-scnFeedback{
  margin-top:12px;
  padding:12px;
  border-radius:14px;
  border:1px solid var(--aif-border);
  background:#ffffff;
  color:var(--aif-muted);
  min-height:44px;
}
.eitca-topic.eitca-aif .aif-scnScore{
  margin-top:10px;
  color:var(--aif-text);
  font-weight:900;
}

/* Worksheet */
.eitca-topic.eitca-aif .aif-wsWrap{
  border:1px solid var(--aif-border);
  border-radius:18px;
  background:var(--aif-surface);
  box-shadow: var(--aif-shadowSoft);
  padding:14px;
  margin-top:12px;
}
.eitca-topic.eitca-aif .aif-wsTop{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.eitca-topic.eitca-aif .aif-wsProg{
  min-width:260px;
}
.eitca-topic.eitca-aif .aif-wsGrid{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:14px;
  align-items:start;
}
@media (max-width: 980px){
  .eitca-topic.eitca-aif .aif-wsGrid{ grid-template-columns: 1fr; }
}
.eitca-topic.eitca-aif .aif-wsPreview{
  border:1px solid var(--aif-border);
  border-radius:16px;
  background:var(--aif-soft);
  padding:14px;
}

.eitca-topic.eitca-aif .aif-riskGrid{
  display:grid;
  grid-template-columns: 1fr;
  gap:10px;
}
.eitca-topic.eitca-aif .aif-chipBtn{
  appearance:none;
  border:1px solid var(--aif-border);
  background:#ffffff;
  color:var(--aif-text);
  padding:8px 10px;
  border-radius:999px;
  font-weight:900;
  cursor:pointer;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.eitca-topic.eitca-aif .aif-chipBtn:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(15,23,42,.06);
}
.eitca-topic.eitca-aif .aif-chipBtn:focus{ outline:none; }
.eitca-topic.eitca-aif .aif-chipBtn:focus-visible{
  box-shadow: 0 0 0 4px rgba(37,99,235,.18);
  border-color: rgba(37,99,235,.45);
}

/* Worksheet split strategy selector (Topic 1.2) */
.eitca-topic.eitca-aif .aif-choiceGrid--3{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap:10px;
}

.eitca-topic.eitca-aif .aif-wsSplitCallout{
  border-color: rgba(37,99,235,.20);
}

/* =========================================================
   Topic 1.3 — NEW UI elements
   NEW #1: Leakage Detective
   NEW #2: Imbalance Simulator (confusion matrix + metrics)
   ========================================================= */

.eitca-topic.eitca-aif .aif-leakWrap{
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 18px;
  padding: 14px;
  background: rgba(248,250,252,.65);
}

.eitca-topic.eitca-aif .aif-leakTop{
  display:flex;
  gap:12px;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
}

.eitca-topic.eitca-aif .aif-leakTabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.eitca-topic.eitca-aif .aif-leakTab{
  appearance:none;
  border: 1px solid rgba(15,23,42,.14);
  background:#fff;
  padding:8px 12px;
  border-radius: 999px;
  font-weight: 800;
  cursor:pointer;
}

.eitca-topic.eitca-aif .aif-leakTab.is-active{
  border-color: rgba(37,99,235,.30);
  box-shadow: 0 0 0 3px rgba(37,99,235,.10);
}

.eitca-topic.eitca-aif .aif-leakPanel{
  margin-top:12px;
  background:#fff;
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 16px;
  padding: 12px;
}

.eitca-topic.eitca-aif .aif-leakScenarioTitle{
  font-size: 16px;
  font-weight: 950;
  margin:0 0 6px;
}

.eitca-topic.eitca-aif .aif-leakScenarioDesc{
  margin:0 0 10px;
  color: var(--aif-muted, #475569);
}

.eitca-topic.eitca-aif .aif-leakList{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.eitca-topic.eitca-aif .aif-leakItem{
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 14px;
  padding: 10px 10px;
  background: rgba(248,250,252,.55);
}

.eitca-topic.eitca-aif .aif-leakItem.is-correct{
  border-color: rgba(5,150,105,.35);
  background: rgba(236,253,245,.75);
}

.eitca-topic.eitca-aif .aif-leakItem.is-wrong{
  border-color: rgba(239,68,68,.35);
  background: rgba(254,242,242,.75);
}

.eitca-topic.eitca-aif .aif-leakLbl{
  display:flex;
  gap:10px;
  align-items:flex-start;
  cursor:pointer;
}

.eitca-topic.eitca-aif .aif-leakLbl input{
  margin-top:3px;
}

.eitca-topic.eitca-aif .aif-leakFeat{
  font-weight: 900;
}

.eitca-topic.eitca-aif .aif-leakMeta{
  color: var(--aif-muted, #475569);
  font-weight: 600;
  margin-left:6px;
}

.eitca-topic.eitca-aif .aif-leakWhy{
  margin-top:8px;
  color: var(--aif-muted, #475569);
  font-size: 13px;
  line-height: 1.4;
  display:none;
}

.eitca-topic.eitca-aif .aif-leakItem.show-why .aif-leakWhy{
  display:block;
}

/* Imbalance simulator */
.eitca-topic.eitca-aif .aif-imbWrap{
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 18px;
  padding: 14px;
  background: rgba(248,250,252,.65);
}

.eitca-topic.eitca-aif .aif-imbControls{
  background:#fff;
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 16px;
  padding: 12px;
}

.eitca-topic.eitca-aif .aif-imbGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:12px;
  margin-top:12px;
}

@media (max-width: 980px){
  .eitca-topic.eitca-aif .aif-imbGrid{ grid-template-columns: 1fr; }
}

.eitca-topic.eitca-aif .aif-matrix{
  display:grid;
  grid-template-columns: 110px 1fr 1fr;
  gap:8px;
  margin-top:10px;
}

.eitca-topic.eitca-aif .aif-matrixHead{
  font-size: 12px;
  font-weight: 900;
  color: var(--aif-muted, #475569);
  display:flex;
  align-items:center;
  justify-content:center;
}

.eitca-topic.eitca-aif .aif-matrixCell{
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 14px;
  padding: 10px 10px;
  background: rgba(248,250,252,.55);
  text-align:center;
}

.eitca-topic.eitca-aif .aif-matrixCell.tp{ background: rgba(236,253,245,.75); }
.eitca-topic.eitca-aif .aif-matrixCell.fp{ background: rgba(255,251,235,.85); }
.eitca-topic.eitca-aif .aif-matrixCell.fn{ background: rgba(254,242,242,.75); }
.eitca-topic.eitca-aif .aif-matrixCell.tn{ background: rgba(239,246,255,.75); }

.eitca-topic.eitca-aif .aif-matrixNum{
  font-size: 20px;
  font-weight: 1000;
  color:#0f172a;
}

.eitca-topic.eitca-aif .aif-matrixLbl{
  font-size: 12px;
  color: var(--aif-muted, #475569);
  font-weight: 800;
}

.eitca-topic.eitca-aif .aif-imbMetrics{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}

.eitca-topic.eitca-aif .aif-metricTile{
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 14px;
  padding: 10px 12px;
  background:#fff;
}

.eitca-topic.eitca-aif .aif-metricVal{
  font-weight: 1000;
  font-size: 18px;
  color:#0f172a;
}

.eitca-topic.eitca-aif .aif-metricLbl{
  font-size: 12px;
  color: var(--aif-muted, #475569);
  font-weight: 800;
  margin-top:2px;
}

/* Data card worksheet check grid */
.eitca-topic.eitca-aif .aif-checkGrid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap:8px;
}

.eitca-topic.eitca-aif .aif-check{
  display:flex;
  gap:10px;
  align-items:flex-start;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(248,250,252,.55);
  padding: 10px 10px;
  border-radius: 14px;
  cursor:pointer;
}

.eitca-topic.eitca-aif .aif-check input{ margin-top:3px; }
.eitca-topic.eitca-aif .aif-check span{ font-weight: 700; color:#0f172a; }


/* =========================================================
   Topic 1.4 — NEW UI elements
   NEW #1: Toy Vision Classifier
   NEW #2: Teachable Machine Lab Log helper styles
   ========================================================= */

.eitca-topic.eitca-aif .aif-toyWrap{
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 18px;
  padding: 14px;
  background: rgba(248,250,252,.65);
}

.eitca-topic.eitca-aif .aif-toyGrid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:12px;
}

@media (max-width: 980px){
  .eitca-topic.eitca-aif .aif-toyGrid{ grid-template-columns: 1fr; }
}

.eitca-topic.eitca-aif .aif-toyLine{
  margin: 8px 0;
  color:#0f172a;
  font-weight: 700;
}

.eitca-topic.eitca-aif .aif-toyKpiGrid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
  margin-top:10px;
}

.eitca-topic.eitca-aif .aif-toyKpi{
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 14px;
  padding: 10px 12px;
  background:#fff;
}

.eitca-topic.eitca-aif .aif-toyKpiVal{
  font-weight: 1000;
  font-size: 18px;
  color:#0f172a;
}

.eitca-topic.eitca-aif .aif-toyKpiLbl{
  font-size: 12px;
  font-weight: 800;
  color: var(--aif-muted, #475569);
  margin-top:2px;
}

.eitca-topic.eitca-aif .aif-toyGallery{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap:10px;
  margin-top:10px;
}

@media (max-width: 980px){
  .eitca-topic.eitca-aif .aif-toyGallery{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.eitca-topic.eitca-aif .aif-toyTile{
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 16px;
  background:#fff;
  overflow:hidden;
}

.eitca-topic.eitca-aif .aif-toyThumb{
  height: 74px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-bottom: 1px solid rgba(15,23,42,.08);
  position:relative;
}

.eitca-topic.eitca-aif .aif-toyThumb.bg-blue{ background: rgba(37,99,235,.10); }
.eitca-topic.eitca-aif .aif-toyThumb.bg-green{ background: rgba(5,150,105,.10); }

.eitca-topic.eitca-aif .aif-toyShape{
  width: 28px;
  height: 28px;
  display:block;
  background: rgba(15,23,42,.85);
}

.eitca-topic.eitca-aif .aif-toyShape.circle{ border-radius: 999px; }
.eitca-topic.eitca-aif .aif-toyShape.triangle{
  width: 0;
  height: 0;
  background: transparent;
  border-left: 16px solid transparent;
  border-right: 16px solid transparent;
  border-bottom: 28px solid rgba(15,23,42,.85);
}

.eitca-topic.eitca-aif .aif-toyBody{
  padding: 10px 10px 12px;
}

.eitca-topic.eitca-aif .aif-toyMeta{
  font-size: 12px;
  color: var(--aif-muted, #475569);
  font-weight: 800;
}

.eitca-topic.eitca-aif .aif-toyPred{
  margin-top:6px;
  font-weight: 900;
  color:#0f172a;
  font-size: 13px;
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:space-between;
}

.eitca-topic.eitca-aif .aif-toyTag{
  font-size: 11px;
  font-weight: 900;
  padding: 4px 8px;
  border-radius: 999px;
  border: 1px solid rgba(15,23,42,.12);
  color: var(--aif-muted, #475569);
  background: rgba(248,250,252,.75);
}

.eitca-topic.eitca-aif .aif-toyTag.bad{
  border-color: rgba(239,68,68,.28);
  background: rgba(254,242,242,.85);
  color: rgba(185,28,28,.95);
}

.eitca-topic.eitca-aif .aif-toyBar{
  height: 8px;
  border-radius: 999px;
  background: rgba(15,23,42,.08);
  overflow:hidden;
  margin-top:8px;
}

.eitca-topic.eitca-aif .aif-toyBar > div{
  height:100%;
  width:0%;
  border-radius: 999px;
  background: rgba(37,99,235,.85);
}

.eitca-topic.eitca-aif .aif-toyStats{
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 16px;
  padding: 10px 12px;
  background: rgba(248,250,252,.55);
}

.eitca-topic.eitca-aif .aif-toyCM{
  display:grid;
  grid-template-columns: 110px 1fr 1fr;
  gap:8px;
  margin-top:10px;
}

.eitca-topic.eitca-aif .aif-toyCMHead{
  font-size: 12px;
  font-weight: 900;
  color: var(--aif-muted, #475569);
  display:flex;
  align-items:center;
  justify-content:center;
}

.eitca-topic.eitca-aif .aif-toyCMCell{
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 14px;
  padding: 10px 10px;
  background:#fff;
  text-align:center;
}

.eitca-topic.eitca-aif .aif-toyCMNum{
  font-weight: 1000;
  font-size: 18px;
  color:#0f172a;
}

.eitca-topic.eitca-aif .aif-toyCMLbl{
  font-size: 11px;
  font-weight: 900;
  color: var(--aif-muted, #475569);
  margin-top:2px;
}


/* =========================================================
   Topic 1.5 — NEW UI elements
   NEW #1: Metrics Explorer (matrix focus/dim)
   NEW #2: Threshold Tuner + histogram legend + metric grid 3-col
   ========================================================= */

/* NEW #1: matrix highlight helpers */
.eitca-topic.eitca-aif .aif-matrixCell.is-dim{
  opacity: .35;
  filter: grayscale(.20);
}
.eitca-topic.eitca-aif .aif-matrixCell.is-focus{
  outline: 3px solid rgba(37,99,235,.18);
  box-shadow: 0 0 0 4px rgba(37,99,235,.08) inset;
}

/* NEW #2: threshold tuner wrap */
.eitca-topic.eitca-aif .aif-thWrap{
  border: 1px solid rgba(15,23,42,.10);
  border-radius: 18px;
  padding: 14px;
  background: rgba(248,250,252,.65);
}

.eitca-topic.eitca-aif .aif-thTop{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

/* two-column area inside threshold tuner */
.eitca-topic.eitca-aif .aif-thGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:12px;
  margin-top:12px;
  align-items:start;
}
@media (max-width: 980px){
  .eitca-topic.eitca-aif .aif-thGrid{ grid-template-columns: 1fr; }
}

/* 3-column metric tiles (falls back to 2/1 on smaller screens) */
.eitca-topic.eitca-aif .aif-metricGrid3{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}
@media (max-width: 980px){
  .eitca-topic.eitca-aif .aif-metricGrid3{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 560px){
  .eitca-topic.eitca-aif .aif-metricGrid3{ grid-template-columns: 1fr; }
}

/* histogram + legend */
.eitca-topic.eitca-aif .aif-thVizHead{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}

.eitca-topic.eitca-aif .aif-thSvg{
  width:100%;
  height:auto;
  display:block;
  overflow:visible;
}

.eitca-topic.eitca-aif .aif-thLegend{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:10px;
}

.eitca-topic.eitca-aif .aif-thKey{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid var(--aif-border);
  background:#fff;
  font-size:12px;
  font-weight:900;
  color: var(--aif-muted2);
}

.eitca-topic.eitca-aif .aif-thSwatch{
  width:14px;
  height:10px;
  border-radius:4px;
  display:inline-block;
  border:1px solid rgba(15,23,42,.10);
}
.eitca-topic.eitca-aif .aif-thSwatch.neg{ background: rgba(37,99,235,.22); border-color: rgba(37,99,235,.25); }
.eitca-topic.eitca-aif .aif-thSwatch.pos{ background: rgba(5,150,105,.22); border-color: rgba(5,150,105,.25); }
.eitca-topic.eitca-aif .aif-thSwatch.line{ background: rgba(15,23,42,.80); border-color: rgba(15,23,42,.18); }


/* =========================================================
   Shared visual extensions and compatibility layer
   Append after the global scoped CSS
   ========================================================= */

.eitca-topic.eitca-aif{
  /* Extra tokens used by later topics */
  --aif-faint:#94a3b8;

  --aif-danger:#ef4444;
  --aif-dangerSoft:#fef2f2;
  --aif-dangerBorder:#fecaca;

  /* Optional: extra “soft surface” for multi-layer panels */
  --aif-soft2:#f1f5f9;

  /* Optional: a consistent “glass” look for LIGHT UI (not grey) */
  --aif-glass: rgba(255,255,255,.78);
  --aif-glassBorder: rgba(15,23,42,.10);
}

/* -----------------------------------------
   Small but important compatibility aliases
   ----------------------------------------- */

/* Some newer topics used .aif-icon; older base uses .aif-ico */
.eitca-topic.eitca-aif .aif-icon,
.eitca-topic.eitca-aif .aif-ico{
  width:34px;
  height:34px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  background: rgba(255,255,255,.7);
  border:1px solid rgba(15,23,42,.06);
}

/* Some newer topics used .aif-ul / .aif-ol instead of .aif-list */
.eitca-topic.eitca-aif .aif-ul,
.eitca-topic.eitca-aif .aif-ol{
  margin:10px 0 0 18px;
  color:var(--aif-muted);
}
.eitca-topic.eitca-aif .aif-ul li,
.eitca-topic.eitca-aif .aif-ol li{
  margin:6px 0;
}

/* Make sure form controls inherit typography (WP themes sometimes don’t) */
.eitca-topic.eitca-aif :where(button,input,select,textarea){
  font: inherit;
}

/* -----------------------------------------
   Quiz option style used in some 6.x topics
   (.aif-opt labels with radios)
   ----------------------------------------- */
.eitca-topic.eitca-aif .aif-opt{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:12px;
  border-radius:14px;
  border:1px solid var(--aif-border);
  background:#ffffff;
  cursor:pointer;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.eitca-topic.eitca-aif .aif-opt:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(15,23,42,.06);
}
.eitca-topic.eitca-aif .aif-opt input[type="radio"]{
  margin-top:3px;
  width:18px;
  height:18px;
  flex:0 0 auto;
  accent-color: var(--aif-primary);
}
.eitca-topic.eitca-aif .aif-opt > span{
  color:var(--aif-text);
  font-weight:800;
  line-height:1.25;
}

/* Quiz actions row used by some newer quizzes */
.eitca-topic.eitca-aif .aif-quizActions{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  margin-top:12px;
}

/* Feedback badges used by some newer quiz engines */
.eitca-topic.eitca-aif .aif-feedback.ok{
  margin-top:10px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid #86efac;
  background: var(--aif-successSoft);
  color: var(--aif-text);
}
.eitca-topic.eitca-aif .aif-feedback.bad{
  margin-top:10px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid var(--aif-dangerBorder);
  background: var(--aif-dangerSoft);
  color: var(--aif-text);
}


/* =========================================================
   EITC/IS/CRA — Lesson 2 interaction layer additions
   ========================================================= */
.eitca-topic.eitca-aif .cra-l2-top{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.eitca-topic.eitca-aif .cra-l2-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:10px 0 12px;
}
.eitca-topic.eitca-aif .cra-l2-tab{
  appearance:none;
  border:1px solid var(--aif-border);
  background:#ffffff;
  color:var(--aif-text);
  border-radius:999px;
  padding:9px 12px;
  font-weight:900;
  cursor:pointer;
  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.eitca-topic.eitca-aif .cra-l2-tab:hover{ transform:translateY(-1px); box-shadow:0 10px 20px rgba(15,23,42,.06); }
.eitca-topic.eitca-aif .cra-l2-tab:focus{ outline:none; }
.eitca-topic.eitca-aif .cra-l2-tab:focus-visible{ box-shadow:0 0 0 4px rgba(37,99,235,.18); border-color:rgba(37,99,235,.45); }
.eitca-topic.eitca-aif .cra-l2-tab.is-active{ background:var(--aif-primarySoft); border-color:rgba(37,99,235,.38); }
.eitca-topic.eitca-aif .cra-l2-labGrid{
  display:grid;
  grid-template-columns: .95fr 1.05fr;
  gap:14px;
  align-items:start;
}
@media (max-width: 980px){ .eitca-topic.eitca-aif .cra-l2-labGrid{ grid-template-columns:1fr; } }
.eitca-topic.eitca-aif .cra-l2-panel{
  border:1px solid var(--aif-border);
  border-radius:16px;
  background:var(--aif-soft);
  padding:14px;
}
.eitca-topic.eitca-aif .cra-sliderGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:12px;
  margin-top:10px;
}
@media (max-width: 760px){ .eitca-topic.eitca-aif .cra-sliderGrid{ grid-template-columns:1fr; } }
.eitca-topic.eitca-aif .cra-slider{
  display:block;
  border:1px solid var(--aif-border);
  background:#ffffff;
  border-radius:16px;
  padding:12px;
}
.eitca-topic.eitca-aif .cra-slider span{
  display:flex;
  justify-content:space-between;
  gap:12px;
  font-weight:900;
  color:var(--aif-text);
  margin-bottom:8px;
}
.eitca-topic.eitca-aif .cra-slider b{ color:var(--aif-muted2); font-weight:900; }
.eitca-topic.eitca-aif .cra-slider input[type="range"]{ width:100%; accent-color:var(--aif-primary); }
.eitca-topic.eitca-aif .cra-sourceList{ margin:10px 0 0 20px; color:var(--aif-muted); }
.eitca-topic.eitca-aif .cra-sourceList li{ margin:7px 0; }
.eitca-topic.eitca-aif .cra-tag{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid var(--aif-border);
  background:#ffffff;
  font-size:12px;
  font-weight:800;
  color:var(--aif-muted2);
}


/* =========================================================
   EITC/IS/CRA — Lesson 3 interaction layer additions
   ========================================================= */
.eitca-topic.eitca-aif .cra-l3-flow{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap:10px;
  margin-bottom:6px;
}
.eitca-topic.eitca-aif .cra-l3-stage{
  appearance:none;
  border:1px solid var(--aif-border);
  background:#ffffff;
  color:var(--aif-text);
  border-radius:16px;
  padding:12px 10px;
  font-weight:900;
  cursor:pointer;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
  min-height:54px;
}
.eitca-topic.eitca-aif .cra-l3-stage:hover{ transform:translateY(-1px); box-shadow:0 10px 20px rgba(15,23,42,.06); }
.eitca-topic.eitca-aif .cra-l3-stage:focus{ outline:none; }
.eitca-topic.eitca-aif .cra-l3-stage:focus-visible{ box-shadow:0 0 0 4px rgba(37,99,235,.18); border-color:rgba(37,99,235,.45); }
.eitca-topic.eitca-aif .cra-l3-stage.is-active{ background:var(--aif-primarySoft); border-color:rgba(37,99,235,.38); }
.eitca-topic.eitca-aif .cra-l3-signalGrid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap:12px;
  margin-top:12px;
}
.eitca-topic.eitca-aif .cra-l3-signal{
  border:1px solid var(--aif-border);
  background:#ffffff;
  border-radius:16px;
  padding:14px;
  box-shadow:var(--aif-shadowSoft);
}
.eitca-topic.eitca-aif .cra-l3-signal h3{ margin-bottom:6px; }
.eitca-topic.eitca-aif .cra-l3-signal p{ margin:0; font-size:14px; color:var(--aif-muted); }
.eitca-topic.eitca-aif .aif-checkGrid{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin-top:10px;
}
.eitca-topic.eitca-aif .aif-check{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px 12px;
  border:1px solid var(--aif-border);
  border-radius:14px;
  background:#ffffff;
  color:var(--aif-muted);
  cursor:pointer;
}
.eitca-topic.eitca-aif .aif-check input{ margin-top:3px; accent-color:var(--aif-primary); }
.eitca-topic.eitca-aif .aif-check span{ line-height:1.35; }
.eitca-topic.eitca-aif .cra-tagRow{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}


/* =========================================================
   EITC/IS/CRA — Lesson 4 interaction layer additions
   ========================================================= */
.eitca-topic.eitca-aif .cra-l4-top{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.eitca-topic.eitca-aif .cra-l4-lab{
  border:1px solid var(--aif-border);
  border-radius:18px;
  background:var(--aif-surface);
  padding:14px;
  box-shadow:var(--aif-shadowSoft);
}
.eitca-topic.eitca-aif .cra-l4-grid{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:14px;
  align-items:start;
}
@media (max-width:980px){ .eitca-topic.eitca-aif .cra-l4-grid{ grid-template-columns:1fr; } }
.eitca-topic.eitca-aif .cra-l4-panel{
  border:1px solid var(--aif-border);
  border-radius:16px;
  background:var(--aif-soft);
  padding:14px;
}
.eitca-topic.eitca-aif .cra-l4-tabs{
  display:flex;
  flex-direction:column;
  gap:9px;
}
.eitca-topic.eitca-aif .cra-l4-tab{
  appearance:none;
  border:1px solid var(--aif-border);
  background:#ffffff;
  color:var(--aif-text);
  border-radius:14px;
  padding:11px 12px;
  text-align:left;
  font-weight:900;
  cursor:pointer;
  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease, background .12s ease;
}
.eitca-topic.eitca-aif .cra-l4-tab:hover{ transform:translateY(-1px); box-shadow:0 10px 20px rgba(15,23,42,.06); }
.eitca-topic.eitca-aif .cra-l4-tab:focus{ outline:none; }
.eitca-topic.eitca-aif .cra-l4-tab:focus-visible{ box-shadow:0 0 0 4px rgba(37,99,235,.18); border-color:rgba(37,99,235,.45); }
.eitca-topic.eitca-aif .cra-l4-tab.is-active{ background:var(--aif-primarySoft); border-color:rgba(37,99,235,.35); }
.eitca-topic.eitca-aif .cra-l4-kpiGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
@media (max-width:720px){ .eitca-topic.eitca-aif .cra-l4-kpiGrid{ grid-template-columns:1fr; } }
.eitca-topic.eitca-aif .cra-l4-kpi{
  border:1px solid var(--aif-border);
  border-radius:14px;
  background:#ffffff;
  padding:12px;
}
.eitca-topic.eitca-aif .cra-l4-kpi span{
  display:block;
  font-size:12px;
  color:var(--aif-muted2);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:6px;
}
.eitca-topic.eitca-aif .cra-l4-kpi strong{ display:block; line-height:1.35; }
.eitca-topic.eitca-aif .cra-l4-kpi ul{
  margin:0 0 0 18px;
  padding:0;
  color:var(--aif-muted);
  font-size:13px;
}
.eitca-topic.eitca-aif .cra-l4-formGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
@media (max-width:720px){ .eitca-topic.eitca-aif .cra-l4-formGrid{ grid-template-columns:1fr; } }
.eitca-topic.eitca-aif .cra-l4-field{
  display:flex;
  flex-direction:column;
  gap:6px;
  color:var(--aif-text);
  font-weight:900;
  font-size:13px;
}
.eitca-topic.eitca-aif .cra-l4-select{
  width:100%;
  border:1px solid var(--aif-border2);
  border-radius:12px;
  background:#ffffff;
  color:var(--aif-text);
  padding:10px 12px;
  font:inherit;
  font-weight:700;
}
.eitca-topic.eitca-aif .cra-l4-checkGrid{
  display:flex;
  flex-direction:column;
  gap:9px;
}
.eitca-topic.eitca-aif .cra-l4-checkGrid label{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px;
  border:1px solid var(--aif-border);
  border-radius:12px;
  background:#ffffff;
  color:var(--aif-muted);
  line-height:1.35;
}
.eitca-topic.eitca-aif .cra-l4-checkGrid input{ margin-top:2px; accent-color:var(--aif-primary); }
.eitca-topic.eitca-aif .cra-l4-list{
  margin:10px 0 0 18px;
  color:var(--aif-muted);
}
.eitca-topic.eitca-aif .cra-l4-list li{ margin:6px 0; }
.eitca-topic.eitca-aif .cra-l4-sliderGrid{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.eitca-topic.eitca-aif .cra-l4-sliderGrid label{
  display:grid;
  grid-template-columns:180px 1fr 88px;
  gap:10px;
  align-items:center;
  color:var(--aif-text);
  font-weight:900;
}
@media (max-width:720px){ .eitca-topic.eitca-aif .cra-l4-sliderGrid label{ grid-template-columns:1fr; } }
.eitca-topic.eitca-aif .cra-l4-sliderGrid input[type="range"]{ width:100%; accent-color:var(--aif-primary); }
.eitca-topic.eitca-aif .cra-l4-sliderGrid span{
  font-size:12px;
  font-weight:900;
  color:var(--aif-muted2);
  text-align:right;
}
@media (max-width:720px){ .eitca-topic.eitca-aif .cra-l4-sliderGrid span{ text-align:left; } }
.eitca-topic.eitca-aif code{
  padding:1px 5px;
  border-radius:6px;
  background:#eef2ff;
  color:#1e293b;
  font-size:.92em;
}

/* =========================================================
   EITC/IS/CRA — Lesson 5 interaction layer additions
   Security operations, monitoring and incident response
   ========================================================= */
.eitca-topic.eitca-aif .cra-l5-top{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:14px;
}
.eitca-topic.eitca-aif .cra-l5-lab{
  border:1px solid var(--aif-border);
  border-radius:20px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  padding:16px;
  box-shadow:var(--aif-shadowSoft);
}
.eitca-topic.eitca-aif .cra-l5-grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:14px;
  align-items:start;
}
.eitca-topic.eitca-aif .cra-l5-subgrid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:14px;
  margin-top:14px;
}
@media(max-width:900px){
  .eitca-topic.eitca-aif .cra-l5-grid,
  .eitca-topic.eitca-aif .cra-l5-subgrid{grid-template-columns:1fr;}
}
.eitca-topic.eitca-aif .cra-l5-panel{
  border:1px solid var(--aif-border);
  border-radius:16px;
  background:#ffffff;
  padding:14px;
  box-shadow:0 5px 16px rgba(15,23,42,.04);
}
.eitca-topic.eitca-aif .cra-l5-tabs{
  display:flex;
  flex-direction:column;
  gap:9px;
}
.eitca-topic.eitca-aif .cra-l5-tabs-inline{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
@media(max-width:620px){.eitca-topic.eitca-aif .cra-l5-tabs-inline{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l5-tab{
  appearance:none;
  border:1px solid var(--aif-border);
  background:#ffffff;
  color:var(--aif-text);
  border-radius:14px;
  padding:11px 12px;
  text-align:left;
  font:inherit;
  font-weight:850;
  line-height:1.3;
  cursor:pointer;
  transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease,background .12s ease;
}
.eitca-topic.eitca-aif .cra-l5-tab:hover{transform:translateY(-1px);box-shadow:0 9px 18px rgba(15,23,42,.06);}
.eitca-topic.eitca-aif .cra-l5-tab:focus{outline:none;}
.eitca-topic.eitca-aif .cra-l5-tab:focus-visible{box-shadow:0 0 0 4px rgba(37,99,235,.17);border-color:rgba(37,99,235,.5);}
.eitca-topic.eitca-aif .cra-l5-tab.is-active{background:var(--aif-primarySoft);border-color:rgba(37,99,235,.45);color:#1d4ed8;}
.eitca-topic.eitca-aif .cra-l5-kpiGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
@media(max-width:680px){.eitca-topic.eitca-aif .cra-l5-kpiGrid{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l5-kpi{
  border:1px solid var(--aif-border);
  background:var(--aif-soft);
  border-radius:14px;
  padding:12px;
}
.eitca-topic.eitca-aif .cra-l5-kpi span{
  display:block;
  margin-bottom:6px;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--aif-muted2);
}
.eitca-topic.eitca-aif .cra-l5-kpi strong{display:block;font-size:13px;line-height:1.4;}
.eitca-topic.eitca-aif .cra-l5-checkGrid{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.eitca-topic.eitca-aif .cra-l5-checkGrid label{
  display:flex;
  align-items:flex-start;
  gap:10px;
  border:1px solid var(--aif-border);
  border-radius:13px;
  background:#ffffff;
  padding:10px 11px;
  color:var(--aif-muted);
  font-weight:400;
  line-height:1.36;
  cursor:pointer;
}
.eitca-topic.eitca-aif .cra-l5-checkGrid input{margin-top:3px;accent-color:var(--aif-primary);}
.eitca-topic.eitca-aif .cra-l5-checkGrid b{color:var(--aif-text);}
.eitca-topic.eitca-aif .cra-l5-checkGrid small{display:block;color:var(--aif-muted2);font-size:11px;margin-top:2px;}
.eitca-topic.eitca-aif .cra-l5-range{
  display:block;
  border:1px solid var(--aif-border);
  border-radius:14px;
  padding:12px;
  background:var(--aif-soft);
}
.eitca-topic.eitca-aif .cra-l5-range>span{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-bottom:9px;
  font-size:13px;
  font-weight:900;
  color:var(--aif-text);
}
.eitca-topic.eitca-aif .cra-l5-range input[type=range]{width:100%;accent-color:var(--aif-primary);}
.eitca-topic.eitca-aif .cra-l5-meterRow{
  display:grid;
  grid-template-columns:145px minmax(0,1fr) 44px;
  gap:10px;
  align-items:center;
  margin-top:12px;
  font-size:12px;
  color:var(--aif-muted);
}
.eitca-topic.eitca-aif .cra-l5-meterRow>span{font-weight:800;}
.eitca-topic.eitca-aif .cra-l5-meterRow>b{text-align:right;font-size:12px;}
.eitca-topic.eitca-aif .cra-l5-meter{
  height:11px;
  border-radius:999px;
  overflow:hidden;
  background:#e2e8f0;
}
.eitca-topic.eitca-aif .cra-l5-meter>i{
  display:block;
  width:0;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#2563eb,#0d9488);
  transition:width .25s ease;
}
@media(max-width:560px){
  .eitca-topic.eitca-aif .cra-l5-meterRow{grid-template-columns:1fr 42px;}
  .eitca-topic.eitca-aif .cra-l5-meterRow>span{grid-column:1/-1;}
}
.eitca-topic.eitca-aif .cra-l5-verdict{
  margin-top:12px;
  border:1px solid #bfdbfe;
  background:#eff6ff;
  color:#1e3a8a;
  border-radius:14px;
  padding:11px 12px;
  font-size:13px;
  line-height:1.45;
}
.eitca-topic.eitca-aif .cra-l5-verdict.is-good{border-color:#a7f3d0;background:#ecfdf5;color:#065f46;}
.eitca-topic.eitca-aif .cra-l5-verdict.is-warn{border-color:#fde68a;background:#fffbeb;color:#92400e;}
.eitca-topic.eitca-aif .cra-l5-verdict.is-bad{border-color:#fecaca;background:#fef2f2;color:#991b1b;}
.eitca-topic.eitca-aif .cra-l5-tagRow{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:10px;
}
.eitca-topic.eitca-aif .cra-l5-tagRow span{
  display:inline-flex;
  align-items:center;
  border:1px solid #bfdbfe;
  background:#eff6ff;
  color:#1d4ed8;
  border-radius:999px;
  padding:5px 8px;
  font-size:11px;
  font-weight:850;
}

.eitca-topic.eitca-aif .cra-l5-chain{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin:14px 0;
}
.eitca-topic.eitca-aif .cra-l5-chain>div{
  position:relative;
  border:1px solid var(--aif-border);
  border-radius:14px;
  background:#ffffff;
  padding:11px;
  min-height:112px;
}
.eitca-topic.eitca-aif .cra-l5-chain>div:not(:last-child):after{
  content:"›";
  position:absolute;
  right:-9px;
  top:39px;
  width:18px;
  height:26px;
  display:grid;
  place-items:center;
  color:#64748b;
  font-weight:900;
  background:#f8fafc;
  z-index:2;
}
.eitca-topic.eitca-aif .cra-l5-chain b{display:block;margin-bottom:5px;color:var(--aif-text);}
.eitca-topic.eitca-aif .cra-l5-chain span{display:block;font-size:12px;line-height:1.4;color:var(--aif-muted);}
@media(max-width:880px){
  .eitca-topic.eitca-aif .cra-l5-chain{grid-template-columns:1fr;}
  .eitca-topic.eitca-aif .cra-l5-chain>div{min-height:0;}
  .eitca-topic.eitca-aif .cra-l5-chain>div:after{display:none!important;}
}
.eitca-topic.eitca-aif .cra-l5-lensGrid,
.eitca-topic.eitca-aif .cra-l5-audienceGrid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin:13px 0;
}
.eitca-topic.eitca-aif .cra-l5-lensGrid>div,
.eitca-topic.eitca-aif .cra-l5-audienceGrid>div{
  border:1px solid var(--aif-border);
  background:#ffffff;
  border-radius:14px;
  padding:12px;
}
.eitca-topic.eitca-aif .cra-l5-lensGrid b,
.eitca-topic.eitca-aif .cra-l5-audienceGrid b{display:block;margin-bottom:5px;}
.eitca-topic.eitca-aif .cra-l5-lensGrid span,
.eitca-topic.eitca-aif .cra-l5-audienceGrid span{display:block;color:var(--aif-muted);font-size:13px;line-height:1.4;}

.eitca-topic.eitca-aif .cra-l5-priority-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);
  gap:14px;
  align-items:start;
}
@media(max-width:900px){.eitca-topic.eitca-aif .cra-l5-priority-layout{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l5-queue{display:flex;flex-direction:column;gap:9px;}
.eitca-topic.eitca-aif .cra-l5-priority-card{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 36px;
  gap:10px;
  align-items:start;
  border:1px solid var(--aif-border);
  border-radius:15px;
  background:#ffffff;
  padding:11px;
  box-shadow:0 4px 12px rgba(15,23,42,.04);
}
.eitca-topic.eitca-aif .cra-l5-priority-card.is-dragging{opacity:.55;border-style:dashed;}
.eitca-topic.eitca-aif .cra-l5-priority-card.is-correct{border-color:#86efac;background:#f0fdf4;}
.eitca-topic.eitca-aif .cra-l5-priority-card.is-wrong{border-color:#fecaca;background:#fff7f7;}
.eitca-topic.eitca-aif .cra-l5-priority-card h3{font-size:15px;margin-bottom:4px;}
.eitca-topic.eitca-aif .cra-l5-priority-card p{font-size:12px;line-height:1.4;margin:0;}
.eitca-topic.eitca-aif .cra-l5-priority-rank{
  width:36px;height:36px;border-radius:12px;background:#e0e7ff;color:#3730a3;
  display:grid;place-items:center;font-weight:900;
}
.eitca-topic.eitca-aif .cra-l5-move{display:flex;flex-direction:column;gap:5px;}
.eitca-topic.eitca-aif .cra-l5-move button{
  appearance:none;width:30px;height:29px;border-radius:9px;border:1px solid var(--aif-border);
  background:#f8fafc;color:var(--aif-text);font-weight:900;cursor:pointer;
}
.eitca-topic.eitca-aif .cra-l5-move button:hover{background:#eff6ff;border-color:#bfdbfe;}
.eitca-topic.eitca-aif .cra-l5-numberList{margin:10px 0 0 20px;color:var(--aif-muted);}
.eitca-topic.eitca-aif .cra-l5-numberList li{margin:8px 0;}

.eitca-topic.eitca-aif .cra-l5-ir-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);
  gap:14px;
  align-items:start;
}
@media(max-width:920px){.eitca-topic.eitca-aif .cra-l5-ir-layout{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l5-stageLine{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
  margin-bottom:10px;
}
.eitca-topic.eitca-aif .cra-l5-stageLine span{
  border:1px solid var(--aif-border);
  background:#ffffff;
  border-radius:999px;
  padding:7px 9px;
  text-align:center;
  font-size:11px;
  font-weight:850;
  color:var(--aif-muted2);
}
.eitca-topic.eitca-aif .cra-l5-stageLine span.is-active{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8;}
.eitca-topic.eitca-aif .cra-l5-stageLine span.is-complete{background:#ecfdf5;border-color:#a7f3d0;color:#047857;}
@media(max-width:560px){.eitca-topic.eitca-aif .cra-l5-stageLine{grid-template-columns:repeat(2,minmax(0,1fr));}}
.eitca-topic.eitca-aif .cra-l5-ir-card{
  border:1px solid var(--aif-border);
  border-radius:17px;
  background:#ffffff;
  padding:15px;
  min-height:360px;
}
.eitca-topic.eitca-aif .cra-l5-choiceList{display:flex;flex-direction:column;gap:9px;margin-top:13px;}
.eitca-topic.eitca-aif .cra-l5-choice{
  appearance:none;
  width:100%;
  border:1px solid var(--aif-border);
  border-radius:14px;
  background:#ffffff;
  padding:11px 12px;
  text-align:left;
  color:var(--aif-text);
  font:inherit;
  cursor:pointer;
  transition:transform .12s ease,border-color .12s ease,background .12s ease;
}
.eitca-topic.eitca-aif .cra-l5-choice:hover{transform:translateY(-1px);border-color:#93c5fd;background:#f8fbff;}
.eitca-topic.eitca-aif .cra-l5-choice:focus{outline:none;}
.eitca-topic.eitca-aif .cra-l5-choice:focus-visible{box-shadow:0 0 0 4px rgba(37,99,235,.16);}
.eitca-topic.eitca-aif .cra-l5-choice b{display:block;margin-bottom:4px;}
.eitca-topic.eitca-aif .cra-l5-choice span{display:block;color:var(--aif-muted);font-size:12px;line-height:1.4;}
.eitca-topic.eitca-aif .cra-l5-choice.is-selected{border-color:#60a5fa;background:#eff6ff;}
.eitca-topic.eitca-aif .cra-l5-timeline{
  border-left:3px solid #bfdbfe;
  margin:15px 0 0 5px;
  padding-left:12px;
  max-height:270px;
  overflow:auto;
}
.eitca-topic.eitca-aif .cra-l5-timeline p{font-size:12px;margin:0 0 10px;line-height:1.4;}

.eitca-topic.eitca-aif .cra-l5-formGrid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
@media(max-width:760px){.eitca-topic.eitca-aif .cra-l5-formGrid{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l5-field{
  display:flex;
  flex-direction:column;
  gap:6px;
  color:var(--aif-text);
  font-weight:850;
  font-size:12px;
}
.eitca-topic.eitca-aif .cra-l5-select{
  width:100%;
  border:1px solid var(--aif-border2);
  border-radius:12px;
  background:#ffffff;
  color:var(--aif-text);
  padding:10px 11px;
  font:inherit;
  font-weight:650;
}
.eitca-topic.eitca-aif .cra-l5-select:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 4px rgba(37,99,235,.13);}
.eitca-topic.eitca-aif .cra-l5-forensic-output{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
@media(max-width:860px){.eitca-topic.eitca-aif .cra-l5-forensic-output{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l5-forensic-output ol{margin:8px 0 0 20px;color:var(--aif-muted);font-size:13px;}
.eitca-topic.eitca-aif .cra-l5-forensic-output li{margin:7px 0;}

.eitca-topic.eitca-aif .cra-l5-brief{
  min-height:250px;
  border:1px dashed #93c5fd;
  border-radius:14px;
  background:#f8fbff;
  padding:13px;
  margin-bottom:12px;
  color:var(--aif-muted);
  font-size:13px;
  line-height:1.55;
  white-space:pre-line;
}
.eitca-topic.eitca-aif .cra-l5-brief b{color:var(--aif-text);}
/* ==========================================================
   EITC/IS/CRA — Lesson 6 governance interaction layer
   ========================================================== */
.eitca-topic.eitca-aif .cra-l6-chain{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin:15px 0;
}
.eitca-topic.eitca-aif .cra-l6-chain>div{
  position:relative;
  border:1px solid var(--aif-border);
  border-radius:14px;
  background:#fff;
  padding:11px;
  min-height:108px;
}
.eitca-topic.eitca-aif .cra-l6-chain>div:not(:last-child):after{
  content:"›";
  position:absolute;
  right:-9px;
  top:38px;
  width:18px;
  height:26px;
  display:grid;
  place-items:center;
  color:#64748b;
  font-weight:900;
  background:#f8fafc;
  z-index:2;
}
.eitca-topic.eitca-aif .cra-l6-chain b{display:block;margin-bottom:5px;color:var(--aif-text);}
.eitca-topic.eitca-aif .cra-l6-chain span{display:block;font-size:12px;line-height:1.42;color:var(--aif-muted);}
@media(max-width:880px){
  .eitca-topic.eitca-aif .cra-l6-chain{grid-template-columns:1fr;}
  .eitca-topic.eitca-aif .cra-l6-chain>div{min-height:0;}
  .eitca-topic.eitca-aif .cra-l6-chain>div:after{display:none!important;}
}
.eitca-topic.eitca-aif .cra-l6-lensGrid,
.eitca-topic.eitca-aif .cra-l6-roleGrid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin:14px 0;
}
.eitca-topic.eitca-aif .cra-l6-lensGrid>div,
.eitca-topic.eitca-aif .cra-l6-roleGrid>div{
  border:1px solid var(--aif-border);
  background:#fff;
  border-radius:14px;
  padding:12px;
}
.eitca-topic.eitca-aif .cra-l6-lensGrid b,
.eitca-topic.eitca-aif .cra-l6-roleGrid b{display:block;margin-bottom:5px;}
.eitca-topic.eitca-aif .cra-l6-lensGrid span,
.eitca-topic.eitca-aif .cra-l6-roleGrid span{display:block;color:var(--aif-muted);font-size:13px;line-height:1.42;}
.eitca-topic.eitca-aif .cra-l6-lab{
  padding:17px;
  background:linear-gradient(145deg,#fff,#f8fbff);
}
.eitca-topic.eitca-aif .cra-l6-labHead{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:14px;
}
.eitca-topic.eitca-aif .cra-l6-labHead h2{margin-bottom:6px;}
@media(max-width:640px){.eitca-topic.eitca-aif .cra-l6-labHead{flex-direction:column;}}
.eitca-topic.eitca-aif .cra-l6-layout,
.eitca-topic.eitca-aif .cra-l6-portfolioLayout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);
  gap:14px;
  align-items:start;
}
@media(max-width:920px){
  .eitca-topic.eitca-aif .cra-l6-layout,
  .eitca-topic.eitca-aif .cra-l6-portfolioLayout{grid-template-columns:1fr;}
}
.eitca-topic.eitca-aif .cra-l6-panel,
.eitca-topic.eitca-aif .cra-l6-allocationPanel{
  border:1px solid var(--aif-border);
  border-radius:16px;
  background:#fff;
  padding:14px;
}
.eitca-topic.eitca-aif .cra-l6-panel h3,
.eitca-topic.eitca-aif .cra-l6-allocationPanel h3{margin-bottom:9px;}
.eitca-topic.eitca-aif .cra-l6-select,
.eitca-topic.eitca-aif .cra-l6-input{
  width:100%;
  border:1px solid var(--aif-border2);
  border-radius:12px;
  background:#fff;
  color:var(--aif-text);
  padding:10px 11px;
  font:inherit;
}
.eitca-topic.eitca-aif .cra-l6-select:focus,
.eitca-topic.eitca-aif .cra-l6-input:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 4px rgba(37,99,235,.13);}
.eitca-topic.eitca-aif .cra-l6-field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:850;color:var(--aif-text);margin-bottom:11px;}
.eitca-topic.eitca-aif .cra-l6-meterRow{
  display:grid;
  grid-template-columns:145px minmax(0,1fr) 44px;
  gap:10px;
  align-items:center;
  margin-top:12px;
  font-size:12px;
  color:var(--aif-muted);
}
.eitca-topic.eitca-aif .cra-l6-meterRow>span{font-weight:800;}
.eitca-topic.eitca-aif .cra-l6-meterRow>b{text-align:right;font-size:12px;}
.eitca-topic.eitca-aif .cra-l6-meter{
  height:11px;
  border-radius:999px;
  overflow:hidden;
  background:#e2e8f0;
}
.eitca-topic.eitca-aif .cra-l6-meter>i{
  display:block;
  width:0;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#2563eb,#0d9488);
  transition:width .25s ease;
}
@media(max-width:560px){
  .eitca-topic.eitca-aif .cra-l6-meterRow{grid-template-columns:1fr 42px;}
  .eitca-topic.eitca-aif .cra-l6-meterRow>span{grid-column:1/-1;}
}
.eitca-topic.eitca-aif .cra-l6-verdict{
  margin-top:13px;
  border:1px solid #bfdbfe;
  background:#eff6ff;
  color:#1e3a8a;
  border-radius:14px;
  padding:11px 12px;
  font-size:13px;
  line-height:1.48;
}
.eitca-topic.eitca-aif .cra-l6-verdict.is-good{border-color:#a7f3d0;background:#ecfdf5;color:#065f46;}
.eitca-topic.eitca-aif .cra-l6-verdict.is-warn{border-color:#fde68a;background:#fffbeb;color:#92400e;}
.eitca-topic.eitca-aif .cra-l6-verdict.is-bad{border-color:#fecaca;background:#fef2f2;color:#991b1b;}
.eitca-topic.eitca-aif .cra-l6-tagRow{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;}
.eitca-topic.eitca-aif .cra-l6-tagRow span{
  display:inline-flex;
  align-items:center;
  border:1px solid #bfdbfe;
  background:#eff6ff;
  color:#1d4ed8;
  border-radius:999px;
  padding:5px 8px;
  font-size:11px;
  font-weight:850;
}
.eitca-topic.eitca-aif .cra-l6-reviewBlock{margin-top:13px;border-top:1px solid var(--aif-border);padding-top:11px;}
.eitca-topic.eitca-aif .cra-l6-reviewBlock>b{display:block;margin-bottom:6px;}
.eitca-topic.eitca-aif .cra-l6-scenarioTabs{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 11px;}
.eitca-topic.eitca-aif .cra-l6-scenarioTabs .aif-btn.is-active{background:#1d4ed8;border-color:#1d4ed8;color:#fff;}

/* Assurance laboratory */
.eitca-topic.eitca-aif .cra-l6-assuranceCards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px;}
@media(max-width:620px){.eitca-topic.eitca-aif .cra-l6-assuranceCards{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l6-checkCard{display:flex;gap:9px;align-items:flex-start;border:1px solid var(--aif-border);border-radius:13px;padding:10px;background:#fff;font-size:12px;line-height:1.4;cursor:pointer;}
.eitca-topic.eitca-aif .cra-l6-checkCard input{margin-top:3px;accent-color:#2563eb;}
.eitca-topic.eitca-aif .cra-l6-checkCard span{font-weight:650;color:var(--aif-text);}

/* Human-centred workflow laboratory */
.eitca-topic.eitca-aif .cra-l6-workflowSteps{display:flex;flex-direction:column;gap:10px;}
.eitca-topic.eitca-aif .cra-l6-workflowStep{border:1px solid var(--aif-border);border-radius:14px;background:#fff;padding:12px;}
.eitca-topic.eitca-aif .cra-l6-workflowStep h3{font-size:14px;margin-bottom:8px;}
.eitca-topic.eitca-aif .cra-l6-choiceRow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;}
@media(max-width:700px){.eitca-topic.eitca-aif .cra-l6-choiceRow{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l6-choice{
  appearance:none;border:1px solid var(--aif-border);border-radius:11px;background:#f8fafc;padding:9px 10px;text-align:left;color:var(--aif-text);font:inherit;font-size:12px;line-height:1.35;cursor:pointer;
}
.eitca-topic.eitca-aif .cra-l6-choice:hover{border-color:#93c5fd;background:#eff6ff;}
.eitca-topic.eitca-aif .cra-l6-choice.is-active{border-color:#3b82f6;background:#dbeafe;color:#1e3a8a;box-shadow:0 0 0 2px rgba(59,130,246,.12);}

/* Supplier cockpit */
.eitca-topic.eitca-aif .cra-l6-factorGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
@media(max-width:650px){.eitca-topic.eitca-aif .cra-l6-factorGrid{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l6-factor{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--aif-border);border-radius:13px;padding:10px;background:#fff;font-size:12px;line-height:1.42;cursor:pointer;}
.eitca-topic.eitca-aif .cra-l6-factor input{margin-top:3px;accent-color:#2563eb;}
.eitca-topic.eitca-aif .cra-l6-factor b{display:block;margin-bottom:3px;}
.eitca-topic.eitca-aif .cra-l6-factor small{display:block;color:var(--aif-muted);font-size:11px;}
.eitca-topic.eitca-aif .cra-l6-actionList{margin:10px 0 0 20px;color:var(--aif-muted);font-size:13px;}
.eitca-topic.eitca-aif .cra-l6-actionList li{margin:7px 0;}

/* Professional boundary navigator */
.eitca-topic.eitca-aif .cra-l6-boundaryCard{border:1px solid var(--aif-border);border-radius:16px;background:#fff;padding:14px;min-height:390px;}
.eitca-topic.eitca-aif .cra-l6-boundaryKicker{text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:900;color:#2563eb;margin-bottom:5px;}
.eitca-topic.eitca-aif .cra-l6-decisionList{display:flex;flex-direction:column;gap:8px;margin-top:13px;}
.eitca-topic.eitca-aif .cra-l6-decision{
  appearance:none;width:100%;border:1px solid var(--aif-border);border-radius:13px;background:#fff;padding:10px 11px;text-align:left;color:var(--aif-text);font:inherit;font-size:12px;line-height:1.42;cursor:pointer;
}
.eitca-topic.eitca-aif .cra-l6-decision:hover{border-color:#93c5fd;background:#f8fbff;}
.eitca-topic.eitca-aif .cra-l6-decision.is-chosen{border-color:#60a5fa;background:#eff6ff;}
.eitca-topic.eitca-aif .cra-l6-progress{display:grid;grid-template-columns:110px minmax(0,1fr) 36px;gap:8px;align-items:center;margin-top:13px;font-size:11px;color:var(--aif-muted);}

/* Programme portfolio and measurement */
.eitca-topic.eitca-aif .cra-l6-roadmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:15px 0;}
.eitca-topic.eitca-aif .cra-l6-roadmap>div{border:1px solid var(--aif-border);border-radius:15px;background:#fff;padding:13px;}
.eitca-topic.eitca-aif .cra-l6-roadmap span{display:inline-flex;border-radius:999px;background:#dbeafe;color:#1d4ed8;padding:4px 8px;font-size:10px;font-weight:900;margin-bottom:8px;}
.eitca-topic.eitca-aif .cra-l6-roadmap b{display:block;margin-bottom:5px;}
.eitca-topic.eitca-aif .cra-l6-roadmap p{font-size:12px;line-height:1.42;margin:0;color:var(--aif-muted);}
@media(max-width:760px){.eitca-topic.eitca-aif .cra-l6-roadmap{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l6-metricStack{display:flex;flex-direction:column;gap:7px;margin:15px auto;max-width:700px;}
.eitca-topic.eitca-aif .cra-l6-metricStack>div{border:1px solid var(--aif-border);background:#fff;border-radius:13px;padding:10px 13px;margin-inline:auto;}
.eitca-topic.eitca-aif .cra-l6-metricStack>div:nth-child(1){width:64%;background:#ecfdf5;border-color:#a7f3d0;}
.eitca-topic.eitca-aif .cra-l6-metricStack>div:nth-child(2){width:76%;}
.eitca-topic.eitca-aif .cra-l6-metricStack>div:nth-child(3){width:88%;}
.eitca-topic.eitca-aif .cra-l6-metricStack>div:nth-child(4){width:100%;}
.eitca-topic.eitca-aif .cra-l6-metricStack b{display:block;margin-bottom:3px;}
.eitca-topic.eitca-aif .cra-l6-metricStack span{display:block;font-size:12px;line-height:1.4;color:var(--aif-muted);}
@media(max-width:620px){.eitca-topic.eitca-aif .cra-l6-metricStack>div{width:100%!important;}}
.eitca-topic.eitca-aif .cra-l6-portfolioContext{border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;border-radius:13px;padding:10px 12px;font-size:12px;line-height:1.45;margin-bottom:12px;}
.eitca-topic.eitca-aif .cra-l6-budgetLine{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:13px;margin-bottom:7px;}
.eitca-topic.eitca-aif .cra-l6-budgetTrack{height:12px;border-radius:999px;overflow:hidden;background:#e2e8f0;margin-bottom:14px;}
.eitca-topic.eitca-aif .cra-l6-budgetTrack>i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#2563eb,#0d9488);transition:width .2s ease,background .2s ease;}
.eitca-topic.eitca-aif .cra-l6-budgetTrack>i.is-over{background:linear-gradient(90deg,#f59e0b,#dc2626);}
.eitca-topic.eitca-aif .cra-l6-sliderRow{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,.7fr) 34px;gap:10px;align-items:center;border-top:1px solid #edf2f7;padding:10px 0;}
.eitca-topic.eitca-aif .cra-l6-sliderRow:first-of-type{border-top:0;}
.eitca-topic.eitca-aif .cra-l6-sliderRow>span b{display:block;font-size:12px;margin-bottom:2px;}
.eitca-topic.eitca-aif .cra-l6-sliderRow>span small{display:block;color:var(--aif-muted);font-size:10px;line-height:1.35;}
.eitca-topic.eitca-aif .cra-l6-sliderRow input[type="range"]{width:100%;accent-color:#2563eb;}
.eitca-topic.eitca-aif .cra-l6-sliderRow output{text-align:right;font-weight:900;font-size:12px;color:#1d4ed8;}
@media(max-width:650px){
  .eitca-topic.eitca-aif .cra-l6-sliderRow{grid-template-columns:minmax(0,1fr) 34px;}
  .eitca-topic.eitca-aif .cra-l6-sliderRow input[type="range"]{grid-column:1/-1;grid-row:2;}
}

/* Lesson 6 markup-aligned components */
.eitca-topic.eitca-aif .cra-l6-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:14px;
}
.eitca-topic.eitca-aif .cra-l6-top h2{margin-bottom:6px;}
@media(max-width:640px){.eitca-topic.eitca-aif .cra-l6-top{flex-direction:column;}}
.eitca-topic.eitca-aif .cra-l6-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:10px 0 12px;
}
.eitca-topic.eitca-aif .cra-l6-tab{
  appearance:none;
  border:1px solid var(--aif-border);
  border-radius:999px;
  background:#fff;
  color:var(--aif-text);
  padding:8px 10px;
  font:inherit;
  font-size:11px;
  font-weight:850;
  line-height:1.2;
  cursor:pointer;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.eitca-topic.eitca-aif .cra-l6-tab:hover{transform:translateY(-1px);border-color:#93c5fd;background:#f8fbff;}
.eitca-topic.eitca-aif .cra-l6-tab:focus{outline:none;}
.eitca-topic.eitca-aif .cra-l6-tab:focus-visible{box-shadow:0 0 0 4px rgba(37,99,235,.15);}
.eitca-topic.eitca-aif .cra-l6-tab.is-active{background:#1d4ed8;border-color:#1d4ed8;color:#fff;}
.eitca-topic.eitca-aif .cra-l6-context{
  border:1px solid #bfdbfe;
  border-radius:14px;
  background:#eff6ff;
  color:#1e3a8a;
  padding:12px;
  margin:10px 0;
}
.eitca-topic.eitca-aif .cra-l6-context>b,
.eitca-topic.eitca-aif .cra-l6-context>h3{display:block;margin:0 0 5px;color:#1e3a8a;}
.eitca-topic.eitca-aif .cra-l6-context p{margin:0;font-size:12px;line-height:1.45;color:#334155;}
.eitca-topic.eitca-aif .cra-l6-eyebrow{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:900;color:#2563eb;margin-bottom:5px;}
.eitca-topic.eitca-aif .cra-l6-checkGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin-top:10px;
}
@media(max-width:680px){.eitca-topic.eitca-aif .cra-l6-checkGrid{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l6-checkGrid>label{
  display:flex;
  align-items:flex-start;
  gap:9px;
  border:1px solid var(--aif-border);
  border-radius:13px;
  background:#fff;
  padding:10px;
  cursor:pointer;
  transition:border-color .15s ease,background .15s ease;
}
.eitca-topic.eitca-aif .cra-l6-checkGrid>label:hover{border-color:#93c5fd;background:#f8fbff;}
.eitca-topic.eitca-aif .cra-l6-checkGrid input{margin-top:3px;accent-color:#2563eb;flex:0 0 auto;}
.eitca-topic.eitca-aif .cra-l6-checkGrid span{display:block;}
.eitca-topic.eitca-aif .cra-l6-checkGrid b{display:block;font-size:12px;line-height:1.3;margin-bottom:3px;color:var(--aif-text);}
.eitca-topic.eitca-aif .cra-l6-checkGrid small{display:block;font-size:10px;line-height:1.35;color:var(--aif-muted);}
.eitca-topic.eitca-aif .cra-l6-four{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin:14px 0;
}
.eitca-topic.eitca-aif .cra-l6-four>div{border:1px solid var(--aif-border);border-radius:14px;background:#fff;padding:11px;}
.eitca-topic.eitca-aif .cra-l6-four b{display:block;margin-bottom:4px;}
.eitca-topic.eitca-aif .cra-l6-four span{display:block;color:var(--aif-muted);font-size:12px;line-height:1.4;}
@media(max-width:820px){.eitca-topic.eitca-aif .cra-l6-four{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:520px){.eitca-topic.eitca-aif .cra-l6-four{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l6-journey{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:14px 0 0;}
.eitca-topic.eitca-aif .cra-l6-journey>div{border:1px solid var(--aif-border);border-radius:12px;background:#f8fafc;padding:9px;}
.eitca-topic.eitca-aif .cra-l6-journey b{display:block;font-size:11px;margin-bottom:4px;}
.eitca-topic.eitca-aif .cra-l6-journey span{display:block;font-size:10px;line-height:1.35;color:var(--aif-muted);}
@media(max-width:660px){.eitca-topic.eitca-aif .cra-l6-journey{grid-template-columns:repeat(2,minmax(0,1fr));}}
.eitca-topic.eitca-aif .cra-l6-formGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.eitca-topic.eitca-aif .cra-l6-formGrid.two{grid-template-columns:repeat(2,minmax(0,1fr));}
@media(max-width:720px){.eitca-topic.eitca-aif .cra-l6-formGrid,.eitca-topic.eitca-aif .cra-l6-formGrid.two{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l6-riskDial{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:132px;
  border:1px solid #bfdbfe;
  border-radius:16px;
  background:radial-gradient(circle at 50% 20%,#fff,#eff6ff);
  text-align:center;
  padding:14px;
}
.eitca-topic.eitca-aif .cra-l6-riskDial>span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#64748b;}
.eitca-topic.eitca-aif .cra-l6-riskDial>strong{font-size:27px;line-height:1.1;color:#1d4ed8;margin:5px 0;}
.eitca-topic.eitca-aif .cra-l6-riskDial>small{font-size:11px;line-height:1.4;color:var(--aif-muted);}
.eitca-topic.eitca-aif .cra-l6-meter.danger>i{background:linear-gradient(90deg,#f59e0b,#dc2626);}
.eitca-topic.eitca-aif .cra-l6-meter.warning>i{background:linear-gradient(90deg,#facc15,#f97316);}

/* =========================================================
   EITC/IS/CRA — Lesson 7: AI-era cybersecurity and capstone
   ========================================================= */
.eitca-topic.eitca-aif .cra-l7-chain{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:15px 0;
}
.eitca-topic.eitca-aif .cra-l7-chain>div{
  position:relative;border:1px solid var(--aif-border);border-radius:14px;background:#fff;padding:12px;min-height:102px;
}
.eitca-topic.eitca-aif .cra-l7-chain>div:not(:last-child):after{
  content:'›';position:absolute;right:-9px;top:37%;z-index:2;width:18px;height:18px;border:1px solid #bfdbfe;border-radius:50%;background:#eff6ff;color:#2563eb;text-align:center;line-height:15px;font-weight:900;
}
.eitca-topic.eitca-aif .cra-l7-chain b{display:block;margin-bottom:5px;color:var(--aif-text);}
.eitca-topic.eitca-aif .cra-l7-chain span{display:block;color:var(--aif-muted);font-size:12px;line-height:1.42;}
.eitca-topic.eitca-aif .cra-l7-four{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:15px 0;
}
.eitca-topic.eitca-aif .cra-l7-four>div{
  border:1px solid var(--aif-border);border-radius:14px;background:#fff;padding:12px;
}
.eitca-topic.eitca-aif .cra-l7-four b{display:block;margin-bottom:5px;}
.eitca-topic.eitca-aif .cra-l7-four span{display:block;color:var(--aif-muted);font-size:12px;line-height:1.44;}
.eitca-topic.eitca-aif .cra-l7-arch{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:15px 0;
}
.eitca-topic.eitca-aif .cra-l7-arch>div{
  border:1px solid #c7d2fe;border-radius:14px;padding:12px;background:linear-gradient(160deg,#fff,#f5f3ff);
}
.eitca-topic.eitca-aif .cra-l7-arch b{display:block;margin-bottom:5px;color:#312e81;}
.eitca-topic.eitca-aif .cra-l7-arch span{display:block;color:var(--aif-muted);font-size:12px;line-height:1.4;}
@media(max-width:820px){
  .eitca-topic.eitca-aif .cra-l7-chain,.eitca-topic.eitca-aif .cra-l7-arch{grid-template-columns:1fr 1fr;}
  .eitca-topic.eitca-aif .cra-l7-chain>div:after{display:none!important;}
  .eitca-topic.eitca-aif .cra-l7-four{grid-template-columns:1fr 1fr;}
}
@media(max-width:520px){
  .eitca-topic.eitca-aif .cra-l7-chain,.eitca-topic.eitca-aif .cra-l7-arch,.eitca-topic.eitca-aif .cra-l7-four{grid-template-columns:1fr;}
}
.eitca-topic.eitca-aif .cra-l7-lab{
  border:1px solid var(--aif-border);border-radius:20px;background:linear-gradient(145deg,#f8fafc,#fff);padding:15px;box-shadow:var(--aif-shadowSoft);
}
.eitca-topic.eitca-aif .cra-l7-top{
  display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;
}
.eitca-topic.eitca-aif .cra-l7-top h2{margin-bottom:6px;}
@media(max-width:640px){.eitca-topic.eitca-aif .cra-l7-top{flex-direction:column;}}
.eitca-topic.eitca-aif .cra-l7-layout{
  display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);gap:12px;align-items:start;
}
@media(max-width:820px){.eitca-topic.eitca-aif .cra-l7-layout{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l7-panel{
  border:1px solid var(--aif-border);border-radius:16px;background:#fff;padding:14px;min-width:0;
}
.eitca-topic.eitca-aif .cra-l7-panel h3{margin-bottom:10px;}
.eitca-topic.eitca-aif .cra-l7-field{
  display:flex;flex-direction:column;gap:6px;margin-bottom:11px;font-size:12px;font-weight:850;color:var(--aif-text);
}
.eitca-topic.eitca-aif .cra-l7-select{
  width:100%;border:1px solid var(--aif-border2);border-radius:11px;background:#fff;color:var(--aif-text);padding:9px 10px;font:inherit;font-size:13px;font-weight:600;
}
.eitca-topic.eitca-aif .cra-l7-select:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 4px rgba(37,99,235,.12);}
.eitca-topic.eitca-aif .cra-l7-meterRow{
  display:grid;grid-template-columns:minmax(115px,1fr) minmax(90px,1.2fr) 44px;gap:8px;align-items:center;margin:10px 0;font-size:12px;
}
.eitca-topic.eitca-aif .cra-l7-meterRow>span{font-weight:800;}
.eitca-topic.eitca-aif .cra-l7-meterRow>b{text-align:right;font-size:12px;}
.eitca-topic.eitca-aif .cra-l7-meter{height:9px;border-radius:999px;background:#e2e8f0;overflow:hidden;}
.eitca-topic.eitca-aif .cra-l7-meter>i{display:block;width:0;height:100%;border-radius:999px;background:linear-gradient(90deg,#2563eb,#0d9488);transition:width .25s ease;}
@media(max-width:560px){
  .eitca-topic.eitca-aif .cra-l7-meterRow{grid-template-columns:1fr 42px;}
  .eitca-topic.eitca-aif .cra-l7-meterRow>span{grid-column:1/-1;}
}
.eitca-topic.eitca-aif .cra-l7-verdict{
  margin-top:13px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;border-radius:14px;padding:11px 12px;font-size:13px;line-height:1.48;
}
.eitca-topic.eitca-aif .cra-l7-verdict.is-good{border-color:#a7f3d0;background:#ecfdf5;color:#065f46;}
.eitca-topic.eitca-aif .cra-l7-verdict.is-warn{border-color:#fde68a;background:#fffbeb;color:#92400e;}
.eitca-topic.eitca-aif .cra-l7-verdict.is-bad{border-color:#fecaca;background:#fef2f2;color:#991b1b;}
.eitca-topic.eitca-aif .cra-l7-tagRow{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;}
.eitca-topic.eitca-aif .cra-l7-tagRow span{
  display:inline-flex;align-items:center;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:850;
}
.eitca-topic.eitca-aif .cra-l7-review{margin-top:13px;border-top:1px solid var(--aif-border);padding-top:11px;}
.eitca-topic.eitca-aif .cra-l7-review>b{display:block;margin-bottom:6px;}
.eitca-topic.eitca-aif .cra-l7-actionList{margin:7px 0 0 19px;color:var(--aif-muted);font-size:12px;line-height:1.45;}
.eitca-topic.eitca-aif .cra-l7-actionList li{margin:6px 0;}
.eitca-topic.eitca-aif .cra-l7-checkGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
@media(max-width:610px){.eitca-topic.eitca-aif .cra-l7-checkGrid{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l7-checkGrid label{
  display:flex;align-items:flex-start;gap:8px;border:1px solid var(--aif-border);border-radius:12px;background:#fff;padding:9px;cursor:pointer;font-size:12px;line-height:1.38;
}
.eitca-topic.eitca-aif .cra-l7-checkGrid input{margin-top:3px;accent-color:#2563eb;}
.eitca-topic.eitca-aif .cra-l7-checkGrid b{display:block;margin-bottom:2px;color:var(--aif-text);}
.eitca-topic.eitca-aif .cra-l7-checkGrid small{display:block;color:var(--aif-muted2);font-size:11px;}
.eitca-topic.eitca-aif .cra-l7-presetRow{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px;}
.eitca-topic.eitca-aif .cra-l7-presetRow .aif-btn.is-active{background:#1d4ed8;border-color:#1d4ed8;color:#fff;}
.eitca-topic.eitca-aif .cra-l7-attackFlow{
  display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:6px;align-items:center;margin:0 0 13px;
}
.eitca-topic.eitca-aif .cra-l7-attackFlow>div{
  border:1px solid var(--aif-border);border-radius:13px;background:#fff;padding:10px;text-align:center;transition:.2s ease;
}
.eitca-topic.eitca-aif .cra-l7-attackFlow>div.is-risk{border-color:#fca5a5;background:#fef2f2;box-shadow:0 0 0 2px rgba(239,68,68,.08);}
.eitca-topic.eitca-aif .cra-l7-attackFlow b{display:block;font-size:12px;margin-bottom:3px;}
.eitca-topic.eitca-aif .cra-l7-attackFlow span{display:block;font-size:10px;color:var(--aif-muted);line-height:1.3;}
.eitca-topic.eitca-aif .cra-l7-attackFlow>i{font-style:normal;color:#94a3b8;font-weight:900;}
@media(max-width:780px){
  .eitca-topic.eitca-aif .cra-l7-attackFlow{grid-template-columns:1fr;}
  .eitca-topic.eitca-aif .cra-l7-attackFlow>i{transform:rotate(90deg);text-align:center;}
}
.eitca-topic.eitca-aif .cra-l7-capstoneMap{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:15px 0;
}
.eitca-topic.eitca-aif .cra-l7-capstoneMap>div{border:1px solid #bfdbfe;border-radius:14px;background:linear-gradient(150deg,#eff6ff,#fff);padding:12px;}
.eitca-topic.eitca-aif .cra-l7-capstoneMap b{display:block;margin-bottom:5px;color:#1e3a8a;}
.eitca-topic.eitca-aif .cra-l7-capstoneMap span{display:block;color:var(--aif-muted);font-size:12px;line-height:1.42;}
@media(max-width:800px){.eitca-topic.eitca-aif .cra-l7-capstoneMap{grid-template-columns:1fr 1fr;}}
@media(max-width:480px){.eitca-topic.eitca-aif .cra-l7-capstoneMap{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l7-path{
  display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:6px;align-items:stretch;margin:0 0 14px;
}
.eitca-topic.eitca-aif .cra-l7-path>div{
  position:relative;border:1px solid #fecaca;border-radius:14px;background:#fef2f2;padding:11px 9px 10px;text-align:center;transition:.2s ease;
}
.eitca-topic.eitca-aif .cra-l7-path>div>span{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;border-radius:50%;background:#fee2e2;color:#991b1b;font-size:11px;font-weight:900;margin-bottom:5px;}
.eitca-topic.eitca-aif .cra-l7-path>div>b{display:block;font-size:12px;margin-bottom:4px;}
.eitca-topic.eitca-aif .cra-l7-path>div>small{display:block;color:var(--aif-muted);font-size:10px;line-height:1.3;}
.eitca-topic.eitca-aif .cra-l7-path>div.is-covered{border-color:#86efac;background:#f0fdf4;}
.eitca-topic.eitca-aif .cra-l7-path>div.is-covered>span{background:#dcfce7;color:#166534;}
.eitca-topic.eitca-aif .cra-l7-path>div.is-observed:not(.is-covered){border-color:#fde68a;background:#fffbeb;}
.eitca-topic.eitca-aif .cra-l7-path>i{align-self:center;font-style:normal;color:#94a3b8;font-weight:900;}
@media(max-width:820px){
  .eitca-topic.eitca-aif .cra-l7-path{grid-template-columns:1fr;}
  .eitca-topic.eitca-aif .cra-l7-path>i{transform:rotate(90deg);text-align:center;}
}
.eitca-topic.eitca-aif .cra-l7-capstoneLayout{grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);}
@media(max-width:900px){.eitca-topic.eitca-aif .cra-l7-capstoneLayout{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l7-budget{display:grid;grid-template-columns:minmax(140px,1fr) minmax(100px,1.3fr) 46px;gap:8px;align-items:center;margin-bottom:12px;font-size:12px;font-weight:800;}
.eitca-topic.eitca-aif .cra-l7-budgetTrack{height:10px;border-radius:999px;background:#e2e8f0;overflow:hidden;}
.eitca-topic.eitca-aif .cra-l7-budgetTrack>i{display:block;width:0;height:100%;background:linear-gradient(90deg,#2563eb,#0d9488);transition:width .25s ease;}
.eitca-topic.eitca-aif .cra-l7-budgetTrack>i.is-over{background:#dc2626;}
.eitca-topic.eitca-aif .cra-l7-controlGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
@media(max-width:630px){.eitca-topic.eitca-aif .cra-l7-controlGrid{grid-template-columns:1fr;}}
.eitca-topic.eitca-aif .cra-l7-controlGrid label{
  position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:start;border:1px solid var(--aif-border);border-radius:13px;padding:10px;background:#fff;cursor:pointer;
}
.eitca-topic.eitca-aif .cra-l7-controlGrid label:has(input:checked){border-color:#60a5fa;background:#eff6ff;}
.eitca-topic.eitca-aif .cra-l7-controlGrid input{margin-top:3px;accent-color:#2563eb;}
.eitca-topic.eitca-aif .cra-l7-controlGrid b{display:block;font-size:12px;margin-bottom:3px;}
.eitca-topic.eitca-aif .cra-l7-controlGrid small{display:block;color:var(--aif-muted);font-size:10px;line-height:1.35;}
.eitca-topic.eitca-aif .cra-l7-controlGrid em{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#e0e7ff;color:#3730a3;font-style:normal;font-size:10px;font-weight:900;}

/*css fixes*/
.eitca-cra-l3 .cra-sbomLine code {
	color: black!important;
}
