:root {
  --brand: #ed6b5f;
  --brand-dark: #d85d52;
  --ink: #3f6073;
  --muted: #718896;
  --line: #dce9ee;
  --bg: #fbfaf6;
  --white: #ffffff;
  --green: #79aa9f;
  --yellow: #f3c86a;
}

body {
  background: var(--bg);
  color: var(--ink);
}

.top-strip {
  background: #e9f5fa;
  color: #456d82;
  border-bottom: 1px solid #d4e8f1;
}

.top-strip > .container {
  justify-content: flex-end;
}

.site-header,
.workspace-topbar {
  background: rgba(255, 255, 255, .97);
}

.site-header {
  box-shadow: 0 6px 24px rgba(84, 131, 154, .09);
}

.market-nav {
  border-color: #dce9ee;
  background: #ffffff;
}

.main-search {
  border-color: #ed6b5f;
  box-shadow: 0 0 0 4px rgba(237, 107, 95, .05);
}

.header-actions > a,
.header-actions b {
  color: #527388;
}

.category-panel > header {
  background: linear-gradient(135deg, #6aa9cf, #82bdd8);
}

.category-panel nav a:hover {
  border-left-color: #6aa9cf;
  background: #edf7fb;
  color: #4d83a3;
}

.super-sale {
  border-color: #f2c9be;
  background: linear-gradient(132deg, #fffaf5 0%, #ffebe3 54%, #fbd0c4 100%);
}

.sale-badge {
  color: #587487;
}

.promo-card.coupon {
  color: #8a554b;
}

.promo-card.flash {
  border: 1px solid #cfe5ef;
  background: linear-gradient(145deg, #edf8fc, #d8eef6);
  color: #426c82;
}

.promo-card.flash small,
.promo-card.flash span {
  color: #5b91ad;
}

.service-strip,
.commerce-section,
.product-card,
.cart-list,
.summary-card,
.checkout-card,
.filters,
.detail-card,
.success-card,
.workspace-panel,
.workspace-form,
.kpi-grid article {
  border-color: #dce9ee;
  background: #ffffff;
}

.countdown b {
  background: #6aa9cf;
  color: #ffffff;
}

.coupon-section {
  border: 1px solid #f1d9d1;
  background: linear-gradient(115deg, #fff3ee 0%, #fff9f5 48%, #edf8fb 100%);
  color: #42677c;
  box-shadow: 0 10px 28px rgba(117, 157, 174, .08);
}

.coupon-section > header > span,
.coupon-section article small {
  color: #d6675d;
}

.coupon-section p,
.coupon-section article span {
  color: #718896;
}

.coupon-section article strong {
  color: #e36459;
}

.coupon-section > article {
  border-left-color: #eadfd9;
}

.coupon-section button {
  border: 1px solid #ed6b5f;
  background: #ffffff;
  color: #d85d52;
}

.live-section {
  border: 1px solid #cfe4ee;
  background: linear-gradient(125deg, #eef8fb 0%, #e5f3f8 55%, #f7fbfc 100%);
  color: #42677c;
  box-shadow: 0 10px 28px rgba(95, 148, 172, .08);
}

.live-section .section-head {
  border-color: #cfe4ee;
}

.live-section .section-head p,
.live-grid article > small,
.live-grid article > a > small {
  color: #718896;
}

.live-grid img {
  filter: none;
}

.live-grid em {
  background: rgba(255, 255, 255, .92);
  color: #4e7d95;
}

.site-footer {
  border-top: 1px solid #d5e6ec;
  background: linear-gradient(180deg, #f2f8fa, #e9f3f6);
  color: #456b7f;
}

.site-footer .footer-logo,
.site-footer .logo,
.footer-grid > div:not(:first-child) > strong {
  color: #3f657a;
}

.footer-grid p,
.footer-grid > div:not(:first-child) > a,
.footer-grid > div:not(:first-child) > span,
.footer-bottom {
  color: #718896;
}

.footer-bottom {
  border-top-color: #d4e4ea;
}

.toast {
  background: #6aa9cf;
  color: #ffffff;
  box-shadow: 0 10px 28px rgba(86, 139, 164, .24);
}

.workspace {
  background: #f7faf9;
}

.workspace-sidebar {
  border-right: 1px solid #cfE3ec;
  background: linear-gradient(180deg, #edf7fb, #e1f0f6);
  color: #40677d;
}

.workspace-sidebar .logo,
.workspace-sidebar > small,
.workspace-sidebar nav a {
  color: #52778b;
}

.workspace-sidebar nav a:hover,
.workspace-sidebar nav a.active {
  background: #ed6b5f;
  color: #ffffff;
}

.workspace-topbar {
  border-bottom-color: #dce9ee;
}

.data-table th {
  background: #eef6f8;
  color: #527388;
}

.state-pill {
  background: #e6f4ef;
  color: #4a796d;
}

.checkin-card {
  border: 1px solid #cfe4ee;
  background: linear-gradient(125deg, #eef8fb, #fff4ef);
  color: #42677c;
}

.checkin-card span {
  color: #d6675d;
}

.checkin-card p {
  color: #718896;
}

.checkin-card button:disabled {
  background: #c9dce4;
  color: #648292;
}

.live-player,
.live-waiting {
  background: #dfedf3;
}

.live-waiting {
  color: #42677c;
}

.live-waiting span {
  color: #d6675d;
}

.order-total-card .total {
  color: #3f6073;
}

@media (max-width: 720px) {
  .top-strip {
    background: #e9f5fa;
  }

  .workspace-sidebar {
    border-right: 0;
    border-bottom: 1px solid #cfe3ec;
  }
}

/* Readable commerce typography */
body {
  font-size: 16px;
  line-height: 1.55;
}

.top-strip {
  font-size: 13px;
}

.logo small {
  font-size: 9px;
}

.main-search input,
.main-search button {
  font-size: 15px;
}

.header-actions > a {
  font-size: 12px;
}

.header-actions b {
  font-size: 20px;
}

.market-nav > .container {
  font-size: 14px;
}

.category-panel > header small,
.sale-copy > span,
.promo-card small,
.section-head > div:first-child > span,
.coupon-section > header > span {
  font-size: 10px;
}

.category-panel > header strong {
  font-size: 20px;
}

.category-panel nav a {
  font-size: 14px;
}

.sale-copy p,
.sale-copy > a {
  font-size: 14px;
}

.hero-product small {
  height: 40px;
  font-size: 13px;
}

.hero-product strong {
  font-size: 20px;
}

.sale-badge span {
  font-size: 11px;
}

.promo-card > strong {
  font-size: 20px;
}

.promo-card > span {
  font-size: 12px;
}

.service-strip strong {
  font-size: 14px;
}

.service-strip small {
  font-size: 11px;
}

.section-head h2,
.coupon-section h2 {
  font-size: 28px;
}

.section-head p,
.coupon-section p,
.section-head > a {
  font-size: 13px;
}

.countdown small,
.countdown b {
  font-size: 12px;
}

.flash-grid small {
  height: 44px;
  font-size: 14px;
  line-height: 1.5;
}

.flash-grid strong {
  font-size: 21px;
}

.flash-grid del,
.flash-grid em {
  font-size: 11px;
}

.products-section .section-head nav a {
  font-size: 13px;
}

.store-name,
.store-name b {
  font-size: 11px;
}

.product-title {
  height: 48px;
  font-size: 15px;
  line-height: 1.55;
}

.product-tags span {
  font-size: 11px;
}

.price-row strong {
  font-size: 25px;
}

.price-row strong small,
.price-row del {
  font-size: 11px;
}

.product-meta {
  min-height: 44px;
  font-size: 12px;
}

.product-meta button {
  height: 34px;
  font-size: 12px;
}

.coupon-section article small {
  font-size: 11px;
}

.coupon-section article strong {
  font-size: 26px;
}

.coupon-section article span,
.coupon-section button {
  font-size: 12px;
}

.live-section .section-head p,
.live-grid article > small,
.live-grid article > a > small {
  font-size: 12px;
}

.live-grid article > strong,
.live-grid article > a > strong {
  font-size: 16px;
}

.live-grid b,
.live-grid em {
  font-size: 11px;
}

.footer-grid p {
  font-size: 13px;
}

.footer-grid > div:not(:first-child) > strong {
  font-size: 14px;
}

.footer-grid > div:not(:first-child) > a,
.footer-grid > div:not(:first-child) > span,
.footer-bottom {
  font-size: 12px;
}

.breadcrumbs {
  font-size: 12px;
}

.page-title {
  font-size: 32px;
}

.filters h2,
.workspace-panel h2 {
  font-size: 18px;
}

.filters a {
  font-size: 14px;
}

.detail-info > span,
.detail-info .rating {
  font-size: 13px;
}

.detail-description {
  font-size: 15px;
}

.buy-box input,
.buy-box button,
.primary-button,
.secondary-button {
  font-size: 14px;
}

.cart-line h3 {
  font-size: 15px;
}

.cart-line small,
.cart-line button,
.summary-rows,
.summary-rows div,
.summary-note {
  font-size: 13px;
}

.form-grid label {
  font-size: 13px;
}

.form-grid input,
.form-grid select,
.form-grid textarea,
.login-card input {
  font-size: 15px;
}

.field-error {
  font-size: 12px;
}

.demo-accounts {
  font-size: 12px;
}

.benefit-grid span,
.benefit-grid small,
.checkin-card p {
  font-size: 12px;
}

.coupon-wallet span {
  font-size: 14px;
}

.coupon-wallet small {
  font-size: 12px;
}

.workspace-sidebar > small,
.workspace-topbar a,
.workspace-title p,
.kpi-grid span {
  font-size: 12px;
}

.workspace-sidebar nav a {
  font-size: 14px;
}

.workspace-title h1 {
  font-size: 32px;
}

.data-table th,
.data-table td {
  font-size: 13px;
}

.state-pill {
  font-size: 11px;
}

@media (max-width: 720px) {
  body {
    font-size: 15px;
  }

  .market-nav > .container {
    font-size: 13px;
  }

  .product-title {
    height: 43px;
    font-size: 13px;
  }

  .product-meta {
    font-size: 11px;
  }

  .product-meta button {
    font-size: 0;
  }
}

/* Browse-first homepage */
.browse-home > * {
  order: initial !important;
}

.browse-home {
  gap: 18px;
  padding-top: 18px;
  padding-bottom: 44px;
}

.category-market {
  overflow: hidden;
  border: 1px solid #d9e8ee;
  border-radius: 18px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 12px 34px rgba(82, 129, 150, .08);
}

.category-market-head {
  min-height: 82px;
  padding: 17px 22px 12px;
  display: flex;
  align-items: end;
  justify-content: space-between;
}

.category-market-head small,
.pulse-copy > small,
.catalog-empty small {
  color: #e06056;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .13em;
}

.category-market-head h1 {
  margin: 3px 0 0;
  color: #365f75;
  font-size: 28px;
  line-height: 1.2;
  letter-spacing: -.035em;
}

.category-market-head > a {
  color: #4c7890;
  font-size: 14px;
  font-weight: 750;
}

.category-market-head > a span {
  margin-left: 5px;
  color: #e06056;
}

.category-showcase {
  display: grid;
  grid-template-columns: repeat(10, minmax(0, 1fr));
  border-top: 1px solid #e3edf1;
}

.category-showcase > a {
  min-height: 102px;
  padding: 15px 8px 13px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  border-right: 1px solid #e7eff2;
  transition: transform .18s ease, background .18s ease;
}

.category-showcase > a:last-child {
  border-right: 0;
}

.category-showcase > a:hover {
  position: relative;
  transform: translateY(-3px);
  background: #f3fafc;
}

.category-showcase i {
  width: 45px;
  height: 45px;
  margin-bottom: 9px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: #eaf6fa;
  color: #4f8099;
  font-size: 15px;
  font-style: normal;
  font-weight: 850;
}

.category-showcase > a:nth-child(3n + 2) i {
  background: #fff0eb;
  color: #d95f55;
}

.category-showcase > a:nth-child(3n) i {
  background: #f7f1dc;
  color: #8d7543;
}

.category-showcase strong {
  color: #3e667a;
  font-size: 14px;
  line-height: 1.25;
}

.category-showcase span {
  margin-top: 5px;
  color: #81939d;
  font-size: 10px;
  line-height: 1.35;
}

.shopping-pulse {
  min-height: 146px;
  padding: 25px 28px;
  display: grid;
  grid-template-columns: minmax(300px, .85fr) minmax(0, 1.5fr);
  align-items: center;
  gap: 32px;
  overflow: hidden;
  position: relative;
  border: 1px solid #f0d6ce;
  border-radius: 18px;
  background: linear-gradient(110deg, #fff5ef 0%, #fffaf6 46%, #eaf6fa 100%);
}

.shopping-pulse::after {
  content: "";
  width: 190px;
  height: 190px;
  position: absolute;
  right: -78px;
  top: -112px;
  border: 30px solid rgba(255, 255, 255, .48);
  border-radius: 50%;
}

.pulse-copy {
  position: relative;
  z-index: 1;
}

.pulse-copy h2 {
  margin: 5px 0 4px;
  color: #385f73;
  font-size: 25px;
  line-height: 1.22;
  letter-spacing: -.035em;
}

.pulse-copy p {
  margin: 0;
  color: #718896;
  font-size: 13px;
}

.pulse-benefits {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  position: relative;
  z-index: 1;
}

.pulse-benefits a {
  min-height: 72px;
  padding: 8px 20px;
  display: flex;
  align-items: center;
  gap: 12px;
  border-left: 1px solid rgba(106, 154, 175, .2);
}

.pulse-benefits b {
  color: #e56a5e;
  font-size: 20px;
  font-weight: 850;
}

.pulse-benefits span {
  display: flex;
  flex-direction: column;
}

.pulse-benefits strong {
  color: #3e687d;
  font-size: 14px;
}

.pulse-benefits small {
  margin-top: 3px;
  color: #81949e;
  font-size: 11px;
}

.browse-products,
.browse-flash,
.browse-live {
  margin: 0;
  border-radius: 18px;
  box-shadow: 0 12px 34px rgba(82, 129, 150, .075);
}

.browse-products {
  padding: 26px;
}

.browse-section-head {
  min-height: 78px;
}

.browse-section-head h2 {
  color: #365f75;
  font-size: 30px;
}

.browse-products .product-grid {
  gap: 16px;
}

.browse-products .product-card {
  border-radius: 13px;
  border-color: #deeaee;
  box-shadow: 0 5px 16px rgba(71, 112, 130, .055);
}

.browse-products .product-card:hover {
  transform: translateY(-5px);
  border-color: #f0aea5;
  box-shadow: 0 16px 34px rgba(72, 117, 137, .14);
}

.browse-products .product-image {
  aspect-ratio: 4 / 3;
  background: #f2f6f7;
}

.browse-products .product-copy {
  padding: 14px;
}

.browse-products .product-title {
  margin-top: 8px;
  color: #345d72;
  font-weight: 720;
}

.browse-products .price-row strong {
  color: #e05f55;
}

.browse-products .product-meta button {
  border-radius: 9px;
  background: #ed6b5f;
  box-shadow: 0 5px 12px rgba(224, 95, 85, .18);
}

.catalog-empty {
  min-height: 205px;
  margin-top: 18px;
  padding: 34px 36px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  border: 1px dashed #bfd7e1;
  border-radius: 15px;
  background: linear-gradient(115deg, #f3fafc, #fff9f5);
}

.catalog-empty h3 {
  margin: 7px 0 5px;
  color: #3a6378;
  font-size: 24px;
}

.catalog-empty p {
  max-width: 670px;
  margin: 0;
  color: #718896;
  font-size: 14px;
}

.catalog-empty-actions {
  min-width: 180px;
  display: grid;
  gap: 9px;
}

.catalog-empty-actions a,
.browse-more {
  min-height: 44px;
  padding: 0 17px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e76a60;
  border-radius: 10px;
  background: #ed6b5f;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
}

.catalog-empty-actions a + a {
  background: #fff;
  color: #d85d52;
}

.browse-more {
  width: 270px;
  margin: 24px auto 0;
  gap: 12px;
  background: #fff;
  color: #d85d52;
}

.browse-more b {
  font-size: 18px;
}

.browse-flash {
  padding: 24px 26px 27px;
  border-top: 1px solid #f0d6ce;
  background: linear-gradient(180deg, #fff9f5, #fff);
}

.browse-flash .flash-grid article {
  border-radius: 12px;
  background: #fff;
}

.browse-service-strip {
  margin: 0;
  border-radius: 16px;
  border-color: #d9e8ee;
  box-shadow: 0 10px 26px rgba(82, 129, 150, .06);
}

.browse-service-strip > a > b {
  width: 40px;
  height: 40px;
  border-radius: 13px;
  background: #eaf6fa;
  color: #50819a;
  font-size: 14px;
}

.browse-coupons {
  margin: 0;
  border-radius: 18px;
}

.browse-live {
  margin-bottom: 0;
  padding: 26px;
}

.browse-live .live-grid article > a > div {
  height: 230px;
  overflow: hidden;
  border-radius: 13px;
}

.browse-live .live-grid article > a > strong {
  color: #3b657a;
}

@media (max-width: 1100px) {
  .category-showcase {
    grid-template-columns: repeat(5, 1fr);
  }

  .category-showcase > a:nth-child(5n) {
    border-right: 0;
  }

  .category-showcase > a:nth-child(-n + 5) {
    border-bottom: 1px solid #e7eff2;
  }

  .shopping-pulse {
    grid-template-columns: 1fr;
    gap: 14px;
  }
}

@media (max-width: 720px) {
  .browse-home {
    gap: 9px;
    padding: 9px 0 28px;
  }

  .category-market,
  .shopping-pulse,
  .browse-products,
  .browse-flash,
  .browse-service-strip,
  .browse-coupons,
  .browse-live {
    border-radius: 0;
  }

  .category-market-head {
    min-height: 70px;
    padding: 14px 13px 10px;
  }

  .category-market-head h1 {
    font-size: 24px;
  }

  .category-market-head > a {
    font-size: 12px;
  }

  .category-showcase {
    grid-template-columns: repeat(5, 1fr);
  }

  .category-showcase > a {
    min-height: 88px;
    padding: 10px 4px;
  }

  .category-showcase i {
    width: 38px;
    height: 38px;
    margin-bottom: 6px;
    border-radius: 13px;
    font-size: 13px;
  }

  .category-showcase strong {
    font-size: 12px;
  }

  .category-showcase span {
    display: none;
  }

  .shopping-pulse {
    padding: 20px 14px;
  }

  .pulse-copy h2 {
    font-size: 22px;
  }

  .pulse-benefits {
    grid-template-columns: 1fr;
  }

  .pulse-benefits a {
    min-height: 56px;
    padding: 6px 2px;
    border-left: 0;
    border-top: 1px solid rgba(106, 154, 175, .2);
  }

  .browse-products,
  .browse-flash,
  .browse-live {
    padding: 19px 10px;
  }

  .browse-products .product-grid {
    gap: 8px;
  }

  .browse-products .product-copy {
    padding: 10px;
  }

  .browse-products .product-image {
    aspect-ratio: 1 / 1;
  }

  .catalog-empty {
    min-height: 260px;
    margin-top: 14px;
    padding: 26px 18px;
    display: grid;
  }

  .catalog-empty h3 {
    font-size: 21px;
  }

  .catalog-empty-actions {
    min-width: 0;
  }

  .browse-section-head nav {
    margin: 12px 0 0;
    overflow-x: auto;
  }

  .browse-more {
    width: 100%;
  }
}

/* Real buyer and seller registration */
.login-brand {
  background: linear-gradient(145deg, #eef8fb 0%, #fff8f3 100%);
}

.login-brand h1 {
  color: #365f75;
  font-style: normal;
}

.login-card {
  color: #3f6073;
}

.login-card h2 {
  margin: 0 0 22px;
  color: #365f75;
}

.login-card label {
  color: #4c6f82;
  font-size: 14px;
}

.login-card input[type="email"],
.login-card input[type="password"],
.login-card input[type="text"] {
  height: 48px;
  padding: 0 14px;
  border: 1px solid #cfdfe6;
  border-radius: 10px;
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease;
}

.login-card input:focus {
  border-color: #6aa9cf;
  box-shadow: 0 0 0 4px rgba(106, 169, 207, .12);
}

.login-card form > button {
  height: 48px;
  border-radius: 10px;
  background: #ed6b5f;
  box-shadow: 0 8px 18px rgba(224, 95, 85, .2);
}

.remember-label {
  display: block !important;
  font-weight: 500 !important;
}

.remember-label input {
  width: 16px;
  height: 16px;
  vertical-align: -3px;
}

.auth-register-actions {
  margin-top: 18px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.auth-register-actions a,
.auth-switch a {
  min-height: 44px;
  display: grid;
  place-items: center;
  border: 1px solid #cfdfe6;
  border-radius: 10px;
  background: #fff;
  color: #48738a;
  font-size: 14px;
  font-weight: 750;
}

.auth-register-actions a:hover,
.auth-switch a:hover,
.auth-switch a.active {
  border-color: #ed6b5f;
  background: #fff4ef;
  color: #d85d52;
}

.auth-switch {
  margin-bottom: 24px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.register-shell {
  grid-template-columns: 1fr 540px;
}

.register-card {
  padding-top: 38px;
  padding-bottom: 38px;
}

.register-card form {
  gap: 11px;
}

.field-hint {
  color: #81939d;
  font-size: 11px;
  font-weight: 500;
}

.auth-success {
  padding: 10px 12px;
  border: 1px solid #cfe7dc;
  border-radius: 9px;
  background: #eef8f3;
  color: #4d7d68;
  font-size: 13px;
}

.auth-footer {
  margin-top: 18px;
  display: flex;
  justify-content: center;
  gap: 9px;
  color: #81939d;
  font-size: 13px;
}

.auth-footer a,
.auth-back {
  color: #d85d52;
  font-weight: 750;
}

.auth-back {
  margin-top: 22px;
  display: inline-flex;
  font-size: 13px;
}

@media (max-width: 720px) {
  .register-shell {
    display: block;
  }

  .register-card {
    padding: 30px 22px 40px;
  }
}

.seller-entry-grid article strong {
  color: #3f6073;
  font-size: 25px;
}

.seller-entry-panel {
  padding: 18px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.seller-entry-panel a {
  min-height: 150px;
  padding: 22px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid #dce9ee;
  border-radius: 12px;
  background: #f8fcfd;
  color: #3f6073;
}

.seller-entry-panel b {
  color: #ed6b5f;
  font-size: 14px;
}

.seller-entry-panel strong {
  font-size: 22px;
}

@media (max-width: 720px) {
  .seller-entry-panel {
    grid-template-columns: 1fr;
  }
}
