/* Styles limited to this software page; catalog settings are unchanged. */
body:has(#cm-software) #pagetitle{font-size:clamp(28px,3.1vw,44px);line-height:1.15;font-weight:750;letter-spacing:-1.1px;color:#172230;margin:12px 0 24px}
#cm-software{--cm-blue:#0878ed;--cm-line:#e2e9f1;--cm-ink:#172230;color:var(--cm-ink);font-family:inherit;font-size:16px;line-height:1.65;min-width:0}
#cm-software *,#cm-software *:before,#cm-software *:after{box-sizing:border-box}
#cm-software a{transition:background .18s,color .18s,border-color .18s;text-decoration:none}
#cm-software a:focus-visible{outline:3px solid #75baff;outline-offset:4px}
#cm-software .cm-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 28px;padding:0 0 22px;border-bottom:1px solid var(--cm-line)}
#cm-software .cm-tabs{display:flex;flex-wrap:wrap;gap:8px}
#cm-software .cm-tabs a{display:inline-flex;padding:9px 18px;border:1px solid var(--cm-line);border-radius:8px;color:#526171;background:#fff;font-weight:600;line-height:1.5}
#cm-software .cm-tabs a[aria-current=page]{background:#edf6ff;border-color:#acd3ff;color:#006bd5}
#cm-software .cm-catalog{display:inline-flex;align-items:center;gap:12px;color:var(--cm-blue);font-weight:650;font-size:15px}
#cm-software .cm-catalog:after{content:'→';font-size:23px}
#cm-software .cm-list{display:grid;gap:22px}
#cm-software .cm-app{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:30px;align-items:center;border:1px solid var(--cm-line);border-radius:14px;background:#fff;padding:30px;min-width:0}
#cm-software .cm-copy{min-width:0}
#cm-software .cm-app h3{font-size:26px;font-weight:700;letter-spacing:-.5px;line-height:1.25;color:var(--cm-ink);margin:0 0 18px;padding:0}
#cm-software .cm-app p{font-size:15px;line-height:1.8;color:#5b6674;margin:0 0 14px}
#cm-software .app-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 0}
#cm-software .link_button_scanners{background:var(--cm-blue);color:white;border:1px solid var(--cm-blue);padding:11px 17px;border-radius:7px;line-height:1.5;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:12px}
#cm-software .link_button_scanners:after{content:'↗';font-size:18px}
#cm-software .link_button_scanners:hover{background:#0066cf;color:white}
#cm-software .app-images-grid{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x proximity;min-width:0;padding:3px 0 10px;margin:0;align-items:center}
#cm-software .cm-shot{display:block;flex:0 0 calc((100% - 20px)/3);min-width:0;scroll-snap-align:start;border-radius:8px;overflow:hidden;background:#f5f7fa}
#cm-software .cm-shot img{display:block;width:100%;height:260px;object-fit:contain;border-radius:6px;transform:none}
#cm-software .cm-recommend{background:#eff7ff;border:1px solid #dcecff;border-radius:14px;padding:24px;min-width:0}
#cm-software .cm-rec-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}
#cm-software .cm-rec-head h2{font-size:25px;line-height:1.3;letter-spacing:-.5px;margin:0;padding:0;color:var(--cm-ink)}
#cm-software .cm-secondary{background:#f7f9fc;border-color:var(--cm-line)}
#cm-software .catalog-section{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0!important;padding:0!important;min-width:0}
#cm-software .catalog-section .row,#cm-software .catalog-section [class*=col-]{display:contents!important}
#cm-software .catalog-section .row:before,#cm-software .catalog-section .row:after{display:none!important}
#cm-software .product-item-container{position:relative!important;float:none!important;width:auto!important;min-width:0;padding:0!important;height:auto!important}
#cm-software .product-item{display:grid!important;grid-template-columns:105px minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:16px;row-gap:8px;border:1px solid var(--cm-line)!important;border-radius:10px;padding:18px!important;margin:0!important;background:white;box-shadow:none!important;height:100%;position:relative!important;min-width:0}
#cm-software .product-item-image-wrapper{grid-column:1;grid-row:1 / span 3;display:block;position:relative!important;align-self:center;width:105px!important;height:112px!important;margin:0!important;padding:0!important;border:0}
#cm-software .product-item-image-original{position:absolute;inset:0;display:block!important;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;opacity:1!important}
#cm-software .product-item-image-alternative,#cm-software .product-item-image-slider-control-container{display:none!important}
#cm-software .product-item-title{grid-column:2;margin:0!important;padding:0!important;white-space:normal!important;font-size:14px!important;line-height:1.45!important;height:auto!important;overflow-wrap:anywhere}
#cm-software .product-item-title a{color:var(--cm-ink);font-weight:600;white-space:normal!important}
#cm-software .product-item-info-container{grid-column:2;margin:0!important;padding:0!important;position:static!important;opacity:1!important;visibility:visible!important}
#cm-software .product-item-price-current{font-size:21px!important;font-weight:700;color:var(--cm-ink);white-space:nowrap}
#cm-software .product-item-hidden{display:block!important;height:auto!important;opacity:1!important;visibility:visible!important}
#cm-software .product-item-button-container{margin:0!important}
#cm-software .product-item .btn{display:inline-block;color:#0670dc!important;background:#fff!important;border:1px solid #a7cff7!important;border-radius:6px;padding:7px 13px!important;font-size:13px!important;line-height:1.5!important;text-decoration:none;white-space:normal}
#cm-software .product-item .btn:hover{background:#edf6ff!important}
#cm-software .cm-bottom{display:flex;justify-content:center;padding:26px 0 6px}
@media(max-width:1000px){#cm-software .cm-app{gap:22px;padding:24px}#cm-software .cm-shot img{height:220px}#cm-software .product-item{grid-template-columns:85px minmax(0,1fr);gap:10px;padding:14px!important}#cm-software .product-item-image-wrapper{width:85px!important;height:95px!important}}
@media(max-width:700px){body:has(#cm-software) #pagetitle{letter-spacing:-.7px}#cm-software .cm-nav{gap:12px;margin-bottom:20px}#cm-software .cm-tabs{width:100%}#cm-software .cm-tabs a{padding:8px 15px}#cm-software .cm-app{grid-template-columns:minmax(0,1fr);padding:20px;gap:22px}#cm-software .cm-app h3{font-size:24px}#cm-software .cm-copy{order:0}#cm-software .app-images-grid{order:1;margin:0 -2px}#cm-software .cm-shot{flex-basis:43%}#cm-software .cm-shot img{height:245px}#cm-software .cm-recommend{padding:18px}#cm-software .cm-rec-head h2{font-size:23px}#cm-software .catalog-section{grid-template-columns:minmax(0,1fr)}#cm-software .cm-list{gap:18px}#cm-software .product-item{grid-template-columns:85px minmax(0,1fr)}}

/* Shared support navigation and legacy article presentation. */
#cm-software{overflow-wrap:anywhere}
#cm-software img{max-width:100%;height:auto}
#cm-software .cm-global-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 24px;padding:12px;background:#f5f7fa;border:1px solid #e2e9f1;border-radius:12px}
#cm-software .cm-global-nav>a,#cm-software summary{padding:9px 13px;color:#47576a;font-size:14px;line-height:1.5;border-radius:7px;cursor:pointer}
#cm-software .cm-global-nav>a:hover,#cm-software summary:hover{background:#e7eff8;color:#0670dc}
#cm-software .cm-global-nav a[aria-current=page]{background:#e4f1ff;color:#006bd5;font-weight:600}
#cm-software .cm-brand-menu{position:relative}
#cm-software .cm-brand-grid{position:absolute;z-index:30;top:calc(100% + 10px);left:0;width:480px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:14px;border:1px solid #dce5f0;border-radius:12px;background:white;box-shadow:0 12px 32px #22334a22}
#cm-software .cm-brand-grid a{padding:8px 10px;border-radius:6px;color:#33475b;font-size:14px}
#cm-software .cm-brand-grid a:hover{background:#edf6ff}
#cm-software .cm-kicker{font-size:12px;font-weight:700;letter-spacing:1.3px;color:#7b8898}
#cm-software .cm-article{display:flow-root;padding:30px;border:1px solid #e2e9f1;border-radius:14px;background:#fff;min-width:0;color:#526171}
#cm-software .cm-article h2,#cm-software .cm-app h2{font-size:26px;line-height:1.3;color:#172230;margin:0 0 20px;letter-spacing:-.5px}
#cm-software .cm-article h3{font-size:21px;line-height:1.4;color:#172230;margin:22px 0 14px}
#cm-software .cm-article p{margin:0 0 16px;line-height:1.8}
#cm-software .cm-article p:last-child{margin-bottom:0}
#cm-software .cm-article li,#cm-software .cm-copy li{margin-bottom:8px}
#cm-software .cm-article a:not(.cm-download){color:#0878ed}
#cm-software .cm-lead-image{float:right;width:36%;max-width:360px;margin:0 0 22px 28px;text-align:center}
#cm-software .cm-lead-image img{max-height:300px;object-fit:contain;border-radius:8px}
#cm-software .cm-download{display:inline-flex;align-items:center;max-width:100%;margin:5px 4px 5px 0;padding:11px 17px;border:1px solid #0878ed;background:#0878ed;border-radius:7px;color:#fff;font-size:14px;font-weight:600;line-height:1.5}
#cm-software .cm-download:hover{background:#0066cf;color:#fff}
#cm-software .cm-desktop-shots .cm-shot{flex-basis:100%}
#cm-software .cm-desktop-shots img{height:auto;max-height:320px;width:100%;object-fit:contain}
#cm-software .cm-table-scroll{overflow-x:auto;max-width:100%;margin:20px 0}
#cm-software table{border-collapse:collapse;width:100%;font-size:14px}
#cm-software td,#cm-software th{padding:12px;border:1px solid #e2e9f1;vertical-align:top}
#cm-software th{background:#f5f8fc}
#cm-software .cm-related,.cm-support-tail .cm-related{margin:34px 0 20px;padding-top:28px;border-top:1px solid #e2e9f1}
#cm-software .cm-related h2,.cm-support-tail h2{font-size:24px;line-height:1.3;color:#172230;margin:0 0 18px}
#cm-software .cm-related-grid,.cm-support-tail .cm-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#cm-software .cm-related-link,.cm-support-tail .cm-related-link{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;background:#f7f9fc;border:1px solid #e2e9f1;border-radius:10px;color:#254564;line-height:1.45;text-decoration:none;font-size:15px}
#cm-software .cm-related-link:after,.cm-support-tail .cm-related-link:after{content:'→';color:#0878ed}
#cm-software .cm-related-link:hover,.cm-support-tail .cm-related-link:hover{background:#edf6ff;border-color:#b7d8fa}
#cm-software .cm-preview-note{padding:20px;border:1px dashed #a6bfd8;background:#f7fbff;color:#53697e;font-size:14px}
@media(max-width:700px){#cm-software .cm-global-nav{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:8px}#cm-software .cm-global-nav>a,#cm-software summary{padding:8px;font-size:13px}#cm-software .cm-brand-menu{position:static}#cm-software .cm-global-nav{position:relative}#cm-software .cm-brand-grid{left:0;top:100%;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));max-height:60vh;overflow-y:auto}#cm-software .cm-article{padding:20px}#cm-software .cm-article h2,#cm-software .cm-app h2{font-size:24px}#cm-software .cm-lead-image{float:none;width:100%;max-width:none;margin:0 0 20px}#cm-software .cm-lead-image img{max-height:250px}#cm-software .cm-related-grid,.cm-support-tail .cm-related-grid{grid-template-columns:1fr}#cm-software .cm-related-link,.cm-support-tail .cm-related-link{padding:16px}#cm-software .cm-desktop-shots .cm-shot{flex-basis:100%}}
#cm-software .elm327-programs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
#cm-software .elm327-link{display:flex;flex-direction:column;padding:26px;border:1px solid #e2e9f1;border-radius:14px;color:#172230;background:#fff;min-width:0}
#cm-software .elm327-link:hover{border-color:#a7cff7;background:#f8fbff}
#cm-software .elm327-link h2{font-size:23px;line-height:1.3;margin:0 0 20px}
#cm-software .elm327-link img{height:170px;width:100%;object-fit:contain;margin-bottom:20px}
#cm-software .elm327-link p{font-size:15px;color:#526171;margin:0;line-height:1.75}
@media(max-width:700px){#cm-software .elm327-programs{grid-template-columns:1fr}}
/* Image links keep a real URL as a fallback; the viewer is scoped separately. */
#cm-software a.cm-image-zoom{cursor:zoom-in}
#cm-software a.cm-image-zoom:not(.cm-shot){display:inline-block;max-width:100%}
#cm-software a.cm-image-zoom img,#cm-software img.img-hover{transform:none!important;transition:none!important;box-shadow:none!important}
#cm-image-dialog{position:fixed;inset:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;background:rgba(13,21,31,.97);color:white;overflow:hidden;font:15px/1.5 Arial,sans-serif;box-sizing:border-box}
#cm-image-dialog::backdrop{background:rgba(0,0,0,.85)}
#cm-image-dialog *{box-sizing:border-box}
#cm-image-dialog .cm-view-toolbar{height:66px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 22px;border-bottom:1px solid #ffffff22}
#cm-image-dialog .cm-view-toolbar>div{display:flex;gap:8px}
#cm-image-dialog button{appearance:none;border:1px solid #ffffff55;background:#263342;color:#fff;border-radius:8px;padding:9px 14px;font:inherit;cursor:pointer}
#cm-image-dialog button:focus-visible{outline:3px solid #77c6ff;outline-offset:3px}
#cm-image-dialog button:hover{background:#3b5066}
#cm-image-dialog .cm-view-stage{position:absolute;inset:66px 0 64px;overflow:auto;display:flex;align-items:center;justify-content:center;padding:16px;overscroll-behavior:contain;touch-action:pan-x pan-y}
#cm-image-dialog .cm-view-stage.is-zoomed{display:block;text-align:center}
#cm-image-dialog img{display:block;flex:none;max-width:none!important;max-height:none!important;object-fit:contain;margin:auto;cursor:zoom-in;background:#fff;user-select:none}
#cm-image-dialog img[hidden]{display:none}
#cm-image-dialog .is-zoomed img{cursor:grab}
#cm-image-dialog .cm-view-prev,#cm-image-dialog .cm-view-next{position:absolute;top:50%;transform:translateY(-50%);font-size:34px;line-height:1;width:46px;height:54px;padding:0;background:#263342dd;z-index:2}
#cm-image-dialog .cm-view-prev{left:12px}#cm-image-dialog .cm-view-next{right:12px}
#cm-image-dialog button[hidden]{display:none}
#cm-image-dialog .cm-view-caption{position:absolute;bottom:0;left:0;right:0;height:64px;display:flex;align-items:center;justify-content:center;padding:8px 20px;color:#d7e3f0;text-align:center;font-size:13px;overflow:auto}
@media(max-width:600px){#cm-image-dialog .cm-view-toolbar{padding:10px 12px}#cm-image-dialog button{padding:8px 10px;font-size:13px}#cm-image-dialog .cm-view-prev,#cm-image-dialog .cm-view-next{width:34px;height:44px;font-size:28px}#cm-image-dialog .cm-view-prev{left:4px}#cm-image-dialog .cm-view-next{right:4px}}
