/* Magiclogs account marketplace dashboard – isolated from public-site pages. */
.ml-dashboard-shell {
  --ml-red: #c8102e;
  --ml-red-dark: #aa0d26;
  --ml-red-pale: #fff0f2;
  --ml-border: #ebedf1;
  --ml-text: #252938;
  --ml-muted: #828999;
  --ml-surface: #f5f7fb;
  min-height: 100vh;
  background: var(--ml-surface);
  color: var(--ml-text);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  display: block;
}
body.ml-dashboard-menu-open {overflow: hidden;}
.ml-dashboard-shell *, .ml-dashboard-shell *::before, .ml-dashboard-shell *::after {box-sizing: border-box;}
.ml-dashboard-shell a {text-decoration: none;}
.ml-dashboard-shell a:focus-visible, .ml-dashboard-shell button:focus-visible, .ml-dashboard-shell input:focus-visible {outline: 3px solid rgba(200,16,46,.35); outline-offset: 2px;}
.ml-dashboard-overlay {position: fixed; inset: 0; background: rgba(18,24,36,.34); backdrop-filter: blur(1px); z-index: 1090;}
.ml-dashboard-overlay[hidden] {display: none !important;}
.ml-dashboard-sidebar {
  width: 304px;
  min-width: 0;
  background: #fff;
  border-right: 1px solid #e7eaef;
  height: 100dvh;
  padding: 0;
  display: flex;
  flex-direction: column;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  box-shadow: 8px 0 26px rgba(20,29,47,.12);
  z-index: 1100;
}
.ml-dashboard-sidebar[hidden] {display: none !important;}
.ml-dashboard-sidebar__header {
  min-height: 72px;
  padding: 18px 16px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #e7eaef;
}
.ml-dashboard-sidebar__brand {
  color: #171d2d !important;
  font-size: 19px;
  font-weight: 900;
  letter-spacing: -.03em;
}
.ml-dashboard-sidebar__close {
  width: 36px;
  height: 36px;
  border-radius: 9px;
  border: 1px solid #e7eaef;
  background: #fbfbfc;
  color: #a6abb6;
  display: grid;
  place-items: center;
  cursor: pointer;
  font-size: 15px;
}
.ml-dashboard-sidebar__close:hover {background: #fff1f4; color: var(--ml-red); border-color: #f0c7d0;}
.ml-dashboard-sidebar__nav {
  flex: 1;
  overflow-y: auto;
  padding: 14px 14px 10px;
}
.ml-dashboard-sidebar__group + .ml-dashboard-sidebar__group {margin-top: 22px;}
.ml-dashboard-sidebar__title {
  display: block;
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #a8adb7;
  margin: 0 8px 10px;
}
.ml-dashboard-sidebar__group a {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 48px;
  padding: 12px 12px;
  margin-bottom: 6px;
  border-radius: 12px;
  color: #535968;
  font-size: 14px;
  font-weight: 700;
  transition: background .15s ease, color .15s ease, transform .15s ease;
}
.ml-dashboard-sidebar__group a i {
  width: 16px;
  text-align: center;
  color: #5e6471;
  font-size: 15px;
}
.ml-dashboard-sidebar__group a:hover {
  background: #f7f9fc;
  color: #1f2431;
  transform: translateX(1px);
}
.ml-dashboard-sidebar__group a:hover i {color: var(--ml-red);}
.ml-dashboard-sidebar__group a.is-active {
  background: #fff0f2;
  color: var(--ml-red);
  font-weight: 800;
}
.ml-dashboard-sidebar__group a.is-active i {color: var(--ml-red);}
.ml-dashboard-sidebar__logout {color: #f04d61 !important;}
.ml-dashboard-sidebar__logout i {color: #f04d61 !important;}
.ml-dashboard-wallet-card {
  margin: 14px;
  border-radius: 14px;
  padding: 16px 16px 18px;
  color: #fff;
  background: linear-gradient(135deg,#d72043 0%,#c8102e 58%,#a50b24 100%);
  box-shadow: 0 10px 24px rgba(200,16,46,.18);
}
.ml-dashboard-wallet-card > span {
  display: block;
  font-size: 12px;
  color: rgba(255,255,255,.88);
  margin-bottom: 7px;
}
.ml-dashboard-wallet-card > strong {
  display: block;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 900;
  margin-bottom: 12px;
}
.ml-dashboard-wallet-card > a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 37px;
  padding: 8px 13px;
  border-radius: 9px;
  color: #fff;
  background: rgba(255,255,255,.18);
  border: 1px solid rgba(255,255,255,.14);
  font-size: 14px;
  font-weight: 800;
}
.ml-dashboard-wallet-card > a:hover {background: rgba(255,255,255,.27); color: #fff;}
.ml-dashboard-content {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
}
.ml-dashboard-header {position: sticky; top: 0; z-index: 50; background: rgba(245,247,251,.94); backdrop-filter: blur(8px); border-bottom: 1px solid #edf0f4;}
.ml-dashboard-header__inner {width: 100%; min-height: 64px; padding: 0 20px; margin: 0 auto; display: flex; align-items: center; gap: 13px;}
.ml-dashboard-menu-toggle {width: 36px; height: 36px; display: grid; place-items: center; cursor: pointer; border-radius: 9px; border: 1px solid #e8eaf0; background: #fff; color: #747d8e; font-size: 15px;}
.ml-dashboard-menu-toggle:hover {color: var(--ml-red); border-color: #f2c2cd; background: var(--ml-red-pale);}
.ml-dashboard-brand {display: inline-flex; align-items: center; gap: 9px; font-size: 18px; line-height: 1.2; font-weight: 900; letter-spacing: -.5px; color: #171d2d !important;}
.ml-dashboard-header__right {margin-left: auto; display: inline-flex; align-items: center; gap: 12px;}
.ml-dashboard-balance {display: inline-flex; gap: 7px; align-items: center; padding: 6px 11px; color: var(--ml-red); background: var(--ml-red-pale); border: 1px solid #f8dbe1; border-radius: 7px; font-size: 12px; font-weight: 850; white-space: nowrap;}
.ml-dashboard-profile {width: 32px; height: 32px; display: inline-grid; place-items: center; border-radius: 50%; background: #f4e9ec; color: var(--ml-red); font-size: 13px; font-weight: 900;}
.ml-dashboard-main {width: 100%; padding: 28px 18px 34px;}
.ml-dash-container {width: min(100%, 980px); margin: 0 auto;}
.ml-dash-welcome {border-radius: 12px; padding: 25px 25px 24px; display: flex; align-items: center; justify-content: space-between; gap: 22px; color: white; background: linear-gradient(112deg,#e2294a 0%,#c8102e 60%,#ae0826 100%); box-shadow: 0 7px 17px rgba(167,20,51,.14);}
.ml-dash-welcome__intro > span {display: block; font-size: 12px; font-weight: 500; opacity: .92; margin-bottom: 2px;}
.ml-dash-welcome h1 {color: #fff !important; font-size: clamp(20px, 2.8vw, 28px); font-weight: 900; margin: 0; line-height: 1.32; letter-spacing: -.035em;}
.ml-dash-welcome h1 span {font-size: .85em;}
.ml-dash-welcome__intro p {font-size: 11px; margin: 5px 0 0; color: rgba(255,255,255,.8);}
.ml-dash-welcome__balance {text-align: right; display: flex; flex-direction: column; align-items: flex-end; gap: 5px; flex-shrink: 0;}
.ml-dash-welcome__balance > span {font-size: 11px; color: rgba(255,255,255,.86);}
.ml-dash-welcome__balance strong {font-size: 24px; font-weight: 900; color: #fff; line-height: 1.2;}
.ml-dash-welcome__balance a {padding: 6px 11px; border-radius: 7px; background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.13); color: white; font-size: 11px; font-weight: 800;}
.ml-dash-welcome__balance a:hover {background: rgba(255,255,255,.28); color: white;}
.ml-dash-shortcuts {display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin: 17px 0 16px;}
.ml-dash-shortcut {background: #fff; border: 1px solid #f0f0f2; border-radius: 11px; min-height: 104px; padding: 16px 10px 12px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; box-shadow: 0 2px 6px rgba(32,38,55,.025); transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;}
.ml-dash-shortcut:hover {transform: translateY(-2px); border-color: #e9bbc6; box-shadow: 0 8px 18px rgba(74,38,45,.07);}
.ml-dash-shortcut__icon {width: 40px; height: 40px; border-radius: 9px; display: grid; place-items: center; background: #fff0f2; color: var(--ml-red); font-size: 17px;}
.ml-dash-shortcut__icon--orders {background: #eef9f3; color: #18a16e;}
.ml-dash-shortcut__icon--wallet {background: #fff7e9; color: #d58e18;}
.ml-dash-shortcut__icon--support {background: #edf5ff; color: #2687ca;}
.ml-dash-shortcut strong {color: #333a48; font-size: 12px; font-weight: 800;}
.ml-dash-search {min-height: 49px; display: flex; align-items: center; gap: 12px; padding: 5px 5px 5px 15px; background: white; border: 1px solid #ebeef1; border-radius: 10px;}
.ml-dash-search > i {color: #949cab; font-size: 14px;}
.ml-dash-search input {flex: 1; min-width: 0; border: none !important; box-shadow: none !important; background: transparent !important; color: var(--ml-text); font-size: 13px; outline: none; padding: 7px 0;}
.ml-dash-search input::placeholder {color: #a7acb6;}
.ml-dash-search button {align-self: stretch; padding: 5px 18px; border: 0; background: var(--ml-red); color: #fff; border-radius: 7px; font-weight: 800; font-size: 12px; cursor: pointer;}
.ml-dash-search button:hover {background: var(--ml-red-dark);}
.ml-dash-categories {display: flex; flex-wrap: nowrap; align-items: center; gap: 8px; overflow-x: auto; padding: 15px 0 17px; scrollbar-width: thin; scrollbar-color: #e8bcc6 transparent;}
.ml-dash-category-pill {flex-shrink: 0; display: inline-flex; align-items: center; gap: 7px; border: 1px solid #e8e9ec; background: #fff; padding: 7px 11px; border-radius: 24px; font-size: 11px; font-weight: 820; line-height: 1.1; color: #444b5b !important; text-transform: uppercase; white-space: nowrap;}
.ml-dash-category-pill i {font-size: 12px; color: var(--ml-red);}
.ml-dash-category-pill:hover {color: var(--ml-red) !important; border-color: #e5b4bf;}
.ml-dash-category-pill.is-active {background: var(--ml-red); border-color: var(--ml-red); color: #fff !important; box-shadow: 0 2px 5px rgba(198,15,46,.16);}
.ml-dash-category-pill.is-active i {color: #fff;}
.ml-dash-category-pill--more {text-transform: none;}
.ml-dash-product-section {margin: 5px 0 18px; scroll-margin-top: 20px;}
.ml-dash-section-head {display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 0 0 8px;}
.ml-dash-section-head h2 {display: flex; align-items: center; gap: 10px; color: #252938; font-size: 13px; font-weight: 900; margin: 0; line-height: 1.3; text-transform: uppercase;}
.ml-dash-category-icon {width: 25px; height: 25px; border-radius: 6px; background: var(--ml-red); color: #fff; display: inline-grid; place-items: center; font-size: 14px;}
.ml-dash-section-head > a {font-size: 11px; font-weight: 800; color: var(--ml-red); white-space: nowrap;}
.ml-dash-section-head > a:hover {color: #85051c;}
.ml-dash-product-list {background: #fff; border: 1px solid #e9edf0; border-radius: 12px; box-shadow: 0 2px 8px rgba(30,38,54,.025); overflow: hidden;}
.ml-dash-product-row {display: flex; align-items: center; min-width: 0; gap: 11px; padding: 10px 14px; min-height: 73px;}
.ml-dash-product-row + .ml-dash-product-row {border-top: 1px solid #f0f1f4;}
.ml-dash-product-thumb {display: flex; align-items: center; justify-content: center; flex-shrink: 0; overflow: hidden; width: 48px; height: 48px; border-radius: 10px; background: #f9eef1;}
.ml-dash-product-thumb img {display: block; width: 100%; height: 100%; object-fit: contain; padding: 5px;}
.ml-dash-product-info {flex: 1; min-width: 0; padding-right: 7px;}
.ml-dash-product-info h3 {font-size: 13px; line-height: 1.3; font-weight: 780; margin: 0 0 5px; overflow-wrap: anywhere;}
.ml-dash-product-info h3 a {color: #252938;}
.ml-dash-product-info h3 a:hover {color: var(--ml-red);}
.ml-dash-stock {font-size: 10px; font-weight: 600; color: #8e95a2; display: flex; align-items: center; gap: 5px;}
.ml-dash-stock i {font-size: 6px; color: #20ac79;}
.ml-dash-stock.is-sold i {color: #ed6d7d;}
.ml-dash-stock.is-available::first-letter {color: #16a76a;}
.ml-dash-product-price {flex-shrink: 0; min-width: 105px; display: flex; flex-direction: column; align-items: flex-end; gap: 6px;}
.ml-dash-product-price strong {font-size: 13px; color: var(--ml-red); font-weight: 900; white-space: nowrap;}
.ml-dash-buy {display: inline-flex; justify-content: center; align-items: center; min-width: 51px; padding: 5px 12px; border: none; border-radius: 6px; background: var(--ml-red); color: white; font-size: 11px; line-height: 1.2; font-weight: 900; cursor: pointer; box-shadow: 0 2px 5px rgba(200,16,46,.15);}
.ml-dash-buy:hover {background: var(--ml-red-dark); color: #fff;}
.ml-dash-sold-out {font-size: 10px; font-weight: 750; color: #b0b4bd;}
.ml-dash-empty {background: #fff; border: 1px solid #ebedf1; border-radius: 12px; text-align: center; padding: 40px 20px;}
.ml-dash-empty > i {font-size: 24px; color: var(--ml-red);}
.ml-dash-empty h2 {font-size: 18px; margin: 14px 0 6px;}
.ml-dash-empty p {font-size: 13px; color: var(--ml-muted);}
.ml-dash-empty a {display: inline-block; padding: 9px 16px; border-radius: 7px; background: var(--ml-red); color: #fff; font-size: 12px; font-weight: 800;}
.ml-dash-browse-more {text-align: center; padding: 8px 0 20px;}
.ml-dash-browse-more a {font-size: 12px; font-weight: 800; color: var(--ml-red);}
.ml-dash-activity {padding: 1px 0 10px;}
.ml-dash-activity__heading {display: flex; gap: 7px; align-items: center; margin-bottom: 7px;}
.ml-dash-activity__heading h2 {font-size: 13px; line-height: 1.4; font-weight: 900; margin: 0;}
.ml-dash-activity__heading a {margin-left: auto; color: var(--ml-red); font-size: 11px; font-weight: 800;}
.ml-dash-activity__dot {width: 7px; height: 7px; border-radius: 50%; background: var(--ml-red);}
.ml-dash-activity__rows {background: #fff; border: 1px solid #ebedf1; border-radius: 11px; overflow: hidden;}
.ml-dash-activity__row {min-height: 60px; display: flex; justify-content: space-between; align-items: center; gap: 15px; padding: 10px 16px;}
.ml-dash-activity__row + .ml-dash-activity__row {border-top: 1px solid #eef0f2;}
.ml-dash-activity__row > div {display: flex; flex-direction: column; gap: 3px; min-width: 0;}
.ml-dash-activity__row strong {font-size: 11px; font-weight: 800; color: #3a4151; overflow-wrap: anywhere;}
.ml-dash-activity__row span {font-size: 10px; color: #969da9;}
.ml-dash-activity__value {align-items: flex-end; flex-shrink: 0;}
.ml-dash-activity__value .badge {font-size: 9px; padding: 3px 7px;}
.ml-dash-activity__empty {padding: 17px; margin: 0; font-size: 12px; color: var(--ml-muted);}
.ml-dashboard-footer {width: min(calc(100% - 36px),980px); margin: 0 auto 28px; padding: 19px; border: 1px solid #f0dfe3; border-radius: 12px; background: #fff7f9; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 5px;}
.ml-dashboard-footer__icon {width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: #fff; border: 1px solid #f3d5dd; color: var(--ml-red); font-size: 13px;}
.ml-dashboard-footer > strong {font-size: 14px; color: #292a33; font-weight: 900;}
.ml-dashboard-footer p {margin: 0; color: #858b98; font-size: 11px;}
.ml-dashboard-footer a {margin-top: 6px; display: inline-flex; align-items: center; gap: 6px; padding: 7px 11px; border: 1px solid #f1d0d8; background: #fff; border-radius: 7px; color: var(--ml-red); font-size: 11px; font-weight: 800;}
.ml-dashboard-footer a:hover {background: var(--ml-red); color: #fff;}
.ml-dashboard-footer small {margin-top: 5px; color: #ac9aa0; font-size: 10px;}
.ml-dashboard-shell #purchaseModal .modal-dialog {max-width: 520px;}
.ml-dashboard-shell #purchaseModal .modal-content {background: #fff; border-radius: 13px; overflow: hidden; color: #2b2f38;}
.ml-dashboard-shell #purchaseModal .modal-header {padding: 16px 19px;}
.ml-dashboard-shell #purchaseModal .btn--base {background: var(--ml-red) !important; border-color: var(--ml-red) !important; color: #fff !important;}
@media (max-width: 1099px) {
  .ml-dashboard-sidebar {width: min(304px, calc(100vw - 28px));}
}
@media (max-width: 640px) {
  .ml-dashboard-header__inner {padding: 0 14px; min-height: 58px; gap: 10px;}
  .ml-dashboard-brand {font-size: 16px;}
  .ml-dashboard-header__right {gap: 7px;}
  .ml-dashboard-balance {font-size: 10px; padding: 6px 8px;}
  .ml-dashboard-profile {width: 28px; height: 28px;}
  .ml-dashboard-main {padding: 15px 11px 22px;}
  .ml-dash-welcome {padding: 19px 17px; border-radius: 10px;}
  .ml-dash-welcome h1 {font-size: 20px;}
  .ml-dash-welcome__intro p {max-width: 200px; font-size: 10px; line-height: 1.4;}
  .ml-dash-welcome__balance strong {font-size: 17px;}
  .ml-dash-welcome__balance > span {font-size: 10px;}
  .ml-dash-welcome__balance a {font-size: 9px; padding: 6px 7px;}
  .ml-dash-shortcuts {gap: 7px; margin: 11px 0;}
  .ml-dash-shortcut {min-height: 86px; padding: 12px 5px 10px; gap: 6px;}
  .ml-dash-shortcut__icon {width: 33px; height: 33px; font-size: 14px;}
  .ml-dash-shortcut strong {font-size: 10px;}
  .ml-dash-search {min-height: 45px;}
  .ml-dash-search button {padding: 4px 11px; font-size: 11px;}
  .ml-dash-categories {padding: 11px 0;}
  .ml-dash-product-row {padding: 9px; gap: 9px; min-height: 68px;}
  .ml-dash-product-thumb {width: 41px; height: 41px; border-radius: 8px;}
  .ml-dash-product-info h3 {font-size: 11px;}
  .ml-dash-product-price {min-width: 80px;}
  .ml-dash-product-price strong {font-size: 11px;}
  .ml-dash-buy {font-size: 10px; padding: 5px 11px;}
  .ml-dash-section-head h2 {font-size: 12px;}
  .ml-dashboard-footer {width: calc(100% - 22px); margin-bottom: 18px;}
}
@media (max-width: 400px) {
  .ml-dashboard-profile {display: none;}
  .ml-dash-welcome__intro p {display: none;}
  .ml-dash-welcome {gap: 9px;}
  .ml-dash-product-price {min-width: 70px;}
  .ml-dash-product-info h3 {font-size: 10.5px;}
}
@media (prefers-reduced-motion: reduce) {.ml-dash-shortcut, .ml-dashboard-sidebar__group a {transition: none;}}
