.nbem-root{font-family:inherit;max-width:100%;border:1px solid #d9dfe5;border-radius:12px;padding:22px;margin:24px 0;background:#fff;color:#18232d}.nbem-root *{box-sizing:border-box}.nbem-heading h2{margin:0 0 6px}.nbem-heading p{margin:0 0 18px;color:#59636d}.nbem-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px;margin-bottom:22px}.nbem-controls label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}.nbem-controls input,.nbem-controls select{max-width:100%;padding:7px;border:1px solid #bcc8d1;border-radius:6px;background:#fff;color:#18232d}.nbem-controls input[type=range]{padding:0;width:100%;accent-color:#1b70a9}.nbem-controls output{font-size:13px;font-weight:400}.nbem-result{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px}.nbem-result>div{background:#f1f5f8;border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:3px}.nbem-result span{font-size:12px}.nbem-result strong{font-size:25px}.nbem-result small{color:#59636d}.nbem-chart{margin:20px 0}.nbem-chart svg{display:block;width:100%;height:auto}.nbem-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:13px}.nbem-legend span{display:flex;align-items:center;gap:6px}.nbem-legend i{width:15px;height:3px;display:inline-block}.nbem-a{background:#1b70a9}.nbem-b{background:#d97732}.nbem-sources{border-top:1px solid #e3e7eb;padding-top:12px;font-size:13px}.nbem-sources p{margin:6px 0}.nbem-sources a{overflow-wrap:anywhere}.nbem-sources small,.nbem-foot{font-size:12px;color:#59636d}.nbem-empty{padding:16px;background:#f1f5f8;border-radius:8px}@media(max-width:500px){.nbem-root{padding:13px}.nbem-result strong{font-size:21px}}

.nbem-overview{margin:1.5em 0}.nbem-overview-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.nbem-overview-row{border:1px solid #d8dee5;border-radius:8px;padding:12px;min-width:0}.nbem-overview-meta{display:flex;justify-content:space-between;gap:8px}.nbem-overview-track{height:10px;border-radius:8px;background:#e9edf1;margin:10px 0;overflow:hidden}.nbem-overview-track span{display:block;height:100%;background:#3376a8}.nbem-overview-row small,.nbem-overview-note{color:#59636d;font-size:.85em}.nbem-overview-row small{overflow-wrap:anywhere}

.nbem-hub-intro{max-width:900px;margin-bottom:28px}.nbem-hub-section{margin:26px 0}.nbem-hub-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.nbem-hub-link{display:flex;flex-direction:column;gap:8px;padding:18px;border:1px solid #d7dde5;border-radius:8px;background:#fff;color:#27303a;text-decoration:none}.nbem-hub-link:hover{border-color:#9a762f}.nbem-hub-link span,.nbem-hub-disclaimer{font-size:.82em;color:#59636d}.nbem-hub-disclaimer{max-width:900px;border-top:1px solid #d7dde5;padding-top:15px}

/* v0.2.3 — common-scale all-party chart and transparent evidence */
.nbem-overview{margin:1.25em 0}.nbem-evidence-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:16px 0}.nbem-evidence-stat{padding:14px;border:1px solid #d9dfe5;border-radius:8px;background:#fff;display:flex;flex-direction:column;gap:4px}.nbem-evidence-stat strong{font-size:20px}.nbem-evidence-stat span{font-size:12px;color:#59636d}.nbem-overview-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:20px 0}.nbem-overview-controls label{font-weight:600;font-size:13px}.nbem-overview-controls select{padding:8px;border:1px solid #c7d0da;border-radius:5px;max-width:100%;background:#fff}.nbem-comparison{background:#fff;border:1px solid #d9dfe5;border-radius:9px;padding:clamp(12px,2vw,24px)}.nbem-comparison h4{margin:0 0 5px}.nbem-comparison-bars{display:flex;flex-direction:column;gap:5px}.nbem-comparison-row{display:grid;grid-template-columns:minmax(130px,205px) minmax(100px,1fr) 68px;gap:14px;align-items:center;margin-top:10px}.nbem-comparison-party{font-weight:600;font-size:14px}.nbem-comparison-track{height:18px;background:#e8edf2;border-radius:4px;overflow:hidden}.nbem-comparison-track span{display:block;background:#397aa5;height:100%}.nbem-comparison-value{text-align:right;font-variant-numeric:tabular-nums;font-size:14px}.nbem-comparison-detail{font-size:12px;color:#65707c;padding-left:min(219px,30%);overflow-wrap:anywhere}.nbem-comparison-detail a{color:#651e13}.nbem-overview [hidden]{display:none!important}@media(max-width:650px){.nbem-comparison-row{grid-template-columns:minmax(100px,125px) minmax(65px,1fr) 52px;gap:8px}.nbem-comparison-detail{padding-left:0}.nbem-comparison-party,.nbem-comparison-value{font-size:12px}}

/* v0.2.4: mobile-readable trend statistics, no horizontal overflow */
.nbem-trends{max-width:100%;min-width:0}
.nbem-trends>svg{max-width:100%;height:auto;display:block}
.nbem-trend-summary{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:14px 0}
.nbem-trend-summary table{width:100%;min-width:650px;border-collapse:collapse;font-size:14px}
.nbem-trend-summary th,.nbem-trend-summary td{padding:10px;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.nbem-trend-summary th{font-weight:600}
@media(max-width:700px){
  .nbem-trend-summary{overflow:visible}
  .nbem-trend-summary table{display:block;min-width:0;width:100%;border:0}
  .nbem-trend-summary thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .nbem-trend-summary tbody{display:grid;grid-template-columns:1fr;gap:12px}
  .nbem-trend-summary tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;background:#fff;border:1px solid #d9dfe5;border-radius:9px;padding:12px}
  .nbem-trend-summary th,.nbem-trend-summary td{display:flex;flex-direction:column;gap:3px;border:0!important;padding:8px 4px;font-size:14px;min-width:0}
  .nbem-trend-summary th:first-child{grid-column:1/-1;font-size:17px;border-bottom:1px solid #e6e9ed!important}
  .nbem-trend-summary td:before{content:attr(data-label);font-size:11px;font-weight:600;color:#59636d}
}
.nbem-turnout-context{margin:20px 0;padding:20px;background:#fff;border:1px solid #d9dfe5;border-radius:9px;max-width:1100px}
.nbem-turnout-context h3{margin:0 0 10px}
.nbem-turnout-context>p{max-width:900px}
.nbem-turnout-bars{display:grid;gap:12px;margin:18px 0}
.nbem-turnout-row{display:grid;grid-template-columns:50px minmax(0,1fr) 65px;gap:12px;align-items:center;font-size:14px}
.nbem-turnout-track{height:15px;background:#e8edf2;border-radius:5px;overflow:hidden}
.nbem-turnout-track span{display:block;height:100%;background:#397aa5}
.nbem-turnout-note{font-size:13px;color:#59636d}

/* v0.2.5: scoped, readable trend statistics on narrow viewports. */
.nbem-app-content .nbem-trends{width:100%;min-width:0;max-width:100%;font-size:15px;line-height:1.5}
.nbem-app-content .nbem-trends>h3{font-size:clamp(20px,3.5vw,26px);line-height:1.25}
.nbem-app-content .nbem-trends>svg{display:block;width:100%;height:auto}
.nbem-app-content .nbem-trend-summary table{font-size:14px;line-height:1.4}
.nbem-app-content .nbem-trends p small{font-size:13px;line-height:1.55}
@media(max-width:700px){
 .nbem-app-content .nbem-trend-summary{overflow:visible;width:100%}
 .nbem-app-content .nbem-trend-summary table{display:block;width:100%;min-width:0!important;border:0}
 .nbem-app-content .nbem-trend-summary thead{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important}
 .nbem-app-content .nbem-trend-summary tbody{display:grid;width:100%;grid-template-columns:minmax(0,1fr);gap:12px}
 .nbem-app-content .nbem-trend-summary tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;width:100%;padding:12px;background:#fff;border:1px solid #d9dfe5;border-radius:9px}
 .nbem-app-content .nbem-trend-summary th,.nbem-app-content .nbem-trend-summary td{display:flex;flex-direction:column;gap:4px;min-width:0;width:auto;padding:8px 3px;border:0!important;font-size:14px!important;line-height:1.4;text-align:left;overflow-wrap:anywhere}
 .nbem-app-content .nbem-trend-summary th:first-child{grid-column:1/-1;font-size:17px!important;border-bottom:1px solid #e6e9ed!important}
 .nbem-app-content .nbem-trend-summary td::before{content:attr(data-label);font-size:11px;font-weight:700;color:#59636d}
 .nbem-app-content .nbem-trends>svg{min-height:165px}
}
@media(max-width:360px){.nbem-app-content .nbem-trend-summary tr{grid-template-columns:minmax(0,1fr)}}

/* v0.2.6: assumption transparency and crossover */
.nbem-assumptions,.nbem-evidence,.nbem-crossover{border:1px solid #d9dfe5;background:#f8fafc;border-radius:8px;padding:13px 16px;margin:14px 0;font-size:14px;line-height:1.6}
.nbem-assumptions p{margin:0 0 9px}.nbem-assumptions p:last-child{margin-bottom:0}
.nbem-crossover{background:#fff;border-left:4px solid #397aa5}
.nbem-crossover small{display:block;color:#59636d}

/* v0.2.7 desktop milestone presentation */
.nbem-replacement,.nbem-crossover{padding:10px 12px;margin:8px 0;border:1px solid #e0e5eb;border-left:3px solid #8a6d39;border-radius:5px;background:#fafbfc;font-size:14px}
.nbem-calculation{border:1px solid #dce2e9;border-radius:6px;padding:12px;margin:16px 0;background:#f9fafc}
.nbem-calculation summary{cursor:pointer;font-weight:600;font-size:14px}
.nbem-calculation-body{font-size:13px;line-height:1.6;max-width:1100px}
.nbem-legend i{display:inline-block;width:15px;height:4px;vertical-align:middle;margin-right:5px}
