/* RusaPOS Customer order tracking redesign; presentation only. */
.welcome.has-food-photo{overflow:hidden;isolation:isolate;min-height:192px}
.welcome .welcome-content{position:relative;z-index:1}
.welcome-food-photo{position:absolute;inset:0 0 0 auto;width:48%;height:100%;object-fit:cover;z-index:0;pointer-events:none}
.welcome.has-food-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f4f7f1 0%,#f4f7f1 44%,rgba(244,247,241,.91) 57%,rgba(244,247,241,.24) 100%);z-index:0;pointer-events:none}
.welcome.has-food-photo h1,.welcome.has-food-photo p{max-width:74%}
.welcome .table-label{background:rgba(255,255,255,.95);border-color:#d6e4d8;padding:9px 13px;letter-spacing:.045em}
.tabs{gap:6px;padding:8px 18px;border-radius:0 0 18px 18px;box-shadow:0 5px 17px rgba(24,37,30,.025)}
.tab{display:flex;justify-content:center;align-items:center;gap:8px;min-height:49px;border-radius:14px}
.tab .tab-icon{font-family:var(--font-sans);font-size:18px;line-height:1;opacity:.8;font-weight:600}
.tab.selected{background:#eaf5ed;color:#184c36}
.orders-heading{align-items:center;gap:12px;margin-top:8px;margin-bottom:22px}
.orders-heading .orders-subtitle{margin:7px 0 0;color:#5c6f66;font-size:14px;line-height:1.5}
.orders-heading .order-refresh{background:white;border:1px solid #d4e5dc;color:#1d5f41;border-radius:999px;min-height:44px;padding:10px 16px;font-weight:750;flex-shrink:0}
.order-card--tracking{padding:25px 24px 20px;border:1px solid #e2e9e3;border-radius:24px;box-shadow:0 8px 25px rgba(21,45,33,.06)}
.order-card--tracking .order-head{align-items:start;gap:12px}
.order-card--tracking .order-head h3{font-family:var(--font-sans);font-size:clamp(23px,4vw,30px);line-height:1.2;font-weight:800;letter-spacing:-.04em;margin:8px 0 7px;color:#132d23;overflow-wrap:anywhere}
.order-card--tracking .eyebrow{color:#728880;font-size:11px;letter-spacing:.12em}
.order-identity{min-width:0;display:flex;flex-direction:column;align-items:start}
.order-created{font-size:12px;color:#63786e;line-height:1.5}
.order-table{font-size:13px;color:#63786e;margin-top:4px;font-weight:600}
.order-card--tracking .status{display:inline-flex;align-items:center;gap:5px;padding:9px 12px;font-size:12px;white-space:normal;line-height:1.25;flex-shrink:0;max-width:44%}
.order-timeline{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;margin:32px 0 0;list-style:none}
.order-timeline::before{content:"";position:absolute;left:12.5%;right:12.5%;top:18px;height:3px;background:#e0eae4}
.order-milestone{position:relative;z-index:1;display:flex;align-items:center;flex-direction:column;text-align:center;gap:9px;min-width:0;padding:0 3px}
.milestone-dot{width:36px;height:36px;display:grid;place-items:center;background:#f3f6f3;border:2px solid #d7e3db;color:#7b8e83;font-size:14px;font-weight:850;border-radius:100%;font-variant-numeric:tabular-nums}
.order-milestone.is-complete .milestone-dot{background:#16884c;border-color:#e8f5ea;box-shadow:0 0 0 1px #b4dfbe;color:#fff;font-size:19px}
.order-milestone.is-current .milestone-dot{outline:2px solid #4faf73;outline-offset:2px}
.milestone-label{font-size:12px;font-weight:650;line-height:1.4;color:#778b7d;overflow-wrap:anywhere}
.order-milestone.is-complete .milestone-label{color:#244c37}
.order-card--tracking .order-stage-hint{display:flex;gap:9px;align-items:center;border-radius:12px;background:#eaf5ef;padding:12px 14px;color:#235d3e;font-size:13px;line-height:1.5;margin:22px 0 0;font-weight:600}
.order-card--tracking .order-stage-hint.is-void{background:#fff0ed;color:#943a2d}
.order-items{border-top:1px solid #e8eee9;margin-top:20px;padding-top:20px}
.order-items-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;color:#73877d;font-size:12px}
.order-items-heading h4{margin:0;font-size:15px;color:#314d3c;font-weight:750}
.order-card--tracking .order-lines{border:0;margin:10px 0 0;padding:0}
.order-item{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:14px;align-items:center;min-height:76px;padding:9px 0}
.order-item+.order-item{border-top:1px solid #f0f3ef}
.order-item-image,.order-item-image-placeholder{width:62px;height:62px;display:grid;place-items:center;object-fit:cover;border-radius:13px;background:#eef2ec;color:#637869;font-size:23px}
.order-item-name{font-size:14px;line-height:1.4;font-weight:750;color:#253e31;overflow-wrap:anywhere}
.order-item-quantity{font-size:14px;font-weight:700;color:#304b3c;font-variant-numeric:tabular-nums}
.order-total{margin-top:13px;padding:18px 20px;background:#e7f3eb;border-radius:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#163d2c;font-size:15px;font-weight:650}
.order-total strong{font-size:clamp(20px,4vw,27px);font-weight:850;white-space:nowrap;font-variant-numeric:tabular-nums}
.order-card--tracking .invoice-help{margin-top:18px}
@media(max-width:520px){
.welcome.has-food-photo{min-height:170px;padding:23px 18px}
.welcome-food-photo{width:58%;opacity:.8}
.welcome.has-food-photo::after{background:linear-gradient(90deg,#f4f7f1 0%,#f4f7f1 42%,rgba(244,247,241,.88) 68%,rgba(244,247,241,.43) 100%)}
.welcome.has-food-photo h1{font-size:clamp(25px,7vw,34px);max-width:85%}
.welcome.has-food-photo p{max-width:86%}
.tabs{gap:2px;padding:6px}
.tab{min-height:48px;gap:4px;padding:10px 3px;font-size:clamp(10px,2.8vw,12px)}
.tab .tab-icon{display:none}
.orders-heading .orders-subtitle{font-size:12px}
.order-card--tracking{padding:19px 15px 16px;border-radius:19px}
.order-timeline{margin-top:28px}
.milestone-dot{width:30px;height:30px}
.order-timeline::before{top:15px}
.milestone-label{font-size:10px}
.order-item{grid-template-columns:50px minmax(0,1fr) auto;gap:10px}
.order-item-image,.order-item-image-placeholder{width:50px;height:50px;border-radius:10px}
.order-total{padding:15px 14px}
}
@media(max-width:360px){
.order-card--tracking .status{font-size:10px;padding:8px}
.orders-heading{flex-wrap:wrap}
.milestone-label{font-size:9px}
}
@media(prefers-reduced-motion:reduce){.tab{transition:none}}
