/* CentreGenius: use the supplied brand artwork without altering the vector paths. */
:root{--ink:#2e5060;--muted:#627c86;--green:#237e79;--green-dark:#196661;--mint:#edf8f6;--canvas:#f5f8fa;--line:#e1e9ed;--amber:#a86b15;--red:#c83535}
.brand-logo{display:block;width:280px;height:auto;max-width:100%}.workspace-brand{display:flex;flex-direction:column;gap:16px;padding:14px 0;align-items:flex-start;white-space:normal}.workspace-brand>img:first-child{width:56px;height:56px;margin-left:14px}.workspace-wordmark{display:block;width:180px;height:auto}.sidebar-caption{margin-top:24px}.nav-item{color:#587580}.nav-item.active{background:#237e79}.sidebar-bottom{color:#237e79}.status-dot{background:#40b2aa}.avatar{background:#e6f3f2;color:#2e706e}.welcome-band{background:#eaf3f7;border-color:#dce8ed}.welcome-band h2{color:#2e5060;font-family:inherit;font-weight:600}.welcome-band p,.welcome-band .eyebrow{color:#597783}.day-stamp{color:#427782;border-color:#a7c8cf;outline-color:#d2e4e7}.stamp-caption{border-color:#a7c8cf}.notice{color:#416d6b;border-color:#d4e9e5}.workspace-footer{color:#597783}.login-shell{background:white}.login-story{background:linear-gradient(145deg,#fff 15%,#eef5f8 70%,#fff5ef);color:#2e5060}.login-story .brand{color:#2e5060;padding:17px 0;width:100%;margin-bottom:35px}.login-story .eyebrow{color:#237e79}.login-story h1{color:#2e5060;font-family:inherit;font-weight:650;letter-spacing:-1.8px;font-size:clamp(35px,3.3vw,50px);line-height:1.13}.login-story h1 span{color:#237e79}.login-story p{color:#597783}.story-lines{color:#416974}.story-lines span{border-color:#cbdfe4}.back-home{color:#237e79;font-size:13px}.login-panel h2{color:#2e5060;font-size:27px}.login-panel .primary{background:#b95360;border-color:#b95360}.login-panel .primary:hover{background:#a34752}.login-panel>.badge{margin-bottom:22px}a:focus-visible,button:focus-visible{outline:3px solid #237e79;outline-offset:3px}
@media(max-width:650px){.workspace-brand{flex-direction:row;align-items:center;gap:18px}.workspace-brand>img:first-child{margin-left:0}.sidebar-caption{margin-top:16px}}
@media(max-width:650px){.workspace-brand{padding:14px 0}.workspace-wordmark{width:180px}.workspace-brand>img:first-child{width:48px;height:48px}.login-story .brand-logo{width:240px}.login-story .brand{margin-bottom:25px}.login-story{padding:28px 25px}.login-panel{padding:35px 25px}.login-story h1{font-size:35px}.login-story .back-home{margin-top:24px;display:block}}
@media print{.workspace-brand{display:none}}
@media screen and (max-width:650px){.funding-changes,.funding-changes tbody{display:block;width:100%}.funding-changes thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.funding-changes tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.funding-changes td{display:block;min-width:0;padding:0;border:0;overflow-wrap:anywhere}.funding-changes td:first-child,.funding-changes td:nth-child(2),.funding-changes td:last-child{grid-column:1/-1}.funding-changes td::before{content:attr(data-label);display:block;font-size:12px;color:var(--muted);margin-bottom:4px}}
@media(min-width:651px) and (max-width:900px){.workspace-wordmark{display:none}.workspace-brand{align-items:center}.workspace-brand>img:first-child{margin-left:0}}
/* Weekly booking rows retain readable controls on narrow screens. */
.booking-sessions{margin:1rem 0}.session-row{display:grid;grid-template-columns:minmax(8rem,1fr) minmax(9rem,1fr) minmax(9rem,1fr) auto;gap:1rem;align-items:start;padding:1rem 0;border-bottom:1px solid #dce8ea}.session-row>button{margin-top:1.5rem}.session-row label{min-width:0}.booking-sessions>[data-add-session]{margin-top:1rem}.booking-version .evidence-row{gap:1rem}.booking-version .evidence-row>div{min-width:0;overflow-wrap:anywhere}@media(max-width:700px){.session-row{grid-template-columns:1fr}.session-row>button{margin-top:0;justify-self:start}}
/* Review filters retain readable date and name controls on narrow screens. */
[data-review-workspace] .inline-form { display:grid; grid-template-columns:repeat(auto-fit,minmax(11rem,1fr)); gap:.75rem; align-items:end; }
[data-review-workspace] .inline-form label { min-width:0; }
[data-review-workspace] .inline-form input,[data-review-workspace] .inline-form select { width:100%; }

.authenticator-qr { display: block; max-width: 100%; height: auto; background: white; }
