.market-page-wrap{
  padding: 18px;
}
.market-page{
  display:grid;
  gap:18px;
}
.market-hero{
  display:grid;
  gap:12px;
}
.market-hero h1{
  margin:0;
}
.market-intro{
  margin:0;
  max-width:72ch;
}
.market-card{
  background:var(--surface);
  border:1px solid color-mix(in oklab, var(--text) 8%, transparent);
  border-radius:16px;
  padding:18px;
  box-shadow:var(--shadow-rest, var(--shadow-2));
}
.market-section-heading{
  margin-bottom:12px;
}
.market-section-heading h2,
.market-tips-card h2,
.market-next-card h2{
  margin:0 0 8px;
  font-size:clamp(1.06rem, 1rem + .4vw, 1.28rem);
}
.market-section-intro,
.market-note,
.market-next-card p{
  margin:0;
  color:var(--muted);
}
.market-table-wrap{
  width:100%;
  overflow:auto;
  overscroll-behavior-x:contain;
  border-radius:14px;
}
.market-table{
  width:100%;
  min-width:860px;
  border-collapse:separate;
  border-spacing:0;
  background:var(--bg);
  border:1px solid color-mix(in oklab, var(--text) 10%, transparent);
  border-radius:14px;
}
.market-table th,
.market-table td{
  padding:14px 16px;
  vertical-align:top;
  text-align:left;
  border-bottom:1px solid color-mix(in oklab, var(--text) 8%, transparent);
}
.market-mobile-label{
  display:none;
}
.market-cell-value{
  min-width:0;
}
.market-table thead th{
  background:color-mix(in oklab, var(--surface) 78%, var(--bg));
  font-size:.94rem;
  font-weight:700;
  color:color-mix(in oklab, var(--text) 78%, transparent);
}
.market-table tbody tr:last-child td{
  border-bottom:0;
}
.market-table tbody tr:nth-child(even):not(.is-featured) td{
  background:color-mix(in oklab, var(--surface) 30%, var(--bg));
}
.market-place-wrap,
.market-day-cell{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:flex-start;
}
.market-place,
.market-day,
.market-time,
.market-tip-text{
  overflow-wrap:anywhere;
}
.market-place{
  font-weight:780;
  line-height:1.35;
}
.market-day,
.market-time{
  font-weight:650;
}
.market-time,
.market-tip-text,
.market-type-pill{
  display:block;
}
.market-badge,
.market-day-meta,
.market-type-pill{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  font-size:.78rem;
  font-weight:700;
  line-height:1.2;
}
.market-badge{
  background:color-mix(in oklab, var(--accent) 12%, var(--bg));
  color:var(--accent);
}
.market-day-meta{
  background:color-mix(in oklab, var(--accent-2) 12%, var(--bg));
  color:color-mix(in oklab, var(--text) 88%, transparent);
}
.market-type-pill{
  background:color-mix(in oklab, var(--surface-2) 84%, var(--bg));
  color:color-mix(in oklab, var(--text) 88%, transparent);
}
.market-route-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  white-space:nowrap;
}
.market-route-btn svg{
  width:16px;
  height:16px;
  flex:0 0 16px;
}
@media (min-width:721px){
  .market-table th:nth-child(2),
  .market-table td.market-day-col{
    width:11rem;
    min-width:11rem;
  }
  .market-table th:nth-child(3),
  .market-table td.market-time-cell{
    width:14rem;
    min-width:14rem;
  }
  .market-table th:nth-child(6),
  .market-table td.market-action-cell{
    width:11.5rem;
    min-width:11.5rem;
  }
  .market-day-cell{
    display:grid;
    gap:6px;
    align-items:start;
  }
  .market-day{
    white-space:nowrap;
  }
  .market-day-meta{
    width:max-content;
  }
  .market-time{
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
    line-height:1.4;
    font-variant-numeric:tabular-nums;
  }
}
.market-row.is-featured td{
  background:color-mix(in oklab, var(--accent) 7%, var(--bg));
}
.market-row.is-featured td:first-child{
  box-shadow:inset 3px 0 0 color-mix(in oklab, var(--accent) 42%, transparent);
}
.market-status-row td{
  padding:16px;
  color:var(--muted);
  background:var(--bg);
}
.market-tip-list{
  margin:0;
  padding-left:1.1rem;
  display:grid;
  gap:10px;
}
.market-tip-list li{
  padding-left:.2rem;
}
.market-next-card{
  display:grid;
  gap:12px;
}
.market-next-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.market-next-card .btn{
  min-width:160px;
}
.visually-hidden{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
@media (max-width:880px){
  .market-card{
    padding:16px;
  }
  .market-table{
    min-width:720px;
  }
}
@media (max-width:720px){
  .market-page-wrap{
    padding:16px;
  }
  .market-card{
    padding:14px;
  }
  .market-table{
    min-width:0;
    border:0;
    background:transparent;
  }
  .market-table,
  .market-table tbody,
  .market-table tr,
  .market-table td{
    display:block;
    width:100%;
  }
  .market-table thead{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
  }
  .market-table tbody{
    display:grid;
    gap:12px;
  }
  .market-table tr{
    border:1px solid color-mix(in oklab, var(--text) 10%, transparent);
    border-radius:14px;
    overflow:hidden;
    background:var(--bg);
    box-shadow:var(--shadow-rest, var(--shadow-2));
  }
  .market-table tr.is-featured{
    background:color-mix(in oklab, var(--accent) 7%, var(--bg));
  }
  .market-table td{
    display:grid !important;
    grid-template-columns:minmax(86px, 102px) minmax(0, 1fr);
    gap:12px;
    align-items:start;
    padding:12px 14px;
    text-align:left;
    border-bottom:1px solid color-mix(in oklab, var(--text) 8%, transparent);
    background:transparent !important;
  }
  .market-table td::before{
    content:none !important;
  }
  .market-mobile-label{
    display:block;
    margin:0;
    font-size:.82rem;
    font-weight:780;
    line-height:1.3;
    color:color-mix(in oklab, var(--text) 68%, transparent);
  }
  .market-cell-value{
    display:grid;
    gap:6px;
    min-width:0;
    justify-items:start;
    text-align:left;
  }
  .market-table td .market-place-wrap,
  .market-table td .market-day-cell{
    gap:6px;
  }
  .market-table td.market-action-cell .market-cell-value{
    width:100%;
  }
  .market-table td:last-child{
    border-bottom:0;
  }
  .market-table tr.is-featured td:first-child{
    box-shadow:inset 4px 0 0 color-mix(in oklab, var(--accent) 42%, transparent);
  }
  .market-route-btn{
    width:100%;
  }
}
