:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#111;--muted:#686971;--line:#e1e1e5;--soft:#f6f6f7;--sidebar:236px;color:var(--ink);font-synthesis:none;background:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{-webkit-text-size-adjust:100%;font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}button,a{touch-action:manipulation}button{color:inherit;background:0 0;border:0}a{color:inherit;text-underline-offset:4px}:is(button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible){outline-offset:3px;outline:2px solid #777}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.035em;text-wrap:balance;line-height:1.12}h1{font-size:clamp(34px,3.6vw,58px);font-weight:750}h2{font-size:26px;font-weight:720}h3{font-size:20px;font-weight:680}p{text-wrap:pretty}small,.small{font-size:13px;line-height:1.5}svg{vertical-align:middle;flex-shrink:0}b,strong{font-weight:690}input,textarea,select{color:#111;background:#fff;border:1px solid #c7c8ce;border-radius:5px;width:100%;min-width:0;min-height:48px;padding:12px 13px;font-size:16px;line-height:1.4}textarea{resize:vertical}input:disabled{color:#64646d;background:#f3f3f4}input[type=date],input[type=time],input[type=datetime-local]{min-width:0;max-width:100%}input::placeholder,textarea::placeholder{color:#888b94}select{padding-right:30px}button .spin{margin-right:2px}.spin{animation:1.1s linear infinite rotate}@keyframes rotate{to{transform:rotate(360deg)}}.muted{color:var(--muted)}.grow{flex:1;min-width:0}.wordmark{letter-spacing:-1.8px;align-items:center;min-height:44px;padding:0;font-size:31px;font-weight:780;line-height:1;display:flex}.button{color:#fff;-webkit-text-fill-color:#fff;white-space:normal;text-align:center;background-color:#111;border:1px solid #111;border-radius:5px;justify-content:center;align-items:center;gap:9px;min-height:47px;padding:11px 19px;font-size:15px;font-weight:600;line-height:1.3;transition:background-color .15s;display:inline-flex}.button:hover:not(:disabled){background:#303030}.button.secondary{color:#111;-webkit-text-fill-color:#111;background-color:#fff;border-color:#999da5}.button.secondary:hover:not(:disabled){background:#f1f1f2}.icon-button{border-radius:4px;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:8px;display:inline-flex}.icon-button:hover{background:#8881}.text-button{text-underline-offset:4px;text-align:left;align-items:center;gap:8px;min-height:44px;padding:6px 0;font-size:15px;text-decoration:underline;display:inline-flex}.text-button.strong{font-size:18px;font-weight:650;text-decoration:none}.back{color:#5d6068;margin-bottom:14px}.eyebrow{color:var(--muted);margin-bottom:10px;font-size:14px}.subtitle{color:#44464d;margin-top:15px;font-size:19px;line-height:1.5}.page-head{justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:30px;display:flex}.head-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:10px;padding-top:5px;display:flex}.section-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.section-gap{margin-top:34px}.initials{color:#25252b;background:#ededee;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:13px;display:inline-flex}.initials.big{width:64px;height:64px;margin-bottom:18px;font-size:22px}.money{font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.02em;font-weight:650}.money.large{letter-spacing:-.045em;font-size:44px;font-weight:750;line-height:1.1}.empty{flex-direction:column;justify-content:center;align-items:flex-start;gap:20px;min-height:280px;padding:36px 0;display:flex}.empty>svg{color:#7a7b81}.empty p{max-width:460px;color:var(--muted)}.empty h2{max-width:500px;font-size:30px}.field{flex-direction:column;gap:8px;min-width:0;font-size:15px;font-weight:500;display:flex}.field small{color:var(--muted);font-weight:400}.form-stack{flex-direction:column;gap:23px;display:flex}.form-stack>p.eyebrow{margin-bottom:0}.two-cols{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-actions{border-top:1px solid var(--line);background:#fff;justify-content:flex-end;align-items:center;gap:12px;margin-top:12px;padding-top:18px;display:flex}.form-error{color:#26262c;background:#f7f7f8;border:1px solid #999da5;align-items:flex-start;gap:10px;padding:14px;font-size:14px;line-height:1.5;display:flex}.notice{background:#f5f5f6;border-left:3px solid #111;align-items:flex-start;gap:12px;padding:12px 15px;font-size:14px;line-height:1.6;display:flex}details{border-top:1px solid var(--line);padding:14px 0}details summary{cursor:pointer;min-height:35px;padding:6px 0;font-size:15px;font-weight:550}details .inset{padding-top:18px}.amount-input{letter-spacing:-.035em;font-size:30px;font-weight:700}.loading-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;height:100dvh;padding:24px;display:flex}.loading-page h1{font-size:34px}.loading-page .wordmark{margin-bottom:30px}.app-shell{flex-direction:column;width:100%;height:100dvh;display:flex;overflow:hidden}.topbar{color:#fff;background:#101010;border-bottom:1px solid #333;flex-shrink:0;align-items:center;gap:24px;height:64px;padding:0 28px;display:flex;position:relative}.company-name{color:#a8a8ac;text-overflow:ellipsis;white-space:nowrap;max-width:170px;font-size:13px;overflow:hidden}.desktop-nav{justify-content:center;align-self:stretch;align-items:stretch;gap:28px;margin:auto;display:flex}.desktop-nav>button{color:#c4c4c8;min-width:64px;padding:8px 6px;font-size:15px;position:relative}.desktop-nav>button.active{color:#fff;font-weight:650}.desktop-nav>button.active:after{content:"";background:#fff;height:3px;position:absolute;bottom:0;left:5px;right:5px}.topbar-end{align-items:center;gap:5px;display:flex}.language{min-width:44px;min-height:44px;color:inherit;letter-spacing:.05em;font-size:12px;font-weight:650}.avatar{color:#111;background:#e4e4e6;border-radius:50%;width:36px;min-width:36px;height:36px;margin-left:8px;font-size:12px;font-weight:600;position:relative}.avatar:before{content:"";position:absolute;inset:-4px}.app-body{flex:1;min-height:0;display:flex;overflow:hidden}.sidebar{width:var(--sidebar);color:#f5f5f5;background:#101010;flex-direction:column;flex-shrink:0;justify-content:space-between;gap:25px;padding:34px 22px 24px;display:flex;overflow-y:auto}.sidebar h2{margin-bottom:24px;font-size:23px;line-height:1.2}.sidebar .button{color:#111;-webkit-text-fill-color:#111;background:#fff;border-color:#fff;width:100%;margin-bottom:20px;font-size:14px}.sidebar .button:hover{background:#ddd}.sidebar-jobs{margin-top:20px}.sidebar-item{text-align:left;word-break:break-word;border-radius:3px;align-items:center;gap:13px;width:100%;min-height:49px;margin-bottom:6px;padding:13px 12px;font-size:15px;line-height:1.5;display:flex}.sidebar-item:hover{background:#262626}.sidebar-item.selected{background:#292929;border-left:3px solid #fff;padding-left:9px}.sidebar .eyebrow{color:#949498}.worker-sidebar h2{margin-bottom:30px}.workspace{overscroll-behavior:contain;scrollbar-width:thin;background:#fff;flex:1;min-width:0;padding:42px 44px 26px;position:relative;overflow:auto}.worker-workspace{padding-left:clamp(24px,5vw,80px);padding-right:clamp(24px,5vw,80px)}.workspace-footer{color:#888b94;text-align:right;margin-top:56px;font-size:11px}.bottom-nav{display:none}.dashboard-grid{grid-template-columns:minmax(0,1fr) 240px;gap:34px;display:grid}.job-list-head,.job-row{grid-template-columns:minmax(130px,1.1fr) minmax(140px,.9fr) minmax(150px,1fr) 18px;align-items:center;gap:18px;display:grid}.job-list-head{color:var(--muted);border-bottom:1px solid var(--line);padding:15px 0;font-size:14px}.job-row{text-align:left;border-bottom:1px solid var(--line);background:#fff;width:100%;padding:28px 0;transition:background-color .15s}.job-row:hover{background:#f9f9fa}.job-row strong{display:block}.job-name strong{letter-spacing:-.035em;font-size:25px;font-weight:720;line-height:1.2}.job-name small,.job-health small{color:var(--muted);margin-top:7px;font-size:13px;line-height:1.45;display:block}.job-name small{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:290px;display:-webkit-box;overflow:hidden}.job-health strong{letter-spacing:-.045em;font-size:37px;line-height:1}.job-health b{font-size:17px}.job-crew{flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;display:flex}.job-crew>span:last-child{color:#62656d}.status-icon{align-items:center;gap:8px;font-size:13px;display:flex}.weekly-line{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:18px 0;margin-top:34px;padding-top:22px;font-size:14px;display:flex}.weekly-line>span{border-left:1px solid var(--line);padding:0 22px}.weekly-line>b{padding-right:22px}.weekly-line+p{margin-top:12px}.review-panel{border-left:1px solid var(--line);padding-left:28px}.review-panel h2{margin-bottom:16px;font-size:24px}.line-link{border-top:1px solid var(--line);text-align:left;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:58px;padding:16px 0;font-size:14px;display:flex}.line-link:last-of-type{border-bottom:1px solid var(--line);margin-bottom:20px}.review-panel>.button{width:100%}.person-line{text-align:left;align-items:center;gap:12px;width:100%;min-height:54px;padding:10px 0;font-size:13px;display:flex}.person-line b{font-weight:500}.person-line small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.review-panel .section-gap{border-top:1px solid var(--line);padding-top:25px}.mobile-primary{display:none}.notice-banner{background:#f8f8f9;border:1px solid #b9bbc3;justify-content:space-between;align-items:center;gap:15px;margin-bottom:26px;padding:6px 12px;font-size:14px;display:flex}.notice-banner>span{align-items:flex-start;gap:10px;line-height:1.5;display:flex}.notice-banner.error{background:#f0f0f1;border-color:#5d5e66}.offline{color:#fff;background:#111;margin-bottom:20px;padding:13px 16px;font-size:13px}.search-row{max-width:500px;margin:12px 0 24px;display:flex}.address{color:#5b5d66;align-items:flex-start;gap:8px;margin:0 0 26px;font-size:15px;line-height:1.7;display:flex}.address>svg{margin-top:3px}.address a{color:#111;white-space:nowrap;align-items:center;gap:4px;margin-left:16px;display:inline-flex}.tabs{border-bottom:1px solid var(--line);gap:30px;min-width:0;margin:25px 0 30px;display:flex}.tabs button{min-height:48px;color:var(--muted);white-space:nowrap;padding:13px 3px 12px;font-size:15px;position:relative}.tabs button.selected{color:#111;font-weight:650}.tabs button.selected:after{content:"";background:#111;height:3px;position:absolute;bottom:0;left:0;right:0}.compact-tabs{margin:0}.job-outcome{padding:5px 0 25px}.job-outcome h2{max-width:800px;margin-bottom:18px;font-size:clamp(30px,3.5vw,48px)}.forecast-title{align-items:center;gap:20px;display:flex}.forecast-title strong{letter-spacing:-.05em;font-size:64px;font-weight:750;line-height:1}.forecast-title>span{font-size:19px}.forecast-title small{color:#666971;margin-top:2px;font-size:14px;display:block}.financial-rows{border-top:7px solid #111;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:9px;display:grid}.financial-rows>div{flex-direction:column;gap:12px;padding:24px 24px 18px 0;display:flex;position:relative}.financial-rows>div+div{border-left:1px solid var(--line);padding-left:28px}.financial-rows>div>span:first-child{color:#64666e;font-size:14px}.financial-rows .money,.financial-rows b{font-size:30px}.finance-caption{border-top:1px solid var(--line);flex-wrap:wrap;gap:12px 25px;padding:15px 0;font-size:13px;display:flex}.scope-text{white-space:pre-wrap;color:#494b53;max-width:820px;margin-top:16px;font-size:16px;line-height:1.75}.asset-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px;max-width:1000px;display:grid}.asset{border:1px solid var(--line);border-radius:5px;min-width:0;overflow:hidden}.asset img{object-fit:cover;width:100%;height:170px;display:block}.asset-caption{align-items:center;gap:5px;min-width:0;padding:6px 8px 6px 12px;font-size:12px;display:flex}.asset-caption>a{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.document-file{word-break:break-word;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:170px;padding:15px;font-size:13px;display:flex}.cost-total{margin-bottom:25px}.cost-total small{color:var(--muted);margin-top:9px;display:block}.ledger-row{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:22px 0;display:flex}.ledger-row>span:first-child{flex:1;min-width:0}.ledger-row small{color:var(--muted);margin-top:4px;display:block}.ledger-row .money{font-size:20px}.team-row{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:24px 0;display:flex}.team-row h3{margin-bottom:5px;font-size:20px}.team-actions{align-items:center;gap:6px;display:flex}.team-actions .button{font-size:13px}.plain-note{max-width:750px;color:var(--muted);border-top:1px solid var(--line);align-items:flex-start;gap:14px;margin-top:34px;padding:22px 0;font-size:14px;display:flex}.schedule-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:15px 0 30px;display:flex}.schedule-toolbar input{width:180px}.schedule-toolbar .text-button{padding:0 10px}.assignment-row{border-bottom:1px solid var(--line);align-items:center;gap:25px;padding:23px 0;display:flex}.schedule-time{flex-shrink:0;width:150px;font-size:14px}.schedule-time small{color:var(--muted);margin-top:5px;display:block}.assignment-row p{color:#555963;font-size:14px}.assignment-row .grow>small{margin-top:8px;display:block}.entry-head,.entry-row{grid-template-columns:minmax(180px,1.6fr) 100px minmax(110px,.8fr) minmax(130px,1fr) 18px;align-items:center;gap:16px;display:grid}.entry-head{border-bottom:1px solid var(--line);color:var(--muted);padding:15px 0;font-size:13px}.entry-row{text-align:left;border-bottom:1px solid var(--line);width:100%;padding:20px 0;font-size:14px}.entry-row:hover{background:#fafafa}.entry-row small{color:var(--muted);margin-top:4px;font-size:12px;display:block}.entry-row strong{font-variant-numeric:tabular-nums;font-size:14px}.entry-status{font-size:13px}.report-filters{grid-template-columns:1fr 1fr 1.2fr 1.2fr;gap:16px;display:grid}.quick-filters{gap:25px;margin-top:8px;display:flex}.export-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.export-actions .button{font-size:13px}.report-summary{border-bottom:1px solid var(--line);align-items:center;gap:28px;margin:30px 0 36px;padding:5px 0 28px;display:flex}.report-summary>div{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.report-summary>div+div{border-left:1px solid var(--line);padding-left:25px}.report-summary strong,.report-summary .money.large{letter-spacing:-.035em;font-size:36px;line-height:1.1}.report-summary span:not(.money){font-size:13px}.report-summary small{color:var(--muted);font-size:11px;line-height:1.4;display:block}.report-footer{color:var(--muted);border-top:1px solid var(--line);max-width:850px;margin-top:30px;padding:24px 0;font-size:12px}.report-footer p+p{margin-top:7px}.active-shift{border:1px solid #bfc1c8;border-top:4px solid #111;max-width:900px;margin-bottom:40px;padding:24px}.active-shift .section-head{margin-bottom:12px}.active-shift .eyebrow{margin-bottom:2px}.live-duration{letter-spacing:-.045em;font-variant-numeric:tabular-nums;margin-bottom:8px;font-size:48px;font-weight:700;line-height:1.2}.shift-actions{flex-wrap:wrap;gap:12px;margin:22px 0 15px;display:flex}.worker-day{max-width:900px;margin-bottom:38px}.worker-day>.section-head{margin-bottom:10px}.worker-day h2{font-size:27px}.worker-job{border-top:1px solid var(--line);padding:24px 0}.worker-job h3{margin-bottom:14px;font-size:28px}.worker-job .eyebrow{font-variant-numeric:tabular-nums;margin-bottom:7px}.worker-job .address{margin-bottom:12px}.worker-job-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-top:18px;display:flex}.scope-preview{color:#555862;-webkit-line-clamp:3;white-space:pre-wrap;-webkit-box-orient:vertical;font-size:15px;display:-webkit-box;overflow:hidden}.daily-note{white-space:pre-wrap;background:#f5f5f6;border-left:3px solid #111;margin:20px 0;padding:15px 18px;font-size:15px}.daily-note span{margin-top:7px;display:block}.empty-day{color:#3f424a;border-top:1px solid var(--line);padding:24px 0}.empty-day span{color:var(--muted);margin-top:4px;font-size:14px;display:block}.location-explainer{color:var(--muted);border-top:1px solid var(--line);align-items:flex-start;gap:10px;max-width:700px;padding-top:20px;font-size:13px;display:flex}.worker-start{max-width:600px;margin-top:28px}.worker-start .button{width:100%;margin-top:12px}.own-hours-total{padding:10px 0 25px}.own-hours-total strong{letter-spacing:-.045em;font-size:48px}.profile-sheet{max-width:540px}.profile-sheet>h2{margin-bottom:8px}.profile-sheet>.form-stack{margin-top:32px}.profile-actions{flex-wrap:wrap;gap:12px;margin:28px 0;display:flex}.dialog{color:#111;background:#fff;border:1px solid #ddd;border-radius:8px;width:min(600px,100vw - 40px);max-width:none;max-height:calc(100dvh - 60px);padding:0;box-shadow:0 20px 80px #0002}.dialog::backdrop{background:#0007}.dialog.wide{width:min(900px,100vw - 40px)}.dialog-shell{flex-direction:column;min-height:0;max-height:calc(100dvh - 60px);display:flex}.dialog-shell>header{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:20px;padding:20px 25px;display:flex}.dialog-shell>header h2{font-size:25px}.dialog-content{overscroll-behavior:contain;min-height:0;padding:27px;overflow-y:auto}.dialog-content>.button{width:100%;margin-top:16px}.dialog-content>p+p{margin-top:12px}.dialog-content .form-actions{z-index:1;margin-bottom:-5px;padding:18px 0 8px;position:sticky;bottom:-27px}.credentials{flex-direction:column;gap:18px;padding:20px 0;display:flex}.credentials input{background:#f8f8f9;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:17px}.credentials .small{word-break:break-word}.time-points{margin-top:24px}.location-point{border-top:1px solid var(--line);padding:20px 0}.location-point .section-head{margin-bottom:12px}.location-point h3{font-size:18px}.location-point p{align-items:flex-start;gap:7px;font-size:14px;display:flex}.location-point>small{color:var(--muted);margin:7px 0 0;display:block}.location-point .text-button{font-size:14px}.review-duration{letter-spacing:-.04em;margin-bottom:10px;font-size:38px;font-weight:750}.audit-list article{border-bottom:1px solid var(--line);padding:18px 0}.audit-list article>b,.audit-list article>span,.audit-list article>small{display:block}.audit-list article>span{color:var(--muted);margin:5px 0;font-size:13px}.audit-list article p{word-break:break-word;white-space:pre-wrap;margin-top:8px;font-size:13px}.auth-page{overscroll-behavior:contain;background:#fff;height:100dvh;overflow-y:auto}.auth-header{color:#fff;background:#111;justify-content:space-between;align-items:center;padding:14px 38px;display:flex}.auth-page>.notice-banner{margin:20px}.auth-grid{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:start;gap:clamp(50px,7vw,120px);max-width:1500px;margin:0 auto;padding:65px 6vw 50px;display:grid}.auth-intro{padding-top:45px}.auth-intro h1{letter-spacing:-.05em;max-width:750px;font-size:clamp(42px,4.8vw,73px);line-height:1.06}.auth-intro>.eyebrow{margin-bottom:25px}.auth-intro>p:not(.eyebrow){color:#6b6d76;max-width:450px;margin-top:25px;font-size:20px}.auth-proof{color:#52555e;flex-direction:column;gap:22px;margin-top:45px;font-size:15px;display:flex}.auth-proof>span{align-items:center;gap:13px;display:flex}.auth-card{border-left:1px solid var(--line);max-width:500px;padding:35px 0 35px 40px}.auth-card>h2{margin-bottom:13px;font-size:30px}.auth-card>.muted{margin-bottom:28px;font-size:15px}.auth-card .form-stack{gap:22px}.auth-switch{border-top:1px solid var(--line);margin-top:16px;padding-top:20px}.auth-switch .small{margin-top:10px}.auth-card.compact{border-left:0;width:calc(100% - 40px);margin:50px auto;padding:25px 0}.auth-card.compact>h1{margin-bottom:22px;font-size:38px}@media (min-width:1500px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 275px;gap:38px}.workspace{padding:46px 50px 28px}.job-list-head,.job-row{grid-template-columns:minmax(180px,1.2fr) minmax(150px,.8fr) minmax(170px,1fr) 18px}.review-panel{padding-left:32px}.job-crew{gap:20px}.job-name strong{font-size:28px}}@media (max-width:1250px){:root{--sidebar:215px}.topbar{gap:18px;padding:0 22px}.company-name{display:none}.workspace{padding:34px 30px 24px}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.review-panel{border-left:0;border-top:1px solid var(--line);grid-template-columns:1fr 1fr;column-gap:30px;margin-top:10px;padding:28px 0 0;display:grid}.review-panel>h2,.review-panel>.line-link,.review-panel>.button{grid-column:1}.review-panel>.section-gap{border-top:0;grid-area:1/2/5;margin-top:0;padding-top:0}.job-row{padding:25px 0}.report-summary{gap:16px}.report-summary strong,.report-summary .money.large{font-size:28px}.report-summary>div+div{padding-left:16px}.head-actions{max-width:360px}.report-filters{grid-template-columns:1fr 1fr}.export-actions{max-width:200px}.entry-head,.entry-row{grid-template-columns:minmax(150px,1.4fr) 85px 110px 125px 18px;gap:10px}.auth-grid{gap:50px}.auth-card{padding-left:28px}}@media (max-width:850px){html,body{overscroll-behavior:none}.topbar{gap:12px;height:58px;padding:0 20px}.topbar .wordmark{font-size:29px}.desktop-nav,.sidebar{display:none}.topbar-end{margin-left:auto}.topbar-end>.icon-button{display:none}.workspace,.worker-workspace{padding:25px 22px}.workspace-footer{margin-top:40px;font-size:10px}.bottom-nav{color:#acadb4;padding:4px 8px max(8px,env(safe-area-inset-bottom));height:calc(66px + env(safe-area-inset-bottom));z-index:5;background:#111;border-top:1px solid #333;flex-shrink:0;align-items:stretch;display:flex}.bottom-nav>button{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;min-width:44px;min-height:52px;padding:4px 3px;font-size:12px;display:flex}.bottom-nav>button.active{color:#fff;font-weight:650}.bottom-nav>button span{line-height:1.2}h1{letter-spacing:-.045em;font-size:37px}h2{font-size:25px}.page-head{margin-bottom:25px;display:block}.page-head>.head-actions{flex-shrink:1;justify-content:flex-start;max-width:none;margin-top:20px;padding-top:0}.subtitle{margin-top:11px;font-size:16px}.eyebrow{font-size:13px}.job-list-head{display:none}.job-row{grid-template-columns:minmax(0,1fr) 20px;gap:8px 12px;padding:22px 0}.job-name{grid-area:1/1}.job-name strong{font-size:24px}.job-name small{margin-top:5px;font-size:13px}.job-health{grid-area:2/1;align-items:center;gap:12px;display:flex}.job-health strong{font-size:25px}.job-health small{margin:0;font-size:13px}.job-health b{font-size:16px}.job-crew{grid-area:3/1;gap:10px;font-size:13px}.status-icon{font-size:12px}.status-icon svg{width:17px;height:17px}.job-row>svg:last-child{grid-area:1/2/4;align-self:center}.review-panel{margin-top:8px;padding-top:25px;display:block}.review-panel>.section-gap{display:none}.review-panel h2{margin-bottom:12px;font-size:23px}.line-link{min-height:50px;padding:14px 0;font-size:14px}.review-panel>.button{width:100%;margin-top:16px;display:flex}.weekly-line,.weekly-line+p{display:none}.mobile-primary{padding-top:25px;display:block}.mobile-primary>.button{width:100%}.search-row{margin-bottom:6px}.empty{gap:18px;min-height:250px;padding:25px 0}.empty h2{font-size:28px}.empty p{font-size:15px}.address{font-size:14px;line-height:1.6}.address a{width:fit-content;margin-top:3px;margin-left:0;display:flex}.tabs{justify-content:space-between;gap:0;margin:24px 0}.tabs>button{text-align:center;flex:1;padding-left:6px;padding-right:6px;font-size:14px}.job-outcome h2{margin-bottom:18px;font-size:33px}.forecast-title{gap:14px}.forecast-title strong{font-size:56px}.forecast-title>span{font-size:16px}.forecast-title small{font-size:13px}.financial-rows{border-top-width:6px;margin-top:4px;display:block}.financial-rows>div,.financial-rows>div+div{border-left:0;border-bottom:1px solid var(--line);flex-direction:row;justify-content:space-between;align-items:center;gap:16px;padding:17px 0}.financial-rows>div>span:first-child{color:#30323a;font-size:15px}.financial-rows .money,.financial-rows b{font-size:23px}.financial-rows .text-button{min-height:30px;font-size:13px}.finance-caption{flex-direction:column;gap:6px;padding:15px 0;font-size:12px;display:flex}.section-gap{margin-top:30px}.section-head{gap:12px}.section-head h2{font-size:24px}.section-head .button{padding:10px 12px;font-size:13px}.scope-text{font-size:15px}.asset-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.asset img,.document-file{height:145px}.cost-total .money.large{font-size:44px}.ledger-row{gap:12px;padding:19px 0}.ledger-row b{font-size:15px}.ledger-row .money{font-size:19px}.team-row{flex-wrap:wrap;gap:12px;padding:20px 0}.team-row>.grow{min-width:calc(100% - 70px)}.team-actions{padding-left:50px}.team-row h3{font-size:21px}.plain-note{margin-top:26px;padding:20px 0;font-size:13px}.schedule-toolbar{flex-wrap:wrap;justify-content:space-between;gap:3px}.schedule-toolbar input{width:160px}.schedule-toolbar .text-button{padding:0 8px;font-size:13px}.assignment-row{align-items:flex-start;gap:13px;padding:20px 0}.schedule-time{width:95px;font-size:12px}.schedule-time b{line-height:1.6;display:block}.schedule-time small{font-size:11px}.assignment-row .text-button.strong{min-height:28px;font-size:18px}.assignment-row>.icon-button{min-width:36px}.report-filters{grid-template-columns:1fr 1fr;gap:14px}.report-filters .field>span{font-size:13px}.report-filters input,.report-filters select{min-height:46px;padding:11px 8px;font-size:16px}.report-filters input{font-size:16px}.report-summary{grid-template-columns:1fr 1fr;gap:20px 0;margin-top:25px;display:grid}.report-summary>div{min-width:0;display:block}.report-summary>div+div{border:0;padding-left:0}.report-summary>div>span:not(.money){margin-top:6px;display:block}.report-summary strong,.report-summary .money.large{font-size:31px}.report-summary>div:last-child{border-top:1px solid var(--line);grid-column:1/-1;align-items:center;gap:13px;padding-top:18px;display:flex}.report-summary>div:last-child>span{margin-top:0}.export-actions{justify-content:flex-start;max-width:none}.export-actions .button{min-height:42px;padding:9px 12px;font-size:12px}.compact-tabs>button{min-height:44px;padding:12px 8px;font-size:12px}.section-head:has(.compact-tabs){display:block}.section-head:has(.compact-tabs)>.text-button{font-size:12px}.entry-head{display:none}.entry-row{grid-template-columns:minmax(0,1fr) auto 15px;gap:8px 10px;padding:20px 0;display:grid}.entry-row>span:first-child{grid-area:1/1}.entry-row>span:first-child>b{font-size:17px}.entry-row>span:nth-child(2){color:var(--muted);grid-area:2/1;align-items:center;gap:7px;font-size:12px;display:flex}.entry-row>strong{grid-area:1/2;font-size:15px}.entry-row>.entry-status{text-align:right;grid-area:2/2;max-width:130px;font-size:12px}.entry-row>svg{grid-area:1/3/3}.entry-row small{margin:2px 0 0}.report-footer{font-size:11px}.worker-day h2{font-size:25px}.worker-job h3{font-size:28px}.worker-job-actions{flex-direction:column;align-items:stretch;gap:8px}.worker-job-actions>.button{width:100%}.active-shift{margin-bottom:32px;padding:21px 18px}.live-duration{font-size:42px}.shift-actions{flex-direction:column;display:flex}.shift-actions .button{width:100%}.worker-workspace>.page-head h1{font-size:37px}.scope-preview{font-size:15px}.own-hours-total strong{font-size:41px}.profile-actions{flex-direction:column}.profile-actions .button{width:100%}.dialog,.dialog.wide{border:0;border-radius:0;width:100%;height:100dvh;max-height:100dvh;margin:0}.dialog-shell{height:100dvh;max-height:100dvh}.dialog-shell>header{min-height:65px;padding:12px 18px}.dialog-shell>header h2{font-size:24px}.dialog-content{padding:25px 22px calc(24px + env(safe-area-inset-bottom));flex:1}.dialog-content .form-actions{bottom:calc(-24px - env(safe-area-inset-bottom));padding:16px 0 calc(10px + env(safe-area-inset-bottom));margin-bottom:calc(-12px - env(safe-area-inset-bottom))}.form-actions .button{flex:1;padding-left:12px;padding-right:12px}.form-stack{gap:23px}.field{font-size:15px}.form-actions{gap:10px}.auth-header{min-height:61px;padding:10px 22px}.auth-grid{padding:30px 25px 45px;display:block}.auth-intro{padding-top:5px}.auth-intro h1{max-width:480px;font-size:36px;line-height:1.1}.auth-intro>.eyebrow{margin-bottom:16px;font-size:12px}.auth-intro>p:not(.eyebrow){margin-top:15px;font-size:16px}.auth-proof{display:none}.auth-card{border-left:0;border-top:1px solid var(--line);max-width:none;margin-top:32px;padding:28px 0 0}.auth-card>h2{font-size:26px}.auth-card .form-stack{gap:20px}.auth-card .button{width:100%}.auth-card.compact{border-top:0;margin-top:25px;padding:25px 0}.auth-card.compact>h1{font-size:34px}.auth-switch .text-button{font-size:14px}.notice-banner{gap:8px;padding:5px 9px;font-size:13px}.notice-banner .icon-button{min-width:35px}.profile-sheet .form-actions>.button{font-size:13px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{html,body{background:#fff!important;height:auto!important;overflow:visible!important}.app-shell,.app-body{height:auto!important;display:block!important;overflow:visible!important}.topbar,.sidebar,.bottom-nav,.no-print,.dialog,.workspace-footer,.head-actions,.notice-banner,.offline{display:none!important}.workspace{height:auto!important;padding:0!important;overflow:visible!important}.page-head{margin-bottom:20px}h1{font-size:30px}.report-summary{margin:20px 0}.entry-row{break-inside:avoid}.entry-head,.entry-row{grid-template-columns:2fr 1fr 1fr 1fr 15px!important;display:grid!important}.entry-row>*{grid-area:auto!important}.report-filters{grid-template-columns:repeat(4,1fr)!important;display:grid!important}input,select{-webkit-appearance:none!important;appearance:none!important;border:0!important;min-height:25px!important;padding:0!important;font-size:12px!important}.report-footer{font-size:10px}}.form-fieldset{border:0;flex-direction:column;gap:23px;min-width:0;margin:0;padding:0;display:flex}.own-hour-states{color:#666971;border-top:1px solid var(--line);flex-wrap:wrap;gap:12px 22px;margin-bottom:25px;padding-top:18px;font-size:13px;display:flex}.auth-switch>.text-button,.auth-switch>a{margin-bottom:5px;display:flex}.dialog-content>.form-error{margin-bottom:20px}.workspace,.dialog-content,.auth-card{overflow-wrap:anywhere}.topbar{height:calc(64px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.auth-header{padding-top:calc(14px + env(safe-area-inset-top))}.audit-diff{border-left:2px solid #ccc;margin-top:10px;padding-left:12px}@media (max-width:850px){.topbar{height:calc(58px + env(safe-area-inset-top))}.auth-header{padding-top:calc(10px + env(safe-area-inset-top))}.dialog-shell>header{padding-top:calc(12px + env(safe-area-inset-top));min-height:calc(65px + env(safe-area-inset-top))}}.recovery-code{letter-spacing:.02em;overflow-wrap:anywhere;resize:none;background:#f8f8f9;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px;line-height:1.6}.recovery-confirm{cursor:pointer;align-items:flex-start;gap:12px;min-height:44px;padding:10px 0;font-size:14px;display:flex}.recovery-confirm input{accent-color:#111;flex-shrink:0;width:20px;min-width:20px;height:20px;min-height:20px;margin:2px 0 0}.auth-header a.wordmark{text-decoration:none}
