*{box-sizing:border-box}body{font-family:system-ui,sans-serif;margin:0;background:#f4f6fa;color:#1b2333}
header{background:#000;border-bottom:3px solid #ffd200;color:#fff;padding:10px 16px;display:flex;gap:16px;align-items:center}header b{font-size:18px}
header a{color:#fff;cursor:pointer;opacity:.85}header a.on{opacity:1;text-decoration:underline}header .sp{flex:1}
main{padding:16px;max-width:1200px;margin:auto}.card{background:#fff;border-radius:8px;padding:14px;margin-bottom:14px;box-shadow:0 1px 3px #0002}
label{display:block;font-size:12px;color:#556;margin-top:6px}input,select,textarea{width:100%;padding:7px;border:1px solid #c8cfdb;border-radius:5px;font-size:14px}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.chk{display:flex;gap:6px;align-items:center;margin-top:8px}.chk input{width:auto}
button{background:#d71920;color:#fff;border:0;border-radius:5px;padding:8px 14px;font-size:14px;cursor:pointer}button.sec{background:#e3e8f2;color:#1b2333}
table{width:100%;border-collapse:collapse;font-size:14px}td,th{padding:6px;border-bottom:1px solid #e5e8ef;text-align:left}tr.click{cursor:pointer}tr.click:hover{background:#f0f4fb}
.pill{padding:2px 8px;border-radius:10px;background:#e3e8f2;font-size:12px}.pill.delivered{background:#cdeccf}.pill.new{background:#ffe7b3}
.price{font-size:13px}.price .big{font-size:26px;font-weight:700}.err{color:#b00020}.sugg{border:1px solid #c8cfdb;background:#fff;max-height:200px;overflow:auto}.sugg div{padding:6px;cursor:pointer}.sugg div:hover{background:#eef}
.grid2{display:grid;grid-template-columns:2fr 1fr;gap:14px}@media(max-width:800px){.grid2{grid-template-columns:1fr}}
/* ---- mobile: never scroll the page sideways ---- */
html,body{max-width:100%;overflow-x:hidden}*,*::before,*::after{box-sizing:border-box}
img,canvas,iframe,video{max-width:100%}input,select,textarea,button{max-width:100%;min-width:0}
td,th,.card,main{overflow-wrap:anywhere;word-break:break-word}.row>*,.grid2>*{min-width:0}
header{flex-wrap:wrap;row-gap:6px}
table{max-width:100%}
@media(max-width:700px){
  main{padding:8px}.card{padding:10px}.row{grid-template-columns:1fr}
  header{gap:10px;padding:8px 10px}header .sp{display:none}
  table.stack,table.stack tbody,table.stack tr,table.stack td{display:block;width:100%}
  table.stack tr:first-child:has(th){display:none}
  table.stack tr{border:1px solid #e5e8ef;border-radius:6px;margin-bottom:8px;padding:6px;background:#fff}
  table.stack td{border:0;padding:3px 4px}
  table.stack td[data-l]::before{content:attr(data-l) ": ";font-weight:600;color:#556}
  table:not(.stack){display:block;overflow-x:auto}
}
/* address autocomplete: dropdown stays inside the field's width (no sideways scroll on phones) */
.ac-wrap{position:relative;width:100%;max-width:100%}
.ac-list{position:absolute;left:0;right:0;top:100%;z-index:50;background:#fff;border:1px solid #c8cfdb;border-radius:0 0 6px 6px;box-shadow:0 4px 10px #0002;max-height:260px;overflow-y:auto;overflow-x:hidden}
.ac-item{padding:9px 8px;cursor:pointer;font-size:14px;white-space:normal;overflow-wrap:anywhere}.ac-item:hover{background:#eef3fb}
.ac-foot{font-size:11px;color:#889;text-align:right;padding:3px 8px}.ac-badge{font-size:12px;min-height:0}.ac-badge .ok{color:#1b7a32}.ac-badge .warn{color:#a65f00}
.miles-note{font-size:12px;color:#556}

/* Daily Express Couriers brand: red #d71920, yellow #ffd200, silver #c0c4cc, black */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.hlogo{display:flex;align-items:center}.hdrlogo{display:block;height:40px;width:auto;max-width:46vw}
header a.on{color:#ffd200;opacity:1}.drvtag{color:#c0c4cc;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.brandband{background:#000;margin:-14px -14px 12px;padding:16px 14px;border-radius:8px 8px 0 0;border-bottom:3px solid #ffd200;text-align:center}
.brandlogo{display:block;width:100%;max-width:300px;height:auto;margin:auto}
.pill.delivered{background:#d9f2dc}.pill.new{background:#fff2b3}
@media(max-width:700px){.brandband{margin:-10px -10px 12px}.hdrlogo{height:32px}}
