:root{
  --bg:#fff8ef;
  --card:#ffffff;
  --text:#2b1d13;
  --muted:#705f52;
  --border:#ead9c8;
  --primary:#7a3f16;
  --primary-dark:#5c2d0d;
  --accent:#f4c56a;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background:var(--bg);color:var(--text);font-size:18px;line-height:1.5;letter-spacing:-.01em;padding-bottom:86px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{text-decoration:none;color:inherit}.topbar{position:sticky;top:0;z-index:10;display:flex;gap:12px;justify-content:space-between;align-items:center;padding:14px 16px;background:#fff;border-bottom:1px solid var(--border)}.brand{font-weight:750;font-size:19px;letter-spacing:-.02em}.cart-pill{background:var(--primary);color:white;padding:10px 14px;border-radius:999px;font-weight:700}.page{max-width:720px;margin:0 auto;padding:18px 16px}.hero{background:linear-gradient(135deg,#fff,#ffe5b5);border:1px solid var(--border);border-radius:22px;padding:24px;margin-bottom:18px}.hero h1{font-size:32px;line-height:1.12;letter-spacing:-.035em;font-weight:780;margin:0 0 8px}.hero p{margin:0;color:var(--muted);line-height:1.4}.success{text-align:center}.order-number{font-size:30px;font-weight:750;margin-top:10px}.section-title{font-weight:750;letter-spacing:-.02em;margin:20px 0 12px}.category-grid{display:grid;grid-template-columns:1fr;gap:14px}.category-card,.item-row,.panel,.cart-item,.history-card{background:var(--card);border:1px solid var(--border);border-radius:18px;box-shadow:0 2px 7px rgba(60,34,10,.05)}.category-card{display:flex;align-items:center;gap:16px;padding:22px;min-height:86px}.category-card strong{font-size:21px;line-height:1.25;letter-spacing:-.02em;font-weight:720}.category-card small,.item-row small,.cart-item small,.history-card small{display:block;color:var(--muted);margin-top:4px}.cat-icon{font-size:34px;width:48px;text-align:center}.item-list,.cart-list,.order-history{display:flex;flex-direction:column;gap:12px}.item-row{display:flex;justify-content:space-between;align-items:center;padding:20px}.item-row strong{font-size:20px;line-height:1.3;letter-spacing:-.015em;font-weight:700}.item-row>span{background:#f8ead6;color:var(--primary-dark);padding:10px 14px;border-radius:999px;font-weight:700}.back{display:inline-block;margin:2px 0 14px;color:var(--primary);font-weight:700}.panel{padding:18px;margin-bottom:16px}.field-label{display:block;font-weight:700;margin:18px 0 8px}.choice-list{display:flex;flex-direction:column;gap:10px}.choice{display:flex;align-items:center;gap:12px;justify-content:space-between;background:#fffaf4;border:2px solid var(--border);border-radius:16px;padding:16px;min-height:64px}.choice input{width:24px;height:24px}.choice span{flex:1;font-weight:700}.big-input{width:100%;font-size:21px;padding:16px;border:2px solid var(--border);border-radius:14px;background:white}.primary,.primary-link{display:block;width:100%;text-align:center;border:0;border-radius:18px;background:var(--primary);color:white;font-size:22px;font-weight:750;padding:18px;margin-top:20px}.primary:active,.primary-link:active{background:var(--primary-dark)}.wide-secondary{display:block;width:100%;text-align:center;border-radius:18px;background:#fff;border:2px solid var(--border);font-size:20px;font-weight:700;padding:16px;margin-top:14px}.notice{background:#fff3cd;border:1px solid #f4d27c;border-radius:14px;padding:12px 14px;margin-bottom:14px;font-weight:700}.empty{background:#fff;border:1px dashed var(--border);padding:28px;border-radius:18px;text-align:center;color:var(--muted);margin:18px 0}.cart-item{padding:16px}.qty-actions{display:flex;align-items:center;gap:12px;margin-top:12px}.qty-actions button{width:52px;height:52px;border-radius:14px;border:1px solid var(--border);background:#fff;font-size:26px;font-weight:750}.qty-actions span{font-size:22px;font-weight:750;min-width:32px;text-align:center}.link-button{border:0;background:transparent;color:#a12828;font-weight:700;font-size:17px;padding:12px 0}.total-row{display:flex;justify-content:space-between;align-items:center;padding:18px;margin-top:14px;background:#fff;border-radius:16px;border:2px solid var(--border);font-size:22px}.total-row strong{font-size:26px}.simple-text{color:var(--muted);line-height:1.45}.history-card{padding:16px}.history-card ul{margin:10px 0 0;padding-left:22px}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:10;display:grid;grid-template-columns:1fr 1fr 1fr;background:#fff;border-top:1px solid var(--border)}.bottom-nav a{text-align:center;padding:16px 8px;font-weight:750;color:var(--primary);font-size:17px}@media (min-width:650px){.category-grid{grid-template-columns:1fr 1fr}.page{padding-top:26px}.hero h1{font-size:38px}}


.paynow-panel {
  margin: 18px 0;
  padding: 18px;
  text-align: center;
  border: 1px solid #e4ddd3;
  border-radius: 16px;
  background: #fffaf4;
}

.paynow-panel p {
  margin: 8px auto 14px;
  max-width: 420px;
  color: #5f5a54;
  line-height: 1.5;
}

.paynow-panel img {
  display: block;
  width: min(100%, 320px);
  height: auto;
  margin: 0 auto;
  border-radius: 12px;
  background: #fff;
}

.top-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  min-width:0;
}

.identity-pill{
  display:flex;
  align-items:center;
  gap:7px;
  max-width:180px;
  padding:9px 11px;
  border:1px solid var(--border);
  border-radius:999px;
  background:#fffaf4;
  color:var(--primary-dark);
  font-size:15px;
  font-weight:750;
  white-space:nowrap;
}

.identity-pill span:last-child{
  overflow:hidden;
  text-overflow:ellipsis;
}

.identity-dot{
  display:grid;
  place-items:center;
  flex:0 0 20px;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#e6f4e7;
  color:#25702e;
  font-size:13px;
}

.identity-card,.checkout-identity{
  display:flex;
  align-items:center;
  gap:14px;
  padding:16px;
  margin-bottom:14px;
  border:1px solid var(--border);
  border-radius:18px;
  background:#fff;
  box-shadow:0 2px 7px rgba(60,34,10,.05);
}

.identity-card>div:last-child,.checkout-identity>div{
  display:flex;
  flex:1;
  min-width:0;
  flex-direction:column;
}

.identity-card strong,.checkout-identity strong{
  font-size:20px;
}

.identity-card small,.checkout-identity small{
  color:var(--muted);
}

.identity-avatar{
  display:grid;
  place-items:center;
  flex:0 0 52px;
  width:52px;
  height:52px;
  border-radius:50%;
  background:#f8ead6;
  color:var(--primary-dark);
  font-size:23px;
  font-weight:800;
}

.identity-avatar.small{
  flex-basis:44px;
  width:44px;
  height:44px;
  font-size:19px;
}

.checkout-identity a{
  color:var(--primary);
  font-weight:750;
}

.field-help,.privacy-note{
  margin:7px 2px 0;
  color:var(--muted);
  font-size:15px;
  line-height:1.45;
}

.privacy-note{
  text-align:center;
  margin-top:16px;
}

.remembered-link{
  border-color:#bfd7c1;
  background:#f4fbf4;
  color:#245c2a;
}

@media (max-width:560px){
  .topbar{align-items:flex-start}
  .brand{max-width:115px;line-height:1.2}
  .top-actions{flex-wrap:wrap}
  .identity-pill{max-width:145px}
  .cart-pill{font-size:15px;padding:9px 11px}
}


.welcome-identity{
  text-align:center;
  margin: 8px 0 18px;
}

.welcome-logo{
  display:block;
  width:min(100%, 160px);
  height:auto;
  margin: 0 auto 14px;
}

.welcome-identity h1{
  margin:0 0 8px;
  font-size:34px;
  line-height:1.15;
  letter-spacing:-.03em;
}

.welcome-copy{
  max-width:560px;
  margin:0 auto;
}

/* Friendly remembered-customer welcome */
.welcome-identity{
  text-align:center;
  max-width:590px;
  margin:8px auto 20px;
  padding:24px 18px 8px;
}

.welcome-logo{
  display:block;
  width:min(42vw, 150px);
  max-height:150px;
  object-fit:contain;
  margin:0 auto 18px;
  filter:drop-shadow(0 8px 16px rgba(60,34,10,.10));
}

.welcome-kicker{
  margin:0 0 6px;
  color:var(--primary);
  font-size:16px;
  font-weight:800;
  letter-spacing:.02em;
}

.welcome-identity h1{
  margin:0 0 10px;
  font-size:clamp(30px, 8vw, 42px);
  line-height:1.1;
  letter-spacing:-.04em;
}

.welcome-copy{
  max-width:520px;
  margin:0 auto;
  font-size:18px;
}

.welcome-form{
  max-width:590px;
  margin:0 auto;
  padding:22px;
}

.welcome-form .field-label:first-child{
  margin-top:0;
}

@media (max-width:560px){
  .welcome-identity{padding-top:12px}
  .welcome-logo{width:min(44vw, 132px)}
  .welcome-form{padding:18px}
}
