/**
 * Track Your Order page — page-track-your-order.php plus the theme's
 * woocommerce/order/form-tracking.php and tracking.php overrides.
 *
 * Mobile-first: everything stacks in one column by default; the form gets
 * its help panel alongside, the summary goes to four columns and the
 * timeline turns horizontal from 760px up. Scoped to .track-hero /
 * .track-body. Enqueued from functions.php on this page only.
 *
 * @package Furniture
 */

.track-body{
  --track-radius:14px;
  --track-shadow:0 1px 0 rgba(21,20,15,0.04),0 18px 40px -32px rgba(21,20,15,0.35);
  --track-done:#2F6F45;
}

/* ---- Hero --------------------------------------------------------------- */
.track-hero{background:var(--paper-2);border-bottom:1px solid var(--line);padding:40px 0 34px;text-align:center;}
.track-eyebrow{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 10px;}
.track-heading{font-family:var(--font-display);font-weight:450;font-size:clamp(28px,6vw,44px);line-height:1.15;margin:0 0 12px;}
.track-sub{font-size:15px;color:var(--ink-soft);max-width:52ch;margin:0 auto;}

.track-body{padding:32px 0 64px;}
.track-body .woocommerce{max-width:980px;margin:0 auto;}

/* Error notice ("Sorry, the order could not be found…") above the form */
.track-body .woocommerce-error,
.track-body .woocommerce-info,
.track-body .woocommerce-message{border-radius:12px;border:1px solid var(--line);border-left:3px solid var(--accent);padding:14px 18px;}

/* ---- Form + help ---------------------------------------------------------- */
.track-layout{display:grid;gap:16px;}
.track-card,.track-help{background:var(--paper);border:1px solid var(--line);border-radius:var(--track-radius);padding:22px 20px;}
.track-card{box-shadow:var(--track-shadow);}
.track-card-title,.track-help-title{font-family:var(--font-display);font-weight:500;font-size:21px;margin:0 0 6px;}
.track-card-note{font-size:14px;color:var(--ink-soft);margin:0 0 22px;}
.track-card .form-row{margin:0 0 16px;}
.track-card label{display:block;font-size:13px;font-weight:600;color:var(--ink-soft);margin-bottom:7px;}
.track-card .input-text{width:100%;box-sizing:border-box;background:var(--paper-2);border:1px solid var(--line-strong);border-radius:8px;padding:13px 14px;
  font-family:var(--font-body);font-size:16px;color:var(--ink);outline:none;transition:border-color .15s,background-color .15s,box-shadow .15s;}
.track-card .input-text:focus{border-color:var(--accent);background:var(--paper);box-shadow:0 0 0 3px rgba(165,67,33,0.12);}
.track-card .track-submit{margin:22px 0 0;}
.woocommerce .track-card button.button{width:100%;display:block;background:var(--accent);color:#fff;border-radius:8px;padding:14px 24px;font-size:15px;cursor:pointer;transition:background-color .15s;}
.woocommerce .track-card button.button:hover{background:var(--accent-dark);color:#fff;}

.track-help{background:var(--paper-2);}
.track-help-title{font-size:19px;margin-bottom:14px;}
.track-help-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;}
.track-help-list li{display:flex;flex-direction:column;gap:2px;font-size:14px;line-height:1.55;}
.track-help-list strong{color:var(--ink);font-weight:600;}
.track-help-list span{color:var(--ink-soft);}
.track-help-list a{color:var(--accent);text-decoration:underline;}
.track-help-contact{display:flex;flex-direction:column;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line);}
.track-help-contact a{display:flex;align-items:center;gap:10px;font-size:14.5px;font-weight:600;color:var(--ink);}
.track-help-contact a:hover{color:var(--accent);}
.track-help-contact svg{width:18px;height:18px;flex:0 0 auto;color:var(--accent);}

/* ---- Result: summary ------------------------------------------------------ */
.track-result{display:flex;flex-direction:column;gap:20px;}
.track-summary{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;background:var(--paper);border:1px solid var(--line);border-radius:var(--track-radius);padding:20px;box-shadow:var(--track-shadow);}
.track-summary p{margin:0;}
.track-summary-label{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin-bottom:4px!important;}
.track-summary-number{font-family:var(--font-display);font-size:26px;line-height:1.1;}
.track-summary-value{font-size:15px;font-weight:600;color:var(--ink);}

/* Status badge (furniture_account_status_pill(), shared with My Account) */
.acct-status{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:100px;font-size:12.5px;font-weight:600;line-height:1.5;white-space:nowrap;background:rgba(21,20,15,0.06);color:var(--ink-soft);}
.acct-status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;}
.acct-status--completed{background:rgba(47,111,69,0.1);color:#2F6F45;}
.acct-status--processing{background:rgba(69,74,52,0.12);color:var(--olive);}
.acct-status--on-hold,.acct-status--pending{background:rgba(154,107,18,0.1);color:#9A6B12;}
.acct-status--cancelled,.acct-status--failed{background:rgba(165,67,33,0.1);color:var(--accent-dark);}

/* ---- Result: timeline (vertical on phones) -------------------------------- */
.track-timeline{list-style:none;margin:0;padding:22px 20px;background:var(--paper);border:1px solid var(--line);border-radius:var(--track-radius);display:flex;flex-direction:column;}
.track-step{position:relative;display:grid;grid-template-columns:28px 1fr;column-gap:14px;padding-bottom:22px;}
.track-step:last-child{padding-bottom:0;}
.track-step-dot{grid-row:1 / span 2;position:relative;width:28px;height:28px;border-radius:50%;border:2px solid var(--line-strong);background:var(--paper);box-sizing:border-box;z-index:1;}
/* connector line to the next step */
.track-step:not(:last-child)::before{content:"";position:absolute;left:13px;top:28px;bottom:0;width:2px;background:var(--line);}
.track-step.is-done:not(:last-child)::before{background:var(--track-done);}
.track-step-title{font-weight:600;font-size:15px;color:var(--ink);line-height:28px;}
.track-step-text{font-size:13.5px;color:var(--ink-soft);}
.track-step.is-upcoming .track-step-title{color:var(--ink-soft);font-weight:500;}
.track-step.is-done .track-step-dot{background:var(--track-done);border-color:var(--track-done);}
.track-step.is-done .track-step-dot::after{content:"";position:absolute;left:8px;top:4px;width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
.track-step.is-current .track-step-dot{border-color:var(--accent);box-shadow:0 0 0 4px rgba(165,67,33,0.14);}
.track-step.is-current .track-step-dot::after{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--accent);}
.track-step.is-current .track-step-title{color:var(--accent);}

/* ---- Result: order updates ---------------------------------------------- */
.track-section-title,
.track-details h2{font-family:var(--font-display);font-weight:500;font-size:20px;margin:0 0 14px;}
.track-updates{background:var(--paper);border:1px solid var(--line);border-radius:var(--track-radius);padding:20px;}
.track-updates-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.track-updates-list li{padding:12px 16px;border-left:2px solid var(--accent);background:var(--paper-2);border-radius:0 10px 10px 0;}
.track-update-date{font-size:12.5px;color:var(--ink-soft);margin:0 0 4px;}
.track-update-text p{margin:0;font-size:14px;}

/* ---- Result: order details (core woocommerce_order_details_table markup) -- */
.track-details{display:flex;flex-direction:column;gap:20px;}
.track-details .woocommerce-order-details,
.track-details .woocommerce-customer-details{background:var(--paper);border:1px solid var(--line);border-radius:var(--track-radius);padding:20px;margin:0;}
.track-details .order_details{width:100%;border-collapse:collapse;}
.track-details .order_details th,.track-details .order_details td{padding:12px 0;text-align:left;font-size:14.5px;border-bottom:1px solid var(--line);vertical-align:top;}
.track-details .order_details .product-total,.track-details .order_details tfoot td{text-align:right;}
.track-details .order_details thead th{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);padding-top:0;}
.track-details .order_details .product-name a{color:var(--ink);font-weight:600;}
.track-details .order_details .product-quantity{font-weight:500;color:var(--ink-soft);margin-left:4px;}
.track-details .order_details tfoot th{font-weight:500;color:var(--ink-soft);}
.track-details .order_details tfoot tr:last-child > *{border-bottom:none;}
.track-details .order_details tfoot tr:nth-last-child(2) > *{font-weight:600;color:var(--ink);font-size:16px;}
.track-details .wc-item-meta{list-style:none;margin:6px 0 0;padding:0;font-size:13px;color:var(--ink-soft);}
.track-details .wc-item-meta p{display:inline;margin:0;}
.track-details .woocommerce-columns--addresses{display:grid;gap:20px;}
.track-details address{font-style:normal;font-size:14.5px;line-height:1.75;}
.track-details address p{margin:4px 0 0;color:var(--ink-soft);}
.track-details .order-again{margin:16px 0 0;}
.woocommerce .track-details .order-again .button{background:var(--ink);color:var(--paper);border-radius:6px;padding:11px 20px;}

.track-again{text-align:center;margin:4px 0 0;}
.track-again .btn{border-radius:6px;display:inline-block;}

/* ---- Tablet / desktop ------------------------------------------------------ */
@media (min-width:760px){
  .track-hero{padding:56px 0 44px;}
  .track-body{padding:48px 0 88px;}

  .track-layout{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:start;}
  .track-card,.track-help{padding:32px;}
  .woocommerce .track-card button.button{width:auto;display:inline-block;}

  .track-summary{grid-template-columns:repeat(4,1fr);padding:24px 28px;}

  /* Horizontal timeline: dots on a line, labels underneath */
  .track-timeline{flex-direction:row;padding:28px 24px;}
  .track-step{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 8px;}
  .track-step-dot{margin-bottom:12px;}
  .track-step:not(:last-child)::before{left:calc(50% + 14px);right:calc(-50% + 14px);top:13px;bottom:auto;width:auto;height:2px;}
  .track-step-title{line-height:1.4;}

  .track-updates,
  .track-details .woocommerce-order-details,
  .track-details .woocommerce-customer-details{padding:24px 28px;}
  .track-details .woocommerce-columns--addresses{grid-template-columns:1fr 1fr;}
}
