
/* CalcBeacon V41 Educational Authority Banner Framework */
.cb-v41-edu-banner{
  position:relative;
  overflow:hidden;
  margin:18px 0 24px;
  min-height:300px;
  border:1px solid rgba(45,127,249,.18);
  border-radius:28px;
  background:
    radial-gradient(circle at 14% 20%, rgba(0,167,255,.20), transparent 28%),
    radial-gradient(circle at 88% 22%, rgba(45,127,249,.18), transparent 32%),
    linear-gradient(135deg, #f7fbff 0%, #eaf5ff 46%, #ffffff 100%);
  box-shadow:0 22px 70px rgba(7,17,31,.14);
  isolation:isolate;
}
.cb-v41-edu-banner::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(45,127,249,.075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(45,127,249,.075) 1px, transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(90deg, rgba(0,0,0,.9), rgba(0,0,0,.35), rgba(0,0,0,.9));
  z-index:-2;
}
.cb-v41-edu-banner::after{
  content:"";
  position:absolute;
  right:-90px;
  top:-140px;
  width:420px;
  height:420px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(45,127,249,.28), rgba(0,167,255,.10) 38%, transparent 68%);
  z-index:-1;
}
.cb-v41-inner{
  position:relative;
  display:grid;
  grid-template-columns:1.15fr .86fr 1.15fr;
  gap:26px;
  align-items:center;
  padding:30px 34px 34px;
}
.cb-v41-topline{
  position:absolute;
  left:34px;
  top:22px;
  right:34px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  pointer-events:none;
}
.cb-v41-brand{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#0a2540;
  font-weight:800;
  letter-spacing:.01em;
}
.cb-v41-mark{
  width:24px;
  height:24px;
  border-radius:9px;
  background:linear-gradient(135deg,#2d7ff9,#00a7ff);
  box-shadow:0 0 24px rgba(45,127,249,.42);
}
.cb-v41-category{
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:#2d7ff9;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(45,127,249,.16);
  border-radius:999px;
  padding:8px 12px;
  backdrop-filter:blur(10px);
}
.cb-v41-story,
.cb-v41-journey{
  padding-top:42px;
}
.cb-v41-title{
  color:#07111f;
  font-size:clamp(24px, 2vw, 36px);
  line-height:1.05;
  margin:0 0 10px;
  letter-spacing:-.04em;
}
.cb-v41-subtitle{
  color:#42627f;
  margin:0 0 18px;
  max-width:460px;
  font-size:15px;
  line-height:1.55;
}
.cb-v41-people{
  display:flex;
  gap:12px;
  align-items:flex-end;
  min-height:126px;
}
.cb-v41-person-card{
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  padding:12px 8px 10px;
  border-radius:20px;
  background:rgba(255,255,255,.76);
  border:1px solid rgba(45,127,249,.14);
  box-shadow:0 16px 34px rgba(7,17,31,.08);
}
.cb-v41-person{
  position:relative;
  width:46px;
  height:74px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
}
.cb-v41-person::before{
  content:"";
  position:absolute;
  top:2px;
  width:24px;
  height:24px;
  border-radius:999px;
  background:linear-gradient(180deg,#ffd8bd,#e8a77a);
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.06);
}
.cb-v41-person::after{
  content:"";
  position:absolute;
  bottom:0;
  width:34px;
  height:48px;
  border-radius:16px 16px 12px 12px;
  background:linear-gradient(180deg,#2d7ff9,#00a7ff);
}
.cb-v41-person[data-size="small"]{transform:scale(.78); transform-origin:bottom center;}
.cb-v41-person[data-size="mid"]{transform:scale(.94); transform-origin:bottom center;}
.cb-v41-person[data-size="large"]{transform:scale(1.08); transform-origin:bottom center;}
.cb-v41-person[data-size="wide"]::after{width:46px;border-radius:20px 20px 14px 14px;}
.cb-v41-person-label{
  color:#12314d;
  font-size:12px;
  font-weight:800;
  text-align:center;
  line-height:1.2;
}
.cb-v41-result-card{
  position:relative;
  z-index:2;
  margin-top:36px;
  padding:24px;
  min-height:230px;
  border-radius:30px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(255,255,255,.9);
  box-shadow:0 26px 80px rgba(7,17,31,.18), inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter:blur(18px);
}
.cb-v41-result-card::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:30px;
  padding:1px;
  background:linear-gradient(135deg,rgba(45,127,249,.65),rgba(0,167,255,.18),rgba(255,255,255,.5));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}
.cb-v41-card-kicker{
  color:#2d7ff9;
  font-size:11px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  margin-bottom:10px;
}
.cb-v41-card-title{
  color:#07111f;
  font-size:18px;
  font-weight:900;
  margin-bottom:14px;
}
.cb-v41-input-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  color:#42627f;
  font-size:13px;
  padding:9px 0;
  border-bottom:1px solid rgba(45,127,249,.11);
}
.cb-v41-input-row strong{color:#0a2540;}
.cb-v41-main-result{
  margin:16px 0 6px;
  color:#07111f;
  font-size:clamp(34px, 3vw, 52px);
  font-weight:950;
  letter-spacing:-.06em;
  line-height:.95;
}
.cb-v41-result-note{
  color:#0f8f68;
  font-weight:900;
  font-size:14px;
}
.cb-v41-scale{
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.74);
  border:1px solid rgba(45,127,249,.13);
  box-shadow:0 18px 42px rgba(7,17,31,.08);
}
.cb-v41-scale-title{
  color:#12314d;
  font-size:14px;
  font-weight:900;
  margin-bottom:12px;
}
.cb-v41-bars{
  display:grid;
  gap:9px;
}
.cb-v41-bar{
  position:relative;
  height:14px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(45,127,249,.22), rgba(0,167,255,.78));
  overflow:hidden;
}
.cb-v41-bar::after{
  content:"";
  position:absolute;
  left:var(--pos,55%);
  top:-4px;
  width:8px;
  height:22px;
  border-radius:999px;
  background:#07111f;
  box-shadow:0 0 0 5px rgba(255,255,255,.85);
}
.cb-v41-label-row{
  display:flex;
  justify-content:space-between;
  gap:10px;
  color:#42627f;
  font-size:11px;
  font-weight:800;
}
.cb-v41-chart{
  height:128px;
  border-radius:22px;
  background:
    linear-gradient(rgba(45,127,249,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(45,127,249,.08) 1px, transparent 1px),
    rgba(255,255,255,.66);
  background-size:32px 32px;
  border:1px solid rgba(45,127,249,.13);
  position:relative;
  overflow:hidden;
}
.cb-v41-chart svg{position:absolute;inset:0;width:100%;height:100%}
.cb-v41-timeline{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:14px;
}
.cb-v41-dot{
  width:13px;height:13px;border-radius:999px;
  background:#2d7ff9;
  box-shadow:0 0 0 6px rgba(45,127,249,.10);
}
.cb-v41-line{height:3px;flex:1;border-radius:999px;background:rgba(45,127,249,.28);}
.cb-v41-accent-health .cb-v41-category,
.cb-v41-accent-health .cb-v41-card-kicker{color:#009f9a}
.cb-v41-accent-health .cb-v41-mark,
.cb-v41-accent-health .cb-v41-person::after{background:linear-gradient(180deg,#00a7ff,#00bfa6)}
.cb-v41-accent-finance .cb-v41-person::after{background:linear-gradient(180deg,#2d7ff9,#4f46e5)}
.cb-v41-accent-marketing .cb-v41-category,
.cb-v41-accent-marketing .cb-v41-card-kicker{color:#7c3aed}
.cb-v41-accent-marketing .cb-v41-mark,
.cb-v41-accent-marketing .cb-v41-person::after{background:linear-gradient(180deg,#7c3aed,#2d7ff9)}
.cb-v41-accent-work .cb-v41-category,
.cb-v41-accent-work .cb-v41-card-kicker{color:#0f8f68}
.cb-v41-accent-work .cb-v41-mark,
.cb-v41-accent-work .cb-v41-person::after{background:linear-gradient(180deg,#16a34a,#00a7ff)}
@media (max-width:900px){
  .cb-v41-inner{grid-template-columns:1fr;gap:12px;padding:28px 18px 22px}
  .cb-v41-topline{position:relative;left:auto;right:auto;top:auto;margin:0 0 4px}
  .cb-v41-story,.cb-v41-journey{padding-top:0}
  .cb-v41-result-card{margin-top:0;min-height:auto}
  .cb-v41-people{min-height:100px}
  .cb-v41-person-card:nth-child(n+5){display:none}
}
@media (max-width:560px){
  .cb-v41-edu-banner{border-radius:22px;min-height:0}
  .cb-v41-inner{padding:20px 14px}
  .cb-v41-people{gap:7px}
  .cb-v41-person-card{padding:8px 5px}
  .cb-v41-person{width:36px;height:60px}
  .cb-v41-person-label{font-size:10px}
  .cb-v41-main-result{font-size:38px}
}


/* V46.7.1 Actual V41 Educational Banner Dark Result Card Fix */
.cb-v41-edu-banner{
  background:
    radial-gradient(circle at 18% 18%, rgba(56,189,248,.16), transparent 30%),
    radial-gradient(circle at 78% 18%, rgba(99,102,241,.14), transparent 34%),
    linear-gradient(135deg, rgba(15,23,42,.96), rgba(2,6,23,.92)) !important;
  border:1px solid rgba(56,189,248,.18) !important;
  box-shadow:0 28px 80px rgba(2,6,23,.42) !important;
}
.cb-v41-edu-banner::before{
  opacity:.16 !important;
}
.cb-v41-brand,
.cb-v41-title,
.cb-v41-card-title,
.cb-v41-scale-title,
.cb-v41-person-label,
.cb-v41-label-row span{
  color:#eaf4ff !important;
}
.cb-v41-subtitle{
  color:#9fb0c8 !important;
}
.cb-v41-category{
  background:rgba(56,189,248,.12) !important;
  border:1px solid rgba(56,189,248,.22) !important;
  color:#7dd3fc !important;
}
.cb-v41-mark{
  box-shadow:0 0 28px rgba(56,189,248,.35) !important;
}
.cb-v41-person-card,
.cb-v41-journey{
  background:
    radial-gradient(circle at top right, rgba(56,189,248,.10), transparent 38%),
    linear-gradient(145deg, rgba(15,23,42,.78), rgba(2,6,23,.66)) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  box-shadow:0 18px 48px rgba(2,6,23,.32) !important;
}
.cb-v41-person-card::after{
  background:rgba(56,189,248,.10) !important;
  border-color:rgba(56,189,248,.18) !important;
}
.cb-v41-result-card{
  background:
    radial-gradient(circle at top right, rgba(56,189,248,.16), transparent 38%),
    radial-gradient(circle at bottom left, rgba(99,102,241,.13), transparent 44%),
    linear-gradient(145deg, rgba(15,23,42,.96), rgba(2,6,23,.90)) !important;
  border:1px solid rgba(56,189,248,.28) !important;
  box-shadow:
    0 26px 76px rgba(2,6,23,.48),
    0 0 42px rgba(56,189,248,.08),
    inset 0 1px 0 rgba(255,255,255,.05) !important;
  color:#eaf4ff !important;
}
.cb-v41-result-card::before{
  background:linear-gradient(135deg, rgba(56,189,248,.62), rgba(99,102,241,.22), rgba(15,23,42,.10)) !important;
}
.cb-v41-card-kicker{
  color:#7dd3fc !important;
}
.cb-v41-card-title{
  color:#f8fbff !important;
}
.cb-v41-input-row{
  border-bottom:1px solid rgba(148,163,184,.16) !important;
}
.cb-v41-input-row span{
  color:#9fb0c8 !important;
}
.cb-v41-input-row strong{
  color:#eaf4ff !important;
}
.cb-v41-main-result{
  color:#f8fbff !important;
  text-shadow:0 0 30px rgba(56,189,248,.12);
}
.cb-v41-result-note{
  color:#34d399 !important;
}
.cb-v42-live-badge{
  background:rgba(15,23,42,.72) !important;
  border:1px solid rgba(52,211,153,.22) !important;
  color:#dffcf0 !important;
}
.cb-v42-live-badge::before{
  box-shadow:0 0 0 6px rgba(52,211,153,.12) !important;
}
.cb-v41-scale{
  background:rgba(2,6,23,.28) !important;
}
.cb-v41-chart{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(148,163,184,.16) !important;
}
.cb-v41-line{
  background:rgba(125,211,252,.38) !important;
}
.cb-v41-dot{
  background:#38bdf8 !important;
  box-shadow:0 0 0 9px rgba(56,189,248,.12) !important;
}
.cb-v41-label-row span{
  color:#9fb0c8 !important;
}
.cb-v42-live-active .cb-v41-result-card{
  box-shadow:
    0 30px 90px rgba(2,6,23,.55),
    0 0 48px rgba(56,189,248,.12),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
}


/* V46.8 Cache-Safe Actual Calculator Banner Dark Result Card Confirmation */
.cb-v41-result-card{
  background:
    radial-gradient(circle at top right, rgba(56,189,248,.16), transparent 38%),
    radial-gradient(circle at bottom left, rgba(99,102,241,.13), transparent 44%),
    linear-gradient(145deg, rgba(15,23,42,.96), rgba(2,6,23,.90)) !important;
  border:1px solid rgba(56,189,248,.28) !important;
  color:#eaf4ff !important;
}
.cb-v41-card-title,.cb-v41-main-result{color:#f8fbff !important}
.cb-v41-input-row span{color:#9fb0c8 !important}
.cb-v41-input-row strong{color:#eaf4ff !important}
.cb-v41-result-note{color:#34d399 !important}
