/* Customer-first polish: open surfaces, decisive actions, shared type and spacing. */
.phase10{--p10-ink:#191d1a;--p10-muted:#626a65;--p10-line:#e2e5e2;--p10-soft:#f0f4f1;--bg:#fff;--text:#191d1a;--muted:#626a65;--line:#e2e5e2;background:#fff}
.phase10 .app{background:#fff}
.phase10 main{padding-top:38px}
.phase10 .app>header{border-radius:0;box-shadow:none}
.phase10 .p10-page-heading{margin-bottom:30px}
.phase10 .p10-page-heading h1{font-size:clamp(32px,4vw,46px);letter-spacing:-1.5px;max-width:700px}
.phase10 .p10-eyebrow{letter-spacing:.07em;font-size:11px!important}
.phase10 .p10-button{border-radius:8px;font-weight:700}
.phase10 .p10-button.primary,.phase10 .quote-actions .accept{background:var(--p10-ink);border-color:var(--p10-ink);color:#fff}
.phase10 .p10-button.primary:hover,.phase10 .quote-actions .accept:hover{background:#303b33;border-color:#303b33}
.phase10 .p10-service-choices{gap:20px;margin-bottom:40px}
.phase10 .p10-service-choice{position:relative;min-height:228px;padding:28px;border-radius:14px;background:#f3f5f3;border:1px solid transparent;gap:7px;box-shadow:none}
.phase10 .p10-service-choice.material{background:#1c2821;border-color:#1c2821;color:#fff}
.phase10 .p10-service-icon{width:42px;height:42px;border-radius:10px;background:#fff;margin-bottom:12px}
.phase10 .p10-service-choice.material .p10-service-icon{background:#34483b;color:#e3efe5}
.phase10 .p10-service-choice strong{font-size:26px;letter-spacing:-.7px}
.phase10 .p10-service-choice.material>span:not(.p10-service-icon){color:#d2ddd5}
.phase10 .p10-service-choice small{padding-top:16px;color:inherit;font-weight:650}
.phase10 .p10-service-choice:hover{transform:translateY(-2px);box-shadow:0 8px 20px #17211c0d}
.phase10 .p10-service-choice:focus-visible{outline-offset:4px}
.phase10 .p10-section-heading{margin-top:30px}
.phase10 .p10-current{border-radius:12px;padding:25px;background:#fafbfa}
.phase10 .p10-current h3{font-size:26px}
.phase10 .p10-current-top>span:last-child{overflow-wrap:anywhere}
.phase10 .p10-empty{border:0;border-radius:10px;background:#f6f7f6;padding:28px 22px}
.phase10 .p10-empty p{margin-bottom:0}
.phase10 .p10-order-list{border:0;border-radius:0}
.phase10 .p10-order-row{padding:24px 0}
.phase10 .p10-order-icon{background:#f1f3f1;border-radius:9px}
.phase10 .p10-panel{border-radius:10px;box-shadow:none}
.phase10 .p10-detail-heading h1{font-size:36px}
.phase10 .p10-location strong{font-size:16px;line-height:1.5}
.phase10 .p10-document-row strong{font-size:15px}
.phase10 .p10-document-row small{font-size:13px}
/* Preserve the existing form elements, validation, and quote calculations. */
.phase10 #order,.phase10 #post{max-width:740px}
.phase10 #order>.title,.phase10 #post>.title{font-size:36px;line-height:1.15;letter-spacing:-1.1px}
.phase10 .p10-flow-card{padding:26px 0;border:0;border-top:1px solid var(--p10-line);border-radius:0;background:#fff}
.phase10 .p10-flow-card input,.phase10 .p10-flow-card select,.phase10 .p10-flow-card textarea,.phase10 #p9PublicQuote input,.phase10 #p9PublicQuote select{background:#f5f6f5;border-color:#e2e5e2;border-radius:8px;min-height:52px}
.phase10 .p10-flow-card input[type=checkbox]{min-height:20px}
.phase10 .p10-flow-card input[type=file]{min-height:48px}
.phase10 .p10-stepper{margin:26px 0 8px}
.phase10 .p10-stepper .current button{color:var(--p10-ink);border-bottom-color:var(--p10-ink)}
.phase10 .p10-stepper .current button>span{background:var(--p10-ink)}
.phase10 .p10-form-footer{background:#fff;padding-block:16px;bottom:calc(72px + env(safe-area-inset-bottom))}
.phase10 .p10-form-footer>.primary{min-width:180px}
.phase10 .p5-helper{background:#f3f6f3;border:0;border-left:3px solid #8dab97;border-radius:0;color:#405548}
.phase10 .p5-delivered-quote,.phase10 .quote-card{background:#f5f7f5;border:0;border-radius:12px;padding:24px}
.phase10 .p5-price,.phase10 .quote-total{font-size:44px;letter-spacing:-1.5px}
.phase10 .p10-review-summary strong{overflow-wrap:anywhere}
/* Driver focus: operational detail before decoration. */
.phase10.p11-driver .p9-job{border:1px solid var(--p10-line);border-radius:12px;box-shadow:none;background:#fff;padding:26px}
.phase10.p11-driver .p9-job h3{font-size:29px;letter-spacing:-.7px}
.phase10.p11-driver .p9-online{min-height:52px;border-radius:9px;font-size:17px;padding:14px 20px}
.phase10.p11-driver .p9-job-route{gap:14px;line-height:1.5}
.phase10.p11-driver .p9-job-route b{font-size:12px;margin-bottom:4px;color:var(--p10-muted)}
.phase10 .p11-route-metrics{gap:16px;padding:18px 0}
.phase10 .p11-home-next{background:#f0f5f1;border-radius:9px;border-left:3px solid var(--p10-green)}
.phase10 .p11-stop{border-radius:10px;padding:22px;background:#fafbfa}
.phase10 .p11-stop.is-next{border-color:#b2c8b8;background:#f0f5f1}
.phase10 .p11-address{font-size:18px;font-weight:600;letter-spacing:-.2px}
.phase10 .p11-map-link{border-radius:8px;min-height:48px}
.phase10.p11-driver .driver-job-header{gap:16px;flex-wrap:wrap}
.phase10.p11-driver #liveJob .card{border-radius:10px;box-shadow:none;border-color:var(--p10-line)}
.phase10.p11-driver #liveJob input,.phase10.p11-driver #liveJob select{font-size:16px;min-height:48px}
.phase10 #p4SignatureCanvas{max-width:100%;touch-action:none;background:#fff;border-radius:8px}
/* Public entry: plain language and an immediately usable request form. */
.phase10 #publicLanding{background:#fff}
.phase10 #publicLanding .hero{padding:64px 0 50px;gap:64px}
.phase10 #publicLanding .hero h1{font-size:clamp(44px,5vw,64px);line-height:1.03;letter-spacing:-2.5px}
.phase10 #publicLanding .hero h1 em{color:var(--p10-green);font-style:normal}
.phase10 #publicLanding .hero-copy>p{font-size:17px;line-height:1.65;max-width:420px}
.phase10 #p9PublicQuote{background:#fff;border:1px solid var(--p10-line);box-shadow:0 12px 48px #1c28210a;border-radius:16px;padding:30px}
.phase10 .p10-public-tabs{background:#f0f2f0;border-radius:9px;padding:4px}
.phase10 .p10-public-tabs button.active{background:var(--p10-ink);color:white;box-shadow:none}
.phase10 #publicLanding .trust-strip{border:0;border-block:1px solid var(--p10-line);border-radius:0;padding:24px 0;margin-bottom:24px;background:#fff}
.phase10 #publicLanding .company-intro{border-top:0;padding:38px 0}
.phase10 #publicLanding .customer-service{border:0;background:#f4f6f4;border-radius:12px;padding:28px}
.phase10 #publicLanding .step-card{border:0;border-top:1px solid var(--p10-line);border-radius:0;background:#fff}
.phase10 #publicLanding .partner-cta{background:#1c2821;border:0;color:#fff}
.phase10 #publicLanding .partner-cta h2{color:#fff}
.phase10 #publicLanding .partner-cta p{color:#d2ddd5}
.phase10 #publicLanding .hauler-link{background:#fff;color:#1c2821}
@media(max-width:700px){
 .phase10 main{padding:26px 20px calc(108px + env(safe-area-inset-bottom))}
 .phase10 .app>header{padding-inline:16px}
 .phase10 .p10-page-heading h1{font-size:34px;letter-spacing:-1.2px}
 .phase10 .p10-page-heading{margin-bottom:24px}
 .phase10 .p10-service-choices{gap:12px;margin-bottom:28px}
 .phase10 .p10-service-choice{min-height:204px;padding:18px 16px;gap:8px;border-radius:12px}
 .phase10 .p10-service-choice strong{font-size:21px;letter-spacing:-.5px}
 .phase10 .p10-service-choice>span:not(.p10-service-icon){font-size:13px;line-height:1.4}
 .phase10 .p10-service-icon{width:36px;height:36px;margin-bottom:6px}
 .phase10 .p10-service-choice small{font-size:13px;padding-top:8px}
 .phase10 .p10-section-heading{gap:10px;margin-top:24px}
 .phase10 .p10-section-heading h2{font-size:19px}
 .phase10 .p10-current{padding:20px}
 .phase10 .p10-current h3{font-size:23px}
 .phase10 .p10-panel{padding:20px}
 .phase10 #order>.title,.phase10 #post>.title{font-size:32px}
 .phase10 .p10-flow-card{padding:22px 0}
 .phase10 .p10-form-footer{padding-block:12px}
 .phase10 .p10-form-footer>.primary{min-width:0;font-size:14px;padding-inline:12px}
 .phase10 .p10-stepper li button{font-size:12px}
 .phase10 .p10-detail-heading h1{font-size:31px}
 .phase10.p11-driver .p9-job{padding:20px}
 .phase10.p11-driver .p9-job h3{font-size:25px}
 .phase10 .p11-stop{padding:18px}
 .phase10 .p11-address{font-size:17px}
 .phase10 #publicLanding .hero{padding:30px 0;gap:24px}
 .phase10 #publicLanding .hero h1{font-size:42px;letter-spacing:-1.7px;max-width:430px}
 .phase10 #publicLanding .hero h1>span,.phase10 #publicLanding .hero h1>em{display:block}
 .phase10 #publicLanding .hero h1>em:before{content:none}
 .phase10 #publicLanding .hero-copy>p{font-size:15px;line-height:1.5}
 .phase10 #p9PublicQuote{padding:20px;border-radius:12px;box-shadow:none}
 .phase10 #publicLanding .trust-strip{gap:20px;padding:24px 0}
 .phase10 #publicLanding .public-nav-inner{min-height:72px}
}
@media(max-width:380px){
 .phase10 main{padding-inline:16px}
 .phase10 .p10-page-heading h1{font-size:30px}
 .phase10 .p10-service-choice{padding:16px 13px;min-height:204px}
 .phase10 .p10-service-choice strong{font-size:19px}
 .phase10 #publicLanding .hero h1{font-size:36px}
 .phase10 .p10-current-top{align-items:flex-start}
 .phase10 .p11-map-link{flex-basis:100%}
}
/* Driver workflow: current load and one reachable next action. */
.phase10 .p12-load-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0 8px;color:var(--p10-green)}
.phase10 .p12-load-summary strong{font-size:19px;letter-spacing:-.4px}
.phase10 .p12-load-summary span{font-size:14px;color:var(--p10-muted)}
.phase10 .p12-saved-ticket{margin:18px 0;border-block:1px solid var(--p10-line);padding:12px 0}
.phase10 .p12-saved-ticket summary{font-size:15px;font-weight:650;min-height:44px;display:flex;align-items:center;cursor:pointer}
.phase10 .p12-signed{padding:18px;background:var(--p10-soft);border-radius:10px}
.phase10 .p12-signed p{margin:6px 0 0;font-size:15px}
.phase10 .p12-document-load{margin-top:26px;break-inside:avoid}
.phase10 .p12-document-load h2{font-size:20px}
.phase10.p12-job-active main{padding-bottom:calc(208px + env(safe-area-inset-bottom))}
.phase10.p12-job-active #jobs .p12-action-dock{position:fixed;bottom:calc(72px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(1020px,calc(100% - 40px));padding:12px 0;margin:0!important;background:#fff;border-top:1px solid var(--p10-line);z-index:22}
.phase10.p12-job-active .p12-action-dock .btn{min-height:52px;font-size:16px;border-radius:9px;background:var(--p10-ink);color:white}
.phase10.p12-job-active #jobs>.eyebrow,.phase10.p12-job-active #driverOnlineBlock{display:none}
.phase10 .p11-job-route{scroll-margin-top:95px}
.phase10 #jobsTitle{scroll-margin-top:95px}
.phase10 .driver-ticket-box,.phase10 .phase4-pod{scroll-margin-top:95px}
.phase10 .driver-ticket-box label,.phase10 .phase4-pod label{font-size:14px}
.phase10.p11-driver .driver-job-payout span{font-size:13px}
.phase10 .p11-stop:not(.is-next){background:#fff}
.phase10 .p11-job-route:has(.is-next) .p11-stops{display:flex;flex-direction:column}
.phase10 .p11-job-route:has(.is-next) .p11-stop.is-next{order:-1}
.phase10 .p11-job-route:has(.is-next) .p11-estimates{margin:12px 0}
.phase10 #p4SignatureCanvas{width:100%;height:auto;aspect-ratio:700/220;min-height:140px}
@media(max-width:700px){
 .phase10 .app>header{display:flex;flex-wrap:nowrap;gap:8px;padding:8px 14px;min-height:62px}
 .phase10 .p10-navigation,.phase10 .p10-navigation>div{display:contents}
 .phase10 #p10GoHome,.phase10 #p10WebsiteHome{display:none}
 .phase10 #p10GoBack{order:-2;padding:8px;min-width:36px;font-size:0;gap:0}
 .phase10 #p10GoBack svg{width:20px;height:20px}
 .phase10 .app>header>.p10-brand-home{font-size:16px;line-height:1.1;margin-right:auto;max-width:125px}
 .phase10 .head-tools{gap:5px;margin-left:0}
 .phase10 .account-chip{width:40px;min-width:40px;max-width:40px;padding:3px;justify-content:center}
 .phase10 .account-chip .acct-name,.phase10 .account-chip .acct-caret{display:none}
 .phase10 .lang button{min-width:34px;min-height:40px;padding:8px 6px}
 .phase10 .account-menu{top:64px;max-height:calc(100dvh - 150px);overflow-y:auto}
 .phase10 .demo-mode-strip{padding:4px 16px;font-size:12px;min-height:28px;position:static}
 .phase10 .demo-mode-strip button{min-height:28px;font-size:12px}
 .phase10 .p10-stepper{scroll-margin-top:90px}
 .phase10.p12-job-active #jobs .p12-action-dock{width:calc(100% - 32px)}
 .phase10.p12-job-active #jobs .p12-action-dock .btn{font-size:15px}
 .phase10.p11-driver .driver-job-header{align-items:flex-start}
 .phase10.p11-driver .driver-job-header h3{font-size:23px!important}
 .phase10 .p11-route-metric>strong{font-size:25px}
}
@media print{.phase10 .p12-action-dock{display:none!important}}
.phase10 .p12-other-stop{border:1px solid var(--p10-line);border-radius:9px}
.phase10 .p12-other-stop>summary{padding:14px 18px;min-height:48px;font-size:15px;font-weight:650;cursor:pointer}
.phase10 .p12-other-stop .p11-stop{border:0;border-top:1px solid var(--p10-line);border-radius:0}
.phase10.p11-driver #liveJob .driver-job-header .small{font-size:12px}
.phase10.p11-driver #liveJob .pill-row{margin-top:6px!important}
.phase10.p11-driver #liveJob .driver-progress{margin-block:12px}
.phase10.p12-job-active #liveActions .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.phase10.p12-job-active #liveActions .accept,.phase10.p12-job-active #liveActions .blue{grid-column:1/-1}
.phase10.p12-job-active #liveActions .counter,.phase10.p12-job-active #liveActions .decline{min-height:44px;background:#fff;color:var(--p10-ink);border:1px solid var(--p10-line);font-size:14px}
.phase10 .p13-map-help{margin-top:8px;font-size:14px;color:var(--p10-muted)}
.phase10 .p13-map-help summary{padding:10px 0;min-height:44px;cursor:pointer}
.phase10 .p13-map-help p{font-size:14px;line-height:1.5;margin:6px 0 12px}
.phase10 .p13-map-help>div{display:flex;gap:12px;flex-wrap:wrap}
.phase10 .p13-web-map{display:inline-flex;align-items:center;min-height:44px;color:var(--p10-green);font-weight:650;text-underline-offset:3px}
.phase10 .p13-map-status{display:block;font-size:13px}
.phase10 .p13-link-copy{width:100%;font-size:16px;margin:8px 0;padding:10px}
.phase10.p12-job-active #liveActions .actions:has(>.accept):not(:has(>.counter)){grid-template-columns:2fr 1fr}
.phase10.p12-job-active #liveActions .actions:has(>.accept):not(:has(>.counter))>.accept{grid-column:auto}
.phase10 .p14-ticket-reminder{font-size:14px;color:var(--p10-muted);line-height:1.5;margin:8px 0}
.phase10 .p14-ticket-reminder .p10-text-button{margin-left:6px;font-size:14px}
