/* MedMeters v13 — shared visual language and native scroll chaining.
   Components are deliberately namespaced so pre-existing article, protocol and print styles remain stable. */
:root{--mm13-ink:#123a2b;--mm13-green:#0d704b;--mm13-soft:#f0f8f1;--mm13-line:#d8e9dc}
.mmv13-strip,.mmv13-clinical-showcase,.mmv13-image-story{font-family:Manrope,'DM Sans',system-ui,sans-serif;box-sizing:border-box}
.mmv13-strip *,.mmv13-clinical-showcase *,.mmv13-image-story *{box-sizing:border-box}
.mmv13-strip{background:linear-gradient(115deg,#ecf7ee,#f9fcf8);border-top:1px solid var(--mm13-line);border-bottom:1px solid var(--mm13-line);padding:17px 0;margin:0;color:var(--mm13-ink)}
.mmv13-inner{width:min(1210px,calc(100% - 48px));margin:0 auto}
.mmv13-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.mmv13-stat{min-width:0;display:flex;align-items:flex-start;gap:12px;padding:11px 22px;border-right:1px solid #d4e6d8}
.mmv13-stat:first-child{padding-left:0}.mmv13-stat:last-child{border-right:0;padding-right:0}
.mmv13-icon{height:38px;width:38px;flex:0 0 38px;display:grid;place-items:center;background:#ddf2e3;border-radius:12px;color:#117e52}
.mmv13-icon svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.mmv13-stat strong{font-size:13px;line-height:1.45;letter-spacing:-.02em;display:block;font-weight:850}
.mmv13-stat span:not(.mmv13-icon){display:block;font-size:10px;line-height:1.6;color:#607e6e;margin-top:3px}
.mmv13-storywrap{width:min(1210px,calc(100% - 48px));margin:28px auto 36px}
.mmv13-clinical-showcase{display:grid;grid-template-columns:minmax(230px,.55fr) 1fr;overflow:hidden;background:#fff;border:1px solid var(--mm13-line);border-radius:20px;box-shadow:0 12px 34px #133e2910}
.mmv13-showcase-image{min-height:205px;height:100%;position:relative;background:#dae8df;margin:0;overflow:hidden}
.mmv13-showcase-image img{height:100%;width:100%;object-fit:cover;display:block}
.mmv13-showcase-image figcaption{position:absolute;bottom:12px;left:12px;right:12px;color:#fff;background:#062d25be;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:700;backdrop-filter:blur(7px)}
.mmv13-showcase-body{padding:22px 24px;display:flex;flex-direction:column;justify-content:center;gap:12px}
.mmv13-kicker{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#168056;font-weight:900}
.mmv13-showcase-body>h2{font-size:22px!important;line-height:1.24!important;letter-spacing:-.045em!important;margin:0!important;color:var(--mm13-ink)!important}
.mmv13-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.mmv13-point{background:#f2f9f4;border:1px solid #e0eee3;border-radius:12px;padding:12px 10px;min-width:0}
.mmv13-point .mmv13-icon{width:27px;height:27px;flex-basis:27px;border-radius:8px;margin-bottom:8px;background:#e0f2e3}
.mmv13-point .mmv13-icon svg{width:16px;height:16px}
.mmv13-point b{display:block;font-size:11px;color:#154d35;line-height:1.45}
.mmv13-point span:not(.mmv13-icon){display:block;font-size:9px;color:#6d8775;line-height:1.48;margin-top:3px}
.mmv13-notice{color:#728e7c;font-size:9px;line-height:1.6;margin:0}
.mmv13-inline-story{display:grid;grid-template-columns:140px 1fr;gap:13px;align-items:center;background:#f6fbf7;border:1px solid #dbeade;border-radius:15px;padding:12px;margin:18px 0}
.mmv13-inline-story img{width:140px;height:110px;object-fit:cover;border-radius:10px;display:block}
.mmv13-inline-story b{font-size:12px;color:#174e36;display:block;margin-bottom:4px}
.mmv13-inline-story p{font-size:10px!important;line-height:1.65!important;color:#6e8878;margin:0!important}
.mmv13-inline-story small{font-size:9px;color:#859b88;display:block;margin-top:6px}
/* Small visual cues on legacy components */
.sp-page .sp-point{position:relative;padding-left:36px!important}
.sp-page .sp-point::before{content:'✓';position:absolute;left:12px;top:50%;transform:translateY(-50%);background:#daf2e3;color:#167a52;border-radius:50%;width:17px;height:17px;font-size:11px;font-weight:900;text-align:center;line-height:17px}
.sp-page .sp-hub-card,.sp-page .sp-protocol,.mmv13-illustrated-card{transition:box-shadow .2s ease,transform .2s ease}
.sp-page .sp-hub-card:hover,.mmv13-illustrated-card:hover{box-shadow:0 16px 30px #123e2f20;transform:translateY(-2px)}
.mmv13-tiny-thumb{display:inline-block;vertical-align:middle;width:44px;height:44px;border-radius:9px;object-fit:cover;margin-right:9px}
/* No left scroll container on either catalog. Results naturally hand the wheel back to the document at their boundary. */
.v11-page .v11-catalog-columns{height:auto!important;min-height:765px;align-items:stretch;grid-template-columns:295px minmax(0,1fr)}
.v11-page .v11-catalog-families{height:auto!important;max-height:none!important;overflow:visible!important;overscroll-behavior:auto!important;padding:12px 11px 13px;align-self:stretch}
.v11-page .v11-family{padding:6px 8px;margin:2px 0;gap:9px}
.v11-page .v11-family img{width:42px;height:42px}
.v11-page .v11-catalog-results{height:810px;max-height:810px;min-height:0;overflow-y:auto;overscroll-behavior:auto!important;scrollbar-gutter:stable}
.v11-page .v11-catalog{overflow:clip}
.v11-page .v11-catalog-results{scroll-behavior:auto}
/* The detailed library uses the same one-scroll arrangement. */
#catalogExplore .catalog-grid{height:auto!important;min-height:710px;overflow:visible!important;align-items:start}
#catalogExplore .cat-side{height:auto!important;max-height:none!important;overflow:visible!important;overscroll-behavior:auto!important}
#catalogExplore .cat-content{height:750px;max-height:750px;overflow-y:auto;overscroll-behavior:auto!important;scrollbar-gutter:stable}
/* Signals that the list scrolls independently, without nested-wheel traps. */
.v11-page .v11-catalog-results:focus-visible,#catalogExplore .cat-content:focus-visible{outline:2px solid #90cfaa;outline-offset:-2px}
/* Infographics / contact cards in other templates */
.mmv13-tag{display:inline-flex;gap:5px;align-items:center;border:1px solid #d6e9dd;background:#eff8f2;color:#177852;font-size:10px;line-height:1.35;font-weight:800;border-radius:999px;padding:6px 10px}
.mmv13-feature-figure{width:min(1200px,calc(100% - 48px));margin:28px auto;border-radius:18px;overflow:hidden;border:1px solid #dfebe0;background:#f4faf6}
.mmv13-feature-figure img{width:100%;height:225px;object-fit:cover;display:block}
.mmv13-feature-figure figcaption{font-size:10px;color:#7b9584;padding:10px 14px}
/* On narrow screens, category choices are visible without a second scroll region. */
@media(max-width:980px){.v11-page .v11-catalog-columns{grid-template-columns:245px minmax(0,1fr)}.v11-page .v11-catalog-results{height:780px;max-height:780px}.mmv13-points{gap:6px}.mmv13-showcase-body{padding:18px}}
@media(max-width:760px){.mmv13-inner,.mmv13-storywrap{width:calc(100% - 28px)}.mmv13-grid{grid-template-columns:1fr;gap:0}.mmv13-stat{padding:10px 0;border-right:0;border-bottom:1px solid #dcebdd}.mmv13-stat:last-child{border-bottom:0}.mmv13-clinical-showcase{grid-template-columns:1fr}.mmv13-showcase-image{height:215px;min-height:215px}.mmv13-points{grid-template-columns:repeat(3,minmax(0,1fr))}.v11-page .v11-catalog-columns{display:block;min-height:0}.v11-page .v11-catalog-families{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;overflow:visible!important;max-height:none!important}.v11-page .v11-family{width:auto!important;flex:none!important;min-height:0;margin:0;gap:8px;padding:7px 6px}.v11-page .v11-family img{width:33px;height:33px}.v11-page .v11-family b{font-size:10px}.v11-page .v11-catalog-results{height:min(68vh,650px);max-height:min(68vh,650px)}#catalogExplore .catalog-grid{display:block;min-height:0}#catalogExplore .cat-side{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none!important;height:auto!important;overflow:visible!important;gap:4px}#catalogExplore .cat-side .side-label{grid-column:1/-1}#catalogExplore .cat-content{height:min(68vh,650px);max-height:min(68vh,650px)}.mmv13-feature-figure img{height:170px}}
@media(max-width:460px){.mmv13-points{grid-template-columns:1fr}.mmv13-point{display:flex;align-items:center;gap:9px}.mmv13-point .mmv13-icon{margin:0;flex-shrink:0}.mmv13-inline-story{grid-template-columns:95px 1fr}.mmv13-inline-story img{width:95px;height:95px}.v11-page .v11-family img{width:28px;height:28px}.v11-page .v11-family{padding:5px}.v11-page .v11-family-count{padding:2px 4px}}
@media print{.mmv13-strip,.mmv13-storywrap,.mmv13-feature-figure{display:none!important}}
/* Crucial: hidden overflow on the old <main> was swallowing the wheel at the
   end of the nested catalog. Clip only horizontally, without forming a scroll container. */
main.v11-page{overflow-x:clip!important;overflow-y:visible!important}
