*{box-sizing:border-box} :root{--bg:#f5f7f9;--surface:#fff;--text:#263544;--muted:#6e7b87;--border:#d9e0e5;--blue:#0b6c91;--blue-dark:#075573;--orange:#e2a123;--success:#1f8a5b;--shadow:0 2px 8px rgba(20,41,56,.06)}
body{margin:0;font-family:Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)} a{text-decoration:none;color:inherit} button,input,select,textarea{font:inherit} input,select,textarea{width:100%;border:1px solid #cbd4dc;border-radius:4px;padding:10px 11px;background:#fff;color:var(--text)} textarea{resize:vertical} input:focus,select:focus,textarea:focus{outline:2px solid rgba(11,108,145,.16);border-color:var(--blue)}
.site-header{background:#fff;border-bottom:1px solid var(--border);box-shadow:0 1px 5px rgba(20,41,56,.04);position:sticky;top:0;z-index:20}.header-inner{height:72px;max-width:1500px;margin:auto;padding:0 28px;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;gap:10px;min-width:220px}.brand-mark{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#0d789e,#103d66);color:#fff;display:grid;place-items:center;font-weight:900}.brand-mark.large{width:52px;height:52px;font-size:24px}.brand span:last-child{display:grid}.brand small,.user-menu small{display:block;color:var(--muted);font-size:11px}.main-nav{display:flex;height:100%;align-items:center;gap:2px;flex:1}.main-nav a{height:100%;display:flex;align-items:center;padding:0 18px;border-bottom:3px solid transparent;font-weight:650;color:#435360}.main-nav a:hover,.main-nav a.active{color:var(--blue);background:#f7fbfd;border-bottom-color:var(--blue)}.user-menu{display:flex;align-items:center;gap:10px}.user-avatar{width:34px;height:34px;border-radius:50%;background:#edf3f6;display:grid;place-items:center;font-weight:800;color:var(--blue)}.user-menu form{margin-left:8px}.user-menu button{border:0;background:none;color:var(--blue);cursor:pointer;font-size:12px}.page-shell{max-width:1500px;margin:auto;padding:34px 28px 70px}.toast{padding:13px 16px;border-radius:5px;margin-bottom:18px;border:1px solid #b9dfcf;background:#edf9f3;color:#1b6b49}.eyebrow{margin:0;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.08em}.muted{color:var(--muted)} h1{font-size:30px;margin:5px 0 7px} h2{margin:0;font-size:22px} h3{font-size:17px;margin:0 0 14px}.primary-btn,.secondary-btn,.search-btn{border:0;border-radius:4px;cursor:pointer;font-weight:700;padding:11px 18px;display:inline-flex;justify-content:center;align-items:center}.primary-btn{background:var(--blue);color:#fff}.primary-btn:hover{background:var(--blue-dark)}.secondary-btn{background:#fff;border:1px solid #bac6cf;color:#40515f}.primary-btn.full{width:100%}.text-link,.clear-link{color:var(--blue);font-weight:600}
.login-page{min-height:calc(100vh - 150px);display:grid;place-items:center}.login-panel{width:min(440px,100%);background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);border-radius:6px;padding:38px}.login-logo{margin-bottom:20px}.login-form{display:grid;gap:9px;margin-top:24px}.login-form label{font-size:13px;font-weight:700}.demo-login{margin-top:20px;background:#f6f9fb;border:1px solid var(--border);padding:12px 14px;display:flex;justify-content:space-between;font-size:13px}.error-box{padding:12px;background:#fff1f0;border:1px solid #f0c5c2;color:#a4352d;border-radius:4px;margin:14px 0}
.dashboard-heading,.order-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}.dashboard-heading p{margin:0}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px}.summary-card{background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);padding:24px;display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;column-gap:14px}.summary-icon{grid-row:1/3;width:44px;height:44px;border-radius:50%;background:#eaf5f9;color:var(--blue);display:grid;place-items:center;font-weight:900}.summary-card strong{font-size:27px}.summary-card small{color:var(--muted)}.panel{background:#fff;border:1px solid var(--border);box-shadow:var(--shadow)}.panel-title-row{padding:20px 22px;border-bottom:1px solid var(--border)}.panel-title-row p{margin:5px 0 0}.filter-bar{padding:18px 22px;background:#f8fafb;border-bottom:1px solid var(--border);display:flex;gap:14px;align-items:end}.filter-field{min-width:190px}.filter-field.grow{flex:1}.filter-field label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}.search-btn{background:var(--blue);color:#fff;height:41px}.clear-link{padding:11px 0}.orders-table-wrap{overflow-x:auto}.orders-table{width:100%;border-collapse:collapse}.orders-table th{padding:12px 16px;text-align:left;font-size:12px;color:#53616d;background:#fbfcfd;border-bottom:1px solid var(--border)}.orders-table td{padding:16px;border-bottom:1px solid var(--border);vertical-align:top;font-size:14px}.orders-table td small{display:block;color:var(--muted);margin-top:5px;line-height:1.3}.order-id{color:var(--blue)}.status{display:inline-block;padding:5px 9px;border-radius:14px;font-size:12px;font-weight:700;background:#edf3f6}.status-confirmed{background:#eaf7f1;color:#18724c}.status-in_transit{background:#e9f3fa;color:#11638c}.status-delivered{background:#edf8e8;color:#4b7b2b}.status-cancelled{background:#fdeeed;color:#a53a32}.empty-state{padding:50px;text-align:center;display:grid;gap:8px;color:var(--muted)}
.wizard-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}.wizard-main{display:grid;gap:16px}.step-card{background:#fff;border:1px solid var(--border);box-shadow:var(--shadow)}.step-card-head{padding:18px 22px;display:flex;gap:14px;align-items:center;border-bottom:1px solid var(--border)}.step-card-head p{margin:4px 0 0;color:var(--muted);font-size:13px}.step-card-head.clickable{cursor:pointer}.step-number{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-weight:800}.step-card-body{padding:22px}.step-card.collapsed .step-card-body,.step-card.collapsed .step-actions{display:none}.step-card.collapsed .step-card-head{border-bottom:0}.choice-row{display:flex;gap:12px;flex-wrap:wrap}.choice-tile{position:relative;display:flex;align-items:center;gap:8px;border:1px solid var(--border);padding:13px 16px;min-width:180px;cursor:pointer;background:#fff}.choice-tile.compact{min-width:150px}.choice-tile input{position:absolute;opacity:0;pointer-events:none}.choice-dot{width:18px;height:18px;border:2px solid #a9b4bd;border-radius:50%;display:inline-block}.choice-tile:has(input:checked){border-color:var(--orange);box-shadow:inset 0 0 0 1px var(--orange);background:#fffaf0}.choice-tile:has(input:checked) .choice-dot{border-color:var(--orange);box-shadow:inset 0 0 0 4px #fff;background:var(--orange)}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.subpanel{border:1px solid var(--border);padding:18px;display:grid;gap:9px}.subpanel.full-width{margin-top:18px}.subpanel-title{display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--border);padding-bottom:11px;margin-bottom:2px}.subpanel-title h3{margin:0}.subpanel label,.step-card-body>div>label{font-size:13px;font-weight:650}.subpanel label small{font-weight:400;color:var(--muted)}.two-col,.three-col,.contact-grid,.insurance-row{display:grid;gap:12px}.two-col{grid-template-columns:1fr 1fr}.three-col{grid-template-columns:160px 240px 1fr}.contact-grid{grid-template-columns:1.2fr 1fr 100px 1fr}.contact-grid>div:nth-child(5),.contact-grid>div:nth-child(6),.contact-grid>div:nth-child(7){grid-column:auto}.help-text{margin:0 0 12px;color:var(--muted)}.conditional-box{margin-top:14px;padding:14px;border:1px solid #cddfe7;background:#f4fafc;display:none}.inline-radios{display:flex;gap:18px;margin-top:10px}.inline-radios label{font-weight:500}.inline-radios input{width:auto}.check-row{display:flex;align-items:center;gap:20px;margin-top:15px}.check-row label{display:flex;align-items:center;gap:7px}.check-row input[type=checkbox]{width:auto}.check-row select{max-width:260px}.step-actions{padding:15px 22px;border-top:1px solid var(--border);display:flex;justify-content:space-between}.step-sidebar{background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);position:sticky;top:94px}.step-sidebar h3{padding:18px;margin:0;border-bottom:1px solid var(--border)}.side-step{display:flex;gap:12px;padding:17px 18px;border-bottom:1px solid #eef1f3;color:#9aa4ac}.side-step span{width:26px;height:26px;border-radius:50%;border:2px solid currentColor;display:grid;place-items:center;font-size:12px;font-weight:800}.side-step div{display:grid;gap:3px}.side-step small{font-size:11px}.side-step.active{color:var(--blue);background:#f8fcfe}.side-cancel{display:block;padding:17px 18px;color:var(--blue);font-size:13px}.toggle-line{display:flex;align-items:center;gap:12px;margin-bottom:20px}.switch{position:relative;width:54px;height:28px;display:inline-block}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;inset:0;border-radius:20px;background:#aab4bd;cursor:pointer}.slider:before{content:"";position:absolute;width:22px;height:22px;left:3px;top:3px;border-radius:50%;background:white;transition:.2s}.switch input:checked+.slider{background:var(--blue)}.switch input:checked+.slider:before{transform:translateX(26px)}.nonstandard-wrap{display:none}.nonstandard-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.pallet-row{display:grid;grid-template-columns:34px repeat(4,1fr) 1.2fr .8fr 1.5fr auto 34px;gap:8px;padding:12px 0;border-top:1px solid var(--border);align-items:center}.pallet-number{font-weight:800;color:var(--blue)}.row-check{display:flex;gap:5px;align-items:center;font-size:12px}.row-check input{width:auto}.remove-row{border:0;background:#fff;color:#b34b43;font-size:24px;cursor:pointer}.insurance-row{grid-template-columns:1fr 180px;margin:20px 0}.review-grid{display:grid;gap:18px}.review-section{border-bottom:1px solid var(--border);padding-bottom:16px}.review-section p{line-height:1.6}.review-locations{display:grid;grid-template-columns:1fr 1fr;gap:30px}.review-totals{display:flex;gap:45px;margin-top:20px}.review-totals span{display:grid;gap:5px}.review-totals small{color:var(--muted)}.rate-banner{margin-top:18px;border:1px solid #c9dfe8;background:#f4fafc;padding:18px;display:grid;grid-template-columns:1fr auto;gap:4px 20px;align-items:center}.rate-banner span{font-weight:700}.rate-banner strong{font-size:25px;color:var(--blue)}.rate-banner small{grid-column:1/3;color:var(--muted)}
@media(max-width:1050px){.wizard-layout{grid-template-columns:1fr}.step-sidebar{position:static;order:-1;display:flex;align-items:stretch}.step-sidebar h3{display:none}.side-step{flex:1}.side-cancel{display:none}.contact-grid{grid-template-columns:1fr 1fr}.summary-grid{grid-template-columns:1fr 1fr}.filter-bar{flex-wrap:wrap}.three-col{grid-template-columns:1fr 1fr}.three-col>div:last-child{grid-column:1/3}.pallet-row{grid-template-columns:34px 1fr 1fr}.row-description{grid-column:2/4}.header-inner{gap:12px}.brand{min-width:auto}.brand span:last-child{display:none}.user-menu div:nth-child(2){display:none}}
@media(max-width:700px){.page-shell{padding:24px 14px}.header-inner{padding:0 14px}.main-nav a{padding:0 9px;font-size:13px}.dashboard-heading,.order-heading{align-items:flex-start;flex-direction:column}.summary-grid,.location-grid,.two-col,.three-col,.contact-grid,.review-locations{grid-template-columns:1fr}.three-col>div:last-child{grid-column:auto}.filter-bar{display:grid}.filter-field{min-width:0}.choice-tile{width:100%}.step-sidebar{display:none}.review-totals{flex-direction:column;gap:12px}.pallet-row{grid-template-columns:30px 1fr}.pallet-row>*{grid-column:2}.pallet-number{grid-column:1;grid-row:1}.remove-row{grid-column:1;grid-row:2}.user-menu{margin-left:auto}.main-nav{display:none}}

/* ===============================
   Routes Transport brand refresh
   =============================== */
:root{
  --routes-navy:#143f6b;
  --routes-navy-deep:#0d2f52;
  --routes-blue:#0071b9;
  --routes-blue-bright:#0d84d2;
  --routes-silver:#9aa4af;
  --routes-light:#eef4f8;
  --routes-ice:#f7fafc;
  --routes-shadow:0 12px 30px rgba(20,63,107,.08);
  --blue:var(--routes-blue);
  --blue-dark:#005d98;
  --orange:var(--routes-blue);
  --bg:#f3f7fa;
  --text:#253746;
  --border:#dce4ea;
}
body{background:linear-gradient(180deg,#f7fafc 0,#f1f5f8 100%);min-height:100vh}
.site-header{background:linear-gradient(90deg,#fff 0%,#fbfdff 65%,#f3f8fc 100%);border-bottom:3px solid var(--routes-blue);box-shadow:0 5px 18px rgba(13,47,82,.08)}
.header-inner{height:82px;max-width:1540px}
.routes-brand{min-width:300px;gap:14px}
.routes-logo{width:150px;height:56px;object-fit:contain;object-position:left center;display:block}
.brand-copy{padding-left:14px;border-left:1px solid #d5dee5;line-height:1.1}
.brand-copy strong{color:var(--routes-navy);font-size:14px;letter-spacing:.02em}
.brand-copy small{color:#738292;margin-top:4px}
.main-nav a{color:#425667;font-weight:700;border-bottom-width:4px;gap:7px}
.main-nav a:hover,.main-nav a.active{color:var(--routes-blue);background:linear-gradient(180deg,#fff 0,#f2f8fc 100%);border-bottom-color:var(--routes-blue)}
.nav-icon{font-size:18px;font-weight:500}
.user-avatar{background:linear-gradient(145deg,var(--routes-navy),var(--routes-blue));color:#fff;box-shadow:0 4px 10px rgba(20,63,107,.2)}
.user-copy strong{color:var(--routes-navy)}
.signout-btn{border:1px solid #cad5dd!important;background:#fff!important;border-radius:6px!important;padding:7px 10px!important;color:var(--routes-navy)!important}
.signout-btn:hover{border-color:var(--routes-blue)!important;color:var(--routes-blue)!important;background:#f3f9fd!important}
.page-shell{max-width:1540px;padding-top:30px}
.site-footer{max-width:1540px;margin:0 auto;padding:20px 28px 30px;border-top:1px solid #d8e1e8;display:flex;justify-content:space-between;align-items:center;color:#758491}
.site-footer div{display:flex;gap:10px;align-items:baseline}.site-footer strong{color:var(--routes-navy)}

.primary-btn,.search-btn{background:linear-gradient(135deg,var(--routes-blue),#005e9e);border-radius:7px;box-shadow:0 5px 12px rgba(0,113,185,.18);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.primary-btn:hover,.search-btn:hover{background:linear-gradient(135deg,#087fc9,#004f87);transform:translateY(-1px);box-shadow:0 7px 16px rgba(0,113,185,.24)}
.secondary-btn{border-radius:7px;border-color:#c8d4dd;color:var(--routes-navy);font-weight:700}
.secondary-btn:hover{border-color:var(--routes-blue);color:var(--routes-blue);background:#f5faff}
input,select,textarea{border-radius:6px;border-color:#c9d5de;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--routes-blue);box-shadow:0 0 0 3px rgba(0,113,185,.12)}

/* Login */
/* Keep the normal Routes header visible on the sign-in page. */
body:has(.branded-login-page) .page-shell{max-width:none;padding:0;min-height:calc(100vh - 82px)}
body:has(.branded-login-page) .site-footer{display:none}
.branded-login-page{min-height:calc(100vh - 82px);grid-template-columns:minmax(420px,1.15fr) minmax(380px,.85fr);place-items:stretch;background:#fff}
.login-showcase{position:relative;display:grid;align-items:start;overflow:hidden;background:linear-gradient(135deg,var(--routes-navy-deep),var(--routes-navy) 50%,var(--routes-blue));color:#fff;padding:64px 8vw 54px}
.login-showcase:before{content:"";position:absolute;inset:auto -120px -180px auto;width:520px;height:520px;border-radius:50%;border:72px solid rgba(255,255,255,.06)}
.login-showcase:after{content:"";position:absolute;left:-160px;top:-180px;width:480px;height:480px;border-radius:50%;background:rgba(255,255,255,.035)}
.showcase-inner{position:relative;z-index:1;max-width:650px}
.login-showcase h1{font-size:54px;line-height:1.03;letter-spacing:-.03em;margin:0 0 20px;max-width:540px}
.login-showcase p{font-size:18px;line-height:1.65;color:rgba(255,255,255,.82);max-width:580px}
.showcase-points{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:32px}.showcase-points span{padding:9px 12px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.07);font-size:13px}
.modern-login-panel{align-self:start;justify-self:center;width:min(480px,calc(100% - 70px));border:0;box-shadow:none;padding:42px 48px 38px}
.login-panel-logo{display:block;margin:0 0 22px}.login-panel-logo img{width:205px;height:auto;display:block}
.modern-login-panel .eyebrow{letter-spacing:.16em}.modern-login-panel h2{font-size:34px;color:var(--routes-navy);margin:8px 0 10px}.modern-login-panel .muted{line-height:1.6}
.modern-login-panel .login-form{margin-top:26px;gap:10px}.modern-login-panel .login-form label{margin-top:6px;color:#425566}.modern-login-panel input{padding:13px 14px;background:#fbfdfe}.login-submit{margin-top:12px;padding:14px 18px}
.demo-login{border-radius:7px;background:#f5f8fa;border-color:#d8e2e9;color:#637482}

/* Dashboard */
.dashboard-hero{position:relative;overflow:hidden;min-height:174px;margin-bottom:22px;padding:30px 34px;border-radius:12px;background:linear-gradient(112deg,var(--routes-navy-deep),var(--routes-navy) 55%,var(--routes-blue));color:#fff;display:flex;justify-content:space-between;align-items:center;box-shadow:0 16px 34px rgba(13,47,82,.15)}
.dashboard-hero:after{content:"";position:absolute;right:-80px;top:-140px;width:380px;height:380px;border:64px solid rgba(255,255,255,.06);border-radius:50%}
.dashboard-hero>div,.dashboard-hero>a{position:relative;z-index:1}.dashboard-hero h1{font-size:34px;margin:6px 0 8px}.dashboard-hero p{margin:0;color:rgba(255,255,255,.78)}
.hero-eyebrow{color:#a8d8f4}.hero-action{background:#fff;color:var(--routes-navy);box-shadow:0 8px 20px rgba(0,0,0,.12);font-size:15px;padding:13px 21px}.hero-action:hover{background:#f2f8fc;color:var(--routes-blue)}
.summary-grid{gap:16px}.summary-card{border:0;border-radius:10px;box-shadow:var(--routes-shadow);padding:22px;background:linear-gradient(180deg,#fff,#fbfdfe);transition:transform .15s ease,box-shadow .15s ease;position:relative;overflow:hidden}.summary-card:hover{transform:translateY(-2px);box-shadow:0 15px 34px rgba(20,63,107,.12)}
.summary-card:after{content:"";position:absolute;right:-22px;bottom:-28px;width:76px;height:76px;border-radius:50%;background:rgba(0,113,185,.04)}
.summary-icon{background:linear-gradient(145deg,#e8f5fc,#dceef8);color:var(--routes-blue);box-shadow:inset 0 0 0 1px #d1e6f2}.summary-card strong{color:var(--routes-navy)}
.panel{border:0;border-radius:10px;box-shadow:var(--routes-shadow);overflow:hidden}.panel-title-row{display:flex;justify-content:space-between;align-items:center;padding:23px 24px;background:linear-gradient(180deg,#fff,#fbfdfe)}.panel-kicker{font-size:10px!important;font-weight:900;letter-spacing:.16em;color:var(--routes-blue);margin:0 0 6px!important}.panel-new-order{white-space:nowrap}.filter-bar{background:#f6f9fb;padding:17px 24px}.orders-table th{background:#eef4f8;color:var(--routes-navy);text-transform:uppercase;letter-spacing:.035em;font-size:11px;padding-top:13px;padding-bottom:13px}.orders-table tbody tr{transition:background .12s ease}.orders-table tbody tr:hover{background:#f8fbfd}.order-id{color:var(--routes-blue)}

/* Booking wizard */
.order-heading h1{color:var(--routes-navy)}
.step-card,.step-sidebar{border:0;border-radius:10px;box-shadow:var(--routes-shadow);overflow:hidden}.step-card-head{background:linear-gradient(180deg,#fff,#fbfdfe);padding:20px 23px}.step-number{background:linear-gradient(145deg,var(--routes-navy),var(--routes-blue));box-shadow:0 4px 9px rgba(0,113,185,.2)}.step-card-body{padding:24px}.subpanel{border-radius:8px;border-color:#dce5eb;background:#fcfdfe}.subpanel-title{color:var(--routes-navy)}.choice-tile{border-radius:7px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.choice-tile:hover{border-color:#a9c7d9;background:#fbfdff}.choice-tile:has(input:checked){border-color:var(--routes-blue);box-shadow:inset 0 0 0 1px var(--routes-blue),0 3px 10px rgba(0,113,185,.08);background:#f3faff}.choice-tile:has(input:checked) .choice-dot{border-color:var(--routes-blue);background:var(--routes-blue)}.conditional-box,.rate-banner{border-color:#c8dfed;background:#f2f9fd;border-radius:8px}.rate-banner strong{color:var(--routes-navy)}
.step-sidebar h3{background:linear-gradient(135deg,var(--routes-navy),#174f82);color:#fff}.side-step.active{color:var(--routes-blue);background:#f0f8fd;border-left:4px solid var(--routes-blue);padding-left:14px}.side-cancel{background:#fbfdfe}
.step-actions{background:#fbfdfe}.switch input:checked+.slider{background:var(--routes-blue)}
.toast{border-radius:8px;box-shadow:0 4px 12px rgba(31,138,91,.08)}

@media(max-width:1050px){
  .routes-brand{min-width:auto}.brand-copy{display:none}.routes-logo{width:132px}
  .branded-login-page{grid-template-columns:1fr 1fr}.login-showcase{padding:48px}.login-showcase h1{font-size:42px}.modern-login-panel{padding:34px 30px;width:min(440px,calc(100% - 30px))}.login-panel-logo img{width:180px}
}
@media(max-width:760px){
  .header-inner{height:70px}.routes-logo{width:112px;height:48px}.user-copy,.signout-btn{display:none!important}.site-footer{padding-left:14px;padding-right:14px}
  .branded-login-page{display:grid;grid-template-columns:1fr;align-content:start;background:linear-gradient(180deg,#f2f7fa,#fff);min-height:calc(100vh - 70px)}.login-showcase{display:none}.modern-login-panel{align-self:start;margin-top:24px;width:min(480px,calc(100% - 28px));padding:30px 24px;background:#fff;border:1px solid #dce5eb;box-shadow:var(--routes-shadow);border-radius:12px}.login-panel-logo{display:block;margin-bottom:22px}.login-panel-logo img{width:185px;height:auto}.modern-login-panel h2{font-size:30px}
  .dashboard-hero{align-items:flex-start;flex-direction:column;gap:22px;padding:26px 23px}.dashboard-hero h1{font-size:29px}.hero-action{width:100%}.panel-title-row{align-items:flex-start;gap:15px;flex-direction:column}.panel-new-order{width:100%}.site-footer{flex-direction:column;align-items:flex-start;gap:6px}
}

/* --- Routes administration portal --- */
.admin-hero{min-height:150px}
.admin-hero-actions{display:flex;gap:10px;position:relative;z-index:2}.admin-hero-actions .hero-action{min-width:130px;text-align:center}
.admin-email-banner{margin:-8px 0 20px;padding:12px 16px;border:1px solid #cfe3ef;background:#f2f9fd;border-radius:8px;color:#3f596b;font-size:13px}.admin-email-banner strong{color:var(--routes-navy)}
.admin-section{margin-top:22px}.admin-card-grid{padding:18px 22px 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:13px}.admin-customer-card{padding:18px;border:1px solid #dce5eb;border-radius:9px;background:#fff;box-shadow:0 4px 12px rgba(20,63,107,.04);transition:.15s ease;display:flex;flex-direction:column;gap:7px}.admin-customer-card:hover{border-color:#9dc6dd;box-shadow:0 8px 20px rgba(20,63,107,.1);transform:translateY(-1px)}.admin-customer-card div{display:flex;align-items:center;gap:9px;color:var(--routes-navy)}.admin-customer-card span,.admin-customer-card small{color:#667988}.account-dot{width:10px;height:10px;border-radius:50%;background:var(--routes-blue);display:inline-block}
.admin-list{padding:0 22px 22px}.admin-list-row{padding:15px 4px;border-bottom:1px solid #e5ebef;display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-list-row:last-child{border-bottom:0}.admin-list-row div{display:flex;flex-direction:column;gap:3px}.admin-list-row small{color:#758694}.admin-list-row>span{color:var(--routes-blue);font-weight:700;font-size:13px}
.email-ok{color:#148251;font-weight:800}.email-bad{color:#bd3440;font-weight:800}.email-pending{color:#8a6b21;font-weight:700}
.admin-form-shell{max-width:820px;margin:10px auto 40px}.admin-form-shell.wide{max-width:1040px}.admin-form-heading{margin-bottom:18px}.admin-form-heading>a,.account-page-head a{color:var(--routes-blue);font-weight:700;font-size:13px}.admin-form-heading h1,.account-page-head h1{margin:10px 0 5px;color:var(--routes-navy)}.admin-form-heading p,.account-page-head p{color:#6d7f8d;margin:0}.admin-form-card{padding:24px}.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:17px}.form-row label{font-weight:700;color:#405565}.form-row small{color:#788895}.field-error{color:#bd3440;font-size:12px}.form-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #e1e8ed;padding-top:18px;margin-top:8px}.two-col-form{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.full-span{grid-column:1/-1}.permission-box{padding:15px;border:1px solid #dae5eb;background:#f8fbfd;border-radius:8px}.permission-box ul{list-style:none;padding:0;margin:8px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.permission-box li label{display:flex;align-items:center;gap:8px;font-weight:600}.permission-box input[type=checkbox]{width:auto}
.account-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:6px 0 22px}.account-page-head>div:last-child{display:flex;gap:8px;align-items:center}.rate-chip{padding:12px 16px;border:1px solid #cde1ec;background:#f3f9fc;border-radius:8px!important;display:flex!important;flex-direction:column;align-items:flex-end!important;gap:2px!important}.rate-chip small{color:#69808f}.rate-chip strong{font-size:20px;color:var(--routes-navy)}
.admin-order-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.detail-card{padding:22px}.detail-card h2{margin:0 0 18px;color:var(--routes-navy)}.detail-card h3{font-size:13px;color:var(--routes-blue);text-transform:uppercase;letter-spacing:.05em;margin:18px 0 5px}.detail-card p{line-height:1.6;color:#506474}.detail-card dl{display:grid;grid-template-columns:145px 1fr;gap:10px;margin:0}.detail-card dt{font-weight:700;color:#6b7c88}.detail-card dd{margin:0;color:#304757}.detail-card form{display:flex;gap:10px;align-items:center}.detail-card select{max-width:250px}.clickable-row .order-id{font-weight:800}
.toast.warning{background:#fff8e7;border-color:#efcf83;color:#75520d}.toast.error{background:#fff0f0;border-color:#e8a5aa;color:#8c2630}
@media(max-width:760px){.admin-hero-actions{width:100%;flex-direction:column}.admin-hero-actions .hero-action{width:100%}.two-col-form,.admin-order-grid{grid-template-columns:1fr}.account-page-head{align-items:flex-start;flex-direction:column}.account-page-head>div:last-child{width:100%;flex-wrap:wrap}.form-actions{flex-direction:column-reverse}.form-actions a,.form-actions button{width:100%;text-align:center}.detail-card dl{grid-template-columns:1fr}.detail-card form{align-items:stretch;flex-direction:column}.detail-card select{max-width:none}}

/* --- V5: Address intelligence + quote breakdown --- */
.address-api-note{padding:10px 12px;margin:4px 0 13px;border:1px solid #d5e6f0;background:#f5fafd;border-radius:7px;color:#607786;font-size:12px}
.address-help{display:block;color:#768a98;margin:-4px 0 12px}.google-address-search{margin:5px 0 6px;min-height:44px}.google-place-control{width:100%;min-width:100%;--gmpx-color-surface:#fff}
.postal-row{display:flex;gap:7px;align-items:center}.postal-row input{min-width:0;flex:1}.mini-btn{height:42px;padding:0 12px;border:1px solid #acc9da;background:#f1f8fc;color:var(--routes-blue);border-radius:6px;font-weight:800;cursor:pointer}.mini-btn:hover{background:#e7f4fb}.lookup-status{display:block;min-height:16px;margin-top:4px;font-size:11px;color:#718390}.lookup-status.ok{color:#168256;font-weight:700}.lookup-status.bad{color:#b13c47;font-weight:700}
.save-address-box{margin-top:14px;padding:11px 12px;border-top:1px solid #e1e8ed;background:#fafcfd;border-radius:0 0 7px 7px}.save-address-box label{display:flex!important;align-items:center;gap:8px;margin:0!important;font-weight:700!important}.save-address-box input[type=checkbox]{width:auto}.address-label-input{display:none;margin-top:9px!important}
.quote-breakdown{margin-top:18px;border:1px solid #c8dfed;border-radius:10px;overflow:hidden;background:#fff}.quote-head{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:15px 18px;background:#f2f9fd;border-bottom:1px solid #d9e9f2}.quote-head span{font-size:16px;font-weight:900;color:var(--routes-navy)}.quote-head small{color:#6c8290}.quote-line{display:flex;justify-content:space-between;align-items:center;padding:11px 18px;border-bottom:1px solid #edf1f4;color:#4d6372}.quote-line strong{color:var(--routes-navy)}.quote-line.total{padding:15px 18px;background:#fbfdfe;font-size:17px;font-weight:900}.quote-line.total strong{font-size:21px;color:var(--routes-blue)}.quote-note{padding:10px 18px;color:#71838f;font-size:11px;background:#fbfdfe}
.address-book-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;margin-bottom:35px}.saved-address-card{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid #e3e9ed}.saved-address-card:last-child{border-bottom:0}.saved-address-card strong{color:var(--routes-navy)}.saved-address-card p{margin:5px 0 0;color:#607381;line-height:1.5}.saved-address-card form{display:block}.danger-link{border:0;background:transparent;color:#b23843;font-weight:800;cursor:pointer}.address-book-form .form-row{margin-bottom:12px}
.error-box{padding:14px 17px;margin-bottom:17px;border:1px solid #e7a8ae;border-radius:8px;background:#fff3f3;color:#8e2933;line-height:1.5}.error-box strong{display:block;margin-bottom:5px}
@media(max-width:900px){.address-book-layout{grid-template-columns:1fr}.quote-head{align-items:flex-start;flex-direction:column;gap:4px}}


/* V5.2: advisory address consistency warning */
.address-validation-warning{margin:7px 0 11px;padding:10px 12px;border:1px solid #e2c16d;border-left:4px solid #d99a16;border-radius:7px;background:#fff8e6;color:#775411;font-size:12px;font-weight:700;line-height:1.45}
.address-validation-warning[hidden]{display:none}

/* --- V5.6: V2-style centered login, branded for Routes --- */
body:has(.routes-login-simple){background:linear-gradient(180deg,#eef4f8 0,#f7fafc 48%,#f4f7f9 100%)}
body:has(.routes-login-simple) .page-shell{max-width:1500px;padding:30px 28px 38px;min-height:calc(100vh - 82px - 64px);display:grid;align-items:center}
.routes-login-simple{min-height:0;display:grid;place-items:center;width:100%}
.routes-login-card{position:relative;width:min(455px,100%);padding:30px 38px 28px;border:1px solid #d7e1e8;border-radius:12px;background:#fff;box-shadow:0 18px 48px rgba(13,47,82,.13);overflow:hidden}
.routes-login-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--routes-navy-deep),var(--routes-blue),#8db6cf)}
.routes-login-logo{display:flex;justify-content:center;margin:0 0 13px}
.routes-login-logo img{display:block;width:185px;max-width:60%;height:auto}
.routes-login-card .eyebrow{text-align:center;color:var(--routes-blue);letter-spacing:.13em;font-size:11px;margin-top:2px}
.routes-login-card h1{text-align:center;color:var(--routes-navy);font-size:31px;letter-spacing:-.02em;margin:7px 0 7px}
.routes-login-copy{text-align:center;line-height:1.5;margin:0 auto;max-width:340px;font-size:14px}
.routes-login-form{margin-top:21px;gap:8px}
.routes-login-form label{margin-top:4px;color:#405665;font-size:12px;letter-spacing:.01em}
.routes-login-form input{padding:12px 13px;border-radius:7px;background:#fbfdfe;border-color:#c9d6df}
.routes-login-form input:focus{border-color:var(--routes-blue);outline:3px solid rgba(0,113,185,.11)}
.routes-login-submit{margin-top:10px;padding:13px 18px;border-radius:7px;background:linear-gradient(135deg,var(--routes-navy),var(--routes-blue));box-shadow:0 7px 16px rgba(20,63,107,.18)}
.routes-login-submit:hover{background:linear-gradient(135deg,var(--routes-navy-deep),#006aa9)}
.routes-login-security{margin:15px 0 0;text-align:center;color:#78909f;font-size:11px}
.routes-login-security:before{content:"✓";display:inline-grid;place-items:center;width:17px;height:17px;margin-right:6px;border-radius:50%;background:#e7f5ee;color:#168256;font-weight:900}
.routes-demo-login{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:17px;padding:0;border:1px solid #dce5eb;border-radius:8px;overflow:hidden;background:#f7fafc;font-size:11px}
.routes-demo-login>div{padding:10px 11px;display:grid;gap:2px}
.routes-demo-login>div+div{border-left:1px solid #dce5eb}
.routes-demo-login strong{color:var(--routes-navy);font-size:11px}
.routes-demo-login span{color:#6c7f8c;font-size:10px}
body:has(.routes-login-simple) .site-footer{background:transparent;border-top:0;padding-top:8px;padding-bottom:16px}
@media(max-width:760px){
  body:has(.routes-login-simple) .page-shell{padding:22px 14px 28px;align-items:start}
  .routes-login-card{padding:27px 22px 24px;border-radius:10px}
  .routes-login-logo img{width:165px}
  .routes-login-card h1{font-size:28px}
  .routes-demo-login{grid-template-columns:1fr}
  .routes-demo-login>div+div{border-left:0;border-top:1px solid #dce5eb}
}

/* --- V6: pending workflow, services, customer order detail and tariff admin --- */
.status-pending{background:#fff4d8;color:#8a6518}.status-quote_requested{background:#f3eafd;color:#6b3a91}.quote-needed-text{color:#6b3a91}.editable-hint{color:#8a6518!important;font-weight:700}.clickable-orders-table tbody tr[data-href]{cursor:pointer;transition:background .15s}.clickable-orders-table tbody tr[data-href]:hover{background:#f4f9fc}.clickable-orders-table tbody tr[data-href]:focus{outline:2px solid rgba(11,108,145,.22);outline-offset:-2px}
.customer-summary-five{grid-template-columns:repeat(5,1fr)}
.service-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:15px 0 20px}.service-choice{position:relative;display:flex!important;gap:12px;align-items:flex-start;padding:17px;border:1px solid #d6e0e6;border-radius:9px;background:#fff;cursor:pointer;min-height:82px}.service-choice input{position:absolute;opacity:0;pointer-events:none}.service-check{width:25px;height:25px;flex:0 0 25px;border:2px solid #a8b8c2;border-radius:6px;color:transparent;display:grid;place-items:center;font-weight:900}.service-choice>span:last-child{display:grid;gap:4px}.service-choice small{color:#6f8290;font-weight:400;line-height:1.35}.service-choice:has(input:checked){border-color:var(--routes-blue);background:#f2f9fd;box-shadow:inset 0 0 0 1px var(--routes-blue)}.service-choice:has(input:checked) .service-check{background:var(--routes-blue);border-color:var(--routes-blue);color:#fff}.empty-service-note{padding:18px;border:1px dashed #cbd8e0;border-radius:8px;background:#fafcfd;color:#6e818f;margin:12px 0 20px}
.white-glove-choice{display:flex!important;gap:13px;align-items:flex-start;padding:18px;border:1px solid #c9dbe7;border-radius:10px;background:linear-gradient(135deg,#f4f9fc,#fbfdfe);cursor:pointer}.white-glove-choice input{width:auto;margin-top:5px}.white-glove-icon{width:34px;height:34px;border-radius:50%;background:var(--routes-navy);color:#fff;display:grid;place-items:center;flex:0 0 34px}.white-glove-choice>span:last-child{display:grid;gap:5px}.white-glove-choice small{font-weight:400;color:#687e8e;line-height:1.4}
.email-copy-choice{display:flex!important;gap:10px;align-items:flex-start;margin-top:16px;padding:14px 16px;border:1px solid #d9e3e9;border-radius:8px;background:#fafcfd}.email-copy-choice input{width:auto;margin-top:4px}.email-copy-choice span{display:grid;gap:3px}.email-copy-choice small{font-weight:400;color:#71838f}
.pricing-loading{padding:16px;text-align:center;color:#6b7e8c;font-weight:700}.pricing-loading[hidden]{display:none}.quote-request-box{margin-top:18px;padding:18px 20px;border:1px solid #cdb7e6;border-left:5px solid #7649a3;border-radius:9px;background:#f8f3fd;color:#59317a}.quote-request-box[hidden]{display:none}.quote-request-box strong{font-size:18px}.quote-request-box p{margin:7px 0;color:#65467d}.quote-request-box small{color:#7a628d}.detail-quote-box{margin:0 0 20px}.quote-chip{background:#f8f3fd;border-color:#d9c9ea}.quote-chip strong{color:#6b3a91!important}.service-line{background:#fbfdfe}
.service-detail-row{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid #e8edf0;align-items:flex-start}.service-detail-row:last-child{border-bottom:0}.service-detail-row>span{display:grid;gap:3px}.service-detail-row small{color:#758794}.order-lines-card,.order-price-card,.order-notes-card{margin-bottom:20px}.detail-lines-table{display:grid}.detail-lines-head,.detail-lines-row{display:grid;grid-template-columns:120px 1.15fr 80px 120px 1.6fr;gap:12px;padding:11px 4px;border-bottom:1px solid #e4eaee;align-items:start}.detail-lines-head{font-size:12px;font-weight:800;color:#667a88;background:#f8fafb;padding:10px}.detail-lines-row{font-size:13px}.admin-status-note{font-size:12px;margin-top:12px!important}
.tariff-summary{display:grid;grid-template-columns:160px 1fr 1fr;gap:20px;padding:20px 22px}.tariff-summary>div{display:grid;gap:5px}.tariff-summary small{color:#71828f}.tariff-summary strong{color:var(--routes-navy)}.tariff-issues{margin-bottom:16px;padding:16px 18px;border:1px solid #e7b1b6;border-left:5px solid #bd3440;border-radius:8px;background:#fff2f3;color:#822b34}.tariff-issues ul{margin:10px 0 0;padding-left:20px}.tariff-issues li{margin:5px 0}.tariff-format-box{padding:16px;margin-bottom:20px;border:1px solid #cfdee7;background:#f5f9fb;border-radius:8px;display:grid;gap:8px}.tariff-format-box code{display:block;padding:10px;background:#fff;border:1px solid #dce5eb;border-radius:5px;overflow-x:auto;color:#26485e}.tariff-format-box p{margin:0;color:#667b89;font-size:13px}
@media(max-width:1100px){.customer-summary-five{grid-template-columns:repeat(3,1fr)}.service-choice-grid{grid-template-columns:1fr}.detail-lines-head,.detail-lines-row{grid-template-columns:100px 1fr 60px 100px 1.4fr}.tariff-summary{grid-template-columns:1fr}}
@media(max-width:760px){.customer-summary-five{grid-template-columns:1fr 1fr}.detail-lines-head{display:none}.detail-lines-row{grid-template-columns:1fr;gap:4px;padding:14px}.service-detail-row{flex-direction:column;gap:6px}}
.standard-dim-note{display:block;margin:-12px 0 18px 66px;color:#718591;font-size:11px;line-height:1.4}

/* --- V6.2: improve edit/admin action button readability --- */
.account-page-head a.primary-btn,
.admin-form-card .primary-btn {
  background:linear-gradient(135deg,var(--routes-blue-bright),var(--routes-blue));
  color:#fff!important;
  border:1px solid rgba(0,82,137,.2);
  box-shadow:0 5px 12px rgba(0,113,185,.18);
}
.account-page-head a.primary-btn:hover,
.admin-form-card .primary-btn:hover {
  background:linear-gradient(135deg,#168fd8,#0068a9);
  color:#fff!important;
}
.account-page-head a.secondary-btn {
  background:#fff;
  color:var(--routes-navy)!important;
}
.account-page-head a.secondary-btn:hover {
  color:var(--routes-blue)!important;
}
