.account-body { margin: 0; color: #102c3a; background: #eef4f3; font-family: Arial, sans-serif; line-height: 1.55; }
.account-header { --site-nav-background: #fff; --site-nav-foreground: #102c3a; --site-nav-border: #d5e0e2; position: sticky; top: 0; z-index: 100; isolation: isolate; display: flex; align-items: center; justify-content: space-between; gap: 2rem; min-height: 80px; padding: 0 clamp(1rem, 5vw, 5rem); background: #fff; border-bottom: 1px solid #d5e0e2; }
.account-header .brand { display: inline-flex; align-items: center; gap: .55rem; color: #102c3a; font-size: 1.3rem; font-weight: 850; text-decoration: none; }.account-header .brand b { color: #bd5a16; }.account-header .mark { width: 31px; height: 31px; fill: none; stroke: currentColor; stroke-width: 2.8; }
.account-main { width: min(1120px, calc(100% - 2rem)); margin: 0 auto; padding: clamp(3rem, 8vw, 6rem) 0; }.account-label { margin: 0 0 .7rem; color: #bd5a16; font-size: .76rem; font-weight: 850; letter-spacing: .18em; text-transform: uppercase; }.account-main h1 { max-width: 780px; margin: 0; font-family: Georgia, serif; font-size: clamp(2.8rem, 6.5vw, 5.5rem); line-height: .98; }.account-intro { max-width: 680px; margin: 1.25rem 0 3rem; color: #45606c; font-size: 1.15rem; }
.account-notice { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; padding: clamp(1.5rem, 4vw, 3rem); border: 1px solid #d5e0e2; border-top: 5px solid #d99a42; background: #fff; }.account-notice h2 { margin: 0; font-size: clamp(1.5rem, 3vw, 2.2rem); }.account-notice p:not(.account-label) { max-width: 630px; color: #45606c; }.account-button { display: inline-block; flex: none; padding: .85rem 1rem; color: #fff; background: #102c3a; font-weight: 800; text-decoration: none; white-space: nowrap; }
.account-access { margin-top: 1.5rem; }.auth-panel, .dashboard-live { padding: clamp(1.5rem, 4vw, 3rem); background: #fff; border: 1px solid #d5e0e2; }.auth-panel h2, .dashboard-live h2 { margin: 0; font-size: clamp(1.5rem, 3vw, 2.2rem); }.auth-panel > p:not(.account-label) { max-width: 610px; color: #45606c; }.auth-form { max-width: 660px; margin-top: 1.5rem; }.auth-form label { display: block; margin-bottom: .4rem; font-weight: 800; }.auth-form__row { display: flex; gap: .7rem; }.auth-form input { min-width: 0; flex: 1; padding: .83rem .9rem; border: 1px solid #9eb3b7; color: #102c3a; font: inherit; }.auth-form input:focus { outline: 3px solid #e5b56b; outline-offset: 2px; }.auth-status { min-height: 1.5rem; margin: .7rem 0 0; color: #17685f; font-weight: 700; }.auth-status[data-error="true"] { color: #a33c18; }.auth-divider { display: flex; align-items: center; gap: 1rem; max-width: 660px; margin: 1.5rem 0; color: #607984; }.auth-divider::before, .auth-divider::after { content: ""; height: 1px; flex: 1; background: #d5e0e2; }.google-button { display: inline-flex; align-items: center; gap: .7rem; padding: .75rem 1rem; border: 1px solid #9eb3b7; color: #102c3a; background: #fff; font: inherit; font-weight: 800; cursor: pointer; }.google-button span { display: inline-grid; width: 1.35rem; height: 1.35rem; place-items: center; color: #fff; background: #4285f4; border-radius: 50%; font-weight: 900; }.auth-fine-print { max-width: 660px; margin: 1.25rem 0 0; color: #607984; font-size: .86rem; }.auth-fine-print a { color: inherit; }.dashboard-live__heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; }.dashboard-live__welcome { color: #45606c; }.text-button { padding: 0; color: #102c3a; border: 0; border-bottom: 1px solid currentColor; background: transparent; font: inherit; font-weight: 800; cursor: pointer; }.dashboard-empty { margin-top: 1.5rem; padding: 1.25rem; background: #eef4f3; color: #45606c; }
.project-create-form { display: grid; gap: 1rem; margin-top: 1.5rem; padding: var(--br-panel-inset, 1.5rem); border: 1px solid #d5e0e2; border-radius: 16px; background: #fff; }.project-create-form h3 { margin: 0; font-size: 1.3rem; }.project-create-form p { max-width: 760px; margin: 0; color: #45606c; }.project-create-form label { display: grid; gap: .4rem; font-weight: 800; }.project-create-form input:not([type="checkbox"]), .project-create-form select, .project-create-form textarea { box-sizing: border-box; width: 100%; padding: .8rem .9rem; border: 1px solid #9eb3b7; color: #102c3a; background: #fff; font: inherit; font-weight: 400; }.project-create-form textarea { min-height: 7rem; resize: vertical; }.project-create-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }.policy-check { display: flex !important; align-items: flex-start; gap: .6rem; color: #45606c; font-size: .9rem; font-weight: 400 !important; }.policy-check input { margin-top: .22rem; }.policy-check a { color: inherit; }
.project-list { display: grid; gap: .75rem; }.project-list__item { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem; background: #fff; border: 1px solid #d5e0e2; }.project-list__item div { display: grid; }.project-list__item div span, .project-list__item > span { color: #45606c; font-size: .85rem; }
.account-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 1.5rem; border-top: 1px solid #d5e0e2; border-left: 1px solid #d5e0e2; }.account-grid article { min-height: 210px; padding: 1.5rem; border-right: 1px solid #d5e0e2; border-bottom: 1px solid #d5e0e2; background: #fff; }.account-grid span { color: #bd5a16; font-size: .78rem; font-weight: 850; }.account-grid h2 { margin: 2.5rem 0 .65rem; font-size: 1.2rem; }.account-grid p, .role-grid p { margin: 0; color: #45606c; }
.dashboard-preview { margin-top: clamp(3rem, 7vw, 6rem); background: #fff; border: 1px solid #d5e0e2; }.preview-heading, .project-summary, .stage-list article { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.3rem clamp(1rem, 3vw, 2rem); }.preview-heading { border-bottom: 1px solid #d5e0e2; }.preview-heading h2 { margin: 0; font-size: clamp(1.4rem, 3vw, 2rem); }.preview-heading > span, .project-summary > span { padding: .35rem .55rem; background: #e4f3f2; color: #17685f; font-size: .78rem; font-weight: 800; }.project-summary { background: #102c3a; color: #fff; }.project-summary p { margin: 0; color: rgba(255,255,255,.65); font-size: .78rem; }.project-summary strong { font-size: 1.2rem; }.stage-list article { display: grid; grid-template-columns: 2rem 1fr auto; border-bottom: 1px solid #d5e0e2; }.stage-list article > span { display: grid; place-items: center; width: 1.8rem; height: 1.8rem; border: 1px solid #cbd8d8; font-size: .72rem; font-weight: 850; }.stage-list .stage-done > span { color: #fff; border-color: #247966; background: #247966; }.stage-list div { display: grid; }.stage-list small { color: #607984; }.stage-list b { color: #a75419; font-size: .78rem; }.stage-list .stage-done b { color: #247966; }.preview-note { margin: 0; padding: 1rem clamp(1rem, 3vw, 2rem); color: #607984; font-size: .86rem; }
.role-section { margin-top: clamp(3rem, 7vw, 6rem); }.role-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }.role-grid article { padding: 1.5rem; background: #102c3a; color: #fff; }.role-grid h2 { margin: 0 0 .75rem; font-size: 1.2rem; }.role-grid p { color: rgba(255,255,255,.72); }
@media (max-width: 1024px) { .account-header { min-height: 70px; }.account-grid { grid-template-columns: repeat(2, 1fr); }.account-notice { align-items: flex-start; flex-direction: column; }.role-grid { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .account-grid { grid-template-columns: 1fr; }.account-button { width: 100%; text-align: center; }.auth-form__row { flex-direction: column; }.auth-form__row .account-button { border: 0; }.google-button { width: 100%; justify-content: center; }.project-create-grid { grid-template-columns: 1fr; } }

/* The account is a working sign-in screen, not another marketing page. */
.account-main { width: min(960px, calc(100% - 2rem)); padding: clamp(2rem, 5vw, 4.25rem) 0; }
.account-main h1 { max-width: 760px; font-family: Arial, sans-serif; font-size: clamp(2.25rem, 5vw, 4rem); line-height: 1.07; letter-spacing: -.045em; }
.account-intro { margin: 1rem 0 2rem; font-size: 1.05rem; }
.account-intro a { color: #102c3a; font-weight: 800; text-underline-offset: .15em; }
.account-access { margin-top: 0; }
.auth-panel, .dashboard-live { max-width: 680px; padding: clamp(1.5rem, 4vw, 2.5rem); border-top: 5px solid #d99a42; box-shadow: 0 20px 50px rgba(16, 44, 58, .07); }
.auth-panel h2 { font-size: clamp(1.7rem, 3vw, 2.25rem); }
.auth-panel > p:not(.account-label) { margin: .4rem 0 1.6rem; }
.google-button { box-sizing: border-box; width: 100%; min-height: 3.35rem; justify-content: center; border-color: #a5b8bd; font-size: 1rem; }
.google-button:hover, .google-button:focus-visible { background: #f3f8f8; border-color: #102c3a; }
.auth-divider { max-width: none; margin: 1.4rem 0; font-size: .9rem; }
.auth-form { max-width: none; margin-top: 0; }
.auth-form label { font-size: .95rem; }
.auth-form__row { align-items: stretch; }
.auth-form input { box-sizing: border-box; min-height: 3.35rem; font-size: 1rem; }
.auth-form__row .account-button { min-height: 3.35rem; border: 1px solid #102c3a; font: inherit; font-weight: 800; cursor: pointer; }
.auth-form__row .account-button:hover, .auth-form__row .account-button:focus-visible { background: #24485a; }
.auth-fine-print { margin-top: 1.4rem; font-size: .84rem; }
.account-footnote { max-width: 680px; margin: 1.4rem 0 0; color: #45606c; font-size: .88rem; }
@media (max-width: 600px) {
  .auth-form__row { flex-direction: column; }
  .auth-form__row .account-button { width: 100%; }
}
.project-room { margin-top: 1.5rem; padding: 1.5rem; background: #fff; border: 1px solid #d5e0e2; }
.project-create-form[hidden] { display: none; }
.account-billing { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin: 1.25rem 0; padding: 1.25rem 1.5rem; border: 1px solid #b7cde0; border-radius: 16px; background: #edf5fc; }
.account-billing[hidden], .account-billing [hidden], .project-create-form [hidden] { display: none !important; }
.account-billing h3 { margin: .2rem 0 .4rem; font-size: 1.25rem; }
.account-billing p:not(.account-label) { margin: 0; color: #415b69; }
.account-billing__actions { display: flex; align-items: flex-start; flex-direction: column; gap: .75rem; max-width: 28rem; }
.account-top-actions { display: flex; align-items: center; gap: clamp(.75rem, 2vw, 1.5rem); }
.account-view-link { display: inline-flex; align-items: center; min-height: 44px; padding: .55rem .8rem; border: 1px solid #b7cde0; border-radius: 9px; color: #173552; background: #fff; font-weight: 750; text-decoration: none; }
.account-view-link:hover, .account-view-link:focus-visible { background: #edf5fc; }
.dashboard-live.is-account-view > .dashboard-live__heading > div:first-child { display: none; }
.dashboard-live.is-account-view > .dashboard-live__heading { justify-content: flex-end; }
.user-account { margin: 1rem 0 2rem; padding: var(--br-panel-inset, 1.5rem); border: 1px solid #d3e0ed; border-radius: 18px; background: #fff; }
.user-account[hidden], [data-project-workspace][hidden], .account-plan-prompt[hidden] { display: none !important; }
.user-account__heading h3 { margin: .2rem 0 .45rem; font-size: clamp(1.6rem, 3vw, 2.2rem); letter-spacing: -.035em; }
.user-account__heading > p:last-child { margin: 0; color: #45606c; }
.user-account .account-billing { margin-top: 1.5rem; }
.account-plan-prompt { margin: 1rem 0; padding: 1rem 1.25rem; border: 1px solid #b7cde0; border-radius: 12px; background: #edf5fc; color: #29495e; }
.account-plan-prompt a { color: #173552; font-weight: 750; }
.project-read-only { margin: 1rem 0; padding: 1rem 1.25rem; border: 1px solid #d6c9ae; border-radius: 12px; background: #fff8e8; color: #4c3c2a; }
.project-read-only p { margin: .35rem 0 0; }
@media (max-width: 700px) { .account-billing { align-items: stretch; flex-direction: column; } }
.project-room h3 { margin: 0 0 .4rem; font-size: 1.6rem; }
.room-next { margin: 1rem 0; padding: 1rem 1.2rem; border-left: 4px solid #bd5a16; background: #eef4f3; }
.room-next p { margin: .25rem 0 0; }
.project-room h4, .pending-invites h3 { margin: 1.5rem 0 .55rem; font-size: 1.2rem; }
.project-room p { color: #45606c; }
.room-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .15rem 1rem; padding: 1rem; background: #eef4f3; }
.room-summary dt { color: #45606c; font-size: .83rem; }
.room-summary dd { margin: 0 0 .7rem; font-weight: 800; text-transform: capitalize; }
.room-form { display: grid; gap: .85rem; padding-top: 1rem; border-top: 1px solid #d5e0e2; }
.room-form label { display: grid; gap: .35rem; font-weight: 800; }
.room-form input, .room-form select, .room-form textarea { box-sizing: border-box; width: 100%; padding: .75rem .9rem; border: 1px solid #9eb3b7; color: #102c3a; background: #fff; font: inherit; font-weight: 400; }
.room-form textarea { min-height: 7rem; resize: vertical; }
.room-form button, .room-button { cursor: pointer; font: inherit; }
.room-form .account-button { box-sizing: border-box; height: 52px; min-height: 52px; padding-block: 0; border: 0; }
.room-button { min-height: 52px; padding: .6rem .9rem; border: 1px solid #102c3a; color: #102c3a; background: #fff; font-weight: 800; }
.room-status { min-height: 1.5rem; margin: 0; }
.room-list { padding: 0; list-style: none; }
.invite-list { display: grid; gap: .75rem; margin: .75rem 0 1.5rem; padding: 0; list-style: none; }
.invite-list li { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .75rem 1rem; padding: 1rem; border: 1px solid #cbdcea; border-radius: 10px; background: #f8fbff; }
.invite-list__details { display: grid; gap: .2rem; min-width: 0; }
.invite-list__details strong { overflow-wrap: anywhere; }
.invite-list__details span { color: #50657a; font-size: .88rem; }
.invite-list__notice { grid-column: 1 / -1; color: #245882; font-size: .9rem; font-weight: 750; }
.invite-share-actions { display: flex; flex-wrap: wrap; gap: .5rem; grid-column: 1 / -1; }
.invite-share-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: .45rem .8rem; border: 1px solid #8eabc4; border-radius: 8px; background: #fff; color: #183552; font-size: .9rem; font-weight: 800; text-decoration: none; }
.invite-share-actions a:hover, .invite-share-actions a:focus-visible { border-color: #245882; background: #eaf3fb; }
.invite-share-actions a:focus-visible { outline: 3px solid #3575af; outline-offset: 2px; }
.invite-send-choices { display: flex; flex-wrap: wrap; gap: .6rem; align-items: center; }
.invite-send-choices strong { flex: 0 0 100%; font-size: .9rem; }
.invite-send-choices .room-button { flex: 1 1 10rem; min-height: 46px; font-weight: 800; }
.invite-share-actions .invite-share-actions__selected { border-color: #245882; background: #eaf3fb; }
.invite-list .room-button { min-height: 42px; padding: .45rem .7rem; font-size: .84rem; }
@media (max-width: 560px) { .invite-list li { grid-template-columns: 1fr; }.invite-share-actions { grid-column: auto; }.invite-share-actions a { flex: 1 1 9rem; }.invite-list .room-button { justify-self: start; } }
.room-list li, .pending-invite { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .8rem; padding: .8rem 0; border-bottom: 1px solid #d5e0e2; }
.project-list__item .room-button { flex: none; }
.pending-invites { margin-bottom: 1rem; padding: 1rem; background: #fff; }
@media (max-width: 600px) { .room-summary { grid-template-columns: 1fr; }.project-list__item { flex-wrap: wrap; }.project-list__item .room-button { width: 100%; } }
.workflow-section { margin-top: 2rem; padding-top: 1rem; border-top: 2px solid #d5e0e2; }
.is-signed-in .account-main > .account-label, .is-signed-in .account-main > h1, .is-signed-in .account-intro { display: none; }
.is-signed-in .dashboard-live { max-width: none; }
.workflow-section > h4 { margin-top: 0; }
.workflow-card { margin: 1rem 0; padding: 1.25rem; border: 1px solid #d5e0e2; background: #f8fbfb; }
.workflow-card h5, .room-form h5 { margin: 0; font-size: 1.08rem; }
.workflow-card p { margin: .55rem 0; }
.workflow-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin: 1rem 0; }
.workflow-prompts { display: flex; flex-wrap: wrap; gap: .55rem; margin: 1rem 0; }
.workflow-prompts p { flex-basis: 100%; margin: 0; }
.evidence-form { display: grid; gap: .65rem; margin: 1rem 0; padding: 1rem; border: 1px dashed #9eb3b7; }
.evidence-form label { display: grid; gap: .35rem; font-weight: 800; }
.evidence-form input:not([type="file"]) { box-sizing: border-box; width: 100%; height: 52px; padding: .75rem; border: 1px solid #9eb3b7; font: inherit; }
.evidence-form__preview { width: min(100%, 360px); padding: .45rem; border: 1px solid #c0d3e2; border-radius: 10px; background: #fff; }
.evidence-form__preview[hidden] { display: none !important; }
.evidence-form__preview img { display: block; width: 100%; max-height: 240px; border-radius: 6px; object-fit: contain; }
.room-list .evidence-item--photo { display: grid; grid-template-columns: minmax(120px, 185px) minmax(0, 1fr) auto; align-items: center; gap: .8rem 1rem; }
.evidence-item__preview { display: grid; width: 100%; min-height: 120px; padding: 0; overflow: hidden; place-items: center; border: 1px solid #b8ccdd; border-radius: 9px; background: #eaf3fa; cursor: pointer; }
.evidence-item__preview img { display: block; width: 100%; height: 130px; object-fit: cover; }
.evidence-item__preview--unavailable::after { content: 'Preview unavailable'; padding: 1rem; color: #4d6577; }
.evidence-item__preview--unavailable img { display: none; }
.evidence-item__preview:focus-visible { outline: 3px solid #d37a3c; outline-offset: 2px; }
.room-list .evidence-item--photo > .room-discussion { grid-column: 1 / -1; }
@media (max-width: 600px) { .room-list .evidence-item--photo { grid-template-columns: 1fr; }.evidence-item__preview { max-width: 100%; }.evidence-item__preview img { height: min(56vw, 260px); }.room-list .evidence-item--photo > .room-discussion { grid-column: 1; } }
.room-status[data-error="true"] { color: #a33c18; }
@media print { .account-header, .project-list, .project-create-form, .room-form, .room-button, .evidence-form, .text-button, .legal-footer { display: none !important; }.account-main { width: 100%; padding: 0; }.dashboard-live, .project-room, .workflow-card { box-shadow: none; break-inside: avoid; } }

/* Job selection and setup share the same spacing and control system as the workspace. */
[data-dashboard-content][hidden], [data-project-room][hidden], .job-wizard__step[hidden], .job-wizard__actions [hidden], .account-top-actions [hidden] { display: none !important; }
.jobs-hub__head { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin: 1rem 0 1.25rem; padding: clamp(1.35rem, 3vw, 2rem); border: 1px solid #d3e0ed; border-radius: 16px; background: linear-gradient(120deg, #edf5ff, #fff); }
.jobs-hub__head h3 { margin: 0 0 .4rem; font-size: clamp(1.65rem, 3vw, 2.2rem); letter-spacing: -.035em; }
.jobs-hub__head p:last-child { margin: 0; color: #496274; }
.jobs-hub__start { flex: none; padding-inline: 1.3rem; border-color: #a8562b; border-radius: 9px; color: #fff; background: #a8562b; }
.jobs-hub__start:hover { background: #8e4521; }
.jobs-hub__empty { margin: 1.25rem 0; padding: 1.4rem; border: 1px dashed #b8cbdd; border-radius: 12px; background: #fff; }
.project-list { grid-template-columns: repeat(auto-fit, minmax(min(100%, 310px), 1fr)); gap: 1rem; }
.project-list__item { display: grid; align-content: start; gap: .85rem; padding: 1.35rem; border-color: #d3e0ed; border-radius: 14px; box-shadow: 0 5px 18px rgba(20,48,76,.045); }
.project-list__item .project-list__reference { justify-self: start; margin-bottom: .45rem; padding: .25rem .55rem; border-radius: 6px; color: #19466a; background: #eaf3fc; font-size: .76rem; font-weight: 800; letter-spacing: .03em; }
.project-list__item strong { font-size: 1.15rem; }
.project-list__item > span { padding-top: .55rem; border-top: 1px solid #e0e9f1; }
.project-list__item .room-button { width: 100%; margin-top: .2rem; border-radius: 8px; }
.job-wizard { max-width: 900px; margin: 1rem auto; padding: clamp(1.35rem, 3vw, 2.4rem); border-color: #d3e0ed; box-shadow: 0 12px 36px rgba(20,48,76,.06); }
.job-wizard__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.job-wizard__heading p:last-child { margin: .4rem 0 0; }
.job-wizard__progress { height: 7px; overflow: hidden; border-radius: 10px; background: #e3ebf1; }
.job-wizard__progress span { display: block; height: 100%; border-radius: 10px; background: #a8562b; transition: width .2s ease; }
.job-wizard__step { display: grid; gap: 1.2rem; min-width: 0; margin: 0; padding: 1.35rem 0 0; border: 0; }
.job-wizard__step legend { padding: 0; color: #183552; font-size: 1.4rem; font-weight: 800; letter-spacing: -.025em; }
.job-wizard__step > p { margin: 0; }
.job-wizard__actions, .job-wizard__row-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; }
.job-wizard__actions { justify-content: flex-end; padding-top: 1.2rem; border-top: 1px solid #dbe6ef; }
.job-wizard .account-button { min-height: 52px; border: 0; border-radius: 9px; font: inherit; font-weight: 800; cursor: pointer; }
.job-wizard .room-button { border-radius: 9px; }
.job-wizard__row-actions .room-button { min-height: 44px; }
.job-budget-rows { display: grid; gap: .75rem; }
.job-budget-line { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(110px, .65fr) minmax(150px, 1fr) auto; align-items: end; gap: .7rem; padding: .8rem; border: 1px solid #dce7ef; border-radius: 10px; background: #f8fbff; }
.job-budget-line label { min-width: 0; }
.job-budget-line__remove { min-height: 52px; padding: .4rem .7rem; border: 0; color: #8b4529; background: transparent; font: inherit; font-weight: 750; cursor: pointer; }
.job-budget-total, .job-wizard__review { display: flex; justify-content: space-between; gap: 1rem; padding: 1.15rem 1.25rem; border-radius: 11px; background: #edf5fc; }
.job-budget-total strong { color: #183552; font-size: 1.5rem; }
.job-budget-total--reserve { background: #f5f8f2; }
.job-budget-reserve-note { margin: .45rem 0 1rem; color: #496274; line-height: 1.5; }
.job-wizard__review { display: grid; }
.job-wizard__review span { color: #415b69; }
.job-budget-summary > strong { display: block; color: #183552; font-size: 1.75rem; }
.job-budget-summary p { margin: .4rem 0 0; color: #496274; }
.job-budget-panel__breakdown { margin: 1rem 0; border: 1px solid #d3e0ed; border-radius: 12px; overflow: hidden; }
.job-budget-panel__breakdown h5 { margin: 0; padding: .8rem 1rem; color: #183552; background: #edf5fc; font-size: .95rem; }
.job-budget-panel__breakdown > div { display: flex; justify-content: space-between; gap: 1rem; padding: .75rem 1rem; border-top: 1px solid #e3eaf0; }
.job-budget-panel__breakdown .job-budget-panel__item { padding-left: 1.75rem; background: #f8fbfe; color: #425c72; font-size: .9rem; }
.job-budget-panel__breakdown .job-budget-panel__over { color: #9b431d; font-weight: 700; }
.job-budget-panel__warning { margin: 0; padding: .85rem 1rem; border-top: 1px solid #e3eaf0; background: #fff8f2; color: #704023; }
.job-budget-panel__breakdown .job-budget-panel__total { color: #183552; background: #f6f9fc; font-size: 1.13rem; font-weight: 800; }
.job-budget-panel__breakdown .job-budget-panel__reserve { color: #315f45; background: #f3f8f4; font-weight: 700; }
.job-budget-panel__breakdown .job-budget-panel__potential { color: #183552; background: #eef5ef; font-weight: 800; }
.job-budget-panel__editor { margin-top: 1.25rem; }
@media (max-width: 700px) { .jobs-hub__head { align-items: stretch; flex-direction: column; }.job-budget-line { grid-template-columns: 1fr minmax(100px, 150px); }.job-budget-line label:first-child, .job-budget-line label:nth-child(3) { grid-column: 1 / -1; }.job-budget-line__remove { grid-column: 1 / -1; justify-self: start; min-height: 36px; }.job-wizard__actions > button { flex: 1; } }

/* Project control room: an overview first, with the detailed forms one click away. */
.is-signed-in .account-main { width: min(1320px, calc(100% - 2rem)); padding-top: 1.4rem; }
.is-signed-in .dashboard-live { padding: clamp(1rem, 2.5vw, 2rem); border-top: 0; box-shadow: none; background: transparent; }
.dashboard-live__heading h2 { font-size: clamp(1.5rem, 3vw, 2rem); }
.dashboard-live__welcome { margin: .35rem 0 1rem; font-size: .88rem; }
.project-room { margin-top: 1rem; padding: 0; border: 0; background: transparent; }
.room-hero { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: clamp(1.5rem, 3vw, 2.5rem); color: #fff; background: #102c3a; border-top: 5px solid #d99a42; }
.room-hero .account-label { color: #e8ad65; }
.room-hero h3 { margin: 0; font-size: clamp(1.65rem, 3.2vw, 2.8rem); letter-spacing: -.035em; line-height: 1.1; }
.room-hero p:last-child { margin: .65rem 0 0; color: #c1d3d8; text-transform: capitalize; }
.room-hero__status { flex: none; padding: .4rem .7rem; color: #102c3a; background: #e8f2ef; font-size: .82rem; font-weight: 800; text-transform: capitalize; }
.room-overview { display: grid; grid-template-columns: minmax(260px, 1.1fr) minmax(0, 1.4fr); gap: 1rem; margin-top: 1rem; }
.room-next { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-height: 150px; margin: 0; padding: clamp(1.3rem, 2.5vw, 2rem); border: 1px solid #d6e1e2; border-left: 5px solid #bd5a16; background: #fff; }
.room-next h4 { margin: .1rem 0 .8rem; font-size: clamp(1.15rem, 2vw, 1.55rem); line-height: 1.3; }
.room-next__link { color: #924313; font-weight: 800; text-underline-offset: .2em; }
.room-pulse { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; overflow: hidden; border: 1px solid #d6e1e2; background: #d6e1e2; }
.room-pulse > div { display: flex; flex-direction: column; justify-content: center; padding: 1.2rem; background: #fff; }
.room-pulse strong { color: #102c3a; font-size: clamp(1.6rem, 3vw, 2.4rem); line-height: 1; }
.room-pulse span { margin-top: .55rem; font-weight: 800; line-height: 1.3; }
.room-pulse small { margin-top: .35rem; color: #526b75; font-size: .76rem; line-height: 1.4; }
.room-path { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin: 1rem 0; border: 1px solid #d6e1e2; background: #fff; }
.room-path h4 { grid-column: 1 / -1; margin: 0; padding: 1rem 1.25rem .2rem; font-size: 1.15rem; }
.room-path__step { display: flex; gap: .7rem; align-items: center; min-width: 0; padding: 1rem 1.25rem 1.3rem; border-right: 1px solid #d6e1e2; color: #102c3a; text-decoration: none; }
.room-path__step:last-child { border-right: 0; }
.room-path__step:hover, .room-path__step:focus-visible { background: #f1f7f7; }
.room-path__number { display: grid; flex: none; width: 2rem; height: 2rem; place-items: center; border: 1px solid #a6b9bc; color: #526b75; font-size: .78rem; font-weight: 850; }
.room-path__step.is-done .room-path__number { border-color: #23765f; color: #fff; background: #23765f; }
.room-path__step > span:last-child { display: grid; gap: .2rem; }
.room-path__step strong { font-size: .92rem; }
.room-path__step small { color: #526b75; font-size: .75rem; line-height: 1.35; }
.room-jump { display: flex; gap: .4rem; flex-wrap: wrap; margin: 1rem 0; }
.room-jump a { padding: .65rem 1rem; border: 1px solid #cfdddf; color: #102c3a; background: #fff; font-size: .88rem; font-weight: 800; text-decoration: none; }
.room-jump a:hover, .room-jump a:focus-visible { border-color: #102c3a; background: #e8f3f3; }
.workflow-section, .room-people { scroll-margin-top: 6rem; margin-top: 1rem; padding: clamp(1.25rem, 2.5vw, 2rem); border: 1px solid #d6e1e2; background: #fff; }
.workflow-section > h4, .room-people > h4 { margin: 0 0 .4rem; font-size: clamp(1.25rem, 2.2vw, 1.6rem); }
.workflow-section > p { max-width: 920px; margin: .35rem 0 1rem; }
.workflow-card { border-left: 4px solid #9bb8ba; background: #f8fbfb; }
.inspection-summary { margin: 1rem 0; padding: 1.15rem 1.3rem; border: 1px solid #d6e1e2; border-left: 5px solid #bd5a16; background: #f5f9f9; }
.inspection-summary strong { display: block; color: #102c3a; font-size: 1.1rem; }
.inspection-summary p { margin: .4rem 0; }
.inspection-summary small { color: #834113; font-size: .9rem; font-weight: 750; }
.inspection-action { padding: .75rem 1rem; border-left: 3px solid #bd5a16; background: #fff; font-weight: 650; }
.workflow-card h5 { font-size: 1.15rem; }
.workflow-status { display: inline-block; padding: .35rem .6rem; color: #164f49 !important; background: #e3f2ed; font-size: .84rem; font-weight: 800; text-transform: capitalize; }
.room-disclosure { margin: 1rem 0; border: 1px solid #b8cbd0; background: #fff; }
.room-disclosure > summary { display: block; position: relative; min-height: 52px; box-sizing: border-box; padding: .8rem 2.4rem .8rem 1rem; font-weight: 800; cursor: pointer; }
.room-disclosure > summary::-webkit-details-marker { display: none; }
.room-disclosure > summary::after { content: '+'; position: absolute; right: 1rem; top: .35rem; font-size: 1.5rem; }
.room-disclosure[open] > summary::after { content: '−'; }
.room-disclosure[open] > summary { border-bottom: 1px solid #d6e1e2; background: #f1f7f7; }
.room-disclosure > .room-form, .room-disclosure > .evidence-form, .room-disclosure > .workflow-prompts { margin: 1rem; }
.room-disclosure > .room-form { border-top: 0; padding-top: 0; }
.file-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .7rem; margin: 1.2rem 0; }
.file-summary__card { display: flex; flex-direction: column; min-height: 105px; padding: 1rem; border: 1px solid #cfdddf; background: #f4f9f9; }
.file-summary__card strong { color: #bd5a16; font-size: 1.8rem; line-height: 1; }
.file-summary__card span { margin-top: .5rem; font-weight: 800; }
.file-summary__card small { color: #526b75; font-size: .78rem; }
.evidence-form select { box-sizing: border-box; width: 100%; height: 52px; padding: .75rem; border: 1px solid #9eb3b7; font: inherit; background: #fff; }
.room-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.room-form input:not([type="checkbox"]), .room-form select { height: 52px; min-height: 52px; }
@media (max-width: 900px) { .room-overview { grid-template-columns: 1fr; }.room-path { grid-template-columns: repeat(2, minmax(0, 1fr)); }.room-path__step:nth-of-type(2) { border-right: 0; }.room-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .is-signed-in .account-main { width: calc(100% - 1rem); }.is-signed-in .dashboard-live { padding: .5rem; }.room-hero { flex-direction: column; }.room-pulse { grid-template-columns: 1fr; }.room-pulse > div { min-height: 72px; }.room-path { grid-template-columns: 1fr; }.room-path__step { border-right: 0; border-bottom: 1px solid #d6e1e2; }.room-summary { grid-template-columns: 1fr 1fr; }.file-summary { grid-template-columns: 1fr; }.room-jump a { flex: 1 1 40%; text-align: center; }.workflow-section, .room-people { padding: 1rem; } }

/* Signed-in navigation lives in the header; account cards no longer repeat it. */
.is-signed-in .account-top-actions,
.is-signed-in .dashboard-live.has-project > .dashboard-live__heading,
.is-signed-in .dashboard-live.is-account-view > .dashboard-live__heading { display: none !important; }
.user-profile[hidden] { display: none !important; }
.user-contacts[hidden] { display: none !important; }
.user-contacts { max-width: 850px; margin: 1rem auto 2rem; }
.account-contact { display: flex; justify-content: space-between; align-items: start; gap: 1rem; padding: .85rem 0; border-top: 1px solid #d3e0ed; }
.account-contact > div:first-child { display: grid; gap: .25rem; min-width: 0; overflow-wrap: anywhere; }
.account-contact span { color: #496274; font-size: .9rem; }
.account-contact__actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.account-contact__actions .room-button { min-height: 42px; }
@media (max-width: 520px) { .account-contact { flex-direction: column; } }
.user-profile { max-width: 850px; margin: 1rem auto 2rem; }
.user-profile__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1.5rem; margin-bottom: 1rem; padding: clamp(1.35rem, 3vw, 2rem); border: 1px solid #d3e0ed; border-radius: 16px; background: linear-gradient(120deg, #edf5ff, #fff); }
.user-profile__head h3 { margin: .1rem 0 .55rem; color: #183552; font-size: clamp(1.65rem, 3vw, 2.2rem); letter-spacing: -.035em; }
.user-profile__head p:last-child { max-width: 65ch; margin: 0; color: #496274; }
.user-profile__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; }
.user-profile__card { display: grid; align-content: start; gap: 1rem; min-width: 0; padding: clamp(1.35rem, 3vw, 2rem); border: 1px solid #d3e0ed; border-radius: 15px; background: #fff; box-shadow: 0 5px 18px rgba(20,48,76,.045); }
.user-profile__card h4 { margin: 0; color: #183552; font-size: 1.32rem; }
.user-profile__card label { display: grid; gap: .45rem; font-weight: 750; }
.user-profile__card input:not([type="file"]) { box-sizing: border-box; width: 100%; min-height: 52px; padding: .8rem .9rem; border: 1px solid #adbfce; border-radius: 9px; background: #fff; color: #183552; font: inherit; font-weight: 400; }
.user-profile__card select { box-sizing: border-box; width: 100%; min-height: 52px; padding: .8rem .9rem; border: 1px solid #adbfce; border-radius: 9px; background: #fff; color: #183552; font: inherit; font-weight: 400; }
.account-main .file-upload-control { position: relative; display: flex; align-items: center; flex-wrap: wrap; gap: .55rem 1rem; min-height: 60px; padding: .55rem .7rem; border: 1px dashed #8caabd; border-radius: 10px; background: #f4f9fd; color: #183552; cursor: pointer; }
.account-main .file-upload-control:hover { border-color: #245882; background: #ebf5fd; }
.account-main .file-upload-control:focus-within { outline: 3px solid #d37a3c; outline-offset: 2px; }
.account-main .file-upload-control input[type="file"] { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.account-main .file-upload-control__button { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: .5rem .9rem; border-radius: 8px; background: #183d59; color: #fff; font-weight: 750; white-space: nowrap; }
.account-main .file-upload-control__name { min-width: 0; overflow: hidden; color: #405e72; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.account-main .file-upload-control input[type="file"]:disabled ~ .file-upload-control__button { opacity: .5; }
@media (max-width: 520px) { .account-main .file-upload-control { align-items: stretch; flex-direction: column; }.account-main .file-upload-control__name { max-width: 100%; } }
.user-profile__card small { color: #587082; font-weight: 400; }
.user-profile__card .account-button { width: fit-content; min-height: 50px; border: 0; border-radius: 9px; font: inherit; font-weight: 800; cursor: pointer; }
.user-profile__logo { display: grid; width: min(100%, 250px); min-height: 125px; place-items: center; overflow: hidden; border: 1px solid #d3e0ed; border-radius: 12px; background: #f3f8fc; color: #61798c; }
.user-profile__logo img { max-width: 100%; max-height: 140px; object-fit: contain; }
.user-profile__logo [hidden] { display: none !important; }
@media (max-width: 760px) { .user-profile__grid { grid-template-columns: 1fr; }.user-profile__head { flex-direction: column; }.user-profile__card .account-button { width: 100%; } }
