*,:before,:after{box-sizing:border-box}html{overflow-x:clip}body{font-family:var(--jk-font);color:var(--jk-text);background:var(--jk-bg);margin:0;padding:0;font-size:14px;line-height:1.5}h1{font-family:var(--jk-display);letter-spacing:-.02em;margin:0;font-size:24px;font-weight:600;line-height:1.2}h2,h3,h4{font-family:var(--jk-display);margin:0 0 8px;font-size:16px;font-weight:600}p{margin:0 0 12px}a{color:var(--jk-text);cursor:pointer;text-decoration:none}a:hover{color:var(--jk-primary)}button,input,select,textarea{font:inherit;color:var(--jk-text)}button,summary{cursor:pointer}summary{list-style:none}summary::-webkit-details-marker{display:none}:focus-visible{box-shadow:var(--jk-focus);outline:none}::placeholder{color:var(--jk-text-muted)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:80;background:var(--jk-surface-solid);color:var(--jk-text);padding:8px 12px;position:absolute;top:-40px;left:8px}.skip:focus{top:8px}.topbar{z-index:30;background:color-mix(in srgb, var(--jk-bg) 97%, transparent);height:56px;color:var(--jk-text);border-bottom:1px solid var(--jk-border);position:sticky;top:0}.topbar-inner{align-items:center;gap:8px;height:100%;padding:0 12px 0 8px;display:flex}.topbar-title{min-width:0;line-height:1.15}.topbar-kicker,.page-kicker,.side-group-label{letter-spacing:.14em;text-transform:uppercase;color:var(--jk-subtle);margin:0;font-size:14px;font-weight:600}.side-group-label{font-size:10px}.topbar-section{color:var(--jk-text);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:14px;font-weight:600;overflow:hidden}.page-kicker{margin-bottom:2px}.nav-toggle>summary{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.nav-toggle{flex-shrink:0;position:relative}.nav-toggle>summary{width:36px;height:36px;min-height:36px;color:var(--jk-text-muted);border-radius:8px;justify-content:center;padding:0}.nav-toggle>summary:hover{background:var(--jk-hover);color:var(--jk-text)}.drawer-layer{z-index:50;position:fixed;inset:0}.drawer-backdrop{background:color-mix(in srgb, var(--jk-bg) 72%, transparent);border:0;border-radius:0;width:100%;min-height:100%;padding:0;position:absolute;inset:0}.drawer{z-index:1;background:var(--jk-sidebar);border-right:1px solid var(--jk-border);flex-direction:column;width:min(280px,86vw);height:100%;display:flex;position:relative;overflow:auto}.sidebar{display:none}.brand{color:var(--jk-text);font-family:var(--jk-display);letter-spacing:-.02em;align-items:center;gap:10px;padding:16px 16px 8px;font-size:15px;font-weight:700;text-decoration:none;display:flex}.side-nav{flex-direction:column;flex:1;gap:14px;padding:8px;display:flex;overflow:auto}.side-links{gap:2px;display:grid}.side-link{min-height:32px;color:var(--jk-text-muted);border-radius:8px;align-items:center;gap:10px;padding:6px 10px;font-size:14px;line-height:1.3;text-decoration:none;display:flex}.side-link:hover,.side-link[aria-current=page]:hover{background:var(--jk-hover);color:var(--jk-primary)}.brand:hover{color:var(--jk-text)}.side-link[aria-current=page]{color:var(--jk-text);background:#e306131f}.side-link[aria-current=page] .nav-icon{color:var(--jk-primary)}.nav-count{background:var(--jk-primary);color:#fff;text-align:center;border-radius:999px;min-width:1.25rem;padding:0 6px;font-size:11px;font-weight:700;line-height:1.45}.side-link .nav-count,.menu a .nav-count{margin-left:auto}.top-quotes{min-height:32px;color:var(--jk-text);border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:4px 10px;font-size:14px;font-weight:600;text-decoration:none;display:none}.top-quotes[aria-current=page]{background:#e306131f}.pill-row,.header-actions,.inbox-row{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.header-actions{margin-left:auto}.inbox-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.inbox-row{display:flex}.material-line{grid-template-columns:minmax(0,2fr) 72px 110px 110px auto;align-items:end;gap:8px;margin-bottom:8px;display:grid}@media (min-width:1024px) and (not ((pointer:coarse) and (max-height:500px))){.top-quotes{display:inline-flex}}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.material-line{grid-template-columns:1fr 1fr}}.nav-icon,.search-icon{flex-shrink:0;width:16px;height:16px}.sidebar-foot{border-top:1px solid var(--jk-border);color:var(--jk-subtle);margin:0;padding:12px 16px;font-size:12px}.top-search{flex:140px;min-width:0;max-width:260px;margin-left:auto;position:relative}.top-search .search-icon{width:14px;height:14px;color:var(--jk-subtle);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.top-search input{border-radius:8px;width:100%;height:36px;min-height:36px;padding:0 10px 0 30px;font-size:14px}.quick-add{flex-shrink:0;position:relative}.quick-add>summary.btn-primary{height:36px;min-height:36px}.btn-primary{background:var(--jk-raised);color:var(--jk-primary);border:1px solid var(--jk-border);border-radius:var(--jk-radius);box-sizing:border-box;white-space:nowrap;justify-content:center;align-items:center;min-width:7.5rem;min-height:44px;padding:0 16px;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn-primary:hover{background:var(--jk-red-soft);color:var(--jk-primary)}.btn-primary:active{background:color-mix(in srgb, var(--jk-primary) 18%, var(--jk-raised));color:var(--jk-primary)}.btn-primary:disabled,.btn-primary:disabled:hover{color:var(--jk-subtle);background:var(--jk-raised);border-color:var(--jk-border);opacity:1;cursor:not-allowed}.btn-neutral{background:var(--jk-raised);color:var(--jk-primary);border:1px solid var(--jk-border);border-radius:var(--jk-radius);box-sizing:border-box;white-space:nowrap;justify-content:center;align-items:center;min-width:7.5rem;min-height:44px;padding:0 16px;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn-neutral:hover{background:var(--jk-red-soft);color:var(--jk-primary)}.btn-neutral:disabled,.btn-neutral:disabled:hover{color:var(--jk-subtle);background:var(--jk-raised);border-color:var(--jk-border);cursor:not-allowed}.menu{background:var(--jk-surface-solid);color:var(--jk-text);border:1px solid var(--jk-border);border-radius:var(--jk-radius);min-width:180px;box-shadow:var(--jk-glass-shadow);z-index:50;flex-direction:column;display:flex}.menu a{color:var(--jk-text);align-items:center;min-height:44px;padding:8px 12px;text-decoration:none;display:flex}.menu a:hover{background:var(--jk-hover);color:var(--jk-primary)}.quick-add .menu{min-width:280px;position:absolute;top:calc(100% + 4px);right:0}.wrap{width:100%;margin:0;padding:20px 16px 32px}.page-header{margin-bottom:var(--jk-section-gap)}.crumbs{color:var(--jk-text-muted);margin-bottom:6px;font-size:14px}.page-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.page-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.page-header-actions form{margin:0}.panel{background:var(--jk-surface);background-color:var(--jk-panel);border:1px solid var(--jk-border);border-radius:var(--jk-radius);box-shadow:var(--jk-glass-shadow);-webkit-backdrop-filter:blur(var(--jk-glass-blur));margin-bottom:var(--jk-section-gap);padding:16px}.stats{grid-template-columns:1fr;gap:12px;display:grid}.stat{color:inherit;text-decoration:none}.stat span{color:var(--jk-text-muted);font-size:14px;display:block}.stat strong{margin-top:4px;font-size:14px;display:block}.dash-links{flex-wrap:wrap;gap:12px 16px;display:flex}.dash-links a{align-items:center;min-height:44px;font-weight:600;display:inline-flex}.tab-strip{border-bottom:1px solid var(--jk-border);gap:4px;max-width:100%;margin:0 0 12px;display:flex;overflow-x:auto}.tab-strip a{border-bottom:2px solid #0000;flex:none;align-items:center;gap:6px;min-height:36px;padding:6px 10px;font-size:14px;text-decoration:none;display:inline-flex}.tab-strip a[aria-current=page]{border-bottom-color:var(--jk-primary);font-weight:600}.count{color:var(--jk-text-muted);font-size:14px}.toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:8px;margin-bottom:12px;display:flex}.toolbar-search{align-items:flex-end;gap:8px;margin-left:auto;display:flex}.toolbar-search .search-field{margin-left:0}.toolbar .search-field{flex:0 220px;width:min(100%,220px);max-width:220px;margin-bottom:0;margin-left:auto}.toolbar input[type=search]{width:100%;max-width:220px;height:34px;min-height:34px;padding:4px 10px;font-size:14px}.toolbar .search-button{height:34px;min-height:34px;padding:4px 12px;font-size:14px}.toolbar.list-toolbar{margin-bottom:var(--jk-section-gap);justify-content:flex-start;align-items:center}.tab-strip:has(+.toolbar.list-toolbar){margin-bottom:var(--jk-section-gap)}:is(.toolbar.list-toolbar:has(+.col-reset-row),.toolbar.list-toolbar:has(+.jobs-table>.col-reset-row)){padding-right:8.75rem}.toolbar.list-toolbar+.col-reset-row,.toolbar.list-toolbar+.jobs-table>.col-reset-row{z-index:2;height:0;min-height:0;margin:0;position:relative;overflow:visible}.toolbar.list-toolbar+.col-reset-row .col-reset,.toolbar.list-toolbar+.jobs-table>.col-reset-row .col-reset{top:calc(-1 * (var(--jk-section-gap) + 34px));align-items:center;height:34px;display:inline-flex;position:relative}.toolbar.list-toolbar .search-field,.toolbar.list-toolbar .filter-field{margin:0}.toolbar.list-toolbar .search-field{flex:0 0 18rem;width:18rem;min-width:16rem;max-width:none;margin-left:0}.toolbar.list-toolbar input[type=search]{width:100%;max-width:none}.toolbar-toggle{border:1px solid var(--jk-border);border-radius:var(--jk-radius);background:var(--jk-raised);height:34px;min-height:34px;color:var(--jk-text);flex:none;padding:0 12px;font-size:14px;font-weight:600}.toolbar-toggle[aria-pressed=true]{color:var(--jk-primary);border-color:var(--jk-primary)}.toolbar-toggle:hover{color:var(--jk-primary)}.toolbar.list-toolbar .filter-field{flex:0 0 11.5rem;width:11.5rem}.toolbar.list-toolbar select,.toolbar.list-toolbar .filter-field input{box-sizing:border-box;width:100%;height:34px;min-height:34px;padding:4px 10px;font-size:14px}.toolbar.list-toolbar .check-row{min-height:34px;margin:0}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.toolbar .search-field{flex:1 1 0;width:auto;max-width:none;margin-left:0}.toolbar input[type=search]{max-width:none}.toolbar.list-toolbar .search-field,.toolbar.list-toolbar .filter-field{flex:100%;width:100%;min-width:0;max-width:none}.history-line{grid-template-columns:7.75rem 5.5rem minmax(0,1fr);padding:6px 0}.history-line .history-event{white-space:normal;overflow-wrap:anywhere;grid-column:1/-1;overflow:visible}.cis-row.cis-devices .visually-hidden{clip:auto;white-space:normal;width:auto;height:auto;color:var(--jk-subtle);margin:0 0 4px;font-size:14px;font-weight:600;position:static;overflow:visible}}.field-grow{flex:220px;margin:0}.table-wrap{background:var(--jk-surface);border:1px solid var(--jk-border);border-radius:var(--jk-radius-md);max-width:100%;overflow:clip visible}.table-wrap.cols-locked,.week-scroll.cols-locked{overflow-x:auto}.table-wrap.cols-locked.fits-edge,.week-scroll.cols-locked.fits-edge{overflow-x:clip}.week-scroll.cols-locked .week-table{max-width:none}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--jk-border);vertical-align:top;word-break:break-word;padding:7.65px 12px}.data-table tbody td{vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;height:39.78px;padding-top:6.12px;padding-bottom:6.12px;overflow:hidden}.data-table thead th{vertical-align:bottom}.data-table th{letter-spacing:normal;text-transform:none;color:var(--jk-subtle);background:0 0;font-size:14px;font-weight:600}.data-table tbody tr:hover{background:var(--jk-hover)}.data-table th a{color:inherit;letter-spacing:normal;text-transform:none;cursor:pointer;align-items:center;min-height:32px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}a.record-no{white-space:nowrap;font-weight:600}.data-table th.col-text,.data-table td.col-text,.week-table th.col-text,.week-table td.col-text,.history-diff th.col-text,.history-diff td.col-text{text-align:left}.data-table th.num,.data-table td.num,.data-table th.col-num,.data-table td.col-num,.week-table th.col-num,.week-table td.col-num{text-align:left;font-variant-numeric:tabular-nums}.data-table th.num,.data-table td.num,.data-table th.col-num,.data-table td.col-num{white-space:nowrap;word-break:normal;width:1%}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.auto-cols .data-table th,.auto-cols .data-table td{white-space:nowrap;word-break:normal;width:1%}.auto-cols .data-table th[data-label=Name],.auto-cols .data-table td[data-label=Name],.auto-cols .data-table th[data-label=Job],.auto-cols .data-table td[data-label=Job],.auto-cols .data-table th[data-label=Job\ description],.auto-cols .data-table td[data-label=Job\ description],.auto-cols .data-table th[data-label=Description],.auto-cols .data-table td[data-label=Description],.auto-cols .data-table th[data-label=Client],.auto-cols .data-table td[data-label=Client]{white-space:nowrap;text-overflow:ellipsis;width:auto;min-width:0;overflow:hidden}.quotes-list.auto-cols .data-table th[data-label=Client],.quotes-list.auto-cols .data-table td[data-label=Client]{white-space:nowrap;width:1%}.auto-cols .pill-row{flex-wrap:nowrap}}.data-table tr.totals-row td{border-top:2px solid var(--jk-border);font-weight:700}.data-table th a[aria-current=true]{box-shadow:inset 0 -2px 0 var(--jk-primary)}.pill{white-space:nowrap;background:color-mix(in srgb, var(--jk-text) 8%, transparent);color:var(--jk-text-muted);box-sizing:border-box;border:0;border-radius:999px;justify-content:flex-start;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;line-height:1.45;display:inline-flex}.pill.is-status{text-align:center;text-overflow:ellipsis;flex:0 0 112px;justify-content:center;width:112px;min-width:112px;max-width:112px;height:20px;overflow:hidden}.pill-muted{background:color-mix(in srgb, var(--jk-text) 8%, transparent);color:var(--jk-text-muted)}.pill-info{background:color-mix(in srgb, var(--jk-info) 16%, transparent);color:var(--jk-info)}.pill-warning,.pill-review{background:color-mix(in srgb, var(--jk-warning) 18%, transparent);color:var(--jk-warning)}.pill-success,.pill-complete{background:color-mix(in srgb, var(--jk-success) 16%, transparent);color:var(--jk-success)}.pill-danger,.pill-primary{background:color-mix(in srgb, var(--jk-primary) 16%, transparent);color:var(--jk-primary)}.cell-muted{color:var(--jk-text-muted)}.job-cell{flex-direction:column;gap:0;min-width:0;display:flex}.job-number{font-size:14px;font-weight:600;line-height:14.4px;text-decoration:none}.job-number:hover{color:var(--jk-primary)}.job-name{min-width:0;color:var(--jk-text-muted);align-items:center;gap:6px;font-size:14px;line-height:1.17;display:flex}.job-name-text{white-space:nowrap;text-overflow:ellipsis;word-break:normal;min-width:0;display:block;overflow:hidden}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.jobs-table .data-table th:not(:first-child),.jobs-table .data-table td:not(:first-child){white-space:nowrap;word-break:normal;width:1%}.jobs-table .data-table td:has(.job-cell){white-space:normal;width:auto;min-width:0;max-width:none;height:auto;min-height:39.78px;overflow:hidden}.jobs-table .job-name-text{white-space:nowrap;text-overflow:ellipsis;word-break:normal;display:block;overflow:hidden}.jobs-table .job-cell{width:100%;min-width:0;max-width:100%}.jobs-table.has-client .data-table th:first-child{white-space:nowrap;word-break:normal}.client-quotes .data-table th:first-child,.client-quotes .data-table td:first-child,.client-quotes .data-table th:nth-child(n+3),.client-quotes .data-table td:nth-child(n+3){white-space:nowrap;word-break:normal;width:1%}.client-quotes .data-table th:nth-child(2),.client-quotes .data-table td:nth-child(2){white-space:normal;word-break:normal;width:auto}}@media (min-width:1100px) and (not ((pointer:coarse) and (max-height:500px))),(min-width:880px) and (max-width:1023px) and (not ((pointer:coarse) and (max-height:500px))){.client-jobs .data-table,.client-quotes .data-table{table-layout:fixed}.client-quotes .data-table th:first-child,.client-quotes .data-table td:first-child{width:8.25rem}.client-jobs .data-table th:nth-child(2),.client-jobs .data-table td:nth-child(2),.client-quotes .data-table th:nth-child(3),.client-quotes .data-table td:nth-child(3){white-space:nowrap;width:8.75rem}.client-jobs .data-table th:nth-child(3),.client-jobs .data-table td:nth-child(3),.client-quotes .data-table th:nth-child(4),.client-quotes .data-table td:nth-child(4){white-space:nowrap;width:9rem}.client-jobs .data-table th:nth-child(4),.client-jobs .data-table td:nth-child(4),.client-jobs .data-table th:nth-child(5),.client-jobs .data-table td:nth-child(5){white-space:nowrap;width:5rem}.client-jobs .data-table th:nth-child(6),.client-jobs .data-table td:nth-child(6){white-space:nowrap;width:8.25rem}.client-quotes .data-table th:nth-child(5),.client-quotes .data-table td:nth-child(5){white-space:nowrap;width:18.25rem}}.job-name .sample-flag{flex-shrink:0;margin-left:0;padding-top:.8px;padding-bottom:.8px}.job-sorts{align-items:center;gap:4px;display:inline-flex}.sample-flag{border:1px solid var(--jk-border);color:var(--jk-text-muted);vertical-align:middle;border-radius:999px;margin-left:8px;padding:1px 6px;font-size:14px;display:inline-block}.record-header .record-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.record-title h2{flex:200px;margin:0;font-size:20px}.meta{color:var(--jk-text-muted);margin:4px 0 0;font-size:14px}.facts{gap:8px;margin:12px 0;display:grid}.facts span{color:var(--jk-text-muted);font-size:14px;display:block}.facts .fact-wide{grid-column:1/-1}.fact-text{white-space:pre-wrap;margin:0}.status-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.status-form select{flex:180px;width:auto;min-width:180px}.field{flex-direction:column;gap:4px;margin-bottom:8px;display:flex}.field-label{color:var(--jk-subtle);font-size:14px;font-weight:600}.field-label-subtle{color:var(--jk-subtle)}.req,.error{color:var(--jk-red)}.error,.hint{font-size:14px}.hint{color:var(--jk-text-muted)}.list-footnote{margin:var(--jk-section-gap) 0}.form-grid{gap:4px 16px;display:grid}input,select,textarea{border:1px solid var(--jk-border);border-radius:var(--jk-radius);background:var(--jk-surface-solid);width:100%;min-height:44px;padding:8px 12px}textarea{resize:vertical;min-height:96px}textarea.job-description{resize:none;overflow:hidden}textarea.quote-description{resize:none;min-height:320px;padding-top:10px;overflow-y:hidden}.contact-add{margin-top:12px}.form-actions{z-index:5;background:var(--jk-bg);border-top:1px solid var(--jk-border);align-items:center;gap:12px;margin:16px -16px 0;padding:12px 16px;display:flex;position:sticky;bottom:0}.time-entry-form .form-actions>:is(.btn-primary,.btn-neutral,.btn-danger){box-sizing:border-box;flex:0 0 7.5rem;min-width:7.5rem;font-size:14px}.note{background:var(--jk-raised);border:1px solid var(--jk-border);border-radius:var(--jk-radius);padding:10px 12px;font-size:14px}.empty{color:var(--jk-text-muted)}.total{font-size:14px}.invoice-totals{text-align:right;width:fit-content;max-width:100%;color:var(--jk-text);margin-left:auto}.invoice-totals p{text-align:right}.quote-summary{width:min(100%,18rem);margin-left:auto}.quote-summary dl{margin:0}.quote-summary dl>div{justify-content:space-between;align-items:baseline;gap:16px;padding:4px 0;display:flex}.quote-summary dt{color:var(--jk-text-muted)}.quote-summary dd{font-variant-numeric:tabular-nums;text-align:right;margin:0;font-weight:600}.quote-summary .is-total{border-top:1px solid var(--jk-border);margin-top:4px;padding-top:8px;font-size:14px}.quote-summary .is-total dt{color:var(--jk-text);font-weight:600}.quote-status-edit{grid-template-columns:minmax(0,1fr) 8rem;align-items:end;gap:12px;display:grid}.quote-status-edit input[type=color]{background:var(--jk-raised);border:1px solid var(--jk-border-strong);border-radius:var(--jk-radius);width:100%;height:44px;padding:4px}.quote-body{flex-direction:column;gap:16px;display:flex}.quote-body>.quote-lines{order:1}.quote-lines,.quote-lines-col{gap:var(--jk-section-gap);flex-direction:column;display:flex}.quote-lines-split{gap:var(--jk-section-gap);grid-template-columns:minmax(0,1fr);display:grid}.quote-lines .panel{margin-bottom:0}.page-title-group{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.quote-body>#explanations{order:2}.quote-body>#totals{order:3}.quote-body>form:not(#quote-form){order:4}.labour-total{margin-top:20px}.data-table tr.total-row td{color:var(--jk-text);font-weight:600}a.drill-link{font-weight:600}.columns{margin:0;padding-left:20px}.placeholder{color:var(--jk-text-muted)}.nav-drop{position:relative}.nav-drop>summary{min-height:44px;color:var(--jk-nav-text);align-items:center;gap:4px;padding:8px 12px;display:inline-flex}.nav-drop>summary.is-active,.nav-drop[open]>summary{box-shadow:inset 0 -2px 0 var(--jk-primary)}.desktop-nav .nav-drop .menu{position:absolute;top:calc(100% + 4px);left:0}.drawer .nav-drop{flex-direction:column;display:flex}.drawer .menu{min-width:0;box-shadow:none;color:var(--jk-nav-text);background:0 0;border:0;position:static;transform:none}.drawer .menu a{color:var(--jk-nav-text);padding-left:24px}.nav-logout{color:var(--jk-nav-text);background:0 0;border:0;min-height:44px;padding:8px 12px}.tiles{gap:8px;margin:0 0 12px;padding-bottom:4px;display:flex;overflow-x:auto}.page-header+h2,.tiles+h2{margin-bottom:var(--jk-section-gap)}.tile{min-width:96px;min-height:52px;color:inherit;border:1px solid var(--jk-border);border-radius:var(--jk-radius);background:var(--jk-surface);background-color:var(--jk-panel);flex:none;padding:6px 10px;text-decoration:none}.tile strong{font-size:14px;display:block}.tile span{color:var(--jk-text-muted);font-size:14px}.tile.is-current{box-shadow:inset 0 -3px 0 var(--jk-primary)}.tile.is-solid strong,.tile.is-solid span,.tile.is-solid em{color:inherit}.check-row{cursor:pointer;align-items:center;gap:8px;min-height:44px;display:flex}.flag-row{cursor:pointer;grid-template-columns:14px minmax(0,1fr);align-items:start;column-gap:8px;margin:4px 0;display:grid}.flag-row input[type=checkbox]{width:14px;height:14px;min-height:14px;margin:4px 0 0}.flag-row>span{padding-top:0;line-height:22px}.check-row.is-wrap{align-items:flex-start;height:auto}.check-row.is-wrap span{padding-top:10px}input[type=checkbox],input[type=radio]{appearance:none;box-sizing:border-box;border:1px solid var(--jk-border-strong);width:14px;min-width:14px;max-width:14px;height:14px;min-height:14px;box-shadow:none;cursor:pointer;vertical-align:middle;accent-color:#0000;background-color:#0000;background-image:none;background-position:50%;background-repeat:no-repeat;background-size:12px 12px;border-radius:2px;flex:0 0 14px;margin:0;padding:0}input[type=checkbox]:checked,input[type=radio]:checked{border-color:var(--jk-text);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M3 7.2 L5.7 9.8 L11 4.2' fill='none' stroke='%23e30613' stroke-width='1.6' stroke-linecap='square' stroke-linejoin='miter'/%3E%3C/svg%3E")}input[type=checkbox]:disabled,input[type=radio]:disabled{opacity:.45;cursor:default}input[type=checkbox].tick-readonly:disabled{opacity:1;cursor:default}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid var(--jk-primary);outline-offset:2px}.section-anchor{scroll-margin-top:12px}.section-anchor+.section-anchor{margin-top:var(--jk-section-gap)}.auth-wrap{width:min(440px,100% - 24px);margin:48px auto}.auth-mark{margin-bottom:12px;font-size:14px;font-weight:700}.invite-once{border:1px solid var(--jk-border);background:var(--jk-panel);border-radius:var(--jk-radius);word-break:break-all;padding:12px}.week-table{box-sizing:border-box;table-layout:fixed;border-collapse:collapse;width:100%;min-width:0;max-width:100%;font-size:14px}.week-table th,.week-table td{border:1px solid var(--jk-border);text-align:left;white-space:normal;overflow-wrap:anywhere;vertical-align:top;padding:4.59px 8px;overflow:hidden}.week-table thead th{vertical-align:bottom;letter-spacing:normal;text-transform:none;font-size:14px;font-weight:600}.week-table th.col-job,.week-table td.col-job{text-align:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.week-job{white-space:nowrap;text-overflow:ellipsis;min-width:0;max-width:100%;display:block;overflow:hidden}.week-job a,.week-job .meta{white-space:nowrap;display:inline}.week-table.col-sized{table-layout:fixed;width:100%;min-width:0;max-width:100%}.week-table tbody td{vertical-align:middle;height:39.78px;padding-top:1.8px;padding-bottom:1.8px;overflow:hidden}.week-table tbody td .hours-input{height:33.78px;min-height:0;padding-top:0;padding-bottom:0}.week-table tfoot td{background:var(--jk-raised);font-weight:700}.day-view{display:none}.day-strip{gap:4px;margin-bottom:12px;display:flex;overflow-x:auto}.day-strip a{border-bottom:2px solid #0000;flex:none;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:8px;text-decoration:none;display:inline-flex}.day-strip a[aria-current=page]{border-bottom-color:var(--jk-primary);font-weight:600}.entry-card{border:1px solid var(--jk-border);border-radius:var(--jk-radius);background:var(--jk-surface);background-color:var(--jk-panel);margin-bottom:8px;padding:12px}.entry-card strong{display:block}.week-nav{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.week-nav a{justify-content:center;align-items:center;min-width:44px;min-height:44px;font-weight:700;text-decoration:none;display:inline-flex}@media (min-width:480px) and (not ((pointer:coarse) and (max-height:500px))){.stats,.facts{grid-template-columns:1fr 1fr}.facts.quote-facts{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.day-view{display:none}.form-grid{grid-template-columns:1fr 1fr}.form-grid.quote-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.span-2{grid-column:1/-1}.data-table .status-form select{flex:0 auto;min-width:9.5rem;height:32px;min-height:32px;padding:2px 8px;font-size:14px}.data-table .status-form .btn-primary{min-width:7.5rem;height:44px;min-height:44px;padding:0 16px;font-size:14px}.jobs-filters .search-field{flex:0 240px;max-width:260px}}@media (min-width:1024px) and (not ((pointer:coarse) and (max-height:500px))){.stats{grid-template-columns:1fr 1fr 1fr}.facts{grid-template-columns:repeat(4,1fr)}.facts.quote-facts{grid-template-columns:minmax(0,3fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}.shell{padding-bottom:0;padding-left:224px}.sidebar{z-index:40;background:var(--jk-sidebar);border-right:1px solid var(--jk-border);width:224px;color:var(--jk-text-muted);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.nav-toggle{display:none}.form-actions,.sticky-footer{bottom:0}.wrap{padding:24px}}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.week-only{display:none}.day-view{display:block}.data-table,.data-table thead,.data-table tbody{width:100%;display:block}.data-table thead tr{box-shadow:none;background:0 0;border:0;flex-wrap:wrap;gap:8px;margin:0 0 8px;padding:0;display:flex;overflow-x:clip}.data-table th{white-space:nowrap;letter-spacing:0;text-transform:none;background:0 0;border:0;padding:0;display:block}.data-table th a{text-transform:none;letter-spacing:0;min-height:44px;font-size:14px}.job-cell{align-items:flex-end;max-width:none}.job-name{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end}.job-name-text{white-space:nowrap;text-overflow:ellipsis;word-break:normal;display:block;overflow:hidden}.jobs-table .data-table{width:100%!important;min-width:0!important;max-width:100%!important}.jobs-table .job-cell{flex:auto;min-width:0;max-width:100%}.table-wrap{background:0 0;border:0;border-radius:0;overflow:visible}.data-table tbody tr,.data-table td{width:100%;display:block}.data-table tbody tr{border:1px solid var(--jk-border);border-radius:var(--jk-radius);background:var(--jk-surface);background-color:var(--jk-panel);box-shadow:var(--jk-glass-shadow);margin:0 0 12px;padding:6.12px 12px}.data-table td{border:0;justify-content:space-between;align-items:center;gap:12px;height:auto;min-height:39.78px;padding:6.12px 0;display:flex}.data-table td:before{content:attr(data-label);color:var(--jk-text-muted);text-align:left;flex:0 0 42%;font-weight:600}.cost-date .drag-handle{margin-left:0}}:-webkit-any(input:-webkit-autofill,textarea:-webkit-autofill,select:-webkit-autofill){-webkit-text-fill-color:var(--jk-text);caret-color:var(--jk-text)}:is(input:autofill,textarea:autofill,select:autofill){-webkit-text-fill-color:var(--jk-text);caret-color:var(--jk-text)}.menu a,.drawer a{gap:8px}.drawer .menu a:hover,.drawer .nav-logout:hover{color:var(--jk-nav-text);background:#b8bec829}.menu form{margin:0}.menu .nav-logout{width:100%;color:var(--jk-text);text-align:left;background:0 0;justify-content:flex-start;padding:8px 12px}.menu .nav-logout:hover{background:var(--jk-hover)}.nav-soon{min-height:44px;color:var(--jk-text-muted);align-items:center;gap:8px;padding:8px 12px;display:flex}.drawer .nav-soon{color:var(--jk-nav-muted)}.soon-tag{letter-spacing:.04em;text-transform:uppercase;font-size:14px}.account-menu{flex-shrink:0;position:relative}.account-menu>summary{padding:0}.account-trigger{min-height:36px;color:var(--jk-text);border-radius:999px;align-items:center;gap:8px;padding:0 0 0 8px;display:inline-flex}.account-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:14px;font-weight:600;overflow:hidden}.avatar{border:1px solid var(--jk-border-strong);background:var(--jk-raised);width:32px;min-width:32px;height:32px;min-height:32px;color:var(--jk-text);border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:14px;font-weight:700;display:inline-flex}.account-trigger.is-active .avatar,.account-menu[open]>.account-trigger .avatar{box-shadow:inset 0 0 0 2px var(--jk-primary)}.account-menu .menu{z-index:60;min-width:240px;position:absolute;top:calc(100% + 4px);right:0}.account-menu .nav-drop>summary{color:var(--jk-text);width:100%}.account-menu .nav-drop .menu{box-shadow:none;background:0 0;border:0;min-width:0;position:static}.account-menu .nav-drop .menu a{padding-left:24px}.menu-identity{border-bottom:1px solid var(--jk-border);padding:10px 12px 8px}.menu-identity strong,.menu-identity span{display:block}.menu-identity span{color:var(--jk-text-muted);word-break:break-all;font-size:14px}.menu-label{color:var(--jk-text-muted);margin:4px 0 0;padding:8px 12px 0;font-size:14px;font-weight:700}.quick-add,.account-menu{flex-shrink:0}.auth-logo{justify-content:center;margin:0 0 16px;display:flex}.profile-avatar{border:1px solid var(--jk-border);background:var(--jk-surface-solid);width:72px;height:72px;color:var(--jk-text);border-radius:999px;justify-content:center;align-items:center;margin:0 0 12px;font-size:14px;font-weight:700;display:inline-flex}.profile-form .form-section+.form-section{border-top:1px solid var(--jk-border);margin-top:12px;padding-top:12px}.subhead{font-family:var(--jk-display);margin:8px 0 0;font-size:16px;font-weight:600}.button-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.button-row-end{justify-content:flex-end;margin-bottom:12px}.pager{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.pager a,.pager-disabled{justify-content:center;align-items:center;min-width:72px;min-height:44px;padding:8px 12px;font-weight:600;text-decoration:none;display:inline-flex}.pager-disabled{color:var(--jk-text-muted)}.day-start{color:var(--jk-text-muted);font-size:14px;font-weight:400}.week-scroll{max-width:100%;overflow-x:clip}.week-scroll .week-table{width:100%;min-width:0;max-width:100%}.week-scroll .week-table th,.week-scroll .week-table td{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.week-table input.hours-input{box-sizing:border-box;text-align:left;font-variant-numeric:tabular-nums;width:100%;min-width:0;min-height:33.66px;padding:4.59px 0}.week-scroll-hint{display:block}.po-line{border-bottom:1px solid var(--jk-border);margin-bottom:12px;padding-bottom:8px}.po-job-costs{flex-direction:column;min-width:0;display:flex}.po-job-cost{border-bottom:1px solid var(--jk-border);padding-bottom:8px}.po-job-cost input[type=checkbox]{flex:none;margin-top:15px}.check-row.is-wrap.po-job-cost>span{flex-direction:column;gap:2px;min-width:0;display:flex}.check-row.is-wrap.po-job-cost>span span{overflow-wrap:anywhere;padding-top:0}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.week-scroll-hint{display:none}}@media (max-width:639px),(pointer:coarse) and (max-height:500px){.topbar-title,.account-name{display:none}}.toolbar.schedule-filters{justify-content:flex-start}.toolbar.schedule-filters .field{flex:0 0 220px;width:220px;max-width:220px;margin:0}.toolbar.schedule-filters input[type=search],.toolbar.schedule-filters select{box-sizing:border-box;width:100%;max-width:none;height:34px;min-height:34px}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.toolbar.schedule-filters .field{flex:100%;width:100%;max-width:none}}.jobs-filters{justify-content:flex-start;align-items:center}.jobs-filters .search-field{flex:180px;width:auto;max-width:260px;margin-left:0}.jobs-filters .status-field{flex:0 auto;width:auto;margin:0}.jobs-filters select{width:auto;min-width:10rem;height:36px;min-height:36px;padding:4px 10px;font-size:14px}.tile em{color:var(--jk-text);font-size:14px;font-style:normal;display:block}.btn-danger{color:var(--jk-primary);border:1px solid var(--jk-primary);border-radius:var(--jk-radius);box-sizing:border-box;background:0 0;justify-content:center;align-items:center;min-width:7.5rem;min-height:44px;padding:0 16px;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn-danger:hover{background:var(--jk-hover)}.record-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.record-actions-split{justify-content:space-between;width:100%}.record-actions form{margin:0;display:flex}.record-actions.invoice-record-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.record-actions.invoice-record-actions>.error{flex-basis:100%}.record-actions.invoice-record-actions form,.record-actions.invoice-record-actions :is(button,a){flex:none;width:auto;min-width:7.5rem}.client-name{align-items:center;gap:4px;min-width:0;max-width:100%;display:flex}.client-name>a{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.client-name>:not(a){flex:none}.star-form{flex:none;margin:0;display:inline-flex}.star{width:28px;min-width:28px;height:28px;min-height:28px;color:var(--jk-subtle);background:0 0;border:0;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;display:inline-flex}.star.is-on{color:var(--jk-warning)}button.star:hover{color:var(--jk-primary)}.action-menu{position:relative}.action-menu>summary{cursor:pointer;background:var(--jk-raised);color:var(--jk-text);border:1px solid var(--jk-border);border-radius:var(--jk-radius);align-items:center;min-height:44px;padding:0 16px;font-weight:600;list-style:none;display:inline-flex}.action-menu>summary::-webkit-details-marker{display:none}.action-menu .menu{z-index:20;position:absolute;top:calc(100% + 4px);right:0}.menu button.menu-item{width:100%;min-height:44px;color:var(--jk-text);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;padding:8px 12px}.menu button.menu-item:hover{background:var(--jk-hover)}.modal{border:1px solid var(--jk-border);border-radius:var(--jk-radius);background:var(--jk-panel);color:var(--jk-text);width:calc(100vw - 32px);max-width:440px;padding:20px}.modal::backdrop{background:#0000008c}.modal h2{font-family:var(--jk-display);margin:0 0 8px;font-size:16px;font-weight:600}.modal-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.sticky-footer{z-index:6;background:var(--jk-bg);border-top:1px solid var(--jk-border);flex-wrap:wrap;align-items:center;gap:8px;margin:24px -16px 0;padding:12px 16px;display:flex;position:sticky;bottom:0}.quote-end-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.chips{flex-wrap:wrap;gap:8px;margin:8px 0 0;display:flex}.chip{border:1px solid var(--jk-border);background:var(--jk-raised);border-radius:999px;align-items:center;min-height:32px;padding:4px 10px;font-size:14px;display:inline-flex}.email-preview{white-space:pre-wrap;background:var(--jk-raised);border:1px solid var(--jk-border);border-radius:var(--jk-radius);margin:0 0 12px;padding:12px;font-family:inherit}.radio-stack{flex-direction:column;gap:4px;display:flex}.radio-stack label{align-items:center;gap:8px;min-height:44px;display:flex}.radio-stack input{width:14px;min-height:14px}.note-card h3{margin:0 0 4px;font-size:14px;font-weight:600}.note-card+.note-card{border-top:1px solid var(--jk-border);margin-top:12px;padding-top:12px}.labour-rate-note{color:var(--jk-text-muted);white-space:normal;overflow-wrap:anywhere;margin-top:4px;font-size:14px}.labour-add{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.labour-add-note{flex:1 0 100%;margin:0}.labour-add select,.labour-add input{flex:180px;width:auto;min-width:0}.labour-add .btn-primary{width:auto}.labour-add .check-row{flex:none}.labour-add .check-row input{flex:0 0 14px}.todo-list{background:var(--jk-surface);border:1px solid var(--jk-border);border-radius:var(--jk-radius-md);flex-direction:column;display:flex;overflow:hidden}.todo-list:empty{display:none}.todo-list>form,.todo-list>.todo-check{border-bottom:1px solid var(--jk-border);margin:0}.todo-list>:last-child{border-bottom:0}.todo-list .todo-check{min-height:39.78px;padding:0 12px}.todo-check{cursor:pointer;align-items:center;gap:10px;min-height:36px;display:flex;position:relative}.todo-check.todo-locked{cursor:default}.todo-check input{opacity:1;position:static}.todo-name{min-width:0}.todo-list>form{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.todo-list>form>.todo-check{min-width:0}.todo-x{width:32px;color:var(--jk-primary);cursor:pointer;background:0 0;border:0;flex:none;align-self:stretch;margin-right:8px;padding:0;font-size:14px;font-weight:600;line-height:1}.todo-x:hover{background:var(--jk-red-soft)}.todo-row-error{grid-column:1/-1;margin:0;padding:0 12px 8px}.note-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0}textarea.note-composer{min-height:280px}.note-read{white-space:pre-wrap;overflow-wrap:anywhere}input.input-locked{background:var(--jk-raised);color:var(--jk-text)}@media print{.topbar,.sticky-footer,.quote-end-actions,.no-print,.sidebar,.nav-toggle{display:none!important}.shell{padding:0!important}}.data-table th,.nowrap{white-space:nowrap}.cell-clip{white-space:nowrap;text-overflow:ellipsis;width:100%;min-width:0;max-width:100%;display:block;overflow:hidden}.cell-clip .labour-rate-note,.cell-clip .meta,.cell-clip .note-read,.cell-clip .note-body{white-space:nowrap;overflow-wrap:normal;margin:0;display:inline}.cell-clip .labour-rate-note:before,.cell-clip .meta:before{content:" · "}.data-table tbody td:has(.job-cell) .cell-clip{white-space:normal;text-overflow:clip}.status-select{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}select.status-select-input{appearance:none;text-align:left;text-align-last:left;cursor:pointer;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 10px) 55%,calc(100% - 6px) 55%;background-repeat:no-repeat;background-size:4px 4px,4px 4px;border:0;border-radius:999px;width:112px;min-width:112px;max-width:112px;height:20px;min-height:0;padding:2px 16px 2px 13.4335px;font-size:11px;font-weight:600;line-height:1.45}select.status-select-input:disabled{opacity:.6;cursor:progress}select.status-select-input option{background:var(--jk-surface);color:var(--jk-text)}.status-select-feedback{font-size:14px}.status-saving{color:var(--jk-text-muted)}.status-saved{color:var(--jk-success);font-weight:600}.status-error{color:var(--jk-primary)}.status-row{align-items:center;gap:10px;margin-top:12px;display:flex}.status-row .meta{margin:0}.time-pct{white-space:nowrap;font-variant-numeric:tabular-nums;justify-content:flex-start;align-items:center;gap:8px;display:inline-flex}.time-pct-bar{background:var(--jk-border-strong);border-radius:999px;width:48px;height:4px;display:inline-block;overflow:hidden}.time-pct-bar>span{border-radius:inherit;background:var(--jk-success);height:100%;display:block}.time-pct.is-warn .time-pct-bar>span{background:var(--jk-warning)}.time-pct-value{text-align:left;min-width:4.5ch}.time-pct.is-over .time-pct-bar>span{background:var(--jk-primary)}.time-pct.is-over .time-pct-value{color:var(--jk-primary);font-weight:600}.history-list{margin:0;padding:0;list-style:none}.history-line{border-bottom:1px solid var(--jk-border);white-space:nowrap;grid-template-columns:7.75rem 6.25rem 7rem minmax(0,1fr);align-items:center;gap:0 12px;min-height:36px;padding:0;display:grid}.history-line time,.history-time,.history-who,.history-event{text-overflow:ellipsis;overflow:hidden}.history-summary{margin:2px 0 0}.history-related{color:var(--jk-text-muted)}.history-detail{margin-top:4px}.history-detail summary{cursor:pointer;color:var(--jk-text-muted);align-items:center;min-height:32px;font-size:14px;display:inline-flex}.history-detail-wrap{overflow-x:auto}.history-diff{border-collapse:collapse;width:100%;margin-top:4px;font-size:14px}.history-diff th,.history-diff td{text-align:left;vertical-align:top;border-bottom:1px solid var(--jk-border);padding:4px 12px 4px 0;font-weight:400}.history-diff thead th{color:var(--jk-text-muted);vertical-align:bottom;font-weight:600}.top-search .search-kbd{color:var(--jk-subtle);border:1px solid var(--jk-border);pointer-events:none;border-radius:4px;padding:3px 5px;font-family:inherit;font-size:14px;font-weight:500;line-height:1;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.top-search input{padding-right:52px}.top-search input:focus+.search-kbd,.top-search input:not(:placeholder-shown)+.search-kbd{display:none}.search-pop{background:var(--jk-surface-solid);width:min(460px,100vw - 24px);max-height:min(70vh,560px);color:var(--jk-text);border:1px solid var(--jk-border);border-radius:var(--jk-radius);box-shadow:var(--jk-glass-shadow);z-index:60;padding:4px 0;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto}.search-group+.search-group{border-top:1px solid var(--jk-border)}.search-group-head{text-transform:uppercase;letter-spacing:.04em;color:var(--jk-subtle);justify-content:space-between;align-items:center;padding:8px 12px 4px;font-size:14px;font-weight:600;display:flex}.search-group-head a{text-transform:none;letter-spacing:0;color:var(--jk-primary);font-weight:500;text-decoration:none}.search-hit{color:var(--jk-text);cursor:pointer;align-items:center;gap:10px;padding:6px 12px;text-decoration:none;display:flex}.search-hit.is-active{background:color-mix(in srgb, var(--jk-primary) 12%, transparent)}.search-hit-main{flex-direction:column;flex:1;min-width:0;display:flex}.search-hit-title,.search-hit-meta{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.search-hit-title{font-size:14px;font-weight:500}.search-hit-meta{color:var(--jk-subtle);font-size:14px}.search-hit-badge{color:var(--jk-subtle);border:1px solid var(--jk-border);border-radius:999px;flex-shrink:0;padding:1px 7px;font-size:14px}.search-empty{color:var(--jk-subtle);margin:0;padding:12px;font-size:14px}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.top-search .search-kbd{display:none}.search-pop{width:auto;position:fixed;top:56px;left:12px;right:12px}}.crumb-pill{background:color-mix(in srgb, var(--jk-text) 10%, transparent);color:var(--jk-text);border-radius:999px;align-items:center;padding:1px 8px;font-weight:600;display:inline-flex}.preview-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.preview-title h1{margin:0}.preview-layout{flex-direction:column;gap:16px;display:flex}.pdf-card{background:var(--jk-surface);border:1px solid var(--jk-border);border-radius:var(--jk-radius);overflow:hidden}.pdf-toolbar{border-bottom:1px solid var(--jk-border);background:var(--jk-raised);flex-wrap:wrap;align-items:center;gap:6px;padding:8px;display:flex}.pdf-tool{border:1px solid var(--jk-border);border-radius:var(--jk-radius);background:var(--jk-surface);min-width:36px;min-height:36px;color:var(--jk-text);font:inherit;justify-content:center;align-items:center;padding:0 8px;font-weight:600;text-decoration:none;display:inline-flex}.pdf-tool:disabled{opacity:.45}.pdf-tool.is-on{box-shadow:inset 0 0 0 1px var(--jk-text)}.page-label{text-align:center;min-width:5.5rem;font-size:14px}.pdf-frame{background:#3a3a3a;border:0;width:100%;height:72vh;min-height:420px;display:block}.preview-side hr{border:0;border-top:1px solid var(--jk-border);margin:12px 0}.print-groups{max-height:min(62vh,720px);margin-bottom:12px;overflow:auto}.print-group{border-bottom:1px solid var(--jk-border)}.print-group>summary{align-items:center;gap:8px;min-height:36px;font-weight:600;display:flex}.print-group>summary:before{content:"▸";width:1em;color:var(--jk-text-muted)}.print-group[open]>summary:before{content:"▾"}.print-group-body{flex-direction:column;gap:2px;padding:0 0 8px 1.5em;display:flex}.print-opt{border-radius:6px;align-items:center;gap:8px;min-height:32px;padding:2px 8px;font-size:14px;display:flex}.print-opt.is-on{background:color-mix(in srgb, var(--jk-success) 18%, transparent)}.print-generate{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.print-save{color:var(--jk-text-muted);align-items:center;gap:6px;font-size:14px;display:inline-flex}.btn-success{background:var(--jk-success);color:#05281c;border-radius:var(--jk-radius);cursor:pointer;border:0;min-height:44px;padding:0 16px;font-weight:700}.btn-success:disabled{opacity:.65}.email-send{margin-top:12px}.email-trail{margin:0;padding:0;list-style:none}.email-trail>li{border-bottom:1px solid var(--jk-border);padding:8px 0}.email-trail-row{flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:14px;display:flex}.email-subject{font-weight:600}@media (min-width:1024px) and (not ((pointer:coarse) and (max-height:500px))){.preview-layout{grid-template-columns:minmax(0,1.45fr) minmax(280px,.9fr);align-items:start;display:grid}}.cost-combo{position:relative}.cost-combo .search-pop{z-index:30;width:min(420px,100%);position:absolute;top:calc(100% + 4px);left:0;right:auto}button.search-hit{text-align:left;width:100%;font:inherit;background:0 0;border:0;min-height:44px}.line-edits{flex-direction:column;gap:8px;margin-top:8px;display:flex}.line-edit>summary{min-height:32px;color:var(--jk-primary);align-items:center;font-size:14px;display:inline-flex}.job-page{min-width:0;max-width:100%}.job-head{margin-bottom:var(--jk-section-gap);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 16px;display:flex}.job-head-copy{flex:220px;min-width:0}.job-head h1{overflow-wrap:anywhere;margin-top:0}.job-flags{flex-wrap:wrap;gap:6px;margin:8px 0 0;display:flex}.job-flags .sample-flag{margin-left:0}.job-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;max-width:100%;margin-left:auto;display:flex}.action-menu>summary.btn-primary{background:var(--jk-raised);color:var(--jk-primary);border:1px solid var(--jk-border);white-space:nowrap;box-sizing:border-box;justify-content:center;min-width:7.5rem;min-height:44px;padding:0 16px;font-size:14px;font-weight:600}.action-menu>summary.btn-primary:hover{background:var(--jk-red-soft);color:var(--jk-primary)}.job-head-actions .menu{max-width:calc(100vw - 32px);left:auto;right:0}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.job-head-actions{width:100%}.job-head-actions>.status-select{flex:1 0 100%}.job-head-actions>.btn-primary,.job-head-actions>.action-menu{flex:2rem;min-width:max-content}.job-head-actions>.btn-primary{padding:0 8px}.job-head-actions>.action-menu>summary.btn-primary{width:100%;min-width:0;padding:0 8px;display:flex}}.job-overview-actions{display:none}@media (max-width:759px),(pointer:coarse) and (max-height:500px){#costs.job-panel:not([hidden])>.panel,#time.job-panel:not([hidden])>.panel{flex-direction:column;gap:16px;display:flex}#costs.job-panel:not([hidden])>.panel>h2,#time.job-panel:not([hidden])>.panel>h2{margin-bottom:calc(var(--jk-heading-gap,8px) - 16px)}#time.job-panel>.panel>.inline-entry{margin-bottom:12px}#costs.job-panel>.panel>.inline-cost,#time.job-panel>.panel>.inline-entry{order:1}.job-overview-buttons{flex-wrap:wrap;gap:8px;display:flex}.job-overview-buttons>.btn-primary,.job-overview-buttons>.action-menu>summary.btn-primary{min-width:7.5rem;padding:0 16px}.job-overview-buttons .action-menu .menu{max-width:calc(100vw - 32px);inset:auto auto calc(100% + 4px) 0}}.job-lock{margin:0 0 12px}.job-tabs{overscroll-behavior-x:contain;border-bottom:1px solid var(--jk-border);gap:0;max-width:100%;margin:0 0 16px;display:flex;overflow-x:auto}.job-tabs button{min-height:40px;color:var(--jk-text-muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:none;padding:8px 12px;font-size:14px}.job-tabs button[aria-selected=true]{color:var(--jk-text);border-bottom-color:var(--jk-primary);font-weight:600}.job-panel{min-width:0;scroll-margin-top:72px}.job-panel:not([hidden]):not(#documents){gap:var(--jk-section-gap);flex-direction:column;display:flex}.job-panel:not(#documents)>*{min-width:0;margin-top:0;margin-bottom:0}.job-panel>.edit-details:not([open]){display:none}.wrap:has(>.job-page){padding-bottom:var(--jk-section-gap)}#documents.job-panel>:last-child{margin-bottom:0}#documents.job-panel{--jk-heading-gap:8px;position:relative}#documents.job-panel>.file-row{margin-bottom:var(--jk-heading-gap)}#documents.job-panel:has(>.col-reset-row)>.file-row{padding-right:8.75rem}#documents.job-panel>.col-reset-row{z-index:2;justify-content:flex-end;align-items:center;width:max-content;height:44px;margin:0;display:flex;position:absolute;top:0;left:auto;right:0}.financial-section{margin:0 0 var(--jk-section-gap);scroll-margin-top:72px}.financial-section:last-child{margin-bottom:0}.financial-head{margin-bottom:var(--jk-heading-gap);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.job-card .financial-head h2{margin:0}.financial-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.financial-table.table-wrap{overflow-x:clip}.financial-table .data-table{table-layout:fixed;width:100%;min-width:0;max-width:100%}.financial-table .data-table th,.financial-table .data-table td{width:auto}.financial-table .data-table th[data-label=Number],.financial-table .data-table td[data-label=Number],.financial-table .data-table th[data-label=Status],.financial-table .data-table td[data-label=Status],.financial-table .data-table th[data-label=State],.financial-table .data-table td[data-label=State],.financial-table .data-table th[data-label=Date],.financial-table .data-table td[data-label=Date]{white-space:nowrap}.job-split{gap:var(--jk-section-gap);min-width:0;display:grid}.job-split>.panel{margin:0}.job-card{--jk-heading-gap:8px;position:relative}.job-card h2{margin-bottom:var(--jk-heading-gap)}.job-card:has(>.col-reset-row)>h2{padding-right:8.75rem}.job-card:has(>:not(.invoice-block-head)>.col-reset-row)>h2{padding-right:8.75rem}.job-card:has(>.col-reset-row)>.financial-head{padding-right:8.75rem}.job-card>.col-reset-row,.job-card>:not(.invoice-block-head)>.col-reset-row{z-index:2;justify-content:flex-end;align-items:center;width:max-content;height:24px;margin:0;display:flex;position:absolute;top:16px;left:auto;right:16px}.job-card:has(>.financial-head .financial-actions)>.col-reset-row{height:44px}.job-brief{color:var(--jk-text-muted);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.job-mini{grid-template-columns:1fr 1fr;gap:12px;margin:12px 0 0;display:grid}.job-mini dt{color:var(--jk-subtle);font-size:14px}.job-mini dd{overflow-wrap:anywhere;margin:2px 0 0}.job-mini-wide{grid-column:1/-1}.job-brief-card{flex-direction:column;align-self:stretch;display:flex}.job-brief-foot{width:100%;padding-top:var(--jk-section-gap);justify-content:flex-end;align-items:center;gap:12px;min-width:0;margin-top:auto;display:flex}.job-brief-date{min-width:0;color:var(--jk-text);text-align:right;white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.profit-list{margin:8px 0 0;padding:0;list-style:none}.profit-list li{justify-content:space-between;gap:12px;margin:0 0 8px;font-size:14px;display:flex}.profit-list span{color:var(--jk-text-muted)}.profit-list strong{font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.profit-div{border-top:1px solid var(--jk-border);padding-top:8px}.profit-neg{color:var(--jk-primary)}.edit-details{margin-top:4px;scroll-margin-top:72px}.cis-form .form-section+.form-section{border-top:1px solid var(--jk-border);margin-top:12px;padding-top:12px}.cis-row{border-top:1px solid var(--jk-border);grid-template-columns:1fr;gap:4px 12px;margin-top:12px;padding-top:12px;display:grid}.cis-row .cis-auth{grid-column:1/-1}.secret-field{align-items:center;gap:8px;display:flex}.secret-field input{flex:auto;min-width:0}.secret-field .btn-neutral,.cis-remove{flex:none}.cis-row>.field{margin-bottom:0}.cis-add{margin-top:8px}.monitor-sent{justify-items:start;gap:8px;display:grid}.monitor-confirm{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.cis-secrets{gap:4px 16px;max-width:36rem;display:grid}.cis-secrets .secret-field{grid-template-columns:minmax(0,1fr) 7.5rem;align-items:center;gap:8px;display:grid}.cis-secrets .secret-field .btn-neutral{width:7.5rem;min-width:7.5rem}.cis-pair{grid-template-columns:1fr;gap:4px 16px;display:grid}.cis-device-head{display:none}.cis-panel-row{grid-template-columns:1fr;gap:4px 12px;display:grid}.cis-panel-row>.field{min-width:0;margin-bottom:0}.file-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex;position:relative}.file-row .file-name{text-overflow:ellipsis;white-space:nowrap;min-width:8rem;overflow:hidden}.file-row .error,.file-row .hint{flex:1 0 100%;margin:0}.file-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cis-hours{gap:8px 12px;display:grid}.cis-hours>.hint{grid-column:1/-1;margin:0}.cis-day{grid-template-columns:1fr 1fr;gap:4px 12px;display:grid}.cis-day-name{grid-column:1/-1;align-self:end;font-weight:600}.cis-form option:disabled{color:var(--jk-text-muted)}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.cis-row.cis-contacts{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.4fr) auto;align-items:end}.cis-row.cis-users{grid-template-columns:7rem minmax(0,1fr) minmax(0,1fr) auto;align-items:end}.cis-row.cis-zones{grid-template-columns:7rem minmax(0,1.4fr) minmax(0,1fr) auto;align-items:end}.cis-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end}.cis-secrets{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;max-width:none}.cis-device-head,.cis-row.cis-devices{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);align-items:end;gap:4px 12px;display:grid}.cis-panel-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}.cis-device-head{color:var(--jk-subtle);margin-top:8px;font-size:14px;font-weight:600}.cis-row.cis-devices{border-top:0;align-items:center;margin-top:8px;padding-top:0}.cis-hours{grid-template-columns:8rem minmax(0,1fr) minmax(0,1fr);align-items:end}.cis-day{display:contents}.cis-day-name{grid-column:auto;align-self:center}}.section-rule{border-bottom:1px solid var(--jk-border);margin:0 0 12px;padding-bottom:8px}.confirm-dialog{background:0 0;border:0;justify-content:center;align-items:center;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:16px;display:flex;position:fixed;inset:0}.confirm-dialog::backdrop{background:#00000073}.confirm-card{background:var(--jk-surface-solid);width:min(28rem,100%);color:var(--jk-text);border:1px solid var(--jk-border);border-radius:var(--jk-radius);box-shadow:var(--jk-glass-shadow);padding:20px}.confirm-card p{margin:0}.confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px;display:flex}select.quick-add-native{display:none}@media (max-width:759px),(pointer:coarse) and (max-height:500px){details.quick-add-wide{display:none}select.quick-add-native{appearance:none;cursor:pointer;text-align:center;text-align-last:center;display:block}.topbar select.quick-add-native.btn-primary{background:var(--jk-raised);width:7.5rem;min-width:7.5rem;height:36px;min-height:36px;color:var(--jk-primary);flex-shrink:0;padding:0 8px;font-size:14px;font-weight:600}select.quick-add-native option{color:var(--jk-text);background:var(--jk-surface-solid);font-size:14px;font-weight:400}}.tab-block{margin-top:var(--jk-section-gap);scroll-margin-top:72px}#financials{scroll-margin-top:72px}.inline-entry{grid-template-columns:1fr;gap:8px;min-width:0;margin-bottom:12px;display:grid}.job-card>.inline-entry{margin-bottom:var(--jk-heading-gap)}.inline-entry>*{min-width:0;max-width:100%}.inline-entry-note{min-height:140px}.inline-entry-more{--date-action-w:var(--date-w);flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}:root{--date-w:132px}.date-field{width:var(--date-w);min-width:var(--date-w);max-width:var(--date-w);pointer-events:auto;flex:none;height:44px;display:block;position:relative}.field:has(>.date-field){pointer-events:none}input[type=date].date-open{cursor:pointer;accent-color:#0000}input[type=date].date-open::-webkit-datetime-edit-month-field{color:inherit;background-color:#0000;outline:none}input[type=date].date-open::-webkit-datetime-edit-day-field{color:inherit;background-color:#0000;outline:none}input[type=date].date-open::-webkit-datetime-edit-year-field{color:inherit;background-color:#0000;outline:none}input[type=date].date-open::-webkit-datetime-edit-month-field:focus{color:inherit;background-color:#0000;outline:none}input[type=date].date-open::-webkit-datetime-edit-day-field:focus{color:inherit;background-color:#0000;outline:none}input[type=date].date-open::-webkit-datetime-edit-year-field:focus{color:inherit;background-color:#0000;outline:none}.date-pop{z-index:30;background:var(--jk-panel);border:1px solid var(--jk-border);border-radius:var(--jk-radius);width:252px;padding:8px;position:absolute;top:calc(100% + 4px);bottom:auto;left:0}.date-pop.is-above{top:auto;bottom:calc(100% + 4px)}.date-pop-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;font-size:14px;display:flex}.date-pop-nav,.date-pop-day{box-shadow:none;color:var(--jk-text);background:0 0;border:0;min-width:0;min-height:0;padding:0}.date-pop-nav{color:var(--jk-text-muted);padding:4px 6px;font-size:14px}.date-pop-nav:hover,.date-pop-day:hover:not(:disabled){color:var(--jk-primary);background:0 0}.date-pop-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.date-pop-dow{text-align:center;color:var(--jk-text-muted);font-size:14px;line-height:24px}.date-pop-day{border-radius:2px;height:28px;font-size:14px}.date-pop-day.is-out{color:var(--jk-subtle)}.date-pop-day.is-today,.date-pop-day.is-today:hover:not(:disabled),.date-pop-day.is-today:disabled{color:#e30613;opacity:1;font-weight:700}.date-pop-day:disabled{color:var(--jk-subtle);opacity:.4;cursor:default}.date-pop-day[aria-pressed=true],.date-pop-day[aria-pressed=true]:hover{box-shadow:none;background:0 0}textarea.invoice-description{resize:both;min-height:96px}.invoice-form .form-actions{margin-left:0;margin-right:0}.invoice-form+.quote-summary{margin-top:16px}.invoice-lines{background:var(--jk-surface);border:1px solid var(--jk-border);border-radius:var(--jk-radius-md);max-width:100%;overflow:clip hidden}.invoice-lines.is-px{overflow-x:auto}.invoice-lines.is-px .invoice-line-head,.invoice-lines.is-px .invoice-line-row{width:max(100%, max-content)}.invoice-lines.is-resizing{-webkit-user-select:none;user-select:none;cursor:col-resize}.invoice-line-head,.invoice-line-row{grid-template-columns:var(--invoice-line-columns,18px minmax(0, 1fr) 3.5rem 6rem 6rem 6rem 6.5rem);align-items:center;column-gap:24px;width:100%;min-width:0;padding-left:12px;padding-right:12px;display:grid}.invoice-line-head.is-labour,.invoice-line-row.is-labour{min-width:0}.invoice-line-head{z-index:1;color:var(--jk-subtle);letter-spacing:normal;text-transform:none;border-bottom:1px solid var(--jk-border);padding-top:7.65px;padding-bottom:7.15px;font-size:14px;font-weight:600;line-height:21px;position:relative}.invoice-col{min-width:0;position:relative}.invoice-col-label{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.invoice-col-resize{z-index:2;cursor:col-resize;touch-action:none;background:0 0;border:0;width:10px;min-width:0;height:100%;min-height:0;margin:0;padding:0;position:absolute;top:0;left:-5px;right:auto}.invoice-col-resize:focus,.invoice-col-resize:focus-visible{box-shadow:none;outline:none}.invoice-block-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.invoice-block-head h2,.invoice-block-head .col-reset-row{margin:0}.invoice-line-row{border-bottom:1px solid var(--jk-border);height:39.78px;min-height:39.78px;max-height:39.78px;padding:6.12px 12px;font-size:14px;line-height:21px;overflow:hidden}.invoice-line-row .drag-handle{margin-top:0}.invoice-line-row:last-child{border-bottom:0}.invoice-line-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:400;overflow:hidden}.invoice-line-name a{font-weight:400}.invoice-line-handle,.invoice-line-num,.invoice-line-tick{min-width:0}.invoice-line-num{text-overflow:ellipsis;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden}.invoice-line-tick{justify-content:flex-start;align-items:center;height:100%;min-height:0;display:flex}.invoice-line-amount{font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto}.drag-handle{cursor:grab;-webkit-user-select:none;user-select:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='18' viewBox='0 0 14 18'%3E%3Ccircle cx='4' cy='3' r='1.2' fill='%23a1a1aa'/%3E%3Ccircle cx='10' cy='3' r='1.2' fill='%23a1a1aa'/%3E%3Ccircle cx='4' cy='9' r='1.2' fill='%23a1a1aa'/%3E%3Ccircle cx='10' cy='9' r='1.2' fill='%23a1a1aa'/%3E%3Ccircle cx='4' cy='15' r='1.2' fill='%23a1a1aa'/%3E%3Ccircle cx='10' cy='15' r='1.2' fill='%23a1a1aa'/%3E%3C/svg%3E") 50%/14px 18px no-repeat;flex:0 0 14px;width:14px;height:18px;margin-top:2px;display:inline-block}.drag-handle:active{cursor:grabbing}.cost-date{align-items:center;gap:12px;min-width:0;display:flex}.cost-date .drag-handle{flex:0 0 14px;margin-left:0}.cost-date>span:last-child{min-width:0}.invoice-quote-list{margin:0 0 12px;padding:0;list-style:none}.invoice-quote-list li+li,.invoice-lines+.invoice-lines{margin-top:8px}.check-row.is-wrap .invoice-line-detail{color:var(--jk-text-muted);padding-top:0;font-size:14px;display:block}.invoice-form .form-actions{flex-wrap:wrap}.invoice-form .form-actions :is(a,button).btn-primary,.invoice-record-actions :is(a,button):is(.btn-primary,.btn-neutral),a.invoice-action{background:var(--jk-raised);color:var(--jk-primary);border:1px solid var(--jk-primary);border-radius:var(--jk-radius);box-sizing:border-box;white-space:nowrap;justify-content:center;align-items:center;min-width:7.5rem;height:44px;min-height:44px;padding:0 16px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.wrap:has(.invoice-record-actions) #email-preview .copy-row button{background:var(--jk-raised);color:var(--jk-primary);border:1px solid var(--jk-primary);border-radius:var(--jk-radius);box-sizing:border-box;white-space:nowrap;justify-content:center;align-items:center;min-width:7.5rem;height:44px;min-height:44px;padding:0 16px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.invoice-form .form-actions :is(a,button).btn-primary:hover,.invoice-record-actions :is(a,button):is(.btn-primary,.btn-neutral):hover,a.invoice-action:hover{background:var(--jk-red-soft);color:var(--jk-primary);border-color:var(--jk-primary)}.wrap:has(.invoice-record-actions) #email-preview .copy-row button:hover{background:var(--jk-red-soft);color:var(--jk-primary);border-color:var(--jk-primary)}.invoice-form .form-actions button.btn-primary:disabled,.invoice-record-actions button.btn-primary:disabled,.invoice-record-actions button.btn-neutral:disabled{color:var(--jk-subtle);background:var(--jk-raised);border-color:var(--jk-border)}.job-create input[type=date].date-open{border-radius:var(--jk-radius);width:100%;height:44px;min-height:44px;padding:8px 12px;font-size:14px;line-height:21px}.job-create input[type=date].date-open::-webkit-datetime-edit{padding:0;font-size:14px;line-height:21px}.job-create input[type=date].date-open::-webkit-datetime-edit-fields-wrapper{padding:0;font-size:14px;line-height:21px}.job-create input[type=date].date-open::-webkit-datetime-edit-text{padding:0;font-size:14px;line-height:21px}.job-create input[type=date].date-open::-webkit-datetime-edit-month-field{padding:0;font-size:14px;line-height:21px}.job-create input[type=date].date-open::-webkit-datetime-edit-day-field{padding:0;font-size:14px;line-height:21px}.job-create input[type=date].date-open::-webkit-datetime-edit-year-field{padding:0;font-size:14px;line-height:21px}input[type=date].date-open::-webkit-datetime-edit{padding:0;font-size:14px;line-height:21px}input[type=date].date-open::-webkit-datetime-edit-fields-wrapper{padding:0;font-size:14px;line-height:21px}input[type=date].date-open::-webkit-datetime-edit-text{padding:0;font-size:14px;line-height:21px}input[type=date].date-open::-webkit-datetime-edit-month-field{padding:0;font-size:14px;line-height:21px}input[type=date].date-open::-webkit-datetime-edit-day-field{padding:0;font-size:14px;line-height:21px}input[type=date].date-open::-webkit-datetime-edit-year-field{padding:0;font-size:14px;line-height:21px}input[type=date].date-open::-webkit-datetime-edit{align-items:center;display:inline-flex}input[type=date].date-open::-webkit-calendar-picker-indicator{cursor:pointer;width:16px;height:16px;margin:0 0 0 4px;padding:0}.date-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:4px 16px;display:grid}.date-pair>.field{min-width:0;margin-bottom:0}.date-field>input[type=date].date-open{box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:44px;min-height:44px;margin:0;padding:0 8px;font-size:14px;line-height:21px;display:block}@media (max-width:759px),(pointer:coarse) and (max-height:500px){:root{--date-w:120px}.date-field>input[type=date].date-open{padding-left:8px;padding-right:8px}.date-field>input[type=date].date-open::-webkit-calendar-picker-indicator{margin-left:4px}}.inline-entry-more>.btn-primary{width:var(--date-action-w);min-width:var(--date-action-w);flex:0 0 var(--date-action-w);min-height:44px;padding:0 8px}.time-meta{grid-column:1/-1;align-items:flex-end;gap:12px;min-width:0;display:flex}.time-meta>.field{flex:0 11.5rem;width:11.5rem;min-width:0;margin:0}.time-billable{flex:none;margin-left:auto}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.inline-entry{grid-template-columns:auto minmax(0,1fr);align-items:center}.inline-entry>*{grid-column:1/-1}.inline-entry>:is(select[name=staffId],input[name=staffName]){order:-2}.inline-entry>div.inline-entry-more{flex-wrap:nowrap;order:-1;grid-column:1/-1;align-items:center;gap:8px;display:flex}.inline-entry>p.error{order:2}}.inline-cost{grid-template-columns:1fr;gap:8px;min-width:0;margin-bottom:12px;display:grid}.invoice-block .inline-cost{margin-top:16px}.job-card>.table-wrap+.inline-cost{margin-top:12px}.job-card>div:has(>.table-wrap)+.inline-cost{margin-top:12px}.inline-cost>h2{grid-column:1/-1}.inline-cost>.field,.inline-cost>.inline-cost-actions,.inline-cost>.inline-cost-more{min-width:0}.inline-cost .field{margin-bottom:0}.inline-cost-note{order:-1;margin:0}.inline-cost-more{order:1}.inline-cost-more>summary{min-height:32px;color:var(--jk-text-muted);align-items:center;font-size:14px;display:inline-flex}.inline-cost-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline-cost-actions .btn-primary{width:100%}.quote-lines-col>.panel>.inline-cost{margin-top:12px;margin-bottom:0}.clip{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:100%;display:inline-block;overflow:hidden}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.inline-entry{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 88px;align-items:center}.inline-entry-note,.inline-entry-more{grid-column:1/-1}.clip{max-width:16rem}}@media (min-width:960px) and (not ((pointer:coarse) and (max-height:500px))){.job-split{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:start}.inline-cost{grid-template-columns:minmax(0,1.6fr) 4.5rem minmax(5rem,.7fr) minmax(5rem,.7fr) minmax(4.5rem,.55fr) auto;align-items:end}.inline-cost-note,.inline-cost-more{grid-column:1/-1}.inline-cost-actions .btn-primary{width:auto}}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.data-table td .clip,.data-table td .cell-clip{text-align:right;flex:auto;width:auto;min-width:0;max-width:calc(58% - 12px)}.table-wrap .data-table{width:100%!important;min-width:0!important;max-width:100%!important}.data-table td:has(.note-read){flex-direction:column;align-items:stretch}.data-table td .note-read{text-align:left}}.wip-table td.num,.wip-table th.num{white-space:nowrap}.wip-table td[data-label=Job] .meta{display:block}.time-sheet .data-table th[data-label=Date],.time-sheet .data-table td[data-label=Date],.time-sheet .data-table th[data-label=Staff],.time-sheet .data-table td[data-label=Staff],.time-sheet .data-table th[data-label=Labour],.time-sheet .data-table td[data-label=Labour]{white-space:nowrap;word-break:normal}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.time-sheet.table-wrap{overflow-x:clip}.time-sheet .data-table thead,.time-sheet .data-table colgroup{display:none}.time-sheet .data-table tbody{width:100%;display:block}.time-sheet .data-table tbody tr{box-sizing:border-box;background:var(--jk-raised);border:1px solid var(--jk-border);border-radius:var(--jk-radius);grid-template-columns:auto minmax(0,1fr);grid-template-areas:"date hrs""lock lock""staff staff""labour labour""note note";align-items:baseline;gap:2px 10px;width:100%;min-width:0;margin:0 0 8px;padding:7.65px 12px;display:grid}.time-sheet .data-table tbody tr:last-child{margin-bottom:0}.time-sheet .data-table td{border:0;width:auto;min-width:0;height:auto;min-height:0;padding:0;display:block}.time-sheet .data-table td:before{content:none}.time-sheet .data-table td[data-label=Date]{grid-area:date}.time-sheet .data-table td[data-label=Lock\ time]{grid-area:lock}.time-sheet .data-table td[data-label=Staff]{grid-area:staff}.time-sheet .data-table td[data-label=Labour]{grid-area:labour}.time-sheet .data-table td[data-label=Hrs]{text-align:left;color:var(--jk-text);white-space:nowrap;grid-area:hrs;justify-self:start;font-size:14px;font-weight:700}.time-sheet .data-table td[data-label=Hrs]:not(:empty):after{content:"h"}.time-sheet .data-table td:is([data-label=Note],[data-label=Notes]){white-space:normal;word-break:normal;grid-area:note;width:100%;min-height:0;margin-top:4px;overflow:hidden}.time-sheet .data-table td:is([data-label=Note],[data-label=Notes]) .cell-clip{text-align:left;width:100%;max-width:none}.time-sheet .data-table td[data-label=Date],.time-sheet .data-table td[data-label=Staff],.time-sheet .data-table td[data-label=Labour]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.table-wrap,.time-sheet.table-wrap,.week-scroll{overflow-x:clip}.time-sheet.table-wrap{background:0 0;border:0;border-radius:0}}.data-table th:has(>a){padding:0}.data-table th.col-head,.week-table th.col-head{position:relative}.data-table.col-reordering,.week-table.col-reordering{table-layout:fixed;-webkit-user-select:none;user-select:none}.data-table.col-reordering,.data-table.col-reordering th,.data-table.col-reordering a,.week-table.col-reordering,.week-table.col-reordering th,.week-table.col-reordering a{cursor:grabbing}.data-table.col-reordering th,.data-table.col-reordering td,.week-table.col-reordering th,.week-table.col-reordering td{border-bottom-color:#0000}.data-table.col-reordering th,.week-table.col-reordering th{background:var(--jk-surface)}.data-table th.col-head>a,.week-table th.col-head>a,.data-table th.col-head>.sort-label{max-width:calc(100% - 14px)}.col-resize{z-index:3;appearance:none;cursor:col-resize;touch-action:none;background:0 0;border:0;border-radius:0;flex:none;width:10px;min-width:0;max-width:10px;height:auto;min-height:0;margin:0;padding:0;display:block;position:absolute;inset:0 auto 0 7px}.col-resize:focus,.col-resize:focus-visible{box-shadow:none;outline:none}.row-rules-host{isolation:isolate;position:relative}.data-table.col-reordering,.data-table.col-resizing,.week-table.col-reordering,.week-table.col-resizing{z-index:0;position:relative}.row-rules{z-index:4;pointer-events:none;position:absolute}.row-rule{background:var(--jk-border);height:1px;position:absolute;left:0;right:0}.data-table.col-resizing,.week-table.col-resizing{table-layout:fixed}.data-table.col-resizing th,.data-table.col-resizing td,.week-table.col-resizing th,.week-table.col-resizing td{border-bottom-color:#0000;min-width:0}.col-reset-row{justify-content:flex-end;margin:0 0 6px;display:flex}.col-reset{height:auto;min-height:0;color:var(--jk-subtle);cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-size:14px;text-decoration:none}.col-reset:hover{color:var(--jk-primary)}.col-reset:disabled{color:var(--jk-text-muted);cursor:default}.data-table th a{box-sizing:border-box;letter-spacing:normal;text-transform:none;justify-content:flex-start;align-items:flex-end;gap:4px;width:100%;min-height:0;margin:0;padding:7.65px 12px;font-size:14px;font-weight:600;display:flex}.data-table th a:hover{color:var(--jk-primary)}.data-table.flex-text,.data-table.col-fixed,.data-table.col-sized{table-layout:fixed;width:100%;min-width:0;max-width:100%}.data-table.flex-text th,.data-table.flex-text td{width:auto;max-width:none}.data-table.flex-text td.col-flex{text-overflow:ellipsis;white-space:nowrap;word-break:normal;overflow:hidden}.data-table.flex-text.one-flex th.col-flex,.data-table.flex-text.one-flex td.col-flex{min-width:0}.jobs-table .data-table.flex-text th,.jobs-table .data-table.flex-text td,.jobs-table.has-client .data-table.flex-text th,.jobs-table.has-client .data-table.flex-text td,.auto-cols .data-table.flex-text th,.auto-cols .data-table.flex-text td,.quotes-list.auto-cols .data-table.flex-text th,.quotes-list.auto-cols .data-table.flex-text td,.client-jobs .data-table.flex-text th,.client-jobs .data-table.flex-text td,.client-quotes .data-table.flex-text th,.client-quotes .data-table.flex-text td{width:auto;min-width:0;max-width:none}.jobs-table .data-table.flex-text td.col-flex,.auto-cols .data-table.flex-text td.col-flex,.client-jobs .data-table.flex-text td.col-flex,.client-quotes .data-table.flex-text td.col-flex{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.jobs-table .data-table.flex-text .job-cell{width:auto;min-width:0}.jobs-table .job-name{flex-wrap:nowrap;width:100%;max-width:100%;min-height:calc(1.17em + 3.6px)}.jobs-table .data-table.flex-text .job-name-text{white-space:nowrap;text-overflow:ellipsis;word-break:normal;display:block;overflow:hidden}.jobs-table.has-client .data-table.col-fixed th,.jobs-table.has-client .data-table.col-fixed td{width:auto;min-width:0;max-width:none}.jobs-table.has-client .data-table .status-form select{width:100%;min-width:0;max-width:100%}.quotes-list .data-table.col-fixed th,.quotes-list .data-table.col-fixed td,.purchases-list .data-table.col-fixed th,.purchases-list .data-table.col-fixed td{width:auto;min-width:0;max-width:none}.data-table.col-sized th,.data-table.col-sized td,.data-table.col-sized th.col-num,.data-table.col-sized td.col-num,.auto-cols .data-table.col-sized th,.auto-cols .data-table.col-sized td,.quotes-list.auto-cols .data-table.col-sized th,.quotes-list.auto-cols .data-table.col-sized td,.quotes-list.auto-cols .data-table.col-sized th[data-label],.quotes-list.auto-cols .data-table.col-sized td[data-label],.jobs-table .data-table.col-sized th,.jobs-table .data-table.col-sized td,.jobs-table.has-client .data-table.col-sized th,.jobs-table.has-client .data-table.col-sized td{width:auto;min-width:0;max-width:none;overflow:hidden}.data-table.col-sized th[data-label],.data-table.col-sized td[data-label],.week-table.col-sized th.col-head,.week-table.col-sized td{width:auto;min-width:0;max-width:none}.table-wrap.jobs-table.has-client .data-table th.col-fill,.table-wrap.jobs-table.has-client .data-table td.col-fill,.table-wrap .data-table th.col-fill,.table-wrap .data-table td.col-fill,.week-scroll .week-table th.col-fill,.week-scroll .week-table td.col-fill{white-space:nowrap;word-break:normal;pointer-events:none;width:auto;min-width:0;max-width:none;padding:0}.week-table th.col-fill,.week-table td.col-fill{border-left:0;border-right:0}.purchases-list .data-table th[data-label=Supplier],.purchases-list .data-table td[data-label=Supplier]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.purchases-list .data-table td[data-label=Job],.purchases-list .data-table th[data-label=Job]>a{padding-left:28px}.jobs-table .hours-figure{text-align:left;font-variant-numeric:tabular-nums;margin:0;display:inline-block}.jobs-table .time-pct{vertical-align:bottom;justify-content:flex-start;align-items:center;gap:8px;margin:0;display:inline-flex}.jobs-table .time-pct-bar{flex:0 0 48px;width:48px}.jobs-table .time-pct-value{text-align:left;font-variant-numeric:tabular-nums;flex:none;width:auto;min-width:0;margin:0}.jobs-table.has-client .data-table.col-fixed,.jobs-table.has-client .data-table.col-sized{table-layout:auto;width:100%;min-width:0;max-width:100%}.jobs-table.has-client .data-table col.col-time{width:1%}.jobs-table.has-client .data-table th[data-label="Time %"],.jobs-table.has-client .data-table td[data-label="Time %"]{white-space:nowrap;width:1%;overflow:visible}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.jobs-table.has-client .data-table th[data-label="Time %"]{width:auto}.jobs-table.has-client .data-table td[data-label="Time %"]{width:100%}}.jobs-table.has-client .data-table.flex-text.one-flex th.col-flex,.jobs-table.has-client .data-table.flex-text.one-flex td.col-flex,.client-jobs .data-table.flex-text.one-flex th.col-flex,.client-jobs .data-table.flex-text.one-flex td.col-flex,.client-quotes .data-table.flex-text.one-flex th.col-flex,.client-quotes .data-table.flex-text.one-flex td.col-flex,.auto-cols .data-table.flex-text.one-flex th.col-flex,.auto-cols .data-table.flex-text.one-flex td.col-flex{min-width:40%;max-width:none}.time-sheet .data-table.flex-text td[data-label=Labour]{text-overflow:ellipsis;overflow:hidden}.time-sheet .data-table td:is([data-label=Note],[data-label=Notes]) .cell-clip{white-space:normal;text-overflow:clip;overflow:visible}.note-full{white-space:pre-line;overflow-wrap:anywhere;word-break:normal;min-width:0;max-width:100%;display:block}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.time-sheet .data-table tbody td{vertical-align:top}.time-sheet .data-table tbody td:is([data-label=Note],[data-label=Notes])[data-gap]{padding-right:12px}.time-sheet .data-table tbody td:is([data-label=Note],[data-label=Notes]){white-space:normal;height:auto;max-height:none;overflow:hidden}}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.time-sheet .data-table.flex-text{width:100%;min-width:0;display:block}}.data-table td .pill{margin-left:-8px}:is(.cell-clip:has(.pill.is-status),.cell-clip:has(select.status-select-input)){overflow:visible}.data-table td .star{height:26.54px;min-height:0}.data-table td :is(button,a):is(.btn-primary,.btn-neutral,.btn-danger){justify-content:center;min-width:7.5rem;height:26.54px;min-height:0;margin-left:0;padding:0 16px;font-size:14px}.form-grid>.span-2,.form-grid .table-wrap{min-width:0;max-width:100%}.client-devices .data-table{table-layout:fixed;width:100%;min-width:0;max-width:100%}.client-device-list>.client-device-add{width:auto;margin-top:var(--jk-section-gap);place-self:flex-start start;display:block}.client-device-list>.subhead{margin-bottom:8px}.client-device-row{grid-template-columns:minmax(0,1fr);align-items:start;gap:8px 16px;min-width:0;margin-bottom:8px;display:grid}.client-device-row>.field{min-width:0;margin-bottom:0}.client-device-remove{align-items:center;display:flex}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.client-device-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto;gap:0 16px}.client-device-remove{margin-top:25px}}.data-table td button.line-remove{justify-content:center;min-width:7.5rem;height:26.54px;min-height:0;margin-left:0;padding:0 16px;font-size:14px}.data-table td form:has(.line-remove){margin:0}.data-table td .confirm-dialog :is(button,a):is(.btn-primary,.btn-neutral,.btn-danger),.confirm-dialog :is(button,a):is(.btn-primary,.btn-neutral,.btn-danger){justify-content:center;min-width:7.5rem;height:auto;min-height:44px;margin-left:0;padding:0 16px;font-size:14px}:is(.data-table tbody td:has(.note-read),.data-table tbody td:has(.note-body),.data-table tbody td:has(.labour-rate-note)){white-space:nowrap;text-overflow:ellipsis;height:39.78px;max-height:39.78px;overflow:hidden}.data-table tbody td:has(.job-cell){white-space:normal;text-overflow:clip;height:auto;min-height:39.78px;overflow:hidden}.passkey-primary{width:100%;margin:8px 0 4px}.text-button{min-height:44px;color:var(--jk-text-muted);cursor:pointer;background:0 0;border:0;align-items:center;margin-top:4px;padding:0;font-size:14px;text-decoration:none;display:inline-flex}.text-button:hover{color:var(--jk-primary)}.passkey-fallback{margin-top:12px}.passkey-fallback>summary{cursor:pointer;min-height:44px;color:var(--jk-text-muted);align-items:center;font-size:14px;display:flex}.passkey-list,.passkey-history{flex-direction:column;gap:8px;margin:12px 0;padding:0;list-style:none;display:flex}.passkey-row{border:1px solid var(--jk-border);border-radius:var(--jk-radius);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.passkey-history li{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.passkey-prompt{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.passkey-prompt p{flex:220px;margin:0}.user-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.user-actions form{margin:0}#labour .data-table td{font-variant-numeric:tabular-nums}.data-table th.col-head[data-gap],.data-table td[data-gap]{padding-right:calc(12px + var(--col-gap,0px))}.data-table th.col-head[data-gap]:has(>a){padding-right:var(--col-gap,0px)}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.data-table th.col-head[data-gap],.data-table td[data-gap]{padding-right:0}}.week-table th.col-head[data-gap],.week-table td[data-gap]{padding-right:calc(8px + var(--col-gap,0px))}.data-table th.col-head[data-gap]>.sort-label,.week-table th.col-head[data-gap]>.sort-label{white-space:nowrap;max-width:none;margin-right:-12px;display:block;overflow:hidden}.week-table th.col-head[data-gap]>.sort-label{margin-right:-8px}.data-table th.col-head[data-gap]>a{max-width:none;overflow:hidden}.invoice-line-head>:first-child,.invoice-line-row>:first-child{padding-right:var(--invoice-gap-1,0px);--cell-gap:var(--invoice-gap-1,0px)}.invoice-line-head>:nth-child(2),.invoice-line-row>:nth-child(2){padding-right:var(--invoice-gap-2,0px);--cell-gap:var(--invoice-gap-2,0px)}.invoice-line-head>:nth-child(3),.invoice-line-row>:nth-child(3){padding-right:var(--invoice-gap-3,0px);--cell-gap:var(--invoice-gap-3,0px)}.invoice-line-head>:nth-child(4),.invoice-line-row>:nth-child(4){padding-right:var(--invoice-gap-4,0px);--cell-gap:var(--invoice-gap-4,0px)}.invoice-line-head>:nth-child(5),.invoice-line-row>:nth-child(5){padding-right:var(--invoice-gap-5,0px);--cell-gap:var(--invoice-gap-5,0px)}.invoice-line-head>:nth-child(6),.invoice-line-row>:nth-child(6){padding-right:var(--invoice-gap-6,0px);--cell-gap:var(--invoice-gap-6,0px)}.invoice-line-head>:nth-child(7),.invoice-line-row>:nth-child(7){padding-right:var(--invoice-gap-7,0px);--cell-gap:var(--invoice-gap-7,0px)}.invoice-line-head>:nth-child(8),.invoice-line-row>:nth-child(8){padding-right:var(--invoice-gap-8,0px);--cell-gap:var(--invoice-gap-8,0px)}.job-mini dd+dt{margin-top:var(--jk-heading-gap)}.job-mini .job-brief-foot{padding-top:var(--jk-heading-gap);flex-wrap:wrap;justify-content:flex-start;margin-top:0}.job-mini .job-brief-date{white-space:normal;text-align:left;overflow:visible}.client-cis-page .cis-form{box-sizing:border-box;width:100%;max-width:none}#panel form.panel>.form-actions,#custom-fields form.panel>.form-actions{background:0 0;border-top:0;margin:16px 0 0;padding:0;position:static}.send-mnz{display:contents}.send-mnz-choice{flex-wrap:wrap;gap:8px;display:flex}.send-mnz-status{flex-direction:column;gap:8px;margin-top:8px;display:flex}input[data-cis-changed],select[data-cis-changed],textarea[data-cis-changed],label[data-cis-changed]{background-color:color-mix(in srgb, var(--jk-warning) 14%, transparent)}label[data-cis-changed]{border-radius:var(--jk-radius)}.secret-masked{-webkit-text-security:disc;text-security:disc}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.history-line{grid-template-columns:7.75rem 5.5rem minmax(0,1fr);padding:6px 0}.history-line .history-event{white-space:normal;overflow-wrap:anywhere;grid-column:1/-1;overflow:visible}.form-actions{flex-wrap:wrap}.form-actions>:is(a,button).btn-primary,.form-actions>:is(a,button).btn-neutral,.form-actions>:is(a,button).btn-danger,.form-actions>.send-mnz>.btn-primary{flex:1 1 0;min-width:0;padding-inline:8px}}@media (max-width:639px),(pointer:coarse) and (max-height:500px){.topbar select.quick-add-native.btn-primary{width:4.5rem;min-width:4.5rem}}.cis-day input[type=time]{cursor:pointer}.cis-time{align-items:center;gap:6px;display:flex}.cis-time input[type=time]{flex:1;min-width:0}.cis-time .cis-time-clear{flex:none;min-width:2.5rem;padding-inline:0}.facts .fact-pair{grid-column:1/-1;grid-template-columns:max-content max-content;gap:8px 48px;display:grid}.quote-fields .date-pair{grid-template-columns:max-content max-content;justify-content:start}.data-table td:has(.line-remove){padding-right:8px}.data-table td form:has(.line-remove){justify-content:flex-end;display:flex}textarea.auto-grow{resize:none;overflow-y:hidden}.quote-lines .data-table tr:last-child>td,.quote-lines .data-table tr:last-child>th{border-bottom:0}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.nav-toggle>summary{width:44px;height:44px;min-height:44px}.account-trigger{min-height:44px}.topbar-inner details:not(.nav-toggle,.quick-add,.quick-add-wide)>summary{width:44px;height:44px;min-height:44px}.top-search input,.topbar select.quick-add-native.btn-primary{height:44px;min-height:44px}.topbar-inner{gap:4px}.top-search .search-kbd{display:none}.top-search input{padding-right:10px}.side-link{min-height:44px}.crumbs a{margin-block:-13px;padding-block:13px;display:inline-block}.tab-strip a,.job-tabs button{min-height:44px}.tab-strip,.job-tabs{-webkit-mask-image:linear-gradient(to right, var(--jk-bg) calc(100% - 24px), transparent);mask-image:linear-gradient(to right, var(--jk-bg) calc(100% - 24px), transparent);-webkit-mask-image:linear-gradient(to right, var(--jk-bg) calc(100% - 24px), transparent);padding-right:24px;scroll-padding-inline-end:24px}input[type=checkbox],input[type=radio]{width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;box-shadow:inset 0 0 0 1px var(--jk-border-strong);background-clip:padding-box;border:15px solid #0000;border-radius:17px;flex:0 0 44px;margin:-15px}input[type=checkbox]:checked,input[type=radio]:checked{box-shadow:inset 0 0 0 1px var(--jk-text);border-color:#0000}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline-offset:-13px}.flag-row{align-items:center;min-height:44px}.flag-row input[type=checkbox]{height:44px;min-height:44px;box-shadow:inset 0 0 0 1px var(--jk-text-muted);margin:-15px}.flag-row input[type=checkbox]:checked{box-shadow:inset 0 0 0 1px var(--jk-text)}.data-table td select.status-select-input,select.status-select-input{background-clip:padding-box;border-block:12px solid #0000;border-radius:10px/22px;height:44px;margin-block:-12px}.jobs-table .data-table tbody tr{position:relative}.jobs-table .job-number:after{content:"";position:absolute;inset:0}.jobs-table .data-table td :is(a:not(.job-number),button,select,input,.status-select){z-index:1;position:relative}.data-table td a:not(.btn-primary,.btn-neutral,.btn-danger){margin-block:-13px;padding-block:13px;display:inline-block}.jobs-table .data-table td a.job-number{margin-block:-15px;padding-block:15px;display:inline-block}.data-table td :is(button,a):is(.btn-primary,.btn-neutral,.btn-danger){height:auto;min-height:44px}.data-table thead th.col-head>a,.data-table thead th>a{align-items:center;min-height:44px;display:inline-flex}.col-resize:before{content:"";position:absolute;inset:0 -7px}.col-reset{margin-block:-12px;padding-block:12px}.field:has(>textarea.quote-name-input){min-width:0}textarea.quote-name-input{field-sizing:content;white-space:pre-wrap;width:100%;max-width:100%;height:auto}.week-scroll,.week-scroll.cols-locked{overflow:auto hidden}.week-scroll .week-table{max-width:none;min-width:660px!important}.week-scroll:not(.cols-locked) .week-table col:first-child{width:9rem!important}.week-table th:first-child,.week-table td:first-child{z-index:2;background:var(--jk-surface);position:sticky;left:0}.week-table tbody td{height:auto}.week-table tbody td .hours-input,.week-table input.hours-input{height:44px;min-height:44px}.labour-add>select,.labour-add>input:not([type=checkbox]){flex-basis:100%}}.quote-lines-col>.panel,.job-card,.cis-form{container:jk-box/inline-size}@container jk-box (max-width:359px){.inline-cost{grid-template-columns:1fr}.inline-cost-actions .btn-primary{width:100%}.labour-add>select,.labour-add>input:not([type=checkbox]){flex-basis:100%}.cis-row.cis-contacts,.cis-row.cis-users,.cis-row.cis-zones,.cis-row.cis-devices,.cis-pair,.cis-secrets,.cis-panel-row,.cis-hours{grid-template-columns:1fr}}textarea.quote-name-input{resize:none;white-space:nowrap;height:44px;min-height:44px;line-height:24px;overflow:hidden}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.table-wrap:not(.time-sheet),.table-wrap.cols-locked:not(.time-sheet){touch-action:auto;background:var(--jk-surface);border:1px solid var(--jk-border);border-radius:var(--jk-radius-md);height:auto;max-height:none;display:flex;overflow:auto hidden}.table-wrap:not(.time-sheet):not(.cols-locked) .data-table{table-layout:auto!important;width:100%!important;min-width:0!important}.table-wrap:not(.time-sheet):not(.cols-locked) .data-table col{width:auto!important}.table-wrap.cols-locked:not(.time-sheet) .data-table{width:max(100%, var(--cols-total,100%))!important;min-width:max(100%, var(--cols-total,100%))!important;table-layout:fixed!important}.table-wrap.cols-locked:not(.time-sheet) .data-table td :is(.clip,.cell-clip){max-width:100%}.table-wrap:not(.time-sheet) .data-table{flex:none;display:table;max-width:none!important}.table-wrap:not(.time-sheet) .data-table thead{display:table-header-group}.table-wrap:not(.time-sheet) .data-table tbody{display:table-row-group}.table-wrap:not(.time-sheet) .data-table thead tr,.table-wrap:not(.time-sheet) .data-table tbody tr{width:auto;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;display:table-row}.table-wrap:not(.time-sheet) .data-table tbody tr:hover{background:var(--jk-hover)}.table-wrap:not(.time-sheet) .data-table th,.table-wrap:not(.time-sheet) .data-table td{border-bottom:1px solid var(--jk-border);white-space:nowrap;word-break:normal;text-align:left;width:1%;padding:7.65px 12px;display:table-cell}.table-wrap:not(.time-sheet) .data-table tbody td{vertical-align:top;height:39.78px;min-height:0;padding-top:6.12px;padding-bottom:6.12px}.table-wrap:not(.time-sheet) .data-table td:before{content:none}.table-wrap:not(.time-sheet) .data-table td .clip,.table-wrap:not(.time-sheet) .data-table td .cell-clip{white-space:nowrap;text-overflow:ellipsis;-webkit-line-clamp:unset;line-clamp:none;text-align:left;flex:none;width:auto;max-width:12rem;display:block;overflow:hidden}.table-wrap:not(.time-sheet) .data-table td .cell-clip:has(.pill,select,.job-cell,.btn-primary,.btn-neutral,.btn-danger,form){max-width:none;overflow:visible}.table-wrap:not(.time-sheet):after{content:"";background:linear-gradient(to right, transparent, var(--jk-surface));pointer-events:none;z-index:3;flex:0 0 28px;align-self:stretch;margin-left:-28px;transition:opacity .15s;position:sticky;right:0}.table-wrap[data-scroll-end]:after{opacity:0}.table-wrap:not(.time-sheet)::-webkit-scrollbar{-webkit-appearance:none;height:6px}.table-wrap:not(.time-sheet)::-webkit-scrollbar-track{background:0 0}.table-wrap:not(.time-sheet)::-webkit-scrollbar-thumb{background:var(--jk-border-strong);border-radius:3px}.row-id-phone{align-items:flex-start;gap:8px;min-width:0;display:flex}.row-id-phone>.cell-clip{flex:0 auto;min-width:0}.row-state-phone{z-index:1;flex:none;position:relative}.table-wrap .data-table[data-phone-state] :is(th,td):is([data-label=Status],[data-label=State]){display:none}.table-wrap:not(.time-sheet) .data-table tbody td:has(.btn-primary,.btn-neutral,.btn-danger){vertical-align:middle;padding-top:0;padding-bottom:0}.star,.todo-x,.inline-cost-more>summary{position:relative}.star:after,.todo-x:after,.inline-cost-more>summary:after{content:"";width:max(100%,44px);height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.wrap p>a:not([class]){padding-block:13px}.jobs-table .job-cell{align-items:stretch;width:12rem;max-width:12rem}.jobs-table .job-name{flex-wrap:nowrap;justify-content:flex-start;align-items:center}.jobs-table .data-table .job-name-text{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.jobs-table .table-wrap .data-table td .row-id-phone{flex-wrap:wrap;align-items:center;gap:0 14px;width:14rem;max-width:14rem}.jobs-table .table-wrap .data-table[data-phone-state] tbody td{padding-top:4px;padding-bottom:4px}.jobs-table .table-wrap .data-table td .row-id-phone>.cell-clip,.jobs-table .table-wrap .data-table td .row-id-phone .job-cell{display:contents}.jobs-table .table-wrap .data-table td .row-id-phone .job-number{flex:none;order:1;min-width:3.5rem;margin-inline:0}.jobs-table .table-wrap .data-table td .row-id-phone>.row-state-phone{order:2}.jobs-table .table-wrap .data-table td .row-id-phone>.row-state-phone :is(select,.pill){margin-inline:0}.jobs-table .table-wrap .data-table td .row-id-phone .job-name{flex:0 0 100%;order:3;min-width:0}.job-head-copy>.meta:has(.status-select){flex-wrap:wrap;align-items:center;display:flex}.job-head-copy>.meta>.status-select{margin-left:1.25rem}.job-head:has(.job-head-copy .status-select) .job-head-actions>.status-select{display:none}.crumbs:has(.job-crumb-actions)~.job-head .job-head-actions>:is(button.btn-primary,a.btn-primary){display:none}.crumbs:has(.job-crumb-actions)~.job-head .job-head-actions{display:none}.crumbs:has(.job-crumb-actions){white-space:nowrap;align-items:center;gap:0 4px;min-width:0;display:flex}.crumbs:has(.job-crumb-actions)>.crumb-current{text-overflow:ellipsis;min-width:0;overflow:hidden}.job-crumb-actions{flex:none;gap:6px;margin-left:auto;padding-left:8px;display:inline-flex}.crumbs .job-crumb-actions>.btn-primary{box-sizing:border-box;border-radius:11px;justify-content:center;align-items:center;width:76px;min-width:0;height:22px;min-height:0;margin:0;padding:0 6px;font-size:11px;line-height:1;display:inline-flex;position:relative}.job-crumb-actions>.btn-primary:after{content:"";position:absolute;inset:-11px -3px}}.assign-menu{display:inline-block;position:relative}.assign-field{max-width:100%;display:inline-block;position:relative}.assign-menu>summary{cursor:pointer;list-style:none;display:block}.job-card:has(.assign-menu[open]){z-index:45;position:relative}.assign-names{overflow-wrap:anywhere;flex-direction:column;display:flex}.assign-menu>summary::-webkit-details-marker{display:none}.assign-menu-list{z-index:40;background:var(--jk-surface-solid);min-width:180px;max-height:min(60vh,420px);color:var(--jk-text);border:1px solid var(--jk-border);box-shadow:var(--jk-glass-shadow);border-radius:8px;padding:5px;font-family:-apple-system,BlinkMacSystemFont,system-ui,sans-serif;font-size:13px;line-height:1.2;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.assign-menu-item{white-space:nowrap;cursor:default;border-radius:4px;align-items:center;gap:6px;padding:3px 12px 3px 6px;display:flex;position:relative}.assign-menu-item input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.assign-menu-tick{text-align:center;visibility:hidden;width:14px}.assign-menu-item:has(input:checked) .assign-menu-tick{visibility:visible}.assign-menu-item:hover{color:#fff;background:#0a64d9}.assign-menu-item:has(input:focus-visible){color:#fff;background:#0a64d9}.assign-menu-empty{color:var(--jk-text-muted);margin:0;padding:3px 12px}@media (max-width:759px),(pointer:coarse){.assign-field{display:block}.assign-menu-list{max-width:calc(100vw - 48px)}.assign-menu-item{white-space:normal;min-height:44px}}.assign-label>label{cursor:pointer;font:inherit;color:inherit}@media (max-width:759px),(pointer:coarse){.assign-label>label{margin-block:-13px;padding-block:13px;display:inline-block}}@media (max-width:759px),(pointer:coarse) and (max-height:500px){#overview.job-panel:not([hidden]){flex-direction:column;display:flex}#overview>.job-split{display:contents}#overview>.job-split>.job-profit-card{order:1;margin-top:0}}#labour .data-table .labour-rate-note{display:none}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.toolbar.list-toolbar:has(+.jobs-table){flex-wrap:nowrap}.toolbar.list-toolbar:has(+.jobs-table>.col-reset-row){padding-right:0}.toolbar.list-toolbar+.jobs-table>.col-reset-row{height:auto;margin:calc(-1 * var(--jk-section-gap) + 8px) 0 var(--jk-section-gap)}.toolbar.list-toolbar+.jobs-table>.col-reset-row .col-reset{top:0}.toolbar.list-toolbar:has(+.jobs-table) :is(.search-field,.filter-field){flex:1 1 0}.toolbar.list-toolbar:has(+.jobs-table) :is(input[type=search],select){height:44px;min-height:44px}#labour .labour-add>select[name=taskTypeId]{flex:1 1 0;min-width:0}#labour .labour-add>input[name=estimatedHours]{flex:0 0 4.5rem;min-width:0}#labour .labour-add>.btn-primary{flex:none;min-width:0;height:44px;min-height:44px;padding:0 10px}#labour .labour-add>:is(select[name=taskTypeId],input[name=estimatedHours]){height:44px;min-height:44px}.sticky-footer{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}#todos .labour-add>input[name=name]{flex:1 1 0;min-width:0;height:44px;min-height:44px}#todos .labour-add>.btn-primary{flex:none;min-width:0;height:44px;min-height:44px;padding:0 10px}.time-sheet .data-table td .cell-clip{text-align:left;flex:none;width:auto;max-width:none}.inline-entry>:is(select[name=staffId],input[name=staffName]){order:-3}.inline-entry>select[name=jobTaskId]{order:-2}.time-sheet .data-table tbody tr{grid-template-columns:minmax(0,1fr) auto}.time-sheet .data-table td[data-label=Hrs]{text-align:right;white-space:nowrap;justify-self:end}.time-sheet .data-table td[data-label=Hrs] .cell-clip{width:auto;display:inline;overflow:visible}.time-sheet .data-table td:is([data-label=Note],[data-label=Notes]){margin-top:0}.inline-entry{grid-template-columns:minmax(0,1fr) auto}.inline-entry>div.inline-entry-more{display:contents}.inline-entry>div.inline-entry-more>.date-field{order:-1;grid-column:1;width:auto;min-width:0;max-width:none}.inline-entry>div.inline-entry-more>.check-row{order:-1;grid-column:2}.inline-entry>div.inline-entry-more>.btn-primary{order:9;grid-column:1/-1;width:100%;min-width:0;height:44px;min-height:44px}#time .time-sheet .data-table tbody tr{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"date staff staff""labour labour hrs""note note note";column-gap:12px}#time .time-sheet .data-table td[data-label=Staff] .cell-clip:before{content:"· ";color:var(--jk-text-muted)}#time .time-sheet .data-table td[data-label=Staff]{margin-left:-6px}#time .time-sheet .data-table td:is([data-label=Note],[data-label=Notes]){color:var(--jk-text-muted);background:0 0;border:0;border-radius:0;margin-top:3px;padding:0}#time .time-sheet .data-table td:is([data-label=Note],[data-label=Notes]) .note-full{color:inherit}#time .time-sheet .data-table td:is([data-label=Note],[data-label=Notes]):not(:has(.note-full)){display:none}#time .col-reset-row:has(+.table-wrap.time-sheet){display:none}#time .time-sheet .data-table tbody tr{cursor:pointer;position:relative}#time .time-sheet .data-table tbody td[data-label=Date] a.drill-link:after{content:"";z-index:1;position:absolute;inset:0}.time-entry-form:has(input[name=entryId]) .form-grid{grid-template-columns:minmax(0,1fr) 5rem}.time-entry-form:has(input[name=entryId]) .form-grid>*{grid-column:1/-1}.time-entry-form:has(input[name=entryId]) .form-grid>.field:has(select[name=jobTaskId]){grid-column:1}.time-entry-form:has(input[name=entryId]) .form-grid>.field:has(input[name=hours]){grid-column:2}.time-entry-form:has(input[name=entryId]) .form-grid>.field :is(select[name=jobTaskId],input[name=hours]){width:100%;min-width:0;height:44px;min-height:44px}.time-entry-form:has(input[name=entryId]) .field:has(input[name=hours])>.hint{display:none}.time-entry-form:has(input[name=entryId])>.form-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.time-entry-form:has(input[name=entryId])>.form-actions>:is(button,a){width:100%;min-width:0;height:44px;min-height:44px;margin:0;padding:0 6px}#time .inline-entry{grid-template-columns:minmax(0,1fr) 5rem auto;grid-auto-flow:dense}#time .inline-entry>input[name=hours]{order:-1;grid-column:2;width:100%;min-width:0;height:44px;min-height:44px}#time .inline-entry>div.inline-entry-more>.date-field{grid-column:1}#time .inline-entry>div.inline-entry-more>.check-row{grid-column:3;height:44px}.cost-date .drag-handle{display:none}.cost-desc-handle{vertical-align:middle;margin-right:12px;display:inline-flex}.cost-desc-handle .drag-handle{margin-left:0}#costs .data-table td[data-label=Description],#costs .data-table td[data-label=Description] .cell-clip{white-space:normal;text-overflow:clip;overflow-wrap:anywhere;height:auto;overflow:visible}#financials .table-wrap.financial-table{background:0 0;border:0;overflow:visible}#financials .table-wrap.financial-table:after{content:none}#financials .financial-table .data-table{display:block;width:100%!important;min-width:0!important}#financials .financial-table .data-table :is(colgroup,thead){display:none}#financials .financial-table .data-table tbody{gap:8px;display:grid}#financials .financial-table .data-table tbody tr{background:var(--jk-raised);border:1px solid var(--jk-border);border-radius:var(--jk-radius);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px;padding:8px 12px;display:grid;position:relative}#financials .financial-table .data-table tbody td{white-space:nowrap;text-overflow:ellipsis;border:0;min-width:0;height:auto;padding:0;display:block;overflow:hidden;width:auto!important}#financials .financial-table .data-table tbody td:not([data-label]),#financials .financial-table .data-table tbody td[hidden],#financials .financial-table .data-table tbody td:is([data-label=Status],[data-label=State]){display:none}#financials .financial-table .data-table tbody td[data-label=Number]{grid-area:1/1;overflow:visible}#financials .financial-table .data-table tbody td[data-label=Amount]{text-align:right;grid-area:1/2;font-weight:600}#financials .financial-table .data-table tbody td:is([data-label=Name],[data-label=Type],[data-label=Supplier]){grid-area:2/1}#financials .financial-table .data-table tbody td[data-label=Date]{text-align:right;color:var(--jk-text-muted);grid-area:2/2}#financials .financial-table .data-table tbody td .cell-clip{max-width:none;text-align:inherit}#financials .financial-table .data-table tbody td .row-id-phone{column-gap:12px}#financials .financial-table .data-table tbody td[data-label=Number] a:after{content:"";z-index:1;position:absolute;inset:0}#financials .financial-head:has(.financial-actions>:nth-child(2)){flex-wrap:nowrap}#financials .financial-head:has(.financial-actions>:nth-child(2)) .financial-actions{flex-wrap:nowrap;gap:8px}#financials .financial-actions>:is(a[href$=type\=final],a[href$=type\=progress]){white-space:nowrap;justify-content:center;width:92px;min-width:0;height:44px;min-height:44px;padding:0;font-size:0}#financials .financial-actions>a[href$=type\=final]:before{content:"Final";font-size:14px}#financials .financial-actions>a[href$=type\=progress]:before{content:"Progress";font-size:14px}#financials .job-card:has(>.col-reset-row)>.financial-head{padding-right:0}#financials .job-card>.col-reset-row,#financials .job-card>:not(.invoice-block-head)>.col-reset-row{display:none}}.note-card{position:relative}.note-card-link{color:inherit;text-decoration:none}.note-card-link:after{content:"";position:absolute;inset:0}.note-card:hover .note-card-link{text-decoration:underline}@media (max-width:759px),(pointer:coarse) and (max-height:500px){#labour .table-wrap{overflow-x:visible}#labour .table-wrap:after{content:none}#labour .data-table{table-layout:auto!important;width:100%!important;min-width:0!important;max-width:100%!important}#labour .data-table col{width:auto!important}#labour .data-table :is(th,td):not([data-label]){display:none}#labour .data-table :is(th,td){white-space:normal;text-overflow:clip;max-width:none;padding-left:2px;padding-right:2px;font-size:12px;overflow:visible;width:auto!important}#labour .data-table :is(th,td):first-child,#labour>h2{padding-left:12px}#labour .data-table :is(th,td):last-of-type{padding-right:0}#labour .data-table td:not([data-label=Labour]){white-space:nowrap}#labour .data-table th{letter-spacing:0;vertical-align:bottom;min-width:0;padding-left:1px;padding-right:1px;font-size:11px;line-height:1.2}#labour .data-table th .sort-label{white-space:normal;display:inline;overflow:visible}#labour .data-table td[data-label=Labour]{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;min-width:4.5rem}#labour .data-table .time-pct-bar{display:none}#labour .data-table .cell-clip{text-overflow:clip;max-width:none;white-space:inherit;overflow:visible}#labour .col-reset-row,#labour .col-resize,#labour .resize-handle{display:none}}.labour-total-box{margin-top:var(--jk-section-gap)}@media (max-width:759px),(pointer:coarse) and (max-height:500px){#labour .data-table.labour-total-table{table-layout:fixed!important}#labour .data-table.labour-total-table col{width:var(--w,auto)!important}#labour .time-pct.is-warn:not(.is-over) .time-pct-value{color:var(--jk-warning)}#labour .data-table:not(.labour-total-table) tbody td,#labour .data-table.labour-total-table td{vertical-align:middle}}#labour .data-table tbody tr:last-child>:is(td,th){border-bottom:0}@media (max-width:759px),(pointer:coarse) and (max-height:500px){#costs .job-card>h2{padding-right:0}#costs .job-card .col-reset-row{display:none}#costs .table-wrap{background:0 0;border:0;overflow:visible}#costs .table-wrap:after{content:none}#costs .data-table{display:block;width:100%!important;min-width:0!important;max-width:100%!important}#costs .data-table :is(colgroup,thead){display:none}#costs .data-table tbody{gap:8px;display:grid}#costs .data-table tbody tr{background:var(--jk-raised);border:1px solid var(--jk-border);border-radius:var(--jk-radius);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 12px;padding:10px 12px;display:grid;position:relative}#costs .data-table tbody td{white-space:normal;border:0;gap:6px;min-width:0;height:auto;padding:0;font-size:13px;display:flex;overflow:visible;width:auto!important}#costs .data-table tbody td .cell-clip{text-overflow:clip;white-space:normal;text-align:left;min-width:0;max-width:none;overflow:visible}#costs .data-table tbody td:not([data-label]){display:none}#costs .data-table tbody td:before{content:attr(data-label);color:var(--jk-text-muted);flex:none}#costs .data-table tbody td[data-label=Description]{overflow-wrap:anywhere;grid-area:1/1;font-size:14px;font-weight:600;display:block}#costs .data-table tbody td[data-label=Total\ cost]{grid-area:1/2;justify-content:flex-end;font-size:14px;font-weight:600}#costs .data-table tbody td:is([data-label=Description],[data-label=Total\ cost]):before{content:none}#costs .data-table tbody td[data-label=Supplier]{grid-column:1/-1}#costs .data-table tbody td[data-label=Description] a.drill-link:after{content:"";z-index:1;position:absolute;inset:0}#costs .cost-desc-handle{z-index:2;position:relative}#costs .data-table tbody tr.total-row td:not([data-label=Date],[data-label=Total\ cost]){display:none}#costs .data-table tbody tr.total-row td[data-label=Date]{grid-area:1/1;font-size:14px;font-weight:600}#costs .data-table tbody tr.total-row td[data-label=Date]:before{content:none}textarea.phone-auto-grow{resize:none;overflow-y:hidden}#costs .data-table tbody tr{isolation:isolate;background:0 0;border:0;padding-left:40px}#costs .data-table tbody tr:before{content:"";z-index:-1;background:var(--jk-raised);border:1px solid var(--jk-border);border-radius:var(--jk-radius);position:absolute;inset:0 0 0 28px}#costs .data-table tbody tr:not(.total-row) td:is([data-label=Supplier],[data-label=Cost],[data-label=Sell],[data-label=Total\ cost],[data-label=Exclude],[data-label=Billed]){display:none}#costs .data-table tbody tr:not(.total-row) td[data-label=Description]{grid-column:1/-1}#costs .cost-desc-handle{justify-content:center;width:28px;margin:0;position:absolute;top:50%;left:0;transform:translateY(-50%)}#costs .data-table tbody tr{margin-left:-12px;padding-left:34px}#costs .data-table tbody tr:before{left:22px}#costs .cost-desc-handle{width:22px}#costs .data-table tbody td[data-label=Description] a.drill-link:after{left:22px}#costs .data-table tbody tr:not(.total-row) td[data-label=Date]{grid-area:1/1;align-self:end}#costs .data-table tbody tr:not(.total-row) td[data-label=Qty]{flex-direction:column;grid-area:1/2;align-items:flex-end;gap:0;line-height:1.3}#costs .data-table tbody tr:not(.total-row) td[data-label=Qty] .cell-clip{text-align:right}#costs .data-table tbody tr:not(.total-row) td[data-label=Description]{grid-area:2/1/auto/-1}#costs .data-table tbody tr.total-row{display:none}#costs .data-table tbody tr:not(.total-row){grid-template-columns:auto minmax(0,1fr) auto;align-items:start}#costs .data-table tbody tr:not(.total-row) td[data-label=Date]{white-space:nowrap;grid-area:1/1;align-self:start;line-height:1.4}#costs .data-table tbody tr:not(.total-row) td[data-label=Date]:before{content:none}#costs .data-table tbody tr:not(.total-row) td[data-label=Description]{grid-area:1/2;line-height:1.4}#costs .data-table tbody tr:not(.total-row) td[data-label=Qty]{white-space:nowrap;flex-direction:row;grid-area:1/3;align-items:baseline;gap:4px;line-height:1.4}}html:has(.job-panel:not([hidden]) #todos){overflow-anchor:none}@media (max-width:759px),(pointer:coarse) and (max-height:500px){#time .job-card:has(td[data-label=Hrs])>h2{justify-content:space-between;align-items:baseline;gap:12px;padding-right:0;display:flex}#time .job-card:has(td[data-label=Hrs])>h2:after{content:"Hrs";color:var(--jk-text-muted);padding-right:2px;font-family:inherit;font-size:13px;font-weight:400}#time .time-sheet .data-table td[data-label=Hrs]:not(:empty):after{content:none}#time .job-card:has(td[data-label=Hrs])>h2:after{box-sizing:content-box;width:var(--jk-hrs-col);text-align:left}#time .time-sheet .data-table td[data-label=Hrs]{box-sizing:border-box;text-align:left;justify-content:flex-start;justify-self:end;margin-right:-11px;width:var(--jk-hrs-col)!important}#time .time-sheet .data-table td[data-label=Hrs] .cell-clip{text-align:left}#time .job-card{--jk-hrs-col:2rem}.job-task-edit>.form-actions .btn-danger{background:var(--jk-raised)}#costs .job-card:has(td[data-label=Qty])>h2{justify-content:space-between;align-items:baseline;gap:12px;display:flex}#costs .job-card:has(td[data-label=Qty])>h2:after{content:"Qty";color:var(--jk-text-muted);padding-right:12px;font-family:inherit;font-size:13px;font-weight:400}#costs .data-table tbody tr:not(.total-row) td[data-label=Qty]{justify-content:flex-end}#costs .data-table tbody tr:not(.total-row) td[data-label=Qty]:before{content:none}:is(.job-cost-edit,.job-cost-add):has(input[name=markupPercent]){grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:12px;display:grid}:is(.job-cost-edit,.job-cost-add)>:not(.field:has(:is(input[name=quantity],input[name=markupPercent],input[name=unitCost],input[name=unitPrice]))){grid-column:1/-1}:is(.job-cost-edit,.job-cost-add)>.field:has(input[name=quantity]){order:1}:is(.job-cost-edit,.job-cost-add)>.field:has(input[name=markupPercent]){order:3}:is(.job-cost-edit,.job-cost-add)>.field:has(input[name=unitCost]){order:2}:is(.job-cost-edit,.job-cost-add)>.field:has(input[name=unitPrice]){order:4}.job-cost-edit>:is(.check-row,.form-actions,input[type=hidden]){order:5}:is(.job-cost-edit,.job-cost-add)>.field:has(:is(input[name=unitPrice],input[name=markupPercent]))>.hint{display:none}.job-cost-add>.inline-cost-actions{order:5}.job-cost-add>.inline-cost-more{order:6}.job-cost-edit>.form-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.job-cost-edit>.form-actions>.form-actions-end{margin:0;display:block}.job-cost-edit>.form-actions :is(button,a){width:100%;min-height:44px;margin:0}}.money-input{display:block;position:relative}.money-input:before{content:"$";color:var(--jk-text-muted);pointer-events:none;font-size:14px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.money-input>input:not([type=hidden]){width:100%;padding-left:24px}.cost-check-pair{grid-template-columns:repeat(2,max-content);align-items:center;gap:4px 20px;display:grid}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.cost-check-pair{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px}.cost-check-pair>.check-row{gap:6px;min-width:0}}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){:is(.job-cost-add>.field:has(input[name=lineAmount]),.job-cost-add>.inline-cost-actions){order:1}.job-cost-add>.inline-cost-more{order:2}}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.job-page:has(.job-tab-picker) .job-tabs{display:none}.job-tab-picker{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px;min-width:0;margin-bottom:12px;display:grid}.job-tab-picker>select{width:100%;min-width:0;height:44px;min-height:44px}.job-tab-picker>.status-select{min-width:0;display:block}.job-tab-picker>.status-select select.status-select-input{appearance:auto;width:100%;min-width:0;max-width:none;height:44px;min-height:44px;font-size:inherit;font-weight:inherit;line-height:inherit;text-align:start;text-align-last:auto;border-radius:var(--jk-radius);background-image:none;border:1px solid #0000;padding:8px 12px}#quotes .financial-table .data-table tbody tr{grid-template-columns:auto minmax(0,1fr) auto}#quotes .financial-table .data-table tbody td[data-label=Number]{grid-area:1/1}#quotes .financial-table .data-table tbody td[data-label=Number] .row-state-phone{display:none}#quotes .financial-table .data-table tbody td[data-label=Name]{grid-area:1/2/auto/4}#quotes>.financial-head:has(.quote-head-status){justify-content:space-between;align-items:center;gap:12px;display:flex}#quotes .quote-head-status{margin-right:0}#quotes .financial-table .data-table tbody td[data-label=Date]{text-align:left;grid-area:2/1/auto/3}#quotes .financial-table .data-table tbody td[data-label=Amount]{grid-area:2/3}}.file-row .file-name-after{min-width:0;color:var(--jk-text-muted);flex:1 1 0}@media (max-width:759px),(pointer:coarse) and (max-height:500px){#documents.job-panel>.col-reset-row{display:none}#documents.job-panel:has(>.col-reset-row)>.file-row{padding-right:0}#documents.job-panel .table-wrap{background:0 0;border:0;overflow:visible}#documents.job-panel .table-wrap:after{content:none}#documents.job-panel .data-table{display:block;width:100%!important;min-width:0!important}#documents.job-panel .data-table :is(colgroup,thead){display:none}#documents.job-panel .data-table tbody{gap:8px;display:grid}#documents.job-panel .data-table tbody tr{background:var(--jk-raised);border:1px solid var(--jk-border);border-radius:var(--jk-radius);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px;padding:8px 12px;display:grid}#documents.job-panel .data-table tbody td{white-space:normal;overflow-wrap:anywhere;border:0;min-width:0;height:auto;padding:0;display:block;overflow:visible;width:auto!important}#documents.job-panel .data-table tbody td:before{content:none}#documents.job-panel .data-table tbody td .cell-clip{white-space:normal;text-overflow:clip;max-width:none;overflow:visible}#documents.job-panel .data-table tbody td:not([data-label]),#documents.job-panel .data-table tbody td[hidden]{display:none}#documents.job-panel .data-table tbody td[data-label=Name]{grid-area:1/1/auto/3}#documents.job-panel .data-table tbody td[data-label=Delete]{grid-area:1/3/4;align-self:center}#documents.job-panel .data-table tbody td[data-label=Delete]:not(:has(form)){display:none}#documents.job-panel .data-table tbody td:is([data-label=Date],[data-label=Size],[data-label=Uploaded\ by]){color:var(--jk-text-muted);font-size:13px}#documents.job-panel .data-table tbody td[data-label=Date]{grid-area:2/1}#documents.job-panel .data-table tbody td[data-label=Size]{text-align:right;grid-area:2/2}#documents.job-panel .data-table tbody td[data-label=Uploaded\ by]{grid-area:3/1/auto/3}#documents.job-panel .data-table tbody td[data-label=Uploaded\ by]:before{content:"Uploaded by "}}#documents.job-panel .data-table tbody tr:has(.doc-row-link){cursor:pointer;position:relative}#documents.job-panel .data-table tbody td a.doc-row-link:after{content:"";z-index:1;position:absolute;inset:0}.doc-detail .doc-facts{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:8px 16px;margin:0 0 12px;display:grid}.doc-detail .doc-facts dt{color:var(--jk-text-muted);font-size:13px}.doc-detail .doc-facts dd{overflow-wrap:anywhere;margin:0}.doc-detail .doc-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.doc-detail .doc-actions .doc-back{margin-left:auto}.doc-detail .doc-preview iframe{border:1px solid var(--jk-border);border-radius:var(--jk-radius);background:#fff;width:100%;height:75vh;display:block}.doc-detail .doc-preview img{border-radius:var(--jk-radius);max-width:100%;height:auto;display:block}@media (max-width:759px),(pointer:coarse) and (max-height:500px){#documents.job-panel:not([hidden]){flex-direction:column;display:flex}#documents.job-panel>.file-row{margin:var(--jk-heading-gap) 0 0;flex-wrap:wrap;order:1;justify-content:flex-start}#documents.job-panel>.file-row>button{flex:none}#documents.job-panel>.file-row>.file-name-after{flex:1 1 0;min-width:0}}.doc-detail .doc-actions>.doc-delete-form{display:contents}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.doc-detail .doc-actions>:is(a,button).btn-primary{flex:none;justify-content:center;width:120px;padding-inline:16px}.doc-detail .doc-actions .doc-back{display:none}.doc-detail .doc-actions{z-index:6;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:var(--jk-bg);border-top:1px solid var(--jk-border);margin:0;position:fixed;bottom:0;left:0;right:0}.doc-detail{margin-bottom:calc(69px + env(safe-area-inset-bottom,0px))}}.po-create .po-head-row{flex-wrap:wrap;align-items:flex-start;gap:12px 16px;display:flex}.po-create .po-head-row>.field{flex:10rem;min-width:0;margin-bottom:0}.po-create .po-head-row>.field:has(select[name=supplierId]){flex-basis:14rem}.po-create .po-head-row :is(select,input:not([type=hidden])){min-height:44px}.po-create textarea.po-grow{resize:none;max-width:36rem;min-height:0;overflow:hidden}.po-create>.inline-cost{margin-top:12px}.po-create .po-head-row>.field:has(input[name=date]){flex:none}.purchases-list .data-table th[data-label=Customer],.purchases-list .data-table td[data-label=Customer]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.po-lines .po-lines-total{padding-right:var(--po-total-inset,13px);text-align:right;font-variant-numeric:tabular-nums;margin:0 0 8px;font-weight:600}.po-lines .po-lines-total>span{color:var(--jk-text-muted);margin-right:8px;font-weight:400}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.po-lines .po-lines-total{--po-total-inset:12px}#job-edit-form .form-grid:has(select[name=clientManagerStaffId],input[name=startDate]){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}#job-edit-form .form-grid:has(select[name=clientManagerStaffId],input[name=startDate])>*{grid-column:1/-1}#job-edit-form .form-grid>.field:is(:has(select[name=clientManagerStaffId]),:has(select[name=jobManagerStaffId]),:has(input[name=startDate]),:has(input[name=dueDate])){grid-column:auto;min-width:0}#job-edit-form :is(select[name=clientManagerStaffId],select[name=jobManagerStaffId]){text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;overflow:hidden}#job-edit-form .date-field:has(>input:is([name=startDate],[name=dueDate])){--date-w:100%}}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){#job-edit-form .form-grid:has(>.field input[name=startDate]){grid-template-columns:auto auto;justify-content:start}}.yes-no-switch{display:none}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.yes-no-select{display:none}.yes-no-switch{pointer-events:auto;align-items:center;width:64px;height:44px;display:inline-flex;position:relative}.yes-no-switch>input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;min-height:0;margin:0;position:absolute;inset:0}.yes-no-switch>.yes-no-track{background:#c4c7cc;border-radius:16px;width:52px;height:32px;transition:background-color .15s;position:relative}.yes-no-switch>.yes-no-track:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .15s;position:absolute;top:4px;left:4px;box-shadow:0 1px 3px #0000004d}.yes-no-switch>input:checked+.yes-no-track{background:#2e9d4f}.yes-no-switch>input:checked+.yes-no-track:after{transform:translate(20px)}.yes-no-switch>input:focus-visible+.yes-no-track{outline:2px solid var(--jk-accent,#2563eb);outline-offset:2px}.yes-no-switch>input:disabled+.yes-no-track{opacity:.5}}.device-type-combo{display:block;position:relative}.device-type-combo>.device-type-menu{z-index:60;pointer-events:auto;min-width:0;max-height:264px;margin:0;padding:4px 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.device-type-menu>.menu-item{min-height:44px;color:var(--jk-text);cursor:pointer;align-items:center;padding:8px 12px;display:flex}.device-type-menu>.menu-item:hover,.device-type-menu>.menu-item.is-active{background:var(--jk-hover)}.cis-types-list{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.cis-types-list>li,.cis-types-add{align-items:center;gap:8px;max-width:32rem;display:flex}.cis-types-list>li>input,.cis-types-add>input{flex:auto;min-width:0}.cis-types-list>li>button{flex:0 0 44px;min-width:44px;min-height:44px;padding:0}textarea.cis-notes{resize:none;overflow:hidden}.cis-day{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cis-day>.field{min-width:0}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.cis-hours>.cis-day>.cis-day-name{align-self:end;margin-bottom:8px;line-height:44px}}.cis-day-remove{align-self:end;min-height:44px}.cis-add-day{grid-column:1/-1;justify-self:start}.cis-add-day>select{width:auto;min-height:44px}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.cis-hours>.cis-day>.cis-day-name{grid-area:1/1;align-self:center}.cis-hours>.cis-day>.cis-day-remove{grid-area:1/2;justify-self:end}}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.cis-hours{grid-template-columns:8rem minmax(0,1fr) minmax(0,1fr) auto}.cis-hours>.cis-day>.cis-day-remove{margin-bottom:8px}}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.quotes-list .row-id-phone{flex-wrap:nowrap;gap:0}.quotes-list .row-id-phone .quote-list-number{min-width:calc(var(--quote-num,6ch) * .81 + 2ch + 8px);font-variant-numeric:tabular-nums;display:inline-block}.quotes-list .row-id-phone>.row-state-phone .pill{padding:.5px 3px;font-size:10px}.client-head-actions{z-index:6;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:var(--jk-bg);border-top:1px solid var(--jk-border);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;margin:0;display:grid;position:fixed;bottom:0;left:0;right:0}.client-head-actions>.btn-primary{white-space:nowrap;text-overflow:ellipsis;justify-content:center;width:100%;min-width:0;min-height:44px;padding-inline:4px;overflow:hidden}main:has(.client-head-actions){padding-bottom:calc(81px + env(safe-area-inset-bottom,0px))}.client-details-form .form-grid:has(>.field select[name=jobManagerStaffId]){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.client-details-form .form-grid:has(>.field select[name=jobManagerStaffId])>.field{min-width:0}.client-details-form .form-grid:has(>.field select[name=jobManagerStaffId]) select{text-overflow:ellipsis;width:100%;min-width:0}}.client-edit-bar .client-edit-error{flex:1 0 100%;margin:0}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.client-head-actions.is-editing{display:none}main:has(.client-head-actions.is-editing){padding-bottom:0}.client-edit-bar>.btn-primary{flex:1 1 0;justify-content:center;min-height:44px}:is(main:has(.quotes-list) .toolbar.list-toolbar,main:has(.quotes-list) .toolbar.list-toolbar:has(+.col-reset-row)){flex-wrap:nowrap;padding-right:0}main:has(.quotes-list) .toolbar.list-toolbar :is(.search-field,.filter-field){flex:1 1 0}main:has(.quotes-list) .toolbar.list-toolbar :is(input[type=search],select){height:44px;min-height:44px}main:has(.quotes-list) .toolbar.list-toolbar+.col-reset-row{height:auto;margin:calc(-1 * var(--jk-section-gap) + 8px) 0 var(--jk-section-gap);position:static}main:has(.quotes-list) .toolbar.list-toolbar+.col-reset-row .col-reset{top:0}}.contact-add-phone-cell{align-items:flex-end;display:flex}.contact-add-phone{min-height:44px;color:var(--jk-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.cis-row.cis-contacts{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.4fr) auto}}.client-contacts-edit>.cis-row:first-of-type{border-top:0;margin-top:0;padding-top:0}.address-suggest{display:block;position:relative}.address-suggest>.address-suggest-menu{z-index:60;pointer-events:auto;min-width:0;max-height:300px;margin:0;padding:4px 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.address-suggest-menu>.menu-item{min-height:44px;color:var(--jk-text);cursor:pointer;align-items:center;padding:8px 12px;line-height:1.3;display:flex}.address-suggest-menu>.menu-item:hover,.address-suggest-menu>.menu-item.is-active{background:var(--jk-hover)}textarea.cis-site-address{resize:none;overflow:hidden}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.cis-row.cis-contacts{grid-template-columns:auto minmax(0,1fr) auto;align-items:end}.cis-row.cis-contacts>*{grid-column:1/-1}.cis-row.cis-contacts:has(>.contact-add-phone-cell)>.field:has(input[name^=contactPhone1]){grid-column:1/3}.cis-row.cis-contacts>.contact-add-phone-cell{grid-column:3}.cis-row.cis-contacts>.contact-user-pick{grid-column:1;margin-bottom:0}.cis-row.cis-contacts>.contact-user-pick+.field{grid-column:2/-1}.contact-user-pick input{width:76px}.cis-row.cis-contacts>.cis-remove{order:99;grid-area:span 1/1/auto/-1;justify-self:start;width:100px;min-width:0;padding-inline:8px}.cis-row.cis-contacts>.contact-flags{flex-wrap:nowrap;order:98;gap:0 12px}.cis-row.cis-contacts>.contact-flags>.cis-auth{flex:1 1 0;min-width:0}.contact-add-phone{border:1px solid var(--jk-border);border-radius:var(--jk-radius);background:var(--jk-raised);min-height:44px;color:var(--jk-primary);white-space:nowrap;padding:0 16px;font-size:14px;font-weight:600;line-height:1.2}.contact-add-phone:hover{background:var(--jk-red-soft)}.cis-row .cis-auth{grid-template-columns:52px minmax(0,1fr);align-items:center;column-gap:10px}.cis-row .cis-auth input[type=checkbox]{min-width:52px;max-width:52px;max-height:32px;box-shadow:none;appearance:none;cursor:pointer;background:#c4c7cc;border:0;border-radius:16px;flex:none;width:52px;height:32px;min-height:0;margin:6px 6px 6px 0;transition:background-color .15s;position:relative}.cis-row .cis-auth input[type=checkbox]:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .15s;position:absolute;top:4px;left:4px;box-shadow:0 1px 3px #0000004d}.cis-row .cis-auth input[type=checkbox]:checked{box-shadow:none;background:#2e9d4f}.cis-row .cis-auth input[type=checkbox]:checked:after{transform:translate(20px)}.cis-row .cis-auth input[type=checkbox]:focus-visible{outline:2px solid var(--jk-accent,#2563eb);outline-offset:2px}.cis-row .cis-auth input[type=checkbox]:disabled{opacity:.5}}.contact-flags{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:0 24px;display:flex}@media (min-width:760px) and (not ((pointer:coarse) and (max-height:500px))){.cis-row.cis-contacts>.field:has(input[name^=contactPin]) .btn-neutral{min-width:0}.cis-row.cis-contacts>.contact-flags{white-space:nowrap;flex-wrap:nowrap;grid-column:3/-1;align-self:end;gap:0 16px;min-height:44px}.cis-row.cis-contacts{grid-template-columns:auto minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.4fr) auto}.cis-row.cis-contacts>.contact-user-pick{grid-column:1}.cis-row.cis-contacts>.field:has(input[name^=contactPin]){grid-column:2}.cis-row.cis-contacts>.contact-flags{grid-column:3/-1}.contact-user-pick input{width:76px}}.cis-system{flex-direction:column;gap:4px;display:flex}.cis-system>.field,.cis-device-block .field{min-width:0;margin-bottom:0}.cis-device-block{flex-direction:column;gap:4px;display:flex}.cis-device-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 12px;display:grid}.cis-system .facts,.cis-device-pair .facts{margin:0}.client-device-block{margin-bottom:8px}.client-system-top{grid-template-columns:repeat(3,minmax(8.5rem,1fr));gap:4px 12px;display:grid}.client-system-top .facts{margin:0}.client-system-top .facts>div>span:first-child,.client-system-top .field-label{white-space:nowrap}.client-system-top>.field{min-width:0;margin-bottom:0}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.client-system-top{grid-template-columns:minmax(0,1fr)}.client-system-top.client-box-grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.client-box-grid>.cb-wide{grid-column:1/-1}.client-box-grid>.cb-o1{order:1}.client-box-grid>.cb-o2{order:2}.client-box-grid>.cb-o3{order:3}.client-box-grid>.cb-o4{order:4}.client-box-grid>.cb-o5{order:5}.client-box-grid>.facts{min-width:0}}.client-device-block .client-device-remove{margin-top:4px}.cis-notes-view{white-space:pre-wrap;overflow-wrap:anywhere}.comm-device-type{gap:8px;min-width:0;display:grid}.comm-device-type>.comm-device-type-open{justify-self:start}.comm-device-type-add{gap:8px;display:grid}.comm-device-type-actions{flex-wrap:wrap;gap:8px;display:flex}.sysdet{display:contents}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.sysdet{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;min-width:0;display:grid}.sysdet .client-system-top,.sysdet .client-device-list,.sysdet .client-device-block{display:contents}.sysdet .sd-top>:first-child{grid-area:1/1}.sysdet .sd-top>:nth-child(2){grid-area:2/1}.sysdet .sd-top>:nth-child(3){grid-area:3/1}.sysdet .sd-dev>:first-child{grid-column:2;grid-row:var(--sd-r1)}.sysdet .sd-dev>:nth-child(2){grid-column:2;grid-row:var(--sd-r2)}.sysdet .sd-dev>:nth-child(3){grid-column:2;grid-row:var(--sd-r3)}.sysdet .sd-top>*,.sysdet .sd-dev>*{min-width:0}.sysdet .empty{grid-area:1/2;margin:0}.sysdet .error,.sysdet .client-device-add{grid-column:1/-1}.tab-strip:has(+.client-tab-picker){display:none}.job-tab-picker.client-tab-picker{grid-template-columns:minmax(0,1fr)}.record-header.client-tab-header,.client-jobs .table-wrap .data-table :is(th,td)[data-label=State]{display:none}.client-jobs .table-wrap .data-table tbody td{padding-top:4px;padding-bottom:4px}.client-jobs .table-wrap .data-table td .row-id-phone>.row-state-phone .pill{flex:0 0 84px;width:84px;min-width:84px;max-width:84px;height:15px;padding:1.5px 6px;font-size:8.5px}.client-quotes .data-table :is(th,td):is([data-label=Status],[data-label=Job\ description]){display:none}.client-quotes .data-table tbody td{padding-top:4px;padding-bottom:4px}.client-quotes .data-table td .row-id-phone.client-quote-phone{flex-wrap:wrap;align-items:center;gap:0 14px;width:14rem;max-width:14rem}.client-quotes .data-table td .row-id-phone:has(.client-quote-phone)>.row-state-phone{display:none}.client-quote-phone>.cell-clip>a{min-width:3.5rem}.client-quote-phone>.row-state-phone .pill{flex:0 0 84px;width:84px;min-width:84px;max-width:84px;height:15px;margin-inline:0;padding:1.5px 6px;font-size:8.5px}.client-quote-phone>.client-quote-name{white-space:nowrap;text-overflow:ellipsis;flex:0 0 100%;min-width:0;overflow:hidden}.client-tab-picker~:is(#jobs,#quotes,#invoices,#notes,#documents,#history)>h2:first-child,.client-tab-picker~:is(#jobs,#quotes,#invoices,#notes,#documents,#history)>.panel:first-child>h2:first-child{display:none}:is(.client-jobs .table-wrap .data-table td .row-id-phone>.row-state-phone,.data-table td) .pill.is-status{align-items:center;padding-top:.16em;padding-bottom:0;line-height:1;display:inline-flex}:is(.client-jobs .table-wrap .data-table td .row-id-phone>.row-state-phone,.client-quote-phone>.row-state-phone) .pill.is-status{padding-top:calc(.16em + 1px)}.tab-strip:has(+.quote-tab-picker){display:none}.job-tab-picker.quote-tab-picker{grid-template-columns:minmax(0,1fr)}.col-reset-row,.col-reset{display:none!important}}@media (max-width:759px) and (orientation:portrait),(pointer:coarse) and (max-height:500px) and (orientation:portrait){.client-jobs .table-wrap .data-table :is(th,td):is([data-label=Assigned],[data-label=Used],[data-label="Time %"]),.client-jobs .table-wrap .data-table :is(th,td).col-fill{display:none}.jobs-table.client-jobs .table-wrap:not(.time-sheet):not(.cols-locked) .data-table:not([data-a]):not([data-b]){table-layout:auto!important;width:100%!important;min-width:0!important}.jobs-table.client-jobs .table-wrap:not(.time-sheet):not(.cols-locked) .data-table:not([data-a]):not([data-b]) col{width:auto!important}.client-jobs .table-wrap .data-table td .row-id-phone{width:13rem;max-width:13rem}.client-jobs .table-wrap:not(.cols-locked) .data-table :is(th,td)[data-label=Date]{width:100%}}@media (max-width:759px) and (orientation:landscape),(pointer:coarse) and (max-height:500px) and (orientation:landscape){:is(.client-jobs,.client-quotes,.jobs-table.has-client,.quotes-list) .data-table .col-resize{display:block}:is(.client-jobs,.client-quotes,.jobs-table.has-client,.quotes-list).table-wrap.cols-locked:not(.time-sheet) .data-table:not([data-a]),:is(.client-jobs,.client-quotes,.jobs-table.has-client,.quotes-list) .table-wrap.cols-locked:not(.time-sheet) .data-table:not([data-a]){width:max(100%, var(--cols-total,100%))!important;min-width:max(100%, var(--cols-total,100%))!important;table-layout:fixed!important}.client-jobs .table-wrap:not(.time-sheet):not(.cols-locked) .data-table:not([data-a]),.client-quotes.table-wrap:not(.time-sheet):not(.cols-locked) .data-table:not([data-a]){width:auto!important}:is(.client-jobs,.client-quotes,.jobs-table.has-client,.quotes-list) .table-wrap.cols-locked .data-table td .row-id-phone,:is(.client-jobs,.client-quotes,.jobs-table.has-client,.quotes-list).table-wrap.cols-locked .data-table td .row-id-phone{max-width:100%}}@media (max-width:759px),(pointer:coarse) and (max-height:500px){form.job-create .form-grid:has(>* [name=startDate]):has(>* [name=dueDate]){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}form.job-create .form-grid:has(>* [name=startDate])>*{min-width:0}form.job-create .form-grid:has(>* [name=startDate]) input{width:100%;min-width:0;max-width:100%}}@media (max-width:759px) and (orientation:portrait),(pointer:coarse) and (max-height:500px) and (orientation:portrait){.client-jobs .table-wrap .data-table :is(th,td)[data-label=Date]{text-align:right}.client-jobs .table-wrap .data-table th[data-label=Date] .sort-label{margin-left:auto}.client-quotes.table-wrap:not(.time-sheet):not(.cols-locked) .data-table:not([data-a]):not([data-b]){table-layout:auto!important;width:100%!important;min-width:0!important}.client-quotes.table-wrap:not(.time-sheet):not(.cols-locked) .data-table:not([data-a]):not([data-b]) col{width:auto!important}.client-quotes.table-wrap:not(.cols-locked) .data-table :is(th,td):first-child{width:100%;max-width:0;padding-right:4px}.client-quotes.table-wrap:not(.cols-locked) .data-table :is(th,td):is([data-label=Date],[data-label=Total]){white-space:nowrap;width:1%;padding-left:4px;padding-right:4px}.client-quotes.table-wrap .data-table :is(th,td)[data-label=Total]{text-align:right;padding-right:12px}.client-quotes.table-wrap .data-table td .row-id-phone,.client-quotes.table-wrap .data-table td .row-id-phone.client-quote-phone{width:auto;min-width:0;max-width:100%}.client-quotes.table-wrap .data-table td .cell-clip{min-width:0;max-width:100%}}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.client-invoices.table-wrap .data-table td .row-id-phone{align-items:center;gap:0 14px}.client-invoices.table-wrap .data-table td .row-id-phone>.cell-clip{flex:none;min-width:3.5rem}.client-invoices.table-wrap .data-table td .row-id-phone>.row-state-phone .pill.is-status{flex:0 0 84px;width:84px;min-width:84px;max-width:84px;height:15px;margin-inline:0;padding:calc(.16em + 1px) 6px 0;font-size:8.5px;line-height:1}}@media (max-width:759px) and (orientation:portrait),(pointer:coarse) and (max-height:500px) and (orientation:portrait){.client-invoices.table-wrap .data-table :is(th,td)[data-label=Type]{display:none}.client-invoices.table-wrap:not(.time-sheet):not(.cols-locked) .data-table:not([data-a]):not([data-b]){table-layout:auto!important;width:100%!important;min-width:0!important}.client-invoices.table-wrap:not(.time-sheet):not(.cols-locked) .data-table:not([data-a]):not([data-b]) col{width:auto!important}.client-invoices.table-wrap:not(.cols-locked) .data-table :is(th,td):first-child{width:100%;padding-right:4px}.client-invoices.table-wrap:not(.cols-locked) .data-table :is(th,td):is([data-label=Date],[data-label=Total]){white-space:nowrap;width:1%;padding-left:4px;padding-right:4px}.client-invoices.table-wrap .data-table :is(th,td)[data-label=Total]{text-align:right;padding-right:12px}.client-invoices.table-wrap .data-table th[data-label=Total]{text-align:left}.client-invoices.table-wrap .data-table th[data-label=Total] .sort-label{margin-left:0}.client-jobs .table-wrap .data-table td[data-label=Date] .cell-clip{text-align:right;width:100%;max-width:none;display:block}}@media (max-width:759px),(pointer:coarse) and (max-height:500px){.table-wrap.cols-locked .data-table td .row-id-phone{max-width:100%;overflow:hidden}}@media (max-width:759px) and (orientation:portrait),(pointer:coarse) and (max-height:500px) and (orientation:portrait){.client-quotes.table-wrap .data-table th[data-label=Total]{text-align:left}.client-quotes.table-wrap .data-table th[data-label=Total] .sort-label{margin-left:0}.client-jobs .table-wrap .data-table th[data-label=Date]{text-align:right}.client-jobs .table-wrap .data-table th[data-label=Date]>.sort-label{text-align:left;width:84px;margin-left:0;display:inline-block}}@media (max-width:759px) and (orientation:landscape),(pointer:coarse) and (max-height:500px) and (orientation:landscape){.data-table td .row-id-phone:has(.row-id-phone)>.row-state-phone{display:none}.table-wrap .data-table>thead{position:relative}.table-wrap .data-table>thead:after{content:"";border-bottom:1px solid #0000;border-image:linear-gradient(var(--jk-border), var(--jk-border)) 0 0 1 0 / 0 0 1px 0 / 0 100vw 0 0;pointer-events:none;height:0;position:absolute;bottom:0;left:0;right:0}.table-wrap.row-rules-host>.row-rules{min-width:100%}}@media (max-width:759px) and (orientation:portrait){.panel:not(.panel .panel):not(.client-cis-page *):has(.panel,.table-wrap){box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0}.panel:not(.panel .panel):not(.client-cis-page *):has(.panel,.table-wrap)>:is(h2,h3):first-child{margin:0 0 8px}#labour .table-wrap,#labour .table-wrap.cols-locked{overflow-x:visible}#labour .table-wrap .data-table{table-layout:auto!important;width:100%!important;min-width:0!important;max-width:100%!important}#labour .table-wrap .data-table :is(col,th,td){width:auto!important;min-width:0!important;max-width:none!important}#custom-fields>.panel:not(.client-cis-page *){box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0}#custom-fields>.panel:not(.client-cis-page *)>h3:first-child{margin:0 0 8px}}@media (max-width:759px) and (orientation:landscape),(pointer:coarse) and (max-height:500px) and (orientation:landscape){.table-wrap.cols-locked:not(.time-sheet) .data-table:not([data-a]):not([data-b]):not([data-c]){width:var(--cols-total,100%)!important;min-width:var(--cols-total,100%)!important}}@media (max-width:759px) and (orientation:portrait){section.panel.record-header:not(.client-tab-header):has(~nav.client-tab-home){display:none}#labour .table-wrap .data-table.labour-total-table{table-layout:fixed!important}#labour .table-wrap .data-table.labour-total-table col{width:var(--w,auto)!important}.po-lines .table-wrap:not(.cols-locked) .data-table{table-layout:auto!important;width:max-content!important;min-width:100%!important;max-width:none!important}.po-lines .table-wrap:not(.cols-locked) .data-table col{width:auto!important}.po-lines .table-wrap:not(.cols-locked) .data-table :is(th,td){white-space:nowrap;width:auto!important;max-width:none!important}.po-lines .table-wrap:not(.cols-locked) .data-table :is(.cell-clip,.clip){text-overflow:clip;max-width:none;overflow:visible}}.invoice-client-phone{display:none}@media (max-width:759px) and (orientation:portrait){.invoices-list .data-table :is(th,td):not(:first-child){display:none}.invoices-list .data-table:not([data-a]):not([data-b]):not([data-c]){table-layout:auto!important;width:100%!important;min-width:0!important;max-width:100%!important}.invoices-list .data-table col{width:auto!important;min-width:0!important;max-width:none!important}.invoices-list .data-table :is(th,td):first-child{width:auto!important;max-width:none!important}.invoices-list .data-table td .row-id-phone{flex-wrap:wrap;align-items:center;gap:2px 14px;width:100%;max-width:100%;display:flex}.invoices-list .data-table td .row-id-phone>.cell-clip{display:contents}.invoices-list .data-table td .row-id-phone>.cell-clip>a{flex:none;order:1;min-width:3.5rem}.invoices-list .data-table td .row-id-phone>.row-state-phone{flex:none;order:2}.invoices-list .data-table td .row-id-phone>.row-state-phone .pill.is-status{width:84px;min-width:84px;max-width:84px;height:15px;margin-inline:0;padding:calc(.16em + 1px) 6px 0;font-size:8.5px;line-height:1}.invoices-list .data-table th:first-child>a{margin-left:0;padding-left:0}.invoices-list .data-table td .row-id-phone .invoice-client-phone{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--jk-subtle);flex:0 0 100%;order:3;display:block;overflow:hidden}.service-schedule-list .data-table :is(th,td):not(:first-child){display:none}.service-schedule-list .data-table:not([data-a]):not([data-b]):not([data-c]){table-layout:fixed!important;width:100%!important;min-width:0!important;max-width:100%!important}.service-schedule-list .data-table col:not(:first-child){width:0!important}.service-schedule-list .data-table col,.service-schedule-list .data-table :is(th,td):first-child{width:auto!important;min-width:0!important;max-width:none!important}.service-schedule-list .data-table th:first-child>a{margin-left:0;padding-left:0}.service-schedule-list .data-table td .row-id-phone{align-items:center;gap:0 14px;width:100%;max-width:100%;display:flex}.service-schedule-list .data-table td .row-id-phone>.cell-clip{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;max-width:none;overflow:hidden}.service-schedule-list .data-table td .row-id-phone>.row-state-phone{flex:none;margin-left:auto}.service-schedule-list .data-table td .row-id-phone>.row-state-phone .pill-row{gap:4px;display:flex}.service-schedule-list .data-table td .row-id-phone>.row-state-phone .pill.is-status{width:84px;min-width:84px;max-width:84px;height:15px;margin-inline:0;padding:calc(.16em + 1px) 6px 0;font-size:8.5px;line-height:1}.pdf-card .pdf-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;height:72vh;min-height:420px;overflow:auto}.staff-list .data-table :is(th,td):not(:first-child){display:none}.staff-list .data-table:not([data-a]):not([data-b]):not([data-c]){table-layout:fixed!important;width:100%!important;min-width:0!important;max-width:100%!important}.staff-list .data-table:not([data-a]):not([data-b]):not([data-c]) col:not(:first-child){width:0!important}.staff-list .data-table:not([data-a]):not([data-b]):not([data-c]) col:first-child{width:100%!important;min-width:0!important;max-width:none!important}.staff-list .data-table :is(th,td):first-child{width:auto!important;min-width:0!important;max-width:none!important}.staff-list .data-table th:first-child>a{margin-left:0;padding-left:0}.staff-list .data-table td .row-id-phone>.cell-clip{text-overflow:ellipsis;white-space:nowrap;max-width:none;overflow:hidden}.client-jobs .table-wrap .data-table:not([data-a])>tbody>tr>td[data-label=Date]{vertical-align:middle;text-align:right;color:var(--jk-text-muted);font-size:14px;font-weight:400}.client-jobs .table-wrap .data-table td[data-label=Date]>.cell-clip,.client-jobs .table-wrap .data-table td[data-label=Date] .nowrap{text-align:right;color:inherit}.client-jobs .table-wrap .data-table th[data-label=Date]{text-align:right}.client-jobs .table-wrap .data-table th[data-label=Date]>.sort-label{width:var(--fit-text,84px);text-align:left;margin-left:0;display:inline-block}:is(.client-invoices,.client-quotes).table-wrap .data-table:not([data-a])>tbody>tr>td{vertical-align:middle}:is(.client-invoices,.client-quotes).table-wrap .data-table:not([data-a])>tbody>tr>td .row-id-phone{align-items:center}:is(.client-invoices,.client-quotes).table-wrap .data-table:not([data-a])>tbody>tr>td .row-id-phone>.row-state-phone{line-height:0}.client-invoices.table-wrap .data-table:not([data-a]) :is(th,td):is([data-label=Date],[data-label=Total]){padding-left:6px;padding-right:6px}.client-invoices.table-wrap .data-table:not([data-a]) :is(th,td):first-child{padding-right:0}.client-notes.section-anchor{flex-direction:column;gap:16px;display:flex}.client-notes.section-anchor>form.panel{order:-1;margin:0}.client-notes.section-anchor>.panel.client-notes-list{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0 4px}}@media (min-width:1024px) and (hover:hover) and (pointer:fine){.record-header.client-tab-header{display:none}}@media (max-width:759px) and (orientation:portrait){.client-jobs .table-wrap .data-table:not([data-a])>tbody>tr>td:first-child,.client-jobs .table-wrap .data-table:not([data-a])>tbody>tr>td:first-child>.cell-clip,.client-jobs .table-wrap .data-table:not([data-a])>tbody>tr>td:first-child .row-id-phone,.client-jobs .table-wrap .data-table:not([data-a])>tbody>tr>td:first-child .row-id-phone>.cell-clip{overflow:visible}.client-jobs .table-wrap .data-table:not([data-a])>tbody>tr>td:first-child .job-name{width:calc(100% + var(--fit-spare,0px) + 14px);flex:0 0 calc(100% + var(--fit-spare,0px) + 14px);flex-wrap:nowrap;max-width:none}.client-jobs .table-wrap .data-table:not([data-a])>tbody>tr>td:first-child .job-name-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#costs .data-table tbody tr:not(.total-row){grid-template-columns:minmax(0,1fr) auto}#costs .data-table tbody tr:not(.total-row) td[data-label=Date]{grid-area:1/1}#costs .data-table tbody tr:not(.total-row) td[data-label=Description]{grid-area:2/1/auto/-1}#costs .data-table tbody tr:not(.total-row) td[data-label=Qty]{grid-area:1/2}}.invoice-line-date{display:none}@media (max-width:759px) and (orientation:portrait){#lines .invoice-block .invoice-block-head{align-items:baseline;display:flex}#lines .invoice-block .invoice-block-head>h2{flex:auto;justify-content:space-between;align-items:baseline;gap:12px;display:flex}#lines .invoice-block .invoice-block-head>h2:after{content:"Qty";color:var(--jk-text-muted);padding-right:12px;font-family:inherit;font-size:13px;font-weight:400}#lines .invoice-block .invoice-lines{flex-direction:column;gap:8px;display:flex;overflow:visible;min-width:0!important}#lines .invoice-block .invoice-lines .invoice-line-head{display:none}#lines .invoice-block .invoice-lines .invoice-line-row{background:var(--jk-raised);border:1px solid var(--jk-border);border-radius:var(--jk-radius);grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;width:auto;min-width:0;margin:0 0 8px;padding:8px 12px;display:grid;position:relative;height:auto!important;min-height:0!important;max-height:none!important}#lines .invoice-block .invoice-lines .invoice-line-row:has(>.invoice-line-handle){margin-left:22px}#lines .invoice-block .invoice-lines .invoice-line-row>.invoice-line-handle{justify-content:center;width:22px;display:flex;position:absolute;top:50%;left:-22px;transform:translateY(-50%)}#lines .invoice-block .invoice-lines .invoice-line-row>.invoice-line-date{white-space:nowrap;grid-area:1/1;font-size:14px;line-height:1.4;display:block}#lines .invoice-block .invoice-lines .invoice-line-row>.invoice-line-name{white-space:normal;grid-area:2/1/auto/-1;min-width:0;font-weight:700;line-height:1.4}#lines .invoice-block .invoice-lines .invoice-line-row>.invoice-line-name :is(.cell-clip,a){white-space:normal;text-overflow:clip;overflow-wrap:anywhere;overflow:visible}#lines .invoice-block .invoice-lines .invoice-line-row>.invoice-line-num{display:none}#lines .invoice-block .invoice-lines .invoice-line-row>.invoice-line-num:nth-child(1 of .invoice-line-num){text-align:right;white-space:nowrap;grid-area:1/2;line-height:1.4;display:block}#lines .invoice-block .strip,#lines .invoice-block [class*=invoice-strip]{display:none}.panel:not(.panel .panel):not(.client-cis-page *):not(.client-cis-page):is(:has(>:is(h2,h3):first-child),:has(>.invoice-block-head:first-child)){box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0}.panel:not(.panel .panel):not(.client-cis-page *):not(.client-cis-page):has(>:is(h2,h3):first-child)>:is(h2,h3):first-child{margin:0 0 8px}#lines .invoice-block .invoice-lines{background:0 0;border:0;border-radius:0}#lines .invoice-block .invoice-lines .invoice-line-row:not(:has(>.invoice-line-date))>.invoice-line-name{grid-area:1/1}#lines .invoice-block .invoice-lines .invoice-line-row:not(:has(>.invoice-line-date)){grid-template-rows:auto}.quote-lines :is(#tasks,#costs,#optional)>h2{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.quote-lines :is(#tasks,#costs,#optional):has(td[data-label=Qty])>h2:after{content:"Qty";color:var(--jk-text-muted);padding-right:12px;font-family:inherit;font-size:13px;font-weight:400}.quote-lines :is(#tasks,#costs,#optional) .table-wrap{background:0 0;border:0;border-radius:0;overflow:visible}.quote-lines :is(#tasks,#costs,#optional) .data-table:not([data-a]){display:block;width:100%!important;min-width:0!important;max-width:100%!important}.quote-lines :is(#tasks,#costs,#optional) .data-table :is(colgroup,thead){display:none}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody{display:block}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody tr{background:var(--jk-raised);border:1px solid var(--jk-border);border-radius:var(--jk-radius);isolation:auto;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:2px 12px;margin:0 0 8px;padding:8px 12px;display:grid;position:relative}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody tr:before{content:none}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody tr:not(.total-row) td{background:0 0;border:0;min-width:0;max-width:none;padding:0;line-height:1.4;display:block;width:auto!important}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody tr:not(.total-row) td:before{content:none}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody tr:not(.total-row) td:is([data-label=Price],[data-label=Amount],.col-fill){display:none}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody tr:not(.total-row) td[data-label=Description]{grid-area:1/1;font-weight:700}.quote-lines #tasks .data-table tbody tr:not(.total-row) td[data-label=Description]{font-weight:400}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody tr:not(.total-row) td[data-label=Description] :is(.cell-clip,a){white-space:normal;text-overflow:clip;overflow-wrap:anywhere;overflow:visible}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody tr:not(.total-row) td[data-label=Description] .labour-rate-note{color:var(--jk-text-muted);font-weight:400}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody tr:not(.total-row) td[data-label=Qty]{text-align:right;white-space:nowrap;grid-area:1/2}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody tr:not(.total-row) td[data-label=Remove]{grid-area:2/2;justify-self:end}.quote-lines :is(#tasks,#costs,#optional) .data-table tbody tr:not(.total-row) td[data-label=Description] a.drill-link:after{left:0}}
