:root{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#20372f;background:#f5f6f2;font-synthesis:none;--green:#173f35;--muted:#6e7973;--line:#dde3dc;--orange:#ef7a37}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #e87a38;outline-offset:3px}button{min-height:44px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--green);padding:10px 16px;font-weight:600}.primary{background:var(--green);color:white;border-color:var(--green)}.orange{background:var(--orange);color:#23180f;border-color:var(--orange)}.ghost{border:0;background:transparent}.shell{display:grid;grid-template-columns:236px 1fr;min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:32px 22px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;font-size:23px;font-weight:750;letter-spacing:-1px}.brand img{width:36px}.brand small{display:block;font-size:10px;letter-spacing:2px;font-weight:700;color:var(--muted);margin-top:3px}.nav{display:grid;gap:8px;margin-top:44px}.nav button{text-align:left;border:0;background:transparent;color:#6b766e}.nav button.active{background:#eaf1eb;color:var(--green)}.nav span{margin-right:12px;font-size:20px}.side-bottom{margin-top:auto;font-size:12px;color:var(--muted);line-height:1.7}.side-bottom strong{color:var(--green)}.workspace{min-width:0}.topbar{height:85px;display:flex;align-items:center;justify-content:space-between;padding:0 42px;background:#fff;border-bottom:1px solid var(--line)}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:1.8px;font-weight:700;color:var(--muted)}.profile{display:flex;align-items:center;gap:10px;font-size:13px}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#edf0e9;font-weight:700}.demo{padding:10px 42px;background:#fff6e7;color:#785921;font-size:12px;border-bottom:1px solid #f0e4d0}.main{max-width:1500px;margin:auto;padding:35px 42px 60px}.heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:26px}h1{font-size:32px;letter-spacing:-1.1px;font-weight:650;margin:6px 0 9px}h2{font-size:18px;letter-spacing:-.3px;margin:0 0 10px}h3{font-size:15px;margin:0 0 6px}p{line-height:1.6}.muted{color:var(--muted);font-size:14px;margin:0}.welcome{background:var(--green);color:white;border-radius:17px;padding:29px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px;position:relative;overflow:hidden}.welcome h2{font-size:25px;font-weight:550}.welcome p{color:#c7d8cc;font-size:14px;margin:7px 0 0;max-width:530px}.welcome .eyebrow{color:#b7d0bd;margin-bottom:12px}.welcome .primary{background:#fff;color:var(--green);white-space:nowrap}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0}.stat{background:#fff;border:1px solid var(--line);border-radius:13px;padding:21px}.stat strong{display:block;font-size:29px;font-weight:600;letter-spacing:-1px;margin:12px 0 6px}.stat label{font-size:12px;color:var(--muted)}.stat small{font-size:11px;color:var(--muted)}.two-col{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(260px,1fr);gap:24px}.panel{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:22px}.panel-head{padding:22px 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-head h2{margin:0}.panel-body{padding:24px}.job-row{display:grid;grid-template-columns:44px 1fr auto;gap:15px;align-items:center;padding:21px 24px;border-bottom:1px solid #edf0eb;cursor:pointer}.job-row:last-child{border:0}.job-row:hover{background:#fafbf8}.job-icon{width:44px;height:44px;border-radius:12px;background:#eef3ee;display:grid;place-items:center;font-size:21px;color:#476151}.job-row h3{font-weight:650}.job-row p{margin:4px 0 0;font-size:12px;color:var(--muted)}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:5px 9px;background:#edf3ed;font-size:11px;color:#356449;font-weight:600;white-space:nowrap}.badge.amber{background:#fff1de;color:#996227}.badge.gray{background:#f0f1ee;color:#626d63}.next{font-size:12px;margin-top:10px;color:#52675b}.task{padding:18px 22px;border-bottom:1px solid #edf0eb;display:flex;gap:12px;align-items:flex-start}.task .dot{height:8px;width:8px;border-radius:50%;background:var(--orange);margin-top:6px;flex-shrink:0}.task p{font-size:12px;color:var(--muted);margin:5px 0}.task button{font-size:12px;min-height:32px;padding:5px 0}.section-title{display:flex;justify-content:space-between;align-items:center;margin:26px 0 14px}.filterbar{display:flex;gap:10px;margin-bottom:20px}.filterbar input{flex:1}.empty{padding:35px;text-align:center;color:var(--muted);line-height:1.6}.tabs{display:flex;gap:8px;overflow:auto;margin:24px 0;scrollbar-width:none}.tabs button{white-space:nowrap;background:transparent;border-color:transparent;color:var(--muted)}.tabs button.active{background:#fff;border-color:var(--line);color:var(--green)}.path{display:flex;gap:4px;margin:20px 0}.path span{flex:1;background:#e3e8df;height:5px;border-radius:4px}.path span.done{background:#5a8460}.check{display:flex;align-items:center;gap:12px;padding:13px 0;font-size:14px}.check input{width:20px;height:20px;accent-color:var(--green);flex-shrink:0}.check label{cursor:pointer}.grid-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:grid;gap:7px;font-size:13px;font-weight:600}.field small{font-weight:400;color:var(--muted);line-height:1.5}.full{grid-column:1/-1}input,select,textarea{width:100%;border:1px solid #ccd5cb;border-radius:8px;padding:12px;background:#fff;color:#263e32;min-height:44px}textarea{resize:vertical;min-height:96px}input:focus,textarea:focus,select:focus{outline:2px solid #8dac93;outline-offset:1px}input[type=checkbox]{width:20px;min-height:20px}.actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px;flex-wrap:wrap}.notice{background:#f3f6ef;border:1px solid #dce5d6;padding:15px;border-radius:10px;font-size:13px;line-height:1.6;margin:16px 0}.warning{background:#fff6e8;border-color:#efdec3;color:#85632d}.ledger{width:100%;border-collapse:collapse;font-size:13px}.ledger td,.ledger th{text-align:left;border-bottom:1px solid var(--line);padding:14px 12px}.ledger th{color:var(--muted);font-size:11px;font-weight:600}.table-wrap{overflow:auto}.amount{font-variant-numeric:tabular-nums;white-space:nowrap}.line{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #eef0ea;font-size:14px}.line.total{font-size:18px;font-weight:650;border-bottom:0;padding-top:20px}.activity{padding:15px 0;border-bottom:1px solid var(--line);font-size:13px}.activity small{display:block;color:var(--muted);margin-top:5px}.mobile-nav{display:none}dialog{width:min(650px,calc(100% - 28px));max-height:90dvh;border:0;border-radius:18px;padding:28px;color:#20372f;box-shadow:0 24px 90px #10231945}dialog::backdrop{background:#15291f70;backdrop-filter:blur(3px)}dialog h2{font-size:24px}.modal-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.steps{display:flex;gap:8px;margin:24px 0}.steps span{flex:1;padding:9px;border-bottom:3px solid #e3e8df;font-size:12px;color:var(--muted)}.steps span.active{border-color:var(--green);color:var(--green);font-weight:700}.error{color:#a33024;font-size:13px;margin-top:16px;line-height:1.5}.receipt-img{max-width:100%;max-height:280px;border-radius:10px;margin-top:14px}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:10;background:#173f35;color:white;padding:14px 22px;border-radius:12px;max-width:90%;box-shadow:0 5px 24px #0002;display:none}.help-list{line-height:1.9;font-size:14px;padding-left:20px}.budget-number{font-size:38px;letter-spacing:-1.4px;font-weight:650;margin:12px 0}.subtle{font-size:12px;color:var(--muted)}a{color:#245d43}.worker-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}
.demo-launch{font-size:12px;padding:3px 10px;min-height:32px}.workflow-intro{display:flex;gap:20px;justify-content:space-between;align-items:center;margin:25px 0}.workflow-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.scope-table{min-width:1000px}.scope-table td:nth-child(2){min-width:220px;max-width:350px}.selection-card{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}.selection-card:last-child{border:0}.selection-card>div{flex:1}.source-text{padding:20px}.source-text pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:500px;overflow:auto;font-size:12px}fieldset{border:1px solid var(--line);border-radius:10px;padding:18px}legend{font-size:14px;font-weight:650;padding:0 8px}details>summary{cursor:pointer;font-weight:650;line-height:1.6}.notice li{margin:7px 0}
@media(max-width:700px){.workflow-intro,.selection-card{display:block}.workflow-intro .badge{margin-top:14px}.workflow-actions button{flex:1;font-size:12px}.selection-card>div+div{margin-top:16px}.stats .stat strong{font-size:23px}}
@media(min-width:1450px){.main{padding-top:42px}.two-col{grid-template-columns:2fr 1fr}}
@media(max-width:1100px){.sidebar{width:190px;padding:28px 15px}.shell{grid-template-columns:190px 1fr}.main{padding:28px 24px}.topbar{padding:0 24px}.demo{padding:10px 24px}.two-col{grid-template-columns:1fr}.stats{gap:10px}.stat{padding:16px}.stat strong{font-size:25px}}
@media(max-width:700px){.shell{display:block}.sidebar{display:none}.topbar{height:65px;padding:0 18px}.main{padding:23px 17px 105px}.demo{padding:9px 18px;font-size:11px}.topbar .eyebrow{letter-spacing:.8px}.profile{font-size:11px}.heading{align-items:flex-start;margin-bottom:20px}h1{font-size:28px}.heading>.primary{font-size:12px;padding:10px 13px;white-space:nowrap}.welcome{padding:23px;display:block}.welcome h2{font-size:23px}.welcome button{margin-top:20px}.stats{grid-template-columns:1fr 1fr;margin:18px 0}.stat strong{font-size:27px}.two-col{gap:0}.panel-head,.panel-body{padding:20px}.job-row{padding:18px 16px;gap:10px;grid-template-columns:36px 1fr}.job-icon{width:36px;height:36px}.job-row>.badge{grid-column:2;justify-self:start}.filterbar{flex-wrap:wrap}.filterbar input{flex-basis:100%}.filterbar select{width:100%}.grid-form{grid-template-columns:1fr}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:8px 8px max(8px,env(safe-area-inset-bottom));z-index:3;justify-content:space-around}.mobile-nav button{border:0;display:grid;gap:4px;place-items:center;font-size:10px;padding:5px 14px;color:var(--muted)}.mobile-nav button span{font-size:20px}.mobile-nav button.active{color:var(--green);background:#eef4eb}.worker-actions{grid-template-columns:1fr 1fr}.tabs{gap:0}.tabs button{padding:10px 13px;font-size:13px}dialog{padding:22px}#toast{bottom:90px}.steps span{padding:8px 4px;font-size:11px}.ledger td,.ledger th{padding:12px 8px}.panel-head button{font-size:12px}}

.financial-review{border-top:1px solid #ddd;padding:20px 0}.financial-review details{margin:12px 0}.financial-review pre{max-height:240px;overflow:auto}.financial-review form{max-width:650px}

.gantt-scroll{overflow:auto;max-width:100%;border:1px solid #dce4d9;border-radius:12px;margin:20px 0;background:#fff}.gantt{display:block;max-width:none;font:12px system-ui;fill:#24432c}.gantt-grid{stroke:#e3eadd;stroke-width:1}.gantt-heading{font-weight:700}.gantt-day{font-size:10px;fill:#66776b}.gantt-bar{fill:#60b82d;cursor:grab;touch-action:none}.gantt-bar:focus{outline:3px solid #174724}.gantt-bar:active{cursor:grabbing}.gantt-bar.complete{fill:#8faa80}
.field[hidden]{display:none!important}

.correspondence-shortcuts{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 16px}.correspondence-shortcuts button{background:#eef6e8;border-color:#60b82d;color:#173f35}.correspondence-shortcuts button:hover{background:#deedcf}[data-correspondence-editor]{scroll-margin-top:20px;margin-bottom:12px}

.table-scroll{overflow-x:auto}
@media print{body.printing-year .sidebar,body.printing-year .topbar,body.printing-year .shared-status,body.printing-year .mobile-nav,body.printing-year .main>:not([data-year-report]),body.printing-year [data-year-report]>:not(.year-print-summary){display:none!important}body.printing-year .shell,body.printing-year .workspace{display:block!important;margin:0!important}body.printing-year .main{padding:0!important}body.printing-year .year-print-summary table{width:100%;font-size:10pt}body.printing-year .year-print-summary tr{break-inside:avoid}body.printing-year .year-print-summary thead{display:table-header-group}body.printing-year .table-scroll{overflow:visible}}

@media print{body.printing-year .workspace>:not(.main),body.printing-year #toast{display:none!important}body.printing-year .year-print-summary th,body.printing-year .year-print-summary td{padding:6px;border-bottom:1px solid #ccc;text-align:left}body.printing-year .year-print-summary table{border-collapse:collapse}}

.job-shortcuts{margin:0 0 18px}.job-shortcut-buttons{display:flex;flex-wrap:wrap;gap:8px}.job-shortcut-buttons button{min-height:44px}.job-shortcuts [data-quick-editor]:not(:empty){background:white;border:1px solid #dce4d7;border-radius:12px;padding:16px;margin-top:10px}@media(max-width:600px){.job-shortcut-buttons{display:grid;grid-template-columns:1fr 1fr}.job-shortcut-buttons button{text-align:left;font-size:13px}}

.job-team-summary{display:flex;flex-wrap:wrap;gap:12px 24px;margin:10px 0 6px}.job-team-summary div{min-width:125px}.job-team-summary dt{font-size:12px;font-weight:600;color:#53644b}.job-team-summary dd{margin:3px 0 0;font-size:14px;font-weight:600;overflow-wrap:anywhere}@media(max-width:600px){.job-team-summary{gap:10px 16px}.job-team-summary div{min-width:110px;flex:1}}

.notification-important{border-left:5px solid #b34700;background:#fff1e6;padding:12px;color:#612600}.notification-important strong{font-weight:800}

.generated-form-dialog{max-width:900px;width:calc(100% - 32px);max-height:90vh;overflow:auto;border:1px solid #70a943;border-radius:14px;padding:24px}.generated-form-dialog::backdrop{background:#14251c99}.generated-form-dialog textarea[readonly]{background:#f0f3ef;color:#364035}.generated-form-dialog .check{margin:18px 0;display:flex;gap:10px}
.paper-tools{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line,#dfe6dd)}
.paper-tools .actions{margin-left:auto}
.paper-record{padding:1rem 0;border-bottom:1px solid var(--line,#dfe6dd)}
.paper-record>.check{font-size:1rem}
.paper-record-body{margin-left:2rem;min-width:0;overflow-wrap:anywhere}
.paper-attachments{display:flex;flex-wrap:wrap;gap:.6rem 1rem;margin-top:.6rem}
.paper-folder .filterbar .field{flex:1;min-width:210px}
@media(max-width:600px){.paper-tools .actions{margin-left:0;width:100%}.paper-tools .actions button{flex:1}.paper-record-body{margin-left:0}.paper-folder .heading{display:block}}

/* Leadership stays beside the customer while editing remains separate from opening a job. */
.job-card{border-bottom:1px solid #edf0eb}.job-card:last-child{border-bottom:0}.job-card .job-row{border-bottom:0}.job-row-team{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 24px 18px 83px}.job-row-team p{display:flex;flex-wrap:wrap;gap:6px 16px;min-width:0;margin:0;color:var(--muted);font-size:12px;line-height:1.5}.job-row-team p span{overflow-wrap:anywhere}.job-row-team button{flex-shrink:0;font-size:12px}.job-team-summary dd{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.job-team-summary .job-team-edit{min-height:32px;padding:3px 8px;font-size:12px;text-decoration:underline}.job-team-summary .job-team-edit:disabled{cursor:not-allowed;text-decoration:none;opacity:.55}@media(max-width:700px){.job-row-team{padding:0 16px 18px 62px;align-items:flex-start;flex-direction:column}.job-row-team p{display:grid;gap:4px}.job-team-summary .job-team-edit{min-height:44px}}

.customer-portal{max-width:1000px;margin:24px auto;padding:0 16px}.customer-portal .panel{margin-bottom:20px}.customer-portal table{width:100%}.customer-portal .actions{gap:18px;flex-wrap:wrap}

.customer-ledger-table{overflow:auto}.customer-portal img{max-width:100%}
.customer-ledger-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0}.customer-ledger-totals p{background:#f0f7ec;border-radius:10px;padding:16px;margin:0}.customer-ledger-totals strong{display:block;font-size:1.45rem;margin-top:8px}.customer-ledger-table th,.customer-ledger-table td{padding:12px;text-align:left;border-bottom:1px solid #e2e9df}.customer-portal details{padding:14px 0}.customer-portal summary{font-weight:600;cursor:pointer}@media(max-width:600px){.customer-ledger-totals{grid-template-columns:1fr}.customer-portal{padding:0 10px;margin:10px auto}}
.customer-draw-notice{border:2px solid #c97516;background:#fff8ed}.customer-draw-notice h2{color:#8a4400}.customer-draw-notice a{overflow-wrap:anywhere}
/* Customer identity and insurance stay together across office job sections. */
.project-heading{align-items:flex-start}.project-heading>.badge{flex-shrink:0;margin-top:8px}.project-identity{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:24px;align-items:start;flex:1;min-width:0}.project-customer{min-width:0;overflow-wrap:anywhere}.insurance-quick-reference{background:#fff;border:1px solid var(--line);border-left:4px solid #70ad32;border-radius:12px;padding:14px 16px;min-width:0;font-size:13px}.insurance-reference-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.insurance-reference-heading .small{font-size:12px;padding:5px 9px;min-height:36px}.insurance-quick-reference dl{display:grid;gap:8px;margin:12px 0 0}.insurance-quick-reference dl>div{display:grid;grid-template-columns:60px minmax(0,1fr);gap:8px}.insurance-quick-reference dt{color:var(--muted)}.insurance-quick-reference dd{margin:0;font-weight:600;overflow-wrap:anywhere}.insurance-quick-reference a{color:var(--green)}.insurance-quick-reference .subtle{margin-bottom:0}.intake-insurance{margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:10px}.intake-insurance legend{font-weight:650;padding:0 6px}
@media(max-width:1050px){.project-identity{grid-template-columns:minmax(0,1fr)}.project-heading>.badge{max-width:100px}.insurance-quick-reference{max-width:100%}}
@media(max-width:600px){.project-heading{flex-wrap:wrap}.project-identity{flex-basis:100%;gap:14px}.insurance-reference-heading .small{min-height:44px}.insurance-quick-reference a{display:inline-block;min-height:26px}}

.alert-link{background:none;border:0;padding:.2rem 0;text-align:left;color:var(--green,#386b23);text-decoration:underline;cursor:pointer;font:inherit;font-weight:600}.alert-link:hover{text-decoration-thickness:2px}.alert-link:focus-visible,[data-alert-key]:focus-visible{outline:3px solid #ef7d00;outline-offset:4px}.notification-important .alert-link{font-weight:800}

.assigned-subs-reference{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.assigned-subs-reference ul{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:10px}.assigned-subs-reference li{display:grid;gap:3px;overflow-wrap:anywhere}.assigned-subs-reference li span{color:var(--muted);font-size:12px}

.lead-rating{font-size:.9rem;margin:6px 0}.lead-rating [aria-label]{color:#8a6000;letter-spacing:2px;font-size:1.1rem;white-space:nowrap}

/* Give project search its own flexible column; a full-width select must not squeeze it. */
.project-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,240px);gap:16px;align-items:end}.project-filters .field{min-width:0}.project-filters input,.project-filters select{width:100%;min-width:0;height:48px}.project-filters input::placeholder{color:#59685e;opacity:1}@media(max-width:700px){.project-filters{grid-template-columns:minmax(0,1fr);gap:12px}}

.terms-dialog{width:min(900px,94vw);max-height:94vh;border:0;border-radius:16px;padding:24px}.terms-dialog::backdrop{background:#172516aa}.terms-scroll{max-height:55vh;overflow:auto;border:1px solid #ddd;border-radius:8px;padding:16px;margin-bottom:20px}.terms-scroll h2{font-size:18px}.terms-dialog .actions{flex-wrap:wrap}.overview-motion-grid>section>.territory-filter{margin:12px 20px}.team-day .panel-head{flex-wrap:wrap}.team-day .territory-filter{margin:0;min-width:170px}

.workflow-review-notice{padding:12px 20px;color:var(--muted,#586579);font-size:12px}.workflow-review-notice p{max-width:800px}.executive-dialog{width:min(900px,94vw);max-height:90vh;overflow:auto}.executive-table{overflow-x:auto}.executive-table th,.executive-table td{padding:10px;text-align:left;border-bottom:1px solid #ddd}.executive-dialog article{margin:14px 0}.executive-dialog [data-close]{float:right}

.crew-day-overlay{width:min(1240px,96vw);max-width:96vw;height:90dvh;max-height:94dvh;padding:0;border:0;border-radius:16px;overflow:hidden}.crew-day-overlay::backdrop{background:#13273599}.crew-day-overlay>header{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;border-bottom:1px solid #ccd5dc}.crew-day-overlay h2{margin:0}.crew-day-overlay header p{margin:6px 0}.crew-day-content{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);height:calc(100% - 110px);overflow:auto;gap:20px;padding:20px}.crew-day-lanes{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;align-content:start}.crew-day-lanes section{min-width:0}.crew-day-editor{border-left:1px solid #ccd5dc;padding:12px}.crew-day-editor fieldset{border:0;padding:0}.crew-day-editor label{display:block;margin:10px 0}.crew-day-editor input{display:block;width:100%}.calendar-day h3 button{width:100%;text-align:left;white-space:normal}.crew-day-overlay .calendar-entry{width:100%;margin-bottom:10px}.crew-day-overlay [role=status]{font-weight:600}@media(max-width:650px){.crew-day-content{display:block}.crew-day-overlay>header{padding:12px}.crew-day-overlay h2{font-size:20px}.crew-day-editor{border-left:0;border-top:1px solid #ccd5dc}.crew-day-overlay{height:94dvh}}
.crew-day-overlay[open]{display:flex;flex-direction:column}.crew-day-overlay>header{flex-shrink:0}.crew-day-content{height:auto;flex:1;min-height:0}.crew-day-overlay .calendar-entry{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:5px;padding:14px}.crew-day-overlay>header>[data-close]{white-space:nowrap}

/* Compact overview creation actions; report branding belongs to the printed summary. */
.pipeline-quick-add{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;padding:0;font-size:26px;line-height:1;border-radius:50%;flex-shrink:0}
.year-report-print-brand{display:none}
@media print{body.printing-year .year-report-print-brand{display:block}body.printing-year .year-report-print-brand img,body.printing-year .year-report-print-brand svg{max-width:170px;max-height:70px;width:auto;height:auto}}
/* Project shortcuts stay over the current screen with one scrolling content area. */
.project-action-overlay{width:min(1100px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line,#dce4da);border-radius:18px;overflow:hidden;color:var(--ink,#20372f)}
.project-action-overlay[open]{display:flex;flex-direction:column}
.project-action-overlay__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--line,#dce4da);flex:none;background:var(--paper,#fff)}
.project-action-overlay__header h2{font-size:21px;margin:0;overflow-wrap:anywhere}
.project-action-overlay__header button{flex:none}
.project-action-overlay__body{padding:22px 24px;overflow:auto;overscroll-behavior:contain;min-height:0}
.project-action-overlay__body>.panel,.project-action-overlay__body>div>.panel{margin:0}
.project-action-overlay__status{padding:0 24px 16px;margin:0;font-size:14px;flex:none}
.project-action-overlay__status:empty{display:none}
@media(max-width:700px){.project-action-overlay{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:12px}.project-action-overlay__header,.project-action-overlay__body{padding:16px}.project-action-overlay__header h2{font-size:18px}.project-action-overlay__body .panel-body{padding:12px}.project-action-overlay__status{padding:0 16px 12px}}

/* Overview actions stay within reach without moving the dashboard. */
.overview-quick-launch{position:fixed;right:max(10px,env(safe-area-inset-right));top:clamp(72px,40dvh,calc(100dvh - 240px));bottom:auto;z-index:950;border:2px solid white;border-radius:24px;padding:9px 12px;min-height:44px;display:flex;align-items:center;gap:5px;background:var(--brand-dark,var(--primary,#2583eb));color:#fff;box-shadow:0 3px 14px #0003;font-size:12px;font-weight:750;white-space:nowrap;cursor:pointer;touch-action:manipulation}
.overview-quick-launch span{font-size:19px;line-height:1}
.overview-quick-launch:focus-visible{outline:3px solid var(--accent,#ff6600);outline-offset:3px}
[data-overview-quick] .job-shortcut-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
[data-overview-quick] .job-shortcut-buttons button{white-space:normal;min-height:46px;text-align:left}
@media(max-width:600px){.overview-quick-launch{right:max(8px,env(safe-area-inset-right));padding:8px 10px;font-size:12px}[data-overview-quick] .job-shortcut-buttons{grid-template-columns:1fr 1fr}}

@media print{.overview-quick-launch{display:none!important}}

/* RestoreJobFlow public landing theme. Scoped to the signed-out experience. */
.rjf-landing{--rjf-blue:#1769e8;--rjf-navy:#10213c;background:#f7faff;color:var(--rjf-navy);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.6;overflow:hidden}.rjf-landing h1,.rjf-landing h2,.rjf-landing h3,.rjf-landing p{margin:0}.rjf-landing a{color:inherit;text-decoration:none}.rjf-wrap,.rjf-nav{width:min(1240px,calc(100% - 80px));margin:auto}.rjf-nav{display:flex;align-items:center;justify-content:space-between;padding:20px 0;gap:20px}.rjf-nav img,.rjf-footer img{object-fit:contain}.rjf-nav>div{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:650}.rjf-landing .rjf-button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:#1769e8;color:#fff;border:1px solid #1769e8;padding:15px 23px;border-radius:12px;font-weight:650;box-shadow:0 8px 24px #1769e822;min-height:48px}.rjf-landing .rjf-button-small{padding:10px 18px;font-size:13px}.rjf-hero{display:grid;grid-template-columns:1fr 1.08fr;gap:45px;align-items:center;padding:64px 0 76px;min-height:680px}.rjf-kicker{color:#42648c;font-size:10px;letter-spacing:2.1px;font-weight:800;display:flex;align-items:center;gap:10px}.rjf-kicker>span{width:7px;height:7px;border-radius:50%;background:#438afa;box-shadow:0 0 0 5px #e2edff}.rjf-hero h1{font-size:clamp(42px,4.6vw,67px);letter-spacing:-3px;line-height:1.07;font-weight:780;margin:25px 0}.rjf-hero h1 em{font-style:normal;color:#1769e8}.rjf-lead{max-width:440px;font-size:17px;color:#566781}.rjf-cta{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:30px}.rjf-text-link{font-size:12px;font-weight:700}.rjf-proof{font-size:11px;font-weight:600;line-height:1.5;color:#6e7e93;margin-top:30px!important}.rjf-product-scene{position:relative;padding:50px 0 15px}.rjf-product-scene:before{content:'';position:absolute;inset:-50px -90px;background:radial-gradient(ellipse,#bdd8ff88,transparent 67%);pointer-events:none}.rjf-product{position:relative;background:white;border:1px solid #dbe5f4;border-radius:18px;box-shadow:0 28px 75px #183e7020;transform:rotate(-2deg)}.rjf-product-bar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e9eef6;padding:14px 18px;font-size:9px;letter-spacing:1px;font-weight:700;color:#8192aa}.rjf-window-dots{color:#b7c9e3;letter-spacing:3px}.rjf-product-body{padding:24px}.rjf-product-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.rjf-product-heading small{font-size:8px;letter-spacing:1.3px;color:#7687a0}.rjf-product-heading h2{font-size:23px;letter-spacing:-.8px}.rjf-pill{display:inline-block;border:1px solid #dce7f7;background:#eef5ff;color:#1769e8;font-size:10px;padding:5px 10px;border-radius:30px;font-weight:700}.rjf-preview-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.rjf-preview-stats>div{background:#f1f6ff;padding:13px;border-radius:10px}.rjf-preview-stats b{display:block;color:#1769e8;font-size:23px}.rjf-preview-stats span{font-size:9px;color:#5a6c86}.rjf-preview-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}.rjf-preview-grid h3{font-size:10px;margin-bottom:13px}.rjf-stop{display:flex;align-items:center;gap:10px;border-top:1px solid #eef1f7;padding:13px 0;font-size:9px}.rjf-stop time{color:#728199;font-size:9px;min-width:30px}.rjf-stop strong,.rjf-stop span{display:block}.rjf-stop span{font-size:8px;color:#7c899b;margin-top:2px}.rjf-stop i{width:5px;height:5px;background:#438afa;border-radius:50%;margin-left:auto}.rjf-preview-checks{background:#f7f9fc;padding:12px;border-radius:10px}.rjf-preview-checks p{font-size:9px;margin:11px 0}.rjf-preview-checks p span{color:#1769e8;margin-right:6px}.rjf-mini-action{background:#1769e8;color:#fff;border-radius:8px;padding:8px 10px;font-size:10px;display:flex;justify-content:space-between;margin-top:20px}.rjf-floating-note{position:absolute;z-index:1;right:10px;top:14px;display:flex;gap:12px;align-items:center;padding:12px 20px;background:white;border:1px solid #e5edfa;border-radius:12px;box-shadow:0 10px 24px #173f7020;font-size:11px;transform:rotate(3deg)}.rjf-floating-note>span{background:#e7f2ff;color:#1769e8;padding:5px 11px;border-radius:50%;font-size:16px}.rjf-floating-note strong{display:block}.rjf-preview-caption{position:relative;text-align:center;color:#6d7d94;font-size:9px;margin-top:28px!important}.rjf-trust-strip{display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap;padding:26px 24px;border-block:1px solid #e2eaf5;background:white;font-size:13px}.rjf-trust-strip>span{color:#8b9bb1}.rjf-trust-strip>span:first-child{font-size:9px;letter-spacing:1.8px;color:#6b7c93}.rjf-section{padding:90px 0}.rjf-section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.rjf-section h2,.rjf-access-section h2{font-size:40px;line-height:1.15;letter-spacing:-1.4px;margin-top:16px}.rjf-section-heading>p{font-size:14px;color:#64758c}.rjf-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.rjf-feature-grid article{border:1px solid #e1e9f5;padding:30px;background:#fff;border-radius:16px;transition:transform .2s,box-shadow .2s}.rjf-feature-grid article:hover{transform:translateY(-4px);box-shadow:0 12px 30px #173f7010}.rjf-feature-number{font-size:9px;letter-spacing:1.5px;font-weight:700;color:#788aa2}.rjf-feature-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;color:#1769e8;background:#eef5ff;font-size:26px;margin:26px 0 18px}.rjf-feature-grid h3{font-size:22px;line-height:1.25;letter-spacing:-.5px;margin-bottom:15px}.rjf-feature-grid p{color:#65758b;font-size:13px}.rjf-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:24px}.rjf-tags span{font-size:9px;border:1px solid #e3eaf4;border-radius:20px;padding:4px 8px;color:#5b6e87}.rjf-dark-section{background:#10213c;color:white;padding:75px 0}.rjf-dark-section .rjf-kicker{color:#8fbaff}.rjf-dark-section h2{font-size:43px;line-height:1.16;letter-spacing:-1px;margin-top:18px}.rjf-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:48px}.rjf-flow>div{border-top:1px solid #42516a;padding-top:20px}.rjf-flow b{font-size:12px;color:#80b4ff}.rjf-flow h3{font-size:16px;margin:16px 0 8px}.rjf-flow p{font-size:12px;color:#b0bfd4}.rjf-suite{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.rjf-suite p:not(.rjf-kicker){font-size:14px;color:#60738d;margin-top:20px;max-width:500px}.rjf-suite .rjf-muted{font-size:11px!important}.rjf-suite-visual{background:#eaf2ff;border:1px solid #d6e5fd;border-radius:24px;padding:36px;display:grid;gap:14px;text-align:center}.rjf-suite-visual>div{padding:22px;background:white;border:1px solid #dbe6f6;border-radius:12px}.rjf-suite-visual small{display:block;font-size:9px;color:#1769e8;letter-spacing:1.5px;margin-bottom:8px}.rjf-suite-visual strong{font-size:17px}.rjf-suite-visual>span{color:#1769e8;font-size:24px}.rjf-access-section{padding:75px 0;background:#eaf2ff;border-top:1px solid #dce8fb;scroll-margin-top:20px}.rjf-access-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.rjf-access-grid>div>p:not(.rjf-kicker){margin-top:18px;color:#60738d}.rjf-beta{margin-top:32px;max-width:360px}.rjf-beta h3{font-size:20px;margin:12px 0}.rjf-beta p{font-size:13px;color:#5e728e}.rjf-beta button{margin-top:18px}.rjf-beta small{display:block;font-size:10px;color:#60738d;margin-top:9px}.rjf-access-card{background:white;border:1px solid #dce7f8;border-radius:20px;padding:32px;box-shadow:0 12px 35px #2f507410}.rjf-access-card h2{font-size:25px;margin:14px 0 25px;overflow-wrap:anywhere}.rjf-access-card .signin-card{margin:12px 0;padding:0;border:0;border-radius:0}.rjf-access-card .signin-action{display:block;background:#1769e8;color:white;border-color:#1769e8;width:100%;text-align:center;padding:13px 15px;text-decoration:none;border-radius:10px;font-size:13px;white-space:normal}.rjf-access-card .signin-card p{font-size:12px;color:#64758c;margin:12px 0}.rjf-access-card form{margin:14px 0;display:grid;gap:10px}.rjf-access-card input{width:100%}.rjf-partner-access{margin-top:25px;border-top:1px solid #e3ebf6;padding-top:20px}.rjf-partner-access summary{cursor:pointer;font-size:13px;font-weight:700;padding:8px 0}.rjf-access-note{font-size:10px!important;line-height:1.6}.rjf-recovery{display:block;font-size:11px;margin-top:14px;text-decoration:underline!important}.rjf-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 0;font-size:11px;color:#63758e}.rjf-landing section[id]{scroll-margin-top:24px}.rjf-landing :focus-visible{outline:3px solid #1769e8;outline-offset:4px}.rjf-landing .rjf-button:disabled{opacity:1;background:#cbd8ec;border-color:#cbd8ec;color:#435873;box-shadow:none;cursor:not-allowed}
@media(max-width:1000px){.rjf-wrap,.rjf-nav{width:calc(100% - 48px)}.rjf-hero{gap:28px}.rjf-hero h1{font-size:48px}.rjf-preview-grid{grid-template-columns:1fr}.rjf-preview-checks{display:none}.rjf-access-grid,.rjf-suite{gap:35px}.rjf-feature-grid article{padding:22px}.rjf-feature-grid h3{font-size:19px}}
@media(max-width:700px){.rjf-wrap,.rjf-nav{width:calc(100% - 36px)}.rjf-nav{padding:14px 0;gap:12px}.rjf-nav img{width:148px;height:50px}.rjf-nav>div>a:first-child{display:none}.rjf-landing .rjf-button-small{font-size:11px;padding:10px}.rjf-hero{grid-template-columns:1fr;padding:35px 0 42px;gap:15px;min-height:0}.rjf-hero h1{font-size:49px;letter-spacing:-2.5px}.rjf-lead{font-size:15px}.rjf-kicker{font-size:8px;letter-spacing:1.5px}.rjf-proof{margin-top:22px!important}.rjf-product-scene{padding-top:42px}.rjf-product-body{padding:18px}.rjf-product-heading h2{font-size:22px}.rjf-preview-grid{grid-template-columns:1.2fr 1fr;gap:10px}.rjf-preview-checks{display:block;padding:9px}.rjf-floating-note{padding:9px 14px;font-size:10px}.rjf-trust-strip{gap:12px;font-size:10px}.rjf-trust-strip>span:first-child{flex-basis:100%;text-align:center}.rjf-section{padding:52px 0}.rjf-section-heading{display:block}.rjf-section h2,.rjf-access-section h2{font-size:34px}.rjf-section-heading>p{margin-top:18px}.rjf-feature-grid{grid-template-columns:1fr;gap:14px}.rjf-feature-grid article{padding:25px}.rjf-feature-icon{margin:18px 0}.rjf-feature-grid h3{font-size:23px}.rjf-dark-section{padding:50px 0}.rjf-dark-section h2{font-size:33px}.rjf-flow{grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.rjf-flow h3{font-size:14px}.rjf-suite,.rjf-access-grid{grid-template-columns:1fr;gap:30px}.rjf-suite-visual{padding:22px}.rjf-access-section{padding:45px 0}.rjf-access-card{padding:24px}.rjf-access-card h2{font-size:24px}.rjf-footer{flex-wrap:wrap;justify-content:center;text-align:center;padding:20px 0}.rjf-footer p{flex-basis:100%}.rjf-footer img{height:48px}.rjf-preview-stats>div{padding:10px}.rjf-preview-stats span{font-size:8px}}
@media(prefers-reduced-motion:reduce){.rjf-feature-grid article{transition:none}.rjf-feature-grid article:hover{transform:none}}
/* Quiet, workspace-colored encouragement. No modal or extra action. */
.flow-encouragement{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted,#65758b);margin:8px 0 18px}.flow-encouragement::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--brand-primary,var(--green));flex:none}.flow-section-note{font-size:12px;color:var(--muted,#65758b);font-weight:400;letter-spacing:0;margin-top:5px}.flow-overview-accent{border-left:3px solid var(--brand-primary,var(--green));padding-left:13px}@media print{.flow-encouragement,.flow-section-note{display:none}}

/* Operating supplies */
dialog.supply-modal{width:min(900px,96vw);max-height:90dvh;overflow:auto} [data-supply-screen] .actions{flex-wrap:wrap}[data-supply-screen] input,[data-supply-screen] select{max-width:100%}[data-preview-rows]{overflow:auto}

/* Quiet personality above the working page; decorative, never interactive. */
.flow-good-energy{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;gap:12px;margin:0 0 18px;padding:12px 16px;border-radius:16px 6px 16px 6px;background:linear-gradient(105deg,color-mix(in srgb,var(--brand-primary,var(--green)) 9%,transparent),color-mix(in srgb,var(--brand-primary,var(--green)) 2%,transparent));border:1px solid color-mix(in srgb,var(--brand-primary,var(--green)) 14%,transparent);font-size:13px;line-height:1.5;color:var(--text,#253649)}
.flow-good-energy::before{display:none}.flow-good-energy p{margin:0;font-weight:550;letter-spacing:.01em;flex:1}.flow-energy-icon{font-size:23px;line-height:1.2;transform:rotate(-9deg);flex:none}.flow-energy-art{width:110px;height:38px;flex:none;color:var(--brand-primary,var(--green));opacity:.35;pointer-events:none}.flow-energy-art svg{width:100%;height:100%;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:600px){.flow-good-energy{gap:9px;padding:10px 12px;font-size:12px;margin-bottom:14px}.flow-energy-icon{font-size:21px}.flow-energy-art{width:40px}.flow-energy-art svg{width:100px;max-width:none}}
@media print{.flow-good-energy{display:none!important}}

[data-menu-grip]::before{content:'↕'}

/* Summary-first project pages; original forms open in the existing overlay. */
.screen-task-source[hidden],[data-project-screen] .two-col[hidden]{display:none!important}
.screen-task-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px;margin:16px 0 28px}
.screen-task-card{display:flex;border:1px solid var(--line,#dce3dc);border-radius:14px;background:var(--panel,#fff);box-shadow:0 3px 12px #17282006;overflow:hidden}
.screen-task-open{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:10px;background:transparent;border:0;text-align:left;padding:20px;min-width:0;box-shadow:none}
.screen-task-open strong{font-size:1.1rem}.screen-task-summary{font-size:.9rem;color:var(--muted,#526057)}.screen-task-link{font-size:.85rem;font-weight:700}
.screen-section-grip{align-self:flex-start;border:0;background:transparent;box-shadow:none;cursor:grab;touch-action:none;padding:15px;min-width:44px;min-height:44px}
.screen-section-grip::before{content:'↕'}.screen-drop-target{outline:2px dashed currentColor}
[data-project-screen]>.stats{margin:18px 0 24px}[data-project-screen]>.stats .stat strong{font-size:clamp(1.4rem,2.5vw,2rem)}
.screen-task-heading{margin-top:24px;font-size:1.15rem}
/* Expanded project timeline keeps the page behind it and uses the available screen. */
.project-action-overlay.project-timeline-wide{width:calc(100vw - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}
.project-timeline-wide .project-action-overlay__body{display:flex;flex:1;min-height:0;overflow:hidden;padding:12px 16px}
.expanded-timeline{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0}
.expanded-timeline-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.expanded-timeline-controls label{display:flex;gap:8px;align-items:center;font-size:13px}
.expanded-timeline-controls select{width:auto;min-width:110px}
.expanded-timeline-chart{flex:1;min-height:100px;overflow:hidden}
.expanded-timeline-chart .gantt-scroll{height:100%;max-height:none;margin:0}
.expanded-timeline>.subtle{margin:8px 0}
.expanded-timeline-undated{flex:none;margin-top:6px}
.expanded-timeline-undated[open]{max-height:24dvh;overflow:auto}
[data-schedule-landing-chart]{cursor:zoom-in}
.gantt-month{fill:var(--ui-raised,#f0f3f0)}
.gantt-month-label{font-weight:700;fill:var(--ui-text,#24432c)}
html[data-workspace-theme] .gantt{fill:var(--ui-text)}
html[data-workspace-theme] .gantt-day{fill:var(--ui-muted)}
html[data-workspace-theme] .gantt-grid{stroke:var(--ui-line)}
@media(max-width:700px){.project-action-overlay.project-timeline-wide{width:calc(100vw - 8px);height:calc(100dvh - 8px);max-height:calc(100dvh - 8px)}.project-timeline-wide .project-action-overlay__header{padding:12px}.project-timeline-wide .project-action-overlay__body{padding:8px}.expanded-timeline-controls{gap:6px}.expanded-timeline-controls button{font-size:12px;padding:8px}.expanded-timeline-controls label{font-size:12px}}
.task-menu-list[hidden],.project-section-select[hidden]{display:none!important}
.task-menu-toggle{margin:12px 0;max-width:100%;text-align:left;white-space:normal}
.task-menu-list:not([hidden]){display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:8px;max-height:50dvh;overflow:auto!important;padding:12px;margin:0 0 16px!important;border:1px solid var(--line,#dde3dc);border-radius:12px;background:var(--panel,#fff)}
.task-menu-list>button,.task-menu-list>a{white-space:normal!important;text-align:left;min-height:44px;margin:0!important}
@media print{.screen-task-grid,.screen-task-heading{display:none!important}.screen-task-source[hidden],[data-project-screen] .two-col[hidden]{display:block!important}}

/* Compact field action menu; all underlying role checks remain in their modules. */
.field-quick-actions{margin:12px 0;padding:12px;border:1px solid var(--line,#dce3dc);border-radius:12px}
.field-quick-actions>summary{font-weight:700;cursor:pointer;min-height:32px}
.crew-main .screen-task-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:10px}
.crew-main .screen-task-card{position:relative}
.crew-main .screen-task-open{padding:16px 12px;gap:6px}
.crew-main .screen-task-open strong{font-size:1rem;padding-right:24px}
.crew-main .screen-task-summary{font-size:.8rem}
.crew-main .screen-section-grip{position:absolute;right:0;top:0;padding:10px}
.crew-main section[data-crew-job][hidden]{display:none!important}

html[data-workspace-theme] .project-timeline-wide .project-action-overlay__header{background:var(--ui-raised);color:var(--ui-text);border-color:var(--ui-line)}
html[data-workspace-theme] .project-timeline-wide .project-action-overlay__header h2{color:var(--ui-text)}

/* Thumb-friendly field launcher; existing forms and authorization remain canonical. */
.phone-field-primary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.phone-field-primary>button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:7px;min-height:104px;padding:18px;background:var(--ui-raised,#f1f4f0);color:var(--ui-text,#203b2b);border:1px solid var(--ui-line,#cbd8ca);border-radius:14px;white-space:normal;max-width:100%}
.phone-field-primary strong{font-size:18px;line-height:1.2}.phone-field-primary span{font-size:13px;line-height:1.4;color:var(--ui-muted,#637368)}
.phone-field-toolbar{display:grid;grid-template-columns:1fr;gap:10px}.phone-field-toolbar select{width:100%;font-size:16px;min-height:48px}.phone-field-home h2{font-size:24px;margin:10px 0 6px}.phone-field-address{overflow-wrap:anywhere}.phone-field-eyebrow{font-size:11px;letter-spacing:1px;color:var(--ui-muted,#637368)}
.phone-field-secondary{display:grid;grid-template-columns:1fr 1fr;gap:9px}.phone-field-secondary>button,.phone-field-secondary>a{display:flex;align-items:center;justify-content:center;text-align:center;min-height:48px;padding:12px;font-size:14px;line-height:1.3;white-space:normal;overflow-wrap:anywhere;border-radius:9px;text-decoration:none}
.phone-crew-more{margin:14px 0}.phone-crew-more>summary{padding:14px;font-weight:650;min-height:48px}.phone-crew-more[open]{padding-bottom:10px}.phone-help-actions{display:grid;gap:12px}.phone-help-actions button{min-height:52px}
.phone-field-overlay{width:min(640px,calc(100vw - 16px));max-height:calc(100dvh - 16px)}.phone-field-tool{width:min(760px,calc(100vw - 16px));max-height:calc(100dvh - 16px)}
html[data-workspace-theme] :is(.phone-field-overlay,.phone-field-tool) .project-action-overlay__header{background:var(--ui-raised);color:var(--ui-text)}
@media(max-width:700px){.phone-field-entry{display:flex;flex-wrap:wrap}.phone-field-overlay,.phone-field-tool{margin:8px auto}.phone-field-overlay .project-action-overlay__body,.phone-field-tool .project-action-overlay__body{padding:14px}.phone-field-tool .grid-form{grid-template-columns:1fr}.phone-field-tool :is(input,select,textarea),.phone-field-overlay :is(input,select,textarea){font-size:16px;max-width:100%}.phone-field-tool button{min-height:44px}.phone-field-primary{gap:9px}.phone-field-primary>button{padding:14px;min-height:110px}.phone-field-primary strong{font-size:17px}.phone-field-secondary{gap:8px}.phone-field-home .phone-field-quick{margin-top:22px}}

.crew-clock button[hidden]{display:none!important}

.phone-field-secondary>a.primary{color:var(--brand-button-ink,#fff)!important}.phone-field-mitigation{width:min(1120px,calc(100vw - 24px))}.phone-field-mitigation [data-mitigation-daily] .table-wrap{overflow:auto}@media(min-width:768px){.phone-field-mitigation .phone-field-primary{grid-template-columns:repeat(4,1fr)}.phone-field-mitigation .phone-field-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.phone-field-mitigation .grid-form,.phone-field-mitigation .two-col{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Read-only customer portal preview uses the existing customer content projection. */
.customer-portal-preview{width:min(1120px,calc(100vw - 24px));max-height:calc(100dvh - 24px)}
.customer-portal-preview [data-portal-preview-mount]{min-width:0}.customer-portal-preview .customer-portal{max-width:100%;margin:0;padding:0}.customer-portal-preview :is(input,select,textarea){max-width:100%;font-size:16px}.customer-portal-preview .customer-portal>header{margin-top:12px}
@media(max-width:700px){.customer-portal-preview{margin:8px auto;width:calc(100vw - 16px)}.customer-portal-preview .project-action-overlay__body{padding:12px}.customer-portal-preview .grid-form{grid-template-columns:1fr}.customer-portal-preview :is(.actions,.customer-preview-controls){flex-wrap:wrap}.customer-portal-preview .customer-ledger-totals{grid-template-columns:1fr 1fr}}

/* Customer-facing assigned roles: use the existing filtered team and company theme. */
.customer-project-team__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:14px}.customer-project-team__person{border:1px solid var(--border,#cdd7d1);border-radius:12px;padding:16px;min-width:0;overflow-wrap:anywhere}.customer-project-team__person h3{margin:0 0 10px}.customer-project-team__person p{margin:6px 0}.customer-project-team__role{margin-top:12px!important}.customer-project-team__person p:last-child{margin-bottom:0}@media print{.customer-project-team__person{break-inside:avoid}}

/* Office project header: read-only draw amounts from the existing payment ledger. */
.project-header-draws{margin:10px 0 16px;padding:12px 16px;border:1px solid var(--border,#cdd7d1);border-radius:12px;color:inherit}.project-header-draws__heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.project-header-draws__heading h2{font-size:16px;margin:0;color:inherit}.project-header-draws__heading button{font-size:13px;padding:5px 9px;min-height:32px;width:auto}.project-header-draws__totals{display:flex;flex-wrap:wrap;gap:12px 36px;margin:10px 0}.project-header-draws__totals dt{font-size:12px}.project-header-draws__totals dd{font-size:18px;font-weight:700;margin:2px 0 0}.project-header-draws__list{list-style:none;padding:0;margin:0}.project-header-draw{display:grid;grid-template-columns:minmax(0,2fr) minmax(110px,1fr) minmax(150px,1fr);gap:8px 18px;padding:8px 0;border-top:1px solid var(--border,#cdd7d1);font-size:13px}.project-header-draw small{display:block;font-size:12px;margin-top:3px;overflow-wrap:anywhere}.project-header-draw__name{min-width:0;overflow-wrap:anywhere}.project-header-draws>p{margin:8px 0 0;font-size:13px}.project-header-draws details>summary{font-size:13px;padding:8px 0;cursor:pointer}@media(max-width:600px){.project-header-draws{padding:12px}.project-header-draws__totals{gap:10px 20px}.project-header-draw{grid-template-columns:minmax(0,1fr) minmax(120px,1fr)}.project-header-draw__name{grid-column:1/-1}}

/* One audience-preview launcher beside Help. Operational field mode stays on the job. */
.view-preview-launcher[hidden],#app-view-menu[hidden]{display:none!important}#app-view-launch{position:fixed;right:110px;bottom:84px;z-index:900;background:var(--brand-dark,#165db0);color:var(--brand-button-ink,#fff);border:2px solid #fff;border-radius:24px;padding:11px 18px;box-shadow:0 3px 12px #0003;touch-action:manipulation;width:auto}#app-view-menu{position:fixed;right:18px;bottom:140px;z-index:950;width:min(340px,calc(100vw - 32px));max-height:min(70dvh,560px);overflow:auto;box-sizing:border-box;padding:16px;border:1px solid var(--ui-line,#cdd7d1);border-radius:14px;background:var(--ui-surface,#fff);color:var(--ui-text,#17232b);box-shadow:0 6px 30px #0004}#app-view-menu h2{font-size:18px;color:inherit;margin:0 0 12px}#app-view-menu label{display:grid;gap:6px;font-size:13px}#app-view-menu select{width:100%;min-width:0;font-size:16px;box-sizing:border-box}#app-view-menu .view-preview-items{display:grid;gap:8px;margin-top:12px}#app-view-menu .view-preview-items button{display:grid;gap:4px;width:100%;text-align:left;padding:12px;color:inherit;background:transparent;border:1px solid var(--ui-line,#cdd7d1);white-space:normal}#app-view-menu .view-preview-items button:hover{background:var(--ui-raised,#eef0ef);color:inherit}#app-view-menu small,#app-view-menu p{font-size:12px;line-height:1.4}#app-view-menu p{margin:12px 0 0}@media print{.view-preview-launcher{display:none!important}}
