/* CPM DeX directory-only Home Manager layout bridge; never affects existing templates. */
body.cpm-dex-active{margin:0;background:#071824;color:#eaf6ff;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color-scheme:dark}
body.cpm-dex-active *,body.cpm-dex-active *::before,body.cpm-dex-active *::after{box-sizing:border-box}
.dex-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.dex-home-header{height:88px;position:relative;z-index:30;display:flex;align-items:center;gap:24px;padding:12px 26px;background:#06131e;border-bottom:1px solid #1a3445}
.dex-home-brand{display:flex;align-items:center;flex-shrink:0;color:#fff;text-decoration:none;font-weight:800;font-size:22px}
.dex-home-brand img{max-width:240px;max-height:66px;object-fit:contain}
.dex-home-menu-button,.dex-home-sidebar-top button{cursor:pointer;background:#10293b;border:1px solid #274559;color:#fff;border-radius:12px;padding:11px 15px;font-size:21px}
.dex-home-primary{display:flex;gap:16px;align-items:center;min-width:0;flex-wrap:wrap}
.dex-home-primary a{color:#c8e1ee;text-decoration:none;font-size:14px;font-weight:650}
.dex-home-primary a:hover,.dex-home-primary a[aria-current]{color:#3cdbc5}
.dex-home-search{margin-left:auto;min-width:170px;max-width:390px;flex:1}
.dex-home-search input{width:100%;border:1px solid #25465c;border-radius:12px;padding:13px 15px;background:#0b2132;color:#fff;font:inherit}
.dex-home-auth{display:flex;align-items:center;gap:14px;flex-shrink:0}
.dex-home-auth a{color:#d0e5f0;text-decoration:none;font-weight:650}
.dex-home-auth a:first-child{background:linear-gradient(120deg,#24a7dc,#25bd9c);color:#061824;padding:12px 17px;border-radius:12px}
.dex-home-sidebar{position:fixed;z-index:45;top:88px;left:0;bottom:0;width:280px;background:#061824;border-right:1px solid #1c384a;overflow-y:auto;padding:18px;transform:translateX(-105%);transition:transform .2s ease}
body.dex-menu-open .dex-home-sidebar{transform:translateX(0)}
.dex-home-sidebar-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}
.dex-home-sidebar-top .dex-home-brand img{max-width:175px}
.dex-home-side-links{display:flex;flex-direction:column;gap:4px}
.dex-home-side-links a{color:#accddd;text-decoration:none;padding:12px 14px;border-radius:12px}
.dex-home-side-links a:hover,.dex-home-side-links a[aria-current]{background:#15344b;color:#fff}
.dex-home-nav-group{color:#6ea8c1;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:18px 14px 5px}
.dex-home-mobile-nav{display:none}
.dex-home-overlay{position:fixed;inset:88px 0 0;background:#0009;z-index:40}
.dex-home-overlay[hidden]{display:none!important}
body.cpm-dex-active .cpm-dex-directory-main{display:block!important;visibility:visible!important;opacity:1!important;min-height:400px;position:relative;z-index:1}
.dex-home-footer{background:#0b1022;border-top:1px solid #20334a;padding:48px max(20px,4vw) 25px;color:#b6cbdc}
.dex-home-mega{display:grid;grid-template-columns:minmax(220px,1fr) 2fr;gap:50px;max-width:1350px;margin:0 auto}
.dex-home-footer-brand p{line-height:1.8;max-width:440px}
.dex-home-footer-nav{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px 20px}
.dex-home-footer-nav a{color:#b6cbdc;text-decoration:none;font-size:14px;padding:6px 0}
.dex-home-footer-nav .dex-home-nav-group{padding:7px 0;color:#fff}
.dex-home-disclaimer,.dex-home-copyright{max-width:1350px;margin:28px auto 0;text-align:center;font-size:13px;line-height:1.8;color:#829ab0}
.dex-home-disclaimer{border-top:1px solid #27354b;padding-top:25px}
.dex-home-bottom-nav{display:none}
@media(min-width:1200px){body.cpm-dex-active:not(.dex-menu-open) .dex-home-sidebar{transform:translateX(0)}body.cpm-dex-active .cpm-dex-directory-main,body.cpm-dex-active .dex-home-footer{margin-left:280px}body.cpm-dex-active .dex-home-overlay{display:none!important}}
@media(max-width:1199px){.dex-home-primary{display:none}.dex-home-header{gap:14px}.dex-home-brand img{max-width:180px}.dex-home-mobile-nav{display:block}.dex-home-desktop-nav{display:none}}
@media(max-width:700px){.dex-home-header{height:70px;padding:10px 12px}.dex-home-sidebar{top:70px}.dex-home-overlay{inset:70px 0 0}.dex-home-brand img{max-width:130px;max-height:48px}.dex-home-search{min-width:0}.dex-home-search input{padding:10px}.dex-home-auth{display:none}.dex-home-mega{grid-template-columns:1fr}.dex-home-footer-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.dex-home-bottom-nav{display:block;position:fixed;bottom:0;left:0;right:0;z-index:35;background:#0a2030;border-top:1px solid #31516b}.dex-home-bottom-links{display:flex;justify-content:space-around}.dex-home-bottom-links a{color:#d4e5f1;text-decoration:none;font-size:12px;padding:12px 5px}.dex-home-footer{padding-bottom:100px}}
/* V4.154.17: one-row chrome and independently collapsible desktop sidebar. */
body.cpm-dex-active .skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:100}
body.cpm-dex-active .skip-link:focus{left:12px;top:8px;width:auto;height:auto;padding:8px 12px;background:#102c40;color:#fff}
body.cpm-dex-active .dex-home-header{height:88px;min-height:88px;flex-wrap:nowrap;overflow:visible;gap:clamp(10px,1.3vw,22px)}
body.cpm-dex-active .dex-home-header>.dex-home-brand{width:clamp(150px,17vw,245px);min-width:0}
body.cpm-dex-active .dex-home-header>.dex-home-brand img{width:100%;max-width:100%;height:auto;max-height:60px}
body.cpm-dex-active .dex-home-primary{flex:1 1 auto;display:flex;flex-wrap:nowrap;overflow:hidden;white-space:nowrap;gap:clamp(9px,1.1vw,18px)}
body.cpm-dex-active .dex-home-primary a{flex-shrink:0;font-size:clamp(12px,.9vw,14px)}
body.cpm-dex-active .dex-home-search{flex:0 1 260px;min-width:145px;margin-left:0}
body.cpm-dex-active .dex-home-auth{gap:10px}
body.cpm-dex-active .dex-home-sidebar{top:88px;height:calc(100dvh - 88px);bottom:auto;transform:translateX(-105%);box-shadow:none}
body.cpm-dex-active .dex-home-sidebar-top .dex-home-brand{min-width:0;max-width:calc(100% - 60px)}
body.cpm-dex-active .dex-home-sidebar-top .dex-home-brand img{width:100%;max-width:100%;height:auto}
@media(min-width:1200px){
 body.cpm-dex-active:not(.dex-sidebar-collapsed) .dex-home-sidebar{transform:translateX(0)}
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-sidebar{transform:translateX(-105%)}
 body.cpm-dex-active .cpm-dex-directory-main,body.cpm-dex-active .dex-home-footer{margin-left:280px;transition:margin-left .2s ease}
 body.cpm-dex-active.dex-sidebar-collapsed .cpm-dex-directory-main,body.cpm-dex-active.dex-sidebar-collapsed .dex-home-footer{margin-left:0}
 body.cpm-dex-active .dex-home-overlay{display:none!important}
}
@media(min-width:1200px) and (max-width:1480px){body.cpm-dex-active .dex-home-primary{display:none}body.cpm-dex-active .dex-home-search{margin-left:auto}}
@media(max-width:1199px){body.cpm-dex-active .dex-home-primary{display:none}body.cpm-dex-active .dex-home-search{margin-left:auto}body.cpm-dex-active .dex-home-sidebar{transform:translateX(-105%)}body.cpm-dex-active.dex-menu-open .dex-home-sidebar{transform:translateX(0)}}
@media(max-width:700px){body.cpm-dex-active .dex-home-header{height:70px;min-height:70px}body.cpm-dex-active .dex-home-sidebar{top:70px;height:calc(100dvh - 70px)}body.cpm-dex-active .dex-home-header>.dex-home-brand{width:clamp(105px,29vw,150px)}body.cpm-dex-active .dex-home-search{min-width:0;flex:1 1 90px}}

/* V4.154.18: visual parity with the established Home chrome. Scoped to CPM DeX Directory. */
@media(min-width:1200px){
 body.cpm-dex-active .dex-home-header{padding:10px 24px;gap:20px;height:88px}
 body.cpm-dex-active .dex-home-header>.dex-home-brand{width:245px;margin-left:clamp(90px,12vw,245px);margin-right:auto}
 body.cpm-dex-active .dex-home-header>.dex-home-brand img{max-height:65px}
 body.cpm-dex-active .dex-home-primary{display:none!important}
 body.cpm-dex-active .dex-home-search{flex:0 1 570px;max-width:570px;min-width:200px;margin-left:auto}
 body.cpm-dex-active .dex-home-search input{height:56px;padding:14px 20px}
 body.cpm-dex-active .dex-home-auth{min-width:208px;justify-content:flex-end}
 body.cpm-dex-active .dex-home-sidebar{width:300px;padding:16px 12px}
 body.cpm-dex-active .cpm-dex-directory-main,body.cpm-dex-active .dex-home-footer{margin-left:300px}
 body.cpm-dex-active.dex-sidebar-collapsed .cpm-dex-directory-main,body.cpm-dex-active.dex-sidebar-collapsed .dex-home-footer{margin-left:0}
}
body.cpm-dex-active .dex-home-sidebar-top{height:90px;margin-bottom:8px;justify-content:flex-start}
body.cpm-dex-active .dex-home-sidebar-symbol{width:72px;height:75px;overflow:hidden;flex-shrink:0;position:relative}
body.cpm-dex-active .dex-home-sidebar-symbol .dex-home-brand{display:block;width:220px;max-width:none;height:75px;overflow:visible}
body.cpm-dex-active .dex-home-sidebar-symbol .dex-home-brand img{display:block;width:220px;max-width:none;height:75px;max-height:75px;object-fit:contain;object-position:left center}
body.cpm-dex-active .dex-home-sidebar-top>button{display:none}
body.cpm-dex-active .dex-home-side-links{gap:4px}
body.cpm-dex-active .dex-home-side-links a{display:flex;align-items:center;gap:16px;min-height:62px;padding:10px 15px;font-size:18px;line-height:1.25}
body.cpm-dex-active .dex-nav-icon{width:25px;height:25px;flex-shrink:0;color:#a1c9d9}
body.cpm-dex-active .dex-home-nav-group{padding:18px 14px 10px;font-size:12px;letter-spacing:.13em}
body.cpm-dex-active .dex-home-auth a:first-child{background:none;color:#d0e5f0;padding:12px 8px}
body.cpm-dex-active .dex-home-auth a:last-child{background:linear-gradient(120deg,#24a7dc,#25bd9c);color:#061824;padding:13px 19px;border-radius:12px}
@media(min-width:1200px) and (max-width:1480px){body.cpm-dex-active .dex-home-header>.dex-home-brand{margin-left:clamp(15px,6vw,90px)}body.cpm-dex-active .dex-home-search{flex-basis:400px}}
@media(max-width:1199px){body.cpm-dex-active .dex-home-sidebar-top>button{display:block;margin-left:auto}body.cpm-dex-active .dex-home-sidebar-symbol{width:72px}body.cpm-dex-active .dex-home-side-links a{min-height:52px;font-size:16px}}
@media(max-width:700px){body.cpm-dex-active .dex-home-header>.dex-home-brand{margin-left:0}body.cpm-dex-active .dex-home-sidebar-top{height:70px}}

/* V4.154.19: Home drawer favicon and authentic menu2 icon parity. */
body.cpm-dex-active .dex-home-sidebar-symbol{width:80px;height:84px;overflow:visible;display:flex;align-items:center}
body.cpm-dex-active .dex-home-sidebar-symbol .dex-home-sidebar-brand{width:76px;height:76px;max-width:76px;display:flex;align-items:center;justify-content:flex-start;overflow:visible}
body.cpm-dex-active .dex-home-sidebar-symbol .dex-home-sidebar-brand img{width:70px;height:70px;max-width:70px;max-height:70px;object-fit:contain;object-position:center}
body.cpm-dex-active .dex-sidebar-brand-fallback{font-size:38px;font-weight:800}
body.cpm-dex-active .dex-home-side-links .dex-menu-icon{width:25px;height:25px;min-width:25px;max-width:25px;object-fit:contain;display:block;flex-shrink:0}

/* V4.154.20 — Match Home's two desktop sidebar modes; never hide the drawer completely. */
@media (min-width:1200px){
 body.cpm-dex-active .dex-home-sidebar{width:300px;transform:translateX(0)!important;transition:width .22s ease;overflow-x:hidden;scrollbar-width:thin}
 body.cpm-dex-active .cpm-dex-directory-main,body.cpm-dex-active .dex-home-footer{margin-left:300px;transition:margin-left .22s ease}
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-sidebar{width:100px;transform:translateX(0)!important;padding-left:10px;padding-right:10px}
 body.cpm-dex-active.dex-sidebar-collapsed .cpm-dex-directory-main,body.cpm-dex-active.dex-sidebar-collapsed .dex-home-footer{margin-left:100px}
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-sidebar-top{justify-content:center;height:84px}
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-sidebar-symbol{width:72px;justify-content:center}
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-sidebar-symbol .dex-home-sidebar-brand{justify-content:center}
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-sidebar-symbol .dex-home-sidebar-brand img{width:58px;height:58px;max-width:58px;max-height:58px}
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-side-links{gap:8px}
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-side-links a{width:72px;min-height:64px;max-height:64px;margin:0 auto;padding:12px;justify-content:center;gap:0;overflow:hidden}
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-side-links a .dex-nav-text,
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-nav-group{display:none!important}
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-side-links .dex-menu-icon{width:28px;height:28px;min-width:28px;max-width:28px}
 body.cpm-dex-active.dex-sidebar-collapsed .dex-home-sidebar-top>button{display:none}
}
