
:root{--charm-sidebar-width:88px;--charm-purple:#005064;--charm-safe-bottom:env(safe-area-inset-bottom,0px)}
html,body{margin:0;min-height:100%;width:100%;overflow-x:hidden}body{padding-left:var(--charm-sidebar-width)}body.charm-modal-open{overflow:hidden}
#spa-shell{min-height:100vh}#spa-view{min-height:100vh;transition:opacity .18s ease,transform .26s cubic-bezier(.22,1,.36,1)}#spa-view.is-leaving{opacity:0;transform:translateY(8px)}#spa-view.is-entering{opacity:0;transform:translateY(8px)}
.charm-sidebar .rail-item.route-active{background:#005064!important;color:#fff!important}.mobile-nav .mobile-nav-item.route-active{color:#005064!important}
.spa-page-loading{position:fixed;top:0;left:0;right:0;height:2px;z-index:100000;pointer-events:none;opacity:0;overflow:hidden}.spa-page-loading:before{content:"";display:block;width:34%;height:100%;background:#005064;transform:translateX(-130%);animation:spaLoad 1s ease-in-out infinite}.spa-page-loading.is-active{opacity:1}@keyframes spaLoad{to{transform:translateX(440%)}}

@media(max-width:900px){body{padding-left:0!important;padding-bottom:calc(76px + var(--charm-safe-bottom))}.charm-sidebar{display:none!important}}@media(min-width:901px){.mobile-nav{display:none!important}}

/* Global footer contract: page CSS may not recolor the shared mobile navigation. */
@media(max-width:900px){.mobile-nav,.mobile-nav *{box-sizing:border-box}.mobile-nav{background:#fff!important;color:#70727a!important}.mobile-nav .mobile-nav-item{background:transparent!important;color:#70727a!important}.mobile-nav .mobile-nav-item.active,.mobile-nav .mobile-nav-item.route-active{background:transparent!important;color:#005064!important}.mobile-nav .mobile-nav-label{color:inherit!important}.mobile-nav .mobile-nav-icon{color:inherit!important}}
