/**
 * Grocery Delivery Ops - Customer Tracking styles.
 *
 * ISOLATION RULE: every selector starts with .gdo-customer-tracking (or
 * targets an element that only exists inside it). No bare `button`,
 * `a`, `h1`, `.card`, etc. This file is only enqueued on the page
 * containing [gdo_customer_tracking] (see maybe_enqueue_assets()), but
 * every selector is still scoped defensively.
 */

.gdo-customer-tracking {
	--gdo-ct-primary: #2563eb;
	--gdo-ct-primary-dark: #1d4ed8;
	--gdo-ct-done: #16a34a;
	--gdo-ct-text: #1f2937;
	--gdo-ct-text-muted: #6b7280;
	--gdo-ct-border: #e5e7eb;
	--gdo-ct-bg: #f9fafb;
	--gdo-ct-card-bg: #ffffff;
	--gdo-ct-radius: 12px;
	--gdo-ct-gap: 16px;

	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	color: var(--gdo-ct-text);
	background: var(--gdo-ct-bg);
	max-width: 640px;
	margin: 0 auto;
	padding: var(--gdo-ct-gap);
	box-sizing: border-box;
	line-height: 1.5;
}

.gdo-customer-tracking *,
.gdo-customer-tracking *::before,
.gdo-customer-tracking *::after {
	box-sizing: border-box;
}

.gdo-customer-tracking .gdo-ct-card {
	background: var(--gdo-ct-card-bg);
	border: 1px solid var(--gdo-ct-border);
	border-radius: var(--gdo-ct-radius);
	padding: var(--gdo-ct-gap);
}

.gdo-customer-tracking .gdo-ct-card--center {
	text-align: center;
}

.gdo-customer-tracking .gdo-ct-heading {
	font-size: 18px;
	font-weight: 700;
	margin: 0 0 10px;
}

.gdo-customer-tracking .gdo-ct-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 20px;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
	border: 2px solid transparent;
	cursor: pointer;
	line-height: 1;
	margin-top: 10px;
}

.gdo-customer-tracking .gdo-ct-btn:focus-visible {
	outline: 3px solid #93c5fd;
	outline-offset: 2px;
}

.gdo-customer-tracking .gdo-ct-btn--primary {
	background: var(--gdo-ct-primary);
	color: #fff;
}
.gdo-customer-tracking .gdo-ct-btn--primary:hover {
	background: var(--gdo-ct-primary-dark);
}

.gdo-customer-tracking .gdo-ct-btn--secondary {
	background: #fff;
	border-color: var(--gdo-ct-border);
	color: var(--gdo-ct-text);
}

/* ---------- Header ---------- */

.gdo-customer-tracking .gdo-ct-header {
	text-align: center;
	margin-bottom: 14px;
}

.gdo-customer-tracking .gdo-ct-title {
	font-size: 20px;
	font-weight: 800;
	margin: 0 0 4px;
}

.gdo-customer-tracking .gdo-ct-order-number {
	font-size: 15px;
	color: var(--gdo-ct-text-muted);
	font-weight: 600;
}

.gdo-customer-tracking .gdo-ct-placed-on {
	font-size: 13px;
	color: var(--gdo-ct-text-muted);
	margin-top: 2px;
}

.gdo-customer-tracking .gdo-ct-status-message {
	background: var(--gdo-ct-card-bg);
	border: 1px solid var(--gdo-ct-border);
	border-radius: var(--gdo-ct-radius);
	padding: 14px 16px;
	font-weight: 700;
	text-align: center;
	margin-bottom: var(--gdo-ct-gap);
}

/* ---------- Progress tracker ---------- */

.gdo-customer-tracking .gdo-ct-progress {
	list-style: none;
	margin: 0 0 24px;
	padding: 16px;
	background: var(--gdo-ct-card-bg);
	border: 1px solid var(--gdo-ct-border);
	border-radius: var(--gdo-ct-radius);
	border-left: 3px solid var(--gdo-ct-border);
	margin-left: 8px;
}

.gdo-customer-tracking .gdo-ct-progress__item {
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 0 10px 16px;
	font-size: 14px;
	color: var(--gdo-ct-text-muted);
}

.gdo-customer-tracking .gdo-ct-progress__dot {
	position: absolute;
	left: -25px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--gdo-ct-border);
	border: 2px solid var(--gdo-ct-card-bg);
}

.gdo-customer-tracking .gdo-ct-progress__item--done {
	color: var(--gdo-ct-text);
	font-weight: 600;
}
.gdo-customer-tracking .gdo-ct-progress__item--done .gdo-ct-progress__dot {
	background: var(--gdo-ct-done);
}

.gdo-customer-tracking .gdo-ct-progress__item--current {
	color: var(--gdo-ct-primary-dark);
	font-weight: 800;
}
.gdo-customer-tracking .gdo-ct-progress__item--current .gdo-ct-progress__dot {
	background: var(--gdo-ct-primary);
	width: 16px;
	height: 16px;
	left: -27px;
	box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.15);
}

.gdo-customer-tracking .gdo-ct-progress__current-tag {
	margin-left: auto;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	background: var(--gdo-ct-primary);
	color: #fff;
	padding: 2px 8px;
	border-radius: 999px;
}

/* ---------- Sections ---------- */

.gdo-customer-tracking .gdo-ct-section {
	background: var(--gdo-ct-card-bg);
	border: 1px solid var(--gdo-ct-border);
	border-radius: var(--gdo-ct-radius);
	padding: var(--gdo-ct-gap);
	margin-bottom: 14px;
}

.gdo-customer-tracking .gdo-ct-subheading {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: var(--gdo-ct-text-muted);
	margin: 0 0 10px;
}

.gdo-customer-tracking .gdo-ct-rider-pending {
	color: var(--gdo-ct-text-muted);
	font-size: 14px;
}

.gdo-customer-tracking .gdo-ct-rider-name {
	font-size: 16px;
	font-weight: 700;
	margin: 0 0 4px;
}

/* ---------- Items / totals ---------- */

.gdo-customer-tracking .gdo-ct-items {
	list-style: none;
	margin: 0;
	padding: 0;
}

.gdo-customer-tracking .gdo-ct-items__row {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	padding: 6px 0;
	border-bottom: 1px solid var(--gdo-ct-border);
	font-size: 14px;
}

.gdo-customer-tracking .gdo-ct-totals {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid var(--gdo-ct-border);
	display: grid;
	gap: 4px;
}
.gdo-customer-tracking .gdo-ct-totals > div {
	display: flex;
	justify-content: space-between;
	font-size: 14px;
}
.gdo-customer-tracking .gdo-ct-totals__grand {
	font-weight: 800;
	font-size: 15px;
}

.gdo-customer-tracking .gdo-ct-address {
	font-size: 14px;
	line-height: 1.6;
}

.gdo-customer-tracking .gdo-ct-refresh-row {
	text-align: center;
	margin-top: 10px;
}

/* ---------- Responsive ---------- */

@media (min-width: 768px) {
	.gdo-customer-tracking {
		padding: 24px;
	}
}

/* ---------- Phase 6: rider photo + ETA ---------- */

.gdo-customer-tracking .gdo-ct-rider-photo {
	border-radius: 50%;
	width: 64px;
	height: 64px;
	object-fit: cover;
	margin-bottom: 8px;
}

.gdo-customer-tracking .gdo-ct-eta {
	background: #eff6ff;
	border: 1px solid #bfdbfe;
	border-radius: var(--gdo-ct-radius);
	padding: 12px 16px;
	margin-bottom: 14px;
	text-align: center;
}

.gdo-customer-tracking .gdo-ct-eta--overdue {
	background: #fef3c7;
	border-color: #fde68a;
}

.gdo-customer-tracking .gdo-ct-eta__label {
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	color: #1e40af;
	display: block;
}

.gdo-customer-tracking .gdo-ct-eta .gdo-eta__value {
	font-size: 22px;
	font-weight: 800;
	color: #1e40af;
	display: block;
}

.gdo-customer-tracking .gdo-ct-eta__expected-by {
	font-size: 13px;
	color: var(--gdo-ct-text-muted);
}

/* ================================================================
 * 0.7.6: Customer My Account dashboard
 * The dashboard reuses WooCommerce's native account endpoint and order
 * objects. These styles only present the recent-order cards readably.
 * ================================================================ */
.gdo-account-dashboard{margin:0;padding:0;width:100%;box-sizing:border-box}
.gdo-account-dashboard__heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 18px}
.gdo-account-dashboard__eyebrow{display:block;margin:0 0 5px;color:#287b4d;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.gdo-account-dashboard__heading h2{margin:0;color:#073b36;font-size:28px;line-height:1.12;font-weight:800;letter-spacing:-.035em}
.gdo-account-dashboard__view-all{font-size:14px;font-weight:700;color:#176b43;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.gdo-account-orders{display:grid;gap:14px;width:100%}
.gdo-account-order{min-width:0;padding:18px;border:1px solid #e2eae5;border-radius:18px;background:#fff;box-sizing:border-box;box-shadow:0 6px 20px rgba(7,59,54,.035)}
.gdo-account-order__top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.gdo-account-order__top strong{font-size:17px;line-height:1.3;color:#073b36}
.gdo-account-order__status{display:inline-flex;align-items:center;min-height:30px;padding:4px 10px;border-radius:999px;background:#eef8f1;color:#176b43;font-size:13px;font-weight:750;white-space:nowrap}
.gdo-account-order__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:15px}
.gdo-account-order__meta span{display:flex;flex-direction:column;gap:3px;min-width:0;color:#596761;font-size:14px;line-height:1.4}
.gdo-account-order__meta b{color:#7a8580;font-size:12px;font-weight:700}
.gdo-account-order__actions{display:flex;flex-wrap:wrap;gap:9px}
.gdo-account-dashboard__button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 15px;border:1px solid #dbe7df;border-radius:12px;background:#16a34a;color:#fff;font-size:14px;font-weight:800;line-height:1.2;text-decoration:none;box-sizing:border-box}
.gdo-account-dashboard__button:hover{color:#fff;background:#12833b}
.gdo-account-dashboard__button--secondary{background:#fff;color:#176b43}
.gdo-account-dashboard__button--secondary:hover{background:#f4faf6;color:#176b43}
.gdo-account-dashboard__button--track{background:#16a34a;color:#fff}
.gdo-account-empty{padding:22px;border:1px solid #e2eae5;border-radius:18px;background:#fff}
.gdo-account-empty p{margin:0 0 15px;color:#47544f;font-size:15px;line-height:1.6}
@media(max-width:760px){
  .gdo-account-dashboard__heading{align-items:flex-start;gap:10px}
  .gdo-account-dashboard__heading h2{font-size:23px}
  .gdo-account-dashboard__eyebrow{font-size:11px}
  .gdo-account-dashboard__view-all{font-size:13px;margin-top:2px}
  .gdo-account-order{padding:15px;border-radius:16px}
  .gdo-account-order__top{align-items:flex-start;margin-bottom:12px}
  .gdo-account-order__top strong{font-size:16px}
  .gdo-account-order__status{font-size:12px;min-height:28px}
  .gdo-account-order__meta{grid-template-columns:1fr 1fr;gap:11px;margin-bottom:14px}
  .gdo-account-order__meta span{font-size:14px}
  .gdo-account-order__meta span:last-child{grid-column:1/-1}
  .gdo-account-order__meta b{font-size:12px}
  .gdo-account-order__actions{display:grid;grid-template-columns:1fr;gap:8px}
  .gdo-account-dashboard__button{width:100%;min-height:44px;font-size:14px}
}

