/* Choices, editable values and calculated outputs have distinct surfaces. */
input{background:#0B0F0D;border-color:#65736B;color:var(--ink)}select,.machine-picker select{background-color:#1D2935;background-image:none;border-color:#59758F;color:var(--ink);box-shadow:inset 0 1px 0 #FFFFFF08}select option{background:#1D2935;color:var(--ink)}.auto-method select{color:var(--ink);border-color:#59758F}.choice-value{color:#A3BED5}.computed-preview>div{background:#1C3126;border-color:#637E6C}.route-estimate{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.route-estimate article{border:1px solid #506A59;background:linear-gradient(130deg,#1C3126,#16231D);border-radius:10px;padding:15px}.route-estimate article>div:first-of-type{display:flex;justify-content:space-between;gap:15px;font-size:12px}.route-estimate p{font-size:10px;color:var(--muted);margin:9px 0 6px}.route-estimate small{color:var(--sage);font-size:10px;line-height:1.6;display:block}.route-sections{display:flex;height:5px;gap:3px;margin-top:13px;border-radius:4px;overflow:hidden}.route-sections i{background:#829BB5}.route-sections i:nth-child(2){background:#8FAE98}.route-sections i:last-child{background:#BC91A8}.heading-with-info{display:flex;align-items:center;gap:10px}.heading-with-info h2,.heading-with-info h3{margin:0}.info-button{display:grid;place-items:center;padding:0;width:19px;height:19px;flex-shrink:0;border-radius:50%;border:1px solid #75847A;background:transparent;color:var(--muted);font:600 11px Arial}.info-button:hover{color:var(--ink);border-color:var(--gold)}.settings-link{margin-left:auto;background:transparent;color:var(--muted);padding:6px;font-size:11px}.settings-link:hover{color:var(--gold)}.help-dialog{width:min(800px,calc(100vw - 32px));max-height:85vh;overflow:auto;border:1px solid #65766B;border-radius:17px;background:linear-gradient(135deg,#16231D,#0B0F0D);color:var(--ink);padding:25px;box-shadow:0 20px 100px #000B}.help-dialog::backdrop{background:#000B;backdrop-filter:blur(5px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:15px}.dialog-heading h2{font-size:21px;margin:0;color:var(--ink)}.help-dialog p,.help-dialog li{font-size:12px;color:var(--muted);line-height:1.8}.help-dialog a{color:var(--sage)}.help-dialog .field-info{z-index:3}.help-dialog .help-copy{max-width:240px}.help-dialog #cycleEstimates .table-scroll{max-height:240px}.help-dialog .table-scroll th{white-space:normal}.help-dialog .equipment-row{gap:15px}.help-dialog .equipment-row label>span{margin-top:0}.help-dialog .equipment-row input{margin-top:8px}.help-dialog .equipment-row:last-child{padding-bottom:5px}.help-dialog #cycleEstimates{margin-top:25px}.help-dialog .equipment-inputs{margin-top:25px}
@media(max-width:700px){.route-estimate{grid-template-columns:1fr}.heading-with-info{flex-wrap:wrap}.settings-link{font-size:10px}.help-dialog{padding:18px}.dialog-heading h2{font-size:18px}}
.route-estimate article,.travel-output{position:relative;overflow:visible}.travel-info{top:14px;right:13px}.route-estimate article>div:first-of-type{padding-right:27px}.travel-output>small{padding-right:25px}.travel-info .help-copy{width:290px;max-width:calc(100vw - 70px)}.travel-info .help-copy>strong{font-size:12px;color:var(--ink)}.travel-info .help-copy p{margin:9px 0 0;font-size:11px;color:var(--ink);line-height:1.7}.travel-info summary{color:var(--sage);border-color:#8FAE9880}
.condition-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.tipping-fields{margin-top:25px}.job-section>.timing-settings .section-title:first-of-type{margin-top:17px}.job-section>details{margin-top:20px}
@media(max-width:620px){.condition-pair{grid-template-columns:1fr}}
.quantity-section .input-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:620px){.quantity-section .input-grid{grid-template-columns:1fr}}
.cat-reference-link{display:block;margin-top:12px;padding:0;background:none;color:var(--sage);font-size:11px;text-align:left}
.cat-guidance-table th,.cat-guidance-table td{white-space:normal;vertical-align:top;line-height:1.65;font-size:11px;padding:12px}
.cat-guidance-table th{position:static}.cat-guidance-table td:first-child{min-width:115px}
#cycleHelp .cycle-reference h3{margin:25px 0 12px;font-size:15px}
#cycleHelp .cycle-reference .table-scroll{margin:15px 0;max-height:none}
.loading-heading{margin-bottom:19px}.loading-heading h3{margin-bottom:0}.loading-heading>p{font-size:11px;color:var(--muted);margin:9px 0 0}
.loading-fields{margin-top:25px}
.travel-settings{margin-top:25px;padding-top:23px;border-top:1px solid var(--line)}
.travel-settings #estimatedTravel,.travel-settings #measuredTravel{margin-top:23px}
.travel-ramp-inputs{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.travel-ramp-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.travel-ramp-inputs{grid-template-columns:1fr}}

.section-outcome{margin-top:22px;padding:18px 22px;border:1px solid #8FAE9845;border-left:3px solid #8FAE98;border-radius:12px;background:linear-gradient(115deg,#20382a85,#16231d60);box-shadow:0 5px 18px #0002;font-weight:500}
.section-outcome>p:first-child{margin:0}.cycle-results{margin-top:14px}.cycle-results summary{cursor:pointer;color:var(--text);font-weight:600}.cycle-results .table-scroll{margin-top:14px}.cycle-results td,.cycle-results th{white-space:nowrap}
#fleetCostChart .chart-empty{min-height:150px} .cost-plot-line{stroke:#829BB5}

.output-label{margin:0 0 9px!important;font-size:10px!important;line-height:1.4;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:700}
.section-outcome>p{margin:0;line-height:1.65}.section-outcome .cycle-results .hint{margin:12px 0;font-size:11px}.haulage-output .route-estimate{margin-top:17px}.haulage-output .route-estimate article{background:#0B0F0D70}.haulage-output .route-estimate p{font-weight:400}

.section-outcome>.cycle-results{margin-top:0;border-top:0;padding-top:0}

.haul-route-inputs{grid-template-columns:repeat(4,minmax(0,1fr))}
.speed-results{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:15px}.speed-results small{color:var(--muted);font-size:11px}.speed-results strong{display:block;font:700 24px Manrope,Arial;margin-top:6px}
@media(max-width:900px){.haul-route-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.haul-route-inputs{grid-template-columns:1fr}.speed-results strong{font-size:21px}}

/* My job is a sequence of individual cards, each with its own illustration. */
.setup:has(#step1:not([hidden])){background:none;border:0;box-shadow:none;overflow:visible}
.setup:has(#step1:not([hidden]))>.steps{background:linear-gradient(110deg,#16231D,#101914);border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 24px #0004;margin-bottom:27px}
#step1{padding:0}.panel-intro{padding:0 6px}.panel-intro .value-legend{margin-bottom:25px}
#step1>.job-section,#step1>#rateSection{padding:27px;margin-top:26px;border:1px solid #8FAE9828;border-radius:18px;background:radial-gradient(ellipse at 100% 0%,#8FAE9808,transparent 58%),linear-gradient(135deg,#16231D,#111B16);box-shadow:0 10px 30px #0005,0 1px 0 #FFFFFF05 inset;transition:border-color .2s,box-shadow .2s}
#step1>.job-section:hover,#step1>#rateSection:hover{border-color:#8FAE9848;box-shadow:0 14px 34px #0006,0 1px 0 #FFFFFF05 inset}
#step1>.quantity-section{margin-top:0}.job-section-heading{display:flex;align-items:center;gap:15px;margin-bottom:25px}.job-section-heading h3{margin:0}
.section-thumbnail{width:64px;height:54px;display:grid;place-items:center;flex-shrink:0;border-radius:13px;background:linear-gradient(135deg,#8FAE9818,#829BB50B);border:1px solid #8FAE9823;box-shadow:0 4px 12px #0002}.section-thumbnail svg{width:55px;height:46px}
.loading-heading .heading-with-info{gap:13px}.loading-heading>p{margin:13px 0 0}.loading-heading{margin-bottom:25px}
#rateSection>summary{display:flex;align-items:center;gap:15px;list-style:none;font:700 17px Manrope,Arial}#rateSection>summary::-webkit-details-marker{display:none}#rateSection>summary::after{content:'⌄';margin-left:auto;font-size:20px;color:var(--muted)}#rateSection[open]>summary::after{content:'⌃'}#rateSection[open]>.hint{margin-top:20px}
#step1>.run-actions{margin:28px 0 0;padding:0 2px}.section-outcome{box-shadow:none;background:linear-gradient(115deg,#20382a65,#16231d30)}
@media(max-width:620px){#step1>.job-section,#step1>#rateSection{padding:21px 18px;margin-top:22px;border-radius:15px}.section-thumbnail{width:52px;height:46px}.section-thumbnail svg{width:46px;height:40px}.job-section-heading{gap:12px;margin-bottom:22px}.loading-heading .settings-link{width:100%;text-align:left;margin-left:0;padding-left:0}}
