@font-face{font-display:swap;font-family:Mulish;font-style:normal;font-weight:300 900;src:url(/fonts/mulish.woff2) format("woff2")}:root{--cp-black: #0a0a0a;--cp-charcoal: #171717;--cp-white: #ffffff;--cp-bone: #f7f6f4;--cp-stone: #e7e5e1;--cp-iron: #4a4a4a;--cp-red: #c8102e;--cp-red-dark: #9e0a23;--cp-red-soft: rgba(200, 16, 46, .4);--cp-line: #d9d5ce;--cp-line-soft: #cec8bf;--cp-well: #efede9;--cp-paper: #fbfaf8;--cp-materials: #a8701d;--cp-labour: #2f6b8f;--cp-equipment: #4f7d52;--cp-tab-cap: max(1080px, 58vw);--cp-module-min: max(1160px, 60vw);--cp-crew-paving: #6a5a96;--cp-crew-paving-soft: rgba(106, 90, 150, .07);--cp-crew-patching: #2f7c6e;--cp-crew-patching-soft: rgba(47, 124, 110, .08);color:var(--cp-black);color-scheme:light;background:var(--cp-bone);font-family:Mulish,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility}[data-theme=dark]{--cp-black: #f0eee9;--cp-charcoal: #e2dfda;--cp-white: #201f1d;--cp-bone: #191817;--cp-stone: #3a3835;--cp-iron: #a8a29a;--cp-line: #3a3835;--cp-line-soft: #47443f;--cp-well: #161514;--cp-paper: #262523;--cp-materials: #d29a4a;--cp-labour: #6aa5c9;--cp-equipment: #83b287;--cp-crew-paving: #a89bd6;--cp-crew-paving-soft: rgba(168, 155, 214, .12);--cp-crew-patching: #7cc0b2;--cp-crew-patching-soft: rgba(124, 192, 178, .12);color:var(--cp-black);color-scheme:dark;background:var(--cp-bone)}[data-theme=dark] tbody tr:hover td{background:#ffffff0a}[data-theme=dark] .entry-panel.open{background:#ffffff08}[data-theme=dark] .status-badge.red{color:#ef8496}[data-theme=dark] .status-badge.amber{background:#a8a29a29;border-color:#a8a29a57}[data-theme=dark] .status-badge.green{background:#f0eee91a;border-color:#f0eee942}[data-theme=dark] .call-log-stage-table tbody tr:nth-child(2n) td{background:var(--cp-paper)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#0a0a0a;overflow-x:hidden}button,input,select,textarea{font:inherit}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{background:var(--cp-paper);color:var(--cp-black);font-size:14px}button{border-radius:2px}.app-shell{display:grid;grid-template-columns:224px minmax(0,1fr);max-width:100vw;min-height:100vh;overflow-x:hidden}.app-shell.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}.app-shell.sidebar-collapsed .sidebar{display:none}.sidebar{background:linear-gradient(180deg,#0a0a0af5,#171717fa),#0a0a0a;border-right:1px solid rgba(74,74,74,.45);color:#fff;display:flex;flex-direction:column;gap:16px;padding:20px 18px}.brand-lockup{border-bottom:1px solid rgba(74,74,74,.55);display:grid;padding-bottom:18px}.mobile-nav-toggle{align-items:center;background:#ffffff14;border:1px solid rgba(255,255,255,.18);border-radius:2px;color:#fff;cursor:pointer;display:none;height:42px;justify-content:center;width:42px}.mobile-nav-toggle:hover{background:#c8102e3d;border-color:#c8102ead}.brand-logo-frame{align-items:center;display:flex;height:48px;overflow:hidden}.brand-logo{height:auto;max-width:176px;width:100%}.brand-lockup h1,.topbar h2,.module-header h3,.section-heading h3{letter-spacing:0;line-height:1.1;margin:0}.brand-lockup p,.eyebrow{margin:0}.module-nav{display:grid;gap:18px}.module-nav-section{display:grid;gap:8px}.nav-group-label{color:#ffffff85;font-size:11px;font-weight:900;letter-spacing:.1em;line-height:1;margin:0;text-transform:uppercase}.module-nav-list{display:grid;gap:6px}.module-nav button{align-items:center;background:transparent;border:1px solid transparent;border-radius:2px;color:#ffffffd1;cursor:pointer;display:flex;gap:10px;height:40px;padding:0 10px;text-align:left}.module-nav button:hover,.module-nav button.active{background:#ffffff14;border-color:#c8102e8c;color:#fff}.module-nav button.active{box-shadow:inset 4px 0 0 var(--cp-red)}.sidebar-user-select{border-top:1px solid rgba(74,74,74,.55);display:grid;gap:8px;margin-top:2px;padding-top:14px}.sidebar-user-select span{align-items:center;color:#ffffff9e;display:inline-flex;font-size:11px;font-weight:900;gap:6px;letter-spacing:.1em;line-height:1;text-transform:uppercase}.signin-screen{align-items:center;background:#131313;display:grid;justify-items:center;min-height:100vh;padding:24px}.signin-card{background:#1d1c1a;border:1px solid rgba(255,255,255,.14);color:#fff;display:grid;gap:16px;justify-items:center;max-width:430px;padding:40px 36px;text-align:center;width:100%}.signin-logo{max-width:290px;width:100%}.signin-card h1{font-size:20px;font-weight:900}.signin-copy{color:#ffffffb8;font-size:14px}.signin-setup{color:#ffffff8c;font-size:12px;font-weight:800}.signin-error{color:#ff8896;font-size:13px;font-weight:800}.signin-google{align-items:center;background:#fff;border:0;border-radius:2px;color:#131313;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:900;height:44px;justify-content:center;padding:0 22px;width:100%}.signin-google:hover{background:#efece7}.signin-admin{align-items:center;background:#c8102e;border:0;border-radius:2px;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:900;height:44px;justify-content:center;padding:0 22px;width:100%}.signin-admin:hover{background:#a30d26}.signin-footnote{color:#ffffff73;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.hr-email-input{background:var(--cp-paper);border:1px solid var(--cp-line-soft);border-radius:2px;color:var(--cp-black);height:34px;padding:0 8px;width:175px}.hr-email-note{color:var(--cp-iron);font-size:11px;font-weight:800}.sidebar-user-name{color:#fff;font-size:14px;font-weight:850;line-height:1}.sidebar-theme-toggle{align-items:center;background:#ffffff14;border:1px solid rgba(255,255,255,.18);border-radius:2px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:850;gap:8px;height:38px;justify-content:center;margin-top:8px;width:100%}.sidebar-theme-toggle:hover{background:#c8102e3d;border-color:#c8102ead}.sidebar-theme-toggle.active{border-color:#c8102ead;box-shadow:inset 4px 0 0 var(--cp-red)}.workspace{align-items:center;background:var(--cp-bone);display:flex;flex-direction:column;gap:18px;min-width:0;padding:22px}.workspace>*{max-width:100%;min-width:min(100%,var(--cp-module-min));width:fit-content}.workspace>.topbar{align-self:stretch;min-width:0;width:auto}.topbar{align-items:center;display:flex;justify-content:space-between;gap:16px}.side-panel-toggle{align-items:center;background:var(--cp-white);border:1px solid var(--cp-stone);border-radius:2px;color:var(--cp-black);cursor:pointer;display:inline-flex;height:42px;justify-content:center;width:42px}.side-panel-toggle:hover{background:#c8102e14;border-color:var(--cp-red);color:var(--cp-red)}.topbar h2{font-size:clamp(24px,3vw,34px);font-weight:900}.secondary-action{align-items:center;background:var(--cp-white);border:1px solid var(--cp-stone);color:var(--cp-black);cursor:pointer;display:inline-flex;font-weight:800;gap:8px;height:42px;padding:0 12px;white-space:nowrap}.secondary-action:hover{background:#c8102e14;border-color:var(--cp-red);color:var(--cp-red)}.secondary-action:disabled{cursor:not-allowed;opacity:.55}.hidden-file-input{display:none}.dashboard-grid{display:grid;gap:12px;grid-template-columns:repeat(6,minmax(0,1fr))}.metric{align-items:center;background:var(--cp-white);border:1px solid var(--cp-stone);border-radius:2px;box-shadow:0 4px 12px #0a0a0a0a;display:flex;gap:16px;grid-column:span 2;justify-content:space-between;min-height:92px;padding:16px}.metric p{color:var(--cp-iron);font-size:12px;font-weight:900;margin:0 0 8px;text-transform:uppercase}.metric strong{display:block;font-size:21px;font-weight:900;letter-spacing:0;line-height:1.1}.metric.blue,.metric.green,.metric.amber{border-top:4px solid var(--cp-stone)}.metric.red{border-top:4px solid var(--cp-red)}.wide-panel,.module-view{background:var(--cp-white);border:1px solid var(--cp-stone);border-radius:2px;box-shadow:0 4px 12px #0a0a0a0a}.wide-panel{grid-column:span 3;padding:16px}.section-heading,.module-header{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}.section-heading{margin-bottom:18px}.section-heading h3,.module-header h3{font-size:20px;font-weight:900}.priority-list{display:grid;gap:10px}.priority-row{align-items:center;border:1px solid var(--cp-stone);border-radius:2px;display:grid;gap:12px;grid-template-columns:12px minmax(0,1fr) auto;min-height:68px;padding:10px 12px}.priority-title-line{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.priority-row p{color:var(--cp-iron);margin:2px 0 0}.priority-row>span:last-child{color:var(--cp-iron);font-size:13px;white-space:nowrap}.status-dot{border-radius:1px;height:10px;width:10px}.status-dot.high,.status-dot.safety{background:var(--cp-red)}.status-dot.medium{background:var(--cp-iron)}.status-dot.low{background:var(--cp-black)}.status-pill{background:var(--cp-bone);border:1px solid var(--cp-stone);border-radius:2px;color:var(--cp-black);font-size:11px;font-weight:900;line-height:1;padding:5px 6px;text-transform:uppercase}.status-pill.muted{color:var(--cp-iron);font-weight:800}.priority-more,.empty-state{background:var(--cp-bone);border:1px solid var(--cp-stone);border-radius:2px;color:var(--cp-iron);font-size:13px;font-weight:800;padding:12px}.module-view{display:grid;gap:18px;min-width:min(100%,var(--cp-module-min));padding:18px}.records-grid{display:grid;gap:18px}.record-panel,.report-panel{border:1px solid var(--cp-stone);border-radius:2px;display:grid;gap:16px;padding:18px}.timesheet-approval-panel{background:var(--cp-paper);border-left:4px solid var(--cp-red)}.timesheet-approval-controls{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(220px,280px) auto}.timesheet-approval-summary{align-items:center;background:var(--cp-white);border:1px solid var(--cp-stone);display:grid;gap:10px;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr) auto;padding:10px 12px}.timesheet-approval-summary span{color:var(--cp-iron);font-size:13px;font-weight:800}.timesheet-approval-summary strong{color:var(--cp-black);font-size:15px;font-weight:900;white-space:nowrap}.accounting-action-panel{background:var(--cp-paper);border-left:4px solid var(--cp-red)}.accounting-action-summary{align-items:center;background:var(--cp-white);border:1px solid var(--cp-stone);display:flex;gap:12px;min-height:40px;padding:0 12px}.accounting-action-summary span{color:var(--cp-iron);font-size:13px;font-weight:850}.accounting-action-summary strong{color:var(--cp-black);font-size:15px;font-weight:900}.accounting-action-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.accounting-action-list{background:var(--cp-white);border:1px solid var(--cp-stone);display:grid}.accounting-action-list-heading,.accounting-action-row{align-items:center;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:10px 12px}.accounting-action-list-heading{background:var(--cp-bone);border-bottom:1px solid var(--cp-stone);color:var(--cp-iron)}.accounting-action-list-heading span{color:var(--cp-red)}.accounting-action-list-heading strong,.accounting-action-list-heading span{font-size:12px;font-weight:900;text-transform:uppercase}.accounting-action-row{border-top:1px solid var(--cp-stone);grid-template-columns:minmax(0,1.4fr) auto auto auto;min-height:58px}.accounting-action-row strong{font-size:15px;font-weight:900}.hr-access-panel th,.hr-access-panel td{padding:12px 8px}.hr-access-panel .hr-email-input{width:150px}.accounting-action-row>div{display:grid;gap:3px;min-width:0}.accounting-action-row>div strong,.accounting-action-row>div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accounting-action-row>div strong{color:var(--cp-black);font-weight:900}.accounting-action-row>div span,.accounting-action-row>span{color:var(--cp-iron);font-size:13px;font-weight:800}.accounting-action-row>strong{color:var(--cp-black);font-weight:900;white-space:nowrap}.accounting-action-row .secondary-action{height:34px}.accounting-empty-action{color:var(--cp-iron);font-size:14px;font-weight:800;padding:16px 12px}.compact-heading{margin-bottom:0}.compact-heading h3{font-size:20px}.entry-panel{border:1px solid var(--cp-stone);border-radius:2px;display:grid;gap:14px;padding:12px}.entry-panel.open{background:#ffffff9e}.module-actions{align-items:stretch;display:flex;gap:10px}.status-badge{border:1px solid var(--cp-stone);border-radius:2px;display:inline-flex;font-size:11px;font-weight:900;line-height:1;padding:6px 7px;text-transform:uppercase;white-space:nowrap}.status-badge.red{background:#c8102e1a;border-color:#c8102e52;color:var(--cp-red-dark)}.status-badge.amber{background:#4a4a4a1a;border-color:#4a4a4a47;color:var(--cp-charcoal)}.status-badge.green{background:#0a0a0a14;border-color:#0a0a0a3d;color:var(--cp-black)}.status-badge.neutral{background:var(--cp-bone);color:var(--cp-iron)}.form-grid{align-items:end;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.estimate-form-section{border-top:1px solid var(--cp-stone);display:grid;gap:12px;padding-top:14px}.estimate-form-section h4{color:var(--cp-charcoal);font-size:13px;font-weight:900;letter-spacing:0;margin:0;text-transform:uppercase}.estimate-form-grid{align-items:end;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.field{display:grid;gap:7px}.field span{color:var(--cp-iron);font-size:13px;font-weight:800}.field input,.field select,.field textarea,.compact-select{background:var(--cp-paper);border:1px solid var(--cp-line-soft);border-radius:2px;color:var(--cp-black);height:40px;padding:0 10px;width:100%}.field textarea{min-height:84px;padding:10px 11px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.compact-select:focus{border-color:var(--cp-red);outline:3px solid rgba(200,16,46,.14)}.wide-field{grid-column:span 2}.compact-select{min-width:126px}.compact-select:disabled,.check-control input:disabled{cursor:not-allowed;opacity:.55}.primary-action{align-items:center;background:var(--cp-red);border:1px solid var(--cp-red);border-radius:2px;color:var(--cp-white);cursor:pointer;display:flex;font-weight:900;gap:9px;height:42px;justify-content:center;padding:0 14px}.primary-action:hover{background:var(--cp-red-dark);border-color:var(--cp-red-dark);box-shadow:0 6px 14px #c8102e2e}.call-log-stage-screen{align-content:start;background:var(--cp-white);border:1px solid var(--cp-line);border-radius:2px;box-shadow:0 8px 22px #0a0a0a0d;display:grid;gap:6px;min-height:380px;padding:14px}.call-log-module-view{background:transparent;border:0;box-shadow:none;padding:0}.call-log-create-action{height:46px;justify-content:center;min-width:168px;padding:0 18px;white-space:nowrap}.call-log-create-action svg{height:16px;width:16px}.call-log-create-action.primary-action{background:var(--cp-red);border-color:var(--cp-red);font-size:14px;font-weight:900}.call-log-search{align-items:center;background:var(--cp-white);border:1px solid var(--cp-line-soft);border-radius:2px;box-shadow:0 3px 10px #0a0a0a0a;display:flex;gap:10px;height:46px;padding:0 12px 0 14px;width:400px}.call-log-search span{color:var(--cp-black);flex:0 0 auto;font-size:13px;font-weight:900;text-transform:uppercase}.call-log-search input{background:var(--cp-paper);border-color:var(--cp-line);height:34px;min-width:0;padding:0 8px}.call-log-stage-body{display:grid;grid-template-columns:196px minmax(0,1fr);gap:0;min-width:0}.call-log-stage-sidebar{display:grid;gap:8px}.call-log-stage-tabs{align-items:stretch;background:var(--cp-well);border-right:1px solid var(--cp-line);display:flex;flex-direction:column;gap:1px;max-height:none;min-width:0;overflow-y:auto;padding:0}.call-log-table-panel{align-content:start;display:grid;min-width:0}.call-log-stage-tabs button{background:var(--cp-paper);border:0;border-left:4px solid transparent;border-radius:2px;color:var(--cp-black);cursor:pointer;display:inline-flex;align-items:center;flex:0 0 auto;gap:6px;height:44px;justify-content:space-between;min-height:44px;padding:0 14px 0 13px;text-align:left;white-space:nowrap;width:100%}.call-log-stage-tabs button:hover{background:#c8102e0f;border-left-color:#c8102e94;color:var(--cp-red)}.call-log-stage-tabs button.active{background:var(--cp-white);border-left-color:var(--cp-red);color:var(--cp-black)}.call-log-stage-tabs span{font-size:13px;font-weight:900;line-height:1.1;white-space:nowrap}.call-log-stage-tabs strong{align-items:center;background:transparent;border-radius:2px;color:var(--cp-iron);display:inline-flex;font-size:12px;height:22px;justify-content:center;line-height:1;min-width:26px;padding:0 6px}.call-log-stage-tabs button.active strong{color:var(--cp-red)}.call-log-stage-table-wrap{max-width:100%;min-width:0;overflow-x:auto;overflow-y:visible}.call-log-stage-table{border-collapse:collapse;width:100%}.call-log-stage-table th,.call-log-stage-table td{border-bottom:1px solid var(--cp-stone);color:var(--cp-black);font-size:14px;padding:10px 12px;text-align:left;vertical-align:top}.call-log-stage-table th{background:var(--cp-bone);border-bottom:1px solid var(--cp-stone);color:var(--cp-iron);font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.call-log-stage-table tbody tr:nth-child(2n) td{background:var(--cp-paper)}.call-log-stage-table tbody tr:hover{background:#c8102e0a}.call-log-stage-table .empty-table-row td{color:var(--cp-iron);font-size:13px;font-weight:800;padding:18px 12px;text-align:center}.call-log-stage-table .empty-table-row:hover{background:transparent}.call-log-clickable-row{cursor:pointer}.call-log-clickable-row:focus-visible td{outline:2px solid rgba(200,16,46,.32);outline-offset:-2px}.call-log-stage-table td strong,.call-log-stage-table td span{display:block}.call-log-stage-table td strong{font-size:15px;line-height:1.2}.call-log-stage-table td span{color:var(--cp-iron);font-size:13px;margin-top:2px}.call-log-stage-select,.call-log-stage-select.compact-select{background:var(--cp-paper);border:1px solid var(--cp-line-soft);border-radius:2px;color:var(--cp-black);font-size:14px;height:40px;min-width:164px;padding:0 10px}.call-log-delete-action{height:38px;width:38px}.call-log-detail-screen{background:transparent;border:0;box-shadow:none;display:grid;gap:14px;overflow:visible;padding:0}.call-log-detail-body{background:var(--cp-white);border:1px solid var(--cp-line);border-radius:2px;box-shadow:0 8px 22px #0a0a0a0d;display:grid;gap:0;overflow:hidden}.call-log-call-banner{align-items:stretch;background:var(--cp-white);border:1px solid var(--cp-line);border-left:4px solid var(--cp-red);border-radius:2px;box-shadow:0 8px 22px #0a0a0a0d;color:var(--cp-black);display:grid;grid-template-columns:auto minmax(0,1fr) auto;min-width:0}.call-log-banner-value{align-content:center;border-left:1px solid var(--cp-stone);display:grid;gap:3px;justify-items:end;padding:8px 16px}.call-log-banner-value span{color:var(--cp-iron);font-size:10px;font-weight:900;letter-spacing:.08em;line-height:1.1;text-transform:uppercase}.call-log-banner-value strong{color:var(--cp-red);font-size:21px;font-weight:900;line-height:1}.call-log-board-banner{grid-template-columns:minmax(0,1fr) auto}.call-log-board-banner .call-log-call-summary{padding-left:16px}.call-log-board-tools{align-items:center;display:flex;gap:10px;padding:8px 12px 8px 0}.call-log-call-summary{align-content:center;display:grid;gap:4px;justify-items:start;padding:10px 16px 11px 0}.call-log-back-action{align-items:center;align-self:center;background:var(--cp-white);border:1px solid var(--cp-stone);border-radius:2px;color:var(--cp-black);cursor:pointer;display:inline-flex;gap:6px;font-size:12px;font-weight:900;height:44px;justify-content:center;justify-self:start;margin-left:12px;margin-right:12px;padding:0;text-transform:uppercase;width:44px}.call-log-back-action:hover{background:#c8102e0f;border-color:var(--cp-red);color:var(--cp-red)}.call-log-call-summary strong{color:var(--cp-black);font-size:21px;line-height:1}.call-log-call-summary span{color:var(--cp-iron);font-size:12px;font-weight:850}.call-log-call-summary small{color:var(--cp-iron);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.call-log-detail-tabs{align-items:end;background:var(--cp-well);border-bottom:1px solid var(--cp-line);display:flex;gap:1px;overflow-x:auto;padding:0 10px}.call-log-detail-tabs button{background:var(--cp-paper);border:1px solid var(--cp-line);border-bottom:0;color:var(--cp-charcoal);cursor:pointer;flex:0 0 auto;font-size:12px;font-weight:800;height:34px;margin-top:8px;padding:0 12px}.call-log-detail-tabs button.active{background:var(--cp-white);box-shadow:inset 0 3px 0 var(--cp-red);color:var(--cp-black)}.call-log-form-layout{background:var(--cp-well);display:flex;flex-direction:column;gap:12px;padding:14px 16px 18px}.call-log-note-entry-panel,.call-log-notes-workspace{max-width:var(--cp-tab-cap);min-width:0}.call-log-panel-title{align-items:center;display:flex;justify-content:space-between;gap:10px}.panel-toggle{align-items:center;background:transparent;border:0;color:var(--cp-black);cursor:pointer;display:flex;gap:8px;justify-content:flex-start;padding:0;text-align:left;width:100%}.panel-toggle strong{align-items:center;color:var(--cp-black);display:inline-flex;font-size:12px;font-weight:900;letter-spacing:.08em;min-height:22px;text-transform:uppercase}.panel-toggle span{color:var(--cp-red);font-size:13px;font-weight:900}.panel-toggle:hover strong{color:var(--cp-red)}.call-log-takeoff-info-panel>.panel-toggle,.call-log-takeoff-builder-grid>section>.panel-toggle,.entry-panel>.panel-toggle{margin:-12px -12px -8px;padding:12px 12px 8px;width:calc(100% + 24px)}.call-log-takeoff-info-panel>.panel-toggle[aria-expanded=false],.call-log-takeoff-builder-grid>section>.panel-toggle[aria-expanded=false],.entry-panel>.panel-toggle[aria-expanded=false]{margin:-12px;padding:12px}.call-log-takeoff-info-panel:has(>.panel-toggle:hover),.call-log-takeoff-builder-grid>section:has(>.panel-toggle:hover),.call-log-note-composer:has(>.panel-toggle:hover),.call-log-message-panel:has(>.panel-toggle:hover),.entry-panel:has(>.panel-toggle:hover){border-color:var(--cp-red-soft)}.call-log-panel-bar{align-items:center;display:flex;gap:10px;justify-content:space-between}.call-log-panel-bar .panel-toggle{flex:1;width:auto}.call-log-panel-bar .secondary-action{height:30px;min-height:30px;padding:0 10px}.call-log-note-composer .panel-toggle{grid-column:1 / -1;padding:10px 12px}.call-log-note-composer:has(.call-log-note-body-field) .panel-toggle{border-bottom:1px solid var(--cp-line)}.call-log-panel-title strong{align-items:center;color:var(--cp-black);display:inline-flex;font-size:12px;font-weight:900;letter-spacing:.08em;min-height:22px;text-transform:uppercase}.call-log-panel-title button{background:var(--cp-white);border:1px solid var(--cp-line-soft);color:var(--cp-charcoal);cursor:pointer;font-size:12px;font-weight:800;height:28px;padding:0 10px;text-transform:uppercase}.call-log-panel-title span{color:var(--cp-red);font-size:13px;font-weight:900}.call-log-note-category-field{display:grid;gap:5px}.call-log-note-category-field span,.call-log-note-composer label span{color:var(--cp-iron);font-size:11px;font-weight:900;text-transform:uppercase}.call-log-note-category-field select{background:var(--cp-paper);border:1px solid var(--cp-line-soft);border-radius:2px;color:var(--cp-black);height:40px;padding:0 10px}.call-log-notes-workspace{align-items:start;flex:1;display:grid;gap:14px;min-height:0}.call-log-note-composer{align-items:stretch;background:var(--cp-white);border:1px solid var(--cp-line);display:grid;gap:10px;grid-template-columns:1fr;max-width:var(--cp-tab-cap);padding:0}.call-log-note-composer .call-log-note-body-field{margin:0 12px}.call-log-note-composer .call-log-note-controls{margin:0 12px 12px}.call-log-note-composer>*{min-width:0}.call-log-note-composer label{align-content:start;display:grid;gap:5px}.call-log-note-composer textarea{border:1px solid var(--cp-line-soft);font-size:14px;height:64px;line-height:1.4;min-height:64px;padding:8px 10px;resize:vertical;width:100%}.call-log-note-body-field{align-content:start;grid-column:1;grid-row:2}.call-log-note-controls{align-content:center;align-items:stretch;border-top:1px solid var(--cp-line);display:grid;gap:8px;grid-column:1;grid-row:3;grid-template-columns:minmax(180px,240px) minmax(260px,1fr) 150px;padding-top:8px}.call-log-attachment-row{align-content:end;display:grid;gap:6px;grid-column:auto;grid-row:auto;grid-template-columns:150px minmax(0,1fr)}.call-log-attachment-row>span{color:var(--cp-iron);font-size:11px;font-weight:900;grid-column:1 / -1;text-transform:uppercase}.call-log-file-input{display:none}.call-log-file-button{justify-content:center;min-height:34px;width:100%}.call-log-selected-file{align-items:center;background:var(--cp-paper);border:1px solid var(--cp-line);color:var(--cp-iron);display:grid;font-size:12px;font-weight:800;grid-template-columns:minmax(0,1fr) auto;min-height:28px;padding:0 8px 0 10px}.call-log-selected-file span{min-height:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-log-clear-file-button{align-items:center;background:transparent;border:0;color:var(--cp-iron);cursor:pointer;display:inline-flex;height:26px;justify-content:center;width:26px}.call-log-clear-file-button:hover,.call-log-clear-file-button:focus{color:var(--cp-red);outline:none}.call-log-note-composer .primary-action{align-self:stretch;grid-column:3;grid-row:1;justify-content:center;min-height:56px;width:100%}.call-log-note-composer .primary-action:disabled{background:#b9b2aa;cursor:not-allowed}.call-log-message-panel{background:var(--cp-white);border:1px solid var(--cp-line);display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0}.call-log-message-panel .panel-toggle{padding:10px 12px}.call-log-note-list{align-content:start;align-items:start;border-top:1px solid var(--cp-line);display:grid;gap:6px;max-height:clamp(360px,calc(100vh - 450px),560px);overflow-y:auto;overscroll-behavior:contain;padding:8px}.call-log-posted-note{align-self:start;background:var(--cp-paper);border:1px solid var(--cp-line);cursor:pointer;display:grid;gap:5px 12px;grid-template-columns:minmax(0,1fr) auto;min-height:68px;padding:9px 10px 9px 12px}.call-log-posted-note:hover,.call-log-posted-note:focus{border-color:var(--cp-line-soft);box-shadow:inset 0 0 0 1px var(--cp-line-soft);outline:none}.call-log-posted-note-meta{align-items:baseline;display:flex;gap:10px;grid-column:1;min-width:0}.call-log-note-delete-action{grid-column:2;grid-row:1 / span 2;height:32px;width:32px}.call-log-posted-note-meta strong{color:var(--cp-black);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;width:max-content}.call-log-posted-note-meta span,.call-log-posted-note-meta time{color:var(--cp-iron);font-size:12px;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-log-posted-note-meta span:before{color:var(--cp-iron);content:"By ";font-weight:700}.call-log-posted-note p{color:var(--cp-black);font-size:14px;grid-column:1;line-height:1.3;margin:0;max-height:42px;overflow:hidden;padding-right:8px;white-space:pre-wrap}.call-log-posted-note-footer{align-items:center;border-top:0;display:flex;grid-column:1 / -1;gap:10px;justify-content:space-between;padding-top:0}.call-log-attachment-chip,.call-log-no-attachment{align-items:center;color:var(--cp-iron);display:inline-flex;font-size:12px;font-weight:800;gap:6px;min-width:0}.call-log-attachment-chip{background:var(--cp-white);border:1px solid var(--cp-line);color:var(--cp-charcoal);cursor:pointer;font:inherit;font-size:12px;font-weight:800;max-width:calc(100% - 44px);padding:5px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-log-attachment-chip:hover:not(:disabled){border-color:var(--cp-red);color:var(--cp-red)}.call-log-attachment-chip:disabled{cursor:default;opacity:.7}.call-log-attachment-open{color:var(--cp-red);font-size:10px;font-weight:900;letter-spacing:.08em;padding:2px 0 2px 4px;text-transform:uppercase}.call-log-attachment-chip svg{flex:0 0 auto}.call-log-image-chip{background:var(--cp-well);border:1px solid var(--cp-line);color:var(--cp-iron);font-size:11px;font-weight:900;padding:4px 7px;text-transform:uppercase}.call-log-note-viewer-backdrop{align-items:center;background:#0e0e0ead;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:24px;position:fixed;z-index:80}.call-log-note-viewer{background:var(--cp-white);border:1px solid var(--cp-line);border-left:5px solid var(--cp-red);box-shadow:0 24px 70px #00000047;display:grid;gap:14px;max-height:min(820px,calc(100vh - 48px));max-width:var(--cp-tab-cap);overflow:auto;padding:18px;width:min(1080px,calc(100vw - 48px))}.call-log-note-viewer-header{align-items:start;border-bottom:1px solid #e3ded7;display:flex;gap:14px;justify-content:space-between;padding-bottom:12px}.call-log-note-viewer-header>div{display:grid;gap:5px}.call-log-note-viewer-header strong{color:var(--cp-black);display:inline-flex;font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;width:max-content}.call-log-note-viewer-header span{color:var(--cp-iron);font-size:13px;font-weight:850}.call-log-note-viewer p{color:var(--cp-black);font-size:15px;line-height:1.55;margin:0;min-height:120px;white-space:pre-wrap}.call-log-note-viewer-attachment{display:flex}.call-log-note-viewer-image{align-self:start;border:1px solid var(--cp-line);max-height:min(520px,58vh);max-width:100%;object-fit:contain;width:auto}.call-log-note-viewer-pdf{border:1px solid var(--cp-line);height:min(520px,58vh);width:100%}p.call-log-attachment-note{color:var(--cp-iron);font-size:12px;margin:0;min-height:0}.call-log-note-viewer-actions{align-items:center;border-top:1px solid #e3ded7;display:flex;gap:10px;justify-content:flex-end;padding-top:12px}.call-log-empty-notes{align-items:center;color:var(--cp-iron);display:flex;font-size:14px;font-weight:800;justify-content:center;min-height:180px}.call-log-info-panel,.call-log-estimate-panel{align-content:start;background:var(--cp-well);display:grid;gap:12px;padding:14px 16px 16px}.call-log-info-grid{background:var(--cp-white);border:1px solid var(--cp-line);display:grid;gap:14px;grid-template-columns:repeat(4,minmax(160px,240px));justify-content:start;max-width:var(--cp-tab-cap);padding:16px}.call-log-info-grid label{display:grid;gap:6px;min-width:0}.call-log-info-grid label span{color:var(--cp-iron);font-size:11px;font-weight:900;text-transform:uppercase}.call-log-info-grid input,.call-log-info-grid select,.call-log-info-grid textarea{background:var(--cp-paper);border:1px solid var(--cp-line-soft);color:var(--cp-black);min-width:0;padding:0 10px;width:100%}.call-log-info-grid input,.call-log-info-grid select{height:40px}.call-log-info-grid textarea{min-height:180px;padding:10px;resize:vertical}.call-log-info-wide{grid-column:span 2}.call-log-estimate-add-row{display:flex;justify-content:flex-start}.recycle-restore{height:32px;min-height:32px;padding:0 10px}.call-log-due-overdue{color:var(--cp-red);font-weight:900}.call-log-area-tools{align-items:center;display:flex;gap:10px;justify-content:flex-end}.call-log-crew-tools{align-items:end;display:flex;flex-wrap:wrap;gap:10px}.call-log-depth-tools{align-items:end;background:var(--cp-paper);border:1px solid var(--cp-line);display:flex;flex-wrap:wrap;gap:10px;padding:10px}.call-log-depth-tools .call-log-crew-hours strong{font-size:13px}.call-log-crew-tools .secondary-action,.call-log-cost-entry .secondary-action{height:40px;justify-content:center;min-height:40px}.call-log-production-rate{margin-left:auto;width:150px}.call-log-depth-field{width:150px}.call-log-crew-hours{align-content:end;display:grid;gap:6px;min-width:120px}.call-log-crew-hours span{color:var(--cp-iron);font-size:11px;font-weight:900;text-transform:uppercase}.call-log-crew-hours strong{align-items:center;color:var(--cp-black);display:inline-flex;font-size:15px;font-weight:900;min-height:40px}tr.crew-row-paving td{background:var(--cp-crew-paving-soft)}tr.crew-row-patching td{background:var(--cp-crew-patching-soft)}.crew-chip,.call-log-estimate-table td span.crew-chip{border-radius:2px;color:#fff;display:inline-block;font-size:10px;font-weight:900;letter-spacing:.06em;margin:2px 0 0;padding:2px 6px;text-transform:uppercase;width:fit-content}.crew-chip-paving{background:var(--cp-crew-paving)}.crew-chip-patching{background:var(--cp-crew-patching)}.call-log-cost-table th:nth-last-child(1){width:56px}.call-log-cost-table th:nth-last-child(2){width:120px}.call-log-cost-table th:nth-last-child(3){width:110px}.call-log-cost-table th:nth-last-child(4){width:90px}.call-log-cost-table th:nth-last-child(5){width:250px}.call-log-cost-table th:nth-last-child(6){width:210px}.call-log-cost-table-crew th:nth-last-child(5){width:70px}.call-log-cost-table-crew th:nth-last-child(6){width:250px}.call-log-area-tools .secondary-action{height:40px;min-height:40px}.call-log-attachment-row.drag-over .call-log-selected-file,.call-log-attachment-row.drag-over .call-log-file-button{border-color:var(--cp-red);color:var(--cp-red)}.call-log-estimate-table{background:var(--cp-white);border-collapse:collapse;box-shadow:0 1px 0 var(--cp-line),1px 0 0 var(--cp-line),-1px 0 0 var(--cp-line);width:100%}.call-log-estimate-table th,.call-log-estimate-table td{border:1px solid var(--cp-line);font-size:14px;padding:10px 11px;text-align:left}.call-log-estimate-table th{background:var(--cp-bone);border-bottom:1px solid var(--cp-stone);color:var(--cp-iron);font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.call-log-estimate-table td strong,.call-log-estimate-table td span{display:block}.call-log-estimate-table td strong{font-weight:900}.call-log-estimate-table td span{color:var(--cp-iron);font-size:11px;font-weight:800}.call-log-estimate-row{cursor:pointer}.call-log-estimate-row:hover,.call-log-estimate-row:focus{background:var(--cp-paper);outline:2px solid rgba(200,16,46,.24);outline-offset:-2px}.call-log-estimate-accordion{display:grid;gap:10px;max-width:var(--cp-tab-cap)}.call-log-estimate-card{background:var(--cp-white);border:1px solid var(--cp-line);box-shadow:0 1px 0 var(--cp-line);min-width:0}.call-log-estimate-card-header{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:8px 12px}.call-log-estimate-card-toggle{align-items:center;background:transparent;border:0;color:var(--cp-black);cursor:pointer;display:flex;flex:1;gap:14px;min-width:0;padding:0;text-align:left}.call-log-estimate-card:has(.call-log-estimate-card-toggle:hover){border-color:var(--cp-red-soft)}.call-log-estimate-card-toggle strong{font-size:15px;font-weight:900}.call-log-estimate-card-toggle span{color:var(--cp-iron);font-size:12px;font-weight:800;white-space:nowrap}.call-log-estimate-card-toggle em{color:var(--cp-red);font-size:15px;font-style:normal;font-weight:900;margin-left:auto;white-space:nowrap}.call-log-estimate-card-header .secondary-action{height:32px;min-height:32px;padding:0 10px}.call-log-estimate-card-body{border-top:1px solid var(--cp-stone);display:grid;gap:12px;padding:12px}.call-log-estimate-card-body .call-log-takeoff-form-grid{grid-template-columns:minmax(180px,260px) minmax(0,1fr);max-width:900px;padding-top:0}.call-log-estimate-card-body .call-log-takeoff-form-grid textarea{min-height:74px}.call-log-takeoff-builder{display:grid;gap:12px;min-width:0}.call-log-takeoff-screen .call-log-call-banner{margin-top:0}.call-log-takeoff-screen-body{align-content:start;background:var(--cp-well);border:1px solid var(--cp-line);border-radius:2px;box-shadow:0 8px 22px #0a0a0a0d;display:grid;gap:14px;justify-items:start;padding:14px 16px 16px}.call-log-takeoff-screen-body>*{max-width:var(--cp-tab-cap);min-width:0;width:100%}.call-log-takeoff-metrics{padding:0}.call-log-takeoff-metrics{background:var(--cp-line);border:1px solid var(--cp-line);display:grid;gap:1px;grid-template-columns:repeat(4,minmax(130px,1fr));padding:0}.call-log-takeoff-metric{background:var(--cp-white);border:0;display:grid;gap:4px;min-height:58px;padding:9px 10px}.call-log-takeoff-metric.highlight strong{color:var(--cp-red)}.call-log-takeoff-metric span{color:var(--cp-iron);font-size:10px;font-weight:900;line-height:1.2;text-transform:uppercase}.call-log-takeoff-metric strong{color:var(--cp-black);font-size:20px;font-weight:900;line-height:1}.call-log-takeoff-form-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(180px,1fr));padding-top:10px}.call-log-takeoff-info-panel{background:var(--cp-white);border:1px solid var(--cp-line);display:grid;gap:0;padding:12px}.call-log-takeoff-form-grid label{display:grid;gap:5px}.call-log-takeoff-form-grid span{color:var(--cp-iron);font-size:11px;font-weight:900;text-transform:uppercase}.call-log-takeoff-form-grid input,.call-log-takeoff-form-grid select,.call-log-takeoff-form-grid textarea,.call-log-inline-entry input,.call-log-inline-entry select{background:var(--cp-paper);border:1px solid var(--cp-line-soft);color:var(--cp-black);min-width:0;padding:0 10px}.call-log-takeoff-form-grid input,.call-log-takeoff-form-grid select,.call-log-inline-entry input,.call-log-inline-entry select{height:40px}.call-log-takeoff-form-grid textarea{min-height:78px;padding:10px;resize:vertical}.call-log-takeoff-wide-field{grid-column:1 / -1}.call-log-takeoff-builder-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}.call-log-takeoff-builder-grid>section{background:var(--cp-white);border:1px solid var(--cp-line);display:grid;gap:10px;padding:12px}.call-log-compact-table:not(.call-log-cost-table) th:nth-child(1){width:120px}.call-log-compact-table:not(.call-log-cost-table) th:nth-child(2),.call-log-compact-table:not(.call-log-cost-table) th:nth-child(3){width:130px}.call-log-compact-table:not(.call-log-cost-table) th:nth-child(4){width:110px}.call-log-compact-table:not(.call-log-cost-table) th:nth-child(6){width:170px}.call-log-compact-table:not(.call-log-cost-table) th:last-child{width:70px}.call-log-area-entry-row td{background:var(--cp-paper);vertical-align:top}.call-log-area-entry-row input{background:var(--cp-white);border:1px solid var(--cp-line-soft);color:var(--cp-black);font-size:13px;height:34px;min-width:0;padding:0 9px;width:100%}.call-log-area-entry-row input:focus{border-color:var(--cp-red);box-shadow:0 0 0 2px #c8102e24;outline:none}.call-log-editable-cell{background:transparent;border:1px solid transparent;color:inherit;cursor:text;display:block;font:inherit;min-height:28px;padding:4px 6px;text-align:left;width:100%}.call-log-editable-cell:hover,.call-log-editable-cell:focus{background:var(--cp-paper);border-color:var(--cp-line-soft);outline:none}.call-log-table-cell-input{background:var(--cp-white);border:1px solid var(--cp-red);box-shadow:0 0 0 2px #c8102e24;color:var(--cp-black);font:inherit;height:34px;min-width:0;padding:0 9px;width:100%}.call-log-area-photo-dropzone{align-items:stretch;display:grid;min-height:34px}.call-log-photo-cell-button{background:transparent;border:1px dashed transparent;color:inherit;cursor:copy;font:inherit;min-height:32px;overflow:hidden;padding:4px 6px;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.call-log-area-photo-dropzone:hover .call-log-photo-cell-button,.call-log-photo-cell-button:focus{background:var(--cp-paper);border-color:var(--cp-line-soft);outline:none}.call-log-cost-panels{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}.call-log-costs-panel{background:var(--cp-white);border:1px solid var(--cp-line);display:grid;gap:12px;min-width:0;padding:12px}.call-log-cost-panel{background:var(--cp-white);border:1px solid var(--cp-line);display:grid;gap:10px;min-width:0;overflow:hidden;padding:12px}.call-log-cost-panel-materials{border-left:4px solid var(--cp-materials)}.call-log-cost-panel-labour{border-left:4px solid var(--cp-labour)}.call-log-cost-panel-equipment{border-left:4px solid var(--cp-equipment)}.call-log-cost-panel-materials>.call-log-panel-title strong{color:var(--cp-materials)}.call-log-cost-panel-labour>.call-log-panel-title strong{color:var(--cp-labour)}.call-log-cost-panel-equipment>.call-log-panel-title strong{color:var(--cp-equipment)}.call-log-cost-entry{display:grid;gap:8px;grid-template-columns:minmax(200px,280px) minmax(60px,70px) minmax(80px,90px) minmax(100px,110px) minmax(140px,170px);justify-content:start}.call-log-material-cost-entry{grid-template-columns:minmax(150px,210px) minmax(180px,250px) minmax(80px,90px) minmax(100px,110px) minmax(140px,170px)}.call-log-cost-entry input,.call-log-cost-entry select{background:var(--cp-paper);border:1px solid var(--cp-line-soft);border-radius:2px;color:var(--cp-black);height:40px;min-width:0;padding:0 10px;width:100%}.call-log-cost-entry .primary-action{justify-content:center;min-height:38px}.call-log-cost-table{justify-self:start;min-width:0;table-layout:fixed;width:auto}.call-log-area-entry-row small{color:var(--cp-iron);display:block;font-size:11px;font-weight:800;margin-top:5px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-log-area-photo-button,.call-log-area-add-button{justify-content:center;min-height:34px;width:100%}.call-log-compact-table th,.call-log-compact-table td{font-size:12px;padding:8px 9px}.primary-action:disabled{cursor:default;opacity:.58}.resource-list-panel{background:var(--cp-white);border:1px solid var(--cp-stone);border-radius:2px;min-width:0}.resource-list-title{align-items:start;display:flex;gap:12px;justify-content:space-between}.resource-list-title h4{font-size:15px;line-height:1.15;margin:0}.resource-list{display:grid;gap:8px}.empty-copy{color:var(--cp-iron);font-size:12px;font-style:normal}.resource-list-panel{display:grid;gap:10px;padding:12px}.resource-list-title strong{font-size:14px}.resource-row{align-items:center;border-top:1px solid var(--cp-stone);display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto auto;padding-top:9px}.resource-row strong,.resource-row span{display:block}.resource-row span{color:var(--cp-iron);font-size:12px}.resource-row em{font-style:normal;font-weight:900}.icon-action{align-items:center;background:var(--cp-white);border:1px solid var(--cp-stone);border-radius:2px;color:var(--cp-black);cursor:pointer;display:inline-flex;height:34px;justify-content:center;width:34px}.icon-action:hover{background:#c8102e14;border-color:var(--cp-red);color:var(--cp-red)}.icon-action.danger{color:var(--cp-red-dark)}.icon-action.danger:hover{background:#c8102e14;border-color:var(--cp-red)}.icon-action.confirm-delete.armed,.icon-action.confirm-delete.armed:hover{background:var(--cp-red);border-color:var(--cp-red);color:#fff;font-size:12px;font-weight:900;padding:0 8px;width:auto}.row-actions{display:inline-flex;gap:6px;min-width:76px}.check-control{align-items:center;display:inline-flex;gap:8px;white-space:nowrap}.check-control input{accent-color:var(--cp-red);height:16px;width:16px}.check-control span{color:var(--cp-black);font-size:13px;font-weight:700}.table-tools{align-items:end;display:flex;flex-wrap:wrap;gap:10px}.table-tools .field{min-width:160px}.table-tools .table-search{flex:1 1 220px;max-width:340px}.table-note{color:var(--cp-iron);font-size:12px;font-weight:800;margin:0}.table-wrap{border:1px solid var(--cp-stone);border-radius:2px;min-width:0;overflow-x:auto;overflow-y:visible;width:100%}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--cp-stone);padding:12px 14px;text-align:left;vertical-align:top}th{background:var(--cp-bone);color:var(--cp-iron);font-size:12px;font-weight:900;letter-spacing:.08em;position:sticky;top:0;text-transform:uppercase;z-index:1}td{color:var(--cp-black);font-size:14px}tbody tr{transition:background-color .12s ease}tbody tr:hover td{background:#0a0a0a06}tbody tr:last-child td{border-bottom:0}.table-empty{background:var(--cp-white);color:var(--cp-iron);font-size:13px;font-weight:800;padding:18px 14px;text-align:center}@media(max-width:980px){.app-shell{align-content:start;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.app-shell.sidebar-collapsed .sidebar{display:flex}.sidebar{align-self:start;border-bottom:1px solid rgba(74,74,74,.45);border-right:0;gap:10px;height:auto;min-height:0;padding:10px 18px;position:sticky;top:0;z-index:20}.brand-lockup{align-items:center;grid-template-columns:minmax(0,1fr) auto;padding-bottom:0;border-bottom:0}.brand-logo-frame{height:38px}.brand-logo{max-width:180px}.mobile-nav-toggle{display:inline-flex;height:38px;width:38px}.side-panel-toggle{display:none}.workspace{gap:12px;padding:16px 18px 18px}.module-nav{display:none;gap:12px}.module-nav.open{border-top:1px solid rgba(74,74,74,.55);display:grid;padding-top:14px}.module-nav-section{align-items:start;grid-template-columns:82px minmax(0,1fr)}.module-nav-list{grid-template-columns:repeat(3,minmax(0,1fr))}.module-nav button{justify-content:center}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric,.wide-panel{grid-column:span 1}.form-grid,.estimate-form-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media(max-width:640px){.workspace{padding:18px}.topbar,.module-header{align-items:stretch;flex-direction:column}.module-actions{display:grid;grid-template-columns:1fr}.secondary-action{justify-content:center}.module-nav,.module-nav-section{grid-template-columns:1fr}.module-nav-list{grid-template-columns:1fr 1fr}.dashboard-grid,.form-grid,.estimate-form-grid{grid-template-columns:1fr}.wide-field,.estimate-cost-strip,.estimate-insight-grid{grid-column:span 1}.call-list-header,.call-detail-header,.takeoff-detail-header,.resource-list-title{align-items:stretch;flex-direction:column}.resource-row{grid-template-columns:minmax(0,1fr) auto}.resource-row .icon-action{grid-column:2}}.timeclock-view{display:grid;gap:14px}.timeclock-flash{background:var(--cp-paper);border:1px solid var(--cp-line);font-size:15px;font-weight:900;padding:14px 16px}.timeclock-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.timeclock-name{align-items:flex-start;background:var(--cp-white);border:1px solid var(--cp-line);border-radius:2px;cursor:pointer;display:grid;font-family:inherit;gap:6px;padding:18px 16px;text-align:left}.timeclock-name:hover:not(:disabled){border-color:var(--cp-red-soft)}.timeclock-name:disabled{cursor:not-allowed;opacity:.55}.timeclock-name strong{color:var(--cp-black);font-size:15px;font-weight:900}.timeclock-name span{color:var(--cp-iron);font-size:12px;font-weight:800}.timeclock-name.on-clock span{color:var(--cp-red)}.timeclock-pad,.timeclock-punch{background:var(--cp-white);border:1px solid var(--cp-line);border-radius:2px;display:grid;gap:14px;justify-items:center;margin:0 auto;max-width:340px;padding:26px;width:100%}.timeclock-pad-name{color:var(--cp-black);font-size:15px;font-weight:900}.timeclock-dots{display:flex;gap:12px}.timeclock-dots span{background:var(--cp-paper);border:1px solid var(--cp-line-soft);border-radius:50%;height:16px;width:16px}.timeclock-dots span.filled{background:var(--cp-black)}.timeclock-error{color:var(--cp-red);font-size:13px;font-weight:900}.timeclock-keys{display:grid;gap:8px;grid-template-columns:repeat(3,72px)}.timeclock-keys button{background:var(--cp-paper);border:1px solid var(--cp-line-soft);border-radius:2px;color:var(--cp-black);cursor:pointer;font-family:inherit;font-size:20px;font-weight:900;height:56px}.timeclock-keys button:hover{border-color:var(--cp-red-soft)}.timeclock-keys .timeclock-cancel{font-size:13px}.timeclock-punch p{font-size:14px}.timeclock-action{font-size:15px;height:52px;justify-content:center;width:100%}.hr-pin-input{width:90px}.sidebar-footer{display:grid;gap:6px}.sidebar-footer .sidebar-theme-toggle{margin-top:0}.sidebar-user-select{justify-items:center;text-align:center}.hr-access-actions{align-items:center;border-top:1px solid var(--cp-line);display:flex;gap:10px;padding-top:12px}.hr-access-dirty{color:var(--cp-red);font-size:12px;font-weight:900;letter-spacing:.04em}.check-control-locked input:disabled{accent-color:var(--cp-black);cursor:not-allowed;opacity:1}
