/* 2.25.0: scoped educational variance visualisation. No rules affect other tools. */
.mcp-tool[data-mcp-tool="variance"]{min-width:0}
.mcp-tool[data-mcp-tool="variance"] [hidden]{display:none!important}
.mcp-v-inputs{grid-template-columns:repeat(3,minmax(0,1fr))}
.mcp-v-inputs .mcp-number-panel{min-width:0}
.mcp-v-inputs input{display:block!important;width:100%;min-width:0;max-width:100%;min-height:48px}
.mcp-v-assumptions{font-size:.92rem;border-left:3px solid var(--mcp-primary,#00a878);padding:.6rem .9rem;background:var(--mcp-white,#fff)}
.mcp-v-presets{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:.9rem 0}
.mcp-v-presets span{font-size:.9rem}
.mcp-v-presets button{min-height:44px;padding:.5rem .8rem;border:1px solid #c6cecb;border-radius:8px;background:#fff;color:var(--mcp-ink,#202030);font:inherit;cursor:pointer}
.mcp-v-presets button[aria-pressed="true"]{border-color:var(--mcp-ink,#202030);box-shadow:inset 0 0 0 1px var(--mcp-ink,#202030)}
.mcp-tool[data-mcp-tool="variance"] button:focus-visible,.mcp-v-table-wrap:focus-visible{outline:3px solid var(--mcp-primary,#00a878);outline-offset:3px}
.mcp-v-announcement{font-size:.9rem;color:var(--mcp-muted,#5d6670)}
.mcp-v-announcement:empty{display:none}
.mcp-v-error{border:1px solid #a42138;background:#fff5f6;padding:1rem;border-radius:10px;color:#752132}
.mcp-v-output{margin-top:1.2rem;min-width:0}
.mcp-v-output>[data-v-summary]{scroll-margin-top:110px;margin-bottom:.4rem}
.mcp-v-output>[data-v-summary]:focus{outline:none}
.mcp-v-output>[data-v-input-summary]{font-size:.9rem}
.mcp-v-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.mcp-v-metrics>div{padding:1rem;border:1px solid #d4dbd8;background:#fff;border-radius:12px;min-width:0}
.mcp-v-metrics span{display:block;font-size:.82rem;line-height:1.45;color:var(--mcp-muted,#5d6670);margin-bottom:.35rem}
.mcp-v-metrics strong{display:block;font-size:1.22rem;line-height:1.4;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.mcp-v-figure{margin:1rem 0;border:1px solid #d4dbd8;background:#fff;border-radius:12px;padding:.8rem;min-width:0}
.mcp-v-chart{width:100%;min-width:0}
.mcp-v-chart svg{display:block;width:100%;max-width:100%;height:auto;overflow:hidden;font-family:inherit}
.mcp-v-chart text{font-size:12px;fill:var(--mcp-muted,#5d6670)}
.mcp-v-chart .mcp-v-grid{stroke:#e7e9e8;stroke-width:1}
.mcp-v-chart .mcp-v-zero{stroke:#79818a;stroke-width:1}
.mcp-v-chart .mcp-v-band{fill:var(--mcp-primary,#00a878);fill-opacity:.12;stroke:none}
.mcp-v-chart .mcp-v-mean{fill:none;stroke:#636973;stroke-width:2;stroke-dasharray:7 5}
.mcp-v-chart .mcp-v-path{fill:none;stroke:#086f59;stroke-width:2.2;stroke-linejoin:round}
.mcp-v-figure figcaption{display:flex;gap:.8rem;flex-wrap:wrap;margin:.5rem 0 0;font-size:.79rem;line-height:1.6}
.mcp-v-legend{display:inline-flex;gap:.4rem;align-items:center}
.mcp-v-key{display:inline-block;width:22px;flex:none;height:0;border-top:2px solid #086f59}
.mcp-v-key-mean{border-top:2px dashed #636973}
.mcp-v-key-band{height:10px;border:none;background:#dff0e9}
.mcp-v-path-summary{font-size:.94rem}
.mcp-v-table-wrap{width:100%;max-width:100%;overflow-x:auto;margin:1rem 0;border:1px solid #d4dbd8;border-radius:10px;background:#fff}
.mcp-v-table-wrap table{width:100%;min-width:520px;border-collapse:collapse;font-size:.85rem;line-height:1.5}
.mcp-v-table-wrap caption{text-align:left;padding:.8rem;font-weight:700}
.mcp-v-table-wrap th,.mcp-v-table-wrap td{text-align:left;padding:.7rem .8rem;border-top:1px solid #e1e6e3;vertical-align:top;font-variant-numeric:tabular-nums;white-space:normal}
.mcp-v-table-wrap thead th{background:var(--mcp-surface,#f7f6f2);font-weight:700}
.mcp-v-table-wrap tbody th{min-width:7rem}
.mcp-v-checkpoints{margin:1.2rem 0}
.mcp-v-checkpoints summary{min-height:44px;padding:.6rem;cursor:pointer;font-weight:700}
.mcp-v-limits{font-size:.9rem;border-top:1px solid #d4dbd8;padding-top:1rem}
@media(max-width:1080px){.mcp-v-inputs{grid-template-columns:1fr}}
@media(max-width:560px){.mcp-v-metrics{grid-template-columns:1fr}.mcp-v-figure{padding:.4rem}.mcp-v-metrics strong{font-size:1.15rem}}

.mcp-v-scroll-hint{display:none;font-size:.82rem!important;color:var(--mcp-muted,#5d6670)}
@media(max-width:680px){.mcp-v-scroll-hint{display:block}}
