.jobEditorFields{display:contents}.appShell .jobFieldSection{grid-column:1/-1;min-width:0}.appShell .jobFieldSection+.jobFieldSection{margin-top:6px;padding-top:24px;border-top:1px solid var(--ws-line)}.appShell .jobFieldSection>header{display:flex;align-items:center;gap:11px;margin-bottom:20px}.appShell .jobFieldSectionIcon{display:grid;width:34px;height:34px;flex-shrink:0;place-items:center;border:1px solid #e3e9df;border-radius:10px;background:#f5f8f1;color:#52745a}.appShell .jobFieldSection h3{margin:0;color:var(--ws-ink);font-size:14px;font-weight:650;letter-spacing:-.025em}.appShell .jobFieldSection header p{margin:4px 0 0;color:var(--ws-muted);font-size:12px;line-height:1.5}.appShell .jobFieldGrid{display:grid;min-width:0;grid-gap:18px;gap:18px}.appShell .jobListToolbar{padding:16px 14px 0}.appShell .jobListSearch{display:flex;min-width:0;align-items:center;gap:8px;padding:0 10px;border:1px solid #dfe7dc;border-radius:9px;background:#fafcf8;color:#6a7d70}.appShell .jobListSearch:focus-within{border-color:#79aa8b;outline:3px solid #246b5510}.appShell .jobListSearch svg{flex-shrink:0}.appShell .jobListSearch input{min-height:40px;border:0;border-radius:0;box-shadow:none;outline:none;background:transparent;padding:0;font-size:13px}.appShell .jobViewSwitch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:3px;margin-top:12px;grid-gap:2px;gap:2px;border:1px solid #e8ece4;border-radius:9px;background:#f2f5ee}.appShell .jobViewSwitch button{min-height:34px;padding:5px 2px;border:1px solid transparent;border-radius:6px;background:transparent;color:#617269;font-size:11px;font-weight:550}.appShell .jobViewSwitch button:hover{color:var(--ws-ink);background:#ffffff80}.appShell .jobViewSwitch button[aria-pressed=true]{border-color:#dce5d7;background:#fff;color:#294a35;box-shadow:0 1px 3px #243b2b0a;font-weight:650}.appShell .jobListResultCount{margin:12px 2px 4px;color:var(--ws-muted);font-size:11px}.appShell .jobOutsideView{margin:0;padding:13px 16px;border-top:1px solid var(--ws-line);background:#fafcf6;color:var(--ws-muted);font-size:12px;line-height:1.6}.appShell .dashboardJobList{display:grid;grid-gap:8px;gap:8px}.appShell .dashboardJobRow{display:grid;grid-template-columns:32px minmax(0,1fr) auto 15px;width:100%;align-items:center;grid-gap:11px;gap:11px;padding:14px 12px;border:1px solid #e5ebe1;border-radius:11px;background:#fbfdf8;text-align:left;color:var(--ws-ink);transition:background .15s ease,border-color .15s ease}.appShell .dashboardJobRow:hover{background:#f2f7eb;border-color:#c8d8be}.appShell .dashboardJobGlyph{display:grid;width:32px;height:32px;place-items:center;border-radius:9px;background:#eef4e6;color:#64805b}.appShell .dashboardJobInfo{display:grid;grid-gap:4px;gap:4px;min-width:0}.appShell .dashboardJobInfo strong{overflow-wrap:anywhere;font-size:13px;line-height:1.5;font-weight:650}.appShell .dashboardJobInfo small{color:var(--ws-muted);font-size:11px;line-height:1.5}.appShell .dashboardJobArrow{color:#839485}.appShell button.listRow{width:100%;text-align:left;color:inherit;font:inherit}.appShell .listRowMain{display:grid;grid-gap:4px;gap:4px;padding:0;border:0;background:transparent;text-align:left;color:inherit;font:inherit}.appShell .commandOption{display:flex;width:100%;align-items:center;gap:12px;padding:12px 14px;border-radius:8px;cursor:pointer}.appShell .commandOption.active{background:var(--ws-soft)}.appShell .commandOption>span{display:grid;grid-gap:3px;gap:3px}.appShell .commandOption small{color:var(--ws-muted)}.appShell .contactCompany summary{cursor:pointer;white-space:normal}.appShell .pipelineMove{display:block;margin-top:10px}.appShell{--ws-ink:#1d302a;--ws-muted:#65746d;--ws-line:#e1e7e1;--ws-accent:#24684f;--ws-soft:#eef5ed;background:#f4f5f1;font-family:Inter,Segoe UI Variable,Segoe UI,system-ui,sans-serif;font-size:14px;color:var(--ws-ink)}.appShell .workspace{width:100%;max-width:1640px;min-width:0;margin-inline:auto;padding:32px clamp(24px,3vw,48px) 56px}.appShell .sidebar{background:#142e27}.appShell .sidebar nav{gap:18px;scrollbar-width:thin;scrollbar-color:#476158 transparent}.appShell .navGroup{gap:3px}.appShell .navLabel{display:block;padding:0 12px 6px;color:#9bb4a9;font-size:10px;letter-spacing:.14em;font-weight:650}.appShell .sidebar nav button{min-height:42px;padding:10px 13px;border-radius:10px;color:#d3e2d9;font-size:14px;font-weight:500;line-height:1.4;transition:background .14s ease,color .14s ease}.appShell .sidebar nav button svg{flex-shrink:0;opacity:.85}.appShell .sidebar nav button:hover{background:#244b3f;color:#fff}.appShell .sidebar nav button.active{background:#d9ef9b;color:#203825;font-weight:700;box-shadow:none}.appShell .sidebar nav button.active svg{opacity:1}.appShell .sidebar :focus-visible{outline:2px solid #b8dfc5;outline-offset:3px}.appShell .navTools{padding-top:14px;border-top:1px solid #35574a}.appShell .navTools>summary{display:flex;align-items:center;justify-content:space-between;min-height:40px;padding:8px 12px;color:#d3e2d9;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;list-style:none}.appShell .navTools>summary:hover{background:#244b3f}.appShell summary::-webkit-details-marker{display:none}.appShell .navTools:not([open])>.navGroup{display:none}.appShell .navTools[open]>summary{margin-bottom:5px}.appShell .navTools[open]>summary svg{transform:rotate(180deg)}.appShell .sidebarFooter{padding-top:16px}.appShell .signedInUser{font-size:12px;color:#d3e2d9}.appShell .userAvatar{width:36px;height:36px;background:#d9ef9b;color:#233a2a;border:3px solid #ffffff18}.appShell .topbar{gap:20px;margin-bottom:28px;padding-bottom:22px;border-color:var(--ws-line)}.appShell .topbar>div:first-child{min-width:0}.appShell .workspaceBreadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:10px;color:var(--ws-muted);font-size:12px}.appShell .workspaceBreadcrumb button{max-width:100%;padding:0;border:0;background:none;color:var(--ws-muted);font-size:inherit;text-align:left;overflow-wrap:anywhere}.appShell .workspaceBreadcrumb button:hover{color:var(--ws-accent);text-decoration:underline}.appShell .topbar h1{margin:0 0 8px;font-size:36px;font-weight:650;letter-spacing:-.045em;line-height:1.15}.appShell .topbar .subtle{max-width:68ch;color:var(--ws-muted);font-size:13px;line-height:1.6}.appShell .topbarActions{display:flex;align-items:center;flex-shrink:0;gap:8px}.appShell .iconButton,.appShell .primary,.appShell .secondary{min-height:42px;border-radius:10px;font-size:13px;font-weight:600}.appShell .primary{background:var(--ws-accent);border-color:var(--ws-accent);box-shadow:0 2px 3px #153e2914,inset 0 1px 0 #ffffff14}.appShell .primary:hover{background:#1a5541;border-color:#1a5541}.appShell .secondary{color:var(--ws-ink);border-color:#d2ded6;box-shadow:0 1px 2px #193e2a06}.appShell .secondary:hover{background:var(--ws-soft);border-color:#9dbdab}.appShell button:disabled{cursor:not-allowed}.appShell button[aria-busy=true]{cursor:progress}.appShell .linkButton{color:#246b55;font-size:13px;font-weight:600}.appShell :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #79aa8b;outline-offset:3px}.appShell input:not([type=checkbox]):not([type=radio]):not([type=file]),.appShell select,.appShell textarea{border-color:#d4dfd7;border-radius:10px;color:var(--ws-ink);background-color:#fcfdfb;font-size:14px}.appShell :is(input,textarea)::placeholder{color:#77867e;opacity:1}.appShell :is(input,select,textarea):focus{border-color:#79aa8b;box-shadow:0 0 0 3px #246b5510}.appShell .metric,.appShell .panel{border-color:var(--ws-line);border-radius:16px;box-shadow:0 3px 5px #203c3503,0 12px 24px -20px #203c3524}.appShell .panelHeader{align-items:center;border-color:#eaf0eb}.appShell .panel h2{color:var(--ws-ink);font-size:16px;font-weight:650;letter-spacing:-.025em}.appShell .metric{position:relative;padding:22px;min-height:158px;overflow:hidden}.appShell .metric span{color:#52695d;font-size:12px;font-weight:600}.appShell .metric strong{margin-top:24px;font-size:34px;font-weight:650;letter-spacing:-.045em;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.appShell .metric small{color:var(--ws-muted);font-size:12px}.appShell .metric:before{display:none}.appShell .metricLink{text-align:left}.appShell .metricLink:hover{background:#fff;border-color:#a2c0ad;box-shadow:0 10px 24px -15px #19432b4d;transform:translateY(-2px)}.appShell .metricScopeNote{color:var(--ws-muted);font-size:11px;line-height:1.6;margin:-6px 0 0}.appShell .dashboardPage{gap:20px}.appShell .dashboardHeader{position:relative;isolation:isolate;overflow:hidden;min-height:190px;padding:32px 34px;gap:24px;border:1px solid #284b3e;border-radius:20px;background:#204b3a;color:#fff;box-shadow:0 10px 30px -20px #163d2d80}.appShell .dashboardKicker{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:#d9ef9b;font-size:10px;font-weight:650;letter-spacing:.15em;text-transform:uppercase}.appShell .dashboardHeader h2{color:#fff;font-size:clamp(24px,2.2vw,34px);font-weight:550;letter-spacing:-.04em;line-height:1.2}.appShell .dashboardHeader .subtle{max-width:48ch;margin:12px 0 0;color:#c9d9cf;font-size:13px;line-height:1.7}.appShell .dashboardQuickActions{display:flex;flex-wrap:wrap;gap:9px;align-items:center;padding:3px 0}.appShell .dashboardQuickActions>span{margin-right:auto;color:var(--ws-muted);font-size:12px}.appShell :is(.dashboardSetup,.dashboardOverview,.dashboardTools){min-width:0;border:1px solid var(--ws-line);border-radius:14px;background:#fff}.appShell :is(.dashboardSetup,.dashboardOverview,.dashboardTools)>summary{display:flex;gap:12px;align-items:center;min-height:50px;padding:14px 18px;color:#3f5e4d;font-size:13px;font-weight:600;cursor:pointer;list-style:none}.appShell :is(.dashboardSetup,.dashboardOverview,.dashboardTools)>summary>svg{flex-shrink:0;margin-left:auto}.appShell :is(.dashboardSetup,.dashboardOverview,.dashboardTools)[open]>summary>svg{transform:rotate(180deg)}.appShell .dashboardSetup>summary>span:nth-child(2){margin-left:auto;color:var(--ws-muted);font-size:12px;font-weight:400}.appShell .dashboardSetup .checklist{padding:0 18px 16px;margin:0;list-style:none}.appShell .dashboardOverview .metrics{padding:0 14px 14px;grid-template-columns:repeat(3,minmax(0,1fr))}.appShell .dashboardOverview .metric{min-height:100px;box-shadow:none;background:#fafcf9}.appShell .dashboardOverview .metric strong{font-size:24px}.appShell .dashboardTools{grid-column:1/-1}.appShell .dashboardTools .dashboardAdminGrid{padding:0 18px 18px}.appShell .dashboardPage .splitPane{gap:18px;align-items:start}.appShell .dashboardPage .splitPane>.panel{min-height:165px;padding:22px}.appShell .dashboardPage .splitPane>.panel>.empty{min-height:70px;border:1px dashed #e0e7df;border-radius:11px;background:#fbfcf9;color:var(--ws-muted);font-size:13px}.appShell .dashboardTimeHint{display:flex;align-items:center;gap:12px;padding:12px 16px;color:var(--ws-muted)}.appShell .dashboardTimeHint>svg{flex-shrink:0;color:var(--ws-accent)}.appShell .dashboardTimeHint p{flex:1 1;margin:0;font-size:12px;line-height:1.5}.appShell .jobActivityStats>div{border:0;background:#f5f8f3;border-radius:9px}.appShell :is(.jobCommandBar,.estimateCommandBar,.contactCommandBar){gap:16px;flex-wrap:wrap}.appShell .jobCommandBar{align-items:flex-start}.appShell .jobCommandActions{display:flex;justify-content:flex-end;flex-wrap:wrap}.appShell .jobWorkListControls{padding:12px;gap:8px;border:1px solid var(--ws-line);border-radius:11px;background:#fff}.appShell :is(.jobCanvasHeader,.estimateCanvasHeader){flex-wrap:wrap;padding:20px;gap:16px;background:#fff}.appShell .jobHeaderActions{flex-wrap:wrap}.appShell :is(.jobDetailForm,.estimateDocumentForm){padding:20px;gap:18px}.appShell :is(.jobDetailForm,.estimateDocumentForm) label:has(>.fieldHelp){display:block;line-height:1.5}.appShell :is(.jobDetailForm,.estimateDocumentForm) label:has(>.fieldHelp)>:is(input,select,textarea){display:block;margin-top:6px}.appShell :is(.jobFormFooter,.estimateFormFooter){padding:14px 16px;border:1px solid #dbe7dc;border-radius:10px;background:#f1f6e9}.appShell .jobSection{margin:0 20px 16px;border:1px solid var(--ws-line);border-radius:10px}.appShell .jobSection>summary{padding:15px 16px;color:var(--ws-ink);font-size:13px;font-weight:600;cursor:pointer}.appShell .jobSection[open]>summary{border-bottom:1px solid #e8eee7}.appShell .jobSection .panel{box-shadow:none}.appShell :is(.jobList,.estimateList)>header{padding:18px;background:#f9fbf7}.appShell :is(.jobListRow.selected,.estimateListRow.selected){border-left-color:#307958;background:#eef6ee}.appShell .jobListRow:hover{background:#f4f8f1}.appShell .jobListIdentity strong{font-size:13px}.appShell .jobListRow{padding:16px 14px}.appShell .jobListRow .jobStatus{justify-self:start}.appShell .panelHeader>h2{flex:1 1;min-width:0}.appShell .jobPeriodSelect{width:auto;min-width:112px;max-width:55%;flex:0 0 auto}.appShell .brandLogoViewport{border-radius:12px;box-shadow:none}.appShell .companySwitcherButton{min-height:44px;border-color:#ffffff1c;border-radius:11px;background:#ffffff07}.appShell .companySwitcherButton:hover{background:#ffffff10;border-color:#ffffff30}.appShell .sidebarFooter{border-top-color:#ffffff16}.appShell .userProfileButton{border-radius:10px}.appShell .workspaceBreadcrumb>span:last-child{color:#3e5147;font-weight:600}.appShell .topbarActions>.secondary{background:#fff}.appShell :is(.primary,.secondary,.iconButton,.metricLink){transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.appShell .primary:active:not(:disabled){transform:translateY(1px)}.appShell :is(input,select,textarea):hover:not(:disabled):not(:focus){border-color:#aabbb0}.appShell :is(input,select):not([type=checkbox]):not([type=radio]){min-height:42px}.appShell :is(input[type=checkbox],input[type=radio]){accent-color:var(--ws-accent)}.appShell .metrics{gap:16px}.appShell .metric .metricLabel{display:block;max-width:calc(100% - 42px);line-height:1.5}.appShell .metric .metricIcon{position:absolute;top:18px;right:18px;display:grid;width:36px;height:36px;place-items:center;border:1px solid #dce8d9;border-radius:11px;background:#eff5eb;color:#38704e}.appShell .metric .metricIcon svg{width:18px;height:18px;stroke-width:1.7}.appShell .dashboardPage>.metrics>.metric:first-child .metricIcon{background:#e4f1c1;border-color:#d6e6b1}.appShell .metric small{max-width:calc(100% - 16px);line-height:1.6}.appShell .metricArrow{position:absolute;bottom:20px;right:18px;color:#81918a}.appShell .metricLink:hover .metricArrow{color:var(--ws-accent)}.appShell .panelHeading{display:flex;align-items:center;gap:10px;flex:1 1;min-width:0}.appShell .panelIcon{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;border:1px solid #e3eae1;border-radius:9px;background:#f5f8f1;color:#58725d}.appShell .panelIcon svg{width:16px;height:16px;stroke-width:1.7}.appShell .dashboardKicker>span{width:6px;height:6px;border-radius:50%;background:#d9ef9b;box-shadow:0 0 0 4px #d9ef9b12}.appShell .dashboardHeader>div{position:relative;z-index:1}.appShell .dashboardRouteArt{position:absolute;z-index:0;right:85px;top:-20px;height:260px;width:455px;pointer-events:none}.appShell .dashboardRouteArt path{stroke:#abd39b;stroke-opacity:.12;stroke-width:1.2}.appShell .dashboardRouteArt circle{fill:#204b3a;stroke:#c9e5a3;stroke-opacity:.25;stroke-width:1.2}.appShell .dashboardDate{display:flex;align-items:flex-start;gap:13px;flex-shrink:0;padding:17px 20px;border:1px solid #ffffff1c;border-radius:14px;background:#143e2e66}.appShell .dashboardDate>svg{color:#d9ef9b;margin-top:3px}.appShell .dashboardDate>span{display:grid;grid-gap:4px;gap:4px;color:#cedfd2;font-size:12px}.appShell .dashboardDate strong{color:#fff;font-size:19px;font-weight:550;letter-spacing:-.03em}.appShell .dashboardDate small{margin-top:5px;color:#b0c9ba;font-size:10px}.appShell .dashboardPage .listRow{padding:15px 16px;border-color:#e9eee6;border-radius:11px;background:#fafcf7}.appShell .dashboardPage button.listRow:hover{border-color:#c8d8be;background:#f4f8ed}.appShell .dashboardPage .panelHeader{margin-bottom:18px}.appShell .dashboardPage .panelHeader .linkButton{font-size:12px}.appShell .dashboardPage .panel>.listRow+.listRow{margin-top:8px}.appShell .jobFormFooter{margin:6px 0 0}.appShell .jobTimezoneHint{grid-column:1/-1}.appShell :is(.jobCanvas,.estimateCanvas){overflow:hidden}.appShell :is(.jobCanvasHeader,.estimateCanvasHeader){border-bottom:1px solid #e6ece4;background:#fcfdfb}.appShell :is(.jobIcon,.estimateIcon){border-radius:11px;background:#eef5e7;color:#48724d}.appShell :is(.jobList,.estimateList)>header{background:#fcfdf9}.appShell :is(.jobListRow.selected,.estimateListRow.selected){background:#f1f7e8;border-left-color:#7aa253}.appShell :is(.jobStatus,.estimateStatus,.statusPill){border-radius:999px;font-weight:650;letter-spacing:.01em}.appShell :is(.jobSection,.estimateSection)>summary{background:#fcfdf9}.appShell :is(.contactDirectory,.pipelineSection){border-color:var(--ws-line);border-radius:16px}@media (min-width:900px){.appShell{display:grid;grid-template-columns:240px minmax(0,1fr)}.appShell .sidebar{height:100dvh;min-height:0;padding:24px 16px 18px;gap:20px}.appShell .sidebar nav{display:grid;overflow-y:auto;min-height:0;flex:1 1;margin-top:4px;padding-right:3px;align-content:start}.appShell .sidebarFooter{margin-top:auto}.appShell .jobWorkspace{grid-template-columns:minmax(260px,.8fr) minmax(0,2fr);align-items:start}.appShell .jobList{position:-webkit-sticky;position:sticky;top:20px}.appShell .jobRows{max-height:calc(100dvh - 170px);overflow-y:auto}}@media (min-width:760px){.appShell .jobScheduleStart{grid-column:1}.appShell .jobFieldGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1280px){.appShell{grid-template-columns:256px minmax(0,1fr)}}@media (max-width:1199px){.appShell .dashboardPage>.metrics .metricLabel{min-height:36px}.appShell .topbar{align-items:flex-start;flex-wrap:wrap}.appShell .topbarActions{flex-wrap:wrap}.appShell .dashboardQuickActions>span{flex-basis:100%}.appShell .jobCommandActions{width:100%;justify-content:flex-start}}@media (max-width:899px){.appShell .workspace{padding:22px 20px 40px}.appShell .sidebar{padding:12px 16px}.appShell .sidebar.mobileOpen nav{gap:18px}.appShell .sidebar.mobileOpen nav button{min-height:44px}.appShell .sidebar.mobileOpen .sidebarFooter{background:#15372f}.appShell .topbar h1{font-size:28px}.appShell .dashboardHeader{padding:26px;align-items:flex-start;flex-wrap:wrap}.appShell .dashboardDate{margin-left:0}.appShell .dashboardPage .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.appShell .jobWorkListControls{width:100%;flex-wrap:wrap}}@media (max-width:520px){.appShell .jobFieldSection>header{align-items:flex-start}.appShell .dashboardJobRow{grid-template-columns:28px minmax(0,1fr) auto;gap:9px}.appShell .dashboardJobGlyph{width:28px;height:28px}.appShell .dashboardJobArrow{display:none}.appShell .jobViewSwitch button{min-height:40px}.appShell .workspace{padding-inline:14px}.appShell .topbar{gap:14px;margin-bottom:20px;padding-bottom:18px}.appShell .topbarActions{width:100%}.appShell .topbarActions .searchTrigger{flex:1 1;justify-content:flex-start}.appShell .refreshButton{width:auto;min-width:44px;padding-inline:12px}.appShell .jobCommandBar{align-items:stretch}.appShell .jobWorkListControls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.appShell .jobWorkListControls :is(input,select){width:100%;min-width:0}.appShell .dashboardHeader{padding:24px;gap:16px;min-height:220px}.appShell .dashboardHeader h2{font-size:21px}.appShell .dashboardDate{align-self:flex-start;padding:12px 0 0;border:0;background:none}.appShell .dashboardDate small{display:none}.appShell .dashboardRouteArt{width:240px;right:-100px;opacity:.4}.appShell .dashboardQuickActions>button{flex:1 1 135px}.appShell .metric{padding:17px;min-height:155px}.appShell .metric strong{margin-top:16px;font-size:28px}.appShell .dashboardOverview .metrics{grid-template-columns:1fr}.appShell .dashboardTools .dashboardAdminGrid{grid-template-columns:1fr 1fr}.appShell .dashboardTimeHint{flex-wrap:wrap;padding:4px}.appShell .dashboardTimeHint p{flex-basis:80%}.appShell .jobSection{margin-inline:12px}.appShell :is(.jobDetailForm,.estimateDocumentForm,.jobCanvasHeader,.estimateCanvasHeader){padding:16px}.appShell :is(.jobFormFooter,.estimateFormFooter){flex-wrap:wrap;gap:12px}.appShell :is(.jobFormFooter,.estimateFormFooter) .primary{width:100%}.appShell :is(.primary,.secondary,.iconButton){min-height:44px}}@media (prefers-reduced-motion:reduce){.appShell *,.appShell :after,.appShell :before{scroll-behavior:auto;transition:none;animation:none}}