html:has(.scenario-sticky-summary),body:has(.scenario-sticky-summary){overflow-x:clip}
:root{--scn-label-w:13.5rem;--scn-col-min:0;--scn-count:2}
.scenario-comparison-selector{display:grid;gap:1rem;margin-bottom:1rem;padding:1.125rem;background:#fff;border:1px solid #e9ecf2;border-radius:16px;box-shadow:0 2px 10px rgba(16,24,40,.035);scroll-margin-top:calc(var(--layout-topbar-height) + 1rem)}
.scenario-comparison-selector__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.scenario-comparison-selector__heading h2{margin:0;font-family:var(--font-functional);font-size:.95rem}.scenario-comparison-selector__heading p{margin:.3rem 0 0;color:#667085;font-size:.78rem}.scenario-comparison-selector__heading>strong{color:#667085;font-size:.75rem;font-weight:600}
.scenario-comparison-selector__options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.625rem}.scenario-comparison-option{display:flex;align-items:center;gap:.75rem;min-width:0;padding:.75rem .875rem;background:#fff;border:1px solid #e9ecf2;border-radius:12px;box-shadow:0 1px 3px rgba(16,24,40,.025);cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease}.scenario-comparison-option:hover{border-color:color-mix(in srgb,var(--color-primary) 40%,#e9ecf2)}.scenario-comparison-option.is-selected{border-color:color-mix(in srgb,var(--color-primary) 55%,#fff);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 7%,transparent)}.scenario-comparison-option.is-disabled{opacity:.55;cursor:not-allowed}.scenario-comparison-option__copy{display:grid;min-width:0;gap:.2rem}.scenario-comparison-option__copy strong,.scenario-comparison-option__copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scenario-comparison-option__copy strong{color:#172033;font-size:.82rem}.scenario-comparison-option__copy small{color:#667085;font-size:.72rem}.scenario-comparison-option__badge{margin-left:auto;padding:.22rem .48rem;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 9%,#fff);border-radius:999px;font-size:.65rem;font-weight:700}.scenario-comparison-selector__hint{margin:0;color:#667085;font-size:.7rem}.comparison-notice{margin:.75rem 0;color:#667085;font-size:.8rem}

.scenario-sticky-summary{position:sticky;top:calc(var(--layout-topbar-height) + .5rem);z-index:8;display:grid;grid-template-columns:var(--scn-label-w) minmax(0,1fr);align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem .875rem;background:rgba(255,255,255,.97);border:1px solid #e9ecf2;border-radius:16px;box-shadow:0 8px 24px rgba(16,24,40,.07);backdrop-filter:blur(12px)}.scenario-sticky-summary__intro{display:grid;gap:.2rem}.scenario-sticky-summary__intro strong{color:#172033;font-size:.78rem}.scenario-sticky-summary__intro span{color:#667085;font-size:.68rem}.scenario-sticky-summary__items{display:grid;grid-template-columns:repeat(var(--scn-count),minmax(var(--scn-col-min),1fr))}.scenario-sticky-summary__item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.15rem .5rem;min-width:0;padding:.05rem 1rem;border-left:1px solid #e9ecf2}.scenario-sticky-summary__item .app-badge{grid-column:2;grid-row:1}.scenario-sticky-summary__name{grid-column:1;grid-row:1;min-width:0;padding:0;overflow:hidden;color:#172033;background:transparent;border:0;font:inherit;font-size:.78rem;font-weight:700;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.scenario-sticky-summary__name:hover{color:var(--color-primary)}.scenario-sticky-summary__item>strong{grid-column:1/-1;color:#172033;font-size:.95rem;font-variant-numeric:tabular-nums}.scenario-sticky-summary__item>span:not(.app-badge){grid-column:1;color:#667085;font-size:.68rem}.scenario-sticky-summary__select{grid-column:2;grid-row:3;padding:0;color:var(--color-primary);background:transparent;border:0;font-size:.68rem;font-weight:700;cursor:pointer}.scenario-sticky-summary__select:disabled{opacity:.5}

.scenario-comparison-sections{display:grid;gap:1rem}.scenario-comparison-card{overflow:hidden;background:#fff;border:1px solid #e9ecf2;border-radius:16px;box-shadow:0 2px 12px rgba(16,24,40,.035)}.scenario-comparison-card>h2,.scenario-comparison-card__toolbar{margin:0;padding:1rem 1.125rem;border-bottom:1px solid #e9ecf2}.scenario-comparison-card>h2,.scenario-comparison-card__toolbar h2{color:#172033;font-family:var(--font-functional);font-size:.78rem;font-weight:800;letter-spacing:.035em;text-transform:uppercase}.scenario-comparison-card__toolbar{display:flex;align-items:center;gap:1rem}.scenario-comparison-card__toolbar h2{margin:0}.scenario-package-filters{display:flex;gap:.4rem}.scenario-package-filters button{padding:.35rem .7rem;color:#667085;background:#fff;border:1px solid #e9ecf2;border-radius:999px;font-size:.68rem;font-weight:700;cursor:pointer}.scenario-package-filters button.is-active{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 9%,#fff);border-color:transparent}.scenario-comparison-card__scroll{overflow:visible}.scenario-matrix{display:grid;grid-template-columns:var(--scn-label-w) repeat(var(--scn-count),minmax(var(--scn-col-min),1fr))}.scenario-matrix--2{--scn-count:2}.scenario-matrix--3{--scn-count:3}.scenario-matrix__label,.scenario-matrix__value{min-width:0;min-height:3.85rem;padding:.85rem 1rem;border-top:1px solid color-mix(in srgb,#e9ecf2 70%,transparent)}.scenario-matrix>:nth-child(-n+4){border-top:0}.scenario-matrix--2>:nth-child(4){border-top:1px solid color-mix(in srgb,#e9ecf2 70%,transparent)}.scenario-matrix__label{display:grid;align-content:center;gap:.22rem;background:#fcfcfd}.scenario-matrix__label strong{color:#172033;font-size:.75rem;font-weight:600}.scenario-matrix__label span{color:#667085;font-size:.68rem;line-height:1.4}.scenario-matrix__value{display:flex;align-items:center;color:#172033;font-size:.8rem;font-weight:600;line-height:1.45;overflow-wrap:anywhere}.scenario-matrix__value+.scenario-matrix__value{border-left:1px solid color-mix(in srgb,#e9ecf2 45%,transparent)}.scenario-matrix__value.is-important{font-size:.92rem;font-weight:800}.scenario-matrix__value.is-variance span{color:#16835d}.scenario-matrix__value.is-status span{display:inline-flex;padding:.23rem .5rem;color:#667085;background:#f1f2f5;border-radius:999px;font-size:.68rem;font-weight:700}.scenario-matrix__value.is-package{align-items:flex-start;font-size:.75rem}.sr-only+*{margin-top:0}

@media(max-width:980px){:root{--scn-label-w:11rem}.scenario-sticky-summary__item{padding-inline:.7rem}}
@media(max-width:767px){.scenario-comparison-selector__heading{flex-direction:column;gap:.4rem}.scenario-comparison-selector__options{grid-template-columns:1fr}.scenario-comparison-option__copy strong,.scenario-comparison-option__copy small{overflow:visible;white-space:normal}.scenario-sticky-summary{top:calc(var(--layout-topbar-height) + env(safe-area-inset-top) + .35rem);grid-template-columns:1fr;gap:.6rem;padding:.75rem}.scenario-sticky-summary__intro{display:flex;justify-content:space-between;align-items:center}.scenario-sticky-summary__items{grid-template-columns:1fr}.scenario-sticky-summary__item{grid-template-columns:minmax(0,1fr) auto;padding:.55rem 0;border-top:1px solid #e9ecf2;border-left:0}.scenario-sticky-summary__item .app-badge{grid-column:2;grid-row:1}.scenario-sticky-summary__item>strong{grid-column:1;grid-row:2}.scenario-sticky-summary__item>span:not(.app-badge){grid-column:2;grid-row:2}.scenario-sticky-summary__select{display:none}.scenario-comparison-card__toolbar{align-items:flex-start;flex-direction:column;gap:.7rem}.scenario-comparison-card__scroll{overflow-x:auto;overscroll-behavior-inline:contain}.scenario-matrix{grid-template-columns:9rem repeat(var(--scn-count),minmax(11.5rem,1fr));min-width:calc(9rem + var(--scn-count) * 11.5rem)}.scenario-comparison-card{overflow:hidden}.scenario-matrix__label,.scenario-matrix__value{padding:.8rem}.scenario-matrix__label{position:sticky;left:0;z-index:1}.scenario-package-filters{max-width:100%;overflow-x:auto}}
@media(prefers-reduced-motion:reduce){.scenario-comparison-option{transition:none}}

.scenario-comparison-results{transition:opacity .15s ease}
.scenario-comparison-results.is-updating{opacity:.6}
.comparison-notice--updating{animation:comparison-fade-in .15s ease}
@keyframes comparison-fade-in{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.scenario-comparison-results{transition:none}.comparison-notice--updating{animation:none}}
