
.cm-app-header,.cm-app-drawer,.cm-app-overlay,.cm-app-tabs{display:none}
@media(max-width:991px){
body.cm-app-ready{background:#f3f7fc;padding-top:calc(68px + env(safe-area-inset-top));overflow-x:clip}
body.cm-app-ready.cm-has-tabs{padding-bottom:calc(88px + env(safe-area-inset-bottom))}
.cm-app-ready>.topbar,.cm-app-ready>.site-header,.cm-app-ready .workspace-topbar,.cm-app-ready .main-shell>.topbar,.cm-app-ready .main-shell>.site-header,.cm-app-ready .footer,.cm-app-ready .bottom-nav,.cm-app-ready .home-mobile-shortcuts{display:none!important}
.cm-app-header{position:fixed;inset:0 0 auto;z-index:80;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:calc(68px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 0;background:#fffffff5;border-bottom:1px solid #e2eaf5;box-shadow:0 3px 16px #08204406;box-sizing:border-box}
.cm-app-header button,.cm-app-header a:not(.brand),.cm-drawer-top button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:#0a2548;border-radius:12px;padding:10px;box-sizing:border-box}
.cm-app-header svg,.cm-app-tabs svg,.cm-drawer-top svg{width:22px;height:22px}
.cm-app-brand{font-size:18px!important;gap:7px!important;justify-self:center;color:#082044;text-decoration:none}
.cm-app-brand .brand-mark,.cm-app-brand img{width:30px!important;height:30px!important;min-width:30px;object-fit:contain}
.cm-header-actions{display:flex;justify-content:flex-end;justify-self:end}
.cm-app-header>*{min-width:0}
.cm-app-overlay:not([hidden]){display:block;position:fixed;inset:0;z-index:100;background:#06193280;border:0;backdrop-filter:blur(3px)}
.cm-app-drawer:not([hidden]){display:block;position:fixed;inset:0 auto 0 0;width:min(330px,88vw);box-sizing:border-box;padding:calc(16px + env(safe-area-inset-top)) 18px calc(24px + env(safe-area-inset-bottom));background:#fff;z-index:101;overflow-y:auto;overscroll-behavior:contain;box-shadow:12px 0 40px #06193220}
body.cm-drawer-open{overflow:hidden!important}
.cm-drawer-top{display:flex;justify-content:space-between;align-items:center;color:#082044;font-size:24px}.cm-member{padding:18px;background:linear-gradient(120deg,#071d40,#11517e);color:white;border-radius:18px;margin:18px 0}.cm-member span,.cm-member small{display:block;color:#b9d4ee;font-size:11px}.cm-member strong{display:block;font-size:19px;margin:5px 0}.cm-member a{display:block;color:#fff;margin-top:14px;font-size:13px}
.cm-app-drawer h2{font-size:10px!important;letter-spacing:1.5px;text-transform:uppercase;color:#7890ad;margin:24px 12px 8px!important}.cm-app-drawer nav>a{display:flex;align-items:center;min-height:44px;padding:8px 12px;box-sizing:border-box;color:#183451;font-size:14px;text-decoration:none;border-radius:10px}.cm-app-drawer a[aria-current=page]{color:#0670ef;background:#eaf3ff;font-weight:700}
.cm-app-tabs{position:fixed;inset:auto 0 0;z-index:80;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#fffffff5;border-top:1px solid #dfe8f3;box-shadow:0 -5px 24px #173e6608;padding:8px 4px calc(8px + env(safe-area-inset-bottom));backdrop-filter:blur(16px)}
.cm-app-tabs a{min-height:49px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#73859d;text-decoration:none;font-size:10px;font-weight:600;border-radius:12px}.cm-app-tabs a[aria-current=page]{color:#0767ee;background:#edf5ff}.cm-app-tabs a[aria-current=page] svg{stroke-width:2.2}
.cm-app-ready :is(a,button,input,select,textarea):focus-visible{outline:3px solid #1f83ff;outline-offset:3px}
.cm-app-ready .content{width:100%;padding:22px 0 0;margin:0}.cm-app-ready .app-container{width:calc(100% - 28px)}.cm-app-ready .main-shell{min-width:0}.cm-app-ready .page-heading{margin-bottom:20px;gap:10px}.cm-app-ready .page-heading .eyebrow{font-size:9px;letter-spacing:1.4px}.cm-app-ready .page-heading h1{font-size:26px;line-height:1.25;margin:8px 0}.cm-app-ready .page-heading p{font-size:12px;line-height:1.6}
.cm-app-ready .panel{padding:20px;border-radius:19px;border-color:#e0e9f4;box-shadow:0 4px 20px #13345405;margin-bottom:18px;min-width:0}.cm-app-ready .section-head{margin-bottom:17px}.cm-app-ready .section-head h2{font-size:20px;line-height:1.3;letter-spacing:-.5px}.cm-app-ready .section-head p{font-size:12px;line-height:1.65}
.cm-app-ready .metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px}.cm-app-ready .metric{padding:15px;border-radius:15px;background:#fff;border-color:#e1eaf5}.cm-app-ready .metric strong{font-size:23px;letter-spacing:-.6px;line-height:1.4;overflow-wrap:anywhere}.cm-app-ready .metric-top{font-size:11px;align-items:flex-start}.cm-app-ready .metric-top i{padding:7px}.cm-app-ready .metric small{font-size:10px;line-height:1.6;display:block}
.cm-app-ready .hero-banner{padding:22px;border-radius:20px;margin-bottom:18px}.cm-app-ready .hero-banner h2{font-size:24px}.cm-app-ready .hero-banner p{font-size:13px}.cm-app-ready .dashboard-grid{gap:18px}.cm-app-ready .chart-box{height:230px;max-width:100%}
.cm-app-ready .form-grid{grid-template-columns:minmax(0,1fr)}.cm-app-ready .field{min-width:0}.cm-app-ready input,.cm-app-ready select,.cm-app-ready textarea{max-width:100%;min-height:46px;box-sizing:border-box;font-size:16px}.cm-app-ready .btn{min-height:44px;white-space:normal}.cm-app-ready .filters{gap:12px;padding:14px}.cm-app-ready .filters .field{min-width:min(100%,150px)}.cm-app-ready .table-wrap,.cm-app-ready .tree-scroll{max-width:100%;overflow:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.cm-app-ready .data-table{min-width:100%}.cm-app-ready .tree-scroll{max-height:70vh}.cm-app-ready .notice{font-size:12px;line-height:1.7;padding:15px;border-radius:13px}.cm-app-ready .content p{overflow-wrap:anywhere}
.cm-app-ready .container{width:calc(100% - 32px)}.cm-app-ready .hero{padding:36px 0}.cm-app-ready .hero h1{font-size:40px;line-height:1.12}.cm-app-ready .section{padding:38px 0}.cm-app-ready .auth-wrap{margin:0 auto 24px;border-radius:20px}.cm-app-ready .auth-story{min-height:0;padding:22px}.cm-app-ready .auth-story h1{font-size:28px}.cm-app-ready .auth-form{padding:24px 20px}
}
@media(max-width:360px){.cm-app-brand{font-size:16px!important;gap:5px!important}.cm-app-brand .brand-mark,.cm-app-brand img{width:26px!important;height:26px!important;min-width:26px}.cm-app-ready .panel{padding:16px}.cm-app-ready .metrics{grid-template-columns:minmax(0,1fr)}.cm-app-ready .metric strong{font-size:28px}.cm-app-ready .hero h1{font-size:35px}}
@media print{.cm-app-header,.cm-app-tabs,.cm-app-drawer,.cm-app-overlay{display:none!important}}

@media(max-width:991px){.cm-app-ready .auth-wrap{width:calc(100% - 28px)}.cm-app-ready input[type=checkbox],.cm-app-ready input[type=radio]{min-height:0}.cm-app-ready input[type=file]{font-size:13px}}

.cm-profile-wrap{position:relative}.cm-profile-menu[hidden]{display:none!important}.cm-profile-menu{position:absolute;right:0;top:50px;width:170px;background:#fff;border:1px solid #dfe8f3;border-radius:14px;box-shadow:0 12px 30px #09254624;padding:6px}.cm-app-header .cm-profile-menu a:not(.brand){display:flex;width:100%;height:auto;min-height:44px;justify-content:flex-start;font-size:14px;text-decoration:none}.cm-profile-menu a:hover{background:#edf5ff}

/* Credmed colour refresh: presentation only; no changes to data or actions. */
@media (max-width:991px) {
 body.cm-app-ready{background:radial-gradient(ellipse at 100% 0,#d9f8ef 0,transparent 38%),linear-gradient(150deg,#f0f4ff,#f5f9fc 65%,#eef9f6);color:#152b4d}
 .cm-app-header{background:#fffffffa;border-bottom:2px solid #d3eee9;box-shadow:0 5px 22px #183e7110}
 .cm-app-header button[data-cm-open]{background:#edf2ff;color:#304cab}
 .cm-header-actions{gap:3px}
 .cm-header-actions>a{background:#e4f7f2!important;color:#087565!important}
 .cm-app-header button[data-cm-profile]{background:#f0eaff;color:#7041bc}
 .cm-app-ready .page-heading h1{color:#183c73;letter-spacing:-.8px}
 .cm-app-ready .page-heading .eyebrow{color:#087f7e}
 .cm-app-ready .panel{background:#ffffffed;border:1px solid #e0e8f2;box-shadow:0 7px 24px #173d6c08;border-radius:22px}
 .cm-app-ready .section-head h2{color:#193e70}
 .cm-app-ready .hero-banner{background:linear-gradient(125deg,#123b77,#215bc0 60%,#088d98);border:0;box-shadow:0 12px 26px #215bc026;color:#fff}
 .cm-app-ready .hero-banner h2{color:#fff;line-height:1.3}
 .cm-app-ready .hero-banner p{color:#e1edff}
 .cm-app-ready .hero-banner .eyebrow{color:#9ff1df}
 .cm-app-ready .hero-banner .hero-art{color:#83e9cf}
 .cm-app-ready .hero-banner .btn.primary{background:#fff;color:#174a93;box-shadow:0 5px 15px #052d5633}
 .cm-app-ready .metric{border:1px solid #d7e6fa;background:linear-gradient(135deg,#e9f2ff,#f7fbff);box-shadow:0 6px 16px #154e8610;border-radius:19px}
 .cm-app-ready .metric:nth-child(4n+2){background:linear-gradient(135deg,#def6ee,#f4fcf9);border-color:#c9eade}
 .cm-app-ready .metric:nth-child(4n+3){background:linear-gradient(135deg,#f0e8ff,#fbf8ff);border-color:#e2d7f7}
 .cm-app-ready .metric:nth-child(4n+4){background:linear-gradient(135deg,#fff0dc,#fffaf1);border-color:#f2dfc2}
 .cm-app-ready .metric strong{color:#183e77}
 .cm-app-ready .metric-top,.cm-app-ready .metric small{color:#50647c}
 .cm-app-ready .metric-top i{background:#fff;color:#2861c7;box-shadow:0 3px 9px #203e6810;border-radius:10px}
 .cm-app-ready .metric:nth-child(4n+2) .metric-top i{color:#087a64}
 .cm-app-ready .metric:nth-child(4n+3) .metric-top i{color:#7741b4}
 .cm-app-ready .metric:nth-child(4n+4) .metric-top i{color:#aa6514}
 .cm-app-ready .btn.primary{background:linear-gradient(110deg,#205bd1,#078fba);border-color:transparent;box-shadow:0 6px 15px #2064bb24;border-radius:14px}
 .cm-app-ready .btn:active{transform:translateY(1px)}
 .cm-app-ready input:not([type=checkbox]):not([type=radio]),.cm-app-ready select,.cm-app-ready textarea{background:#f8faff;border-color:#d8e3f1;border-radius:12px;color:#183350}
 .cm-app-ready input:focus,.cm-app-ready select:focus,.cm-app-ready textarea:focus{border-color:#269da9;box-shadow:0 0 0 3px #27aaa014}
 .cm-app-ready .filters{background:#f0f5fc;border-color:#dce7f4;border-radius:17px}
 .cm-app-ready .data-table thead th{background:#edf3fc;color:#375a83}
 .cm-app-ready .cm-app-tabs{inset:auto 8px 8px;border:1px solid #dfE8f2;border-radius:22px;background:#fffffffa;box-shadow:0 6px 30px #19345f22;padding:7px 4px calc(7px + env(safe-area-inset-bottom))}
 .cm-app-tabs a{color:#51647e;border-radius:15px;min-height:51px}
 .cm-app-tabs a[aria-current=page]{color:#fff;background:linear-gradient(140deg,#235ac6,#138eaa);box-shadow:0 4px 10px #2864af24}
 .cm-app-tabs a:nth-child(2):not([aria-current]) svg{color:#138372}
 .cm-app-tabs a:nth-child(3):not([aria-current]) svg{color:#8252bd}
 .cm-app-tabs a:nth-child(4):not([aria-current]) svg{color:#b77824}
 .cm-app-tabs a:nth-child(5):not([aria-current]) svg{color:#c15684}
 .cm-app-drawer:not([hidden]){background:linear-gradient(160deg,#fff,#f1f8fc);border-radius:0 24px 24px 0}
 .cm-member{background:linear-gradient(125deg,#173f87,#167e94);box-shadow:0 8px 20px #174c8225;border:1px solid #ffffff25}
 .cm-member small,.cm-member span{color:#d3f0f3}
 .cm-member a{padding:10px 12px;background:#ffffff16;border-radius:11px}
 .cm-app-drawer h2{color:#39758b}
 .cm-app-drawer a[aria-current=page]{background:linear-gradient(100deg,#dcecff,#e3f7f2);color:#18529b;border-left:3px solid #138ca3}
 .cm-profile-menu{border-color:#dddff4;box-shadow:0 12px 35px #263c6c24}
 .cm-app-header .cm-profile-menu a:last-child{color:#a73753}
 .cm-app-ready .auth-story{background:linear-gradient(130deg,#163f87,#168f9e)}
 .cm-app-ready .hero{background:radial-gradient(ellipse at top right,#d6f8ed,transparent 65%),linear-gradient(145deg,#f0f4ff,#f5faff)}
}

/* Reference layout: compact app home, shortcut tiles and structured screens. */
.cm-home-overview{display:none}
@media(max-width:991px){
 .cm-home-overview{display:block;margin-bottom:16px}
 .cm-home-greeting{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 18px}
 .cm-home-person{display:flex;align-items:center;gap:10px;min-width:0;color:#183350;text-decoration:none}
 .cm-home-avatar{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;background:#e1edf9;border:3px solid #fff;border-radius:50%;color:#25538b;font-size:20px}
 .cm-home-person b{display:block;font-size:16px;line-height:1.4}
 .cm-home-person small{display:block;font-size:10px;color:#536a84;overflow-wrap:anywhere;margin-top:2px}
 .cm-home-bell{width:44px;height:44px;display:grid;place-items:center;color:#204678;text-decoration:none;flex-shrink:0}
 .cm-home-banner{padding:20px 18px;border-radius:17px;background:linear-gradient(125deg,#123b77,#215bc0 60%,#088d98);display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 8px 18px #215bc01c;color:#fff;margin-bottom:18px}
 .cm-home-banner h2{font-size:21px;line-height:1.2;letter-spacing:-.4px;margin:0 0 9px;color:#fff}
 .cm-home-banner p{font-size:10px;line-height:1.5;margin:0;color:#e1edff}
 .cm-home-banner>i{font-size:38px;color:#9ff1df;padding-right:3px}
 .cm-home-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:23px}
 .cm-home-shortcuts a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:106px;padding:12px 7px;background:#ffffffee;border:1px solid #e0e8f2;border-radius:16px;text-decoration:none;box-shadow:0 4px 12px #173d6c06;color:#183350;text-align:center}
 .cm-home-shortcuts a>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#e9f2ff;color:#2861c7;font-size:21px}
 .cm-home-shortcuts a:nth-child(3n+2)>span{background:#def6ee;color:#087a64}
 .cm-home-shortcuts a:nth-child(3n)>span{background:#f0e8ff;color:#7741b4}
 .cm-home-shortcuts a:nth-child(4)>span{background:#fff0dc;color:#aa6514}
 .cm-home-shortcuts b{font-size:11px;line-height:1.35;max-width:95px}
 .cm-home-section-label{font-size:15px;font-weight:700;color:#193e70;margin:0 2px 13px}
 .cm-app-ready .app-container:has(.cm-home-overview)>.page-heading{display:none}
 .cm-app-ready .app-container:has(.cm-home-overview)>.hero-banner{display:none}
 .cm-app-ready .panel{border-radius:17px;padding:18px}
 .cm-app-ready .section-head h2{font-size:18px;letter-spacing:-.3px}
 .cm-app-ready .metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .cm-app-ready .metric{border-radius:15px;padding:14px}
 .cm-app-ready .metric strong{font-size:22px}
 .cm-app-ready .page-heading .eyebrow{display:none}
 .cm-app-ready .page-heading h1{font-size:23px}
 .cm-app-ready .page-heading>div>p{display:none}
 .cm-app-ready .tree-node{min-width:112px;width:128px;padding:12px 8px;border-radius:16px;background:#e6f7f0;border-color:#cce9dd;box-shadow:0 3px 10px #173d6c06}
 .cm-app-ready .tree-node .avatar{width:30px;height:30px;font-size:13px;background:#fff;color:#087a64}
 .cm-app-ready .tree-node strong{font-size:12px;line-height:1.4}
 .cm-app-ready .tree-node small{font-size:9px}
 .cm-app-ready .tree-children>div:first-child>.tree-branch>.tree-node{background:#e9f2ff;border-color:#d7e6fa}
 .cm-app-ready .tree-children>div:last-child>.tree-branch>.tree-node{background:#f0e8ff;border-color:#e2d7f7}
 .cm-app-ready .tree-node.vacant{background:#f8faff;border-style:dashed;box-shadow:none}
 .cm-app-ready .auth-wrap{background:#fff;border:1px solid #e0e8f2;box-shadow:0 8px 28px #173d6c08;margin-top:14px}
 .cm-app-ready .auth-story{display:none}
 .cm-app-ready .auth-form:before{content:'';display:block;width:120px;height:120px;margin:0 auto 20px;background:url('../images/credmed-logo.webp') center/contain no-repeat}
 .cm-app-ready .auth-form{padding:22px}
 .cm-app-ready .auth-form h2{font-size:25px;letter-spacing:-.5px}
 .cm-app-ready .auth-form .btn.primary{width:100%;border-radius:24px;justify-content:center}
 .cm-app-ready .auth-links{gap:14px;flex-wrap:wrap;font-size:12px}
}

@media(max-width:991px){
 .cm-app-ready .auth-wrap{grid-template-columns:minmax(0,1fr);max-width:480px;margin-left:auto;margin-right:auto}
 .cm-app-ready .auth-form{width:100%;min-width:0;box-sizing:border-box;margin-inline:auto}
}

/* Public home uses the same compact app layout as the member area. */
.cm-public-shortcuts{display:none}
@media(max-width:991px){
 .cm-app-ready #home{display:flex;flex-direction:column;padding-top:16px}
 .cm-app-ready #home>.hero{order:-3;width:calc(100% - 32px);margin:0 auto 18px;padding:23px 20px;background:linear-gradient(125deg,#123b77,#215bc0 60%,#088d98);border-radius:21px;box-shadow:0 8px 22px #215bc024;color:white;box-sizing:border-box}
 .cm-app-ready #home .hero-grid{width:100%;display:block}
 .cm-app-ready #home .hero-visual{display:none}
 .cm-app-ready #home .hero h1{font-size:30px;line-height:1.2;margin:14px 0;color:#fff;letter-spacing:-1px}
 .cm-app-ready #home .hero h1 em{color:#9ff1df}
 .cm-app-ready #home .hero .eyebrow{font-size:9px;letter-spacing:1.1px;color:#d4eeff}
 .cm-app-ready #home .hero p{font-size:13px;line-height:1.7;color:#e1edff;margin:0 0 18px;max-width:540px}
 .cm-app-ready #home .hero-actions{gap:14px;flex-wrap:wrap;margin:0}
 .cm-app-ready #home .hero-actions .btn{background:white;color:#174a93;padding:12px 16px;min-height:44px;border-radius:13px;font-size:13px;box-shadow:none}
 .cm-app-ready #home .play-link{color:#fff;font-size:12px;gap:8px}
 .cm-app-ready #home .play-link span{width:30px;height:30px;border-color:#ffffff60;color:#fff}
 .cm-app-ready #home .trust-row{margin-top:20px;padding-top:14px;gap:12px;border-color:#ffffff30;justify-content:space-between}
 .cm-app-ready #home .trust-row>div{padding-right:12px;border-color:#ffffff30}
 .cm-app-ready #home .trust-row strong{font-size:17px;color:#fff}
 .cm-app-ready #home .trust-row span{font-size:9px;color:#d4eeff}
 .cm-app-ready .cm-public-shortcuts{order:-2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:calc(100% - 32px);margin:0 auto 20px}
 .cm-public-shortcuts a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;min-height:96px;background:#fff;border:1px solid #e0e8f2;border-radius:16px;text-decoration:none;color:#183350;box-shadow:0 4px 12px #173d6c06}
 .cm-public-shortcuts a>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#e9f2ff;color:#2861c7}
 .cm-public-shortcuts svg{width:23px;height:23px}
 .cm-public-shortcuts b{font-size:12px}
 .cm-public-shortcuts a:nth-child(3n+2)>span{background:#def6ee;color:#087a64}
 .cm-public-shortcuts a:nth-child(3n)>span{background:#f0e8ff;color:#7741b4}
 .cm-app-ready #home>.health-packages{order:-1;background:transparent;padding:10px 0 24px}
 .cm-app-ready #home>.proof{display:none}
 .cm-app-ready #home .section{padding:24px 0}
 .cm-app-ready #home .section h2{font-size:25px;line-height:1.25;letter-spacing:-.6px}
 .cm-app-ready #home .health-package-grid{gap:12px;margin-top:18px}
 .cm-app-ready #home .health-package-card{border-radius:18px;padding:19px;gap:12px;box-shadow:0 4px 14px #173d6c08}
 .cm-app-ready #home .health-package-card h3{font-size:19px}
 .cm-app-ready #home .health-price{font-size:29px}
 .cm-app-ready #home .health-package-card p,.cm-app-ready #home .health-package-card li{font-size:12px;line-height:1.65}
 .cm-app-ready #home .health-package-card .btn{width:100%;justify-content:center;font-size:13px;padding:12px;border-radius:12px}
 .cm-app-ready #home .feature-strip,.cm-app-ready #home .services-grid,.cm-app-ready #home .quotes{gap:12px}
 .cm-app-ready #home .feature-strip article,.cm-app-ready #home .service,.cm-app-ready #home blockquote{padding:20px;border-radius:18px}
 .cm-app-ready #home .network{display:none}
 .cm-app-ready #home .rewards-card{display:block;padding:22px;border-radius:20px}
 .cm-app-ready #home .cta-box{padding:24px;border-radius:20px;gap:18px}
 .cm-app-ready #home [id]{scroll-margin-top:85px}
 .cm-app-ready #home a[href='#contact']{scroll-margin-top:85px}
}
@media(max-width:991px){
 .cm-app-ready #home .hero-grid{padding-block:0;min-height:0}
 .cm-app-ready #home .hero-actions{flex-direction:row;align-items:center}
 .cm-app-ready #home .trust-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:991px){
 .cm-app-ready #home>.cm-public-app-home{order:-4;width:calc(100% - 28px);margin:6px auto 0}
 .cm-app-ready #home:has(.cm-public-app-home)>.hero,.cm-app-ready #home:has(.cm-public-app-home)>.about,.cm-app-ready #home:has(.cm-public-app-home)>.rewards,.cm-app-ready #home:has(.cm-public-app-home)>.stories,.cm-app-ready #home:has(.cm-public-app-home)>.cta{display:none}
 .cm-public-app-home .cm-home-avatar svg{width:22px;height:22px}
 .cm-public-app-home .cm-home-shortcuts svg{width:23px;height:23px}
 .cm-public-app-home .cm-home-banner>span svg{width:38px;height:38px;color:#9ff1df}
 .cm-app-tabs[aria-label='Public navigation']{grid-template-columns:repeat(5,minmax(0,1fr))}
}

/* App drawer: soft colour groups and clear navigation hierarchy. */
@media(max-width:991px){
 .cm-app-drawer:not([hidden]){padding-left:14px;padding-right:14px;background:radial-gradient(circle at top left,#e1f4f1,transparent 33%),linear-gradient(160deg,#f8fbff,#f4f5fc);border-right:1px solid #fff;box-shadow:16px 0 60px #071b3b30}
 .cm-drawer-top{padding:2px 7px 0;font-family:Manrope,sans-serif;letter-spacing:-.7px}
 .cm-drawer-top strong{color:#204d89}
 .cm-drawer-top button{background:#ffffffc9;border:1px solid #dce7f4;box-shadow:0 3px 8px #183e7108}
 .cm-member{margin:18px 3px 22px;padding:20px;border-radius:21px;background:radial-gradient(circle at top right,#138f9e,transparent 65%),linear-gradient(135deg,#153a78,#2454a4);box-shadow:0 9px 20px #184c8b25}
 .cm-member>span{font-size:10px;text-transform:uppercase;letter-spacing:1.5px}
 .cm-member strong{font-size:21px;margin:7px 0}
 .cm-member a{background:#ffffff1f;border:1px solid #ffffff25;padding:11px 12px;text-decoration:none;font-weight:600}
 .cm-app-drawer nav{margin:0 0 15px;padding:3px 6px 7px;border:1px solid #e2e9f2;border-radius:18px;background:#ffffffb8;box-shadow:0 4px 12px #173d6c04}
 .cm-app-drawer h2{display:flex;align-items:center;gap:8px;margin:12px 9px 8px!important;font-size:9px!important;font-weight:800;letter-spacing:1.5px;color:#536d8e}
 .cm-app-drawer h2:before{content:'';width:5px;height:12px;border-radius:5px;background:#3d79d8}
 .cm-app-drawer nav:nth-of-type(2) h2:before{background:#13977d}
 .cm-app-drawer nav:nth-of-type(3) h2:before{background:#8655c2}
 .cm-app-drawer nav:nth-of-type(4) h2:before{background:#c38a35}
 .cm-app-drawer nav>a{gap:11px;padding:8px 9px;margin:3px 0;min-height:49px;border:1px solid transparent;border-radius:12px;font-size:12px;font-weight:600;color:#314b6d;transition:background .15s ease,border-color .15s ease}
 .cm-app-drawer .cm-menu-icon{display:grid;place-items:center;width:33px;height:33px;flex:0 0 33px;border-radius:10px;background:#eaf1ff;color:#3464bd}
 .cm-menu-icon svg{width:18px;height:18px}
 .cm-app-drawer nav:nth-of-type(2) .cm-menu-icon{background:#e1f5ee;color:#12836a}
 .cm-app-drawer nav:nth-of-type(3) .cm-menu-icon{background:#f0e9fc;color:#7c4db5}
 .cm-app-drawer nav:nth-of-type(4) .cm-menu-icon{background:#fff0dc;color:#a46b22}
 .cm-menu-chevron{margin-left:auto;color:#8496af;font-size:19px;font-weight:400}
 .cm-app-drawer nav>a:hover{background:#eff5fc;border-color:#dbe6f5}
 .cm-app-drawer nav>a[aria-current=page]{background:linear-gradient(110deg,#245cc6,#128da6);border:1px solid #2774bc;box-shadow:0 5px 12px #2463b824;color:white}
 .cm-app-drawer a[aria-current=page] .cm-menu-icon{background:#ffffff24;color:white}
 .cm-app-drawer a[aria-current=page] .cm-menu-chevron{color:#fff}
 .cm-app-drawer nav>a[href$='logout.php']{background:#fff1f3;color:#a83151;border-color:#f6dbe2;justify-content:center;margin-top:9px}
}

@media(max-width:991px){
 .cm-app-drawer:not([hidden]){width:min(355px,90vw);background:linear-gradient(155deg,#dceaff 0%,#e4f7ef 45%,#eee5fc 100%)}
 .cm-drawer-top{font-size:28px;padding-bottom:12px}
 .cm-app-drawer nav{background:#ffffffbf;border-color:#ffffff;border-radius:19px;box-shadow:0 6px 18px #274d7a0c;padding:5px 8px 10px}
 .cm-app-drawer h2{font-size:11px!important;letter-spacing:1.1px;margin:12px 10px 10px!important;color:#365678}
 .cm-app-drawer nav>a{font-size:16px;line-height:1.45;font-weight:600;min-height:54px;padding:11px 12px;margin:6px 0;background:#e6efff;border-color:#d5e3fa;color:#244c88}
 .cm-app-drawer nav>a:nth-of-type(4n+2){background:#def5eb;border-color:#c9e8da;color:#176550}
 .cm-app-drawer nav>a:nth-of-type(4n+3){background:#eee4fb;border-color:#e0d3f3;color:#684192}
 .cm-app-drawer nav>a:nth-of-type(4n+4){background:#fff0db;border-color:#f1dfc1;color:#8a5b1f}
 .cm-app-drawer .cm-menu-icon{width:36px;height:36px;flex-basis:36px;background:#ffffffb8}
 .cm-app-drawer nav>a[aria-current=page]{background:linear-gradient(110deg,#245cc6,#128da6);color:#fff;border-color:#2774bc}
 .cm-app-drawer nav>a[href$='logout.php']{background:#ffe5eb;color:#a83151;border-color:#f3c8d3}
 .cm-menu-chevron{font-size:23px}
}

/* Home launcher: six destinations, no marketing or purchase sections. */
#home.cm-launcher-home{padding:28px 16px;min-height:65vh}
#home.cm-launcher-home>.cm-launcher{display:block;width:100%;max-width:960px;margin:0 auto}
.cm-launcher .cm-home-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0}
.cm-launcher .cm-home-shortcuts a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;min-height:190px;padding:22px 12px;border-radius:23px;border:1px solid #d8e5f5;background:linear-gradient(135deg,#e9f2ff,#fff);box-shadow:0 7px 20px #173d6c0a;text-decoration:none;color:#183350}
.cm-launcher .cm-home-shortcuts a:nth-child(3n+2){background:linear-gradient(135deg,#def6ee,#fff);border-color:#cde9df}
.cm-launcher .cm-home-shortcuts a:nth-child(3n){background:linear-gradient(135deg,#eee5fc,#fff);border-color:#e2d7f7}
.cm-launcher .cm-home-shortcuts a>span{display:grid;place-items:center;width:64px;height:64px;border-radius:19px;background:#e0ebff;color:#2861c7}
.cm-launcher .cm-home-shortcuts svg{width:33px;height:33px}
.cm-launcher .cm-home-shortcuts b{font-size:20px;line-height:1.4;max-width:none;text-align:center}
@media(max-width:991px){
 .cm-app-ready #home.cm-launcher-home{padding:22px 14px;min-height:calc(100dvh - 165px);justify-content:center}
 .cm-app-ready #home>.cm-launcher{width:100%;margin:0 auto}
 .cm-launcher .cm-home-shortcuts a{min-height:165px}
}
@media(max-width:540px){
 .cm-launcher .cm-home-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .cm-launcher .cm-home-shortcuts a{min-height:150px;padding:16px 8px;gap:13px}
 .cm-launcher .cm-home-shortcuts b{font-size:17px}
 .cm-launcher .cm-home-shortcuts a>span{width:54px;height:54px;border-radius:16px}
}

/* Lightweight page entry motion preserves normal PHP navigation and form handling. */
@media(max-width:991px) and (prefers-reduced-motion:no-preference){
 .cm-app-ready #home,.cm-app-ready .content-container{animation:cm-content-enter 220ms cubic-bezier(.22,.8,.25,1) both}
 .cm-profile-menu:not([hidden]){transform-origin:top right;animation:cm-menu-enter 160ms ease-out both}
 .cm-app-ready :is(.btn,.cm-home-shortcuts a,.cm-app-tabs a,.cm-app-header button,.cm-app-drawer nav>a){transition:transform 140ms ease,box-shadow 140ms ease,background-color 140ms ease;-webkit-tap-highlight-color:transparent}
 .cm-app-ready :is(.btn,.cm-home-shortcuts a,.cm-app-tabs a,.cm-app-header button,.cm-app-drawer nav>a):active{transform:scale(.97)}
 .cm-app-tabs a[aria-current=page] svg{animation:cm-tab-enter 220ms ease-out}
}
@keyframes cm-content-enter{from{opacity:.4;translate:0 7px}to{opacity:1;translate:0 0}}
@keyframes cm-menu-enter{from{opacity:0;transform:translateY(-5px) scale(.97)}to{opacity:1;transform:none}}
@keyframes cm-tab-enter{from{transform:scale(.85)}to{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){
 .cm-app-ready *{scroll-behavior:auto!important}
}
