/* Focus job workspace. Uses the existing Field palette, density and text preferences. */
.jtabs.job-tabs .job-tools-button { flex: .85 1 0; }
.job-panels { min-width: 0; }
.jhead .jh-navy { padding: 13px 15px; }
.jhead .goldln { font-size: 11px; line-height: 1.5; overflow-wrap: anywhere; }
.job-start-cockpit { border-top: 0; border: 1px solid var(--line); border-radius: 15px; box-shadow: 0 4px 14px rgba(15,54,83,.06); }
.job-focus-brief { padding: 16px 16px 12px; }
.job-focus-brief .eyebrow,.job-focus-work-actions .eyebrow,.job-tools-head .eyebrow { color: var(--sea); font-size: 10px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.job-focus-brief h2,.job-focus-work-actions h2 { color: var(--navy); font-size: 20px; line-height: 1.25; margin: 5px 0 6px; overflow-wrap: anywhere; }
.job-focus-brief p,.job-focus-work-actions p { color: var(--mut); font-size: 13px; line-height: 1.45; margin: 0 0 9px; }
.job-focus-instructions summary { color: var(--sea); font-size: 12px; font-weight: 750; padding: 8px 0; cursor: pointer; }
.job-focus-instructions .btn { margin: 10px 5px 0 0; }
.job-focus-contact { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 15px 12px; padding: 12px; background: var(--bg); border: 1px solid var(--line); border-radius: 12px; }
.job-focus-contact > span { display: grid; gap: 3px; min-width: 0; overflow-wrap: anywhere; }
.job-focus-contact b { color: var(--navy); font-size: 14px; }
.job-focus-contact small { color: var(--mut); font-size: 11.5px; line-height: 1.3; }
.job-focus-contact .job-contact-call { width: auto; min-width: 78px; min-height: 46px; flex: none; margin: 0; padding: 9px 12px; }
.job-start-cockpit .job-next-action { display: grid; grid-template-columns: minmax(0,1fr); gap: 10px; margin: 0 15px 12px; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--card); }
.job-start-cockpit .job-next-action.is-warning { background: var(--warnbg); border-color: var(--warn); }
.job-next-action-copy b { font-size: 16px; line-height: 1.3; }
.job-next-action-copy small { font-size: 12px; line-height: 1.4; }
.job-start-cockpit .job-next-action-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
.job-start-cockpit .job-next-action-buttons .btn { min-height: 46px; flex: 1 1 auto; margin: 0; }
.job-focus-status { display: flex; flex-wrap: wrap; gap: 5px 16px; padding: 0 16px 13px; color: var(--mut); font-size: 11.5px; line-height: 1.4; }
.job-focus-status b { color: var(--ink); font-weight: 700; }
.job-focus-access,.job-focus-stock { border-top: 1px solid var(--line); }
.job-focus-access > summary,.job-focus-stock > summary { padding: 14px 16px; color: var(--navy); font-size: 13px; font-weight: 800; cursor: pointer; }
.job-focus-access > summary small,.job-focus-stock > summary small { color: var(--mut); font-size: 11px; font-weight: 500; margin-left: 7px; }
.job-focus-access .job-contact-mini,.job-focus-stock .job-stock-mini { border: 0; border-radius: 0; background: var(--card); padding: 0 16px 15px; }
.job-focus-access p { font-size: 12.5px; line-height: 1.4; color: var(--mut); }
.job-prep-details { margin-top: 12px; border: 1px solid var(--line); border-radius: 13px; box-shadow: none; }
.job-prep-details > summary { font-size: 13px; }
.job-focus-work-actions { padding: 17px; border: 1px solid var(--line); border-radius: 15px; box-shadow: 0 4px 14px rgba(15,54,83,.06); }
.job-focus-work-actions .job-focus-add-photo { margin: 9px 0 12px; width: 100%; min-height: 48px; }
.job-focus-secondary-actions { display: flex; gap: 9px; }
.job-focus-secondary-actions .btn { flex: 1 1 0; min-width: 0; min-height: 44px; margin: 0; }
.job-focus-scope { padding: 0; border: 1px solid var(--line); border-radius: 13px; box-shadow: none; overflow: hidden; }
.job-focus-scope > summary { display: flex; justify-content: space-between; align-items: center; padding: 16px; color: var(--navy); font-size: 14px; font-weight: 800; cursor: pointer; list-style: none; }
.job-focus-scope > summary::-webkit-details-marker { display: none; }
.job-focus-scope-summary small { display: block; margin-top: 4px; color: var(--mut); font-size: 11.5px; font-weight: 500; }
.job-focus-scope[open] > summary > span:last-child { transform: rotate(90deg); }
.job-focus-scope-body { border-top: 1px solid var(--line); padding: 15px; }
.job-focus-back { min-height: 44px; margin: 0 0 13px; }
.job-focus-record-time { min-height: 46px; margin: 0 0 12px; }
.job-focus-safety { border-left: 4px solid var(--warn); background: var(--warnbg); color: var(--ink); padding: 13px; font-size: 12px; }
.job-focus-safety p { font-size: 12px; }
.job-tools-dialog { width: min(480px,calc(100% - 24px)); max-height: calc(100dvh - 30px); padding: 0; border: 1px solid var(--line); border-radius: 20px; background: var(--card); color: var(--ink); box-shadow: 0 20px 80px rgba(0,0,0,.35); overflow: auto; }
.job-tools-dialog::backdrop { background: rgba(12,30,50,.55); }
.job-tools-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 18px 14px; border-bottom: 1px solid var(--line); }
.job-tools-head h2 { color: var(--navy); font-size: 21px; margin: 4px 0 0; }
.job-tools-close { display: grid; place-items: center; width: 44px; height: 44px; flex: none; font: inherit; font-size: 27px; color: var(--navy); background: var(--bg); border: 1px solid var(--line); border-radius: 50%; cursor: pointer; }
.job-tools-list { display: grid; padding: 6px 16px 14px; }
.job-tools-list button { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 3px; min-height: 64px; text-align: left; color: var(--navy); background: none; border: 0; border-bottom: 1px solid var(--line); font: inherit; cursor: pointer; }
.job-tools-list button:last-child { border-bottom: 0; }
.job-tools-list small { display: block; color: var(--mut); font-size: 12px; margin-top: 4px; line-height: 1.3; }
.job-tools-list button:focus-visible,.job-tools-close:focus-visible,.job-focus-scope summary:focus-visible,.job-focus-instructions summary:focus-visible { outline: 3px solid var(--sea); outline-offset: 3px; }
html[data-theme="dark"] .job-start-cockpit .job-next-action.is-warning { background: var(--warnbg); }
html[data-theme="dark"] .job-focus-contact { background: #0d1a2a; }
html[data-theme="dark"] .job-focus-access .job-contact-mini,html[data-theme="dark"] .job-focus-stock .job-stock-mini { background: var(--card); }
@media(max-width:619px) {
  .jtabs.job-tabs .jtab { flex-direction: row; gap: 5px; font-size: 12px; min-height: 48px; }
  .jtabs.job-tabs .jtab .ic { width: 15px; height: 15px; }
  .job-panel-work .job-active-time { padding: 15px; border-radius: 15px; }
  .job-panel-work .job-active-time-main b { font-size: 21px; }
  .job-panel-work .job-active-time-main small { font-size: 11.5px; }
  .job-tools-dialog { margin: auto auto 12px; }
}
@media(min-width:620px) {
  .job-start-cockpit .job-next-action { grid-template-columns: minmax(0,1fr) auto; align-items: center; }
}
.jhead { padding: 0; overflow: hidden; border-radius: 14px; }
.job-focus-context-details { margin-top: 8px; }
.job-focus-context-details summary { font-size: 11px; color: #e0eafa; cursor: pointer; }
.job-focus-brief h2,.job-focus-work-actions h2 { text-transform: none; letter-spacing: normal; }
html[data-theme="dark"] .job-panel-work .btn:not(.sub),html[data-theme="dark"] .job-focus-record-time { color: #fff; background: linear-gradient(135deg,#24578c,#315f97); border-color: #4f7fb2; }
html[data-theme="dark"] .job-panel-work .job-active-time-icon { color: #102033; }
.job-focus-contact .job-contact-call:not(:disabled),html[data-theme="dark"] .job-start-cockpit .job-contact-call:not(:disabled) { color: #fff; background: linear-gradient(135deg,#1c7146,#17633e); border-color: #17633e; text-decoration: none; }
.job-focus-contact .job-contact-navigate { min-height: 46px; width: auto; flex: none; margin: 0; text-decoration: none; }
.job-focus-boxes { margin: 0 15px 13px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--bg); }
.job-focus-boxes-head { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 5px 10px; }
.job-focus-boxes-head b { color: var(--navy); font-size: 13px; }
.job-focus-boxes small { color: var(--mut); font-size: 11px; line-height: 1.35; }
.job-focus-boxes ul { list-style: none; margin: 8px 0 0; padding: 0; }
.job-focus-boxes li { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 9px; align-items: center; padding: 7px 0; }
.job-focus-boxes li + li { border-top: 1px solid var(--line); }
.job-focus-boxes li b { display: block; color: var(--navy); font-size: 13px; overflow-wrap: anywhere; }
.job-focus-boxes li small { display: block; margin-top: 3px; overflow-wrap: anywhere; }
.job-focus-boxes li .btn { min-height: 44px; min-width: 48px; margin: 0; }
.job-focus-boxes p { color: var(--mut); font-size: 12px; margin: 10px 0 0; }
@media(max-width:619px) {
  .job-focus-contact { flex-direction: column; align-items: stretch; gap: 9px; }
  .job-focus-contact .job-contact-call,.job-focus-contact .job-contact-navigate { width: 100%; min-height: 48px; }
}
@media(min-width:620px) {
  .job-focus-contact { flex-wrap: wrap; }
  .job-focus-contact > span { flex: 1 1 180px; }
}
