
.vf-vr5-modern,
.vf-vr5-modern * ,
.vf-vr5-modern *::before,
.vf-vr5-modern *::after { box-sizing:border-box; }

.vf-vr5-modern{
  --vf-bg:#f7f9f7;
  --vf-surface:#ffffff;
  --vf-surface-soft:#f4f7f3;
  --vf-text:#24322b;
  --vf-text-soft:#5f6d66;
  --vf-heading:#1e2823;
  --vf-border:#dfe7e0;
  --vf-border-strong:#cfdacf;
  --vf-green:#748260;
  --vf-green-dark:#5f6c4f;
  --vf-green-soft:#afc295;
  --vf-green-pale:#eef3ec;
  --vf-shadow:0 8px 26px rgba(36,50,43,.06);
  --vf-shadow-lg:0 22px 50px rgba(36,50,43,.10);
  --vf-radius-xl:24px;
  --vf-radius-lg:20px;
  --vf-radius-md:16px;
  --vf-radius-sm:12px;
  --vf-p1:#7a8b67;
  --vf-p2:#afc295;
  --vf-uvg:#8ea7d3;
  --vf-p3:#d9e6cd;
  --vf-need:#26322b;
  font-family:"Open Sans",sans-serif!important;
  color:var(--vf-text);
  margin:22px 0 36px;
}
.vf-vr5-modern a{ text-decoration:none!important; color:inherit; }
.vf-vr5-modern input,
.vf-vr5-modern select,
.vf-vr5-modern button{ font-family:"Open Sans",sans-serif!important; }

.vf-vr5-modern button,
.vf-vr5-modern button * ,
.vf-vr5-modern [type="button"],
.vf-vr5-modern [type="submit"],
.vf-vr5-modern .vf-vr5-step,
.vf-vr5-modern .vf-vr5-choice,
.vf-vr5-modern .vf-vr5-primary-btn,
.vf-vr5-modern .vf-vr5-secondary-btn,
.vf-vr5-modern .vf-vr5-result-tab,
.vf-vr5-modern .vf-vr5-phase-chip{
  -webkit-appearance:none !important; appearance:none !important;
  background-image:none !important;
  text-shadow:none !important;
  text-decoration:none !important;
  box-sizing:border-box !important;
  font-family:"Open Sans",sans-serif !important;
}

.vf-vr5-shell{ display:grid; gap:18px; }
.vf-vr5-card,
.vf-vr5-subcard,
.vf-vr5-stepper-card{
  background:var(--vf-surface);
  border:1px solid var(--vf-border);
  border-radius:var(--vf-radius-xl);
  box-shadow:var(--vf-shadow);
}
.vf-vr5-hero{
  display:grid;
  gap:18px;
  padding:28px;
  border-radius:28px;
  background:
    radial-gradient(circle at top left, rgba(175,194,149,.16), transparent 30%),
    radial-gradient(circle at top right, rgba(116,130,96,.10), transparent 26%),
    linear-gradient(180deg,#ffffff 0%,#fbfcfb 100%);
  border:1px solid #e8ede7;
  box-shadow:var(--vf-shadow-lg);
}
.vf-vr5-kicker{
  display:inline-flex; align-items:center; min-height:30px; padding:6px 12px;
  border-radius:999px; background:#f2f6ef; border:1px solid #d7e2d3;
  color:var(--vf-green-dark); font-size:12px; font-weight:800; letter-spacing:.04em; text-transform:uppercase;
}
.vf-vr5-hero h2{ margin:10px 0 8px; font-size:34px; line-height:1.04; letter-spacing:-.03em; color:var(--vf-heading)!important; }
.vf-vr5-hero p{ margin:0; font-size:16px; line-height:1.6; color:var(--vf-text-soft)!important; max-width:920px; }
.vf-vr5-hero__meta{ display:flex; flex-wrap:wrap; gap:10px; }
.vf-vr5-chip{
  display:inline-flex; align-items:center; min-height:38px; padding:8px 14px;
  border-radius:999px; background:#fff; border:1px solid #dde6da;
  box-shadow:0 8px 20px rgba(36,50,43,.04); font-size:13px; font-weight:700; color:var(--vf-text);
}
.vf-vr5-chip--build{ background:linear-gradient(180deg,#83916c 0%,#748260 100%); border-color:rgba(116,130,96,.25); color:#fff; }

.vf-vr5-stepper-card{ padding:12px; overflow:auto; }
.vf-vr5-stepper{ display:grid; grid-template-columns:repeat(7,minmax(150px,1fr)); gap:10px; min-width:1080px; }
.vf-vr5-step{
  position:relative; appearance:none !important; border:1px solid #dfe6dc !important; background:linear-gradient(180deg,#fff 0%,#f6f9f5 100%) !important;
  border-radius:18px !important; min-height:86px; padding:36px 14px 16px !important; text-align:left; cursor:pointer;
  display:block; gap:0; box-shadow:0 8px 18px rgba(36,50,43,.04) !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  color:var(--vf-heading) !important; outline:none !important;
}
.vf-vr5-step:hover{ transform:translateY(-1px); box-shadow:0 12px 22px rgba(36,50,43,.07); }
.vf-vr5-step span{ position:absolute; top:12px; left:14px; display:inline-flex; align-items:center; min-height:22px; padding:2px 8px; border-radius:999px; background:#eff4ec; border:1px solid #dbe5d6; font-size:11px !important; color:var(--vf-green-dark) !important; font-weight:800 !important; letter-spacing:.04em !important; text-transform:none !important; line-height:1 !important; }
.vf-vr5-step strong{ display:block; font-size:18px !important; line-height:1.25 !important; color:var(--vf-heading) !important; font-weight:800 !important; letter-spacing:0 !important; }
.vf-vr5-step em{ display:none !important; }
.vf-vr5-step.is-active{
  background:linear-gradient(180deg,#83916c 0%,#748260 100%) !important;
  border-color:rgba(116,130,96,.3) !important; color:#fff !important; box-shadow:0 16px 28px rgba(116,130,96,.18) !important;
}
.vf-vr5-step.is-active span,
.vf-vr5-step.is-active strong,
.vf-vr5-step.is-active em{ color:#fff !important; }
.vf-vr5-step.is-active span{ background:rgba(255,255,255,.14) !important; border-color:rgba(255,255,255,.22) !important; }
.vf-vr5-step.is-complete{ border-color:#d5dfd1; background:linear-gradient(180deg,#fff 0%,#eef4ea 100%); }

.vf-vr5-form-card{ padding:22px; }
.vf-vr5-message{ display:none; margin-bottom:14px; padding:14px 16px; border-radius:16px; font-size:15px; font-weight:600; }
.vf-vr5-message.is-visible{ display:block; }
.vf-vr5-message.is-error{ background:#fff5f4; border:1px solid #f1d0cc; color:#8c2f25; }

.vf-vr5-panel{ display:none; gap:18px; }
.vf-vr5-panel.is-active{ display:grid; }
.vf-vr5-section-head h3{ margin:0 0 6px; font-size:28px; line-height:1.08; letter-spacing:-.02em; color:var(--vf-heading)!important; }
.vf-vr5-section-head p{ margin:0; font-size:15px; line-height:1.6; color:var(--vf-text-soft)!important; max-width:900px; }

.vf-vr5-choice-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.vf-vr5-choice{
  appearance:none !important; border:1px solid #dde6da !important; background:linear-gradient(180deg,#fff 0%,#f7faf6 100%) !important;
  border-radius:24px; min-height:160px; padding:22px 24px; cursor:pointer; text-align:left; display:grid; gap:18px; align-content:space-between;
  box-shadow:0 12px 24px rgba(36,50,43,.04); transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.vf-vr5-choice:hover{ transform:translateY(-2px); box-shadow:0 16px 30px rgba(36,50,43,.08); }
.vf-vr5-choice.is-active{ border-color:rgba(116,130,96,.35) !important; box-shadow:0 18px 34px rgba(116,130,96,.13) !important; background:linear-gradient(180deg,#ffffff 0%,#f1f6ee 100%) !important; }
.vf-vr5-choice__top{ display:flex; align-items:center; justify-content:space-between; gap:14px; }
.vf-vr5-choice__icon{ width:56px; height:56px; border-radius:18px; display:inline-flex; align-items:center; justify-content:center; font-size:28px; background:linear-gradient(180deg,#f4f8f2 0%,#e8f0e3 100%); border:1px solid #dce6d8; }
.vf-vr5-choice__badge{ display:inline-flex; align-items:center; min-height:30px; padding:6px 10px; border-radius:999px; background:#f4f7f3; border:1px solid #d9e2d7; color:#6a7763; font-size:12px; font-weight:800; }
.vf-vr5-choice__text{ display:grid; gap:6px; }
.vf-vr5-choice__label{ font-size:24px; line-height:1.1; font-weight:800; color:var(--vf-heading); }
.vf-vr5-choice__hint{ font-size:15px; color:var(--vf-text-soft); line-height:1.5; }

.vf-vr5-persons-wrap{ display:grid; gap:16px; }
.vf-vr5-person-card,
.vf-vr5-subcard{
  padding:20px; border:1px solid var(--vf-border); border-radius:24px; background:#fff;
  box-shadow:0 10px 24px rgba(36,50,43,.04);
}
.vf-vr5-card-head{ display:grid; gap:4px; margin-bottom:14px; }
.vf-vr5-card-eyebrow{ font-size:12px; text-transform:uppercase; letter-spacing:.08em; font-weight:800; color:var(--vf-green-dark); }
.vf-vr5-card-head h4{ margin:0; font-size:22px; line-height:1.12; color:var(--vf-heading)!important; }

.vf-vr5-grid{ display:grid; gap:14px; }
.vf-vr5-grid--2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.vf-vr5-field{ display:grid; gap:8px; }
.vf-vr5-field--full{ grid-column:1/-1; }
.vf-vr5-field label{ font-size:15px; line-height:1.4; font-weight:700; color:var(--vf-text); display:flex; align-items:center; gap:8px; }
.vf-vr5-modern input,
.vf-vr5-modern select{
  width:100%; min-height:56px; border-radius:16px; border:1px solid #d7ddd3; background:#fff;
  color:var(--vf-text); padding:14px 16px; font-size:16px!important; line-height:1.2; appearance:none; box-shadow:none;
}
.vf-vr5-modern input::placeholder{ color:#859289; opacity:1; font-size:16px!important; }
.vf-vr5-modern input:focus,
.vf-vr5-modern select:focus{
  outline:none; border-color:var(--vf-green); box-shadow:0 0 0 4px rgba(116,130,96,.12);
}
.vf-vr5-tip{ position:relative; display:inline-flex; align-items:center; }
.vf-vr5-tip__icon{
  width:18px; height:18px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center;
  font-size:11px; font-weight:800; color:#fff; background:var(--vf-green);
}
.vf-vr5-tip__bubble{
  position:absolute; left:50%; bottom:calc(100% + 10px); transform:translateX(-50%);
  min-width:250px; max-width:340px; padding:12px 14px; border-radius:14px; background:#2c3a33; color:#fff;
  font-size:12px; line-height:1.5; opacity:0; visibility:hidden; transition:all .16s ease; box-shadow:0 16px 34px rgba(36,50,43,.26); z-index:99;
}
.vf-vr5-tip:hover .vf-vr5-tip__bubble{ opacity:1; visibility:visible; }
.vf-vr5-note{
  padding:16px 18px; border:1px solid #d9e2d7; border-radius:18px;
  background:linear-gradient(180deg,#fafcf9 0%,#f4f8f2 100%); font-size:14px; line-height:1.65; color:var(--vf-text);
}
.vf-vr5-subtle-copy{ margin:0 0 14px; font-size:14px; line-height:1.6; color:var(--vf-text-soft); }
.vf-vr5-children-wrap{ display:grid; gap:12px; }
.vf-vr5-child-row{
  display:grid; grid-template-columns:minmax(0,1fr) 180px 54px; gap:12px; align-items:end;
}
.vf-vr5-child-remove{
  width:54px; height:56px; border-radius:16px; border:1px solid #d8e0d4; background:#fff; color:#6a7763;
  font-size:24px; cursor:pointer;
}
.vf-vr5-inline-actions{ display:flex; justify-content:flex-start; margin-top:14px; }

.vf-vr5-footer-nav{ display:flex; justify-content:space-between; gap:12px; margin-top:18px; }
.vf-vr5-primary-btn,
.vf-vr5-secondary-btn{
  display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:12px 20px;
  border-radius:18px; font-size:15px; font-weight:800; cursor:pointer; transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.vf-vr5-primary-btn{
  border:1px solid rgba(116,130,96,.2) !important; background:linear-gradient(180deg,#83916c 0%,#748260 100%) !important; color:#fff !important;
  box-shadow:0 12px 24px rgba(116,130,96,.16);
}
.vf-vr5-primary-btn:hover{ transform:translateY(-1px); box-shadow:0 16px 30px rgba(116,130,96,.22); }
.vf-vr5-secondary-btn{
  border:1px solid #d9e2d7 !important; background:linear-gradient(180deg,#fff 0%,#f4f7f3 100%) !important; color:#5f6c4f !important;
}
.vf-vr5-secondary-btn:hover{ transform:translateY(-1px); }

.vf-vr5-result-launch{ display:flex; justify-content:flex-start; }

.vf-vr5-results-shell{ display:grid; gap:18px; margin-top:18px; }
.vf-vr5-result-tabs{ display:flex; flex-wrap:wrap; gap:10px; }
.vf-vr5-result-tab{
  border:1px solid #d8e1d5 !important; background:#fff !important; border-radius:999px !important; min-height:42px; padding:9px 14px !important;
  outline:none !important; text-shadow:none !important; background-image:none !important;
  font-size:13px !important; font-weight:700 !important; color:var(--vf-text) !important; cursor:pointer; box-shadow:none !important;
}
.vf-vr5-result-tab.is-active{ background:linear-gradient(180deg,#83916c 0%,#748260 100%) !important; color:#fff !important; border-color:rgba(116,130,96,.25) !important; }

.vf-vr5-result-panel{
  display:none; gap:18px; border:1px solid #e1e7df; border-radius:28px; padding:22px;
  background:
    radial-gradient(circle at top left, rgba(175,194,149,.10), transparent 32%),
    radial-gradient(circle at top right, rgba(142,167,211,.08), transparent 30%),
    linear-gradient(180deg,#ffffff 0%,#fbfcfb 100%);
  box-shadow:0 18px 44px rgba(36,50,43,.08);
}
.vf-vr5-result-panel.is-active{ display:grid; }
.vf-vr5-result-header{ display:flex; justify-content:space-between; align-items:flex-start; gap:16px; flex-wrap:wrap; }
.vf-vr5-result-person{ display:flex; gap:14px; align-items:center; }
.vf-vr5-result-person__icon{
  width:60px; height:60px; border-radius:20px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(180deg,#f3f7f1 0%,#e7efe3 100%); border:1px solid #dbe5d8; font-size:28px;
}
.vf-vr5-result-header h4{ margin:0 0 4px; font-size:28px; line-height:1.05; color:var(--vf-heading)!important; }
.vf-vr5-result-header p{ margin:0; font-size:14px; color:var(--vf-text-soft)!important; display:none; }
.vf-vr5-summary-pills{ display:flex; flex-wrap:wrap; gap:10px; }
.vf-vr5-summary-pill{
  display:inline-flex; align-items:center; min-height:38px; padding:8px 14px; border-radius:999px; font-size:13px; font-weight:700;
}
.vf-vr5-summary-pill.is-good{ background:#eef5ea; color:#5d744c; border:1px solid #d8e5d1; }
.vf-vr5-summary-pill.is-alert{ background:#fff5f0; color:#b04f21; border:1px solid #f3d7ca; }

.vf-vr5-legend{ display:flex; flex-wrap:wrap; gap:12px; }
.vf-vr5-legend span{
  display:inline-flex; align-items:center; gap:8px; min-height:34px; padding:7px 12px; border-radius:999px;
  background:#fff; border:1px solid #e2e8e0; font-size:12px; font-weight:700;
}
.vf-vr5-legend i{ width:12px; height:12px; border-radius:999px; display:inline-block; }
.vf-vr5-legend .is-p1{ background:var(--vf-p1); }
.vf-vr5-legend .is-p2{ background:var(--vf-p2); }
.vf-vr5-legend .is-uvg{ background:var(--vf-uvg); }
.vf-vr5-legend .is-p3{ background:var(--vf-p3); }
.vf-vr5-legend .is-need{ background:var(--vf-need); }

.vf-vr5-chart-board{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:20px; align-items:end;
  padding:22px; border-radius:26px; background:#fff; border:1px solid #e3e9e1; min-height:620px;
}
.vf-vr5-chart-col{ display:grid; grid-template-rows:auto 1fr auto; gap:12px; align-items:stretch; }
.vf-vr5-chart-meta{ display:flex; align-items:center; justify-content:center; gap:10px; min-height:52px; text-align:center; padding:0 6px; }
.vf-vr5-chart-meta-copy{ display:grid; gap:3px; }
.vf-vr5-chart-meta-copy strong{ font-size:15px; color:var(--vf-heading); white-space:nowrap; }
.vf-vr5-chart-meta-copy span{ display:none; }
.vf-vr5-chart-avatar{
  width:40px; height:40px; border-radius:14px; display:flex; align-items:center; justify-content:center; background:#f2f6ef; font-size:20px;
}
.vf-vr5-bar-shell{
  position:relative; height:420px; border-radius:26px; border:1px solid #e4eae2;
  background:
    linear-gradient(to top, rgba(36,50,43,.05) 1px, transparent 1px) 0 0/100% 20%,
    linear-gradient(180deg,#fcfdfc 0%,#f6f9f5 100%);
  padding:14px 14px 18px; overflow:visible;
}
.vf-vr5-bar-stack{
  position:absolute; left:26px; right:26px; top:22px; bottom:22px; display:flex; flex-direction:column-reverse; gap:0;
  filter:drop-shadow(0 10px 22px rgba(36,50,43,.10)); z-index:3;
}
.vf-vr5-bar-seg{
  width:100%; min-height:10px; border-left:1px solid rgba(255,255,255,.45); border-right:1px solid rgba(255,255,255,.45);
}
.vf-vr5-bar-seg:first-child{ border-bottom-left-radius:18px; border-bottom-right-radius:18px; }
.vf-vr5-bar-seg:last-child{ border-top-left-radius:18px; border-top-right-radius:18px; }
.vf-vr5-bar-seg.is-p1{ background:linear-gradient(180deg,#879673 0%,#748260 100%); }
.vf-vr5-bar-seg.is-p2{ background:linear-gradient(180deg,#c0d1ae 0%,#afc295 100%); }
.vf-vr5-bar-seg.is-uvg{ background:linear-gradient(180deg,#a9bddf 0%,#8ea7d3 100%); }
.vf-vr5-bar-seg.is-p3{ background:linear-gradient(180deg,#e9f1e2 0%,#d9e6cd 100%); }
.vf-vr5-need-line{
  position:absolute; left:14px; right:14px; border-top:2px dashed var(--vf-need); z-index:4;
}
.vf-vr5-need-line span{ display:none !important; }
.vf-vr5-gap-pill,
.vf-vr5-over-pill{
  position:absolute; left:50%; bottom:-12px; transform:translateX(-50%);
  min-height:28px; padding:6px 10px; border-radius:999px; font-size:11px; font-weight:800; white-space:nowrap; z-index:5;
}
.vf-vr5-gap-pill{ background:#fff2eb; border:1px solid #f3d4c8; color:#b45429; }
.vf-vr5-over-pill{ background:#edf5e9; border:1px solid #d6e4d0; color:#5e774b; }
.vf-vr5-chart-caption{ font-size:13px; line-height:1.45; color:var(--vf-text-soft); text-align:center; min-height:38px; padding:0 4px; }
.vf-vr5-bar-tooltip{
  position:absolute; left:50%; top:14px; transform:translateX(-50%) translateY(6px); min-width:250px; max-width:280px;
  border-radius:18px; background:rgba(255,255,255,.97); border:1px solid #dfe7dd; box-shadow:0 24px 60px rgba(36,50,43,.16);
  padding:14px 16px; font-size:12px; line-height:1.6; color:var(--vf-text); opacity:0; visibility:hidden; z-index:20; pointer-events:none;
}
.vf-vr5-bar-tooltip strong{ display:block; margin-bottom:6px; font-size:13px; color:var(--vf-heading); }
.vf-vr5-bar-shell:hover .vf-vr5-bar-tooltip{ opacity:1; visibility:visible; transform:translateX(-50%) translateY(0); }

.vf-vr5-phase-strip{ display:flex; flex-wrap:wrap; gap:10px; }
.vf-vr5-phase-chip{
  display:inline-flex; align-items:center; min-height:34px; padding:7px 12px; border-radius:999px;
  background:#f4f7f3 !important; border:1px solid #d9e2d7 !important; font-size:12px !important; font-weight:700 !important; color:#5f6c4f !important;
}

.vf-vr5-data-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:14px; }
.vf-vr5-data-card{
  padding:18px; border-radius:22px; background:#fff; border:1px solid #e3e9e1; box-shadow:0 10px 24px rgba(36,50,43,.04); display:grid; gap:8px;
}
.vf-vr5-data-card h5{ margin:0 0 2px; font-size:18px; line-height:1.2; color:var(--vf-heading)!important; }
.vf-vr5-data-line{ display:flex; justify-content:space-between; gap:12px; font-size:14px; line-height:1.4; color:var(--vf-text); }
.vf-vr5-data-line strong{ color:var(--vf-heading); }
.vf-vr5-data-line.is-total{ padding-top:8px; border-top:1px solid #edf1ec; font-weight:800; }
.vf-vr5-coverage-meter{ height:10px; border-radius:999px; background:#eff3ee; overflow:hidden; margin-top:6px; }
.vf-vr5-coverage-meter span{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#afc295 0%,#748260 100%); }

@media (max-width:980px){
  .vf-vr5-hero h2{ font-size:28px; }
  .vf-vr5-grid--2,
  .vf-vr5-choice-grid{ grid-template-columns:1fr; }
  .vf-vr5-child-row{ grid-template-columns:1fr 1fr 54px; }
  .vf-vr5-chart-board{ min-height:unset; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); }
  .vf-vr5-bar-shell{ height:360px; }
}
@media (max-width:767px){
  .vf-vr5-modern{ margin:16px 0 28px; }
  .vf-vr5-hero,
  .vf-vr5-form-card{ padding:18px; }
  .vf-vr5-stepper-card{ padding:10px; }
  .vf-vr5-stepper{ min-width:980px; }
  .vf-vr5-section-head h3{ font-size:24px; }
  .vf-vr5-result-header h4{ font-size:22px; }
  .vf-vr5-result-person__icon{ width:48px; height:48px; font-size:22px; }
  .vf-vr5-chart-board{ grid-template-columns:1fr; padding:14px; }
  .vf-vr5-bar-shell{ height:320px; }
  .vf-vr5-child-row{ grid-template-columns:1fr; }
  .vf-vr5-child-remove{ width:100%; }
  .vf-vr5-footer-nav{ flex-direction:column; }
  .vf-vr5-primary-btn, .vf-vr5-secondary-btn{ width:100%; }
}


/* Ultra-specific Theme Overrides */
html body .vf-vr5-modern .vf-vr5-step,
html body .vf-vr5-modern .vf-vr5-choice,
html body .vf-vr5-modern .vf-vr5-primary-btn,
html body .vf-vr5-modern .vf-vr5-secondary-btn,
html body .vf-vr5-modern .vf-vr5-result-tab{
  border-width:1px !important;
  border-style:solid !important;
  box-shadow:inherit !important;
}
html body .vf-vr5-modern .vf-vr5-step *,
html body .vf-vr5-modern .vf-vr5-choice *,
html body .vf-vr5-modern .vf-vr5-primary-btn *,
html body .vf-vr5-modern .vf-vr5-secondary-btn *,
html body .vf-vr5-modern .vf-vr5-result-tab *{
  color:inherit !important;
  text-shadow:none !important;
}
html body .vf-vr5-modern .vf-vr5-step:not(.is-active),
html body .vf-vr5-modern .vf-vr5-choice:not(.is-active),
html body .vf-vr5-modern .vf-vr5-result-tab:not(.is-active),
html body .vf-vr5-modern .vf-vr5-secondary-btn{
  border-color:#dbe4d8 !important;
}
html body .vf-vr5-modern .vf-vr5-primary-btn:focus,
html body .vf-vr5-modern .vf-vr5-secondary-btn:focus,
html body .vf-vr5-modern .vf-vr5-step:focus,
html body .vf-vr5-modern .vf-vr5-choice:focus,
html body .vf-vr5-modern .vf-vr5-result-tab:focus{
  outline:none !important;
  box-shadow:0 0 0 4px rgba(116,130,96,.12) !important;
}


/* v5.3 hardening */
.vf-vr5-modern button,
.vf-vr5-modern .vf-vr5-step,
.vf-vr5-modern .vf-vr5-choice,
.vf-vr5-modern .vf-vr5-primary-btn,
.vf-vr5-modern .vf-vr5-secondary-btn,
.vf-vr5-modern .vf-vr5-result-tab{
  -webkit-appearance:none !important;
  appearance:none !important;
  background-image:none !important;
  font-family:"Open Sans",sans-serif !important;
  font-size:15px !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
  text-indent:0 !important;
  text-transform:none !important;
  text-decoration:none !important;
  opacity:1 !important;
}
.vf-vr5-modern .vf-vr5-step,
.vf-vr5-modern .vf-vr5-choice,
.vf-vr5-modern .vf-vr5-result-tab{
  color:var(--vf-heading) !important;
}
.vf-vr5-modern .vf-vr5-primary-btn{ color:#ffffff !important; }
.vf-vr5-modern .vf-vr5-secondary-btn{ color:#5f6c4f !important; }
.vf-vr5-modern .vf-vr5-primary-btn,
.vf-vr5-modern .vf-vr5-secondary-btn{
  min-width:138px !important;
  font-weight:800 !important;
}
.vf-vr5-modern .vf-vr5-primary-btn::before,
.vf-vr5-modern .vf-vr5-primary-btn::after,
.vf-vr5-modern .vf-vr5-secondary-btn::before,
.vf-vr5-modern .vf-vr5-secondary-btn::after,
.vf-vr5-modern .vf-vr5-step::before,
.vf-vr5-modern .vf-vr5-step::after,
.vf-vr5-modern .vf-vr5-choice::before,
.vf-vr5-modern .vf-vr5-choice::after{ display:none !important; content:none !important; }
.vf-vr5-modern .vf-vr5-choice{
  justify-content:flex-start !important;
  text-align:left !important;
  min-height:142px !important;
}
.vf-vr5-modern .vf-vr5-choice__label{ color:var(--vf-heading) !important; }
.vf-vr5-modern .vf-vr5-choice__hint{ color:var(--vf-text-soft) !important; }
.vf-vr5-modern .vf-vr5-choice.is-active .vf-vr5-choice__label{ color:var(--vf-heading) !important; }
.vf-vr5-modern .vf-vr5-step{
  min-height:92px !important;
  padding:22px 18px 18px !important;
  align-items:flex-end !important;
}
.vf-vr5-modern .vf-vr5-step strong{
  width:100% !important;
  display:block !important;
  font-size:20px !important;
  line-height:1.15 !important;
}
.vf-vr5-modern .vf-vr5-step span{
  font-size:10px !important;
  min-height:20px !important;
  padding:2px 7px !important;
}
.vf-vr5-chart-meta-copy{ align-items:center; justify-items:center; }
.vf-vr5-chart-meta-copy .vf-vr5-chart-need{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  margin-top:3px;
  min-height:26px;
  padding:4px 10px;
  border-radius:999px;
  background:#20362f;
  color:#ffffff !important;
  font-size:11px !important;
  font-weight:800 !important;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(32,54,47,.16);
}
.vf-vr5-data-line > span{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.vf-vr5-mini-dot{
  width:10px;
  height:10px;
  border-radius:3px;
  display:inline-block;
  flex:0 0 10px;
}
.vf-vr5-mini-dot.is-p1{ background:var(--vf-p1); }
.vf-vr5-mini-dot.is-p2{ background:var(--vf-p2); }
.vf-vr5-mini-dot.is-uvg{ background:var(--vf-uvg); }
.vf-vr5-mini-dot.is-p3{ background:var(--vf-p3); }
.vf-vr5-mini-dot.is-need{ background:var(--vf-need); }
.vf-vr5-bar-shell{ overflow:hidden; }
.vf-vr5-bar-tooltip{ top:18px; }
html body .vf-vr5-modern .vf-vr5-primary-btn,
html body .vf-vr5-modern .vf-vr5-primary-btn:hover,
html body .vf-vr5-modern .vf-vr5-primary-btn:visited{ color:#fff !important; }
html body .vf-vr5-modern .vf-vr5-secondary-btn,
html body .vf-vr5-modern .vf-vr5-secondary-btn:hover,
html body .vf-vr5-modern .vf-vr5-secondary-btn:visited{ color:#5f6c4f !important; }
html body .vf-vr5-modern .vf-vr5-choice,
html body .vf-vr5-modern .vf-vr5-choice:hover,
html body .vf-vr5-modern .vf-vr5-choice:visited,
html body .vf-vr5-modern .vf-vr5-step,
html body .vf-vr5-modern .vf-vr5-step:hover,
html body .vf-vr5-modern .vf-vr5-step:visited,
html body .vf-vr5-modern .vf-vr5-result-tab,
html body .vf-vr5-modern .vf-vr5-result-tab:hover,
html body .vf-vr5-modern .vf-vr5-result-tab:visited{ color:var(--vf-heading) !important; }


/* v5.4 refinements */
.vf-vr5-btn-label{display:inline-block !important; color:inherit !important; -webkit-text-fill-color:currentColor !important;}
html body .vf-vr5-modern #vfVr5NextBtn,
html body .vf-vr5-modern #vfVr5CalculateBtn{
  background:linear-gradient(180deg,#83916c 0%,#748260 100%) !important;
  border:1px solid rgba(116,130,96,.28) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
html body .vf-vr5-modern #vfVr5PrevBtn,
html body .vf-vr5-modern #vfVr5AddChildBtn{
  background:linear-gradient(180deg,#fff 0%,#f4f7f3 100%) !important;
  border:1px solid #d9e2d7 !important;
  color:#5f6c4f !important;
  -webkit-text-fill-color:#5f6c4f !important;
}
html body .vf-vr5-modern #vfVr5NextBtn .vf-vr5-btn-label,
html body .vf-vr5-modern #vfVr5CalculateBtn .vf-vr5-btn-label{color:#fff !important; -webkit-text-fill-color:#fff !important;}
html body .vf-vr5-modern #vfVr5PrevBtn .vf-vr5-btn-label,
html body .vf-vr5-modern #vfVr5AddChildBtn .vf-vr5-btn-label{color:#5f6c4f !important; -webkit-text-fill-color:#5f6c4f !important;}
.vf-vr5-footer-nav{align-items:center;}
.vf-vr5-primary-btn,.vf-vr5-secondary-btn{padding-inline:24px !important; min-width:160px !important; white-space:nowrap !important;}
.vf-vr5-primary-btn,.vf-vr5-secondary-btn,.vf-vr5-child-remove{font-size:15px !important; font-weight:800 !important; letter-spacing:0 !important; text-align:center !important;}
.vf-vr5-child-remove{
  width:auto; min-width:120px; height:56px; border-radius:16px; border:1px solid #d9e2d7 !important; background:linear-gradient(180deg,#fff 0%,#f4f7f3 100%) !important; color:#5f6c4f !important;
  display:inline-flex; align-items:center; justify-content:center; padding:0 18px; box-shadow:none !important;
}
.vf-vr5-child-remove span{color:inherit !important; -webkit-text-fill-color:currentColor !important; font-size:14px !important; font-weight:800 !important;}
.vf-vr5-chart-board{padding:28px 28px 34px; gap:24px; min-height:660px;}
.vf-vr5-bar-shell{height:440px; padding:18px 18px 34px; overflow:visible; border-radius:28px;}
.vf-vr5-bar-stack{left:22px; right:22px; top:28px; bottom:30px;}
.vf-vr5-need-line{left:22px; right:22px;}
.vf-vr5-gap-pill,.vf-vr5-over-pill{bottom:-14px; z-index:6;}
.vf-vr5-chart-meta{min-height:66px; gap:12px; padding:0 8px;}
.vf-vr5-chart-meta-copy{gap:6px;}
.vf-vr5-chart-meta-copy strong{font-size:18px; white-space:normal; line-height:1.15; text-align:center;}
.vf-vr5-chart-meta-copy .vf-vr5-chart-need{
  display:inline-flex !important; align-items:center; justify-content:center; margin-top:0; min-height:28px; padding:5px 12px; border-radius:999px;
  background:#20362f; color:#fff !important; -webkit-text-fill-color:#fff !important; font-size:11px !important; font-weight:800 !important; white-space:nowrap;
}
.vf-vr5-chart-caption{padding:4px 10px 0; min-height:44px;}
.vf-vr5-data-line{align-items:center;}
.vf-vr5-data-line > span{font-weight:600;}
.vf-vr5-data-line.is-total{margin-top:2px;}
.vf-vr5-tip__icon{pointer-events:none;}
@media (max-width:980px){
  .vf-vr5-choice{min-height:148px; padding:20px;}
  .vf-vr5-choice__label{font-size:22px;}
  .vf-vr5-chart-board{padding:22px 18px 30px;}
  .vf-vr5-bar-shell{height:380px;}
}
@media (max-width:767px){
  .vf-vr5-choice__top{align-items:flex-start;}
  .vf-vr5-choice__label{font-size:21px;}
  .vf-vr5-chart-board{padding:16px 14px 26px;}
  .vf-vr5-bar-shell{height:340px; padding:16px 16px 30px;}
  .vf-vr5-child-remove{width:100%; min-width:0;}
}
