/* === v2.5 deploy === */
@font-face {
  font-family: 'Alte Haas Grotesk';
  src: url('/alte-haas-grotesk-hu-regular-v3.ttf') format('truetype');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Alte Haas Grotesk';
  src: url('/alte-haas-grotesk-hu-bold-v3.ttf') format('truetype');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root {
  --primary-orange: #FF5A00;
  --primary-orange-hover: #E05000;
  --white: #FFFFFF;
  --light-grey: #E6E6E6;
  --medium-grey: #8A8A8A;
  --dark-grey: #1E1E1E;
  --black-bg: #0D0D0D;
  --pure-black: #000000;
  
  /* System Accents */
  --blue-accent: #2F80ED;
  --green-accent: #27AE60;
  --red-accent: #EB5757;
  
  /* Gradients */
  --orange-gradient: linear-gradient(135deg, #FF7A00 0%, #FF3D00 100%);
  --dark-gradient: linear-gradient(180deg, #1C1C1E 0%, #0D0D0D 100%);
  --glass-gradient: linear-gradient(135deg, rgba(30, 30, 30, 0.6) 0%, rgba(15, 15, 15, 0.8) 100%);
  
  /* Glassmorphism */
  --glass-bg: rgba(26, 26, 26, 0.65);
  --glass-border: rgba(255, 255, 255, 0.08);
  --glass-blur: blur(20px);
  --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37);

  /* Theme-aware semantic tokens */
  --bg-primary: #0D0D0D;
  --bg-secondary: #111113;
  --bg-card: #181818;
  --bg-input: #151515;
  --bg-surface: rgba(255,255,255,0.03);
  --text-primary: #FFFFFF;
  --text-secondary: #8A8A8A;
  --text-muted: #555;
  --border-color: rgba(255,255,255,0.08);
  --nav-bg: rgba(13,13,13,0.95);
  --header-bg: rgba(10,10,10,0.98);
  --input-bg: #151515;
  --card-shadow: 0 4px 20px rgba(0,0,0,0.4);
  --color-marketplace-canvas: #F5F5F5;
  /* 1232px × 80%: the approved ≈2000px Retina desktop content canvas. */
  --desktop-marketplace-content-width: 985.6px;
  --desktop-home-content-width: 990px;
  --font-family-base: 'Alte Haas Grotesk', Arial, sans-serif;
  
  /* Phone Dimensions */
  --phone-width: 390px;
  --phone-height: 844px;

  /* Theme transition */
  --theme-transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

/* ═══════════════════════════════════════
   LIGHT MODE OVERRIDES
   ═══════════════════════════════════════ */
[data-theme="light"] {
  --white: #1A1A1A;
  --light-grey: #2C2C2C;
  --medium-grey: #666666;
  --dark-grey: #F0F0F0;
  --black-bg: #F5F4F2;
  --pure-black: #1A1A1A;

  --glass-bg: rgba(255, 255, 255, 0.75);
  --glass-border: rgba(0, 0, 0, 0.09);
  --glass-shadow: 0 8px 32px 0 rgba(0,0,0,0.12);
  --glass-gradient: linear-gradient(135deg, rgba(255,255,255,0.8) 0%, rgba(240,240,240,0.9) 100%);
  --dark-gradient: linear-gradient(180deg, #EFEFEF 0%, #F5F4F2 100%);

  /* Semantic light tokens */
  --bg-primary: #F5F4F2;
  --bg-secondary: #EFEFED;
  --bg-card: #FFFFFF;
  --bg-input: #FFFFFF;
  --bg-surface: rgba(0,0,0,0.03);
  --text-primary: #111111;
  --text-secondary: #666666;
  --text-muted: #999;
  --border-color: rgba(0,0,0,0.10);
  --nav-bg: rgba(245,244,242,0.97);
  --header-bg: rgba(245,244,242,0.99);
  --input-bg: #FFFFFF;
  --card-shadow: 0 2px 12px rgba(0,0,0,0.10);
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  -webkit-tap-highlight-color: transparent;
  user-select: none;
}

body,
button,
input,
select,
textarea {
  font-family: var(--font-family-base);
  font-synthesis: none;
}

#root,
#root * {
  font-family: var(--font-family-base) !important;
  font-synthesis: none;
}

body {
  background-color: #050505;
  color: var(--white);
  overflow: hidden;
  height: 100vh;
  width: 100vw;
}

.felni-home-alte-haas,
.felni-home-alte-haas button,
.felni-home-alte-haas input,
.felni-home-alte-haas select,
.felni-home-alte-haas textarea {
  font-family: var(--font-family-base);
  font-synthesis: none;
}


html {
  overflow: hidden;
  width: 100%;
  height: 100%;
  scrollbar-width: none; /* Firefox */
}

#root {
  overflow: hidden;
  width: 100%;
  height: 100%;
}

input, textarea, select {
  user-select: text;
}

/* Scrollbar — globally HIDDEN (only inner containers get scoped scrollbars) */
::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--primary-orange);
}

/* --- Layout Structure --- */
.app-container {
  display: flex;
  height: 100vh;
  width: 100vw;
  background-color: #050505;
  background-image: 
    radial-gradient(at 10% 20%, rgba(255, 90, 0, 0.08) 0px, transparent 50%),
    radial-gradient(at 90% 80%, rgba(47, 128, 237, 0.05) 0px, transparent 50%);
  overflow: hidden;
}

/* Desktop Sidebar Dashboard */
.dashboard-sidebar {
  flex: 1;
  max-width: 420px;
  height: 100vh;
  background: rgba(13, 13, 13, 0.7);
  border-right: 1px solid var(--glass-border);
  backdrop-filter: blur(10px);
  display: flex;
  flex-direction: column;
  padding: 24px;
  overflow-y: auto;
  z-index: 10;
}

.dashboard-sidebar.right {
  border-right: none;
  border-left: 1px solid var(--glass-border);
}

/* Main Showcase Area */
.showcase-area {
  flex: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: 100vh;
  padding: 20px;
}

/* --- Phone Frame (iPhone 15 Pro) --- */
.phone-mockup {
  position: relative;
  width: calc(var(--phone-width) + 24px);
  height: calc(var(--phone-height) + 24px);
  background: #1C1C1E;
  border-radius: 54px;
  padding: 12px;
  box-shadow: 
    0 25px 50px -12px rgba(0, 0, 0, 0.7),
    0 0 0 4px #2c2c2e,
    0 0 0 6px #48484a,
    inset 0 0 4px 2px rgba(255, 255, 255, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  transform: scale(0.95);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

@media (max-height: 900px) {
  .phone-mockup {
    transform: scale(0.85);
  }
}

@media (max-height: 800px) {
  .phone-mockup {
    transform: scale(0.75);
  }
}

.phone-screen {
  position: relative;
  width: var(--phone-width);
  height: var(--phone-height);
  background-color: var(--black-bg);
  border-radius: 42px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border: 4px solid #000;
  box-shadow: inset 0 0 10px rgba(0,0,0,0.8);
}

/* Dynamic Island */
.dynamic-island {
  position: absolute;
  top: 11px;
  left: 50%;
  transform: translateX(-50%);
  width: 110px;
  height: 28px;
  background-color: #000000;
  border-radius: 20px;
  z-index: 999;
  transition: width 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 12px;
}

.dynamic-island.expanded {
  width: 280px;
  height: 48px;
  border-radius: 24px;
}

/* Phone Buttons (Physical mockups on frame) */
.phone-btn {
  position: absolute;
  background: #2c2c2e;
  border-radius: 2px;
}
.btn-volume-up {
  left: -4px;
  top: 150px;
  width: 4px;
  height: 50px;
}
.btn-volume-down {
  left: -4px;
  top: 215px;
  width: 4px;
  height: 50px;
}
.btn-power {
  right: -4px;
  top: 180px;
  width: 4px;
  height: 75px;
}

/* Status Bar */
.status-bar {
  height: 44px;
  padding: 14px 24px 0 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
  font-weight: 600;
  color: var(--white);
  z-index: 100;
  background-color: transparent;
}

/* Home Indicator — REJTVE (div törölve App.tsx-ből + CSS által is rejtve) */
.home-indicator {
  display: none;
  width: 0;
  height: 0;
}

/* --- Mobile Application Components --- */
.app-screen-content {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding-bottom: 0; /* Desktop: 0, mobile: 74px (in media query below) */
  position: relative;
  display: flex;
  flex-direction: column;
}

/* Bottom Nav Bar (Mobile App) */
.bottom-nav {
  width: 100%;
  height: 64px;
  flex-shrink: 0;
  background: rgba(22, 22, 22, 0.95);
  border-top: 1px solid var(--glass-border);
  backdrop-filter: blur(10px);
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding: 0 8px;
  z-index: 100;
}

/* CR-014: a középső hirdetésfeladási gomb a navigáció buborékján belül,
   valódi viewport-középen maradjon. */
.bottom-nav {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  justify-items: center;
}

.nav-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: var(--medium-grey);
  font-size: 11px;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
  width: 55px;
  height: 100%;
  transition: color 0.2s ease;
  position: relative;
}

.nav-item.active {
  color: var(--primary-orange);
}

.nav-item-icon {
  margin-bottom: 2px;
  transition: transform 0.2s ease;
}

.nav-item:hover .nav-item-icon {
  transform: scale(1.1);
}

.nav-item.active .nav-item-icon {
  transform: scale(1.1);
}

/* Plus button custom styling */
.nav-item-plus {
  width: 44px;
  height: 44px;
  background: var(--orange-gradient);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--white) !important;
  box-shadow: 0 4px 10px rgba(255, 90, 0, 0.4);
  transform: none;
  transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.nav-item-plus:hover {
  transform: none;
}

/* --- UI Patterns --- */

/* Hero buttons */
.btn-primary {
  width: 100%;
  padding: 14px 20px;
  background: var(--orange-gradient);
  border: none;
  border-radius: 14px;
  color: var(--white);
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.2s ease;
  box-shadow: 0 4px 15px rgba(255, 90, 0, 0.2);
}

.btn-primary:hover {
  opacity: 0.95;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(255, 90, 0, 0.3);
}

.btn-primary:active {
  transform: translateY(1px);
}

.btn-secondary {
  width: 100%;
  padding: 14px 20px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--glass-border);
  border-radius: 14px;
  color: var(--white);
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.2s ease;
}

.btn-secondary:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.15);
}

/* Forms & Inputs */
.form-group {
  margin-bottom: 16px;
  text-align: left;
}

.form-label {
  display: block;
  font-size: 14px;
  font-weight: 500;
  color: var(--light-grey);
  margin-bottom: 6px;
}

.input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.input-icon {
  position: absolute;
  left: 14px;
  color: var(--medium-grey);
  pointer-events: none;
}

.input-icon-right {
  position: absolute;
  right: 14px;
  color: var(--medium-grey);
  cursor: pointer;
}

.input-icon-right:hover {
  color: var(--white);
}

.form-input {
  width: 100%;
  padding: 12px 14px 12px 42px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  color: var(--white);
  font-family: inherit;
  font-size: 15px;
  outline: none;
  transition: all 0.2s ease;
}

.form-input:focus {
  border-color: var(--primary-orange);
  background: rgba(255, 255, 255, 0.08);
  box-shadow: 0 0 0 3px rgba(255, 90, 0, 0.15);
}

.form-input-no-icon {
  padding-left: 14px;
}

.auth-card {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.auth-flow {
  display: contents;
}

@media (min-width: 1024px) {
  .desktop-subview-frame--listing,
  .desktop-listing-detail,
  .desktop-listing-detail__scroll {
    background: #f5f5f5 !important;
  }

  .auth-flow--desktop {
    display: flex;
    flex: 1;
    min-height: 0;
    width: 100%;
    flex-direction: column;
    overflow: hidden;
    background: var(--color-marketplace-canvas);
    color: #171717;
  }

  .auth-flow--desktop .desktop-shell {
    flex: 0 0 auto;
  }

  .auth-page {
    display: grid !important;
    flex: 1;
    place-items: start center;
    min-height: 0 !important;
    padding: 36px 24px 52px !important;
    overflow: auto !important;
    background: var(--color-marketplace-canvas) !important;
  }

  .auth-page--login {
    place-items: start center !important;
    padding-top: 36px !important;
  }

  .auth-card {
    width: min(100%, 520px);
    padding: 34px;
    border: 1px solid #e4dfd7;
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 18px 54px rgba(30, 24, 18, 0.075);
    color: #171717;
  }

  .auth-card--register {
    width: min(100%, 560px);
  }

  .auth-card > button:first-child {
    width: 42px !important;
    height: 42px !important;
    margin-bottom: 26px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center;
    border: 1px solid #ded8cf !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    color: #171717 !important;
  }

  .auth-card--login > button:first-child {
    margin-bottom: 18px !important;
  }

  .auth-card h2 {
    font-size: 34px !important;
    letter-spacing: -0.035em;
    color: #171717 !important;
  }

  .auth-card p {
    max-width: 350px;
    font-size: 14px !important;
    color: #6d6a66 !important;
  }

  .auth-card form {
    width: 100%;
    gap: 14px !important;
  }

  .auth-card .form-input {
    height: 56px !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    border-color: #ded8cf !important;
    color: #171717 !important;
    box-shadow: none;
  }

  .auth-card .form-input::placeholder {
    color: #96918b !important;
    opacity: 1;
  }

  .auth-card .form-input:focus {
    border-color: rgba(255, 90, 0, 0.72) !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(255, 90, 0, 0.12);
  }

  .auth-card .btn-primary,
  .auth-card form button[type="submit"] {
    height: 56px !important;
    border-radius: 14px !important;
  }

  .auth-card .auth-field > svg,
  .auth-card .auth-field > button {
    color: #7c7771 !important;
  }

  .auth-card .auth-google-button,
  .auth-card .auth-secondary-button {
    background: #ffffff !important;
    border-color: #ded8cf !important;
    color: #171717 !important;
  }

  .auth-card .auth-google-button:hover,
  .auth-card .auth-secondary-button:hover,
  .auth-card .auth-back-button:hover {
    border-color: #ff5a00 !important;
    background: #fff8f4 !important;
  }

  .auth-card .auth-forgot-button,
  .auth-card .auth-switch-button {
    color: #6d6a66 !important;
  }

  .auth-card .auth-agreement__label {
    color: #6d6a66 !important;
  }

  .auth-card .auth-agreement__check {
    border-color: #cfc8bf !important;
    background: #ffffff !important;
  }

  .auth-card .auth-agreement__check.is-checked {
    background: var(--primary-orange) !important;
    border-color: var(--primary-orange) !important;
  }

  .auth-card .auth-error {
    background: #fff1f1 !important;
    border-color: #eb5757 !important;
    color: #b42318 !important;
  }
}

/* Desktop hirdetésfeltöltés — olvashatóság, navigáció és összegzés — 2026-08-01 */
@media (min-width: 1024px) {
  .app-container--desktop-ad-upload .ad-upload-heading-action--left .btn-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #171717 !important;
    border: 1px solid #dcd5cd !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-heading-action--left .btn-secondary:hover {
    color: #e95100 !important;
    border-color: #ff9b66 !important;
    background: #fff7f2 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-rim-type-option:not(.is-selected) {
    color: #171717 !important;
    background: #fff !important;
    border-color: #ddd7cf !important;
  }

  .app-container--desktop-ad-upload .ad-upload-rim-type-option:not(.is-selected):hover {
    border-color: #ff9b66 !important;
    background: #fff7f2 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-option__title {
    color: #171717 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-option {
    background: #fff !important;
    border-color: #ddd7cf !important;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-option.is-selected {
    border-color: #ff5a00 !important;
    background: #fff5ee !important;
  }

  .app-container--desktop-ad-upload .ad-upload-visibility-settings {
    gap: 0 !important;
    margin-top: 0 !important;
    padding: 14px 16px !important;
    border-color: #e2dcd4 !important;
    background: #faf8f5 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-visibility-option {
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    color: #171717;
    cursor: pointer;
  }

  .app-container--desktop-ad-upload .ad-upload-visibility-option + .ad-upload-visibility-option {
    border-top: 1px solid #e7e1da;
  }

  .app-container--desktop-ad-upload .ad-upload-visibility-option input[type="checkbox"] {
    flex: 0 0 20px;
    margin: 0;
  }

  .app-container--desktop-ad-upload .ad-upload-contact-note {
    grid-column: 1 / -1;
    margin: 0 !important;
    padding: 11px 14px;
    color: #625d57 !important;
    border: 1px solid #f0d5c5;
    border-radius: 10px;
    background: #fff7f2;
    font-size: 12px;
    line-height: 1.45;
  }

  .app-container--desktop-ad-upload .ad-upload-step--review {
    display: grid !important;
    grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
    gap: 16px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-review-header,
  .app-container--desktop-ad-upload .ad-upload-review-photos {
    grid-column: 1 / -1;
  }

  .app-container--desktop-ad-upload .ad-upload-review-header {
    padding: 0 0 14px !important;
    border: 0 !important;
    border-bottom: 1px solid #e8e2da !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-review-header h3 {
    margin: 3px 0 5px !important;
    color: #171717 !important;
    font-size: 24px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-review-eyebrow {
    color: #e95100;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.25px;
    text-transform: uppercase;
  }

  .app-container--desktop-ad-upload .ad-upload-review-photos {
    padding: 14px 16px !important;
    border: 1px solid #e5dfd7 !important;
    border-radius: 14px !important;
    background: #faf8f5 !important;
    box-shadow: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-review-photo-strip > div {
    position: relative;
    width: 72px !important;
    height: 72px !important;
    border: 1px solid #ddd7cf;
    border-radius: 10px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-review-photo-strip > div.is-cover {
    border: 2px solid #ff5a00;
  }

  .app-container--desktop-ad-upload .ad-upload-review-photo-strip > div > span {
    position: absolute;
    right: 4px;
    bottom: 4px;
    left: 4px;
    padding: 3px 4px;
    color: #000;
    border-radius: 5px;
    background: rgba(0, 0, 0, .72);
    font-size: 8px;
    font-weight: 750;
    text-align: center;
  }

  .app-container--desktop-ad-upload .ad-upload-review-card {
    padding: 18px !important;
    color: #171717;
    border: 1px solid #e5dfd7 !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(65, 45, 30, .05) !important;
  }

  .app-container--desktop-ad-upload .ad-upload-review-card__title,
  .app-container--desktop-ad-upload .ad-upload-review-details > div:first-child {
    margin-bottom: 12px !important;
    padding-bottom: 10px !important;
    color: #171717 !important;
    border-bottom: 1px solid #e8e2da !important;
    font-size: 15px;
    font-weight: 750;
  }

  .app-container--desktop-ad-upload .ad-upload-review-card li {
    gap: 18px;
    color: #625d57;
  }

  .app-container--desktop-ad-upload .ad-upload-review-card li > span:last-child,
  .app-container--desktop-ad-upload .ad-upload-review-card li > strong {
    color: #171717 !important;
    text-align: right;
  }

  .app-container--desktop-ad-upload .ad-upload-review-price {
    display: flex;
    margin-bottom: 16px;
    padding: 14px;
    align-items: baseline;
    gap: 7px;
    border-radius: 12px;
    background: #fff3eb;
  }

  .app-container--desktop-ad-upload .ad-upload-review-price strong {
    color: #e95100;
    font-size: 22px;
  }

  .app-container--desktop-ad-upload .ad-upload-review-price span {
    color: #77716b;
    font-size: 11px;
  }

  .app-container--desktop-ad-upload .ad-upload-review-contact ul {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .app-container--desktop-ad-upload .ad-upload-review-contact li {
    display: flex;
    justify-content: space-between;
  }

  .app-container--desktop-ad-upload .ad-upload-review-description {
    grid-column: 1 / -1;
  }

  .app-container--desktop-ad-upload .ad-upload-review-description p {
    color: #625d57 !important;
  }
}

.ad-upload-review-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ad-upload-review-description p + .ad-upload-review-tags {
  margin-top: 12px;
}

.ad-upload-review-tags .tag-chip {
  cursor: default;
}

/* Tag/Chip row */
.tag-scroll-row {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 4px 16px 12px 16px;
  white-space: nowrap;
}

.tag-scroll-row::-webkit-scrollbar {
  display: none;
}

.tag-chip {
  background: var(--dark-grey);
  border: 1px solid var(--glass-border);
  border-radius: 20px;
  padding: 6px 14px;
  color: var(--light-grey);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.tag-chip:hover {
  background: rgba(255, 255, 255, 0.1);
  color: var(--white);
}

.tag-chip.active {
  background: var(--orange-gradient);
  border-color: transparent;
  color: var(--white);
}

/* Category buttons */
.category-segmented-control {
  display: flex;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 20px;
  padding: 2px;
  width: calc(100% - 32px);
  margin: 0 auto;
}

.category-tab {
  flex: 1;
  background: transparent;
  border: none;
  padding: 8px;
  color: var(--medium-grey);
  font-size: 14px;
  font-weight: 500;
  border-radius: 18px;
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: center;
}

/* Swipe kártyán (sötét háttér + overlay) az inaktív tabok fehérek */
.swipe-card .category-tab {
  color: #ffffff;
}

.category-tab.active {
  background: var(--orange-gradient);
  color: var(--white);
  box-shadow: 0 2px 8px rgba(255, 90, 0, 0.2);
}

/* --- Swipe Interface Specific Styles --- */
.swipe-deck-container {
  flex: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.swipe-card-wrapper {
  flex: 1;
  position: relative;
  margin: 0;
  z-index: 5;
  overflow: hidden;
  min-height: 0;
}

.swipe-card {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 0;
  background: #111;
  overflow: hidden;
  box-shadow: none;
  cursor: grab;
  transform-origin: 50% 100%;
  touch-action: none;
  display: flex;
  flex-direction: column;
}

.swipe-card:active {
  cursor: grabbing;
}

.swipe-card-img-container {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.swipe-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}

.swipe-card-gradient {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(to top, rgba(13, 13, 13, 0.95) 0%, rgba(13, 13, 13, 0.4) 60%, transparent 100%);
  pointer-events: none;
}

/* Carousel Indicators */
.carousel-dots {
  position: absolute;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 6px;
  z-index: 10;
}

.carousel-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--medium-grey);
  transition: all 0.2s ease;
}

.carousel-dot.active {
  background-color: var(--primary-orange);
  transform: scale(1.2);
}

/* Detail indicator button */
.btn-detail-arrow {
  position: absolute;
  bottom: 12px;
  right: 16px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(5px);
  border: 1px solid rgba(255,255,255,0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--white);
  cursor: pointer;
  z-index: 12;
  transition: all 0.2s ease;
}

.btn-detail-arrow:hover {
  background: rgba(255, 255, 255, 0.25);
  transform: scale(1.05);
}

/* Card details overlay */
.card-info-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 16px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  pointer-events: none;
  z-index: 8;
}

.card-title-text {
  max-width: 100%;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--white);
  text-shadow: 0 2px 8px rgba(0,0,0,0.8);
}

.card-price-text {
  font-size: 24px;
  font-weight: 800;
  color: var(--white);
  text-shadow: 0 2px 8px rgba(0,0,0,0.8);
  white-space: nowrap;
}

/* Action button row below card */
.swipe-action-row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  padding: 14px 16px;
}

.swipe-action-panel {
  transition: background 0.2s ease, border-color 0.2s ease;
  background: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.action-btn-circle {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  font-size: 11px;
  transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.2);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.action-btn-circle:hover {
  transform: scale(1.08);
}

.action-btn-circle:active {
  transform: scale(0.95);
}

.action-btn-circle.white {
  background: var(--white);
}

.action-btn-circle.dark {
  background: var(--dark-grey);
  border: 1px solid var(--glass-border);
}

.action-btn-circle.blue {
  color: var(--blue-accent);
}

.action-btn-circle.green {
  color: var(--green-accent);
}

.action-btn-circle.red {
  color: var(--red-accent);
}

/* Swipe status stamps */
.stamp {
  position: absolute;
  top: 30px;
  border: 4px solid;
  border-radius: 10px;
  padding: 4px 12px;
  font-size: 32px;
  font-weight: 800;
  text-transform: uppercase;
  z-index: 10;
  transform: rotate(-10deg);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease;
}

.stamp-like {
  right: 30px;
  color: var(--green-accent);
  border-color: var(--green-accent);
}

.stamp-nope {
  left: 30px;
  color: var(--red-accent);
  border-color: var(--red-accent);
}

/* Detailed view Drawer */
.detail-drawer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--black-bg);
  z-index: 200;
  transform: translateY(100%);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
}

.detail-drawer.open {
  transform: translateY(0);
}

.detail-drawer-header {
  height: 56px;
  display: flex;
  align-items: center;
  padding: 0 16px;
  border-bottom: 1px solid var(--glass-border);
}

.detail-drawer-title {
  flex: 1;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  margin-right: 24px;
}

.detail-drawer-content {
  flex: 1;
  overflow-y: auto;
  padding: 20px 16px;
}

/* Spec Grid */
.spec-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin: 16px 0;
}

.spec-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  padding: 12px;
  text-align: center;
}

.spec-card-label {
  font-size: 12px;
  color: var(--medium-grey);
  margin-bottom: 4px;
}

.spec-card-value {
  font-size: 15px;
  font-weight: 600;
  color: var(--white);
}

/* --- Interactive Dashboard (Admin panel) --- */
.dashboard-title {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 6px;
  background: linear-gradient(135deg, #FF7A00 0%, #FF3D00 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.dashboard-subtitle {
  font-size: 13px;
  color: var(--medium-grey);
  margin-bottom: 24px;
}

.dashboard-section {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid var(--glass-border);
  border-radius: 16px;
  padding: 16px;
  margin-bottom: 20px;
}

.dashboard-section-title {
  font-size: 15px;
  font-weight: 600;
  margin-bottom: 12px;
  color: var(--light-grey);
  display: flex;
  align-items: center;
  gap: 6px;
}

/* Event Logs list */
.log-list {
  font-family: inherit;
  font-size: 11px;
  height: 180px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-right: 4px;
}

.log-item {
  color: var(--light-grey);
  border-left: 2px solid var(--medium-grey);
  padding-left: 8px;
}

.log-item.swipe_right {
  border-color: var(--green-accent);
  color: #a7f3d0;
}

.log-item.swipe_left {
  border-color: var(--red-accent);
  color: #fca5a5;
}

.log-item.match {
  border-color: #f43f5e;
  color: #fecdd3;
  animation: pulse 1s infinite alternate;
}

.log-item.ad_created {
  border-color: var(--primary-orange);
  color: #ffedd5;
}

/* DB Table editor */
.db-table-wrapper {
  overflow-x: auto;
  max-height: 250px;
}

.db-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
  text-align: left;
}

.db-table th {
  padding: 8px;
  border-bottom: 1px solid var(--glass-border);
  color: var(--medium-grey);
  font-weight: 500;
}

.db-table td {
  padding: 8px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.03);
  color: var(--light-grey);
}

.db-badge {
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
}

.db-badge.felni { background: rgba(59, 130, 246, 0.15); color: #60a5fa; }
.db-badge.gumi { background: rgba(16, 185, 129, 0.15); color: #34d399; }
.db-badge.kerékszett { background: rgba(139, 92, 246, 0.15); color: #a78bfa; }

/* Jump Link buttons */
.jump-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}

.btn-jump {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  padding: 8px;
  color: var(--light-grey);
  font-size: 11px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}

.btn-jump:hover {
  background: var(--primary-orange);
  color: var(--white);
  border-color: transparent;
}

/* Design Reference Compare */
.design-ref-container {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.design-ref-select {
  width: 100%;
  padding: 8px;
  background: #151515;
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  color: var(--white);
  font-family: inherit;
  font-size: 13px;
  outline: none;
}

.design-img-frame {
  width: 100%;
  height: 250px;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid var(--glass-border);
  background: #000;
  display: flex;
  align-items: center;
  justify-content: center;
}

.design-img-frame img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

/* ═══════════════════════════════════════
   DESKTOP-OUTER: centering wrapper
   Mobilon: display:contents → átlátszó, mintha nem lenne ott
   Asztali nézetben (>768px): flex, center → egységes, fehér külső vászon
   ═══════════════════════════════════════ */
.desktop-outer {
  /* Mobilon: átlátszó wrapper — az app-container közvetlenül a #root gyereke lesz layoutban */
  display: contents;
}

@media (min-width: 769px) {
  .desktop-outer {
    display: flex;
    justify-content: center;
    align-items: stretch;   /* ← stretch: app-container tölti a teljes 100vh-t */
    width: 100%;
    height: 100vh;
    background: #000;
    overflow: hidden;
  }

  .app-container {
    max-width: 1200px;
    flex: 1;
    flex-direction: column;  /* ← felső → alsó layout */
    height: 100vh;
    overflow: hidden;
    display: flex;
  }

  .desktop-outer:has(.app-container--desktop-account) {
    background: #000;
  }

  .app-container--desktop-account {
    max-width: none !important;
    background: #fff !important;
  }
}

/* --- Responsive: Tablet (hides sidebar, keeps mockup frame) --- */
@media (max-width: 1024px) {
  .dashboard-sidebar {
    display: none;
  }
  .app-container {
    justify-content: center;
    background-image: none;
    background-color: #000;
  }
  .showcase-area {
    padding: 0;
  }
  .phone-mockup {
    transform: scale(1) !important;
    border-radius: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    box-shadow: none;
    background: transparent;
  }
  .phone-screen {
    width: 100%;
    height: 100%;
    border-radius: 0;
    border: none;
  }
  .dynamic-island, .status-bar, .home-indicator, .phone-btn {
    display: none;
  }
}

/* --- Responsive: VALÓDI MOBILTELEFON (max-width: 768px) --- */
/* Teljes képernyős natív app élmény, semmi mockup keret */
@media (max-width: 768px) {
  html, body, #root {
    height: 100%;
    overflow: hidden;
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
  }

  .app-container {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  .dashboard-sidebar {
    display: none !important;
  }

  .showcase-area {
    flex: 1;
    width: 100%;
    height: 100%;
    padding: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .phone-mockup {
    flex: 1;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .phone-screen {
    flex: 1;
    width: 100% !important;
    height: 100% !important;
    border-radius: 0 !important;
    border: none !important;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
  }

  .dynamic-island,
  .status-bar,
  .home-indicator,
  .phone-btn {
    display: none !important;
  }

  .app-screen-content {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 74px;
    position: relative;
    display: flex;
    flex-direction: column;
    /* Fontos: ne görgessen a háttér */
    overscroll-behavior: contain;
  }

  /* Bottom nav: flex sticky footer mobilon */
  .bottom-nav {
    flex-shrink: 0 !important;
    width: 100% !important;
    /* Safe area az iPhone home indicator felett */
    padding-bottom: env(safe-area-inset-bottom, 0px) !important;
    height: auto !important;
    min-height: 64px !important;
  }

  /* Nav item méret mobilon */
  .nav-item {
    min-height: 56px;
  }

  /* Plus gomb méret mobilon */
  .nav-item-plus {
    width: 52px !important;
    height: 52px !important;
  }

  .swipe-action-panel {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
  }
}

/* ═══════════════════════════════════════
   LIGHT MODE COMPONENT OVERRIDES
   ═══════════════════════════════════════ */

/* Smooth transition for all elements */
[data-theme="light"] *,
[data-theme="light"] *::before,
[data-theme="light"] *::after {
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

/* Phone screen */
[data-theme="light"] .phone-screen {
  background-color: var(--bg-primary);
}

/* App container */
[data-theme="light"] .app-container {
  background-color: #F0EEE9;
  background-image:
    radial-gradient(at 10% 20%, rgba(255, 90, 0, 0.06) 0px, transparent 50%),
    radial-gradient(at 90% 80%, rgba(47, 128, 237, 0.04) 0px, transparent 50%);
}

/* Bottom nav */
[data-theme="light"] .bottom-nav {
  background: rgba(245, 244, 242, 0.97) !important;
  border-top: 1px solid rgba(0,0,0,0.10) !important;
}

[data-theme="light"] .nav-item {
  color: #999;
}

[data-theme="light"] .nav-item.active {
  color: var(--primary-orange);
}

/* Status bar */
[data-theme="light"] .status-bar {
  color: #111;
}

/* Form inputs */
[data-theme="light"] .form-input {
  background: rgba(0, 0, 0, 0.04) !important;
  border: 1px solid rgba(0,0,0,0.12) !important;
  color: #111 !important;
}

[data-theme="light"] .form-input::placeholder {
  color: #aaa !important;
}

[data-theme="light"] .form-input:focus {
  background: #fff !important;
  border-color: var(--primary-orange) !important;
  box-shadow: 0 0 0 3px rgba(255, 90, 0, 0.12) !important;
}

[data-theme="light"] .form-label {
  color: #333;
}

/* Tag chips */
[data-theme="light"] .tag-chip {
  background: rgba(0,0,0,0.06);
  border: 1px solid rgba(0,0,0,0.10);
  color: #444;
}

[data-theme="light"] .tag-chip:hover {
  background: rgba(0,0,0,0.10);
  color: #111;
}

[data-theme="light"] .tag-chip.active {
  background: var(--orange-gradient);
  border-color: transparent;
  color: #fff;
}

/* Swipe card */
[data-theme="light"] .swipe-card {
  background: #FFFFFF;
  box-shadow: 0 4px 24px rgba(0,0,0,0.12);
}

/* Category segmented control */
[data-theme="light"] .category-btn {
  color: #666;
}

[data-theme="light"] .category-btn.active {
  background: var(--orange-gradient);
  color: #fff;
}

/* Secondary button */
[data-theme="light"] .btn-secondary {
  background: rgba(0,0,0,0.05);
  border: 1px solid rgba(0,0,0,0.12);
  color: #222;
}

[data-theme="light"] .btn-secondary:hover {
  background: rgba(0,0,0,0.09);
}

/* select dropdowns */
[data-theme="light"] select.form-input {
  background: #fff !important;
  color: #111 !important;
}

[data-theme="light"] option {
  background: #fff;
  color: #111;
}

/* Avatar spinner animáció */
@keyframes spin {
  to { transform: rotate(360deg); }
}

/* ─── Asztali nézetben: csak home-indicator és padding rejtve ─── */
@media (min-width: 769px) {
  .app-screen-content {
    padding-bottom: 0 !important;
  }
  .home-indicator {
    display: none !important;
  }
}

/* ─── Tab panel fade-in: elnyomja a képernyőváltáskori flash-t ─── */
@keyframes felniTabFadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}
.felni-tab-panel {
  animation: felniTabFadeIn 0.06s ease-out forwards;
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}

@media (min-width: 1024px) {
  body {
    background: #ffffff;
  }

  /*
   * Közös desktop vászon: a böngésző 90%-os nagyításának arányát adja
   * vissza szabványos, reszponzív konténerszélességgel. A fehér külső
   * vászon nem olvad bele a fekete hero és keresőzónába; a mobil
   * app-shellhez ez a szabály nem nyúl.
   */
  .desktop-outer,
  .desktop-outer:has(.app-container--desktop-account) {
    background: #ffffff;
  }

  .desktop-outer > .app-container {
    flex: 0 1 auto;
    width: min(90vw, 1296px) !important;
    max-width: min(90vw, 1296px) !important;
  }

  .desktop-outer > .app-container.app-container--desktop-account {
    flex: 0 1 966px;
    width: min(calc(100% - 64px), 966px) !important;
    max-width: 966px !important;
    background: #ffffff !important;
  }

  .desktop-account-topbar__brand {
    width: 176px;
    height: 32px;
    padding: 0;
    border: 0;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    cursor: pointer;
  }

  .desktop-account-topbar__brand img {
    display: block;
    width: 158px;
    max-width: 100%;
    height: 32px;
    object-fit: contain;
    object-position: left center;
  }

  .desktop-account-topbar__brand:focus-visible {
    outline: 2px solid #ff5a00;
    outline-offset: 3px;
    border-radius: 6px;
  }

  .desktop-subview-frame {
    left: 50% !important;
    right: auto !important;
    width: min(90vw, 1296px) !important;
    transform: translateX(-50%);
  }

  .desktop-subview-frame--auth {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    transform: none;
    background: var(--color-marketplace-canvas) !important;
  }

  .desktop-outer > .app-container.app-container--desktop-marketplace {
    flex: 1 1 auto;
    width: 100vw !important;
    max-width: none !important;
    background: #ffffff !important;
    background-image: none !important;
  }

  .desktop-marketplace {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    background: var(--color-marketplace-canvas);
    color: #111111;
  }

  .desktop-marketplace--listing {
    background: var(--color-marketplace-canvas);
  }

  .desktop-marketplace__scroll {
    min-height: 0;
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: thin;
    background: var(--color-marketplace-canvas);
    overscroll-behavior-y: none;
    overscroll-behavior-x: none;
  }

  .desktop-container {
    width: min(calc(100% - 64px), var(--desktop-marketplace-content-width));
    margin: 0 auto;
  }

  .desktop-marketplace--home .desktop-container {
    width: min(calc(100% - 64px), var(--desktop-home-content-width));
  }

  .desktop-marketplace--home .desktop-hero__ai-search-container {
    width: min(calc(100vw - 64px), var(--desktop-home-content-width));
  }

  .desktop-shell {
    position: sticky;
    top: 0;
    z-index: 60;
    background: #ffffff;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 0;
    transition:
      transform 180ms cubic-bezier(0.2, 0.8, 0.2, 1),
      margin-bottom 180ms cubic-bezier(0.2, 0.8, 0.2, 1);
    will-change: transform, margin-bottom;
  }

  .desktop-shell--scroll-hidden {
    margin-bottom: -72px;
    transform: translateY(-100%);
    pointer-events: none;
  }

  .desktop-shell__main {
    height: 72px;
    min-height: 72px;
    border-bottom: 1px solid #ece8df;
    background: #ffffff;
    box-shadow: none;
  }

  .desktop-shell__main-inner {
    height: 72px;
    min-height: 72px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 28px;
    padding-inline: 0;
    transform: none;
  }

  .desktop-shell--home .desktop-shell__main,
  .desktop-shell--home .desktop-shell__main-inner {
    height: 72px;
    min-height: 72px;
  }

  .desktop-shell--home .desktop-shell__main-inner {
    transform: none;
  }

  @media (prefers-reduced-motion: reduce) {
    .desktop-shell {
      transition: none;
    }
  }

  .desktop-logo {
    width: 218px;
    height: 43px;
    border: 0;
    background: transparent;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    padding: 0;
    overflow: visible;
  }

  .desktop-logo--header {
    width: 207px;
    height: 47px;
    overflow: hidden;
    transform: none;
  }

  .desktop-logo__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: left center;
  }

  .desktop-logo--header .desktop-logo__image {
    width: 100%;
    height: auto;
    flex: 0 0 auto;
    object-fit: initial;
    transform: none;
  }

  .desktop-logo--header-emphasized {
    overflow: visible;
  }

  .desktop-logo--header-emphasized .desktop-logo__image {
    transform: scale(1.15);
    transform-origin: left center;
  }

  .desktop-logo__image--footer {
    width: 253.92px;
  }

  .desktop-header__nav,
  .desktop-header__primary-nav,
  .desktop-header__category-tabs,
  .desktop-header__secondary-nav,
  .desktop-header__actions {
    display: flex;
    align-items: center;
  }

  .desktop-header__nav {
    justify-content: flex-start;
    gap: 18px;
    min-width: 0;
    overflow: hidden;
  }

  .desktop-header__primary-nav {
    justify-content: center;
    justify-self: center;
    gap: 28px;
    min-width: 0;
  }

  .desktop-shell--home .desktop-header__primary-nav {
    transform: none;
  }

  .desktop-shell--home .desktop-header__actions {
    transform: translateX(-10px);
  }

  .desktop-header__primary-nav button {
    min-height: 40px;
    border: 0;
    background: transparent;
    color: #282828;
    font: inherit;
    font-size: 15px;
    font-weight: 750;
    cursor: pointer;
    white-space: nowrap;
    transition: color 0.18s ease;
  }

  .desktop-header__primary-nav button:hover,
  .desktop-header__primary-nav button:focus-visible {
    color: #ff5a1f;
  }

  .desktop-header__primary-nav button:focus-visible {
    outline: 2px solid #2563eb;
    outline-offset: 3px;
    border-radius: 8px;
  }

  .desktop-header__category-tabs,
  .desktop-header__secondary-nav {
    gap: 14px;
  }

  .desktop-header__nav button,
  .desktop-header__nav-button,
  .desktop-header__cta {
    border: 0;
    background: transparent;
    padding: 0;
    color: #111111;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    transition: color 0.18s ease;
  }

  .desktop-header__category-tabs button.active,
  .desktop-header__nav button:hover,
  .desktop-header__nav-button:hover,
  .desktop-header__nav-button.is-active {
    color: #ff5a1f;
  }

  .desktop-header__actions {
    gap: 14px;
    justify-content: flex-end;
    justify-self: end;
    box-sizing: border-box;
    padding-right: 0;
  }

  .desktop-header__nav-button {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    gap: 3.5px;
    font-size: 14px;
  }

  .desktop-header__account-button {
    gap: 5px;
  }

  .desktop-header__account-button.is-authenticated {
    color: #111111;
  }

  .desktop-header__avatar {
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    overflow: hidden;
    border-radius: 50%;
    border: 2px solid rgba(255, 90, 31, 0.72);
    background: linear-gradient(135deg, #ff5a1f, #ff8a3d);
    box-shadow: 0 0 0 3px rgba(255, 90, 31, 0.08);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
  }

  .desktop-header__account-button:hover .desktop-header__avatar {
    border-color: #ff7a45;
    box-shadow: 0 0 0 4px rgba(255, 90, 31, 0.14);
  }

  .desktop-header__avatar img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .desktop-header__avatar > span {
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.02em;
    line-height: 1;
  }

  .desktop-header__nav-button em {
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: #ff5a1f;
    color: #ffffff;
    font-size: 11px;
    font-style: normal;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .desktop-header__cta,
  .desktop-button--primary,
  .desktop-search-panel__submit,
  .desktop-newsletter__inner button,
  .desktop-plan-card button,
  .desktop-load-more,
  .desktop-empty-state button {
    border: 0;
    background: linear-gradient(135deg, #ff6c24, #ff4f12);
    color: #ffffff;
    border-radius: 14px;
    min-height: 40px;
    padding: 0 20px;
    font-size: 14px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
    box-shadow: 0 16px 34px rgba(255, 90, 31, 0.20);
  }

  .desktop-header__cta {
    width: calc((min(1280px, 100vw - 64px) - 130px) / 6);
    min-height: 47px;
    flex: 0 0 auto;
    font-size: 15px;
  }

  .desktop-button {
    border-radius: 14px;
    min-height: 48px;
    padding: 0 24px;
    border: 1px solid transparent;
    font-size: 15px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    cursor: pointer;
  }

  .desktop-button--secondary {
    background: transparent;
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.16);
  }

  .desktop-button--secondary-dark {
    background: transparent;
    border-color: rgba(255, 255, 255, 0.28);
    color: #ffffff;
  }

  .desktop-hero {
    position: relative;
    width: min(calc(100% - 32px), 1039.5px);
    min-height: 0;
    aspect-ratio: 2079 / 756;
    flex: 0 0 auto;
    margin: 0 auto;
    padding: 0;
    background: #050505 url('/felniexpress-home-hero-black-car-20260805.png') center center / cover no-repeat;
    color: #ffffff;
    overflow: visible;
  }

  .desktop-hero__inner {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: block;
    pointer-events: none;
  }

  .desktop-hero__copy {
    position: relative;
    z-index: 2;
    width: 51%;
    padding-top: 42px;
  }

  .desktop-hero__copy h1 {
    max-width: 506px;
    margin: 0;
    display: flex;
    flex-direction: column;
    row-gap: 3.3px;
    font-size: clamp(29.7px, 2.695vw, 39.6px);
    line-height: 1.01;
    letter-spacing: -0.035em;
    font-weight: 700;
  }

  .desktop-hero__copy h1 span {
    display: block;
    color: #ffffff;
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    text-transform: uppercase;
    white-space: nowrap;
  }

  .desktop-hero__copy h1 .desktop-hero__headline-accent {
    color: #ff5a1f;
  }

  .desktop-hero__copy p {
    max-width: 520px;
    margin: 36px 0 0;
    font-size: 14px;
    line-height: 1.45;
    color: rgba(255, 255, 255, 0.76);
  }

  .desktop-hero__visual {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: stretch;
    min-height: 340px;
  }

  .desktop-hero__visual::before {
    content: '';
    position: absolute;
    inset: -6% -8% -8% 10%;
    background: transparent;
    pointer-events: none;
  }

  .desktop-hero__visual img {
    position: relative;
    z-index: 1;
    width: auto;
    height: 340px;
    object-fit: contain;
    object-position: right center;
    border-radius: 0;
    box-shadow: none;
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000000 16%, #000000 100%);
    mask-image: linear-gradient(to right, transparent 0%, #000000 16%, #000000 100%);
  }

  .desktop-search-panel-wrap {
    position: relative;
    z-index: 4;
    margin-top: 80.367px;
    padding-bottom: 0;
    background: var(--color-marketplace-canvas);
  }

  .desktop-search-panel,
  .desktop-filter-panel,
  .desktop-results,
  .desktop-empty-state,
  .desktop-category-card,
  .desktop-benefit-card,
  .desktop-how-card,
  .desktop-promo-card {
    background: #ffffff;
    border: 1px solid #ece8df;
    box-shadow: none;
  }

  .desktop-search-panel {
    background: #ffffff;
    border-color: #e8e4dc;
    border-radius: 18px;
    padding: 20px 24px 22px;
    box-shadow: none;
  }

  .desktop-search-panel__tabs,
  .desktop-search-panel__chips,
  .desktop-search-panel__footer {
    display: flex;
    align-items: center;
  }

  .desktop-search-panel__tabs {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    column-gap: 14px;
    margin-bottom: 18px;
    transform: none;
  }

  .desktop-search-panel__category-tabs,
  .desktop-search-panel__condition-toggle {
    display: flex;
    align-items: center;
  }

  .desktop-search-panel__category-tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    overflow: hidden;
    border: 1px solid #cfd6e0;
    border-radius: 10px;
    background: #ffffff;
  }

  .desktop-search-panel__tabs button,
  .desktop-search-panel__chips button,
  .desktop-link-button,
  .desktop-save-filter-button,
  .desktop-open-filter-button,
  .desktop-section__link {
    border: 1px solid #ebe7de;
    background: #ffffff;
    border-radius: 12px;
    min-height: 40px;
    padding: 0 16px;
    color: #111111;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
  }

  .desktop-search-panel__category-tabs button,
  .desktop-search-panel__condition-toggle button {
    position: relative;
    min-height: 44px;
    padding: 0 18px;
    border: 0;
    border-radius: 0;
    background: #ffffff;
    color: #171717;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: none;
    outline: none;
    justify-content: center;
  }

  .desktop-search-panel__category-tabs {
    grid-column: 1 / span 3;
    width: 100%;
  }

  .desktop-search-panel__category-tabs button + button,
  .desktop-search-panel__condition-toggle button + button {
    border-left: 1px solid #cfd6e0;
  }

  .desktop-search-panel__category-tabs button.active {
    background: #2563eb;
    color: #ffffff;
    box-shadow: none;
  }

  .desktop-search-panel__condition-toggle button[data-condition='hasznalt'].active {
    background: #16a34a;
    color: #ffffff;
    box-shadow: none;
  }

  .desktop-search-panel__condition-toggle button[data-condition='ujszeru'].active {
    background: #dc2626;
    color: #ffffff;
    box-shadow: none;
  }

  .desktop-search-panel__category-tabs button:not(.active):hover {
    background: #eff6ff;
    color: #1d4ed8;
  }

  .desktop-search-panel__condition-toggle button[data-condition='hasznalt']:not(.active):hover {
    background: #f0fdf4;
    color: #15803d;
  }

  .desktop-search-panel__condition-toggle button[data-condition='ujszeru']:not(.active):hover {
    background: #fef2f2;
    color: #b91c1c;
  }

  .desktop-search-panel__category-tabs button:focus-visible {
    color: #1d4ed8;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.24);
  }

  .desktop-search-panel__condition-toggle button[data-condition='hasznalt']:focus-visible {
    color: #15803d;
    box-shadow: 0 0 0 3px rgba(22, 163, 74, 0.24);
  }

  .desktop-search-panel__condition-toggle button[data-condition='ujszeru']:focus-visible {
    color: #b91c1c;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.24);
  }

  .desktop-search-panel__category-tabs button.active:focus-visible,
  .desktop-search-panel__condition-toggle button.active:focus-visible {
    color: #ffffff;
  }

  .desktop-search-panel__condition-toggle {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-column: 4 / span 2;
    width: 100%;
    gap: 0;
    margin-left: 0;
    overflow: hidden;
    border: 1px solid #cfd6e0;
    border-radius: 10px;
    background: #ffffff;
  }

  .desktop-search-panel__condition-toggle button {
    font-size: 16px;
  }

  .desktop-open-filter-button {
    background: #fff2eb;
    border-color: rgba(255, 90, 31, 0.24);
    color: #ff5a1f;
  }

  .desktop-search-panel__fields {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
    transform: none;
  }

  .desktop-search-panel__field {
    position: relative;
    min-width: 0;
    display: grid;
    gap: 8px;
  }

  .desktop-search-panel__field > span {
    color: #171717;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
  }

  .desktop-search-panel__field::after {
    content: '';
    position: absolute;
    right: 44px;
    bottom: 0;
    width: 1px;
    height: 48px;
    background: #cfd6e0;
    pointer-events: none;
  }

  .desktop-search-panel__fields select,
  .desktop-search-panel__fields input,
  .desktop-filter-group select,
  .desktop-filter-group input,
  .desktop-newsletter__inner input,
  .desktop-sort-select select {
    width: 100%;
    min-height: 48px;
    border-radius: 14px;
    border: 1px solid #ebe7de;
    background: #ffffff;
    color: #111111;
    padding: 0 14px;
    font: inherit;
    outline: none;
  }

  .desktop-search-panel__fields select,
  .desktop-search-panel__fields input {
    border-color: #cfd6e0;
    background: #ffffff;
    color: #687386;
    border-radius: 9px;
    box-shadow: none;
  }

  .desktop-search-panel__fields select,
  .desktop-filter-panel .desktop-filter-group select {
    appearance: none;
    padding-right: 54px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23171717' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
  }

  .desktop-search-panel__fields select,
  .desktop-search-panel__fields input {
    font-size: 15px;
  }

  .desktop-search-panel__submit {
    width: 100%;
    min-width: 0;
    min-height: 48px;
    align-self: end;
    font: inherit;
    font-size: 15px;
    font-weight: 700;
  }

  .desktop-search-panel__footer {
    justify-content: flex-end;
    gap: 16px;
    margin-top: 14px;
  }

  .desktop-search-panel__chips {
    gap: 10px;
    flex-wrap: wrap;
  }

  .desktop-search-panel__chips button {
    min-height: 32px;
    padding: 0 14px;
    border-radius: 999px;
    border-color: rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.06);
    color: rgba(255, 255, 255, 0.84);
  }

  .desktop-search-panel__advanced {
    border: 0;
    background: transparent;
    color: #4b4a46;
    font-size: 14px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    white-space: nowrap;
  }

  .desktop-ai-search {
    padding: 4px 0 0;
  }

  .desktop-hero__ai-search {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 134px;
    min-height: 134px;
    max-height: 134px;
    box-sizing: border-box;
    flex: 0 0 134px;
    margin: 0 auto;
    /* Match the traditional panel's 24px inner content edge. */
    padding: 14px 24px 12px;
    border: 1px solid #e8e4dc;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: none;
  }

  .desktop-ai-search__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #2563eb;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.04em;
  }

  .desktop-ai-search__label {
    margin: 0 0 8px;
    color: #171717;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
  }

  .desktop-ai-search__label span {
    color: #2563eb;
  }

  .desktop-hero__ai-search-container {
    position: absolute;
    inset: auto auto 0 50%;
    z-index: 4;
    width: min(calc(100vw - 64px), var(--desktop-marketplace-content-width));
    margin: 0;
    transform: translate(-50%, 50%);
  }

  .desktop-ai-search__description,
  .desktop-ai-search__notice {
    margin: 0;
    color: #6b6963;
    font-size: 14px;
    line-height: 1.45;
  }

  .desktop-ai-search__entry {
    display: block;
    width: 100%;
    margin: 0;
  }

  .desktop-ai-search__input-wrap {
    position: relative;
  }

  .desktop-ai-search__input-wrap input {
    width: 100%;
    min-height: 46px;
    padding: 0 104px 0 16px;
    border: 1px solid #d8d5cf;
    border-radius: 14px;
    background: #ffffff;
    color: #171717;
    font: inherit;
    font-size: 15px;
    outline: none;
    transition: border-color 160ms ease, box-shadow 160ms ease;
  }

  .desktop-ai-search__input-wrap input:focus {
    border-color: #8b919b;
    box-shadow: 0 0 0 2px rgba(31, 41, 55, 0.13), 0 7px 18px rgba(17, 24, 39, 0.1);
  }

  .desktop-ai-search__input-wrap input::placeholder {
    color: #5b616b;
    opacity: 1;
  }

  .desktop-ai-search__animated-example {
    position: absolute;
    top: 50%;
    right: 104px;
    left: 16px;
    z-index: 2;
    overflow: hidden;
    color: #5b616b;
    font-size: 15px;
    line-height: 1.2;
    white-space: nowrap;
    text-overflow: clip;
    transform: translateY(-50%);
    pointer-events: none;
  }

  .desktop-ai-search__animated-caret {
    display: inline-block;
    width: 2px;
    height: 1.05em;
    margin-left: 2px;
    background: #ff5a1f;
    vertical-align: -0.12em;
    animation: desktop-ai-example-caret 760ms steps(1, end) infinite;
  }

  @keyframes desktop-ai-example-caret {
    50% { opacity: 0; }
  }

  .desktop-ai-search__mic {
    position: absolute;
    top: 50%;
    right: 51px;
    display: inline-flex;
    width: 34px;
    height: 34px;
    padding: 0;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #4b5563;
    transform: translateY(-50%);
    cursor: pointer;
    transition:
      color 160ms ease,
      background-color 160ms ease,
      box-shadow 160ms ease;
  }

  .desktop-ai-search__mic:hover {
    background: #f1f3f6;
    color: #171717;
  }

  .desktop-ai-search__mic:focus-visible {
    outline: 2px solid #ff5a1f;
    outline-offset: 2px;
  }

  .desktop-ai-search__mic.is-listening {
    background: #e5252a;
    color: #ffffff;
    box-shadow: 0 0 0 5px rgba(229, 37, 42, 0.14);
    animation: desktop-ai-microphone-pulse 1.4s ease-in-out infinite;
  }

  .desktop-ai-search__voice-status {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
  }

  .desktop-ai-search__suggestions {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    left: 0;
    z-index: 30;
    max-height: 294px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    border: 1px solid #d9e1ee;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 14px 32px rgba(17, 24, 39, 0.16);
  }

  .desktop-ai-search__suggestions button {
    width: 100%;
    min-height: 42px;
    padding: 0 14px;
    border: 0;
    border-bottom: 1px solid #edf0f5;
    background: #ffffff;
    color: #171717;
    font: inherit;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    text-align: left;
    cursor: pointer;
  }

  .desktop-ai-search__suggestions button:last-child {
    border-bottom: 0;
  }

  .desktop-ai-search__suggestions button:hover,
  .desktop-ai-search__suggestions button.is-active {
    background: #eef4ff;
    color: #1d4ed8;
  }

  .desktop-ai-search__suggestions button span {
    font-size: 14px;
    font-weight: 700;
  }

  .desktop-ai-search__suggestions button small {
    color: #6b7280;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    white-space: nowrap;
  }

  @keyframes desktop-ai-microphone-pulse {
    0%,
    100% {
      box-shadow: 0 0 0 5px rgba(229, 37, 42, 0.12);
    }
    50% {
      box-shadow: 0 0 0 8px rgba(229, 37, 42, 0.2);
    }
  }

  .desktop-ai-search__submit {
    position: absolute;
    top: 50%;
    right: 5px;
    z-index: 3;
    display: inline-flex;
    width: 38px;
    height: 38px;
    align-items: center;
    justify-content: center;
    min-height: 39px;
    padding: 0;
    border: 0;
    border-radius: 11px;
    background: linear-gradient(135deg, #ff6c24, #ff4f12);
    color: #ffffff;
    box-shadow: 0 10px 20px rgba(255, 90, 31, 0.24);
    transform: translateY(-50%);
    cursor: pointer;
  }

  .desktop-ai-search__submit:hover {
    background: linear-gradient(135deg, #ff7a32, #f0460b);
  }

  .desktop-ai-search__submit:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 3px rgba(255, 90, 31, 0.28), 0 10px 20px rgba(255, 90, 31, 0.24);
  }

  .desktop-ai-search__submit:disabled {
    background: linear-gradient(135deg, #ff6c24, #ff4f12);
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(255, 90, 31, 0.2);
    opacity: 1;
    cursor: not-allowed;
  }

  .desktop-ai-search__notice {
    margin-top: 12px;
    font-size: 12px;
  }

  .desktop-ai-search__example-chips {
    display: flex;
    align-items: center;
    height: 22px;
    min-height: 22px;
    max-height: 22px;
    flex: 0 0 22px;
    gap: 7px;
    margin-top: 8px;
    overflow: hidden;
    flex-wrap: nowrap;
  }

  .desktop-ai-search__example-chips span {
    min-height: 22px;
    padding: 2px 9px;
    border: 1px solid #d9e1ee;
    border-radius: 999px;
    background: #f7faff;
    color: #244c8f;
    font-size: 11px;
    font-weight: 700;
    line-height: 16px;
  }

  .desktop-section {
    padding-top: 72px;
    background: var(--color-marketplace-canvas);
    color: #111111;
  }

  .desktop-section--categories {
    padding-top: 22px;
    padding-bottom: 32px;
  }

  .desktop-section--offers {
    padding-top: 36px;
  }

  .desktop-section--offers .desktop-section__link {
    border-color: transparent;
    background: linear-gradient(135deg, #ff6c24, #ff4f12);
    color: #ffffff;
    box-shadow: 0 16px 34px rgba(255, 90, 31, 0.20);
    transform: translateY(3px);
  }

  .desktop-section--offers .desktop-section__header,
  .desktop-section--recently-viewed .desktop-section__header {
    align-items: center;
    margin-bottom: 18px;
  }

  .desktop-section--offers .desktop-section__intro,
  .desktop-section--recently-viewed .desktop-section__intro {
    gap: 7px;
  }

  .desktop-section--offers .desktop-section__kicker,
  .desktop-section--recently-viewed .desktop-section__kicker {
    font-size: 13px;
  }

  .desktop-section--offers .desktop-section__header h2,
  .desktop-section--recently-viewed .desktop-section__header h2 {
    font-size: 32px;
    line-height: 1.04;
    letter-spacing: -0.04em;
  }

  .desktop-section--cta-banner {
    padding-top: 80px;
    padding-bottom: 72px;
  }

  .desktop-section__header,
  .desktop-section__intro,
  .desktop-section__intro--centered {
    display: flex;
  }

  .desktop-section__header {
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 32px;
  }

  .desktop-section__intro,
  .desktop-section__intro--centered {
    flex-direction: column;
    gap: 10px;
  }

  .desktop-section__intro--standalone {
    margin-bottom: 32px;
  }

  .desktop-section__intro--centered {
    text-align: center;
    align-items: center;
    margin-bottom: 32px;
  }

  .desktop-section__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #111111;
    font-size: 14px;
    font-weight: 800;
  }

  .desktop-section__kicker::before {
    content: '';
    width: 12px;
    height: 12px;
    border-radius: 4px;
    background: #ff5a1f;
    box-shadow: 0 0 0 4px rgba(255, 90, 31, 0.12);
  }

  .desktop-section__header h2,
  .desktop-section__intro h2,
  .desktop-section__intro--centered h2 {
    margin: 0;
    font-size: 48px;
    line-height: 1.02;
    letter-spacing: -0.04em;
  }

  .desktop-category-grid,
  .desktop-product-grid,
  .desktop-benefits-grid,
  .desktop-how-grid,
  .desktop-promo-grid {
    display: grid;
    gap: 24px;
  }

  .desktop-category-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
  }

  .desktop-category-card {
    min-height: 176px;
    border-radius: 16px;
    padding: 20px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 112px;
    grid-template-rows: 1fr;
    gap: 12px;
    align-items: center;
    overflow: hidden;
  }

  .desktop-category-card--dark {
    background: #111111;
    border-color: #111111;
    color: #ffffff;
  }

  .desktop-category-card__media {
    grid-column: 2;
    grid-row: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
  }

  .desktop-category-card__media img {
    width: 100%;
    height: 128px;
    object-fit: contain;
  }

  .desktop-category-card__content {
    grid-column: 1;
    grid-row: 1;
    min-width: 0;
  }

  .desktop-category-card__content h3 {
    margin: 0 0 8px;
    font-size: 24px;
    line-height: 1.1;
  }

  .desktop-category-card__content p,
  .desktop-benefit-card p,
  .desktop-how-card p,
  .desktop-footer__brand p {
    margin: 0;
    color: #63625c;
    font-size: 14px;
    line-height: 1.4;
  }

  .desktop-category-card--dark .desktop-category-card__content p {
    color: rgba(255, 255, 255, 0.72);
  }

  .desktop-category-card__content button {
    margin-top: 0;
    border: 1px solid #e6e3dc;
    border-radius: 10px;
    background: #ffffff;
    color: #ff5a1f;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    min-width: 82px;
    padding: 8px 11px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  }

  .desktop-category-card__content button:hover {
    border-color: rgba(255, 90, 31, 0.42);
    box-shadow: 0 8px 20px rgba(255, 90, 31, 0.12);
    transform: translateY(-1px);
  }

  .desktop-category-card__content button[data-condition='ujszeru'] {
    color: #dc2626;
  }

  .desktop-category-card__content button[data-condition='ujszeru']:hover {
    border-color: rgba(220, 38, 38, 0.45);
    background: #dc2626;
    color: #ffffff;
    box-shadow: 0 8px 20px rgba(220, 38, 38, 0.16);
  }

  .desktop-category-card__content button[data-condition='hasznalt'] {
    color: #15803d;
  }

  .desktop-category-card__content button[data-condition='hasznalt']:hover {
    border-color: rgba(22, 163, 74, 0.45);
    background: #16a34a;
    color: #ffffff;
    box-shadow: 0 8px 20px rgba(22, 163, 74, 0.16);
  }

  .desktop-category-card__actions {
    display: flex;
    gap: 8px;
    margin-top: 18px;
    flex-wrap: nowrap;
  }

  .desktop-category-card__actions button {
    flex: 1 1 0;
    min-width: 0;
  }

  .desktop-category-card--dark .desktop-category-card__content button {
    color: #ffffff;
  }

  .desktop-product-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
  }

  .desktop-product-grid--landing {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    gap: 10px;
    align-items: start;
  }

  .desktop-section--recently-viewed {
    padding-top: 56px;
    background: var(--color-marketplace-canvas);
  }

  .desktop-recently-viewed {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    overflow: visible;
  }

  .desktop-recently-viewed__carousel {
    position: relative;
    width: 100%;
  }

  .desktop-recently-viewed__viewport {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x proximity;
    touch-action: pan-y;
    cursor: grab;
    outline: none;
  }

  .desktop-recently-viewed__viewport::-webkit-scrollbar {
    display: none;
  }

  .desktop-recently-viewed__viewport:focus-visible {
    box-shadow: inset 0 0 0 3px rgba(255, 90, 31, 0.24);
  }

  .desktop-recently-viewed__viewport.is-dragging {
    cursor: grabbing;
    scroll-snap-type: none;
    user-select: none;
  }

  .desktop-recently-viewed__track {
    display: flex;
    width: max-content;
    gap: 4px;
    align-items: start;
  }

  .desktop-recently-viewed__arrow {
    position: absolute;
    top: 50%;
    z-index: 6;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(17, 17, 17, 0.1);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.97);
    color: #171717;
    box-shadow: 0 10px 24px rgba(17, 17, 17, 0.16);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    cursor: pointer;
  }

  .desktop-recently-viewed__arrow:hover {
    border-color: rgba(255, 90, 31, 0.34);
    color: #ff5a1f;
  }

  .desktop-recently-viewed__arrow:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 3px rgba(255, 90, 31, 0.26), 0 10px 24px rgba(17, 17, 17, 0.16);
  }

  .desktop-recently-viewed__arrow--previous {
    left: 12px;
  }

  .desktop-recently-viewed__arrow--next {
    right: 12px;
  }

  .desktop-recently-viewed__empty {
    min-height: 148px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 1px dashed #d8d4cc;
    border-radius: 12px;
    background: #faf9f6;
    color: #6a6963;
    text-align: center;
  }

  .desktop-recently-viewed__empty strong {
    color: #171717;
    font-size: 16px;
  }

  .desktop-recently-viewed__empty span {
    font-size: 13px;
  }

  .desktop-product-grid--list {
    grid-template-columns: 1fr;
  }

  .desktop-listing-layout.is-filter-closed .desktop-product-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .desktop-listing-layout.is-filter-closed .desktop-product-grid--list {
    grid-template-columns: 1fr;
  }

  .desktop-product-card {
    position: relative;
    display: flex;
    aspect-ratio: 2 / 3;
    min-width: 0;
    background: #ffffff;
    border: 1px solid #ece8df;
    border-radius: 16px;
    box-shadow: none;
    overflow: hidden;
  }

  .desktop-product-card__favorite {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 3;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1px solid rgba(17, 17, 17, 0.08);
    background: rgba(255, 255, 255, 0.96);
    color: #9d9d99;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }

  .desktop-product-card__favorite.active {
    color: #ff5a1f;
  }

  .desktop-product-card__favorite::after {
    content: "";
    position: absolute;
    inset: -3px;
  }

  .desktop-product-card__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: 2fr 1fr;
    min-width: 0;
    max-width: 100%;
    height: 100%;
    padding: 0;
    box-sizing: border-box;
    overflow: hidden;
    border: 0;
    background: transparent;
    width: 100%;
    text-align: left;
    cursor: pointer;
    color: inherit;
  }

  .desktop-product-card__image-wrap {
    position: relative;
    min-width: 0;
    min-height: 0;
    aspect-ratio: 1;
    background: #f5f4ef;
    overflow: hidden;
  }

  .desktop-product-card__image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .desktop-product-card__badges {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    max-width: calc(100% - 58px);
  }

  .desktop-product-card__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 20px;
    max-width: 100%;
    padding: 4px 8px;
    box-sizing: border-box;
    border-radius: 999px;
    font-size: clamp(7.2px, 0.648vw, 9.9px);
    line-height: 1;
    font-weight: 800;
    letter-spacing: 0.01em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .desktop-product-card__badge--condition-new {
    background: #dc2626;
    color: #ffffff;
  }

  .desktop-product-card__badge--condition-used {
    background: #16a34a;
    color: #ffffff;
  }

  .desktop-product-card__badge--condition-repaired {
    background: #facc15;
    color: #171717;
  }

  .desktop-product-card__badge--neutral {
    background: rgba(255, 255, 255, 0.96);
    color: #171717;
  }

  .desktop-product-card__body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 0;
    gap: 0;
    padding: 7px 8px 8px;
  }

  .desktop-product-card__text h3 {
    margin: 0 0 3px;
    font-size: clamp(9.9px, 0.9vw, 13.5px);
    font-weight: 700;
    line-height: 1.1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .desktop-product-card:not(.desktop-product-card--list) .desktop-product-card__body {
    flex: 1;
    justify-content: space-between;
  }

  .desktop-product-card:not(.desktop-product-card--list) .desktop-product-card__text h3 {
    min-height: 0;
  }

  .desktop-product-card__hashtags {
    display: flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
    overscroll-behavior-inline: contain;
  }

  .desktop-product-card__hashtags::-webkit-scrollbar {
    display: none;
  }

  .desktop-product-card__hashtags--secondary {
    margin-top: 2px;
  }

  .desktop-product-card__hashtags span,
  .desktop-product-card__location {
    flex: 0 0 auto;
    font-size: clamp(7.2px, 0.684vw, 10.35px);
    color: #6a6963;
    line-height: 1.2;
    white-space: nowrap;
  }

  .desktop-product-card__location {
    display: block;
    max-width: 100%;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .desktop-product-card__footer {
    min-width: 0;
    margin-top: auto;
    display: grid;
    gap: 3px;
  }

  .desktop-product-card__body strong {
    font-size: clamp(12.6px, 1.278vw, 19.8px);
    line-height: 1;
    letter-spacing: -0.04em;
    white-space: nowrap;
  }

  .desktop-product-card--landing {
    min-height: 0;
    border-radius: 8px;
    box-shadow: 0 10px 24px rgba(17, 17, 17, 0.055);
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
  }

  .desktop-product-card--landing:hover {
    transform: none;
    border-color: rgba(255, 90, 31, 0.22);
    box-shadow: 0 16px 30px rgba(17, 17, 17, 0.08);
  }

  .desktop-product-card--landing .desktop-product-card__favorite {
    top: 10px;
    right: 10px;
  }

  .desktop-product-card--landing .desktop-product-card__body {
    gap: 0;
    padding: 4px 7px;
  }

  .desktop-product-card--landing .desktop-product-card__content {
    grid-template-rows: auto minmax(0, 1fr);
  }

  .desktop-product-card--landing .desktop-product-card__image-wrap {
    height: auto;
    aspect-ratio: 1;
    box-sizing: border-box;
    padding: 5px;
    background: #ffffff;
  }

  .desktop-product-card--landing .desktop-product-card__image-wrap img {
    border-radius: 8px;
  }

  .desktop-product-card--landing .desktop-product-card__hashtags--secondary {
    margin-top: 1px;
  }

  .desktop-product-card--landing .desktop-product-card__footer {
    gap: 2px;
  }

  .desktop-product-card.desktop-product-card--landing .desktop-product-card__text h3 {
    min-height: 0;
    margin-bottom: 1px;
    letter-spacing: -0.01em;
  }

  .desktop-product-card--recent {
    flex: 0 0 160px;
    width: 160px;
    height: 240px;
    aspect-ratio: auto;
    border-radius: 8px;
    border-color: #dedad2;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(17, 17, 17, 0.065);
    transition: border-color 160ms ease, box-shadow 160ms ease;
    scroll-snap-align: start;
  }

  .desktop-product-card--recent:hover {
    border-color: rgba(255, 90, 31, 0.34);
    box-shadow: 0 14px 28px rgba(17, 17, 17, 0.1);
  }

  .desktop-product-card--recent .desktop-product-card__content {
    grid-template-rows: 154px minmax(0, 1fr);
  }

  .desktop-product-card--recent .desktop-product-card__image-wrap {
    box-sizing: border-box;
    padding: 5px;
    background: #ffffff;
  }

  .desktop-product-card--recent .desktop-product-card__image-wrap img {
    border-radius: 8px;
  }

  .desktop-product-card--recent .desktop-product-card__body {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 4px;
    padding: 6px 8px 7px;
    background: #ffffff;
    overflow: hidden;
  }

  .desktop-product-card--recent .desktop-product-card__text {
    min-width: 0;
    overflow: hidden;
  }

  .desktop-product-card--recent .desktop-product-card__text h3 {
    width: 100%;
    margin: 0;
    color: #102a4c;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.15;
  }

  .desktop-product-card--recent .desktop-product-card__hashtags--recent {
    display: block;
    margin-top: 4px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .desktop-product-card--recent .desktop-product-card__hashtags--recent span {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 10px;
    line-height: 1.2;
  }

  .desktop-product-card--recent .desktop-product-card__footer {
    display: grid;
    min-width: 0;
    gap: 3px;
    margin-top: 0;
    padding: 0;
  }

  .desktop-product-card--recent .desktop-product-card__location {
    color: #6a6963;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .desktop-product-card--recent .desktop-product-card__body strong {
    font-size: 18px;
    line-height: 1;
    letter-spacing: -0.035em;
    white-space: nowrap;
  }

  .desktop-product-card--list {
    aspect-ratio: auto;
    min-height: 250px;
  }

  .desktop-product-card--list .desktop-product-card__content {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    grid-template-rows: none;
  }

  .desktop-product-card--list .desktop-product-card__image-wrap {
    height: 100%;
    min-height: 250px;
  }

  .desktop-product-card--list .desktop-product-card__body {
    height: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 190px;
    grid-template-rows: minmax(0, 1fr) auto auto;
    gap: 10px 24px;
    padding: 20px 64px 18px 22px;
    box-sizing: border-box;
  }

  .desktop-product-card--list .desktop-product-card__text h3 {
    margin-bottom: 9px;
    max-width: 680px;
    font-size: clamp(20px, 1.7vw, 25px);
    line-height: 1.15;
    letter-spacing: -0.025em;
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .desktop-product-card__description {
    margin: 0 0 13px;
    max-width: 690px;
    color: #57534e;
    font-size: 14px;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .desktop-product-card__rim-type {
    display: inline-flex;
    width: fit-content;
    margin: 0 0 8px;
    padding: 4px 9px;
    border: 1px solid #ffd2bd;
    border-radius: 999px;
    background: #fff4ee;
    color: #f4511e;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
  }

  .desktop-product-card--list .desktop-product-card__hashtags {
    flex-wrap: wrap;
    overflow: visible;
  }

  .desktop-product-card--list .desktop-product-card__hashtags span {
    padding: 5px 8px;
    border-radius: 999px;
    background: #f4f3ef;
    color: #57534e;
    font-size: 11px;
    font-weight: 700;
  }

  .desktop-product-card__seller-summary {
    grid-column: 2;
    grid-row: 1 / span 3;
    align-self: stretch;
    min-width: 0;
    padding-left: 20px;
    border-left: 1px solid #ebe7df;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 15px;
  }

  .desktop-product-card__seller-label {
    color: #77736d;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .desktop-product-card__seller-identity {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
  }

  .desktop-product-card__seller-identity > b {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #ff5a1f, #ff8c42);
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
  }

  .desktop-product-card__seller-identity > span {
    min-width: 0;
    display: grid;
    gap: 4px;
  }

  .desktop-product-card__seller-identity strong {
    overflow: hidden;
    color: #171717;
    font-size: 13px;
    line-height: 1.25;
    letter-spacing: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .desktop-product-card__seller-identity small {
    color: #8a867f;
    font-size: 10px;
    line-height: 1.25;
  }

  .desktop-product-card--list .desktop-product-card__hashtags--list-bottom {
    grid-column: 1;
    grid-row: 2;
    align-self: end;
    min-height: 24px;
    padding-bottom: 2px;
  }

  .desktop-product-card--list .desktop-product-card__footer {
    grid-column: 1;
    grid-row: 3;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    border-top: 1px solid #f0ede7;
    padding-top: 13px;
  }

  .desktop-product-card--list .desktop-product-card__location {
    font-size: 12px;
  }

  .desktop-product-card--list .desktop-product-card__body > .desktop-product-card__footer strong {
    font-size: 22px;
  }

  .desktop-benefits-grid,
  .desktop-how-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .desktop-benefit-card,
  .desktop-how-card {
    border-radius: 16px;
    padding: 24px;
  }

  .desktop-benefit-card__icon {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #fff2eb;
    color: #ff5a1f;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
  }

  .desktop-how-card__icon {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    border: 1px solid rgba(255, 90, 31, 0.18);
    background: #ffffff;
    color: #ff5a1f;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    box-shadow: inset 0 0 0 8px #fff7f2;
  }

  .desktop-benefit-card h3,
  .desktop-how-card h3 {
    margin: 0 0 10px;
    font-size: 20px;
    line-height: 1.25;
  }

  .desktop-promo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .desktop-promo-card {
    min-height: 300px;
    border-radius: 20px;
    padding: 32px;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(220px, 0.9fr);
    gap: 24px;
    align-items: center;
    overflow: hidden;
  }

  .desktop-promo-card--dark {
    background: linear-gradient(135deg, #0d0d0d 0%, #171717 100%);
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.08);
  }

  .desktop-promo-card--light {
    background: linear-gradient(180deg, #ffffff 0%, #faf8f3 100%);
  }

  .desktop-promo-card__copy span {
    display: inline-flex;
    margin-bottom: 12px;
    color: #ff5a1f;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }

  .desktop-promo-card__copy h2 {
    margin: 0;
    font-size: 48px;
    line-height: 1.02;
    letter-spacing: -0.04em;
  }

  .desktop-promo-card__copy ul {
    list-style: none;
    display: grid;
    gap: 10px;
    margin: 20px 0 24px;
    padding: 0;
  }

  .desktop-promo-card__copy li {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 15px;
    color: inherit;
  }

  .desktop-promo-card__copy li svg {
    color: #ff5a1f;
    flex-shrink: 0;
  }

  .desktop-promo-card__visual {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .desktop-promo-card__visual img {
    width: 100%;
    height: 236px;
    object-fit: cover;
    border-radius: 18px;
  }

  .desktop-promo-card__visual--contained img {
    object-fit: contain;
    background: transparent;
  }

  .desktop-cta-banner {
    position: relative;
    isolation: isolate;
    min-height: 360px;
    border-radius: 24px;
    padding: 52px 56px;
    background:
      linear-gradient(90deg, rgba(4, 4, 4, 0.98) 0%, rgba(8, 8, 8, 0.94) 45%, rgba(10, 10, 10, 0.7) 100%),
      url('/hero02.png') 70% center / cover;
    color: #ffffff;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
    gap: 64px;
    align-items: center;
    overflow: hidden;
    box-shadow: 0 28px 70px rgba(12, 12, 12, 0.16);
  }

  .desktop-cta-banner::after {
    content: '';
    position: absolute;
    z-index: -1;
    width: 360px;
    height: 360px;
    left: 35%;
    bottom: -260px;
    border-radius: 50%;
    background: rgba(255, 90, 31, 0.62);
    filter: blur(80px);
    pointer-events: none;
  }

  .desktop-cta-banner__content {
    max-width: 680px;
  }

  .desktop-cta-banner__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    color: #ff7a45;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
  }

  .desktop-cta-banner__eyebrow::before {
    content: '';
    width: 26px;
    height: 2px;
    background: #ff5a1f;
  }

  .desktop-cta-banner__content h2 {
    margin: 0;
    max-width: 640px;
    font-size: clamp(42px, 4vw, 60px);
    line-height: 0.98;
    letter-spacing: -0.05em;
  }

  .desktop-cta-banner__content p {
    max-width: 600px;
    margin: 20px 0 0;
    font-size: 17px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.72);
  }

  .desktop-cta-banner__actions {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 28px;
  }

  .desktop-cta-banner__steps {
    list-style: none;
    display: grid;
    gap: 0;
    margin: 0;
    padding: 10px 24px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 20px;
    background: rgba(10, 10, 10, 0.62);
    backdrop-filter: blur(14px);
  }

  .desktop-cta-banner__steps li {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 14px;
    padding: 18px 0;
  }

  .desktop-cta-banner__steps li + li {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }

  .desktop-cta-banner__steps > li > span {
    color: #ff6a2f;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.08em;
  }

  .desktop-cta-banner__steps strong {
    display: block;
    color: #ffffff;
    font-size: 16px;
    line-height: 1.25;
  }

  .desktop-cta-banner__steps p {
    margin: 6px 0 0;
    color: rgba(255, 255, 255, 0.58);
    font-size: 13px;
    line-height: 1.45;
  }

  .desktop-footer {
    background: #101114;
    color: #ffffff;
    padding: 0 0 32px;
    border-top: 1px solid #101114;
  }

  .desktop-footer__inner {
    display: grid;
    grid-template-columns: minmax(220px, 0.5fr) minmax(0, 1.5fr);
    gap: 28px;
    padding-top: 56px;
    padding-bottom: 52px;
  }

  .desktop-logo--footer {
    width: 300.84px;
    height: 59.34px;
    margin-bottom: 18px;
  }

  .desktop-footer__brand h3 {
    max-width: 420px;
    margin: 0 0 16px;
    color: #ffffff;
    font-size: 27px;
    line-height: 1.08;
    letter-spacing: -0.035em;
  }

  .desktop-footer__brand > p {
    max-width: 430px;
    color: #b8bbc3;
    font-size: 12.6px;
  }

  .desktop-footer__links button,
  .desktop-footer__links a {
    border: 0;
    background: transparent;
    color: inherit;
    padding: 0;
    text-align: left;
    font: inherit;
    text-decoration: none;
    cursor: pointer;
  }

  .desktop-footer__browse {
    min-height: 44px;
    margin-top: 26px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #ffffff;
    font: inherit;
    font-size: 12.6px;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
  }

  .desktop-footer__browse span {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #ff5a1f;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform 160ms ease;
  }

  .desktop-footer__browse:hover span {
    transform: translateX(3px);
  }

  .desktop-footer__browse:focus-visible,
  .desktop-footer__links button:focus-visible,
  .desktop-footer__links a:focus-visible {
    outline: 2px solid #ff6a2f;
    outline-offset: 5px;
  }

  .desktop-footer__links {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: 100%;
    justify-self: end;
    gap: 12px;
  }

  .desktop-footer__links > div:first-child {
    padding-left: 0;
  }

  .desktop-footer__links > div:first-child button {
    white-space: nowrap;
  }

  .desktop-footer__links > div:nth-child(2) {
    padding-left: 0;
  }

  .desktop-footer__links h4 {
    margin: 0 0 18px;
    color: #ffffff;
    font-size: 13.5px;
  }

  .desktop-footer__links div {
    display: grid;
    align-content: start;
    gap: 13px;
    font-size: 12.6px;
  }

  .desktop-footer__nowrap {
    white-space: nowrap;
  }

  .desktop-footer__links button,
  .desktop-footer__links a,
  .desktop-footer__links span {
    transition: color 160ms ease;
  }

  .desktop-footer__links button:hover,
  .desktop-footer__links a:hover {
    color: #ff6a2f;
  }

  .desktop-footer__legal-band {
    width: 100%;
    background: #101114;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
  }

  .desktop-footer__legal {
    min-height: 58px;
    color: #ffffff;
    font-size: 10.8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
  }

  .desktop-listing-tabs {
    position: sticky;
    top: 0;
    z-index: 40;
    background: linear-gradient(180deg, #ffffff 0%, #f6f4ef 100%);
    border-bottom: 1px solid #e8e8e8;
    box-shadow: 0 8px 18px rgba(17, 17, 17, 0.06);
  }

  .desktop-inline-filters {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 10px;
    padding: 12px 0;
  }

  .desktop-inline-filter {
    position: relative;
    min-width: 0;
    min-height: 54px;
    padding: 0;
    box-sizing: border-box;
    border: 1px solid #e5e1d9;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 4px 14px rgba(17, 17, 17, 0.035);
    cursor: pointer;
    transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
  }

  .desktop-inline-filter::after {
    content: '';
    position: absolute;
    right: 13px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 1.5px solid #252525;
    border-bottom: 1.5px solid #252525;
    transform: translateY(-68%) rotate(45deg);
    z-index: 2;
    pointer-events: none;
  }

  .desktop-inline-filter > span {
    position: absolute;
    top: 9px;
    right: 32px;
    left: 12px;
    z-index: 2;
    min-width: 0;
    color: #79756e;
    font-size: 9px;
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: 0.055em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    pointer-events: none;
  }

  .desktop-inline-filter > select {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    min-width: 0;
    height: 100%;
    box-sizing: border-box;
    padding: 23px 32px 6px 12px;
    border: 0;
    border-radius: 0;
    appearance: none;
    background: transparent;
    color: #171717;
    font: inherit;
    font-size: 14px;
    font-weight: 750;
    outline: none;
    cursor: pointer;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .desktop-inline-filter:hover {
    border-color: rgba(255, 90, 0, 0.38);
    background: #fffaf7;
  }

  .desktop-inline-filter:focus-within {
    border-color: #ff5a1f;
    box-shadow: 0 0 0 3px rgba(255, 90, 31, 0.16);
  }

  .desktop-inline-filter--category,
  .desktop-inline-filter.is-active {
    border-color: rgba(255, 90, 31, 0.34);
    background: #fff2eb;
  }

  .desktop-inline-filter--category > span,
  .desktop-inline-filter--category > select,
  .desktop-inline-filter.is-active > span,
  .desktop-inline-filter.is-active > select {
    color: #e94f00;
  }

  .desktop-inline-filter--compound > summary {
    position: absolute;
    inset: 0;
    z-index: 3;
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    padding: 7px 32px 6px 12px;
    list-style: none;
    outline: 0;
    cursor: pointer;
  }

  .desktop-inline-filter--compound > summary::-webkit-details-marker {
    display: none;
  }

  .desktop-inline-filter--compound > summary > span {
    min-width: 0;
    overflow: hidden;
    color: #79756e;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: 0.055em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
  }

  .desktop-inline-filter--compound > summary > strong {
    min-width: 0;
    overflow: hidden;
    color: #171717;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .desktop-inline-filter--compound.is-active > summary > span,
  .desktop-inline-filter--compound.is-active > summary > strong {
    color: #e94f00;
  }

  .desktop-inline-filter--compound[open] {
    border-color: #ff5a1f;
    box-shadow: 0 0 0 3px rgba(255, 90, 31, 0.16);
  }

  .desktop-inline-filter__compound-panel {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 90;
    width: 238px;
    box-sizing: border-box;
    padding: 12px;
    border: 1px solid #e5e1d9;
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 16px 34px rgba(17, 17, 17, 0.16);
  }

  .desktop-inline-filter__compound-panel > label {
    display: grid;
    gap: 5px;
    color: #5f5a54;
    font-size: 10px;
    font-weight: 800;
  }

  .desktop-inline-filter__compound-panel > label + label {
    margin-top: 10px;
  }

  .desktop-inline-filter__compound-panel select {
    width: 100%;
    height: 38px;
    padding: 0 10px;
    border: 1px solid #ddd7cf;
    border-radius: 9px;
    background: #ffffff;
    color: #171717;
    font: inherit;
    font-size: 12px;
    font-weight: 700;
    outline: 0;
  }

  .desktop-inline-filter__compound-panel select:focus {
    border-color: #ff5a1f;
    box-shadow: 0 0 0 2px rgba(255, 90, 31, 0.12);
  }

  .desktop-inline-filter__compound-panel > button {
    width: 100%;
    min-height: 34px;
    margin-top: 10px;
    border: 1px solid rgba(255, 90, 31, 0.28);
    border-radius: 9px;
    background: #fff5ef;
    color: #e94f00;
    font: inherit;
    font-size: 11px;
    font-weight: 800;
    cursor: pointer;
  }

  .desktop-listing-tabs__meta,
  .desktop-results__toolbar,
  .desktop-results__toolbar-actions,
  .desktop-view-toggle,
  .desktop-sort-select {
    display: flex;
    align-items: center;
  }

  .desktop-filter-panel__categories {
    display: grid;
    gap: 8px;
    padding-bottom: 18px;
    border-bottom: 1px solid #e8e8e8;
  }

  .desktop-filter-panel__categories > button {
    min-height: 40px;
    border: 1px solid #e8e8e8;
    border-radius: 10px;
    background: #ffffff;
    color: #4c4c49;
    font-size: 14px;
    font-weight: 700;
    padding: 8px 12px;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
  }

  .desktop-filter-panel__categories > button.active {
    border-color: #ff5a00;
    background: #ff5a00;
    color: #ffffff;
    box-shadow: 0 6px 14px rgba(255, 90, 0, 0.2);
  }

  .desktop-filter-panel__categories > button:not(.active):hover {
    border-color: rgba(255, 90, 0, 0.28);
    background: #fff2eb;
    color: #ff5a00;
  }

  .desktop-filter-panel__categories > button:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(255, 90, 0, 0.24);
  }

  .desktop-listing-tabs__meta {
    gap: 12px;
  }

  .desktop-listing-tabs__verified {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #111111;
    font-size: 14px;
    font-weight: 600;
  }

  .desktop-section--listing {
    padding-top: 28px;
  }

  .desktop-listing-layout {
    display: grid;
    grid-template-columns: 224px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
  }

  .desktop-listing-layout.is-filter-closed {
    grid-template-columns: minmax(0, 1fr);
  }

  .desktop-listing-layout--full {
    grid-template-columns: minmax(0, 1fr);
  }

  .desktop-listing-layout--full .desktop-results {
    grid-column: 1;
  }

  .desktop-listing-layout--full .desktop-product-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .desktop-listing-layout--full .desktop-product-grid--list {
    grid-template-columns: 1fr;
  }

  .desktop-filter-panel {
    padding: 20px;
    display: grid;
    gap: 18px;
  }

  .desktop-listing-layout.is-filter-open .desktop-results {
    grid-column: 2;
  }

  .desktop-listing-layout.is-filter-closed .desktop-results {
    grid-column: 1;
  }

  .desktop-filter-panel__toggle,
  .desktop-filter-panel__clear {
    border: 1px solid #e8e8e8;
    background: #ffffff;
    color: #111111;
    min-height: 44px;
    border-radius: 12px;
    padding: 0 14px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
  }

  .desktop-filter-panel__clear {
    border-color: rgba(255, 90, 0, 0.25);
    color: #ff5a00;
  }

  .desktop-filter-group {
    display: grid;
    gap: 10px;
  }

  .desktop-filter-group h3 {
    font-size: 15px;
  }

  .desktop-pill-row {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
  }

  .desktop-pill-row button {
    border: 1px solid #e8e8e8;
    background: #ffffff;
    min-height: 36px;
    border-radius: 999px;
    padding: 0 14px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
    color: #4d4d4a;
  }

  .desktop-pill-row button.active {
    background: #ff5a00;
    border-color: #ff5a00;
    color: #ffffff;
  }

  .desktop-pill-row--diameters {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .desktop-pill-row--diameters button {
    width: 100%;
    padding: 0;
  }

  .desktop-pill-row--wide button {
    border-radius: 12px;
  }

  .desktop-results {
    padding: 22px;
  }

  .desktop-results__toolbar {
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
  }

  .desktop-results__toolbar h2 {
    font-size: 26px;
    letter-spacing: -0.04em;
  }

  .desktop-results__toolbar-actions {
    gap: 12px;
  }

  .desktop-sort-select {
    position: relative;
  }

  .desktop-sort-select select {
    min-width: 210px;
    padding-right: 36px;
    appearance: none;
  }

  .desktop-sort-select svg {
    position: absolute;
    right: 14px;
    pointer-events: none;
    color: #767671;
  }

  .desktop-view-toggle {
    border: 1px solid #e8e8e8;
    border-radius: 14px;
    overflow: hidden;
  }

  .desktop-view-toggle button {
    border: 0;
    background: #ffffff;
    min-width: 46px;
    min-height: 46px;
    color: #6b6b67;
    cursor: pointer;
  }

  .desktop-view-toggle button.active {
    background: #ff5a00;
    color: #ffffff;
  }

  .desktop-load-more {
    width: 100%;
    margin-top: 24px;
    background: #ffffff;
    color: #111111;
    border: 1px solid #e8e8e8;
    box-shadow: none;
  }

  .desktop-empty-state {
    padding: 44px 24px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }

  .desktop-empty-state h3,
  .desktop-empty-state p {
    margin: 0;
  }

  .desktop-listing-detail {
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #f7f5ef;
    color: #ffffff;
  }

  .desktop-listing-detail button,
  .desktop-listing-detail input,
  .desktop-listing-detail select {
    font: inherit;
  }

  .desktop-listing-detail__topbar {
    flex: 0 0 82px;
    background: #000000;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }

  .desktop-listing-detail__topbar-inner {
    width: min(calc(100% - 64px), 1280px);
    height: 82px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 24px;
  }

  .desktop-listing-detail__back,
  .desktop-listing-detail__return {
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: #151515;
    color: #ffffff;
    border-radius: 12px;
    min-height: 44px;
    padding: 0 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    font-weight: 700;
    cursor: pointer;
  }

  .desktop-listing-detail__back {
    justify-self: start;
  }

  .desktop-listing-detail__topbar-inner > div:nth-child(2) {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .desktop-listing-detail__topbar-inner > div:nth-child(2) span {
    color: rgba(255, 255, 255, 0.52);
    font-size: 13px;
  }

  .desktop-listing-detail__topbar-inner > div:nth-child(2) strong {
    color: #ff5a1f;
    font-size: 13px;
  }

  .desktop-listing-detail__top-actions {
    justify-self: end;
    display: flex;
    gap: 8px;
  }

  .desktop-listing-detail__top-actions button {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: #151515;
    color: #ffffff;
    display: grid;
    place-items: center;
    cursor: pointer;
  }

  .desktop-listing-detail__top-actions button.active {
    background: rgba(255, 90, 31, 0.14);
    border-color: rgba(255, 90, 31, 0.48);
    color: #ff5a1f;
  }

  .desktop-listing-detail__scroll {
    min-height: 0;
    flex: 1;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
  }

  .desktop-listing-detail__layout {
    width: min(calc(100% - 64px), 1280px);
    margin: 0 auto;
    padding: 24px 0 40px;
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr) 330px;
    gap: 20px;
    align-items: start;
  }

  .desktop-listing-detail__search-panel,
  .desktop-listing-detail__gallery-card,
  .desktop-listing-detail__headline,
  .desktop-listing-detail__content-grid article,
  .desktop-listing-detail__seller-card,
  .desktop-listing-detail__quick-info,
  .desktop-listing-detail__pagination {
    border: 1px solid rgba(255, 255, 255, 0.10);
    background: #111214;
    border-radius: 18px;
  }

  .desktop-listing-detail__search-panel,
  .desktop-listing-detail__info-panel {
    position: sticky;
    top: 24px;
  }

  .desktop-listing-detail__search-panel {
    padding: 18px;
    display: grid;
    gap: 15px;
  }

  .desktop-listing-detail__aside-title {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #ff5a1f;
  }

  .desktop-listing-detail__aside-title div {
    display: grid;
    gap: 2px;
  }

  .desktop-listing-detail__aside-title strong {
    color: #ffffff;
    font-size: 17px;
  }

  .desktop-listing-detail__aside-title span {
    color: rgba(255, 255, 255, 0.45);
    font-size: 11px;
  }

  .desktop-listing-detail__category-switch {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
  }

  .desktop-listing-detail__category-switch button {
    min-width: 0;
    min-height: 38px;
    padding: 0 5px;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background: #191a1c;
    color: rgba(255, 255, 255, 0.62);
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
  }

  .desktop-listing-detail__category-switch button.active {
    background: #ff5a1f;
    border-color: #ff5a1f;
    color: #ffffff;
  }

  .desktop-listing-detail__search-panel label {
    display: grid;
    gap: 7px;
    color: rgba(255, 255, 255, 0.68);
    font-size: 12px;
    font-weight: 700;
  }

  .desktop-listing-detail__search-panel select,
  .desktop-listing-detail__search-input {
    width: 100%;
    min-height: 44px;
    border-radius: 11px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background: #1a1b1d;
    color: #ffffff;
  }

  .desktop-listing-detail__search-panel select {
    padding: 0 12px;
    color-scheme: dark;
  }

  .desktop-listing-detail__search-input {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 12px;
    color: rgba(255, 255, 255, 0.42);
  }

  .desktop-listing-detail__search-input input {
    min-width: 0;
    flex: 1;
    border: 0;
    outline: 0;
    background: transparent;
    color: #ffffff;
  }

  .desktop-listing-detail__search-submit {
    min-height: 46px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(135deg, #ff6c24, #ff4f12);
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 12px 28px rgba(255, 90, 31, 0.20);
  }

  .desktop-listing-detail__return {
    width: 100%;
    min-height: 42px;
    color: rgba(255, 255, 255, 0.72);
    background: transparent;
  }

  .desktop-listing-detail__main,
  .desktop-listing-detail__info-panel {
    display: grid;
    gap: 18px;
  }

  .desktop-listing-detail__gallery-card {
    padding: 14px;
  }

  .desktop-listing-detail__gallery {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 86px;
    gap: 10px;
  }

  .desktop-listing-detail__main-image {
    position: relative;
    height: clamp(340px, 43vh, 390px);
    min-height: 0;
    overflow: hidden;
    border-radius: 14px;
    background: #050505;
  }

  .desktop-listing-detail__main-image > img {
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    display: block;
    object-fit: contain;
  }

  .desktop-listing-detail__main-image > span {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.72);
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
  }

  .desktop-listing-detail__main-image > button {
    position: absolute;
    top: 50%;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.20);
    background: rgba(0, 0, 0, 0.68);
    color: #ffffff;
    display: grid;
    place-items: center;
    transform: translateY(-50%);
    cursor: pointer;
  }

  .desktop-listing-detail__main-image > button.previous { left: 12px; }
  .desktop-listing-detail__main-image > button.next { right: 12px; }

  .desktop-listing-detail__thumbnails {
    display: flex;
    flex-direction: column;
    gap: 8px;
    height: clamp(340px, 43vh, 390px);
    max-height: none;
    overflow-y: auto;
    scrollbar-width: thin;
  }

  .desktop-listing-detail__thumbnails button {
    flex: 0 0 78px;
    padding: 0;
    overflow: hidden;
    border-radius: 11px;
    border: 2px solid transparent;
    background: #050505;
    opacity: 0.58;
    cursor: pointer;
  }

  .desktop-listing-detail__thumbnails button.active {
    border-color: #ff5a1f;
    opacity: 1;
  }

  .desktop-listing-detail__thumbnails img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
  }

  .desktop-listing-detail__headline {
    padding: 20px 22px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
  }

  .desktop-listing-detail__headline h1 {
    margin: 10px 0 8px;
    max-width: 620px;
    color: #ffffff;
    font-size: 25px;
    line-height: 1.25;
    letter-spacing: -0.03em;
  }

  .desktop-listing-detail__headline p {
    margin: 0;
    display: flex;
    align-items: center;
    gap: 6px;
    color: rgba(255, 255, 255, 0.50);
    font-size: 13px;
  }

  .desktop-listing-detail__engagement {
    margin-top: 14px;
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 8px;
  }

  .desktop-listing-detail__engagement > span {
    min-width: 118px;
    padding: 8px 10px;
    display: grid;
    grid-template-columns: 19px minmax(0, 1fr);
    align-items: center;
    border-radius: 10px;
    border: 1px solid rgba(255, 90, 31, 0.22);
    background: rgba(255, 90, 31, 0.07);
    color: #ff6c24;
  }

  .desktop-listing-detail__engagement svg {
    grid-row: 1 / span 2;
  }

  .desktop-listing-detail__engagement small {
    color: rgba(255, 255, 255, 0.46);
    font-size: 9px;
    line-height: 1.1;
  }

  .desktop-listing-detail__engagement strong {
    color: #ffffff;
    font-size: 12px;
    line-height: 1.25;
  }

  .desktop-listing-detail__engagement em {
    align-self: center;
    padding: 5px 8px;
    border-radius: 999px;
    background: rgba(255, 90, 31, 0.14);
    color: #ff6c24;
    font-size: 9px;
    font-style: normal;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }

  .desktop-listing-detail__headline > strong {
    color: #ff5a1f;
    font-size: 28px;
    white-space: nowrap;
  }

  .desktop-listing-detail__category-badge {
    display: inline-flex;
    min-height: 26px;
    padding: 0 10px;
    align-items: center;
    border-radius: 999px;
    background: rgba(255, 90, 31, 0.13);
    color: #ff6c24;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
  }

  .desktop-listing-detail__content-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(260px, 0.85fr);
    gap: 18px;
  }

  .desktop-listing-detail__content-grid article {
    padding: 20px;
  }

  .desktop-listing-detail__content-grid h2,
  .desktop-listing-detail__quick-info h2 {
    margin: 0 0 14px;
    font-size: 18px;
    color: #ffffff;
  }

  .desktop-listing-detail__content-grid p {
    margin: 0;
    color: rgba(255, 255, 255, 0.64);
    font-size: 14px;
    line-height: 1.7;
  }

  .desktop-listing-detail__features {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 16px;
  }

  .desktop-listing-detail__features span {
    min-height: 30px;
    padding: 0 10px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border-radius: 999px;
    border: 1px solid rgba(255, 90, 31, 0.24);
    background: rgba(255, 90, 31, 0.08);
    color: #ff6c24;
    font-size: 12px;
  }

  .desktop-listing-detail dl {
    margin: 0;
  }

  .desktop-listing-detail dl > div {
    min-height: 34px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  }

  .desktop-listing-detail dl > div:last-child {
    border-bottom: 0;
  }

  .desktop-listing-detail dt {
    color: rgba(255, 255, 255, 0.42);
    font-size: 12px;
  }

  .desktop-listing-detail dd {
    margin: 0;
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    text-align: right;
  }

  .desktop-listing-detail__pagination {
    min-height: 68px;
    padding: 10px;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 10px;
  }

  .desktop-listing-detail__pagination button {
    min-height: 46px;
    padding: 0 15px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background: #191a1c;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
  }

  .desktop-listing-detail__pagination button:last-child {
    justify-self: stretch;
  }

  .desktop-listing-detail__pagination button.back {
    color: #ff6c24;
  }

  .desktop-listing-detail__pagination button:disabled {
    opacity: 0.30;
    cursor: not-allowed;
  }

  .desktop-listing-detail__info-panel {
    position: sticky;
    top: 24px;
  }

  .desktop-listing-detail__seller-card,
  .desktop-listing-detail__quick-info {
    padding: 20px;
  }

  .desktop-listing-detail__seller-card > span {
    color: rgba(255, 255, 255, 0.45);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .desktop-listing-detail__seller {
    width: 100%;
    margin: 14px 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #ffffff;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto;
    gap: 11px;
    align-items: center;
    text-align: left;
    cursor: pointer;
  }

  .desktop-listing-detail__seller > b {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #ff5a1f, #ff8c42);
    color: #ffffff;
  }

  .desktop-listing-detail__seller > span {
    min-width: 0;
    display: grid;
    gap: 4px;
  }

  .desktop-listing-detail__seller strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .desktop-listing-detail__seller small {
    color: rgba(255, 255, 255, 0.42);
  }

  .desktop-listing-detail__seller > svg {
    color: #22c55e;
  }

  .desktop-listing-detail__message,
  .desktop-listing-detail__phone,
  .desktop-listing-detail__email {
    width: 100%;
    min-height: 48px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-weight: 800;
    cursor: pointer;
  }

  .desktop-listing-detail__message {
    border: 0;
    background: linear-gradient(135deg, #ff6c24, #ff4f12);
    color: #ffffff;
    box-shadow: 0 14px 30px rgba(255, 90, 31, 0.22);
  }

  .desktop-listing-detail__phone,
  .desktop-listing-detail__email {
    margin-top: 9px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: #191a1c;
    color: #ffffff;
    font-size: 12px;
  }

  /* Desktop hirdetésprofil — világos téma */
  .desktop-listing-detail {
    background: #ffffff;
    color: #171717;
  }

  .desktop-listing-detail__topbar {
    background: #ffffff;
    border-bottom-color: #e8e4dc;
  }

  .desktop-listing-detail__back,
  .desktop-listing-detail__return,
  .desktop-listing-detail__top-actions button {
    border-color: #e3dfd7;
    background: #ffffff;
    color: #171717;
  }

  .desktop-listing-detail__topbar-inner > div:nth-child(2) span {
    color: #77736d;
  }

  .desktop-listing-detail__search-panel,
  .desktop-listing-detail__gallery-card,
  .desktop-listing-detail__headline,
  .desktop-listing-detail__content-grid article,
  .desktop-listing-detail__seller-card,
  .desktop-listing-detail__quick-info,
  .desktop-listing-detail__pagination {
    border-color: #e8e4dc;
    background: #ffffff;
    box-shadow: 0 12px 34px rgba(17, 17, 17, 0.055);
  }

  .desktop-listing-detail__aside-title strong,
  .desktop-listing-detail__headline h1,
  .desktop-listing-detail__content-grid h2,
  .desktop-listing-detail__quick-info h2 {
    color: #171717;
  }

  .desktop-listing-detail__aside-title span,
  .desktop-listing-detail__headline p,
  .desktop-listing-detail__content-grid p,
  .desktop-listing-detail__seller-card > span,
  .desktop-listing-detail__seller small {
    color: #77736d;
  }

  .desktop-listing-detail__engagement small {
    color: #8a867f;
  }

  .desktop-listing-detail__engagement strong {
    color: #171717;
  }

  .desktop-listing-detail__category-switch button {
    border-color: #e3dfd7;
    background: #f7f6f3;
    color: #57534e;
  }

  .desktop-listing-detail__category-switch button.active {
    border-color: #ff5a1f;
    background: #ff5a1f;
    color: #ffffff;
  }

  .desktop-listing-detail__search-panel label {
    color: #57534e;
  }

  .desktop-listing-detail__search-panel select,
  .desktop-listing-detail__search-input {
    border-color: #e3dfd7;
    background: #ffffff;
    color: #171717;
  }

  .desktop-listing-detail__search-panel select {
    color-scheme: light;
  }

  .desktop-listing-detail__search-input,
  .desktop-listing-detail__search-input input {
    color: #171717;
  }

  .desktop-listing-detail__search-input input::placeholder {
    color: #8a8680;
  }

  .desktop-listing-detail__return {
    color: #57534e;
  }

  .desktop-listing-detail__main-image,
  .desktop-listing-detail__thumbnails button {
    background: #f5f4f1;
  }

  .desktop-listing-detail dl > div {
    border-bottom-color: #ece9e2;
  }

  .desktop-listing-detail dt {
    color: #77736d;
  }

  .desktop-listing-detail dd,
  .desktop-listing-detail__seller {
    color: #171717;
  }

  .desktop-listing-detail__pagination button,
  .desktop-listing-detail__phone {
    border-color: #e3dfd7;
    background: #f7f6f3;
    color: #171717;
  }

  /* Approved desktop list view — lista 02.png */
  .desktop-marketplace--listing .desktop-results {
    padding: 0;
    border: 0;
    background: transparent;
  }

  .desktop-marketplace--listing .desktop-results__toolbar {
    min-height: 60px;
    margin-bottom: 14px;
  }

  .desktop-results__summary {
    display: grid;
    gap: 8px;
  }

  .desktop-results__breadcrumbs {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 5px;
    color: #77736d;
    font-size: 10px;
    font-weight: 600;
  }

  .desktop-results__breadcrumbs button {
    padding: 0;
    color: inherit;
    border: 0;
    background: transparent;
    font: inherit;
    cursor: pointer;
  }

  .desktop-results__breadcrumbs button:hover {
    color: #e94f00;
  }

  .desktop-marketplace--listing .desktop-results__toolbar h2 {
    margin: 0;
    font-size: 20px;
    letter-spacing: -0.025em;
  }

  .desktop-marketplace--listing .desktop-sort-select select {
    min-width: 160px;
    height: 42px;
    padding: 0 36px 0 14px;
    border: 1px solid #dedbd5;
    border-radius: 11px;
    background: #ffffff;
    color: #171717;
    font: inherit;
    font-size: 12px;
    font-weight: 650;
    outline: 0;
  }

  .desktop-marketplace--listing .desktop-sort-select select:focus-visible,
  .desktop-marketplace--listing .desktop-view-toggle:focus-within {
    border-color: #ff5a1f;
    box-shadow: 0 0 0 3px rgba(255, 90, 31, 0.15);
  }

  .desktop-marketplace--listing .desktop-view-toggle {
    border-radius: 11px;
  }

  .desktop-marketplace--listing .desktop-view-toggle button {
    min-width: 42px;
    min-height: 42px;
  }

  .desktop-listing-list {
    display: grid;
    gap: 16px;
  }

  .desktop-listing-list-card {
    display: grid;
    width: 985px;
    max-width: 100%;
    min-width: 0;
    grid-template-columns: repeat(3, 315px);
    gap: 10px;
    justify-self: center;
    padding: 10px;
    overflow: hidden;
    border: 0;
    border-radius: 14px;
    outline: 1px solid #e4e6e8;
    background: #ffffff;
    box-shadow: 0 8px 22px rgba(26, 24, 21, 0.055);
    color: #171717;
    cursor: pointer;
  }

  .desktop-listing-list-card:hover {
    outline-color: #d7dadd;
    box-shadow: 0 11px 28px rgba(26, 24, 21, 0.085);
  }

  .desktop-listing-list-card:focus-visible {
    outline-color: #ff5a1f;
    box-shadow: 0 0 0 3px rgba(255, 90, 31, 0.18), 0 11px 28px rgba(26, 24, 21, 0.085);
  }

  .desktop-listing-list-card button {
    font: inherit;
  }

  .desktop-listing-list-card__gallery,
  .desktop-listing-list-card__summary,
  .desktop-listing-list-card__seller {
    min-width: 0;
    height: 100%;
    padding: 14px;
    border: 1px solid #e4e6e8;
    border-radius: 12px;
    background: #ffffff;
  }

  .desktop-listing-list-card__gallery {
    display: grid;
    align-content: start;
    gap: 9px;
  }

  .desktop-listing-list-card__main-image {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    padding: 0;
    border: 1px solid #eef0f2;
    border-radius: 9px;
    background: #ffffff;
    cursor: zoom-in;
  }

  .desktop-listing-list-card__main-image > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .desktop-listing-list-card__badges {
    position: absolute;
    top: 9px;
    left: 9px;
    display: grid;
    justify-items: start;
    gap: 5px;
  }

  .desktop-listing-list-card__badges .desktop-product-card__badge,
  .desktop-listing-list-card__photo-count {
    min-height: 22px;
    padding: 0 8px;
    border: 1px solid rgba(17, 17, 17, 0.08);
    border-radius: 999px;
    box-shadow: 0 2px 8px rgba(17, 17, 17, 0.08);
    font-size: 9px;
    line-height: 22px;
  }

  .desktop-listing-list-card__photo-count {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: rgba(255, 255, 255, 0.94);
    color: #171717;
    font-weight: 800;
  }

  .desktop-listing-list-card__zoom {
    position: absolute;
    right: 10px;
    bottom: 10px;
    display: grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border: 1px solid #e6e3dd;
    border-radius: 50%;
    background: #ffffff;
    color: #242424;
    box-shadow: 0 4px 12px rgba(17, 17, 17, 0.1);
  }

  .desktop-listing-list-card__thumbnails {
    display: grid;
    grid-template-columns: repeat(6, 42px);
    grid-auto-rows: 42px;
    gap: 6px;
    min-height: 42px;
    justify-content: start;
  }

  .desktop-listing-list-card__thumbnails button,
  .desktop-listing-list-card__thumbnail-placeholder {
    position: relative;
    display: block;
    width: 42px;
    height: 42px;
    overflow: hidden;
    padding: 2px;
    border: 1px solid #e4e1db;
    border-radius: 7px;
    background: #ffffff;
  }

  .desktop-listing-list-card__thumbnails button {
    cursor: pointer;
  }

  .desktop-listing-list-card__thumbnail-placeholder {
    border-color: #e7eaed;
    background: #fafbfb;
    box-shadow: inset 0 0 0 1px rgba(229, 232, 235, 0.3);
  }

  .desktop-listing-list-card__thumbnails button.is-active {
    padding: 1px;
    border: 2px solid #ff4f16;
  }

  .desktop-listing-list-card__thumbnails img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 5px;
    object-fit: cover;
  }

  .desktop-listing-list-card__thumbnails .is-more span {
    position: absolute;
    inset: 2px;
    display: grid;
    place-items: center;
    border-radius: 5px;
    background: rgba(23, 23, 23, 0.52);
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
  }

  .desktop-listing-list-card__summary {
    display: flex;
    min-height: 0;
    flex-direction: column;
  }

  .desktop-listing-list-card__summary-copy h3 {
    margin: 0 0 12px;
    overflow: hidden;
    color: #111111;
    font-size: 22px;
    line-height: 1.12;
    letter-spacing: -0.04em;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .desktop-listing-list-card__description {
    display: -webkit-box;
    height: 57px;
    min-height: 57px;
    margin: 0;
    overflow: hidden;
    color: #57534e;
    font-size: 12px;
    line-height: 1.58;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  .desktop-listing-list-card__chips {
    display: flex;
    max-height: 54px;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 16px;
    overflow: hidden;
  }

  .desktop-listing-list-card__chips span {
    max-width: 100%;
    padding: 6px 10px;
    overflow: hidden;
    border-radius: 999px;
    background: #f3f2ef;
    color: #66615b;
    font-size: 10px;
    font-weight: 650;
    line-height: 1;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .desktop-listing-list-card__summary-footer {
    margin-top: auto;
  }

  .desktop-listing-list-card__location {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
    color: #6a6660;
    font-size: 11px;
    font-weight: 600;
  }

  .desktop-listing-list-card__location svg {
    flex: 0 0 auto;
  }

  .desktop-listing-list-card__price {
    display: grid;
    gap: 5px;
    margin-top: 14px;
  }

  .desktop-listing-list-card__price strong {
    color: #f4511e;
    font-size: 27px;
    line-height: 1;
    letter-spacing: -0.035em;
    white-space: nowrap;
  }

  .desktop-listing-list-card__price strong small {
    font-size: 14px;
    letter-spacing: 0;
  }

  .desktop-listing-list-card__price > span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #77736d;
    font-size: 10px;
    font-weight: 600;
  }

  .desktop-listing-list-card__engagement {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    margin: 12px 0 0;
    padding: 12px 0 0;
    border-top: 1px solid #ece9e3;
  }

  .desktop-listing-list-card__engagement > div {
    display: flex;
    min-width: 0;
    min-height: 44px;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
    padding: 2px 6px;
    border-radius: 8px;
    background: #fff4ed;
  }

  .desktop-listing-list-card__engagement svg {
    flex: 0 0 auto;
    color: #ff531d;
  }

  .desktop-listing-list-card__engagement > div > span {
    display: grid;
    min-width: 0;
    gap: 2px;
  }

  .desktop-listing-list-card__engagement small,
  .desktop-listing-list-card__engagement strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .desktop-listing-list-card__engagement small {
    color: #77736d;
    font-size: 8.5px;
    font-weight: 600;
  }

  .desktop-listing-list-card__engagement strong {
    color: #171717;
    font-size: 9.5px;
    font-weight: 800;
  }

  .desktop-listing-list-card__engagement > em {
    position: absolute;
    top: -7px;
    right: 0;
    padding: 0 3px;
    background: #ffffff;
    color: #99938c;
    font-size: 7px;
    font-style: normal;
    font-weight: 750;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  .desktop-listing-list-card__seller {
    display: flex;
    flex-direction: column;
  }

  .desktop-listing-list-card__seller-identity {
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: 48px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
    cursor: pointer;
  }

  .desktop-listing-list-card__seller-identity:disabled {
    color: inherit;
    cursor: default;
    opacity: 1;
  }

  .desktop-listing-list-card__seller-avatar {
    display: grid;
    width: 48px;
    height: 48px;
    overflow: hidden;
    place-items: center;
    border-radius: 50%;
    background: #ff4f16;
    color: #ffffff;
    font-size: 14px;
    font-weight: 850;
  }

  .desktop-listing-list-card__seller-avatar img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .desktop-listing-list-card__seller-copy {
    display: grid;
    min-width: 0;
    gap: 3px;
  }

  .desktop-listing-list-card__seller-identity strong,
  .desktop-listing-list-card__seller-identity small,
  .desktop-listing-list-card__seller-identity em {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .desktop-listing-list-card__seller-identity strong {
    color: #171717;
    font-size: 16px;
    line-height: 1.05;
  }

  .desktop-listing-list-card__seller-identity small {
    color: #77736d;
    font-size: 11px;
  }

  .desktop-listing-list-card__seller-identity em {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #66615b;
    font-size: 10px;
    font-style: normal;
    font-weight: 650;
  }

  .desktop-listing-list-card__seller-identity em i {
    display: block;
    width: 8px;
    height: 8px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: #1ead5a;
  }

  .desktop-listing-list-card__seller-identity em.is-inaktív i {
    background: #e09a19;
  }

  .desktop-listing-list-card__seller-identity em.is-eladott i {
    background: #8a867f;
  }

  .desktop-listing-list-card__seller-meta {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid #e4e6e8;
    color: #68635d;
    font-size: 11px;
    line-height: 1.45;
  }

  .desktop-listing-list-card__seller-meta span {
    color: #4d4944;
    font-weight: 750;
  }

  .desktop-listing-list-card__contact-actions {
    display: grid;
    gap: 9px;
    margin-top: auto;
    padding-top: 18px;
  }

  .desktop-listing-list-card__contact-actions button {
    display: inline-flex;
    width: 100%;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 10px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
  }

  .desktop-listing-list-card__message {
    border: 1px solid #ff4f16;
    background: #ff4f16;
    color: #ffffff;
  }

  .desktop-listing-list-card__phone {
    border: 1px solid #ff4f16;
    background: #ffffff;
    color: #f4511e;
  }

  .desktop-listing-list-card__phone:disabled {
    border-color: #dedbd5;
    color: #8a867f;
    cursor: not-allowed;
  }

  .desktop-listing-list-card__utility-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid #ece9e3;
  }

  .desktop-listing-list-card__utility-actions button {
    display: inline-flex;
    min-width: 0;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 0 8px;
    overflow: hidden;
    border: 1px solid #082b50;
    border-radius: 8px;
    background: #ffffff;
    color: #082b50;
    font-size: 12px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
  }

  .desktop-listing-list-card__utility-actions button:hover,
  .desktop-listing-list-card__utility-actions button.is-active {
    border-color: #ff4f16;
    color: #ff4f16;
  }

  .desktop-listing-list-card__utility-actions button:first-child {
    border-color: #082b50;
    background: #082b50;
    color: #ffffff;
  }

  .desktop-listing-list-card__utility-actions button:first-child:hover,
  .desktop-listing-list-card__utility-actions button:first-child.is-active {
    border-color: #ff4f16;
    background: #ff4f16;
    color: #ffffff;
  }

  .desktop-listing-list-card button:focus-visible {
    outline: 3px solid rgba(255, 90, 31, 0.24);
    outline-offset: 2px;
  }

  .desktop-listing-list-card__lightbox {
    position: fixed;
    z-index: 10000;
    inset: 0;
    display: grid;
    padding: 54px 76px;
    place-items: center;
    background: rgba(9, 10, 11, 0.95);
    cursor: default;
  }

  .desktop-listing-list-card__lightbox > img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }

  .desktop-listing-list-card__lightbox > button {
    position: absolute;
    z-index: 2;
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.58);
    color: #ffffff;
    cursor: pointer;
  }

  .desktop-listing-list-card__lightbox .is-close {
    top: 20px;
    right: 20px;
  }

  .desktop-listing-list-card__lightbox .is-previous {
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
  }

  .desktop-listing-list-card__lightbox .is-next {
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
  }

  .desktop-listing-list-card__lightbox > span {
    position: absolute;
    bottom: 20px;
    left: 50%;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.62);
    color: #ffffff;
    font-size: 11px;
    font-weight: 750;
    transform: translateX(-50%);
  }

  .desktop-listing-list-card--skeleton {
    min-height: 350px;
    cursor: default;
    animation: desktop-list-card-pulse 1.25s ease-in-out infinite alternate;
  }

  .desktop-listing-list-card--skeleton > span {
    display: block;
    border-radius: 11px;
    background: #efede9;
  }
}

@keyframes desktop-list-card-pulse {
  from { opacity: 0.55; }
  to { opacity: 1; }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .desktop-listing-list-card {
    grid-template-columns: repeat(3, 315px);
    gap: 10px;
    padding: 10px;
  }

  .desktop-listing-list-card__summary-copy h3 {
    font-size: 20px;
  }

  .desktop-listing-list-card__price strong {
    font-size: 24px;
  }

  .desktop-listing-list-card__chips span {
    padding-inline: 8px;
    font-size: 9px;
  }

  .desktop-listing-detail__layout {
    grid-template-columns: 220px minmax(0, 1fr) 280px;
    gap: 14px;
  }

  .desktop-listing-detail__gallery {
    grid-template-columns: minmax(0, 1fr) 72px;
  }

  .desktop-listing-detail__content-grid {
    grid-template-columns: 1fr;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .desktop-footer__inner {
    grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
    gap: 48px;
  }

  .desktop-footer__brand h3 {
    font-size: 24.3px;
  }

  .desktop-footer__links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 36px 28px;
  }
}

/* Mobile wheel facet drawer — first implementation: Felni category */
@media (max-width: 1023px) {
  .mobile-filter-layer {
    position: absolute;
    inset: 0;
    z-index: 450;
    pointer-events: none;
    visibility: hidden;
    transition: visibility 0s linear 280ms;
  }

  .mobile-filter-layer.open {
    pointer-events: auto;
    visibility: visible;
    transition-delay: 0s;
  }

  .mobile-filter-backdrop {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    padding: 0;
    background: rgba(0, 0, 0, 0.54);
    opacity: 0;
    transition: opacity 240ms ease;
    backdrop-filter: blur(2px);
  }

  .mobile-filter-layer.open .mobile-filter-backdrop {
    opacity: 1;
  }

  .mobile-filter-drawer {
    position: absolute;
    top: 0;
    right: 0;
    width: min(89%, 430px);
    height: 100%;
    background: linear-gradient(180deg, #151515 0%, #0b0b0b 100%);
    color: #ffffff;
    display: flex;
    flex-direction: column;
    transform: translateX(102%);
    transition: transform 300ms cubic-bezier(0.22, 1, 0.36, 1);
    box-shadow: -22px 0 60px rgba(0, 0, 0, 0.42);
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    overflow: hidden;
  }

  .mobile-filter-layer.open .mobile-filter-drawer {
    transform: translateX(0);
  }

  .mobile-filter-drawer__header {
    min-height: 74px;
    padding: max(14px, env(safe-area-inset-top)) 16px 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-shrink: 0;
  }

  .mobile-filter-drawer__header span {
    display: block;
    margin-bottom: 3px;
    color: #ff6a2f;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
  }

  .mobile-filter-drawer__header h3 {
    margin: 0;
    font-size: 24px;
    line-height: 1;
    letter-spacing: -0.035em;
  }

  .mobile-filter-drawer__header > button {
    width: 40px;
    height: 40px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.06);
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .mobile-filter-drawer__scroll {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 16px 16px 28px;
  }

  .mobile-filter-search {
    position: relative;
    min-height: 50px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.06);
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 14px;
  }

  .mobile-filter-search > svg {
    color: rgba(255, 255, 255, 0.54);
    flex-shrink: 0;
  }

  .mobile-filter-search input {
    min-width: 0;
    flex: 1;
    border: 0;
    outline: 0;
    background: transparent;
    color: #ffffff;
    font: inherit;
    font-size: 13px;
  }

  .mobile-filter-search input::placeholder {
    color: rgba(255, 255, 255, 0.4);
  }

  .mobile-filter-search:focus-within {
    border-color: rgba(255, 90, 31, 0.72);
    box-shadow: 0 0 0 3px rgba(255, 90, 31, 0.12);
  }

  .mobile-filter-search__suggestions {
    position: absolute;
    z-index: 20;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    padding: 6px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 14px;
    background: #202020;
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.36);
  }

  .mobile-filter-search__suggestions button {
    width: 100%;
    min-height: 42px;
    padding: 8px 10px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    text-align: left;
  }

  .mobile-filter-search__suggestions button:active {
    background: rgba(255, 255, 255, 0.08);
  }

  .mobile-filter-search__suggestions small {
    color: rgba(255, 255, 255, 0.46);
    white-space: nowrap;
  }

  .mobile-active-filter-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
  }

  .mobile-active-filter-chips button,
  .mobile-facet-chip {
    min-height: 36px;
    border-radius: 999px;
    font: inherit;
    font-size: 12px;
    font-weight: 700;
  }

  .mobile-active-filter-chips button {
    padding: 0 13px;
    border: 1px solid transparent;
    background: linear-gradient(135deg, #ff6a2f 0%, #ff4b12 100%);
    color: #ffffff;
    box-shadow: 0 6px 16px rgba(255, 90, 31, 0.18);
  }

  .mobile-filter-status {
    margin-top: 12px;
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.05);
    color: rgba(255, 255, 255, 0.6);
    font-size: 12px;
  }

  .mobile-filter-status--error {
    background: rgba(235, 87, 87, 0.12);
    color: #ffaaaa;
  }

  .mobile-filter-section {
    margin-top: 24px;
  }

  .mobile-filter-section .mobile-filter-section {
    margin-top: 12px;
  }

  .mobile-filter-section__heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 11px;
  }

  .mobile-filter-section h4 {
    margin: 0;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.3;
  }

  .mobile-filter-section__heading span,
  .mobile-filter-section__hint,
  .mobile-filter-section__empty {
    color: rgba(255, 255, 255, 0.46);
    font-size: 11px;
  }

  .mobile-filter-section__hint,
  .mobile-filter-section__empty {
    margin: 0 0 10px;
    line-height: 1.45;
  }

  .mobile-filter-section--grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .mobile-filter-select {
    display: flex;
    flex-direction: column;
    gap: 7px;
  }

  .mobile-filter-select span {
    color: rgba(255, 255, 255, 0.72);
    font-size: 12px;
    font-weight: 800;
  }

  .mobile-filter-select select {
    width: 100%;
    height: 46px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 13px;
    background: #1f1f1f;
    color: #ffffff;
    padding: 0 12px;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    outline: 0;
  }

  .mobile-filter-select select:focus {
    border-color: rgba(255, 90, 31, 0.72);
    box-shadow: 0 0 0 3px rgba(255, 90, 31, 0.12);
  }

  .mobile-filter-range {
    width: 100%;
    accent-color: #ff5a1f;
  }

  .mobile-facet-row {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding: 2px 2px 5px;
    margin: 0 -2px;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
  }

  .mobile-facet-row::-webkit-scrollbar {
    display: none;
  }

  .mobile-facet-chip {
    flex: 0 0 auto;
    scroll-snap-align: start;
    padding: 0 13px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: #2a2a2a;
    color: rgba(255, 255, 255, 0.82);
    display: inline-flex;
    align-items: center;
    gap: 7px;
  }

  .mobile-facet-chip small {
    color: rgba(255, 255, 255, 0.42);
    font-size: 10px;
  }

  .mobile-facet-chip.active {
    border-color: transparent;
    background: linear-gradient(135deg, #ff6a2f 0%, #ff4b12 100%);
    color: #ffffff;
  }

  .mobile-facet-chip.active small {
    color: rgba(255, 255, 255, 0.72);
  }

  .mobile-facet-chip:disabled {
    opacity: 0.28;
    cursor: not-allowed;
  }

  .mobile-filter-section--toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 16px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.035);
  }

  .mobile-filter-section--toggle p {
    margin: 5px 0 0;
    color: rgba(255, 255, 255, 0.46);
    font-size: 11px;
    line-height: 1.4;
  }

  .mobile-filter-section--toggle > button {
    position: relative;
    width: 48px;
    height: 28px;
    flex-shrink: 0;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #383838;
  }

  .mobile-filter-section--toggle > button span {
    position: absolute;
    top: 4px;
    left: 4px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #ffffff;
    transition: transform 180ms ease;
  }

  .mobile-filter-section--toggle > button.active {
    background: #ff5a1f;
  }

  .mobile-filter-section--toggle > button.active span {
    transform: translateX(20px);
  }

  .mobile-filter-results-bar {
    min-height: 74px;
    padding: 10px 14px max(10px, env(safe-area-inset-bottom));
    border-top: 1px solid rgba(255, 255, 255, 0.09);
    background: rgba(12, 12, 12, 0.96);
    display: grid;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.4fr);
    gap: 10px;
    align-items: center;
    flex-shrink: 0;
    backdrop-filter: blur(16px);
  }

  .mobile-filter-results-bar button {
    min-height: 48px;
    border-radius: 13px;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
  }

  .mobile-filter-results-bar__clear {
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: transparent;
    color: rgba(255, 255, 255, 0.72);
  }

  .mobile-filter-results-bar__apply {
    border: 0;
    background: linear-gradient(135deg, #ff6a2f 0%, #ff4b12 100%);
    color: #ffffff;
    box-shadow: 0 10px 24px rgba(255, 90, 31, 0.2);
  }

  .mobile-filter-placeholder {
    margin-top: 24px;
    padding: 18px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.05);
  }

  .mobile-filter-placeholder h4 {
    margin: 0 0 8px;
    font-size: 15px;
  }

  .mobile-filter-placeholder p {
    margin: 0;
    color: rgba(255, 255, 255, 0.52);
    font-size: 12px;
    line-height: 1.5;
  }

  @media (prefers-reduced-motion: reduce) {
    .mobile-filter-layer,
    .mobile-filter-backdrop,
    .mobile-filter-drawer,
    .mobile-filter-section--toggle > button span {
      transition: none;
    }
  }
}


/* Desktop hirdetésfeladás és fiók — 2026-07-14 */
@media (min-width: 1024px) {
  .ad-upload-wizard--desktop {
    width: calc(100% - 48px);
    max-width: 1600px;
    height: 100%;
    margin: 0 auto;
    padding: 26px 32px 22px !important;
    background:
      radial-gradient(circle at 12% 0%, rgba(255, 90, 31, 0.08), transparent 28%),
      linear-gradient(180deg, rgba(255, 255, 255, 0.012), transparent 32%);
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content {
    min-height: 0;
    padding: 4px 4px 28px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro {
    display: grid !important;
    grid-template-columns: minmax(250px, 0.72fr) minmax(340px, 1.08fr) minmax(320px, 1fr);
    gap: 24px !important;
    align-items: start;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro > div {
    min-width: 0;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(255, 90, 31, 0.045), rgba(255, 255, 255, 0.018));
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-2 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    align-items: start;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-2 > .ad-upload-step {
    min-width: 0;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 18px;
    background: linear-gradient(160deg, rgba(255, 90, 31, 0.04), rgba(255, 255, 255, 0.012));
  }

  .ad-upload-wizard--desktop .ad-upload-step--review {
    width: min(1180px, 100%);
    margin: 0 auto;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__footer {
    position: sticky;
    bottom: 0;
    z-index: 20;
    padding: 16px 0 2px !important;
    background: linear-gradient(180deg, rgba(7, 7, 8, 0.86), #070708 26%);
    backdrop-filter: blur(14px);
  }

  .profile-page--ads {
    width: calc(100% - 48px);
    max-width: 1500px;
    margin: 0 auto;
  }

  .profile-ads__header {
    min-height: 58px;
    padding: 0 4px 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  }

  .profile-ads__header h3 {
    text-align: left !important;
    margin: 0 0 0 18px !important;
    font-size: 24px !important;
    font-weight: 750 !important;
  }

  .profile-ads__tabs {
    width: min(720px, 100%);
    min-height: 48px;
    margin: 18px 0 20px !important;
    padding: 4px !important;
    border: 1px solid rgba(255, 255, 255, 0.07);
    background: rgba(255, 255, 255, 0.035) !important;
  }

  .profile-ads__tabs button {
    font-size: 13px !important;
  }

  .profile-ads__list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: start;
    gap: 16px !important;
    padding: 6px 4px 96px !important;
  }

  .profile-ads__card {
    min-height: 106px;
    padding: 16px !important;
    border-radius: 18px !important;
    background: linear-gradient(145deg, #121214, #0d0d0f) !important;
  }

  .profile-ads__card img {
    width: 100%;
    height: 100%;
  }

  .profile-ads__list > .empty-my-ads {
    grid-column: 1 / -1;
    min-height: 430px;
    height: auto !important;
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 22px;
    background:
      radial-gradient(circle at 50% 28%, rgba(255, 90, 31, 0.09), transparent 32%),
      rgba(255, 255, 255, 0.012);
  }

  .profile-ads__new-action {
    left: auto !important;
    right: 4px;
    width: 330px !important;
  }
}

@media (min-width: 1024px) and (max-width: 1240px) {
  .ad-upload-wizard--desktop .ad-upload-step--intro {
    grid-template-columns: 0.8fr 1.2fr;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro > :last-child {
    grid-column: 1 / -1;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ad-upload-wizard--desktop .ad-upload-step--commercial {
    grid-column: 1 / -1;
  }
}

/* Desktop hirdetésfeladás — prémium 3 lépéses alkalmazásnézet */
@media (min-width: 1024px) {
  .ad-upload-wizard--desktop {
    --ad-panel: linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.018));
    --ad-border: rgba(255, 255, 255, 0.10);
    width: min(1360px, calc(100% - 72px));
    max-width: 1360px;
    min-height: calc(100vh - 72px);
    height: auto;
    padding: 28px 0 20px !important;
    background: radial-gradient(circle at 4% 10%, rgba(255, 79, 0, 0.12), transparent 30%);
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__heading {
    position: relative;
    justify-content: center;
    margin: 0 0 26px !important;
    padding: 0 0 10px !important;
    border: 0 !important;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__heading > button {
    position: absolute;
    left: 0;
    top: 4px;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 50%;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__heading > div:nth-child(2) {
    flex: none !important;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__title {
    display: block;
    color: #fff !important;
    font-size: 28px !important;
    font-weight: 760 !important;
    letter-spacing: -0.5px;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__step-count {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    margin-top: 12px !important;
    padding: 0 24px;
    color: #ff5a00 !important;
    font-size: 14px !important;
    border: 1px solid var(--ad-border);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.025);
  }

  .ad-upload-wizard--desktop .ad-upload-stepper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 !important;
    width: min(940px, 82%);
    margin: 0 auto 38px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-stepper__item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
  }

  .ad-upload-wizard--desktop .ad-upload-stepper__track {
    position: absolute;
    z-index: 0;
    top: 17px;
    left: calc(50% + 24px);
    width: calc(100% - 48px);
    height: 3px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.13);
  }

  .ad-upload-wizard--desktop .ad-upload-stepper__item:last-child .ad-upload-stepper__track {
    display: none;
  }

  .ad-upload-wizard--desktop .ad-upload-stepper__item.is-complete .ad-upload-stepper__track {
    background: #ff5a00;
  }

  .ad-upload-wizard--desktop .ad-upload-stepper__number {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    color: #8d8d8d;
    font-size: 14px;
    font-weight: 750;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 50%;
    background: #171719;
  }

  .ad-upload-wizard--desktop .ad-upload-stepper__item.is-active .ad-upload-stepper__number {
    color: #fff;
    border-color: #ff5a00;
    background: linear-gradient(135deg, #ff7900, #ff4f00);
    box-shadow: 0 0 24px rgba(255, 90, 0, 0.24);
  }

  .ad-upload-wizard--desktop .ad-upload-stepper__item.is-complete .ad-upload-stepper__number {
    color: #fff;
    border-color: rgba(255, 90, 0, 0.5);
  }

  .ad-upload-wizard--desktop .ad-upload-stepper__item strong {
    margin-top: 12px;
    color: #888;
    font-size: 13px;
    font-weight: 600;
  }

  .ad-upload-wizard--desktop .ad-upload-stepper__item.is-active strong,
  .ad-upload-wizard--desktop .ad-upload-stepper__item.is-complete strong {
    color: #ff5a00;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content {
    overflow: visible !important;
    padding: 0 6px 110px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro {
    grid-template-columns: minmax(300px, 0.94fr) minmax(360px, 1.1fr) minmax(320px, 0.96fr);
    gap: 20px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro > div,
  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-2 > .ad-upload-step,
  .ad-upload-wizard--desktop .ad-upload-desktop-summary,
  .ad-upload-wizard--desktop .ad-upload-desktop-assist > div,
  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-3 > .ad-upload-step {
    padding: 24px !important;
    border: 1px solid var(--ad-border) !important;
    border-radius: 22px !important;
    background: var(--ad-panel) !important;
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.02);
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro > div:first-child > div:last-child > div {
    position: relative;
    min-height: 148px;
    justify-content: center;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro > div:first-child > div:last-child > div:hover {
    transform: translateY(-2px);
    background: rgba(255, 90, 0, 0.055) !important;
  }

  .ad-upload-category-check {
    position: absolute;
    top: 8px;
    right: 8px;
    display: grid;
    place-items: center;
    width: 22px;
    height: 22px;
    color: #fff;
    border-radius: 50%;
    background: #ff5a00;
  }

  .ad-upload-panel-copy {
    margin: -4px 0 18px;
    color: #969696;
    font-size: 12px;
    line-height: 1.5;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro textarea {
    height: 118px !important;
    padding: 16px !important;
  }

  .ad-upload-file-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
  }

  .ad-upload-file-meta span {
    padding: 6px 10px;
    color: #9c9c9c;
    font-size: 10px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.025);
  }

  .ad-upload-title-tip {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin-top: 18px;
    padding: 14px 16px;
    color: #9c9c9c;
    font-size: 11px;
    line-height: 1.5;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.02);
  }

  .ad-upload-title-tip strong {
    color: #ff5a00;
    font-size: 12px;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-2 {
    display: grid;
    grid-template-columns: minmax(230px, 0.72fr) minmax(500px, 1.55fr) minmax(270px, 0.86fr);
    grid-template-areas: "summary specs assist" "summary details assist";
    gap: 20px;
  }

  .ad-upload-desktop-summary { grid-area: summary; }
  .ad-upload-step--specs { grid-area: specs; }
  .ad-upload-step--details { grid-area: details; }
  .ad-upload-desktop-assist { grid-area: assist; }

  .ad-upload-desktop-summary,
  .ad-upload-desktop-assist {
    min-width: 0;
  }

  .ad-upload-desktop-summary h3,
  .ad-upload-desktop-assist h3 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 16px;
  }

  .ad-upload-desktop-summary__label {
    display: block;
    margin: 14px 0 8px;
    color: #858585;
    font-size: 11px;
  }

  .ad-upload-desktop-summary__category {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 7px 12px 7px 7px;
    color: #ff5a00;
    border: 1px solid rgba(255, 90, 0, 0.34);
    border-radius: 12px;
  }

  .ad-upload-desktop-summary__category img {
    width: 28px;
    height: 28px;
    object-fit: cover;
    border-radius: 8px;
  }

  .ad-upload-desktop-summary__divider {
    height: 1px;
    margin: 18px 0;
    background: rgba(255, 255, 255, 0.08);
  }

  .ad-upload-desktop-summary__images {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .ad-upload-desktop-summary__images img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 12px;
  }

  .ad-upload-desktop-summary > button {
    width: 100%;
    margin-top: 10px;
    padding: 10px;
    color: #ff5a00;
    font-weight: 650;
    border: 1px solid rgba(255, 90, 0, 0.35);
    border-radius: 10px;
    background: transparent;
    cursor: pointer;
  }

  .ad-upload-desktop-summary > p {
    margin: 0;
    color: #fff;
    font-size: 13px;
    line-height: 1.45;
  }

  .ad-upload-desktop-assist {
    display: flex;
    flex-direction: column;
    gap: 18px;
  }

  .ad-upload-desktop-tips p {
    position: relative;
    margin: 0;
    padding: 12px 0 12px 18px;
    color: #aaa;
    font-size: 11px;
    line-height: 1.5;
    border-top: 1px solid rgba(255, 255, 255, 0.07);
  }

  .ad-upload-desktop-tips p::before {
    content: "";
    position: absolute;
    left: 0;
    top: 18px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ff5a00;
  }

  .ad-upload-desktop-preview > div {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
    padding: 10px;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 14px;
  }

  .ad-upload-desktop-preview img {
    width: 72px;
    height: 72px;
    object-fit: cover;
    border-radius: 10px;
  }

  .ad-upload-desktop-preview section {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
  }

  .ad-upload-desktop-preview strong {
    color: #fff;
    font-size: 12px;
    line-height: 1.35;
  }

  .ad-upload-desktop-preview b { color: #ff5a00; font-size: 12px; }
  .ad-upload-desktop-preview span { color: #888; font-size: 9px; }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-3 {
    display: grid;
    grid-template-columns: minmax(420px, 0.92fr) minmax(540px, 1.08fr);
    grid-template-areas: "review commercial";
    gap: 22px;
    align-items: start;
  }

  .ad-upload-wizard--desktop .ad-upload-step--review {
    grid-area: review;
    width: auto;
    margin: 0;
  }

  .ad-upload-wizard--desktop .ad-upload-step--commercial {
    grid-area: commercial;
  }

  .ad-upload-trust-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .ad-upload-trust-row > span {
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 13px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.02);
  }

  .ad-upload-trust-row strong { color: #fff; font-size: 12px; }
  .ad-upload-trust-row small { color: #8e8e8e; font-size: 10px; line-height: 1.4; }

  .ad-upload-wizard--desktop .ad-upload-wizard__footer {
    position: sticky;
    bottom: 0;
    z-index: 30;
    min-height: 92px;
    margin-top: auto;
    padding: 14px 6px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.09) !important;
    background: linear-gradient(180deg, rgba(5, 5, 5, 0.82), #050505 25%) !important;
    backdrop-filter: blur(18px);
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__footer button {
    min-height: 64px;
    border-radius: 16px;
    font-size: 16px;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__footer .btn-primary {
    background: linear-gradient(90deg, #ff7900, #ff4f00);
    box-shadow: 0 12px 32px rgba(255, 79, 0, 0.24);
  }
}

@media (min-width: 1024px) and (max-width: 1199px) {
  .ad-upload-wizard--desktop {
    width: min(100% - 40px, 1120px);
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro > :last-child {
    grid-column: 1 / -1;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-2 {
    grid-template-columns: minmax(220px, 0.7fr) minmax(500px, 1.3fr);
    grid-template-areas: "summary specs" "summary details" "assist assist";
  }

  .ad-upload-desktop-assist {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-3 {
    grid-template-columns: 1fr;
    grid-template-areas: "review" "commercial";
  }
}

/* Desktop upload usability polish — 2026-07-15 */
@media (min-width: 1024px) {
  .ad-upload-wizard--desktop .ad-upload-stepper {
    margin-bottom: 14px !important;
  }

  .ad-upload-desktop-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin: 0 6px 18px;
  }

  .ad-upload-desktop-actions button {
    width: auto;
    min-width: 148px;
    min-height: 46px;
    padding: 0 22px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 700;
  }

  .ad-upload-desktop-actions .btn-secondary {
    min-width: 112px;
  }

  .ad-upload-desktop-actions .btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: linear-gradient(90deg, #ff6f00, #ff4f00);
    box-shadow: 0 8px 22px rgba(255, 79, 0, 0.18);
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content {
    padding-bottom: 28px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__footer {
    display: none !important;
  }

  .ad-upload-wizard--desktop .ad-upload-dropzone {
    min-height: 78px !important;
    padding: 14px 16px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-dropzone svg {
    width: 22px;
    height: 22px;
  }

  .ad-upload-add-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: 100%;
    min-height: 40px;
    margin-bottom: 12px;
    color: #000;
    font-size: 12px;
    font-weight: 650;
    border: 1px dashed rgba(255, 90, 0, 0.58);
    border-radius: 11px;
    background: rgba(255, 90, 0, 0.055);
    cursor: pointer;
  }

  .ad-upload-add-more:hover {
    border-color: #ff5a00;
    background: rgba(255, 90, 0, 0.10);
  }

  .ad-upload-wizard--desktop .ad-upload-image-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-image-grid img {
    object-fit: contain !important;
    background: #090909;
  }

  .ad-upload-wizard--desktop .ad-upload-title-tip {
    flex-direction: row;
    align-items: center;
    gap: 7px;
    margin-top: 12px;
    padding: 10px 12px;
    color: #d0d0d0;
    font-size: 11px;
    line-height: 1.35;
    background: rgba(255, 255, 255, 0.045);
  }

  .ad-upload-wizard--desktop .ad-upload-title-tip strong {
    flex-shrink: 0;
    color: #ff6a00;
  }

  .ad-upload-wizard--desktop .ad-upload-desktop-tips p {
    color: #d0d0d0;
    font-size: 12px;
    line-height: 1.55;
  }

  .ad-upload-wizard--desktop .ad-upload-desktop-tips h3 {
    color: #fff;
  }

  .ad-upload-wizard--desktop .ad-upload-step--details textarea {
    height: 82px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-condition-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-condition-grid > div {
    min-height: 64px;
    padding: 10px 12px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content {
    order: 1;
  }

  .ad-upload-wizard--desktop .ad-upload-desktop-actions {
    order: 2;
    align-self: flex-end;
    margin: 16px 6px 4px;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro {
    align-items: stretch;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro > div {
    height: 100%;
    box-sizing: border-box;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro textarea {
    height: 94px !important;
  }
}

/* Desktop hirdetésfeladás — végleges 4 lépéses felülírás — 2026-07-15 */
@media (min-width: 1024px) {
  .ad-upload-wizard--desktop .ad-upload-stepper {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: min(1080px, 86%);
  }

  .ad-upload-wizard--desktop .ad-upload-desktop-actions {
    width: calc(100% - 12px);
    align-self: stretch;
    justify-content: space-between;
    box-sizing: border-box;
  }

  .ad-upload-wizard--desktop .ad-upload-desktop-actions .btn-primary { margin-left: auto; }

  .ad-upload-wizard--desktop .ad-upload-image-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro input[type="text"] {
    height: 52px !important;
    min-height: 52px;
    max-height: 52px;
    white-space: nowrap;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-2 {
    display: grid;
    grid-template-columns: minmax(340px, 0.76fr) minmax(620px, 1.24fr);
    grid-template-areas: "specs details";
    gap: 20px;
    align-items: stretch;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-2 > .ad-upload-step {
    height: 100%;
    padding: 20px !important;
    box-sizing: border-box;
  }

  .ad-upload-wizard--desktop .ad-upload-step--specs,
  .ad-upload-wizard--desktop .ad-upload-step--details { gap: 12px !important; }

  .ad-upload-wizard--desktop .ad-upload-step--details textarea { height: 72px !important; }

  .ad-upload-wizard--desktop .ad-upload-condition-grid > div {
    min-height: 56px;
    padding: 8px 11px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-3,
  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-4 { display: block; }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-3 > .ad-upload-step--commercial {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 18px !important;
    width: 100%;
    max-width: none;
    padding: 20px 24px !important;
    box-sizing: border-box;
  }

  .ad-upload-wizard--desktop .ad-upload-step--commercial > div:first-child { grid-column: 1 / -1; }
  .ad-upload-wizard--desktop .ad-upload-step--commercial .form-input { height: 44px; }
  .ad-upload-wizard--desktop .ad-upload-step--commercial .ad-upload-trust-row { height: 100%; }

  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-4 > .ad-upload-step--review {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 20px 24px !important;
    border: 1px solid var(--ad-border) !important;
    border-radius: 22px !important;
    background: var(--ad-panel) !important;
    box-sizing: border-box;
  }
}

/* Desktop hirdetésfeltöltés — kényelmes munkafelület — 2026-07-21 */
@media (min-width: 1024px) {
  .ad-upload-wizard--desktop {
    width: min(1480px, calc(100% - 56px));
    max-width: 1480px;
    min-height: calc(100vh - 52px);
    padding: 28px 0 30px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__heading,
  .ad-upload-wizard--desktop .ad-upload-stepper,
  .ad-upload-wizard--desktop .ad-upload-desktop-actions,
  .ad-upload-wizard--desktop .ad-upload-wizard__content--step-1 {
    width: min(1280px, 100%);
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__heading {
    margin-bottom: 18px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-stepper {
    width: min(1040px, 78%);
    margin-bottom: 20px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__content {
    order: 0;
  }

  .ad-upload-wizard--desktop .ad-upload-desktop-actions {
    order: 0;
    align-self: auto;
    justify-content: flex-end;
    margin-top: -2px !important;
    margin-bottom: 18px !important;
    padding: 0;
  }

  .ad-upload-wizard--desktop .ad-upload-desktop-actions button {
    min-width: 172px;
    min-height: 52px;
    border-radius: 14px;
    font-size: 14px;
  }

  .ad-upload-wizard--desktop .ad-upload-step--intro {
    display: grid !important;
    grid-template-columns: minmax(270px, 0.72fr) minmax(520px, 1.42fr) minmax(340px, 0.9fr);
    gap: 22px !important;
    align-items: stretch;
  }

  .ad-upload-wizard--desktop .ad-upload-intro-panel,
  .ad-upload-wizard--desktop .ad-upload-step--intro > .ad-upload-intro-panel {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 430px;
    padding: 26px !important;
    border: 1px solid rgba(255, 255, 255, 0.11) !important;
    border-radius: 24px !important;
    background:
      linear-gradient(145deg, rgba(255, 255, 255, 0.058), rgba(255, 255, 255, 0.018)),
      radial-gradient(circle at 0% 0%, rgba(255, 90, 0, 0.09), transparent 38%) !important;
    box-shadow:
      0 20px 60px rgba(0, 0, 0, 0.24),
      inset 0 1px rgba(255, 255, 255, 0.035) !important;
    box-sizing: border-box;
  }

  .ad-upload-wizard--desktop .ad-upload-intro-panel--photos,
  .ad-upload-wizard--desktop .ad-upload-intro-panel--details {
    min-height: 486px;
  }

  .ad-upload-wizard--desktop .ad-upload-intro-panel .form-label {
    color: #fff;
    font-size: 14px;
    font-weight: 760;
  }

  .ad-upload-wizard--desktop .ad-upload-panel-copy {
    margin: -2px 0 18px;
    color: #aaa;
    font-size: 13px;
  }

  .ad-upload-wizard--desktop .ad-upload-category-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin-top: auto;
  }

  .ad-upload-wizard--desktop .ad-upload-category-card,
  .ad-upload-wizard--desktop .ad-upload-step--intro > div:first-child > div:last-child > .ad-upload-category-card {
    position: relative;
    flex-direction: row !important;
    justify-content: flex-start !important;
    min-height: 92px !important;
    padding: 16px 18px !important;
    gap: 16px;
    text-align: left !important;
    border-radius: 18px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-category-card.is-selected {
    background: linear-gradient(135deg, rgba(255, 90, 0, 0.16), rgba(255, 90, 0, 0.04)) !important;
    box-shadow: 0 12px 30px rgba(255, 90, 0, 0.09);
  }

  .ad-upload-wizard--desktop .ad-upload-category-card__image {
    width: 70px !important;
    height: 70px !important;
    flex: 0 0 70px;
    margin: 0 !important;
    border-radius: 16px;
    background: rgba(0, 0, 0, 0.22);
  }

  .ad-upload-wizard--desktop .ad-upload-category-card span:not(.ad-upload-category-check) {
    font-size: 14px !important;
    letter-spacing: 0.2px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-dropzone {
    min-height: 330px !important;
    flex: 1;
    padding: 34px 28px !important;
    border-radius: 22px !important;
    background:
      linear-gradient(145deg, rgba(255, 90, 0, 0.08), rgba(255, 255, 255, 0.022)) !important;
  }

  .ad-upload-wizard--desktop .ad-upload-dropzone svg {
    width: 34px;
    height: 34px;
  }

  .ad-upload-wizard--desktop .ad-upload-add-more {
    min-height: 48px;
    margin: 4px 0 16px;
    border-radius: 14px;
    font-size: 13px;
  }

  .ad-upload-wizard--desktop .ad-upload-image-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-auto-rows: minmax(82px, 1fr);
    gap: 12px !important;
    margin-bottom: 16px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-image-grid > div {
    min-height: 108px;
    border-radius: 16px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-image-grid > div:first-child {
    grid-column: span 2;
    grid-row: span 2;
    min-height: 228px;
  }

  .ad-upload-wizard--desktop .ad-upload-image-grid img {
    object-fit: contain !important;
    background: #080808;
  }

  .ad-upload-wizard--desktop .ad-upload-file-meta {
    margin-top: auto;
  }

  .ad-upload-wizard--desktop .ad-upload-file-meta span {
    font-size: 11px;
    padding: 7px 12px;
  }

  .ad-upload-wizard--desktop .ad-upload-intro-panel--details {
    justify-content: flex-start;
  }

  .ad-upload-wizard--desktop .ad-upload-intro-panel--details input[type="text"] {
    height: 58px !important;
    min-height: 58px;
    max-height: 58px;
    padding: 0 16px !important;
    font-size: 15px;
  }

  .ad-upload-wizard--desktop .ad-upload-title-tip {
    margin-top: 16px;
    padding: 14px 15px;
    border-radius: 14px;
  }

  .ad-upload-wizard--desktop .ad-upload-ai-panel {
    margin-top: 18px !important;
    padding: 16px !important;
    border-radius: 18px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-ai-panel > div:first-child {
    min-height: 28px;
  }

  .ad-upload-wizard--desktop .ad-upload-ai-panel span {
    line-height: 1.25;
  }
}

@media (min-width: 1024px) and (max-width: 1260px) {
  .ad-upload-wizard--desktop .ad-upload-step--intro {
    grid-template-columns: minmax(260px, 0.78fr) minmax(440px, 1.22fr);
  }

  .ad-upload-wizard--desktop .ad-upload-intro-panel--details {
    grid-column: 1 / -1;
    min-height: 0;
  }
}

/* Desktop hirdetésfeltöltés — tiszta fekete munkafelület és fejlécbe emelt CTA — 2026-07-22 */
@media (min-width: 1024px) {
  .felni-tab-panel--ad-upload,
  .ad-upload-wizard--desktop {
    background: #000 !important;
    background-image: none !important;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__heading {
    min-height: 52px;
    margin-bottom: 14px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__heading {
    display: grid !important;
    grid-template-columns: minmax(148px, 1fr) auto minmax(148px, 1fr);
    align-items: start !important;
    column-gap: 24px;
  }

  .ad-upload-wizard--desktop .ad-upload-heading-center {
    grid-column: 2;
    justify-self: center;
    flex: none !important;
  }

  .ad-upload-wizard--desktop .ad-upload-heading-action {
    display: flex;
    width: 100%;
    margin: 0;
    padding: 0;
  }

  .ad-upload-wizard--desktop .ad-upload-heading-action--left {
    grid-column: 1;
    justify-content: flex-start;
  }

  .ad-upload-wizard--desktop .ad-upload-heading-action--right {
    grid-column: 3;
    justify-content: flex-end;
  }

  .ad-upload-wizard--desktop .ad-upload-heading-action button {
    width: auto;
    min-width: 148px;
    min-height: 48px;
    height: 48px;
    padding: 0 22px;
    border-radius: 13px;
    font-size: 14px;
    font-weight: 700;
  }

  .ad-upload-wizard--desktop .ad-upload-heading-action--left button {
    min-width: 108px;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__heading > .ad-upload-desktop-actions--heading {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    width: auto;
    margin: 0 !important;
    padding: 0;
    align-self: auto;
    justify-content: flex-end;
    gap: 10px;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__heading > .ad-upload-desktop-actions--heading button {
    min-width: 148px;
    min-height: 48px;
    height: 48px;
    padding: 0 22px;
    border-radius: 13px;
    font-size: 14px;
  }

  .ad-upload-wizard--desktop .ad-upload-wizard__heading > .ad-upload-desktop-actions--heading .btn-secondary {
    min-width: 108px;
  }

  .ad-upload-wizard--desktop .ad-upload-stepper {
    margin-bottom: 18px !important;
  }

  .ad-upload-wizard--desktop .ad-upload-intro-panel,
  .ad-upload-wizard--desktop .ad-upload-step--intro > .ad-upload-intro-panel {
    background: #000 !important;
    background-image: none !important;
  }

  .ad-upload-wizard--desktop .ad-upload-dropzone,
  .ad-upload-wizard--desktop .ad-upload-category-card,
  .ad-upload-wizard--desktop .ad-upload-category-card.is-selected,
  .ad-upload-wizard--desktop .ad-upload-intro-panel--details input[type="text"] {
    background: #000 !important;
    background-image: none !important;
  }
}

/* Kedvencek — mobil alapnézet és adatdús desktop lista — 2026-07-22 */
.favorites-page {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 100%;
  padding: 16px 16px 20px;
  color: #fff;
}

.favorites-page__header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
}

.favorites-page__back,
.favorites-page__mobile-filter,
.favorite-card__remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  cursor: pointer;
}

.favorites-page__back {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
}

.favorites-page__heading-copy {
  min-width: 0;
  flex: 1;
}

.favorites-page__eyebrow,
.favorites-page__heading-copy p,
.favorites-page__saved-count,
.favorites-toolbar__result-count,
.favorite-card__meta,
.favorite-card__specification,
.favorite-card__type {
  display: none;
}

.favorites-page__heading-copy h1 {
  margin: 0;
  font-size: 22px;
  font-weight: 700;
}

.favorites-page__mobile-filter {
  padding: 6px;
  color: var(--medium-grey);
  border: 0;
  background: transparent;
}

.favorites-toolbar {
  margin-bottom: 20px;
}

.favorites-toolbar__search {
  position: relative;
  display: flex;
  align-items: center;
}

.favorites-toolbar__search > svg {
  position: absolute;
  left: 14px;
  z-index: 1;
  color: var(--medium-grey);
  pointer-events: none;
}

.favorites-toolbar__search input {
  width: 100%;
  height: 42px;
  padding: 0 14px 0 42px;
  color: #fff;
  font: inherit;
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  outline: none;
  background: var(--input-bg);
}

.favorites-toolbar__search input:focus-visible {
  border-color: var(--primary-orange);
  box-shadow: 0 0 0 3px rgba(255, 90, 0, 0.16);
}

.favorites-page__content {
  flex: 1;
  padding-bottom: 20px;
}

.favorites-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.favorite-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--glass-border);
  border-radius: 16px;
  background: #111113;
}

.favorite-card__open {
  display: flex;
  width: 100%;
  height: 100%;
  min-width: 0;
  padding: 0;
  flex-direction: column;
  color: inherit;
  text-align: left;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.favorite-card__media {
  position: relative;
  width: 100%;
  height: 120px;
  overflow: hidden;
}

.favorite-card__media::after {
  position: absolute;
  inset: auto 0 0;
  height: 40%;
  background: linear-gradient(to top, rgba(17, 17, 19, 0.9), transparent);
  content: '';
}

.favorite-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.favorite-card__remove {
  position: absolute;
  z-index: 3;
  top: 8px;
  right: 8px;
  width: 30px;
  height: 30px;
  color: var(--red-accent);
  border: 0;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.favorite-card__body {
  display: flex;
  min-width: 0;
  padding: 10px;
  flex: 1;
  flex-direction: column;
}

.favorite-card__body h2 {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 0 8px;
  color: #fff;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.3;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.favorite-card__footer {
  display: flex;
  margin-top: auto;
  flex-direction: column-reverse;
  align-items: flex-start;
  gap: 6px;
}

.favorite-card__location {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 4px;
  color: var(--medium-grey);
  font-size: 10px;
}

.favorite-card__location span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.favorite-card__price {
  color: var(--primary-orange);
  font-size: 15px;
}

.favorites-empty-state {
  display: flex;
  min-height: 320px;
  padding: 48px 20px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: var(--medium-grey);
  text-align: center;
}

.favorites-empty-state__icon {
  display: grid;
  width: 68px;
  height: 68px;
  margin-bottom: 16px;
  place-items: center;
  color: rgba(255, 90, 0, 0.65);
  border: 1px solid rgba(255, 90, 0, 0.18);
  border-radius: 50%;
  background: rgba(255, 90, 0, 0.07);
}

.favorites-empty-state h2 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 19px;
}

.favorites-empty-state p {
  max-width: 420px;
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
}

.favorites-empty-state__browse {
  display: none;
}

@media (min-width: 1024px) {
  .desktop-outer > .app-container.app-container--desktop-favorites {
    flex: 1 1 auto;
    width: 100vw !important;
    max-width: none !important;
    color: #171717;
    background: #fff !important;
    background-image: none !important;
  }

  .felni-tab-panel--favorites {
    color: #171717;
    background: #fff;
  }

  .favorites-page {
    width: min(calc(100% - 64px), var(--desktop-marketplace-content-width));
    min-height: auto;
    margin: 0 auto;
    padding: 38px 0 56px;
    color: #171717;
  }

  .favorites-page__header {
    min-height: 72px;
    margin-bottom: 26px;
    gap: 16px;
  }

  .favorites-page__back {
    width: 46px;
    height: 46px;
    flex-basis: 46px;
    color: #171717;
    border-color: #e2ddd6;
    background: #fff;
    box-shadow: 0 8px 24px rgba(23, 23, 23, 0.06);
    transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
  }

  .favorites-page__back:hover {
    border-color: rgba(255, 90, 0, 0.55);
    background: #fff4ee;
    transform: translateX(-2px);
  }

  .favorites-page__heading-copy h1 {
    color: #171717;
    font-size: 30px;
    letter-spacing: -0.5px;
  }

  .favorites-page__eyebrow {
    display: block;
    margin-bottom: 4px;
    color: var(--primary-orange);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: 1.4px;
    text-transform: uppercase;
  }

  .favorites-page__heading-copy p {
    display: block;
    margin: 6px 0 0;
    color: #77716a;
    font-size: 13px;
  }

  .favorites-page__saved-count {
    display: inline-flex;
    min-height: 44px;
    padding: 0 17px;
    align-items: center;
    gap: 8px;
    color: #ff6a1f;
    border: 1px solid rgba(255, 90, 0, 0.28);
    border-radius: 999px;
    background: rgba(255, 90, 0, 0.07);
  }

  .favorites-page__saved-count strong {
    color: #171717;
    font-size: 15px;
  }

  .favorites-page__saved-count span {
    color: #77716a;
    font-size: 12px;
  }

  .favorites-page__mobile-filter {
    display: none;
  }

  .favorites-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: 72px;
    margin-bottom: 22px;
    padding: 12px 14px;
    align-items: center;
    gap: 18px;
    border: 1px solid #e8e3dc;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 40px rgba(23, 23, 23, 0.06);
  }

  .favorites-toolbar__search {
    max-width: 760px;
  }

  .favorites-toolbar__search input {
    height: 46px;
    padding-left: 46px;
    color: #171717;
    border-color: #ded8cf;
    border-radius: 12px;
    background: #fff;
  }

  .favorites-toolbar__search > svg {
    color: #8c867f;
  }

  .favorites-toolbar__search input::placeholder {
    color: #aaa49c;
  }

  .favorites-toolbar__result-count {
    display: flex;
    min-width: 112px;
    padding-right: 8px;
    align-items: baseline;
    justify-content: flex-end;
    gap: 6px;
  }

  .favorites-toolbar__result-count strong {
    color: #171717;
    font-size: 18px;
  }

  .favorites-toolbar__result-count span {
    color: #77716a;
    font-size: 12px;
  }

  .favorites-page__content {
    padding-bottom: 0;
  }

  .favorites-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }

  .favorite-card {
    min-height: 224px;
    color: #171717;
    border-color: #e8e3dc;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(23, 23, 23, 0.08);
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  }

  .favorite-card:hover {
    border-color: rgba(255, 90, 0, 0.42);
    box-shadow: 0 22px 56px rgba(23, 23, 23, 0.13);
    transform: translateY(-2px);
  }

  .favorite-card__open {
    display: grid;
    grid-template-columns: minmax(205px, 42%) minmax(0, 1fr);
  }

  .favorite-card__open:focus-visible {
    outline: 2px solid var(--primary-orange);
    outline-offset: -3px;
  }

  .favorite-card__media {
    height: 100%;
    min-height: 224px;
  }

  .favorite-card__media::after {
    inset: 0 0 0 auto;
    width: 26%;
    height: 100%;
    background: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.94));
  }

  .favorite-card__type {
    position: absolute;
    z-index: 2;
    left: 14px;
    bottom: 14px;
    display: inline-flex;
    min-height: 27px;
    padding: 0 10px;
    align-items: center;
    color: #fff;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: 0.7px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.72);
    backdrop-filter: blur(8px);
    text-transform: uppercase;
  }

  .favorite-card__remove {
    top: 14px;
    right: 14px;
    width: 36px;
    height: 36px;
    transition: color 0.2s ease, transform 0.2s ease;
  }

  .favorite-card__remove:hover {
    color: #d94040;
    transform: scale(1.07);
  }

  .favorite-card__remove:focus-visible,
  .favorites-page__back:focus-visible {
    outline: 2px solid var(--primary-orange);
    outline-offset: 3px;
  }

  .favorite-card__body {
    padding: 22px 58px 20px 22px;
  }

  .favorite-card__meta {
    display: flex;
    margin-bottom: 12px;
    align-items: center;
    gap: 7px;
    color: #8c8c91;
    font-size: 11px;
    font-weight: 650;
    text-transform: uppercase;
  }

  .favorite-card__meta span:first-child {
    color: #ff6a1f;
  }

  .favorite-card__body h2 {
    margin-bottom: 10px;
    color: #171717;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.32;
  }

  .favorite-card__specification {
    display: block;
    margin: 0 0 18px;
    color: #77716a;
    font-size: 12px;
    line-height: 1.45;
  }

  .favorite-card__footer {
    flex-direction: column;
    gap: 11px;
  }

  .favorite-card__location {
    width: 100%;
    color: #77716a;
    font-size: 11px;
  }

  .favorite-card__price {
    color: #ff6418;
    font-size: 20px;
    line-height: 1;
  }

  .favorites-empty-state {
    min-height: 316px;
    padding: 44px 24px;
    border: 1px solid #e8e3dc;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 52px rgba(23, 23, 23, 0.06);
  }

  .favorites-empty-state h2 {
    color: #171717;
    font-size: 23px;
  }

  .favorites-empty-state p {
    color: #77716a;
    font-size: 14px;
  }

  .favorites-empty-state__browse {
    display: inline-flex;
    min-height: 44px;
    margin-top: 22px;
    padding: 0 18px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #fff;
    font: inherit;
    font-size: 13px;
    font-weight: 750;
    border: 0;
    border-radius: 12px;
    background: var(--primary-orange);
    box-shadow: 0 10px 24px rgba(255, 90, 0, 0.22);
    cursor: pointer;
    transition: background 0.18s ease, transform 0.18s ease;
  }

  .favorites-empty-state__browse:hover {
    background: #eb4f00;
    transform: translateY(-1px);
  }

  .favorites-empty-state__browse:focus-visible {
    outline: 2px solid #171717;
    outline-offset: 3px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .favorite-card,
  .favorite-card__remove,
  .favorites-page__back,
  .favorites-empty-state__browse {
    transition: none;
  }
}

/* Desktop hirdetésrészlet: kiegyensúlyozott háromoszlopos termékoldal. */
@media (min-width: 1024px) {
  .desktop-listing-detail__topbar-inner,
  .desktop-listing-detail__layout {
    width: min(calc(100% - 32px), var(--desktop-marketplace-content-width)) !important;
  }

  .desktop-listing-detail__topbar-inner {
    grid-template-columns: 1fr !important;
  }

  .desktop-listing-detail__layout {
    grid-template-columns: 238px minmax(0, 1fr) 238px !important;
    gap: 16px !important;
    padding-top: 22px !important;
  }

  .desktop-listing-detail__details-card,
  .desktop-listing-detail__gallery-card,
  .desktop-listing-detail__seller-card,
  .desktop-listing-detail__quick-info {
    border: 1px solid #e8e4dc !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 12px 34px rgba(17, 17, 17, 0.055) !important;
  }

  .desktop-listing-detail__details-card,
  .desktop-listing-detail__info-panel {
    position: sticky;
    top: 22px;
  }

  .desktop-listing-detail__info-panel {
    display: grid;
    gap: 14px;
  }

  .desktop-listing-detail__details-card {
    padding: 18px;
  }

  .desktop-listing-detail__details-card h2 {
    margin: 0 0 14px;
    color: #171717;
    font-size: 17px;
    line-height: 1.2;
  }

  .desktop-listing-detail__details-card dl > div {
    min-height: 38px;
  }

  .desktop-listing-detail__details-card dt,
  .desktop-listing-detail__details-card dd {
    font-size: 11px;
  }

  .desktop-listing-detail__description {
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid #ece9e2;
  }

  .desktop-listing-detail__description p {
    margin: 0;
    color: #625d57;
    font-size: 12px;
    line-height: 1.6;
    overflow-wrap: anywhere;
  }

  .desktop-listing-detail__description .desktop-listing-detail__features {
    margin-top: 14px;
  }

  .desktop-listing-detail__gallery-card {
    padding: 14px !important;
  }

  .desktop-listing-detail__gallery {
    grid-template-columns: minmax(0, 1fr) 66px !important;
    gap: 9px !important;
  }

  .desktop-listing-detail__main-image,
  .desktop-listing-detail__thumbnails {
    height: 340px !important;
  }

  .desktop-listing-detail__thumbnails {
    padding-right: 2px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
  }

  .desktop-listing-detail__thumbnails button {
    flex-basis: 62px !important;
    border-radius: 9px !important;
  }

  .desktop-listing-detail__headline {
    margin-top: 16px;
    padding: 18px 6px 0 !important;
    border: 0 !important;
    border-top: 1px solid #ece9e2 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .desktop-listing-detail__headline h1 {
    margin: 9px 0 7px;
    color: #171717;
    font-size: 24px;
  }

  .desktop-listing-detail__headline-side {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 12px;
  }

  .desktop-listing-detail__headline-side > strong {
    color: #ff5a1f;
    font-size: 25px;
    white-space: nowrap;
  }

  .desktop-listing-detail__headline .desktop-listing-detail__top-actions {
    justify-self: auto;
  }

  .desktop-listing-detail__headline .desktop-listing-detail__top-actions button {
    width: 38px;
    height: 38px;
  }

  .desktop-listing-detail__engagement {
    margin: 16px 6px 4px !important;
    padding-top: 16px;
    border-top: 1px solid #ece9e2;
    flex-wrap: nowrap !important;
  }

  .desktop-listing-detail__engagement > span {
    min-width: 0 !important;
    flex: 1 1 0;
  }

  .desktop-listing-detail__engagement em {
    flex: 0 0 auto;
  }

  .desktop-listing-detail__seller-card {
    padding: 18px !important;
  }

  .desktop-listing-detail__quick-info {
    padding: 18px !important;
  }

  .desktop-listing-detail__quick-info h2 {
    margin: 0 0 12px !important;
    color: #171717 !important;
    font-size: 16px !important;
    line-height: 1.2;
  }

  .desktop-listing-detail__quick-info dl > div {
    min-height: 31px !important;
  }

  .desktop-listing-detail__quick-info dt,
  .desktop-listing-detail__quick-info dd {
    font-size: 10px !important;
  }

  .desktop-listing-detail__quick-info dd {
    max-width: 130px;
    overflow-wrap: anywhere;
  }
}

/* Desktop hirdetésrészlet: fix kétkártyás termék- és eladói rendszer. */
@media (min-width: 1024px) {
  .desktop-subview-frame.desktop-subview-frame--listing {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    transform: none !important;
    background: #f5f5f5 !important;
  }

  .desktop-listing-detail__layout {
    --desktop-detail-card-height: 548px;
    grid-template-columns: minmax(0, 1fr) 238px !important;
    gap: 16px !important;
    align-items: start !important;
  }

  .desktop-listing-detail__listing-card,
  .desktop-listing-detail__seller-card {
    height: var(--desktop-detail-card-height);
    border: 1px solid #e8e4dc;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 12px 34px rgba(17, 17, 17, 0.055);
    overflow: hidden;
  }

  .desktop-listing-detail__listing-card {
    min-width: 0;
    display: grid;
    grid-template-columns: 238px minmax(0, 1fr);
  }

  .desktop-listing-detail__details-card {
    position: static !important;
    min-width: 0;
    min-height: 0;
    height: 100%;
    padding: 20px !important;
    display: flex;
    flex-direction: column;
    border: 0 !important;
    border-right: 1px solid #ece9e2 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden;
  }

  .desktop-listing-detail__specification {
    min-height: 0;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
  }

  .desktop-listing-detail__details-card h2 {
    margin-bottom: 15px !important;
    font-size: 18px !important;
    line-height: 1.2;
  }

  .desktop-listing-detail__specification dl {
    min-height: 0;
    padding-right: 3px;
    overflow-y: auto;
    scrollbar-width: thin;
  }

  .desktop-listing-detail__details-card dl > div {
    min-height: 40px !important;
    gap: 8px;
  }

  .desktop-listing-detail__details-card dt {
    flex: 1 1 auto;
    color: #706b64 !important;
    font-size: 12.5px !important;
    line-height: 1.25;
  }

  .desktop-listing-detail__details-card dd {
    flex: 0 1 112px;
    color: #171717;
    font-size: 13px !important;
    line-height: 1.25;
    overflow-wrap: anywhere;
  }

  .desktop-listing-detail__description {
    flex: 0 0 auto;
    max-height: 176px;
    margin-top: 16px !important;
    padding-top: 16px !important;
    overflow: hidden;
  }

  .desktop-listing-detail__description h2 {
    margin-bottom: 11px !important;
  }

  .desktop-listing-detail__description p {
    max-height: 64px;
    padding-right: 3px;
    font-size: 12.5px !important;
    line-height: 1.5 !important;
    overflow-y: auto;
    scrollbar-width: thin;
  }

  .desktop-listing-detail__description .desktop-listing-detail__features {
    max-height: 58px;
    margin-top: 10px !important;
    overflow-y: auto;
    scrollbar-width: thin;
  }

  .desktop-listing-detail__main {
    min-width: 0;
    min-height: 0;
    height: 100%;
    display: block;
  }

  .desktop-listing-detail__gallery-card {
    min-width: 0;
    min-height: 0;
    height: 100%;
    padding: 14px !important;
    display: flex;
    flex-direction: column;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden;
  }

  .desktop-listing-detail__gallery {
    flex: 0 0 auto;
    grid-template-columns: 300px 58px !important;
    gap: 8px !important;
    justify-content: center;
  }

  .desktop-listing-detail__main-image {
    width: 300px !important;
    height: 300px !important;
    aspect-ratio: 1 / 1;
    border-radius: 12px;
  }

  .desktop-listing-detail__thumbnails {
    height: 300px !important;
  }

  .desktop-listing-detail__thumbnails button {
    flex-basis: 54px !important;
    border-radius: 8px !important;
  }

  .desktop-listing-detail__headline {
    flex: 0 0 auto;
    min-height: 100px;
    margin-top: 12px !important;
    padding: 12px 4px 0 !important;
    gap: 12px !important;
  }

  .desktop-listing-detail__headline h1 {
    max-width: 300px;
    margin: 7px 0 5px !important;
    font-size: 20px !important;
    line-height: 1.2;
  }

  .desktop-listing-detail__headline p {
    font-size: 12.5px !important;
  }

  .desktop-listing-detail__headline-side {
    gap: 8px !important;
  }

  .desktop-listing-detail__headline-side > strong {
    font-size: 22px !important;
  }

  .desktop-listing-detail__headline .desktop-listing-detail__top-actions button {
    width: 34px !important;
    height: 34px !important;
  }

  .desktop-listing-detail__category-badge {
    min-height: 23px;
    padding-inline: 8px;
    font-size: 10px;
  }

  .desktop-listing-detail__engagement {
    flex: 0 0 auto;
    margin: 10px 4px 0 !important;
    padding-top: 10px !important;
    gap: 6px !important;
  }

  .desktop-listing-detail__engagement > span {
    min-height: 48px;
    padding: 6px 8px;
  }

  .desktop-listing-detail__seller-card {
    position: sticky;
    top: 22px;
    padding: 20px !important;
    display: flex;
    flex-direction: column;
  }

  .desktop-listing-detail__seller-label {
    display: block;
    color: #77736d;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .desktop-listing-detail__seller {
    margin: 16px 0 12px;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    gap: 10px;
  }

  .desktop-listing-detail__seller > b {
    width: 44px;
    height: 44px;
    font-size: 14px;
  }

  .desktop-listing-detail__seller strong {
    font-size: 14px;
  }

  .desktop-listing-detail__seller small {
    font-size: 11px;
  }

  .desktop-listing-detail__verified-seller {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #258d52;
    font-size: 11px;
    font-weight: 750;
  }

  .desktop-listing-detail__seller-contact {
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid #ece9e2;
  }

  .desktop-listing-detail__seller-contact h2 {
    margin: 0 0 13px;
    color: #171717;
    font-size: 15px;
    line-height: 1.25;
  }

  .desktop-listing-detail__seller-contact p,
  .desktop-listing-detail__seller-note {
    color: #77736d;
    font-size: 11px;
    line-height: 1.5;
  }

  .desktop-listing-detail__message,
  .desktop-listing-detail__phone,
  .desktop-listing-detail__email {
    min-height: 44px;
    padding-inline: 10px;
    font-size: 12px;
    line-height: 1.25;
  }

  .desktop-listing-detail__seller-note {
    margin: auto 0 0;
    padding-top: 16px;
    border-top: 1px solid #ece9e2;
  }
}

/* Gumi címfelismerés — tartományhiba és Tovább előtti élő visszajelzés */
.ad-upload-title-input--invalid {
  border-color: #eb5757 !important;
  box-shadow: 0 0 0 3px rgba(235, 87, 87, 0.14) !important;
}

.ad-upload-title-input--invalid:focus {
  border-color: #ff6b6b !important;
  box-shadow: 0 0 0 4px rgba(235, 87, 87, 0.18) !important;
}

.ad-upload-title-validation-error {
  display: flex;
  margin-top: 8px;
  color: #ff7d7d;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.4;
}

.ad-upload-generated-title {
  display: flex;
  align-items: center;
  min-height: 52px;
  padding: 12px 14px;
  box-sizing: border-box;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.035);
  color: #ffffff;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.35;
}
/* Hirdetéskép igazítása — mobil és desktop, azonos feldolgozási logikával */
.listing-image-editor-backdrop {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  padding: 16px;
  background: rgba(0, 0, 0, 0.82);
  backdrop-filter: blur(8px);
}

.listing-image-editor {
  width: min(92vw, 620px);
  max-height: calc(100dvh - 32px);
  overflow-y: auto;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 22px;
  padding: 20px;
  color: #fff;
  background: #111214;
  box-shadow: 0 26px 90px rgba(0, 0, 0, 0.56);
}

.listing-image-editor__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.listing-image-editor__eyebrow {
  display: block;
  margin-bottom: 4px;
  color: var(--primary-orange);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.listing-image-editor__header h2 {
  margin: 0;
  font-size: clamp(20px, 4vw, 28px);
}

.listing-image-editor__close {
  display: grid;
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 50%;
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
  cursor: pointer;
}

.listing-image-editor__copy {
  margin: 10px 0 16px;
  color: var(--medium-grey);
  font-size: 13px;
  line-height: 1.5;
}

.listing-image-editor__stage {
  position: relative;
  width: min(100%, 480px);
  aspect-ratio: 1;
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 16px;
  background: #fff;
}

.listing-image-editor__stage canvas {
  display: block;
  width: 100%;
  height: 100%;
  cursor: grab;
  touch-action: none;
}

.listing-image-editor__stage canvas:active {
  cursor: grabbing;
}

.listing-image-editor__loading {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: var(--medium-grey);
  font-size: 13px;
  pointer-events: none;
}

.listing-image-editor__zoom {
  display: grid;
  grid-template-columns: auto auto minmax(100px, 1fr) 50px;
  align-items: center;
  gap: 10px;
  margin: 16px 0 0;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
}

.listing-image-editor__zoom input {
  width: 100%;
  accent-color: var(--primary-orange);
}

.listing-image-editor__zoom output {
  color: var(--medium-grey);
  text-align: right;
}

.listing-image-editor__error {
  margin-top: 14px;
  border: 1px solid rgba(235, 87, 87, 0.45);
  border-radius: 10px;
  padding: 10px 12px;
  color: #ff8b8b;
  background: rgba(235, 87, 87, 0.1);
  font-size: 13px;
}

.listing-image-editor__actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 18px;
}

.listing-image-editor__actions .btn-primary,
.listing-image-editor__actions .btn-secondary {
  min-height: 44px;
}

.listing-image-editor__actions button:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

@media (max-width: 600px) {
  .listing-image-editor-backdrop {
    bottom: 72px;
    align-items: end;
    padding: 0;
  }

  .listing-image-editor {
    width: 100%;
    max-height: calc(100dvh - 72px);
    border-radius: 22px 22px 0 0;
    padding: 16px;
  }

  .listing-image-editor__actions {
    position: sticky;
    bottom: 0;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 1.35fr;
    padding-top: 10px;
    background: #111214;
  }
}

/* Desktop hirdetésfeltöltés — fix 966 px-es világos munkafelület — 2026-08-01 */
@media (min-width: 1024px) {
  .desktop-outer > .app-container.app-container--desktop-ad-upload {
    flex: 0 1 966px;
    width: min(calc(100% - 64px), 966px) !important;
    max-width: 966px !important;
    background: #ffffff !important;
  }

  .app-container--desktop-ad-upload .felni-tab-panel--ad-upload,
  .app-container--desktop-ad-upload .ad-upload-wizard--desktop {
    color: #171717;
    background: #ffffff !important;
    background-image: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard--desktop {
    --ad-panel: #ffffff;
    --ad-border: #e5dfd7;
    width: 100%;
    max-width: 966px;
    min-height: 100%;
    margin: 0 auto;
    padding: 14px 24px 28px !important;
    box-sizing: border-box;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__heading,
  .app-container--desktop-ad-upload .ad-upload-stepper,
  .app-container--desktop-ad-upload .ad-upload-wizard__content {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__heading {
    min-height: 52px;
    margin: 0 0 12px !important;
    padding: 0 0 8px !important;
    border-bottom: 1px solid #e8e3dc !important;
    grid-template-columns: minmax(250px, 1fr) auto minmax(250px, 1fr) !important;
    align-items: center !important;
    column-gap: 16px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__title {
    color: #171717 !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    letter-spacing: -0.35px;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__step-count {
    min-height: 30px;
    margin-top: 7px !important;
    padding: 0 16px;
    color: #e95100 !important;
    font-size: 12px !important;
    border-color: #f1c8b2;
    background: #fff7f2;
  }

  .app-container--desktop-ad-upload .ad-upload-heading-action button {
    min-width: 116px;
    min-height: 44px;
    height: 44px;
    padding: 0 16px;
    border-radius: 11px;
    box-shadow: none;
  }

  .app-container--desktop-ad-upload .ad-upload-heading-action--left {
    align-items: center;
    gap: 10px;
  }

  .app-container--desktop-ad-upload .ad-upload-heading-action .ad-upload-home-logo {
    width: 184px;
    min-width: 184px;
    height: 44px;
    min-height: 44px;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    cursor: pointer;
  }

  .app-container--desktop-ad-upload .ad-upload-heading-action--left,
  .app-container--desktop-ad-upload .ad-upload-heading-action--right {
    align-self: center;
    min-height: 44px;
  }

  .app-container--desktop-ad-upload .ad-upload-heading-action--right {
    align-items: center;
    gap: 10px;
  }

  .app-container--desktop-ad-upload .ad-upload-heading-action--right .ad-upload-discard-draft,
  .app-container--desktop-ad-upload .ad-upload-heading-action--right .ad-upload-header-nav-action {
    width: 116px;
    min-width: 116px;
    max-width: 116px;
    min-height: 44px;
    height: 44px;
    padding: 0 12px;
    font-size: 14px;
    line-height: 1.1;
  }

  .app-container--desktop-ad-upload .ad-upload-heading-action--right .btn-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #171717 !important;
    border: 1px solid #dcd5cd !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-heading-action--right .btn-secondary:hover {
    color: #e95100 !important;
    border-color: #ff9b66 !important;
    background: #fff7f2 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-home-logo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .app-container--desktop-ad-upload .ad-upload-home-logo:focus-visible {
    outline: 2px solid #ff5a1f;
    outline-offset: 3px;
  }

  .app-container--desktop-ad-upload .ad-upload-stepper {
    width: min(790px, 100%) !important;
    margin: 0 auto 22px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-stepper__track {
    background: #ded8d1;
  }

  .app-container--desktop-ad-upload .ad-upload-stepper__number {
    width: 34px;
    height: 34px;
    color: #77716b;
    border-color: #dcd5cd;
    background: #f6f4f1;
  }

  .app-container--desktop-ad-upload .ad-upload-stepper__item.is-active .ad-upload-stepper__number {
    color: #ffffff;
    border-color: #ff5a00;
    background: #ff5a00;
    box-shadow: 0 7px 18px rgba(255, 90, 0, 0.18);
  }

  .app-container--desktop-ad-upload .ad-upload-stepper__item.is-complete .ad-upload-stepper__number {
    color: #ffffff;
    border-color: #ff5a00;
    background: #ff5a00;
  }

  .app-container--desktop-ad-upload .ad-upload-stepper__item strong {
    margin-top: 9px;
    color: #77716b;
    font-size: 11px;
  }

  .app-container--desktop-ad-upload .ad-upload-stepper__item.is-active strong,
  .app-container--desktop-ad-upload .ad-upload-stepper__item.is-complete strong {
    color: #e95100;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content {
    overflow: visible !important;
    padding: 0 0 24px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--intro {
    grid-template-columns: 210px minmax(0, 1fr) 248px !important;
    gap: 16px !important;
    align-items: stretch;
  }

  .app-container--desktop-ad-upload .ad-upload-intro-panel,
  .app-container--desktop-ad-upload .ad-upload-step--intro > .ad-upload-intro-panel,
  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 > .ad-upload-step,
  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-3 > .ad-upload-step,
  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-4 > .ad-upload-step--review,
  .app-container--desktop-ad-upload .ad-upload-desktop-summary,
  .app-container--desktop-ad-upload .ad-upload-desktop-assist > div {
    min-height: 0;
    padding: 18px !important;
    color: #171717;
    border: 1px solid #e5dfd7 !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    background-image: none !important;
    box-shadow: 0 12px 30px rgba(65, 45, 30, 0.06) !important;
  }

  .app-container--desktop-ad-upload .ad-upload-intro-panel--category,
  .app-container--desktop-ad-upload .ad-upload-intro-panel--photos,
  .app-container--desktop-ad-upload .ad-upload-intro-panel--details {
    min-height: 424px;
  }

  .app-container--desktop-ad-upload .ad-upload-intro-panel .form-label,
  .app-container--desktop-ad-upload .ad-upload-step h3,
  .app-container--desktop-ad-upload .ad-upload-step .form-label,
  .app-container--desktop-ad-upload .ad-upload-desktop-summary h3,
  .app-container--desktop-ad-upload .ad-upload-desktop-assist h3 {
    color: #171717 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-panel-copy,
  .app-container--desktop-ad-upload .ad-upload-intro-panel p,
  .app-container--desktop-ad-upload .ad-upload-step > p,
  .app-container--desktop-ad-upload .ad-upload-step small,
  .app-container--desktop-ad-upload .ad-upload-desktop-tips p {
    color: #77716b !important;
  }

  .app-container--desktop-ad-upload .ad-upload-intro-panel--photos p strong,
  .app-container--desktop-ad-upload .ad-upload-dropzone span:first-of-type {
    color: #171717 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-category-grid {
    gap: 9px !important;
    margin-top: 12px;
  }

  .app-container--desktop-ad-upload .ad-upload-category-card,
  .app-container--desktop-ad-upload .ad-upload-step--intro > div:first-child > div:last-child > .ad-upload-category-card {
    min-height: 88px !important;
    padding: 10px 12px !important;
    gap: 10px;
    border-color: #e2ddd6 !important;
    border-radius: 13px !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-category-card:hover {
    border-color: #ffb58d !important;
    background: #fff9f5 !important;
    transform: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-category-card.is-selected {
    border-color: #ff5a00 !important;
    background: #fff3eb !important;
    box-shadow: 0 0 0 1px #ff5a00 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-category-card__image {
    width: 58px !important;
    height: 58px !important;
    flex-basis: 58px;
    border-radius: 11px;
    background: #f4f1ed;
  }

  .app-container--desktop-ad-upload .ad-upload-category-card span:not(.ad-upload-category-check) {
    color: #625d57 !important;
    font-size: 12px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-category-card.is-selected span:not(.ad-upload-category-check) {
    color: #e95100 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-dropzone {
    min-height: 276px !important;
    padding: 24px !important;
    border-color: #ff7a33 !important;
    border-radius: 15px !important;
    background: #fffaf7 !important;
    background-image: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-dropzone:hover {
    background: #fff4ed !important;
  }

  .app-container--desktop-ad-upload .ad-upload-dropzone span {
    color: #77716b !important;
  }

  .app-container--desktop-ad-upload .ad-upload-dropzone span:first-of-type {
    color: #171717 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-file-meta {
    gap: 5px;
  }

  .app-container--desktop-ad-upload .ad-upload-file-meta span {
    padding: 5px 7px;
    color: #77716b;
    border-color: #e4ded7;
    background: #f8f6f3;
  }

  .app-container--desktop-ad-upload .form-input,
  .app-container--desktop-ad-upload select.form-input,
  .app-container--desktop-ad-upload textarea.form-input,
  .app-container--desktop-ad-upload .ad-upload-intro-panel--details input[type="text"] {
    color: #171717 !important;
    border: 1px solid #dcd5cd !important;
    background: #ffffff !important;
    background-image: none !important;
    box-shadow: none !important;
  }

  .app-container--desktop-ad-upload .form-input::placeholder,
  .app-container--desktop-ad-upload textarea::placeholder {
    color: #aaa39b !important;
  }

  .app-container--desktop-ad-upload .form-input:focus,
  .app-container--desktop-ad-upload .form-input:focus-visible,
  .app-container--desktop-ad-upload textarea:focus-visible {
    border-color: #ff5a00 !important;
    box-shadow: 0 0 0 3px rgba(255, 90, 0, 0.12) !important;
  }

  .app-container--desktop-ad-upload .ad-upload-title-tip,
  .app-container--desktop-ad-upload .ad-upload-trust-row > span,
  .app-container--desktop-ad-upload .ad-upload-desktop-preview > div {
    color: #625d57;
    border-color: #e5dfd7;
    background: #f8f6f3 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-title-tip {
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
    margin-top: 14px;
    padding: 12px;
  }

  .app-container--desktop-ad-upload .ad-upload-title-tip .form-label {
    margin: 0 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-generated-title {
    display: block;
    overflow-wrap: anywhere;
    line-height: 1.3;
  }

  .app-container--desktop-ad-upload .ad-upload-title-tip p {
    margin: 0 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-generated-title,
  .app-container--desktop-ad-upload .ad-upload-title-tip .form-label,
  .app-container--desktop-ad-upload .ad-upload-trust-row strong,
  .app-container--desktop-ad-upload .ad-upload-desktop-summary > p,
  .app-container--desktop-ad-upload .ad-upload-desktop-preview strong {
    color: #171717 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 {
    grid-template-columns: 230px minmax(0, 1fr) !important;
    grid-template-areas:
      "summary specs"
      "summary details"
      "assist assist" !important;
    gap: 16px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-desktop-summary {
    display: block !important;
  }

  .app-container--desktop-ad-upload .ad-upload-desktop-assist {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-3 > .ad-upload-step--commercial {
    gap: 14px 16px !important;
    padding: 20px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--review > div,
  .app-container--desktop-ad-upload .ad-upload-step--commercial > div[style*="background"] {
    border-color: #e5dfd7 !important;
    background: #f8f6f3 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--review span[style*="font-weight: 600"],
  .app-container--desktop-ad-upload .ad-upload-step--review span[style*="font-weight:600"],
  .app-container--desktop-ad-upload .ad-upload-step--review div[style*="font-weight: 700"] {
    color: #171717 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--review span[style*="var(--primary-orange)"] {
    color: #e95100 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__footer {
    display: none !important;
  }

  .app-container--desktop-ad-upload :is(button, input, select, textarea):focus-visible {
    outline: 2px solid #ff5a00;
    outline-offset: 2px;
  }

  /* 966 px desktop shell: the second upload step uses only its two live cards. */
  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas:
      "specs"
      "details" !important;
    align-items: start !important;
    gap: 16px !important;
    overflow: visible !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 > .ad-upload-step {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: visible !important;
    padding: 20px !important;
    box-sizing: border-box;
  }

  .app-container--desktop-ad-upload .ad-upload-step--specs,
  .app-container--desktop-ad-upload .ad-upload-step--details {
    gap: 18px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-gumi-fields {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px !important;
    padding: 18px !important;
    border-color: #e5dfd7 !important;
    background: #f8f6f3 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-gumi-size-grid,
  .app-container--desktop-ad-upload .ad-upload-gumi-extra-grid {
    grid-column: 1 / -1;
    gap: 14px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-gumi-season__options {
    min-height: 46px;
    padding: 3px !important;
    border: 1px solid #dcd5cd;
    background: #ffffff !important;
  }

  .app-container--desktop-ad-upload .ad-upload-gumi-season__options button {
    color: #171717 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-gumi-season__options button.is-selected {
    color: #ffffff !important;
  }

  .app-container--desktop-ad-upload .ad-upload-field-help {
    display: block;
    margin-top: 7px;
    color: #77716b;
    font-size: 11px;
    line-height: 1.4;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-grid > div {
    min-height: 76px !important;
    padding: 12px 14px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--details textarea {
    height: 96px !important;
  }
}

@media (min-width: 1024px) {
  .app-container--desktop-ad-upload .ad-upload-step--review > .ad-upload-review-header {
    padding: 0 0 14px !important;
    border: 0 !important;
    border-bottom: 1px solid #e8e2da !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--review > .ad-upload-review-photos {
    padding: 14px 16px !important;
    border: 1px solid #e5dfd7 !important;
    border-radius: 14px !important;
    background: #faf8f5 !important;
    box-shadow: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--review > .ad-upload-review-card {
    padding: 18px !important;
    border: 1px solid #e5dfd7 !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(65, 45, 30, .05) !important;
  }
}

/* Desktop PUBAD-02: egységes, túlcsordulásmentes termékspecifikációk. */
@media (min-width: 1024px) {
  .app-container--desktop-ad-upload .ad-upload-step--specs {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: max-content;
    align-items: start !important;
    align-content: start !important;
    gap: 16px !important;
    height: max-content !important;
    min-height: max-content !important;
    max-height: none !important;
    contain: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-specs-header,
  .app-container--desktop-ad-upload .ad-upload-gumi-fields,
  .app-container--desktop-ad-upload .ad-upload-rim-settings,
  .app-container--desktop-ad-upload .ad-upload-brand-field {
    grid-column: 1 / -1;
  }

  .app-container--desktop-ad-upload .ad-upload-spec-section,
  .app-container--desktop-ad-upload .ad-upload-brand-field {
    min-width: 0;
    height: auto !important;
    overflow: visible !important;
    padding: 16px !important;
    border: 1px solid #e5dfd7 !important;
    border-radius: 14px !important;
    background: #f8f6f3 !important;
    box-sizing: border-box;
  }

  .app-container--desktop-ad-upload .ad-upload-spec-section > .form-label:first-child,
  .app-container--desktop-ad-upload .ad-upload-brand-field > .form-label:first-child {
    margin-bottom: 2px !important;
    color: #171717 !important;
    font-size: 14px;
    font-weight: 800;
  }

  .app-container--desktop-ad-upload .ad-upload-wheelset-rim,
  .app-container--desktop-ad-upload .ad-upload-wheelset-tire {
    align-self: stretch;
  }

  .app-container--desktop-ad-upload .ad-upload-spec-triple-grid,
  .app-container--desktop-ad-upload .ad-upload-spec-double-grid,
  .app-container--desktop-ad-upload .ad-upload-gumi-size-grid,
  .app-container--desktop-ad-upload .ad-upload-gumi-extra-grid {
    min-width: 0;
    gap: 12px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-rim-settings {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-rim-settings > .form-group:first-child {
    grid-column: 1 / -1;
  }

  .app-container--desktop-ad-upload .ad-upload-rim-type-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-rim-type-option {
    min-height: 56px !important;
    padding: 10px !important;
    color: #171717 !important;
    background: #ffffff !important;
    border-color: #dcd5cd !important;
  }

  .app-container--desktop-ad-upload .ad-upload-rim-type-option.is-selected {
    color: #ffffff !important;
    background: var(--orange-gradient) !important;
    border-color: #ff5a00 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wheelset-tire-brand {
    margin: 0 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-option__title {
    color: #171717 !important;
  }
}

/* PUBAD desktop kompakt munkanézet — MacBook magasságon is egyben látható. */
@media (min-width: 1024px) {
  .listing-image-editor-backdrop {
    padding: 10px;
  }

  .listing-image-editor {
    width: min(88vw, 540px);
    max-height: calc(100dvh - 20px);
    overflow: hidden;
    padding: 16px;
    border-radius: 18px;
  }

  .listing-image-editor__header h2 {
    font-size: 24px;
  }

  .listing-image-editor__close {
    width: 36px;
    height: 36px;
  }

  .listing-image-editor__copy {
    margin: 7px 0 10px;
    font-size: 12px;
    line-height: 1.35;
  }

  .listing-image-editor__stage {
    width: min(100%, clamp(300px, calc(100dvh - 300px), 400px));
    border-radius: 14px;
  }

  .listing-image-editor__zoom {
    gap: 8px;
    margin-top: 10px;
    font-size: 12px;
  }

  .listing-image-editor__actions {
    margin-top: 12px;
  }

  .listing-image-editor__actions .btn-primary,
  .listing-image-editor__actions .btn-secondary {
    min-height: 42px;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 {
    display: grid !important;
    flex: 0 0 auto !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-areas: "specs details" !important;
    grid-template-rows: max-content !important;
    align-items: start !important;
    align-content: start !important;
    gap: 14px !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    padding-bottom: 12px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 > .ad-upload-step {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    align-self: start !important;
    overflow: visible !important;
    padding: 14px !important;
    border-radius: 15px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--specs,
  .app-container--desktop-ad-upload .ad-upload-step--details {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-specs-header {
    min-height: 38px;
  }

  .app-container--desktop-ad-upload .ad-upload-specs-header h3,
  .app-container--desktop-ad-upload .ad-upload-step--details > div:first-child h3 {
    font-size: 17px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--details > div:first-child p {
    margin: 3px 0 0 !important;
    line-height: 1.3 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-gumi-fields {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px 10px !important;
    padding: 11px !important;
    border-radius: 12px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-gumi-size-grid,
  .app-container--desktop-ad-upload .ad-upload-gumi-extra-grid {
    grid-column: 1 / -1;
    gap: 9px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-gumi-season__options {
    min-height: 40px;
  }

  .app-container--desktop-ad-upload .ad-upload-gumi-season__options button {
    padding: 5px 0 !important;
    font-size: 12px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 .form-label {
    margin-bottom: 5px !important;
    font-size: 11px !important;
    line-height: 1.25;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 .form-input,
  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 select.form-input {
    min-height: 40px !important;
    height: 40px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    font-size: 13px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-field-help {
    margin-top: 4px;
    font-size: 9px;
    line-height: 1.25;
  }

  .app-container--desktop-ad-upload .ad-upload-brand-field {
    padding: 10px 11px !important;
    border-radius: 12px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-grid > div {
    min-height: 62px !important;
    padding: 8px 10px !important;
    border-radius: 11px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--details textarea.form-input {
    height: 76px !important;
    min-height: 76px !important;
    padding: 9px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--details .tag-chip {
    padding: 3px 8px !important;
    font-size: 10px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--details form.input-wrapper {
    margin-bottom: 4px !important;
  }
}

/* PUBAD desktop finomhangolás: fix képgaléria, azonos kártyasík és kompakt kontaktmezők. */
@media (min-width: 1024px) {
  .app-container--desktop-ad-upload .ad-upload-intro-panel--photos {
    height: 424px !important;
    min-height: 424px !important;
    max-height: 424px !important;
    overflow: hidden !important;
  }

  .app-container--desktop-ad-upload .ad-upload-intro-panel--photos .ad-upload-add-more {
    min-height: 36px;
    margin-bottom: 10px;
  }

  .app-container--desktop-ad-upload .ad-upload-image-gallery {
    display: grid;
    grid-template-columns: minmax(0, 250px) minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
    gap: 7px;
    width: 100%;
    height: 250px;
    min-height: 0;
    margin-bottom: 9px;
    overflow: hidden;
  }

  .app-container--desktop-ad-upload .ad-upload-image-gallery__cover,
  .app-container--desktop-ad-upload .ad-upload-image-gallery__thumbs {
    min-width: 0;
    min-height: 0;
  }

  .app-container--desktop-ad-upload .ad-upload-image-gallery__cover {
    height: 250px;
  }

  .app-container--desktop-ad-upload .ad-upload-image-gallery__thumbs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(5, minmax(0, 1fr));
    grid-auto-flow: row;
    gap: 7px;
    height: 250px;
    overflow: hidden;
  }

  .app-container--desktop-ad-upload .ad-upload-image-gallery .ad-upload-image-tile {
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    aspect-ratio: auto !important;
    border-radius: 7px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-image-gallery .ad-upload-image-tile--cover {
    border-radius: 12px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-image-gallery .ad-upload-image-tile:not(.ad-upload-image-tile--cover) span {
    display: none;
  }

  .app-container--desktop-ad-upload .ad-upload-image-gallery .ad-upload-image-tile:not(.ad-upload-image-tile--cover) button {
    top: 2px !important;
    right: 2px !important;
    width: 16px !important;
    height: 16px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-intro-panel--photos .ad-upload-file-meta {
    flex-wrap: nowrap;
    margin-top: auto;
  }

  .app-container--desktop-ad-upload .ad-upload-intro-panel--photos .ad-upload-file-meta span {
    min-width: 0;
    padding: 4px 5px;
    font-size: 9px;
    white-space: nowrap;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 {
    grid-template-rows: 1fr !important;
    grid-auto-rows: 1fr !important;
    align-items: stretch !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 > .ad-upload-step {
    height: auto !important;
    min-height: 438px !important;
    align-self: stretch !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--specs .ad-upload-brand-field {
    margin-top: auto !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--details > .form-group:last-child {
    margin-top: auto !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-3 > .ad-upload-step--commercial {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: start;
    gap: 12px 16px !important;
    min-height: 0 !important;
    padding: 18px 20px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--commercial > div:first-child,
  .app-container--desktop-ad-upload .ad-upload-step--commercial > .ad-upload-contact-note {
    grid-column: 1 / -1;
  }

  .app-container--desktop-ad-upload .ad-upload-step--commercial > div:first-child p {
    margin: 2px 0 0 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--commercial .form-label {
    margin-bottom: 5px !important;
    color: #171717 !important;
    font-size: 12px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--commercial .form-input,
  .app-container--desktop-ad-upload .ad-upload-step--commercial select.form-input {
    min-height: 42px !important;
    height: 42px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--commercial small {
    display: block;
    margin-top: 4px;
    font-size: 10px;
    line-height: 1.25;
  }

  .app-container--desktop-ad-upload .ad-upload-contact-field {
    padding: 10px 12px;
    border: 1px solid #e5dfd7;
    border-radius: 12px;
    background: #f8f6f3;
  }

  .app-container--desktop-ad-upload .ad-upload-contact-field__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .app-container--desktop-ad-upload .ad-upload-contact-field__toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #625d57;
    font-size: 10px;
    font-weight: 700;
    white-space: nowrap;
    cursor: pointer;
  }

  .app-container--desktop-ad-upload .ad-upload-contact-field__toggle input {
    width: 17px;
    height: 17px;
    margin: 0;
    accent-color: #ff5a00;
    cursor: pointer;
  }

  .app-container--desktop-ad-upload .ad-upload-visibility-settings {
    display: none !important;
  }

  .app-container--desktop-ad-upload .ad-upload-contact-note {
    margin: 0 !important;
    padding: 8px 10px;
    color: #77716b !important;
    border: 1px solid #f0d8ca;
    border-radius: 10px;
    background: #fff7f2;
    font-size: 10px !important;
    line-height: 1.3;
    text-align: center;
  }
}

/* Desktop ad upload final layout lock: the complete flow uses one 966 px workspace. */
@media (min-width: 1024px) {
  .app-container--desktop-ad-upload .ad-upload-wizard--desktop,
  .app-container--desktop-ad-upload .ad-upload-wizard__content {
    width: 100% !important;
    max-width: 966px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    box-sizing: border-box !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-1,
  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2,
  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-3,
  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-4 {
    height: 438px !important;
    min-height: 438px !important;
    max-height: 438px !important;
    padding-bottom: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-4 {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    scrollbar-gutter: stable;
    scrollbar-width: thin;
    scrollbar-color: #c8c1b9 transparent;
    overscroll-behavior: contain;
    touch-action: pan-y;
    -webkit-overflow-scrolling: touch;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-4::-webkit-scrollbar {
    display: block !important;
    width: 6px;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-4::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: #c8c1b9;
  }

  .app-container--desktop-ad-upload .ad-upload-step--intro {
    display: grid !important;
    grid-template-columns: 210px minmax(0, 1fr) 248px !important;
    align-items: stretch !important;
    gap: 16px !important;
    width: 100% !important;
    height: 438px !important;
    min-height: 438px !important;
    max-height: 438px !important;
    overflow: hidden !important;
  }

  .app-container--desktop-ad-upload .ad-upload-step--intro > .ad-upload-intro-panel {
    width: auto !important;
    min-width: 0 !important;
    height: 438px !important;
    min-height: 438px !important;
    max-height: 438px !important;
    margin: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .app-container--desktop-ad-upload .ad-upload-intro-panel--photos {
    display: flex !important;
    flex-direction: column !important;
  }

  .app-container--desktop-ad-upload .ad-upload-intro-panel--photos .ad-upload-image-gallery {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  .app-container--desktop-ad-upload .ad-upload-image-tile {
    cursor: grab;
  }

  .app-container--desktop-ad-upload .ad-upload-image-tile:active {
    cursor: grabbing;
  }

  .app-container--desktop-ad-upload .ad-upload-image-tile.is-dragging {
    opacity: 0.45;
  }

  .app-container--desktop-ad-upload .ad-upload-image-tile.is-drop-target {
    outline: 2px solid #ff5a00;
    outline-offset: 2px;
  }

  .app-container--desktop-ad-upload .ad-upload-image-gallery .ad-upload-make-cover {
    position: absolute !important;
    top: auto !important;
    right: 3px !important;
    bottom: 3px !important;
    left: 3px !important;
    z-index: 3 !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    min-height: 18px !important;
    padding: 2px 4px !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 5px !important;
    background: rgba(15, 15, 15, 0.82) !important;
    font-size: 8px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    opacity: 0;
    cursor: pointer !important;
  }

  .app-container--desktop-ad-upload .ad-upload-image-tile:hover .ad-upload-make-cover,
  .app-container--desktop-ad-upload .ad-upload-make-cover:focus-visible {
    opacity: 1;
  }

  .app-container--desktop-ad-upload .ad-upload-generated-title.is-empty {
    color: #8b857f !important;
    font-weight: 600 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    grid-template-rows: 438px !important;
    align-items: stretch !important;
    gap: 16px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 > .ad-upload-step {
    width: auto !important;
    min-width: 0 !important;
    height: 438px !important;
    min-height: 438px !important;
    max-height: 438px !important;
    margin: 0 !important;
    padding: 14px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .app-container--desktop-ad-upload .ad-upload-gumi-fields {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-content: start !important;
    gap: 8px 10px !important;
    min-height: 0 !important;
    padding: 10px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-gumi-fields > .ad-upload-gumi-size-grid,
  .app-container--desktop-ad-upload .ad-upload-gumi-fields > .ad-upload-gumi-extra-grid,
  .app-container--desktop-ad-upload .ad-upload-gumi-fields > .ad-upload-brand-field--embedded {
    grid-column: 1 / -1;
  }

  .app-container--desktop-ad-upload .ad-upload-brand-field--embedded {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

}

/* Desktop hirdetésadat-mező: állandó narancs fókusz és önmagát begépelő minta. */
@keyframes ad-upload-smart-input-typing {
  0%, 10% { width: 0; }
  58%, 86% { width: 210px; }
  100% { width: 0; }
}

@media (min-width: 1024px) {
  .app-container--desktop-ad-upload .ad-upload-smart-input {
    position: relative;
  }

  .app-container--desktop-ad-upload .ad-upload-smart-input__field {
    border-color: #ff5a00 !important;
    box-shadow: 0 0 0 2px rgba(255, 90, 0, 0.10) !important;
  }

  .app-container--desktop-ad-upload .ad-upload-smart-input__field:focus,
  .app-container--desktop-ad-upload .ad-upload-smart-input__field:focus-visible {
    border-color: #ff5a00 !important;
    box-shadow: 0 0 0 3px rgba(255, 90, 0, 0.16) !important;
  }

  .app-container--desktop-ad-upload .ad-upload-smart-input__field::placeholder {
    color: transparent !important;
  }

  .app-container--desktop-ad-upload .ad-upload-smart-input__field:focus::placeholder {
    color: #aaa39b !important;
  }

  .app-container--desktop-ad-upload .ad-upload-smart-input__demo {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    padding: 0 16px;
    overflow: hidden;
    color: #625d57;
    font-size: 12px;
    font-weight: 650;
    line-height: 1;
    pointer-events: none;
  }

  .app-container--desktop-ad-upload .ad-upload-smart-input__demo > span {
    display: block;
    width: 0;
    max-width: 100%;
    padding-right: 2px;
    overflow: hidden;
    border-right: 2px solid #ff5a00;
    white-space: nowrap;
    animation: ad-upload-smart-input-typing 5.4s steps(29, end) infinite;
  }

  .app-container--desktop-ad-upload .ad-upload-smart-input:focus-within .ad-upload-smart-input__demo {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .app-container--desktop-ad-upload .ad-upload-smart-input__demo > span {
    width: 210px;
    border-right: 0;
    animation: none;
  }
}

/* PUBAD-02 / kerékszett: tömör mezősor és minden adat elérhető marad. */
@media (min-width: 1024px) {
  .app-container--desktop-ad-upload .ad-upload-wheelset-rim-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wheelset-rim,
  .app-container--desktop-ad-upload .ad-upload-wheelset-tire {
    gap: 8px !important;
    padding: 10px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 > .ad-upload-step--specs,
  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 > .ad-upload-step--details {
    overflow-x: hidden !important;
    overflow-y: scroll !important;
    scrollbar-gutter: stable;
    scrollbar-width: thin;
    scrollbar-color: #c8c1b9 transparent;
    overscroll-behavior: contain;
    touch-action: pan-y;
    -webkit-overflow-scrolling: touch;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 > .ad-upload-step--specs::-webkit-scrollbar,
  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 > .ad-upload-step--details::-webkit-scrollbar {
    display: block !important;
    width: 6px;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 > .ad-upload-step--specs::-webkit-scrollbar-thumb,
  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 > .ad-upload-step--details::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: #c8c1b9;
  }

  .app-container--desktop-ad-upload .ad-upload-wizard__content--step-2 select.form-input {
    appearance: none;
    padding-right: 36px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23625d57' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-position: right 13px center !important;
    background-repeat: no-repeat !important;
    background-size: 12px 8px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-field {
    display: grid;
    gap: 5px;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-option {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 40px;
    min-height: 40px !important;
    padding: 0 12px !important;
    color: #171717;
    border: 1px solid #dcd5cd;
    border-radius: 10px !important;
    background: #fff;
    font: inherit;
    cursor: pointer;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-option.is-selected {
    color: #171717 !important;
    border-color: #ff5a00;
    background: var(--orange-gradient);
  }

  .ad-upload-condition-option.is-selected,
  .ad-upload-condition-option.is-selected .ad-upload-condition-option__title {
    color: #171717 !important;
    -webkit-text-fill-color: #171717 !important;
    opacity: 1 !important;
  }

  .ad-upload-condition-option.is-selected svg {
    color: #171717 !important;
    stroke: #171717 !important;
    opacity: 1 !important;
  }

  .app-container--desktop-ad-upload .ad-upload-condition-option__title {
    color: inherit !important;
    font-size: 13px !important;
    font-weight: 750;
  }

  .app-container--desktop-ad-upload .ad-upload-description-field textarea.form-input {
    height: 116px !important;
    min-height: 116px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-features-field {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }

  .app-container--desktop-ad-upload .ad-upload-feature-help {
    margin: 3px 0 6px !important;
    font-size: 10px !important;
  }

  .app-container--desktop-ad-upload .ad-upload-feature-tags {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-rows: minmax(24px, auto);
    gap: 5px;
    min-height: 82px;
    align-content: start;
  }

  .app-container--desktop-ad-upload .ad-upload-feature-tags .tag-chip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-width: 0;
    min-height: 24px;
    padding: 3px 6px !important;
    font-size: 9px !important;
    line-height: 1.15;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .app-container--desktop-ad-upload .ad-upload-feature-tags .tag-chip > span {
    min-width: 0;
  }
}

@media (max-width: 640px) {
  .ad-upload-wheelset-rim-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Magyar település / budapesti kerület autocomplete. */
.hungarian-location {
  position: relative;
  width: 100%;
  min-width: 0;
}

.hungarian-location__control {
  position: relative;
  width: 100%;
}

.hungarian-location__input {
  width: 100%;
  min-width: 0;
  height: 45px;
  padding: 0 42px 0 14px;
  box-sizing: border-box;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  outline: none;
  background: #151515;
  font: inherit;
}

.hungarian-location__input:focus {
  border-color: #ff5a00;
  box-shadow: 0 0 0 3px rgba(255, 90, 0, 0.12);
}

.hungarian-location__state {
  position: absolute;
  top: 50%;
  right: 13px;
  color: #aaa39b;
  transform: translateY(-50%);
  pointer-events: none;
}

.hungarian-location__control.is-confirmed .hungarian-location__state {
  color: #258d52;
}

.hungarian-location__options {
  position: absolute;
  z-index: 80;
  top: calc(100% + 6px);
  right: 0;
  left: 0;
  max-height: 260px;
  padding: 5px;
  overflow-y: auto;
  overscroll-behavior: contain;
  border: 1px solid #dcd5cd;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 16px 36px rgba(30, 24, 18, 0.18);
  scrollbar-width: thin;
  scrollbar-color: #c8c1b9 transparent;
}

.hungarian-location__option {
  display: flex;
  width: 100%;
  min-height: 40px;
  padding: 7px 10px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #171717;
  border: 0;
  border-radius: 8px;
  background: transparent;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.hungarian-location__option:hover,
.hungarian-location__option.is-active,
.hungarian-location__option[aria-selected="true"] {
  background: #fff1e8;
}

.hungarian-location__option span {
  min-width: 0;
  font-size: 12px;
  font-weight: 750;
}

.hungarian-location__option small {
  flex: 0 0 auto;
  margin: 0 !important;
  color: #8a847d !important;
  font-size: 10px !important;
}

.hungarian-location__feedback {
  display: block;
  margin-top: 4px;
  font-size: 10px;
  line-height: 1.3;
}

.hungarian-location__feedback.is-valid {
  color: #258d52;
}

.hungarian-location__feedback.is-invalid {
  color: #d84848;
}

.hungarian-location--light .hungarian-location__input,
.app-container--desktop-ad-upload .hungarian-location__input {
  color: #171717;
  border-color: #ded8cf;
  background: #fff;
}

@media (max-width: 640px) {
  .hungarian-location__options {
    max-height: 220px;
  }
}

/* ──────────────────────────────────────────────────────────────────────────
   Public listing detail — approved desktop/mobile profile layout
   The global desktop header remains DesktopMarketplaceShell.
   ────────────────────────────────────────────────────────────────────────── */
.listing-profile {
  --listing-orange: #ff5a1f;
  --listing-orange-dark: #f04b12;
  --listing-canvas: #f5f5f4;
  --listing-border: #e9e4de;
  --listing-muted: #6f747c;
  display: flex;
  min-width: 0;
  min-height: 0;
  height: 100%;
  flex: 1 1 auto;
  flex-direction: column;
  overflow: hidden;
  color: #151719;
  background: var(--listing-canvas);
}

.listing-profile.desktop-marketplace__scroll {
  overflow: auto;
  overscroll-behavior: contain;
}

.listing-profile__scroll {
  min-height: 0;
  flex: 1 1 auto;
  overflow: auto;
  padding-bottom: 48px;
}

.listing-profile.desktop-marketplace__scroll > .listing-profile__scroll {
  overflow: visible;
}

.listing-profile button,
.listing-profile a {
  -webkit-tap-highlight-color: transparent;
}

.listing-profile button:focus-visible,
.listing-profile a:focus-visible {
  outline: 3px solid rgba(255, 90, 31, 0.35);
  outline-offset: 2px;
}

.listing-profile__breadcrumbs {
  display: flex;
  width: min(990px, calc(100% - 32px));
  min-height: 46px;
  margin: 0 auto;
  align-items: center;
  gap: 9px;
  overflow: hidden;
  color: #6b7078;
  font-size: 12px;
  white-space: nowrap;
}

.listing-profile__breadcrumbs button {
  padding: 0;
  color: inherit;
  border: 0;
  background: transparent;
  font: inherit;
  cursor: pointer;
}

.listing-profile__breadcrumbs button:hover,
.listing-profile__breadcrumbs strong {
  color: #202327;
}

.listing-profile__breadcrumbs strong {
  overflow: hidden;
  text-overflow: ellipsis;
}

.listing-profile__grid {
  display: grid;
  width: min(990px, calc(100% - 32px));
  margin: 0 auto;
  grid-template-columns: 650px 325px;
  gap: 15px;
  align-items: start;
}

.listing-profile__main-column {
  display: grid;
  min-width: 0;
  gap: 15px;
}

.listing-profile__gallery-card,
.listing-profile__basic-card,
.listing-profile__stats,
.listing-profile__description-card,
.listing-profile__summary-card {
  min-width: 0;
  border: 1px solid var(--listing-border);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(30, 26, 21, 0.055);
}

.listing-profile__gallery-card {
  padding: 10px;
}

.listing-profile__gallery-stage {
  position: relative;
  display: grid;
  height: 435px;
  overflow: hidden;
  place-items: center;
  border-radius: 11px;
  background: linear-gradient(145deg, #f8f8f7 0%, #ededeb 100%);
  touch-action: pan-y;
}

.listing-profile__gallery-stage > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}

.listing-profile__counter {
  position: absolute;
  z-index: 2;
  top: 13px;
  left: 13px;
  padding: 7px 12px;
  color: #fff;
  border-radius: 999px;
  background: rgba(18, 19, 20, 0.86);
  font-size: 12px;
  font-weight: 800;
}

.listing-profile__fullscreen,
.listing-profile__gallery-arrow,
.listing-profile__modal-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #202327;
  border: 1px solid rgba(20, 20, 20, 0.08);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 5px 14px rgba(20, 20, 20, 0.1);
  cursor: pointer;
}

.listing-profile__fullscreen {
  position: absolute;
  z-index: 2;
  top: 13px;
  right: 13px;
  min-height: 38px;
  padding: 0 13px;
  gap: 7px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 750;
}

.listing-profile__gallery-arrow {
  position: absolute;
  z-index: 2;
  top: 50%;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  transform: translateY(-50%);
}

.listing-profile__gallery-arrow.is-left { left: 14px; }
.listing-profile__gallery-arrow.is-right { right: 14px; }

.listing-profile__gallery-arrow:hover,
.listing-profile__fullscreen:hover {
  border-color: rgba(255, 90, 31, 0.35);
  transform: translateY(-50%) scale(1.03);
}

.listing-profile__fullscreen:hover { transform: scale(1.02); }

.listing-profile__thumbnails {
  display: flex;
  margin-top: 9px;
  gap: 8px;
  overflow: hidden;
}

.listing-profile__thumbnails button {
  position: relative;
  width: 78px;
  height: 58px;
  flex: 0 0 78px;
  overflow: hidden;
  padding: 0;
  border: 2px solid transparent;
  border-radius: 9px;
  background: #f0f0ef;
  cursor: pointer;
}

.listing-profile__thumbnails button.is-active { border-color: var(--listing-orange); }
.listing-profile__thumbnails img { width: 100%; height: 100%; object-fit: cover; }
.listing-profile__thumbnails span {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #222;
  background: rgba(255,255,255,.78);
  font-size: 17px;
  font-weight: 850;
}

.listing-profile__basic-card,
.listing-profile__description-card {
  padding: 17px 20px 19px;
}

.listing-profile__basic-card h2,
.listing-profile__description-card h2 {
  margin: 0 0 15px;
  font-size: 16px;
  line-height: 1.2;
}

.listing-profile__basic-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid #eeeae5;
  border-left: 1px solid #eeeae5;
}

.listing-profile__basic-grid article {
  display: grid;
  min-height: 104px;
  padding: 13px 8px 12px;
  place-items: center;
  align-content: center;
  gap: 5px;
  border-right: 1px solid #eeeae5;
  border-bottom: 1px solid #eeeae5;
  text-align: center;
}

.listing-profile__basic-grid svg {
  width: 22px;
  height: 22px;
  color: var(--listing-orange);
  stroke-width: 1.8;
}

.listing-profile__basic-grid span,
.listing-profile__stats span {
  color: var(--listing-muted);
  font-size: 11px;
}

.listing-profile__basic-grid strong {
  overflow-wrap: anywhere;
  font-size: 13px;
}

.listing-profile__basic-grid strong.is-success { color: #169447; }
.listing-profile__basic-grid strong.is-danger { color: #e53935; }

.listing-profile__stats {
  display: grid;
  padding: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.listing-profile__stats article {
  display: grid;
  min-height: 67px;
  padding: 10px 12px;
  grid-template-columns: 28px 1fr;
  grid-template-rows: auto auto;
  align-items: center;
  border-radius: 10px;
  background: #fff4ee;
}

.listing-profile__stats svg {
  width: 20px;
  height: 20px;
  grid-row: 1 / 3;
  color: var(--listing-orange);
}

.listing-profile__stats strong { font-size: 12px; }

.listing-profile__description-card p {
  margin: 0;
  color: #545960;
  font-size: 13px;
  line-height: 1.6;
  white-space: pre-wrap;
}

.listing-profile__tags {
  display: flex;
  margin-top: 13px;
  flex-wrap: wrap;
  gap: 6px;
}

.listing-profile__tags span {
  padding: 5px 10px;
  color: #646a72;
  border-radius: 999px;
  background: #f0f1f2;
  font-size: 10px;
  font-weight: 700;
}

.listing-profile__summary-card {
  position: sticky;
  top: 15px;
  padding: 22px;
}

.listing-profile__category {
  display: inline-flex;
  padding: 5px 10px;
  color: var(--listing-orange-dark);
  border-radius: 999px;
  background: #fff0e9;
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
}

.listing-profile__summary-card h1 {
  margin: 16px 0 8px;
  overflow-wrap: anywhere;
  font-size: 22px;
  line-height: 1.23;
  letter-spacing: -0.35px;
}

.listing-profile__location {
  display: flex;
  margin: 0;
  align-items: center;
  gap: 6px;
  color: #626871;
  font-size: 12px;
}

.listing-profile__location svg { width: 15px; height: 15px; }

.listing-profile__price {
  display: block;
  margin-top: 23px;
  color: var(--listing-orange-dark);
  font-size: 29px;
  line-height: 1.08;
  letter-spacing: -0.4px;
}

.listing-profile__price-type {
  display: flex;
  margin: 7px 0 0;
  align-items: center;
  gap: 6px;
  color: #6e737b;
  font-size: 11px;
}

.listing-profile__price-type svg { width: 14px; height: 14px; }
.listing-profile__summary-card hr { margin: 22px 0; border: 0; border-top: 1px solid #ece7e1; }

.listing-profile__seller {
  display: grid;
  width: 100%;
  min-height: 54px;
  padding: 0;
  grid-template-columns: 44px 1fr 20px;
  align-items: center;
  gap: 10px;
  color: inherit;
  border: 0;
  background: transparent;
  text-align: left;
  cursor: pointer;
}

.listing-profile__seller > b {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  color: #fff;
  border-radius: 50%;
  background: linear-gradient(135deg, #ff6a24, #f33f0e);
  font-size: 13px;
}

.listing-profile__seller span { display: grid; gap: 4px; min-width: 0; }
.listing-profile__seller strong { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.listing-profile__seller small { color: #747981; font-size: 10px; }
.listing-profile__seller > svg { width: 18px; height: 18px; color: #6a7078; }

.listing-profile__message,
.listing-profile__phone {
  display: flex;
  width: 100%;
  min-height: 48px;
  margin-top: 17px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: 9px;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}

.listing-profile__message {
  color: #fff;
  border: 1px solid var(--listing-orange-dark);
  background: linear-gradient(135deg, #ff5d1e, #fb3f0c);
  box-shadow: 0 8px 18px rgba(255, 76, 16, 0.16);
}

.listing-profile__phone {
  margin-top: 9px;
  color: var(--listing-orange-dark);
  border: 1px solid var(--listing-orange);
  background: #fff;
}

.listing-profile__phone:disabled {
  color: #8a8e94;
  border-color: #d6d7d9;
  cursor: not-allowed;
}

.listing-profile__message svg,
.listing-profile__phone svg { width: 17px; height: 17px; }

.listing-profile__secondary-actions {
  display: grid;
  margin-top: 13px;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.listing-profile__secondary-actions button {
  display: flex;
  min-height: 42px;
  padding: 0 5px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: #6b7078;
  border: 0;
  background: transparent;
  font-size: 10px;
  cursor: pointer;
}

.listing-profile__secondary-actions button.is-active { color: var(--listing-orange-dark); }
.listing-profile__secondary-actions svg { width: 16px; height: 16px; }

/* LST-01 — approved five-card profile geometry (990 = 644 + 24 + 322). */
.listing-profile__back-row {
  display: flex;
  width: 990px;
  max-width: calc(100% - 32px);
  min-height: 58px;
  margin: 0 auto;
  align-items: center;
}

.listing-profile__back {
  display: inline-flex;
  min-height: 44px;
  padding: 0 4px;
  align-items: center;
  gap: 8px;
  color: #4f5661;
  border: 0;
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}

.listing-profile__back:hover { color: var(--listing-orange-dark); }
.listing-profile__back svg { width: 18px; height: 18px; }

.listing-profile__grid {
  width: 990px;
  max-width: calc(100% - 32px);
  grid-template-columns: 644px 322px;
  gap: 24px;
  align-items: start;
}

.listing-profile__main-column {
  display: grid;
  min-width: 0;
  gap: 16px;
}

.listing-profile__gallery-card,
.listing-profile__basic-card,
.listing-profile__stats,
.listing-profile__description-card,
.listing-profile__summary-card {
  border-color: #e5e7eb;
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(16, 24, 40, 0.06);
}

.listing-profile__gallery-card {
  display: flex;
  height: auto;
  padding: 24px;
  flex-direction: column;
}

.listing-profile__gallery-stage {
  min-height: 390px;
  height: auto;
  flex: 1 1 auto;
  border: 1px solid #eef0f2;
  border-radius: 12px;
  background: #fff;
}

.listing-profile__thumbnails {
  min-height: 52px;
  margin-top: 12px;
  gap: 8px;
  overflow-x: auto;
  scrollbar-width: thin;
}

.listing-profile__thumbnails button {
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  border: 2px solid #e5e7eb;
  border-radius: 8px;
  background: #f4f5f7;
}

.listing-profile__basic-card { padding: 24px; }
.listing-profile__description-card { padding: 16px 18px 18px; }
.listing-profile__stats { padding: 24px; }

.listing-profile__basic-card h2,
.listing-profile__stats h2,
.listing-profile__description-card h2 {
  margin: 0 0 16px;
  color: #1d2433;
  font-size: 18px;
  line-height: 1.3;
}

.listing-profile__basic-grid {
  overflow: visible;
  gap: 3px;
  border: 0;
  border-radius: 0;
}

.listing-profile__basic-grid article {
  min-height: 79.2px;
  padding: 16px 18px;
  grid-template-columns: 34px minmax(0, 1fr);
  grid-template-rows: auto auto;
  place-items: initial;
  align-items: center;
  align-content: center;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  text-align: left;
}

.listing-profile__basic-grid svg { grid-row: 1 / 3; }

.listing-profile__stats {
  position: relative;
  display: block;
}

.listing-profile__stats-grid {
  display: grid;
  overflow: visible;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3px;
  border: 0;
  border-radius: 0;
}

.listing-profile__stats-grid article {
  display: grid;
  min-height: 68.4px;
  padding: 12px 18px;
  grid-template-columns: 34px 1fr;
  grid-template-rows: auto auto;
  align-items: center;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #fff4ee;
}

.listing-profile__stats-grid svg {
  width: 20px;
  height: 20px;
  grid-row: 1 / 3;
  color: var(--listing-orange);
}

.listing-profile__stats-grid span {
  color: var(--listing-muted);
  font-size: 11px;
}

.listing-profile__stats-grid strong { font-size: 13px; }

@media (min-width: 1024px) {
  .listing-profile__basic-grid span { font-size: 12px; }
  .listing-profile__basic-grid strong { font-size: 14px; }
  .listing-profile__stats-grid span { font-size: 12px; }
  .listing-profile__stats-grid strong { font-size: 14px; }
  .listing-profile__seller strong { font-size: 14px; }
  .listing-profile__seller small { font-size: 11px; }
}

.listing-profile__stats > em {
  display: block;
  margin-top: 8px;
  color: #8a5b44;
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  text-align: right;
}

.listing-profile__tags { gap: 8px; }

.listing-profile__summary-card {
  position: sticky;
  top: 24px;
  display: flex;
  height: auto;
  padding: 24px;
  align-self: start;
  flex-direction: column;
}

.listing-profile__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.listing-profile__category,
.listing-profile__condition {
  display: inline-flex;
  padding: 5px 10px;
  color: #fff;
  border-radius: 999px;
  background: #2563eb;
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
}

.listing-profile__condition.is-new { background: #e53935; }
.listing-profile__condition.is-used { background: #2e9d62; }
.listing-profile__price small { font-size: 14px; font-weight: 800; }

.listing-profile__seller > b { overflow: hidden; }
.listing-profile__seller > b img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.listing-profile__seller:disabled {
  color: inherit;
  cursor: default;
  opacity: 1;
}

.listing-profile__secondary-actions {
  margin-top: auto;
  padding-top: 14px;
}

.listing-profile__secondary-actions button {
  min-height: 44px;
  padding: 0 8px;
  color: #172b4d;
  border: 1px solid #172b4d;
  border-radius: 9px;
  background: #fff;
  font-size: 11px;
  font-weight: 800;
}

.listing-profile__secondary-actions button:first-child,
.listing-profile__secondary-actions button.is-active {
  color: #fff;
  background: #172b4d;
}

.listing-profile__modal {
  position: fixed;
  z-index: 10000;
  inset: 0;
  display: grid;
  padding: 36px;
  place-items: center;
  background: rgba(9, 10, 11, 0.95);
}

.listing-profile__modal .listing-profile__gallery-stage {
  width: min(1200px, calc(100vw - 72px));
  height: calc(100vh - 72px);
  background: transparent;
}

.listing-profile__modal-close {
  position: absolute;
  z-index: 5;
  top: 18px;
  right: 18px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
}

.listing-profile__mobile-header { display: none; }

@media (max-width: 1023px) {
  .listing-profile__mobile-header {
    position: relative;
    z-index: 10;
    display: grid;
    min-height: 64px;
    padding: 0 12px;
    flex: 0 0 64px;
    grid-template-columns: 44px 1fr 44px;
    align-items: center;
    border-bottom: 1px solid #ece7e1;
    background: #fff;
  }

  .listing-profile__mobile-header button {
    display: grid;
    width: 44px;
    height: 44px;
    padding: 0;
    place-items: center;
    color: #181a1d;
    border: 0;
    background: transparent;
  }

  .listing-profile__mobile-header img {
    width: min(180px, 70vw);
    height: 44px;
    justify-self: center;
    object-fit: contain;
  }

  .listing-profile__back-row { display: none; }

  .listing-profile__grid {
    display: flex;
    width: calc(100% - 24px);
    max-width: none;
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
  }

  .listing-profile__main-column { display: contents; }
  .listing-profile__gallery-card { order: 1; }
  .listing-profile__summary-card { order: 2; }
  .listing-profile__basic-card { order: 3; }
  .listing-profile__stats { order: 4; }
  .listing-profile__description-card { order: 5; }

  .listing-profile__gallery-card { height: auto; padding: 7px; }
  .listing-profile__gallery-stage { min-height: 0; height: auto; aspect-ratio: 1 / 1; }
  .listing-profile__gallery-arrow { width: 40px; height: 40px; }
  .listing-profile__fullscreen { min-height: 36px; padding: 0 10px; font-size: 10px; }

  .listing-profile__thumbnails {
    margin-top: 7px;
    gap: 6px;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .listing-profile__thumbnails::-webkit-scrollbar { display: none; }
  .listing-profile__thumbnails button { width: 55px; height: 48px; flex-basis: 55px; }

  .listing-profile__summary-card {
    position: static;
    height: auto;
    padding: 18px;
    align-self: stretch;
  }

  .listing-profile__summary-card h1 { margin-top: 12px; font-size: 20px; }
  .listing-profile__price { margin-top: 17px; font-size: 27px; }
  .listing-profile__summary-card hr { margin: 18px 0; }
  .listing-profile__message,
  .listing-profile__phone { min-height: 50px; }
  .listing-profile__secondary-actions button { min-height: 44px; }

  .listing-profile__basic-card,
  .listing-profile__description-card { padding: 16px; }

  .listing-profile__basic-grid {
    overflow: hidden;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
  }
  .listing-profile__basic-grid article {
    min-height: 82px;
    border: 0;
    border-right: 1px solid #e5e7eb;
    border-bottom: 1px solid #e5e7eb;
    border-radius: 0;
  }
  .listing-profile__basic-grid article:nth-child(3n) { border-right: 1px solid #e5e7eb; }
  .listing-profile__basic-grid article:nth-child(2n) { border-right: 0; }
  .listing-profile__basic-grid article:nth-child(n + 4) { border-bottom: 1px solid #e5e7eb; }
  .listing-profile__basic-grid article:nth-child(n + 5) { border-bottom: 0; }
  .listing-profile__stats { gap: 5px; }
  .listing-profile__stats-grid {
    overflow: hidden;
    gap: 0;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
  }
  .listing-profile__stats article {
    min-height: 76px;
    padding: 9px 5px;
    grid-template-columns: 1fr;
    grid-template-rows: 22px auto auto;
    justify-items: center;
    border: 0;
    border-right: 1px solid #e5e7eb;
    border-radius: 0;
    text-align: center;
  }
  .listing-profile__stats article:last-child { border-right: 0; }
  .listing-profile__stats svg { grid-row: auto; }
  .listing-profile__stats span { font-size: 9px; }
  .listing-profile__stats strong { font-size: 10px; }

  .listing-profile__modal { padding: 0; }
  .listing-profile__modal .listing-profile__gallery-stage { width: 100vw; height: 100vh; }
}

@media (max-width: 360px) {
  .listing-profile__secondary-actions { grid-template-columns: 1fr; }
  .listing-profile__stats-grid { grid-template-columns: 1fr; }
  .listing-profile__stats-grid article { border-right: 0; border-bottom: 1px solid #e5e7eb; }
  .listing-profile__stats-grid article:last-child { border-bottom: 0; }
  .listing-profile__stats article {
    grid-template-columns: 28px 1fr;
    grid-template-rows: auto auto;
    justify-items: start;
    text-align: left;
  }
  .listing-profile__stats svg { grid-row: 1 / 3; }
}
