.cb-research-note{border-left:4px solid #6658d3;background:#f4f2ff;padding:1rem 1.2rem;margin:1.5rem 0;color:#29243f}.cb-research-note strong{display:block;margin-bottom:.25rem}.cb-exhibit{margin:2.5rem 0;padding:clamp(1.1rem,3vw,2rem);border:1px solid #dedbea;border-radius:24px;background:#fff;box-shadow:0 18px 55px rgba(31,24,67,.08)}.cb-exhibit__head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1.4rem}.cb-exhibit__kicker{margin:0;color:#6658d3;font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.cb-exhibit h3{margin:.25rem 0 .35rem;font-size:clamp(1.35rem,3vw,2rem);line-height:1.08}.cb-exhibit__sub{margin:0;color:#676276}.cb-exhibit__source{font-size:.78rem;color:#777184;margin:1rem 0 0}.cb-control{display:grid;gap:.45rem;min-width:min(100%,250px);font-size:.82rem;font-weight:700}.cb-control input,.cb-control select,.cb-control textarea{width:100%;accent-color:#6658d3;border:1px solid #cdc8dc;border-radius:10px;background:#fff;padding:.65rem;color:#282335;font:inherit}.cb-control input[type=range]{padding:.25rem 0;border:0}.cb-bars{display:grid;gap:1rem}.cb-bar{display:grid;grid-template-columns:minmax(125px,1.25fr) 3fr 58px;gap:.75rem;align-items:center}.cb-bar__label{font-weight:650;line-height:1.1}.cb-bar__track{height:18px;border-radius:999px;background:linear-gradient(90deg,#ddf4e8 0 35%,#feecc5 35% 65%,#ffe0dc 65%);position:relative;box-shadow:inset 0 0 0 1px rgba(38,31,68,.08)}.cb-bar__mark{position:absolute;left:var(--p);top:50%;width:3px;height:30px;border-radius:5px;background:#29243f;transform:translate(-50%,-50%);transition:left .45s cubic-bezier(.2,.8,.2,1)}.cb-bar__mark::after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:#6658d3;left:50%;top:50%;transform:translate(-50%,-50%)}.cb-bar__value{font-variant-numeric:tabular-nums;font-weight:750;text-align:right}.cb-result{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#dedbea;border:1px solid #dedbea;border-radius:16px;overflow:hidden;margin-top:1.25rem}.cb-result>div{background:#faf9fd;padding:1rem}.cb-result span{display:block;color:#706a7d;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.cb-result strong{display:block;font-size:1.35rem;margin-top:.2rem}.cb-normalize{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:stretch}.cb-normalize__case{padding:1.1rem;border-radius:16px;background:#f5f3fa}.cb-normalize__case.is-new{background:#fff1ee}.cb-normalize__case span,.cb-normalize__case small{display:block;color:#6e687a}.cb-normalize__case strong{display:block;font-size:2rem}.cb-normalize__arrow{align-self:center;font-size:1.5rem;color:#6658d3}.cb-toggle{display:inline-flex;border:1px solid #d9d4e5;border-radius:999px;padding:3px;margin-bottom:1rem}.cb-toggle button{border:0;border-radius:999px;background:transparent;padding:.5rem .8rem;font-weight:700;cursor:pointer}.cb-toggle button[aria-pressed=true]{background:#29243f;color:white}.cb-stack{height:42px;display:flex;border-radius:10px;overflow:hidden;margin:1rem 0}.cb-stack span{display:grid;place-items:center;min-width:42px;color:#fff;font-weight:700;transition:width .45s ease}.cb-stack span:nth-child(1){background:#5547bd}.cb-stack span:nth-child(2){background:#7d70da}.cb-stack span:nth-child(3){background:#aa9fe9}.cb-stack span:nth-child(4){background:#c8c1f0;color:#29243f}.cb-stack span:nth-child(5){background:#e9e6f8;color:#29243f}.cb-matrix{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.cb-matrix>div{min-height:70px;padding:.7rem;border-radius:8px;background:#f3f1f8}.cb-matrix .is-hot{background:#ffe1dc}.cb-matrix .is-warm{background:#fff0cb}.cb-response{display:grid;grid-template-columns:minmax(180px,.75fr) 2fr;gap:1rem}.cb-response__tabs{display:grid;gap:.4rem}.cb-response__tabs button{border:1px solid #d8d3e3;background:#fff;border-radius:10px;text-align:left;padding:.75rem;font-weight:700;cursor:pointer}.cb-response__tabs button[aria-selected=true]{border-color:#6658d3;background:#f2efff;color:#4436a9}.cb-response__output{border-radius:16px;background:#29243f;color:#fff;padding:1.2rem}.cb-response__output p{color:#eeeaf8}.cb-response__output textarea{min-height:185px;background:#373145;border-color:#554e65;color:#fff;resize:vertical}.cb-waterfall{display:flex;align-items:flex-end;gap:.7rem;height:220px;padding-top:1rem}.cb-waterfall__col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;text-align:center}.cb-waterfall__bar{width:min(72px,85%);height:var(--h);min-height:10px;border-radius:10px 10px 3px 3px;background:#6658d3;transition:height .5s ease}.cb-waterfall__col.is-cost .cb-waterfall__bar{background:#ef745f}.cb-waterfall__col.is-save .cb-waterfall__bar{background:#39a875}.cb-waterfall__col strong{font-size:.85rem;margin-top:.5rem}.cb-sort{display:flex;gap:.5rem;margin-bottom:1rem}.cb-sort button{border:1px solid #d8d3e3;background:white;border-radius:999px;padding:.5rem .75rem;font-weight:700;cursor:pointer}.cb-sort button[aria-pressed=true]{background:#29243f;color:#fff}.cb-rank{display:grid;gap:.6rem}.cb-rank__row{display:grid;grid-template-columns:minmax(120px,1fr) 3fr 80px;gap:.7rem;align-items:center;transition:transform .35s ease}.cb-rank__track{height:14px;background:#eeeaf4;border-radius:999px;overflow:hidden}.cb-rank__fill{height:100%;width:var(--w);background:#6658d3;border-radius:999px;transition:width .4s ease}.cb-rank__row.is-negative .cb-rank__fill{background:#39a875}.cb-exhibit button:focus-visible,.cb-exhibit input:focus-visible,.cb-exhibit select:focus-visible,.cb-exhibit textarea:focus-visible{outline:3px solid #f2b84b;outline-offset:2px}
@media(max-width:720px){.cb-exhibit__head,.cb-response{display:grid}.cb-control{min-width:0}.cb-bar{grid-template-columns:105px 1fr 50px;font-size:.82rem}.cb-result{grid-template-columns:1fr}.cb-normalize{grid-template-columns:1fr}.cb-normalize__arrow{transform:rotate(90deg);justify-self:center}.cb-matrix{grid-template-columns:repeat(2,1fr)}.cb-waterfall{height:180px;gap:.3rem}.cb-waterfall__col strong{font-size:.68rem}.cb-rank__row{grid-template-columns:100px 1fr 64px;font-size:.8rem}}
@media(prefers-reduced-motion:reduce){.cb-bar__mark,.cb-stack span,.cb-waterfall__bar,.cb-rank__row,.cb-rank__fill{transition:none}}
