/* Shared job navigation; a compact, single summary on laptop. */
.job-overview-dashboard{display:none}
.job-workspace [data-job-task-active]{scroll-margin-top:calc(68px + var(--sp-env-banner,0px))}
.route-jobs .job-overview-nav{position:sticky;top:var(--sp-env-banner,0px);z-index:12;background:var(--bg);display:flex;align-items:center;gap:4px 24px;min-height:48px;overflow-x:auto;border-bottom:1px solid var(--jobs-line,var(--line));margin-bottom:18px;scrollbar-width:none}
.route-jobs .job-overview-nav::-webkit-scrollbar{display:none}
.route-jobs .job-overview-nav button{position:relative;flex:0 0 auto;min-height:48px;padding:0;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font:inherit;font-size:.875rem;font-weight:560;cursor:pointer}
.route-jobs .job-overview-nav button.active{color:var(--ink);border-bottom-color:var(--brand-gold)}
.route-jobs .job-overview-nav button:hover{color:var(--ink)}
.route-jobs .job-overview-nav button:focus-visible{outline:2px solid var(--brand-gold);outline-offset:-2px}

@media(min-width:901px){
  .route-jobs .job-workspace{width:min(100%,1180px)}
  .route-jobs .job-workspace .job-detail-top{margin-bottom:14px}
  .route-jobs .job-workspace .job-detail-top .page-title{font-size:clamp(2rem,2.6vw,2.5rem)}
  .route-jobs .job-workspace[data-job-view="overview"]>.job-hero,
  .route-jobs .job-workspace[data-job-view="overview"]>.job-record-open{display:none}
  .route-jobs .job-overview-dashboard{display:block;margin-top:22px}
  .route-jobs .job-workspace:not([data-job-view="overview"])>.job-overview-dashboard{display:none!important}
  .route-jobs .job-overview-primary{border:1px solid var(--jobs-line,var(--line));border-radius:8px;background:var(--sp-premium-paper,var(--card));padding:22px 24px}
  .route-jobs .job-overview-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
  .route-jobs .job-overview-card-head h2{margin:0;font-family:var(--sp-serif,Georgia,serif);font-size:1.35rem;font-weight:500}
  .route-jobs .job-overview-card-head .job-status-pill{font-size:.8rem}
  .route-jobs .job-overview-core{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(0,1.6fr);gap:32px}
  .route-jobs .job-overview-core:has(>.job-overview-facts:only-child){grid-template-columns:1fr}
  .route-jobs .job-overview-appliance{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:7px}
  .route-jobs .job-overview-appliance>span,.route-jobs .job-overview-visit>div>span{color:var(--muted);font-size:.875rem}
  .route-jobs .job-overview-appliance>strong{font-size:1.125rem;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
  .route-jobs .job-overview-appliance>small,.route-jobs .job-overview-visit small{color:var(--muted);font-size:.875rem}
  .route-jobs .job-overview-inline-action{display:inline-block;min-height:32px;margin:0;padding:4px 0;border:0;background:transparent;color:var(--ink);font:inherit;font-size:.875rem;font-weight:600;text-align:left;text-decoration:underline;text-decoration-color:var(--brand-gold);text-underline-offset:4px;cursor:pointer}
  .route-jobs .job-overview-facts{margin:0;display:grid;align-content:start;gap:8px}
  .route-jobs .job-overview-facts>div{display:grid;grid-template-columns:106px minmax(0,1fr);gap:16px;align-items:baseline}
  .route-jobs .job-overview-facts dt{color:var(--muted);font-size:.875rem;line-height:1.5}
  .route-jobs .job-overview-facts dd{margin:0;font-size:.9375rem;line-height:1.5;overflow-wrap:anywhere;white-space:pre-line}
  .route-jobs .job-overview-phone{display:inline-block;margin-left:14px;color:var(--muted);font-size:.875rem}
  .route-jobs .job-overview-visit{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
  .route-jobs .job-overview-visit>div:first-child{display:grid;gap:4px}
  .route-jobs .job-overview-visit-date{display:flex;align-items:center;flex-wrap:wrap;gap:4px 14px}
  .route-jobs .job-overview-visit strong{font-size:1rem;font-weight:600}
  .route-jobs .job-overview-visit-controls{display:grid;justify-items:end;gap:8px}
  .route-jobs .job-overview-visit-controls:not(:has([data-job-choice])){display:none}
  .route-jobs [data-job-overview-visit-actions]{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}
  .route-jobs .job-overview-visit .btn{min-height:40px;font-size:.875rem;box-shadow:none}
  .route-jobs .job-overview-note{padding:20px 0;border-bottom:1px solid var(--line)}
  .route-jobs .job-overview-note>div{display:flex;gap:16px;justify-content:space-between;align-items:baseline}
  .route-jobs .job-overview-note h2{font:inherit;font-size:.9375rem;font-weight:650;margin:0}
  .route-jobs .job-overview-note small{font-size:.8125rem;color:var(--muted)}
  .route-jobs .job-overview-note p{font-size:.9375rem;line-height:1.6;margin:8px 0 0;white-space:pre-line;overflow-wrap:anywhere}
  .route-jobs .job-overview-history-area{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
  .route-jobs .job-overview-history-area>details>summary{padding:17px 0;font-size:.875rem;font-weight:600;cursor:pointer}
  .route-jobs .job-overview-history-area summary small{display:block;margin:4px 0 0;color:var(--muted);font-size:.8125rem;font-weight:400}
  .route-jobs .job-overview-timeline ol{list-style:none;margin:0;padding:0 0 16px;display:grid;gap:10px}
  .route-jobs .job-overview-timeline li{display:flex;justify-content:space-between;gap:16px;font-size:.875rem;color:var(--muted)}
  .route-jobs .job-overview-timeline li.done,.route-jobs .job-overview-timeline li.current{color:var(--ink)}
  .route-jobs .job-overview-history-list,.route-jobs .job-overview-appliance-history .job-appliance-history-list{display:grid;gap:12px;padding-bottom:16px}
  .route-jobs .job-overview-history-list>div{display:grid;gap:3px;font-size:.875rem}
  .route-jobs .job-overview-history-list small,.route-jobs .job-overview-history-list span{color:var(--muted);font-size:.8125rem}
  .route-jobs .job-workspace>.job-next-action{margin-top:0}
  .route-jobs .job-workspace .job-next-menu:not(.job-next-terminal){padding:18px 0 12px}
  .route-jobs .job-workspace .job-next-menu:not(.job-next-terminal) .job-next-directed{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:24px}
  .route-jobs .job-workspace .job-next-menu:not(.job-next-terminal) .job-choice-direction{display:block;grid-column:1;min-width:0;max-width:none;padding:0}
  .route-jobs .job-workspace .job-next-menu:not(.job-next-terminal) .job-choice-direction h2{margin:4px 0 0}
  .route-jobs .job-workspace .job-next-menu:not(.job-next-terminal) .job-choice-primary{grid-column:2;grid-row:1;width:max-content;max-width:320px;padding:0}
  .route-jobs .job-workspace .job-next-menu:not(.job-next-terminal) .job-choice-primary .job-choice-lead{min-height:44px;padding:10px 16px;font-size:.9375rem}
  .route-jobs .job-workspace .job-next-menu:not(.job-next-terminal) .job-next-directed>:not(.job-choice-direction):not(.job-choice-primary){grid-column:1/-1}
  .route-jobs .job-workspace .job-next-menu:not(.job-next-terminal) .job-choice-more>summary{min-height:40px;padding:10px 0}
  /* Keep capture actions visible: the section tabs do not replace them. */
  .route-jobs .job-choice-more [data-job-choice-kind^="schedule"]{display:none}
  .route-jobs .job-choice-more:not(:has(.btn:not([data-job-choice-kind^="schedule"]))){display:none}
  .route-jobs .job-choice-direction h2{font-size:1.4rem}
  .route-jobs .job-choice-direction>span{font-size:.8125rem;letter-spacing:.025em}
  .route-jobs .job-choice-direction p{font-size:.9375rem}
}
@media(max-width:900px){
  .route-jobs .job-overview-dashboard{display:none!important}
  .route-jobs .job-overview-nav{gap:22px;max-width:100%;margin-bottom:14px}
  .route-jobs .job-overview-nav button{min-height:48px}
}
/* Phones: equal-width tabs across the bar, each label centred and its whole cell tappable.
   Same text styling and gold underline; works for three or four tabs. */
/* Two levels of navigation, told apart without another screen: the black bar at the
   bottom moves around StovePilot; these tabs move within this one job. So on a phone they
   sit on the job's own paper (no grey band), tucked under the customer's name, left-aligned
   like a document's section tabs, with one hairline and a brass underline for the open one. */
@media(max-width:720px){
  .route-jobs .job-overview-nav{display:flex;justify-content:flex-start;gap:26px;overflow-x:auto;background:var(--sp-premium-paper,var(--bg));min-height:48px;margin-top:2px;padding-inline:2px}
  .route-jobs.job-open .job-overview-nav{margin-bottom:18px}
  .route-jobs .job-overview-nav button{width:auto;min-width:0;min-height:48px;padding:0;text-align:left;line-height:1.15;white-space:nowrap;font-size:.9375rem;font-weight:600;letter-spacing:.005em}
  .route-jobs .job-overview-nav button.active{border-bottom-width:3px}
}
@media(max-width:359px){.route-jobs .job-overview-nav{gap:18px}.route-jobs .job-overview-nav button{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){.route-jobs .job-overview-dashboard *{transition:none!important}}

@media(min-width:901px) and (max-width:1080px){
  .route-jobs .job-overview-history-area{grid-template-columns:repeat(2,minmax(0,1fr))}
  .route-jobs .job-overview-appliance-history{grid-column:1/-1}
}


.route-jobs .job-property-history{min-width:0}
.route-jobs .job-property-appliances{display:grid;gap:10px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.route-jobs .job-property-appliance{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px}
.route-jobs .job-property-appliance strong{font-size:.875rem;line-height:1.45;font-weight:600}
.route-jobs .job-property-appliance span{font-size:.75rem;line-height:1.4;color:var(--muted)}
.route-jobs .job-property-appliance small{grid-column:1/-1;color:var(--muted);font-size:.75rem;line-height:1.45}


/* Now is deliberately sparse. History/admin belongs in Record/More. */
.route-jobs .job-overview-updated{margin:16px 0 0;color:var(--muted);font-size:.8125rem}
.route-jobs .job-overview-dashboard .job-overview-history-area{display:none!important}

