/* Plugin-owned frontend shell; no dependency on WordPress admin or the site's theme. */
:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f5f7fb;color:#202630}
body.cmp-portal{margin:0;line-height:1.55;font-size:14px}body.cmp-portal *{box-sizing:border-box}body.cmp-portal a{text-decoration:none}body.cmp-portal button,body.cmp-portal input,body.cmp-portal select,body.cmp-portal textarea{font:inherit}body.cmp-portal button,body.cmp-portal summary{cursor:pointer}body.cmp-portal button:disabled{opacity:.55;cursor:default}body.cmp-portal a:focus-visible,body.cmp-portal button:focus-visible,body.cmp-portal input:focus-visible,body.cmp-portal textarea:focus-visible,body.cmp-portal select:focus-visible{outline:3px solid #86a6ff;outline-offset:3px}
.cmp-portal-sidebar{position:fixed;inset:0 auto 0 0;width:232px;background:#fff;border-right:1px solid #e2e7f0;padding:30px 18px;display:flex;flex-direction:column;z-index:20}.cmp-portal-brand{padding:0 12px 28px;display:grid;gap:13px;color:#202630}.cmp-portal-brand img{display:block;width:166px;max-width:100%;height:auto;max-height:66px;object-fit:contain;object-position:left}.cmp-portal-brand strong{font-size:21px;line-height:1.2}.cmp-portal-brand span{font-size:11px;color:#727e91;letter-spacing:.07em;text-transform:uppercase}.cmp-portal-sidebar nav{display:grid;gap:5px}.cmp-portal-sidebar nav a{padding:11px 14px;border-radius:9px;color:#5d687b;font-weight:600;min-height:44px}.cmp-portal-sidebar nav a:hover,.cmp-portal-sidebar nav a[aria-current=page]{color:#3155d9;background:#eef2ff}.cmp-portal-site{margin-top:auto;padding:24px 12px 0;color:#6c7788;font-size:12px}
.cmp-portal-body{margin-left:232px;min-width:0}.cmp-portal-topbar{height:88px;padding:18px 36px;background:#fff;border-bottom:1px solid #e2e7f0;display:flex;align-items:center;justify-content:space-between;gap:16px}.cmp-portal-topbar>div:first-child{display:grid;gap:2px}.cmp-portal-topbar>div:first-child>span{font-size:10px;letter-spacing:.1em;color:#7b8595;font-weight:650}.cmp-portal-topbar strong{font-size:17px;font-weight:650}.cmp-portal-account{display:flex;gap:18px;align-items:center;font-size:13px;color:#5d687b}.cmp-portal-account a{color:#3155d9;padding:9px 0}.cmp-portal-main{max-width:1320px;margin:auto;padding:32px 36px 56px;min-width:0}.cmp-portal .wrap.cmp{width:100%;max-width:1180px;margin:0;padding-top:0}.cmp-portal .cmp h1{margin-top:0}.cmp-portal .widefat{width:100%;border-collapse:collapse;text-align:left}.cmp-portal .widefat th{font-weight:600}.cmp-portal .widefat td,.cmp-portal .widefat th{border-bottom:1px solid #e2e7f0}.cmp-portal .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cmp-portal .notice{padding:1px 14px;background:#fff;border:1px solid #dfe5ee;border-left:4px solid #3155d9}.cmp-portal .notice-error{border-left-color:#b32d2e;background:#fff8f8}.cmp-portal .notice-success{border-left-color:#269150;background:#f6fbf7}.cmp-portal .button{font-family:inherit;text-decoration:none;box-shadow:none}.cmp-portal .cmp input[type=checkbox],.cmp-portal .cmp input[type=radio]{width:18px;min-height:18px;height:18px;accent-color:#3155d9}.cmp-portal .cmp .cmp-check{flex-direction:row;gap:9px;align-items:center}.cmp-portal .cmp-panel>table{display:block;overflow-x:auto;max-width:100%}.cmp-portal .cmp-panel>table tbody,.cmp-portal .cmp-panel>table thead{width:100%}.cmp-portal .cmp-workflow details{overflow:auto}.cmp-skip-link{position:fixed;top:-80px;left:15px;padding:12px 18px;background:#3155d9;color:#fff;border-radius:8px;z-index:100}.cmp-skip-link:focus{top:12px}.cmp-portal .cmp-estimate-actions{border-radius:8px 8px 0 0;padding:12px;flex-wrap:wrap}.cmp-portal .cmp-calendar-grid{overflow-x:auto}.cmp-portal .cmp-title-row>*{min-width:0}.cmp-portal .cmp-field,.cmp-portal .cmp-workspace{max-width:none}
.cmp-portal-auth{min-height:100vh;background:radial-gradient(ellipse at 50% 0,#e7edff 0,transparent 55%),#f5f7fb}.cmp-portal-auth-brand{text-align:center;padding:56px 20px 28px;font-size:24px;font-weight:650}.cmp-portal-auth-brand a{color:#202630}.cmp-portal-auth-brand img{width:210px;height:auto;max-height:75px;object-fit:contain}.cmp-portal-auth main{padding:0 20px}.cmp-auth-card{max-width:430px;width:100%;margin:0 auto;padding:34px;background:#fff;border:1px solid #e2e7f0;border-radius:18px;box-shadow:0 16px 50px #2030600a}.cmp-auth-card h1{margin:9px 0 12px}.cmp-auth-card>p{color:#687386;margin-bottom:24px}.cmp-auth-card form>.button{width:100%;margin-top:8px}.cmp-auth-footer{text-align:center;margin:20px 0 0;font-size:13px}.cmp-auth-footer a{color:#3155d9}.cmp-portal-auth-note{text-align:center;color:#7b8595;padding:24px 20px;font-size:12px}.cmp-portal-auth main>.cmp-panel{max-width:600px;margin:20px auto}
@media(max-width:1100px){.cmp-portal-sidebar{width:204px;padding-left:12px;padding-right:12px}.cmp-portal-body{margin-left:204px}.cmp-portal-main{padding:26px 24px 40px}.cmp-portal-topbar{padding:18px 24px}}
@media(max-width:760px){.cmp-portal-sidebar{position:static;width:auto;padding:18px 16px 12px;border-right:0;border-bottom:1px solid #e2e7f0}.cmp-portal-brand{padding:0 3px 14px;display:flex;align-items:center;gap:18px}.cmp-portal-brand img{width:132px;max-height:45px}.cmp-portal-brand span{font-size:9px}.cmp-portal-sidebar nav{display:flex;overflow-x:auto;gap:5px;padding:3px 0}.cmp-portal-sidebar nav a{flex:none;padding:10px 13px;white-space:nowrap}.cmp-portal-site{display:none}.cmp-portal-body{margin-left:0}.cmp-portal-topbar{height:72px;padding:12px 18px}.cmp-portal-account{gap:12px}.cmp-portal-account>span{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmp-portal-main{padding:22px 16px 40px}.cmp-portal .cmp{margin-right:0}.cmp-portal .cmp-calendar-grid{font-size:12px}.cmp-portal .cmp-estimate-actions{gap:8px}.cmp-portal .cmp-estimate-actions .button-hero{min-width:110px}.cmp-portal-auth-brand{padding-top:36px}.cmp-auth-card{padding:26px}.cmp-portal .cmp-workflow .cmp-title-row form label{min-width:0}.cmp-portal .cmp-metrics .cmp-card strong{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.cmp-portal *{scroll-behavior:auto!important;transition:none!important}}
@media print{.cmp-portal-sidebar,.cmp-portal-topbar,.cmp-project-tabs,.cmp-estimate-actions{display:none!important}.cmp-portal-body{margin:0}.cmp-portal-main{padding:0}.cmp-portal{background:#fff}.cmp-portal .cmp-panel{break-inside:avoid}}

/* 0.22.4: comfortable touch targets in the staff portal on phones (breadcrumbs, disclosures, standalone links). */
@media (max-width:782px){
.cmp-portal-main .cmp-breadcrumb{font-size:14px}
.cmp-portal-main .cmp-breadcrumb a,.cmp-portal-main summary,.cmp-portal-main p>a:only-child{display:inline-flex;align-items:center;min-height:44px}
.cmp-portal-main summary{width:100%}
.cmp-portal-main input:not([type=checkbox]):not([type=radio]),.cmp-portal-main select,.cmp-portal-main textarea{font-size:16px}
.cmp-portal-main input[type=checkbox],.cmp-portal-main input[type=radio]{width:22px;height:22px}
}
/* 0.22.5: disclosure rows are touch-sized too */
.cmp-portal-main summary{min-height:44px;padding:12px 0;box-sizing:border-box;cursor:pointer}

.cmp-portal-sidebar nav{flex:1;min-height:0;overflow-y:auto;gap:8px;align-content:start}.cmp-portal-sidebar .cmp-nav-group-links{display:grid;gap:2px}.cmp-portal-sidebar .cmp-nav-group-label{padding-top:6px}.cmp-portal-site{flex:none}
@media(max-width:760px){.cmp-portal-sidebar nav{overflow-y:hidden;overflow-x:auto;gap:16px}.cmp-portal-sidebar .cmp-nav-group{flex:none;gap:2px}.cmp-portal-sidebar .cmp-nav-group-label{padding:0 13px;font-size:9px}.cmp-portal-sidebar .cmp-nav-group-links{display:flex;gap:3px}}

@media(min-width:761px){.cmp-portal-sidebar nav{gap:5px}.cmp-portal-sidebar nav a{padding:8px 14px;min-height:40px}.cmp-portal-sidebar .cmp-nav-group-label{padding:2px 14px 0}.cmp-portal-brand{padding-bottom:18px}}

/* Clearer section headings; no navigation or permission changes. */
.cmp-portal-sidebar .cmp-nav-group-label{display:flex;align-items:center;gap:8px;color:#0f6572;font-size:11px;font-weight:800;letter-spacing:.08em}.cmp-portal-sidebar .cmp-nav-group-label::after{content:"";height:1px;flex:1;min-width:12px;background:#c8e1e3}@media(max-width:760px){.cmp-portal-sidebar .cmp-nav-group-label{font-size:10px}.cmp-portal-sidebar .cmp-nav-group-label::after{display:none}}

/* Progressive enhancement: administrator drawer on phones; desktop and other roles unchanged. */
.cmp-menu-toggle,.cmp-drawer-heading,.cmp-menu-backdrop{display:none}
@media(max-width:1199px){
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-menu-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 14px;border:1px solid #d3e6e7;border-radius:10px;background:#eef7f6;color:#0f6572;font-weight:750;white-space:nowrap}.cmp-menu-toggle>span{font-size:21px;line-height:1}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar{height:auto;min-height:100px;display:grid;gap:8px;padding:12px 16px}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child{display:flex;align-items:center;gap:12px}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child>span{display:none}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account{justify-content:space-between}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-sidebar{position:fixed;inset:0 auto 0 0;width:min(320px,86vw);height:100vh;height:100dvh;padding:18px 20px 24px;border-right:1px solid #d8e7e7;border-top:4px solid #9ad12d;border-bottom:0;z-index:101;transform:translateX(-105%);visibility:hidden;transition:transform .22s ease,visibility .22s;box-shadow:12px 0 48px #17354424;display:flex;flex-direction:column}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-drawer-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;color:#59717b;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.cmp-menu-close{min-width:44px;min-height:44px;background:#f1f7f7;border:1px solid #d8e7e7;border-radius:50%;color:#0f6572;font-size:27px!important;line-height:1}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-brand{display:grid;padding:0 10px 22px;gap:10px}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-brand img{width:190px;max-height:66px}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-sidebar nav{display:grid;overflow-x:hidden;overflow-y:auto;gap:12px;padding:0;flex:1;min-height:0;align-content:start}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-nav-group-links{display:grid;gap:3px}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-nav-group-label{padding:2px 12px;font-size:11px}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-nav-group-label::after{display:block}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-sidebar nav a{display:block;min-height:44px;padding:11px 12px;border-radius:10px}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-sidebar nav a[aria-current=page]{background:#e8f4f2;color:#0f6572;box-shadow:inset 3px 0 #0f707d}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-site{display:block;padding:16px 12px 0;margin-top:12px;border-top:1px solid #e2ecec}
 .cmp-mobile-admin.cmp-mobile-nav-open{overflow:hidden}.cmp-mobile-admin.cmp-mobile-nav-open .cmp-portal-sidebar{transform:translateX(0);visibility:visible}.cmp-mobile-admin.cmp-mobile-nav-open .cmp-menu-backdrop{display:block;position:fixed;inset:0;background:#17354466;backdrop-filter:blur(3px);z-index:100}
}
@media print{.cmp-menu-toggle,.cmp-drawer-heading,.cmp-menu-backdrop{display:none!important}}

/* Dashboard support uses the same content width as the other portal views. */
.cmp-portal .cmp-admin-support{margin:0;width:100%;max-width:1180px}

/* Keep environment and role visible on phones as well as desktop. */
@media(max-width:1199px){.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child{flex-wrap:wrap}.cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child>span.cmp-workspace-context{display:block;order:3;flex:1 0 100%;letter-spacing:0;font-size:11px;line-height:1.4;color:#44546a;overflow-wrap:anywhere}}

/* 0.30.12: full-width tablet workspace, safe areas and touch-friendly controls. */
@media (max-width:1199px){
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-body{margin-left:0}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar{min-height:88px;padding:12px max(24px,env(safe-area-inset-right)) 12px max(24px,env(safe-area-inset-left))}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-sidebar{padding-bottom:max(24px,env(safe-area-inset-bottom));overscroll-behavior:contain}
 .cmp-portal-main{padding:24px max(24px,env(safe-area-inset-right)) 48px max(24px,env(safe-area-inset-left))}
 .cmp-portal-topbar strong{overflow-wrap:anywhere}
 .cmp-portal-account{flex-wrap:wrap;gap:8px 18px;min-width:0}
 .cmp-portal-account>span{min-width:0;overflow-wrap:anywhere}
 .cmp-portal-main .button,.cmp-portal-main button,.cmp-portal-main select,.cmp-portal-main input:not([type=checkbox]):not([type=radio]),.cmp-portal-main textarea{min-height:44px}
 .cmp-portal-main input:not([type=checkbox]):not([type=radio]),.cmp-portal-main select,.cmp-portal-main textarea{font-size:16px}
 .cmp-portal-main .cmp-title-row,.cmp-portal-main .cmp-toolbar{flex-wrap:wrap}
 .cmp-portal-main .cmp-title-row form{min-width:0;max-width:100%}
 .cmp-portal-main .cmp-workflow .cmp-title-row form label{min-width:min(260px,100%)}
 .cmp-portal-main .cmp-project-tabs{flex-wrap:nowrap;overflow-x:auto;max-width:100%;overscroll-behavior-x:contain;scroll-padding-inline:12px}
 .cmp-portal-main .cmp-project-tabs a{flex:none;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}
 .cmp-portal-main .cmp-table-wrap{max-width:100%;overscroll-behavior-x:contain}
 .cmp-portal-main .cmp-guide-savebar,.cmp-portal-main .cmp-estimate-actions{flex-wrap:wrap;gap:10px;padding-bottom:calc(12px + env(safe-area-inset-bottom))!important}
 .cmp-portal-main .cmp-guide-nav>button{flex-shrink:0;min-height:44px}
 .cmp-portal-main .cmp-guide-help-content{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
 .cmp-portal-main .cmp-guide-prep-grid,.cmp-portal-main .cmp-guide-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1200px) and (max-width:1400px){
 .cmp-portal-sidebar{width:204px;padding-inline:12px}
 .cmp-portal-body{margin-left:204px}
 .cmp-portal-main{padding:24px}
 .cmp-portal-topbar{padding-inline:24px}
}
@media (max-width:820px){
 .cmp-portal-main .cmp-guide-help-content,.cmp-portal-main .cmp-guide-prep-grid,.cmp-portal-main .cmp-guide-summary-grid{grid-template-columns:1fr}
 .cmp-portal-main .cmp-side-heading{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cmp-portal-main .cmp-item-row{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cmp-portal-main .cmp-item-desc{grid-column:1/-1}
 .cmp-portal-main .cmp-item-row .cmp-remove{grid-column:2;justify-self:end;width:44px}
}
@media(max-width:760px){
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar{padding-inline:16px}
 .cmp-portal-main{padding-inline:16px}
 .cmp-portal-main .cmp-side-heading{grid-template-columns:1fr}
}

/* 0.30.13: compact iPad header with a clear title and grouped account controls. */
@media(min-width:701px) and (max-width:1199px){
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:24px;min-height:88px;padding-block:14px}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 12px;min-width:0}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child>.cmp-menu-toggle{grid-column:1;grid-row:1;padding:9px 12px}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child>strong{grid-column:2;grid-row:1;font-size:19px;line-height:1.25;min-width:0}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child>span.cmp-workspace-context{grid-column:1/-1;grid-row:2;order:initial;flex:initial;font-size:11px;line-height:1.4;letter-spacing:0;color:#607080;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account{justify-content:flex-end;flex-wrap:nowrap;gap:12px;max-width:330px}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account>span{max-width:185px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;color:#596879}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account .cmp-portal-logout button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid #dce4ed;border-radius:9px;white-space:nowrap;background:#fff;color:#42556a}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account .cmp-notification-bell{flex:none;background:#f5f8fc;border:1px solid #e2e8f0;border-radius:10px}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account .cmp-notification-count{top:-5px;right:-5px}
}
@media(min-width:701px) and (max-width:850px){
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar{column-gap:16px}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account{gap:10px;max-width:275px}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account>span{max-width:145px}
}

/* Phones keep navigation and account actions on one row; context stays below. */
@media(max-width:700px){
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:92px;padding:12px max(16px,env(safe-area-inset-right)) 34px max(16px,env(safe-area-inset-left))}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-width:0}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child>.cmp-menu-toggle{grid-column:1;grid-row:1;padding:8px 10px;gap:6px;font-size:13px;min-height:44px}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child>strong{grid-column:2;grid-row:1;font-size:17px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child>span.cmp-workspace-context{position:absolute;bottom:10px;left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));order:initial;flex:initial;font-size:10px;line-height:1.5;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#607080}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account{justify-content:flex-end;flex-wrap:nowrap;gap:8px;font-size:12px}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account .cmp-portal-logout button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px;border:1px solid #dce4ed;border-radius:9px;white-space:nowrap;background:#fff;color:#42556a}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account .cmp-notification-bell{flex:none;width:44px;background:#f5f8fc;border:1px solid #e2e8f0;border-radius:10px}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-account .cmp-notification-count{top:-5px;right:-3px}
}
@media(max-width:360px){
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar{column-gap:8px;padding-inline:12px}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child>.cmp-menu-toggle{padding-inline:8px;font-size:12px}
 .cmp-mobile-admin.cmp-mobile-nav-ready .cmp-portal-topbar>div:first-child>strong{font-size:15px}
}

/* 0.30.14 — calm branded shell shared by all permission-filtered sections. */
body.cmp-portal{background:#f3f7f9;color:#203440;-webkit-font-smoothing:antialiased}
.cmp-portal-sidebar{border-right-color:#dce7eb;background:#fff}
.cmp-portal-brand{color:#203f48}.cmp-portal-brand span{color:#657c87;font-size:10px;letter-spacing:.1em}
.cmp-portal-sidebar nav a{font-size:13px;color:#4d6573;border:1px solid transparent;border-radius:10px}
.cmp-portal-sidebar nav a:hover{color:#0d616c;background:#f0f7f6}
.cmp-portal-sidebar nav a[aria-current=page]{color:#0f626b;background:#eaf5f2;border-color:#d7e9e3;box-shadow:inset 3px 0 #0f707d}
.cmp-portal-sidebar .cmp-nav-group-label{font-size:10px;letter-spacing:.1em;color:#4b7b7b}
.cmp-portal-topbar{border-bottom-color:#dce7eb;background:#fff}
.cmp-portal-topbar strong{color:#203f48;letter-spacing:-.025em}
.cmp-portal-account{color:#526b78}.cmp-portal-account a{color:#0f6b76}
.cmp-portal-main{padding-top:30px}.cmp-portal .cmp-panel>table{border-radius:10px}
.cmp-portal .cmp-admin-support{max-width:1180px}
.cmp-portal .cmp-menu-toggle{box-shadow:0 1px 3px #17354404}
.cmp-portal .cmp-table-wrap{scrollbar-width:thin;scrollbar-color:#aac4cd #f4f8fa}
.cmp-portal .cmp-portal-main .cmp-estimate-actions{background:#f7fafb}
.cmp-portal-auth{background:radial-gradient(ellipse at 50% 0,#e5f2ef 0,transparent 62%),#f3f7f9}
.cmp-auth-card{border-color:#d9e6eb;border-radius:20px;box-shadow:0 12px 45px #1735440a}
.cmp-auth-card h1{color:#203f48;letter-spacing:-.03em}.cmp-auth-card>p{color:#5b7180}
@media(min-width:1200px){.cmp-portal-topbar{height:84px}.cmp-portal-main{padding-bottom:64px}}
@media(max-width:700px){.cmp-portal-main{padding-top:24px;padding-bottom:48px}.cmp-portal-sidebar .cmp-nav-group-label{font-size:10px}.cmp-auth-card{padding:26px;border-radius:16px}}

.cmp-portal-logout{margin:0;display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.cmp-portal-logout button{font:inherit;min-height:44px;padding:9px 0;border:0;background:transparent;color:#0f6b76;cursor:pointer}
.cmp-logout-status:not(.screen-reader-text){font-size:12px;color:#963443;max-width:240px}
