:root{--navy:#071a33;--deep:#101447;--blue:#24476d;--sky:#56aeff;--ink:#16233a;--muted:#66758a;--line:#dfe7ef;--soft:#f4f7fa;--ok:#0f7a4f;--warn:#a66008}*{box-sizing:border-box}.cfo-connect-login,.cfo-connect-shell{font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink)}.cfo-connect-login{min-height:82vh;background:linear-gradient(120deg,var(--navy),var(--deep) 62%,var(--blue));display:grid;grid-template-columns:1.05fr minmax(380px,560px);gap:7vw;padding:7vw;align-items:center}.cfo-connect-login-copy{color:#fff}.brand,.side-brand{font-weight:900;letter-spacing:.04em}.brand{font-size:25px}.brand b,.side-brand b{background:#fff;color:var(--deep);padding:4px 7px}.cfo-connect-login h1{color:#fff;font-size:clamp(46px,6vw,78px);margin:18px 0}.cfo-connect-login-copy p,.cfo-connect-login-copy li{color:#dce8f5;line-height:1.7}.login-card,.panel,.app-card{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 35px rgba(6,28,57,.08)}.login-card{padding:34px}.login-card h2{font-size:30px;margin:8px 0 22px}.login-card label,.panel label{display:block;font-weight:700;margin:14px 0 6px}.login-card input:not([type=checkbox]),.panel input:not([type=checkbox]),.panel select,.panel textarea{width:100%;padding:12px 13px;border:1px solid #becbd7;border-radius:7px;background:#fff}.check{display:flex!important;gap:9px;align-items:flex-start;font-weight:500!important}.check input{margin-top:3px}button,.button{display:inline-block;border:0;border-radius:7px;background:var(--deep);color:#fff!important;padding:12px 18px;font-weight:800;text-decoration:none;cursor:pointer}.login-card button{width:100%;margin-top:12px}.muted-link{display:block;margin-top:18px;color:var(--blue)}.fine,small{font-size:12px;color:var(--muted);line-height:1.5}.alert{padding:11px 13px;border-left:4px solid #c94c38;background:#fff0ed}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.13em;color:#3a75a7}.cfo-connect-shell{min-height:100vh;background:var(--soft);display:grid;grid-template-columns:245px 1fr}.cfo-connect-shell aside{position:sticky;top:0;height:100vh;background:var(--navy);color:#fff;padding:28px 20px;display:flex;flex-direction:column}.side-brand{font-size:18px;margin-bottom:30px}.side-brand small{display:block;color:#99b7d1;margin-top:10px;letter-spacing:.18em}.cfo-connect-shell nav{display:grid;gap:5px}.cfo-connect-shell nav a{color:#cbd9e6;padding:11px 12px;border-radius:7px;text-decoration:none;font-weight:700;font-size:14px}.cfo-connect-shell nav a.active,.cfo-connect-shell nav a:hover{background:#173a5c;color:#fff}.side-foot{margin-top:auto;display:grid;gap:4px;border-top:1px solid #274561;padding-top:17px}.side-foot span,.side-foot a{color:#b5c8d9;font-size:12px}.cfo-connect-shell main{padding:42px clamp(24px,5vw,70px);max-width:1550px;width:100%}.cfo-connect-shell h1{font-size:clamp(34px,4vw,54px);margin:9px 0 12px;color:var(--deep)}.lead{font-size:17px;line-height:1.6;color:#52647a;max-width:900px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:27px 0}.metric-grid article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px}.metric-grid b{display:block;color:var(--deep);font-size:27px}.metric-grid span{font-size:13px;color:var(--muted)}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:1fr 1fr}.panel{padding:25px;margin:20px 0}.panel h2{margin-top:0;color:var(--deep)}.task-row,.check-row,.app-toggle{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #edf1f5}.task-row>span{display:grid;min-width:0}.task-row>span small{display:block;margin-top:3px;overflow-wrap:anywhere}.task-row em{font-style:normal;font-size:12px;color:var(--muted)}.check-row{justify-content:flex-start}.check-row>b{width:22px;color:var(--warn)}.check-row.complete>b{color:var(--ok)}.check-row span{display:grid}.progress{height:8px;background:#dde6ee;border-radius:9px;overflow:hidden;margin:22px 0}.progress i{display:block;height:100%;background:var(--sky)}.consent-panel{border-color:#bcdcf6}.consent-choice,.app-toggle{display:flex!important;align-items:flex-start;font-weight:500!important}.consent-choice input,.app-toggle input{margin:4px 10px 0 0}.consent-choice span,.app-toggle span{display:grid}.doc{border-top:1px solid var(--line)}.doc summary{cursor:pointer;display:flex;justify-content:space-between;gap:15px;padding:17px 0;list-style:none}.doc summary span{display:grid}.doc summary em{font-style:normal;color:var(--muted);font-size:12px}.doc-body{padding:5px 0 24px;line-height:1.65}.review-note,.completed-note,.callout{padding:13px;background:#edf6ff;border-left:4px solid var(--sky);margin:14px 0}.completed-note{background:#edf9f3;border-color:#45a678}.app-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.app-card{padding:24px}.app-card>span{font-size:11px;font-weight:900;color:#3a75a7;letter-spacing:.12em}.app-card h2{color:var(--deep)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}td small{display:block}.status{font-size:11px;font-weight:800;text-transform:uppercase}.status.cleared{color:var(--ok)}.portal-footer{margin-top:45px;padding:20px 0;border-top:1px solid var(--line);color:var(--muted);font-size:12px}@media(max-width:980px){.cfo-connect-shell{grid-template-columns:1fr}.cfo-connect-shell aside{position:relative;height:auto}.cfo-connect-shell nav{grid-template-columns:repeat(2,1fr)}.side-foot{margin-top:20px}.metric-grid,.app-grid{grid-template-columns:repeat(2,1fr)}.grid.two{grid-template-columns:1fr}.cfo-connect-login{grid-template-columns:1fr;padding:8vw 5vw}}@media(max-width:600px){.metric-grid,.app-grid{grid-template-columns:1fr}.cfo-connect-shell main{padding:28px 16px}.cfo-connect-shell nav{grid-template-columns:1fr}.cfo-connect-login{padding:40px 18px}.login-card{padding:24px}}
.task-review{display:grid;grid-template-columns:minmax(220px,1fr) 150px auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf1f5}.task-review span{display:grid}.task-review select{margin:0}.task-review button{padding:10px 12px}.app-toggle.disabled{opacity:.55}.app-toggle.disabled input{cursor:not-allowed}.status.hold{color:#a13d35}.status.not_cleared{color:var(--warn)}@media(max-width:760px){.task-review{grid-template-columns:1fr}.task-review button{width:100%}}


/* CFO HQ Connect standalone page shell — v0.1.4
   Keep the Talent Hub header, but remove theme breadcrumbs and the public-site right sidebar
   only on CFO HQ Connect pages. The portal then uses the full content width. */
body.cfohq-connect-page .apus-breadscrumb,
body.cfohq-connect-page .apus-breadcrumb,
body.cfohq-connect-page .breadcrumb,
body.cfohq-connect-page .breadcrumbs,
body.cfohq-connect-page .breadcrumb-wrapper,
body.cfohq-connect-page .page-breadcrumb,
body.cfohq-connect-page .page-title-wrapper,
body.cfohq-connect-page .page-title,
body.cfohq-connect-page .inner-page-title,
body.cfohq-connect-page .heading-page,
body.cfohq-connect-page .apus-page-title,
body.cfohq-connect-page .page-header:not(.site-header) {
    display:none !important;
}

body.cfohq-connect-page .sidebar,
body.cfohq-connect-page .sidebar-wrapper,
body.cfohq-connect-page .sidebar-right,
body.cfohq-connect-page .right-sidebar,
body.cfohq-connect-page .widget-area,
body.cfohq-connect-page .apus-sidebar,
body.cfohq-connect-page .apus-sidebar-right,
body.cfohq-connect-page #secondary,
body.cfohq-connect-page .secondary-sidebar,
body.cfohq-connect-page .sidebar-main,
body.cfohq-connect-page .sidebar-blog {
    display:none !important;
}

/* Expand common Superio/Bootstrap content columns after the public sidebar is removed. */
body.cfohq-connect-page .main-page,
body.cfohq-connect-page .main-content,
body.cfohq-connect-page .content-area,
body.cfohq-connect-page #primary,
body.cfohq-connect-page .content-wrapper,
body.cfohq-connect-page .layout-blog,
body.cfohq-connect-page .col-md-8,
body.cfohq-connect-page .col-lg-8,
body.cfohq-connect-page .col-md-9,
body.cfohq-connect-page .col-lg-9 {
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
}

body.cfohq-connect-page .container-inner,
body.cfohq-connect-page .site-content,
body.cfohq-connect-page .content-page,
body.cfohq-connect-page .entry-content {
    max-width:none !important;
}

body.cfohq-connect-page .cfo-connect-shell {
    width:100%;
    max-width:none;
}
body.cfohq-connect-page .cfo-connect-shell main {
    max-width:none;
}


/* Release 1.4 onboarding wizard and review states */
.wizard-status{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0 22px}.wizard-status span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:13px}.onboarding-wizard{padding:12px 25px}.wizard-step{display:grid;grid-template-columns:34px minmax(0,1fr) 125px auto;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid #edf1f5}.wizard-step:last-child{border-bottom:0}.step-no{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#eaf3fb;color:var(--blue);font-weight:900}.wizard-step.complete .step-no{background:#e7f6ee;color:var(--ok)}.wizard-step>div{display:grid}.wizard-step>div small{margin-top:4px}.step-status{font-size:11px;font-weight:900;text-transform:uppercase;color:var(--warn)}.step-status.complete,.step-status.not_applicable{color:var(--ok)}.step-status.in_review{color:#356fa4}.button.secondary{background:#edf4fb;color:var(--deep)!important;border:1px solid #cbddeb;padding:9px 12px}.final-submit{border-color:#bcdcf6}.review-actions{display:flex;gap:10px;flex-wrap:wrap}.button.warn,.review-actions .warn{background:#9b650b}.button.danger,.review-actions .danger{background:#9e3f3f}.status.awaiting_review{color:#356fa4}.status.declined{color:#9e3f3f}.status.not_cleared{color:var(--warn)}
@media(max-width:820px){.wizard-step{grid-template-columns:34px 1fr}.wizard-step .step-status,.wizard-step .button,.wizard-step .fine{grid-column:2}}


/* Release 1.5 — authenticated CFO HQ Connect application chrome.
   Hide the public Talent Hub header only inside the authorised portal.
   The secure sign-in page and every non-Connect Talent Hub page remain unchanged. */
body.cfohq-connect-authenticated #apus-header,
body.cfohq-connect-authenticated .apus-header,
body.cfohq-connect-authenticated header.site-header,
body.cfohq-connect-authenticated .site-header,
body.cfohq-connect-authenticated .header-v1,
body.cfohq-connect-authenticated .header-default,
body.cfohq-connect-authenticated .header-mobile,
body.cfohq-connect-authenticated #apus-mobile-menu,
body.cfohq-connect-authenticated .top-header,
body.cfohq-connect-authenticated .topbar,
body.cfohq-connect-authenticated .header-top,
body.cfohq-connect-authenticated .main-sticky-header,
body.cfohq-connect-authenticated .main-header {
    display:none !important;
}
body.cfohq-connect-authenticated .cfo-connect-shell{margin-top:0!important}
.connect-appbar{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:-12px 0 30px;padding:14px 0 18px;border-bottom:1px solid var(--line)}
.connect-appbar-brand{display:grid;gap:2px}.connect-appbar-brand strong{font-size:18px;color:var(--deep)}.connect-appbar-brand span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:800}
.connect-appbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px}.connect-appbar-actions a{color:var(--blue);text-decoration:none;font-weight:750;font-size:13px}.connect-icon-link{font-size:18px!important}.connect-user{display:grid;padding-left:18px;border-left:1px solid var(--line);font-weight:800;color:var(--deep);line-height:1.2}.connect-user small{font-weight:500;margin-top:3px}.connect-signout{background:var(--deep);color:#fff!important;padding:9px 13px;border-radius:7px}
@media(max-width:760px){.connect-appbar{align-items:flex-start}.connect-appbar-brand span,.connect-appbar-actions>a:not(.connect-signout),.connect-user small{display:none}.connect-appbar-actions{gap:9px}.connect-user{padding-left:0;border-left:0;font-size:12px}}

/* v0.2.0 — Client Portal, projects, timesheets and billing */
body.cfohq-client-authenticated #apus-header,
body.cfohq-client-authenticated .apus-header,
body.cfohq-client-authenticated header.site-header,
body.cfohq-client-authenticated .site-header,
body.cfohq-client-authenticated .header-v1,
body.cfohq-client-authenticated .header-default,
body.cfohq-client-authenticated .header-mobile,
body.cfohq-client-authenticated #apus-mobile-menu,
body.cfohq-client-authenticated .top-header,
body.cfohq-client-authenticated .topbar,
body.cfohq-client-authenticated .header-top,
body.cfohq-client-authenticated .main-sticky-header,
body.cfohq-client-authenticated .main-header{display:none!important}
.client-shell aside{background:#0a2240}.client-shell .side-brand small{color:#9fc6e8}.timesheet-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.timesheet-head h2{margin-bottom:4px}.timesheet-head p{margin-top:0;color:var(--muted)}.entry-grid{display:grid;grid-template-columns:150px 100px 1fr;gap:9px;margin:18px 0}.entry-grid>b{font-size:12px;color:var(--muted);text-transform:uppercase}.entry-grid input{width:100%;padding:10px;border:1px solid #becbd7;border-radius:7px}.review-actions form{display:flex;gap:8px;align-items:center}.review-actions input{padding:10px;border:1px solid #becbd7;border-radius:7px}.review-actions .danger,.danger{background:#9e3f3f!important}.client-login .cfo-connect-login-copy h1{font-size:clamp(44px,5vw,70px)}
@media(max-width:720px){.entry-grid{grid-template-columns:1fr}.entry-grid>b{display:none}.timesheet-head{display:block}.review-actions form{display:grid;width:100%}}

/* v0.3.0 — Big 4-grade client, project, billing and document control experience */
.section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.section-head h2{margin:0}.section-head>a{font-weight:800;text-decoration:none;color:var(--blue)}
.compact-metrics{display:flex;gap:14px;flex-wrap:wrap;margin:12px 0 18px}.compact-metrics span{display:inline-flex;gap:7px;align-items:baseline;padding:10px 12px;background:#f4f8fc;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:12px}.compact-metrics b{font-size:18px;color:var(--deep)}
.project-snapshot{display:grid;grid-template-columns:minmax(220px,1fr) minmax(120px,220px) 52px;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid #edf1f5}.project-snapshot:last-child{border-bottom:0}.project-snapshot>div:first-child{display:grid}.project-snapshot small{margin-top:4px}.mini-progress{height:7px;background:#e8eef5;border-radius:999px;overflow:hidden}.mini-progress i{display:block;height:100%;background:#1467d9;border-radius:999px}.project-snapshot strong{text-align:right;color:var(--blue)}
.action-banner{display:grid;gap:10px;padding:15px;border:1px solid #cfe0f2;border-radius:9px;background:#f5f9fd;margin:10px 0}.action-banner .button{width:max-content}.contact-card{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid #edf1f5}.avatar-circle{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#e8f2fb;color:#1e67ad;font-weight:900}.contact-card>div:nth-child(2){display:grid}.contact-card small{margin-top:3px}.contact-card>a{font-weight:800;color:var(--blue);text-decoration:none}
.status-pill{display:inline-flex;align-items:center;border-radius:999px;background:#eef5fb;border:1px solid #d4e2ef;color:#294b6b;padding:6px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.project-detail .progress{margin:16px 0 20px}.project-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.project-meta>div{display:grid;background:#f7fafc;border:1px solid var(--line);border-radius:8px;padding:12px}.project-meta b{font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.05em}.project-meta span{margin-top:5px;color:var(--deep);font-weight:750}
.message-card{border-bottom:1px solid #edf1f5;padding:14px 0}.message-card b,.message-card small{display:block}.message-card small{margin-top:4px}.message-card p{margin-bottom:0}.project-admin{border:1px solid var(--line);border-radius:10px;margin:12px 0;background:#fff}.project-admin>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 18px;cursor:pointer}.project-admin>summary span{display:grid}.project-admin>summary small{margin-top:4px}.project-admin-body{padding:0 18px 20px;border-top:1px solid #edf1f5}.project-admin-body h3{margin-top:22px}.dashboard-commercial{margin-top:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.timesheet-entry-grid{display:grid;gap:8px;margin:14px 0}.time-entry{display:grid;grid-template-columns:160px 110px 1fr;gap:8px}.time-entry input{width:100%}.selfbill-card{margin-top:14px;padding:16px;border:1px solid #d7e4f0;background:#f7fbff;border-radius:8px}
.client-shell main{background:linear-gradient(180deg,#f7f9fc 0,#f2f6fa 100%)}.client-shell .panel{box-shadow:0 8px 28px rgba(9,35,65,.045)}.client-shell h1{letter-spacing:-.025em}.client-shell table small{display:block;margin-top:3px}.client-shell .metric-grid article{background:#fff}.client-shell .connect-appbar{position:sticky;top:0;z-index:3;background:#f7f9fc;padding-top:12px}
body.cfohq-connect-page table{width:100%;border-collapse:collapse}body.cfohq-connect-page table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:10px 8px;border-bottom:1px solid var(--line)}body.cfohq-connect-page table td{padding:12px 8px;border-bottom:1px solid #edf1f5;vertical-align:top}
@media(max-width:900px){.project-meta{grid-template-columns:1fr 1fr}.project-snapshot{grid-template-columns:1fr}.project-snapshot strong{text-align:left}.time-entry{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}}

/* Standalone secure sign-in surfaces */
body.cfohq-client-login-page #apus-header,body.cfohq-client-login-page .apus-header,body.cfohq-client-login-page header.site-header,body.cfohq-client-login-page .site-header,body.cfohq-client-login-page .header-v1,body.cfohq-client-login-page .header-default,body.cfohq-client-login-page .header-mobile,body.cfohq-client-login-page #apus-mobile-menu,body.cfohq-client-login-page .top-header,body.cfohq-client-login-page .topbar,body.cfohq-client-login-page .header-top,body.cfohq-client-login-page .main-sticky-header,body.cfohq-client-login-page .main-header,
body.cfohq-connect-login-page #apus-header,body.cfohq-connect-login-page .apus-header,body.cfohq-connect-login-page header.site-header,body.cfohq-connect-login-page .site-header,body.cfohq-connect-login-page .header-v1,body.cfohq-connect-login-page .header-default,body.cfohq-connect-login-page .header-mobile,body.cfohq-connect-login-page #apus-mobile-menu,body.cfohq-connect-login-page .top-header,body.cfohq-connect-login-page .topbar,body.cfohq-connect-login-page .header-top,body.cfohq-connect-login-page .main-sticky-header,body.cfohq-connect-login-page .main-header{display:none!important}
body.cfohq-client-login-page .site-content,body.cfohq-connect-login-page .site-content{padding-top:0!important}

/* v0.3.5 — CFO HQ controlled timesheet workspace */
.timesheet-workspace{overflow:hidden}.timesheet-brand-strip{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;background:#071d3a;color:#fff;padding:17px 20px;margin:0 0 22px;border-radius:10px;border-bottom:4px solid #2c83d6}.timesheet-brand-strip strong{font-size:20px;letter-spacing:.04em}.timesheet-brand-strip span{font-weight:700}.timesheet-brand-strip small{color:#b9d0e8}.timesheet-grid-head,.time-entry{display:grid;grid-template-columns:170px 110px 1fr;gap:10px;align-items:center}.timesheet-grid-head{padding:9px 10px;background:#eaf1f8;color:#36536f;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;border:1px solid #dbe5ef;border-bottom:0}.timesheet-entry-grid{border:1px solid #dbe5ef;border-radius:0 0 8px 8px;overflow:hidden}.time-entry{padding:7px 10px;border-top:1px solid #edf1f5}.time-entry:first-child{border-top:0}.time-entry input{margin:0!important}.timesheet-cert,.approval-cert{margin:18px 0;padding:16px 18px;background:#f5f8fb;border-left:4px solid #2c83d6;border-radius:5px}.primary-action{min-width:290px}.timesheet-total{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.timesheet-total b{font-size:32px;color:#10165c}.timesheet-total span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#5d7186}.client-timesheet-preview table{margin-top:18px}.empty-state{padding:28px!important;background:#f8fafc!important;border:1px dashed #bdcad7!important}.empty-state h3{margin-top:0;color:#10165c}@media(max-width:760px){.timesheet-brand-strip{grid-template-columns:1fr}.timesheet-grid-head{display:none}.time-entry{grid-template-columns:1fr}.primary-action{min-width:0;width:100%}}

/* v0.4.1 client quick project request */
.client-dashboard-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.client-project-cta{white-space:nowrap;margin-top:8px}.quick-project-panel{max-width:900px}.quick-project-form textarea{resize:vertical}.client-master-confirm{background:#f2f7fb;border:1px solid #d9e6f1;border-radius:12px;padding:14px 16px;margin:18px 0}.client-master-confirm b,.client-master-confirm span{display:block}.client-master-confirm span{color:#5f7187;margin-top:4px}.project-request-card{border:1px solid #dfe7ef;border-radius:14px;padding:16px;margin:12px 0;display:grid;grid-template-columns:1fr auto;gap:10px}.project-request-card small{display:block;color:#64758a;margin-top:4px}.project-request-card p{grid-column:1/-1}.request-review-note{background:#f6f8fb;border-radius:10px;padding:12px}.project-request-register details{margin:10px 0}@media(max-width:760px){.client-dashboard-heading{display:block}.client-project-cta{display:inline-block;margin:0 0 18px}.project-request-card{grid-template-columns:1fr}.project-request-card .status-pill{justify-self:start}}

/* v0.4.5 — confirmation journeys and portal breathing room */
body.cfohq-client-authenticated .cfo-connect-shell,
body.cfohq-connect-authenticated .cfo-connect-shell{margin-top:14px!important}
body.cfohq-client-authenticated .cfo-connect-shell aside,
body.cfohq-connect-authenticated .cfo-connect-shell aside{top:14px;height:calc(100vh - 14px);border-radius:0 10px 0 0}
body.cfohq-client-authenticated .client-shell .connect-appbar{top:14px}
.success-confirmation{display:grid;grid-template-columns:64px minmax(0,1fr);gap:22px;align-items:start;background:linear-gradient(135deg,#ffffff 0%,#f1f8ff 100%);border:1px solid #c9ddec;border-top:4px solid #2c83d6;border-radius:16px;padding:28px 30px;margin:0 0 30px;box-shadow:0 12px 36px rgba(7,29,58,.08)}
.success-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#e7f6ee;color:#0f7a4f;font-size:30px;font-weight:900;border:1px solid #b9e1cd}
.success-copy h1{font-size:clamp(30px,3vw,44px)!important;margin:7px 0 10px!important}
.success-copy>p{font-size:16px;line-height:1.65;color:#52647a;max-width:900px}
.success-reference{display:inline-grid;gap:4px;margin:12px 0 18px;padding:13px 16px;background:#fff;border:1px solid #d9e5ef;border-radius:9px}
.success-reference span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#66758a;font-weight:800}
.success-reference strong{color:#101447;font-size:17px}
.success-reference-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));width:100%;gap:0;padding:0;overflow:hidden}
.success-reference-grid>div{display:grid;gap:4px;padding:14px 16px;border-right:1px solid #e7edf3;border-bottom:1px solid #e7edf3}
.success-next{margin:4px 0 18px;padding:15px 18px;background:#fff;border-left:4px solid #56aeff;border-radius:6px}
.success-next ol{margin:8px 0 0 20px;padding:0;color:#52647a;line-height:1.65}
.success-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
@media(max-width:760px){body.cfohq-client-authenticated .cfo-connect-shell,body.cfohq-connect-authenticated .cfo-connect-shell{margin-top:8px!important}body.cfohq-client-authenticated .cfo-connect-shell aside,body.cfohq-connect-authenticated .cfo-connect-shell aside{top:0;height:auto;border-radius:0}.success-confirmation{grid-template-columns:1fr;padding:22px}.success-reference-grid{grid-template-columns:1fr}.success-icon{width:50px;height:50px}}
/* v0.6.0 Engagement workspace */
.project-control-centre{overflow:visible}.lifecycle-track{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:22px 0 26px}.lifecycle-step{position:relative;text-align:center;color:#73839a;font-size:12px;font-weight:700}.lifecycle-step:before{content:"";position:absolute;top:17px;left:-50%;right:50%;height:2px;background:#dfe7ef;z-index:0}.lifecycle-step:first-child:before{display:none}.lifecycle-step i{position:relative;z-index:1;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;margin:0 auto 8px;background:#eef3f8;border:2px solid #d9e3ed;font-style:normal;color:#5d7087}.lifecycle-step.current i{background:#123e67;color:#fff;border-color:#123e67}.lifecycle-step.done i{background:#e6f6ee;color:#177245;border-color:#8bd0aa}.lifecycle-step.done:before,.lifecycle-step.current:before{background:#8bd0aa}.next-action{margin:24px 0;padding:22px;border-radius:14px;background:#f3f7fb;border-left:5px solid #276fbf}.next-action.client{background:#fff8e8;border-left-color:#d99a13}.next-action.done{background:#eef9f3;border-left-color:#2f9d63}.next-action h3{margin:5px 0 8px}.workspace-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.workspace-section{margin-top:26px;padding-top:22px;border-top:1px solid #e3eaf1}.milestone-row,.approval-card{display:grid;grid-template-columns:1fr auto;gap:16px;padding:16px 0;border-bottom:1px solid #edf1f5}.milestone-row small,.approval-card small,.activity-item small{display:block;color:#6f8092;margin-top:3px}.project-workspace-grid{margin-top:16px}.activity-timeline{position:relative}.activity-item{display:grid;grid-template-columns:16px 1fr;gap:12px;padding:10px 0}.activity-item i{width:10px;height:10px;border-radius:50%;background:#276fbf;margin-top:6px}.compact-form{background:#f8fafc;padding:18px;border-radius:12px}.inline-control{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid #edf1f5}.engagement-control .project-admin-body hr{border:0;border-top:1px solid #e3eaf1;margin:24px 0}@media(max-width:900px){.lifecycle-track{grid-template-columns:repeat(3,1fr);row-gap:18px}.lifecycle-step:before{display:none}.inline-control{grid-template-columns:1fr}.workspace-actions .button{width:100%;text-align:center}}

/* v0.6.1 stage-gated engagement workflow */
.stage-gate-card{margin:22px 0;padding:22px;border:1px solid #d8e2ec;border-left:5px solid #174a7e;border-radius:14px;background:#f8fbfe;display:grid;grid-template-columns:1.6fr 1fr;gap:22px;align-items:start}.stage-gate-card h3,.stage-admin-gate h3{margin:4px 0 8px}.stage-gate-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;font-size:13px;color:#516579}.stage-gate-meta span{background:#fff;border:1px solid #e0e8ef;border-radius:9px;padding:8px 10px}.stage-gate-actions{display:flex;flex-direction:column;gap:10px}.stage-gate-actions form{margin:0}.stage-gate-actions small{color:#687b8f;line-height:1.5}.status-pill.action-required{background:#fff4dd;border-color:#e6c873;color:#7a5700}.stage-admin-gate{margin:0 0 24px;padding:20px;border:1px solid #d4e0ea;border-radius:14px;background:#f7fafc}.stage-admin-actions{margin-top:16px;padding-top:16px;border-top:1px solid #dce5ed;display:grid;grid-template-columns:1fr 1fr;gap:16px}.stage-admin-actions form{margin:0}.inline-control input[aria-label="Milestone title"]{min-width:160px}.inline-control input[aria-label="Milestone note"]{min-width:210px}.lifecycle-step.current{cursor:default}.lifecycle-step.done i{font-weight:700}.lifecycle-step.current i{box-shadow:0 0 0 4px rgba(23,74,126,.10)}
@media(max-width:900px){.stage-gate-card,.stage-admin-actions{grid-template-columns:1fr}.stage-gate-meta{gap:8px}}

/* v0.6.2 Project portfolio control board */
.project-board-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:18px;margin-top:18px}.project-board-card{border:1px solid #dbe4ee;border-radius:16px;padding:20px;background:#fff}.board-card-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.board-card-head b{display:block;font-size:17px;color:#0d1b52}.board-card-head small{display:block;margin-top:4px;color:#63738a}.ops-gates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0}.ops-gate{display:flex;align-items:center;gap:8px;padding:9px 11px;border-radius:10px;font-size:13px;font-weight:700}.ops-gate i{font-style:normal;width:20px;height:20px;display:inline-grid;place-items:center;border-radius:50%}.ops-gate.is-done{background:#edf8f2;color:#176b48}.ops-gate.is-done i{background:#d4efdf}.ops-gate.is-open{background:#f7f2ee;color:#8a4c2c}.ops-gate.is-open i{background:#f0dfd2}.board-note{padding:10px 12px;background:#f7f9fc;border-left:3px solid #315e9c;border-radius:6px}.ops-editor{margin-top:14px;border-top:1px solid #e2e8f0;padding-top:12px}.ops-editor summary{cursor:pointer;font-weight:700;color:#173b68}.project-control-board .compact-metrics{margin-top:10px}@media(max-width:700px){.project-board-grid{grid-template-columns:1fr}.ops-gates{grid-template-columns:1fr}.board-card-head{display:block}.board-card-head .status-pill{display:inline-block;margin-top:10px}}


/* v0.6.3 Super Admin actionable project control board */
.board-stage-control{margin-top:18px;padding-top:16px;border-top:1px solid #dbe5ef}
.board-stage-track{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-bottom:14px}
.board-stage{display:flex;align-items:center;gap:6px;min-width:0;font-size:11px;line-height:1.25;color:#71839a}
.board-stage i{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;background:#edf3f8;border:1px solid #d4e0ea;font-style:normal;font-weight:800}
.board-stage.done{color:#315d52}.board-stage.done i{background:#e9f6f0;border-color:#b9decd}.board-stage.current{color:#0d335b;font-weight:800}.board-stage.current i{background:#163f68;color:#fff;border-color:#163f68}
.board-stage-action{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;background:#f7fafc;border:1px solid #dce6ef;border-radius:12px;padding:14px}
.board-stage-action>div:first-child{display:grid;gap:4px;min-width:0}.board-stage-action small{display:block;color:#60738a}
.board-stage-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:8px;max-width:58%}
.board-stage-buttons form{margin:0}.super-override-form{width:100%;padding:10px;border:1px solid #c9d8e5;border-radius:10px;background:#fff}.super-override-form label{margin:0 0 8px}.super-override-form small{margin-top:6px}.super-admin-action{background:#112b4b!important}
@media(max-width:900px){.board-stage-track{grid-template-columns:repeat(3,minmax(0,1fr))}.board-stage-action{display:block}.board-stage-buttons{max-width:none;justify-content:flex-start;margin-top:12px}}
@media(max-width:560px){.board-stage-track{grid-template-columns:repeat(2,minmax(0,1fr))}.board-stage{font-size:10px}}

/* v0.6.4 visibility and sign-in spacing */
.cfohq-connect-login-page .cfo-connect-login{margin-top:18px;}
.project-control-board{scroll-margin-top:90px;}
/* v0.6.6 — visible project-control actions and timesheet initiation */
.project-quick-controls,.timesheet-trigger-box{margin-top:18px;padding:18px;border:1px solid #dbe5ef;border-radius:14px;background:#f8fbfe}.project-quick-controls .section-head{margin-bottom:12px}.quick-control-buttons{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.quick-control-buttons form{display:flex;gap:8px;align-items:center;margin:0}.quick-control-buttons input{min-width:180px}.timesheet-trigger-box{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(420px,1.6fr);gap:20px;align-items:end}.timesheet-trigger-box>div:first-child{display:flex;flex-direction:column;gap:6px}.timesheet-trigger-box form{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:10px;align-items:end;margin:0}.timesheet-trigger-box label{margin:0}.ops-editor[open]{margin-top:16px}.ops-editor summary{font-weight:700;cursor:pointer}.action-banner{display:flex;justify-content:space-between;gap:18px;align-items:center}.action-banner small{display:block;margin-top:4px}
@media(max-width:900px){.timesheet-trigger-box{grid-template-columns:1fr}.timesheet-trigger-box form{grid-template-columns:1fr 1fr}.timesheet-trigger-box form label:first-of-type{grid-column:1/-1}.quick-control-buttons form{width:100%;flex-wrap:wrap}.quick-control-buttons button{width:100%}}
@media(max-width:560px){.timesheet-trigger-box form{grid-template-columns:1fr}.timesheet-trigger-box form label:first-of-type{grid-column:auto}.action-banner{align-items:flex-start;flex-direction:column}}

/* v0.6.7 — project-control handler recovery */

/* v0.6.8 — condensed client approvals + persistent internal navigation footer */
.compact-approvals .approvals-head{align-items:center}.approvals-head>div:first-child{display:grid;gap:3px}.approval-density{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted)}.approval-density a,.approval-pagination a{display:inline-grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border:1px solid #d8e2ec;border-radius:7px;background:#fff;color:var(--blue);font-weight:800;text-decoration:none}.approval-density a.active,.approval-pagination a.active{background:var(--deep);border-color:var(--deep);color:#fff}.approval-card-compact{grid-template-columns:minmax(0,1fr) auto;align-items:start;padding:11px 0;gap:10px}.approval-card-compact .approval-summary p{margin:5px 0 0;color:#53657a;font-size:13px;line-height:1.45}.approval-card-compact .status-pill{white-space:nowrap}.approval-action-toggle{grid-column:1/-1;margin-top:3px}.approval-action-toggle summary{cursor:pointer;color:var(--blue);font-weight:800;font-size:13px}.approval-action-toggle .review-actions{margin-top:10px;padding:12px;background:#f8fafc;border:1px solid #e3eaf1;border-radius:9px}.approval-decision-line{grid-column:1/-1;font-size:12px;color:#607388;padding:5px 0 0}.approval-pagination{display:flex;gap:6px;justify-content:flex-end;padding-top:12px}.approval-pagination a{height:28px;min-width:28px}.compact-approvals .review-actions form{flex:1;min-width:240px}
@media(min-width:981px){.cfo-connect-shell aside{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.cfo-connect-shell aside nav{min-height:0;overflow-y:auto;align-content:start;padding-right:3px}.cfo-connect-shell aside .side-foot{margin-top:12px;position:relative;z-index:3;background:var(--navy);padding-bottom:4px}}
@media(max-width:700px){.approval-card-compact{grid-template-columns:1fr}.approval-card-compact .status-pill{justify-self:start}.approval-density{margin-top:8px}.compact-approvals .review-actions form{min-width:0}}


/* v0.6.9 — condensed two-column client project activity */
.compact-activity .section-head>div:first-child{display:grid;gap:3px}.activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.activity-card{grid-template-columns:12px minmax(0,1fr);gap:9px;padding:12px 13px;border:1px solid #e1e8ef;border-radius:10px;background:#fafcfe;min-width:0}.activity-card i{width:8px;height:8px;margin-top:5px}.activity-card b{font-size:13px;line-height:1.3}.activity-card small{font-size:11px}.activity-card p{margin:5px 0 0;color:#53657a;font-size:12px;line-height:1.4}.activity-pagination{margin-top:10px}.compact-activity>.fine{margin-top:10px}
@media(max-width:760px){.activity-grid{grid-template-columns:1fr}.compact-activity .section-head{align-items:flex-start}.compact-activity .section-head>span{white-space:nowrap}}

.workflow-activation-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;width:100%;margin-top:14px}.workflow-activation-card{background:#fff;border:1px solid #dbe6ef;border-radius:12px;padding:16px}.workflow-activation-card h4{margin:0 0 12px}.workflow-activation-card form{display:grid;gap:10px}.workflow-activation-card small{display:block;margin-top:6px}@media(max-width:900px){.workflow-activation-grid{grid-template-columns:1fr}}


/* v0.7.1 — streamlined consultant assignment & timesheet activation */
.workflow-compact{display:block!important;padding:20px!important}
.workflow-compact .workflow-header{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}
.workflow-compact .workflow-header>b{font-size:18px;color:#101a52}
.workflow-compact .workflow-header>small{color:#64748b;max-width:760px}
.workflow-alert{margin:10px 0 14px}
.workflow-step{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px;align-items:start;padding:16px 0;border-top:1px solid #dce6f0}
.workflow-step-title{display:flex;flex-direction:column;gap:3px}
.workflow-step-title>span{font-size:11px;font-weight:800;letter-spacing:.12em;color:#2c6da4}
.workflow-step-title>b{font-size:16px;color:#111b55}
.workflow-step-title>small{color:#718096}
.workflow-step-body{min-width:0}
.workflow-inline-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:end;margin:0}
.workflow-inline-form label,.workflow-timesheet-form label{margin:0}
.workflow-inline-form label>span,.workflow-timesheet-form label>span{display:block;font-weight:700;font-size:13px;margin-bottom:5px;color:#18213d}
.workflow-inline-form select,.workflow-timesheet-form select,.workflow-timesheet-form input{width:100%;min-width:0}
.workflow-inline-form button,.workflow-timesheet-form button{white-space:nowrap;margin:0}
.workflow-help{margin:7px 0 0!important}
.workflow-assigned-list{margin-top:10px;padding:9px 11px;border-radius:8px;background:#eef8f1;color:#215b3b;font-size:13px}
.workflow-assigned-list span{font-weight:700}
.workflow-timesheet-form{display:grid;grid-template-columns:minmax(190px,1.25fr) minmax(150px,.8fr) minmax(150px,.8fr) auto;gap:10px;align-items:end;margin:0}
.workflow-step.is-locked{opacity:.82}
.workflow-locked-note{padding:12px 14px;border-left:3px solid #8aa2b8;background:#f3f6f9;border-radius:6px;color:#536477}
@media(max-width:900px){.workflow-step{grid-template-columns:1fr}.workflow-inline-form,.workflow-timesheet-form{grid-template-columns:1fr}.workflow-inline-form button,.workflow-timesheet-form button{width:100%}}
.weekly-timesheet-intro{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:14px 16px;margin:0 0 18px;background:#f4f8fc;border:1px solid #dbe6f0;border-radius:10px}.weekly-timesheet-intro p{margin:4px 0 0}.weekly-timesheet-intro>span{white-space:nowrap;font-size:12px;font-weight:700;color:#35688e}.weekly-grid{border:1px solid #dbe6f0;border-radius:10px;overflow:hidden;margin:16px 0}.weekly-grid-head,.weekly-entry{display:grid;grid-template-columns:110px 150px 110px minmax(240px,1fr);gap:0}.weekly-grid-head{background:#e9f1f8;font-size:12px;font-weight:700;text-transform:uppercase;color:#48647b}.weekly-grid-head span,.weekly-entry>*{padding:10px 12px;border-right:1px solid #dbe6f0}.weekly-grid-head span:last-child,.weekly-entry>*:last-child{border-right:0}.weekly-entry{align-items:center;border-top:1px solid #dbe6f0}.weekly-entry input{margin:0;min-width:0;width:100%}.weekly-entry strong{font-size:13px}.weekly-timesheet-summary{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;margin:16px 0}.weekly-timesheet-summary textarea{min-height:90px}@media(max-width:820px){.weekly-grid{overflow-x:auto}.weekly-grid-head,.weekly-entry{min-width:720px}.weekly-timesheet-summary,.weekly-timesheet-intro{grid-template-columns:1fr;display:grid}.weekly-timesheet-intro>span{white-space:normal}}
/* v0.7.4 — controlled timesheet confirmation journeys */
.submission-confirmation{border-left:5px solid #2fa66a;background:#f2fbf6;margin-bottom:22px}.submission-confirmation h2{margin:7px 0 8px}.submission-confirmation p{max-width:860px}.confirmation-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.confirmation-actions .button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
/* v0.7.4 — controlled timesheet confirmation journeys */
.submission-confirmation{border-left:5px solid #2fa66a;background:#f2fbf6;margin-bottom:22px}.submission-confirmation h2{margin:7px 0 8px}.submission-confirmation p{max-width:860px}.confirmation-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.confirmation-actions .button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}

/* v0.8.1 — compact client timesheet approval actions */
.client-timesheet-preview .review-actions{display:grid;gap:12px;margin-top:14px}
.client-timesheet-preview .review-actions form{display:grid;grid-template-columns:minmax(230px,.9fr) minmax(260px,1.2fr) auto;gap:12px;align-items:end;width:100%;margin:0}
.client-timesheet-preview .review-actions form+form{grid-template-columns:minmax(300px,1fr) auto;max-width:760px}
.client-timesheet-preview .review-actions label{margin:0;font-size:13px}
.client-timesheet-preview .review-actions .check{align-self:center;line-height:1.35;margin:0!important}
.client-timesheet-preview .review-actions input:not([type=checkbox]){height:42px;padding:9px 11px;margin-top:5px}
.client-timesheet-preview .review-actions button{width:auto;min-width:150px;height:42px;padding:9px 16px;line-height:1.1;white-space:nowrap;align-self:end}
.client-timesheet-preview .review-actions .danger{min-width:175px}
@media(max-width:900px){.client-timesheet-preview .review-actions form,.client-timesheet-preview .review-actions form+form{grid-template-columns:1fr;max-width:none}.client-timesheet-preview .review-actions button{justify-self:start}.client-timesheet-preview .review-actions .check{align-self:start}}
/* v0.8.2 approval and billing audit controls */
.approval-audit-list{display:grid;gap:10px}.approval-audit-row,.board-audit-row{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:11px 13px;border:1px solid #e1e8ef;border-radius:10px;background:#fff}.approval-audit-row small,.board-audit-row small{display:block;color:#66788c;margin-top:3px}.board-approval-audit{margin:14px 0;padding:13px;border:1px solid #dce6ef;border-radius:12px;background:#f8fafc}.board-approval-audit .eyebrow{display:block;margin-bottom:8px}.board-audit-row+ .board-audit-row{margin-top:8px}.compact-billing-action{display:grid;gap:7px;min-width:180px}.compact-billing-action label{font-size:12px}.compact-billing-action input{padding:7px 9px;min-height:36px}.compact-billing-action button{padding:8px 11px;font-size:12px}.timesheet-audit-note small{display:block;margin-top:5px}@media(max-width:760px){.approval-audit-row,.board-audit-row{align-items:flex-start;flex-direction:column}}

/* v0.8.6 billing preview and compact billing controls */
.cfohq-invoice-preview{max-width:980px}.invoice-preview-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:18px;border-bottom:2px solid #12345b}.invoice-brand{font-size:24px;font-weight:800;color:#071a33}.invoice-preview-head span{display:block;margin-top:6px;font-size:12px;letter-spacing:.14em;font-weight:800;color:#2d74da}.invoice-ref{text-align:right}.invoice-ref b{font-size:20px;display:block}.invoice-ref small{display:block;margin-top:5px}.invoice-parties{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:22px 0}.invoice-parties>div{background:#f6f9fc;border:1px solid #dce6f0;border-radius:9px;padding:16px}.invoice-parties small,.invoice-meta-grid small,.invoice-totals small{display:block;color:#60738a;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px}.invoice-parties strong{font-size:17px}.invoice-meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}.invoice-meta-grid span{border:1px solid #dce6f0;border-radius:8px;padding:12px}.invoice-lines{margin-top:10px}.invoice-totals{display:flex;justify-content:flex-end;gap:12px;margin-top:18px}.invoice-totals span{min-width:130px;border:1px solid #dce6f0;border-radius:8px;padding:12px}.invoice-totals .grand{background:#071a33;color:#fff;border-color:#071a33}.invoice-preview-actions{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-top:22px}.invoice-preview-actions form{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin:0}.invoice-preview-actions label{margin:0;min-width:260px}.billing-row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.billing-row-actions .button{padding:8px 11px!important;font-size:13px!important;min-height:auto!important}@media(max-width:760px){.invoice-parties,.invoice-meta-grid{grid-template-columns:1fr}.invoice-totals{flex-direction:column}.invoice-totals span{width:100%}}
/* v0.8.7 billing controls */
.billing-row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.billing-row-actions .button{padding:8px 12px!important;min-height:auto!important;line-height:1.2!important;font-size:13px!important}.billing-row-actions.compact{margin-top:8px}.client-invoice-send{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:end;width:100%;margin-top:12px}.client-invoice-send label{margin:0}.client-invoice-send button{white-space:nowrap}.invoice-payment-block{margin:20px 0 4px;padding:18px;border:1px solid #dfe7ef;background:#f8fafc;border-radius:10px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.invoice-payment-block small{display:block;color:#6b7a8f;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.invoice-payment-block strong{display:block;margin-top:4px}.invoice-payment-block .payment-instructions{grid-column:1/-1}.invoice-payment-block p{margin:5px 0 0;white-space:normal}@media(max-width:720px){.client-invoice-send,.invoice-payment-block{grid-template-columns:1fr}.invoice-payment-block .payment-instructions{grid-column:auto}}


/* v0.9.1 — internal navigation click/scroll recovery.
   Keep the complete Connect navigation in its own interaction layer and prevent
   long onboarding/commercial content or theme overlays from intercepting clicks. */
@media(min-width:981px){
 body.cfohq-connect-authenticated .cfo-connect-shell>aside{position:sticky;top:0;z-index:100;height:100vh;isolation:isolate;pointer-events:auto!important;}
 body.cfohq-connect-authenticated .cfo-connect-shell>aside nav{position:relative;z-index:102;pointer-events:auto!important;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;touch-action:pan-y;}
 body.cfohq-connect-authenticated .cfo-connect-shell>aside nav a{position:relative;z-index:103;display:block;pointer-events:auto!important;cursor:pointer;}
 body.cfohq-connect-authenticated .cfo-connect-shell>aside .side-brand,
 body.cfohq-connect-authenticated .cfo-connect-shell>aside .side-foot{position:relative;z-index:102;}
 body.cfohq-connect-authenticated .cfo-connect-shell>main{position:relative;z-index:1;min-width:0;}
}

/* v0.9.2 — definitive sidebar interaction recovery.
   Apply without relying on body classes, which some theme templates omit. */
@media(min-width:981px){
 .cfo-connect-shell{position:relative;isolation:isolate;}
 .cfo-connect-shell>aside{position:sticky!important;top:0!important;z-index:2147483000!important;height:100vh!important;pointer-events:auto!important;isolation:isolate!important;}
 .cfo-connect-shell>aside:before,.cfo-connect-shell>aside:after{pointer-events:none!important;}
 .cfo-connect-shell>aside nav{position:relative!important;z-index:2147483001!important;pointer-events:auto!important;overflow-y:auto!important;overflow-x:hidden!important;}
 .cfo-connect-shell>aside nav a{position:relative!important;z-index:2147483002!important;pointer-events:auto!important;cursor:pointer!important;touch-action:manipulation!important;}
 .cfo-connect-shell>main{position:relative!important;z-index:1!important;min-width:0!important;}
 .cfo-connect-shell>main:before,.cfo-connect-shell>main:after{pointer-events:none!important;}
}

/* v0.9.3 — standalone internal portal: theme wrappers are bypassed server-side. */
body.cfohq-connect-standalone-runtime{margin:0!important;padding:0!important;background:var(--soft)!important}body.cfohq-connect-standalone-runtime .cfo-connect-shell{margin:0!important;width:100%!important;max-width:none!important}body.cfohq-connect-standalone-runtime .cfo-connect-shell>aside{top:0!important;height:100vh!important}body.cfohq-connect-standalone-runtime .cfo-connect-shell>aside nav a{pointer-events:auto!important;cursor:pointer!important}

/* v0.9.4 — true isolated runtime; no theme/plugin front-end hooks are loaded. */
body.cfohq-connect-standalone-runtime .cfo-connect-shell>aside nav a{display:block!important;position:relative!important;pointer-events:auto!important;user-select:auto!important;-webkit-user-select:auto!important;}
body.cfohq-connect-standalone-runtime .cfo-connect-shell>aside nav{pointer-events:auto!important;}

/* v0.9.6 — sidebar structural fix: footer can never cover the final navigation item. */
body.cfohq-connect-standalone-runtime .cfo-connect-shell>aside{display:flex!important;flex-direction:column!important;}
body.cfohq-connect-standalone-runtime .cfo-connect-shell>aside .side-brand{flex:0 0 auto!important;}
body.cfohq-connect-standalone-runtime .cfo-connect-shell>aside nav{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;padding-bottom:30px!important;}
body.cfohq-connect-standalone-runtime .cfo-connect-shell>aside nav a{min-height:44px!important;flex:none!important;}
body.cfohq-connect-standalone-runtime .cfo-connect-shell>aside .side-foot{position:relative!important;flex:0 0 auto!important;margin-top:0!important;background:var(--navy)!important;z-index:2147483647!important;}
