.jtv-app .jtv-time-fields__date { position:relative; }
.jtv-app .jtv-date-entry { display:flex; gap:.4rem; align-items:center; }
.jtv-app .jtv-date-entry input { flex:1; min-width:0; }
.jtv-app .jtv-date-entry button { flex:0 0 2.75rem; padding:.5rem; }
.jtv-app .jtv-job-calendar { position:absolute; z-index:65; top:100%; left:0; width:19rem; max-width:min(19rem,calc(100vw - 3rem)); background:#fff; color:#243a32; border:1px solid #baccc3; border-radius:12px; padding:.65rem; box-shadow:0 8px 24px #183c2824; }
.jtv-app .jtv-calendar__head,.jtv-app .jtv-calendar__foot { display:flex; justify-content:space-between; align-items:center; gap:.3rem; }
.jtv-app .jtv-calendar__week,.jtv-app .jtv-calendar__days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:2px; text-align:center; }
.jtv-app .jtv-calendar__week { font-size:.7rem; margin:.5rem 0; }
.jtv-app .jtv-job-calendar button { color:inherit; background:#f3f7f5; border:1px solid transparent; border-radius:6px; min-height:36px; padding:.25rem; font:inherit; cursor:pointer; }
.jtv-app .jtv-job-calendar button:hover { background:#e2ede7; }
.jtv-app .jtv-job-calendar [aria-selected="true"] { background:#14573f; color:white; }
.jtv-app .jtv-job-calendar button:focus-visible { outline:3px solid #287756; outline-offset:1px; }
.jtv-app .jtv-calendar__foot { margin-top:.5rem; }
.jtv-app .jtv-nav__accordion > summary { cursor:pointer; padding:.65rem .75rem; list-style:disclosure-closed; color:#365847; }
.jtv-app .jtv-nav__accordion[open] > summary { list-style:disclosure-open; }
.jtv-app .jtv-nav__accordion { border-bottom:1px solid #e7ece9; padding-bottom:.4rem; }
.jtv-app .jtv-workspace-tabs { display:flex; flex-wrap:wrap; gap:.4rem; padding:.5rem 0 1rem; margin-bottom:.75rem; border-bottom:1px solid #dde7e0; }
.jtv-app .jtv-workspace-tab { font-size:.84rem; text-decoration:none; padding:.6rem .85rem; border:1px solid #dbe5df; border-radius:9px; color:#335143; background:#f5f8f6; }
.jtv-app .jtv-workspace-tab[aria-current] { background:#1a5b40; color:white; border-color:#1a5b40; }
.jtv-app .jtv-workspace-tab.is-locked { opacity:.6; }
.jtv-app .jtv-admin-top-actions { display:flex; gap:.5rem; align-items:center; margin-left:auto; }
.jtv-app .jtv-admin-top-actions select { min-height:36px; padding:.4rem; border:1px solid #cbd8d0; border-radius:8px; }
.jtv-app [data-copy-job-number] { border:0; background:#edf3ef; color:#30583e; border-radius:5px; padding:.2rem .45rem; font-size:.72rem; cursor:pointer; }
.jtv-app [data-status="failed"],.jtv-app [data-status="undelivered"] { background:#fee6e3; color:#912e2e; }
.jtv-app [data-status="delivered"],.jtv-app [data-status="completed"] { background:#e4f3ea; color:#1e6040; }
.jtv-app [data-status="pending"],.jtv-app [data-status="retry"],.jtv-app [data-status="skipped"] { background:#fff1d5; color:#86541a; }
.jtv-app [data-status="sent"],.jtv-app [data-status="scheduled"] { background:#e6efff; color:#355b8a; }
.jtv-app .jtv-dashboard__four { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.jtv-app .jtv-dashboard__daily { display:grid; grid-template-columns:3fr 2fr; gap:1rem; align-items:start; }
@media(max-width:1000px){.jtv-app .jtv-dashboard__four{grid-template-columns:repeat(2,minmax(0,1fr))}.jtv-app .jtv-dashboard__daily{grid-template-columns:1fr}}
@media(max-width:600px){.jtv-app .jtv-admin-top-actions [data-global-customer-search]{font-size:.75rem;padding:.4rem}.jtv-app .jtv-topbar{flex-wrap:wrap}.jtv-app .jtv-admin-top-actions{gap:.25rem}.jtv-app .jtv-workspace-tab{font-size:.78rem;padding:.55rem}.jtv-app .jtv-dashboard__four{gap:.5rem}}

.jtv-app .jtv-dashboard__headline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.jtv-app .jtv-dashboard__work-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px;align-items:start}
.jtv-app .jtv-dashboard__section--attention{border:1px solid #e9c98e;border-radius:16px;padding:18px;background:#fffcf5}
.jtv-app .jtv-dashboard__more>summary{cursor:pointer;font-weight:650;padding:12px}
.jtv-app .jtv-copy-id{border:1px solid #c6d4d0;border-radius:7px;background:#f2f7f5;color:#285d49;font:inherit;font-size:.75rem;padding:3px 7px;cursor:pointer}
.jtv-app .jtv-job-tabs{display:flex;gap:6px;overflow:auto;padding:5px 0 12px}
.jtv-app .jtv-job-tabs button{border:1px solid #d8e2de;border-radius:9px;padding:10px 14px;background:#f4f7f6;color:#263d32;white-space:nowrap}
.jtv-app .jtv-job-tabs button[aria-selected=true]{background:#dceee3;border-color:#68a483;font-weight:650}
.jtv-app .jtv-job-detail>[hidden]{display:none!important}
@media(max-width:1100px){.jtv-app .jtv-dashboard__headline{grid-template-columns:repeat(2,minmax(0,1fr))}.jtv-app .jtv-dashboard__work-grid{grid-template-columns:1fr}}
@media(max-width:480px){.jtv-app .jtv-dashboard__headline{grid-template-columns:1fr 1fr;gap:8px}.jtv-app .jtv-dashboard__headline .jtv-card{padding:12px;min-width:0}.jtv-app .jtv-dashboard__headline strong{font-size:1.5rem}}

.jtv-app .jtv-template-example{padding:.5rem .7rem;background:#f3f7f5;border:1px solid #dde8e1;border-radius:9px;margin-bottom:1rem}
.jtv-app .jtv-template-example summary{cursor:pointer;font-size:.8rem}
.jtv-app .jtv-template-example p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.85rem;line-height:1.5}
.jtv-app .jtv-pricing-pay:has([data-rate-review]){max-width:1200px;width:100%}
.jtv-app [data-rate-review] .jtv-button{font-size:.8rem;padding:.45rem .7rem;min-height:38px}

/* Job financial disclosure: presentation only, scoped to the private portal. */
.jtv-app .jtv-detail-card--financial .jtv-detail-toggle {
  display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 4px 12px;
  padding: 14px 16px; background: #f0f6f4;
}
.jtv-app .jtv-detail-card--financial .jtv-detail-title { grid-column: 1; font-size: .82rem; color: #52655d; }
.jtv-app .jtv-detail-customer-price { grid-column: 1; grid-row: 2; display: grid; gap: 2px; }
.jtv-app .jtv-detail-customer-price__label { font-size: .8rem; font-weight: 500; color: #52655d; }
.jtv-app .jtv-detail-customer-price__amount { font-size: clamp(1.45rem,4vw,1.8rem); line-height: 1.2; font-weight: 750; color: #174c37; font-variant-numeric: tabular-nums; }
.jtv-app .jtv-detail-card--financial .jtv-detail-more { grid-column: 2; grid-row: 2; align-self: end; }
.jtv-app .jtv-detail-card--financial .jtv-detail-chevron { grid-column: 2; grid-row: 1; justify-self: end; }
.jtv-app .jtv-detail-card--financial .jtv-detail-toggle:hover { background: #e8f2ed; }
.jtv-app .jtv-detail-card--financial .jtv-detail-toggle:focus-visible { outline-offset: -3px; }
.jtv-app .jtv-detail-financial-invoice { margin-top: 14px; padding-top: 10px; border-top: 1px solid var(--jtv-border); }
.jtv-app .jtv-detail-card--financial .jtv-kv { grid-template-columns: minmax(0,1fr) minmax(5rem,.65fr); gap: 8px 12px; }
.jtv-app .jtv-detail-card--financial .jtv-kv dd { margin: 0; text-align: right; font-variant-numeric: tabular-nums; }
.jtv-app .jtv-detail-card--financial [data-job-customer-total] { font-weight: 750; color: #174c37; }
