/* Source: assets/market-v2/styles/tokens.css */
/* Market v2 Design System 1.0.58: the single token source of truth. */
:root {
    /* Primitives: color */
    --ds-color-white: #ffffff;
    --ds-color-neutral-25: #fbfbfc;
    --ds-color-neutral-50: #f6f7f8;
    --ds-color-neutral-100: #eff1f3;
    --ds-color-neutral-200: #e2e5e9;
    --ds-color-neutral-300: #cfd4da;
    --ds-color-neutral-400: #9aa2ad;
    --ds-color-neutral-500: #66707c;
    --ds-color-neutral-600: #4e5762;
    --ds-color-neutral-700: #353b44;
    --ds-color-neutral-800: #24282f;
    --ds-color-neutral-900: #16181d;
    --ds-color-brand-50: #fff2f4;
    --ds-color-brand-100: #ffe2e7;
    --ds-color-brand-200: #f3b9c2;
    --ds-color-brand-500: #c51e36;
    --ds-color-brand-600: #aa172c;
    --ds-color-brand-700: #8d1225;
    --ds-color-blue-50: #eef6fd;
    --ds-color-blue-200: #bad5ec;
    --ds-color-blue-600: #2467a8;
    --ds-color-green-50: #edf8f3;
    --ds-color-green-200: #addbc9;
    --ds-color-green-600: #167a55;
    --ds-color-amber-50: #fff7e8;
    --ds-color-amber-200: #e9c98d;
    --ds-color-amber-700: #8a500f;
    --ds-color-red-50: #fff1f2;
    --ds-color-red-200: #efb3bb;
    --ds-color-red-600: #c93646;

    /* Primitives: typography */
    --ds-font-sans: "Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
    --ds-font-size-12: 12px;
    --ds-font-size-14: 14px;
    --ds-font-size-16: 16px;
    --ds-font-size-18: 18px;
    --ds-font-size-20: 20px;
    --ds-font-size-24: 24px;
    --ds-font-size-30: 30px;
    --ds-font-size-36: 36px;
    --ds-font-size-48: 48px;
    --ds-font-weight-regular: 400;
    --ds-font-weight-medium: 500;
    --ds-font-weight-semibold: 600;
    --ds-font-weight-bold: 700;
    --ds-line-height-tight: 1.3;
    --ds-line-height-body: 1.6;
    --ds-line-height-prose: 1.8;

    /* Primitives: spacing and shape */
    --ds-space-1: 4px;
    --ds-space-2: 8px;
    --ds-space-3: 12px;
    --ds-space-4: 16px;
    --ds-space-6: 24px;
    --ds-space-8: 32px;
    --ds-space-12: 48px;
    --ds-space-16: 64px;
    --ds-space-24: 96px;
    --ds-radius-1: 4px;
    --ds-radius-2: 6px;
    --ds-radius-3: 8px;
    --ds-radius-dialog: 12px;
    --ds-radius-pill: 999px;

    /* Primitives: elevation, motion and stacking */
    --ds-shadow-1: 0 1px 2px rgba(22, 24, 29, .04);
    --ds-shadow-2: 0 8px 24px rgba(22, 24, 29, .07);
    --ds-shadow-3: 0 20px 56px rgba(22, 24, 29, .16);
    --ds-shadow-mobile-bar: 0 -1px 12px rgba(22, 24, 29, .06);
    --ds-duration-fast: 150ms;
    --ds-duration-base: 220ms;
    --ds-ease-out: cubic-bezier(.22, 1, .36, 1);
    --ds-z-dropdown: 20;
    --ds-z-sticky: 30;
    --ds-z-backdrop: 50;
    --ds-z-modal: 60;
    --ds-z-mobile-bar: 70;
    --ds-z-toast: 80;
    --ds-z-tooltip: 90;

    /* Semantics */
    --ds-color-page: var(--ds-color-neutral-50);
    --ds-color-surface: var(--ds-color-white);
    --ds-color-surface-subtle: var(--ds-color-neutral-25);
    --ds-color-surface-muted: var(--ds-color-neutral-100);
    --ds-color-surface-hover: #e9ecef;
    --ds-color-text: var(--ds-color-neutral-900);
    --ds-color-text-strong: #111318;
    --ds-color-text-muted: var(--ds-color-neutral-500);
    --ds-color-text-subtle: var(--ds-color-neutral-600);
    --ds-color-border: var(--ds-color-neutral-200);
    --ds-color-border-strong: var(--ds-color-neutral-300);
    --ds-color-primary: var(--ds-color-brand-500);
    --ds-color-primary-hover: var(--ds-color-brand-600);
    --ds-color-primary-active: var(--ds-color-brand-700);
    --ds-color-primary-soft: var(--ds-color-brand-50);
    --ds-color-primary-border: var(--ds-color-brand-200);
    --ds-color-link: var(--ds-color-blue-600);
    --ds-color-success: var(--ds-color-green-600);
    --ds-color-success-soft: var(--ds-color-green-50);
    --ds-color-success-border: var(--ds-color-green-200);
    --ds-color-warning: var(--ds-color-amber-700);
    --ds-color-warning-soft: var(--ds-color-amber-50);
    --ds-color-warning-border: var(--ds-color-amber-200);
    --ds-color-danger: var(--ds-color-red-600);
    --ds-color-danger-soft: var(--ds-color-red-50);
    --ds-color-danger-border: var(--ds-color-red-200);
    --ds-color-info: var(--ds-color-blue-600);
    --ds-color-info-soft: var(--ds-color-blue-50);
    --ds-color-info-border: var(--ds-color-blue-200);
    --ds-color-overlay: rgba(17, 19, 24, .64);
    --ds-color-scrim-control: rgba(20, 24, 30, .64);
    --ds-color-scrim-label: rgba(20, 24, 30, .76);
    --ds-color-scrim-lightbox: rgba(9, 11, 14, .92);
    --ds-color-inverse-border: rgba(255, 255, 255, .52);
    --ds-color-inverse-border-strong: rgba(255, 255, 255, .8);
    --ds-color-focus: rgba(197, 30, 54, .18);
    --ds-color-focus-danger: rgba(201, 54, 70, .12);

    /* Layout and component contracts */
    --ds-layout-max: 1280px;
    --ds-layout-reading: 760px;
    --ds-layout-gutter: 32px;
    --ds-layout-gutter-tablet: 24px;
    --ds-layout-gutter-mobile: 16px;
    --ds-layout-columns: 12;
    --ds-layout-column-gap: 24px;
    --ds-section-gap: 48px;
    --ds-control-height-sm: 36px;
    --ds-control-height-md: 40px;
    --ds-control-height-lg: 44px;
    --ds-touch-target: 44px;
    --ds-control-radius: var(--ds-radius-2);
    --ds-card-radius: var(--ds-radius-3);
    --ds-dialog-radius: var(--ds-radius-dialog);
    --ds-button-padding-x: 16px;
    --ds-field-padding-x: 12px;
    --ds-card-padding: 24px;
    --ds-header-height: 68px;
    --ds-mobile-header-height: 56px;
    --ds-mobile-nav-height: 64px;
    --ds-focus-ring: 0 0 0 3px var(--ds-color-focus);
}

/* Frontend compatibility aliases only. */
body.theme-market-v2 {
    --color-white: var(--ds-color-white);
    --color-neutral-25: var(--ds-color-neutral-25);
    --color-neutral-50: var(--ds-color-neutral-50);
    --color-neutral-100: var(--ds-color-neutral-100);
    --color-neutral-200: var(--ds-color-neutral-200);
    --color-neutral-300: var(--ds-color-neutral-300);
    --color-neutral-400: var(--ds-color-neutral-400);
    --color-neutral-500: var(--ds-color-neutral-500);
    --color-neutral-600: var(--ds-color-neutral-600);
    --color-neutral-700: var(--ds-color-neutral-700);
    --color-neutral-800: var(--ds-color-neutral-800);
    --color-neutral-900: var(--ds-color-neutral-900);
    --font-sans: var(--ds-font-sans);
    --font-size-12: var(--ds-font-size-12);
    --font-size-14: var(--ds-font-size-14);
    --font-size-16: var(--ds-font-size-16);
    --font-size-18: var(--ds-font-size-18);
    --font-size-20: var(--ds-font-size-20);
    --font-size-24: var(--ds-font-size-24);
    --font-size-30: var(--ds-font-size-30);
    --font-size-36: var(--ds-font-size-36);
    --font-size-48: var(--ds-font-size-48);
    --font-weight-regular: var(--ds-font-weight-regular);
    --font-weight-medium: var(--ds-font-weight-medium);
    --font-weight-semibold: var(--ds-font-weight-semibold);
    --font-weight-bold: var(--ds-font-weight-bold);
    --line-height-tight: var(--ds-line-height-tight);
    --line-height-body: var(--ds-line-height-body);
    --line-height-prose: var(--ds-line-height-prose);
    --space-1: var(--ds-space-1);
    --space-2: var(--ds-space-2);
    --space-3: var(--ds-space-3);
    --space-4: var(--ds-space-4);
    --space-6: var(--ds-space-6);
    --space-8: var(--ds-space-8);
    --space-12: var(--ds-space-12);
    --space-16: var(--ds-space-16);
    --space-24: var(--ds-space-24);
    --radius-1: var(--ds-radius-1);
    --radius-2: var(--ds-radius-2);
    --radius-3: var(--ds-radius-3);
    --radius-dialog: var(--ds-radius-dialog);
    --radius-pill: var(--ds-radius-pill);
    --shadow-1: var(--ds-shadow-1);
    --shadow-2: var(--ds-shadow-2);
    --shadow-3: var(--ds-shadow-3);
    --shadow-mobile-bar: var(--ds-shadow-mobile-bar);
    --motion-fast: var(--ds-duration-fast);
    --motion-base: var(--ds-duration-base);
    --ease-out: var(--ds-ease-out);
    --z-dropdown: var(--ds-z-dropdown);
    --z-sticky: var(--ds-z-sticky);
    --z-backdrop: var(--ds-z-backdrop);
    --z-modal: var(--ds-z-modal);
    --z-mobile-bar: var(--ds-z-mobile-bar);
    --z-toast: var(--ds-z-toast);
    --z-tooltip: var(--ds-z-tooltip);
    --color-page: var(--ds-color-page);
    --color-surface: var(--ds-color-surface);
    --color-surface-subtle: var(--ds-color-surface-subtle);
    --color-surface-muted: var(--ds-color-surface-muted);
    --color-surface-hover: var(--ds-color-surface-hover);
    --color-text: var(--ds-color-text);
    --color-text-strong: var(--ds-color-text-strong);
    --color-text-muted: var(--ds-color-text-muted);
    --color-text-subtle: var(--ds-color-text-subtle);
    --color-border: var(--ds-color-border);
    --color-border-strong: var(--ds-color-border-strong);
    --color-primary: var(--ds-color-primary);
    --color-primary-hover: var(--ds-color-primary-hover);
    --color-primary-active: var(--ds-color-primary-active);
    --color-primary-soft: var(--ds-color-primary-soft);
    --color-primary-border: var(--ds-color-primary-border);
    --color-link: var(--ds-color-link);
    --color-success: var(--ds-color-success);
    --color-success-soft: var(--ds-color-success-soft);
    --color-success-border: var(--ds-color-success-border);
    --color-warning: var(--ds-color-warning);
    --color-warning-soft: var(--ds-color-warning-soft);
    --color-warning-border: var(--ds-color-warning-border);
    --color-danger: var(--ds-color-danger);
    --color-danger-soft: var(--ds-color-danger-soft);
    --color-danger-border: var(--ds-color-danger-border);
    --color-info: var(--ds-color-info);
    --color-info-soft: var(--ds-color-info-soft);
    --color-info-border: var(--ds-color-info-border);
    --color-overlay: var(--ds-color-overlay);
    --color-scrim-control: var(--ds-color-scrim-control);
    --color-scrim-label: var(--ds-color-scrim-label);
    --color-scrim-lightbox: var(--ds-color-scrim-lightbox);
    --color-inverse-border: var(--ds-color-inverse-border);
    --color-inverse-border-strong: var(--ds-color-inverse-border-strong);
    --color-focus: var(--ds-color-focus);
    --color-focus-danger: var(--ds-color-focus-danger);
    --layout-max: var(--ds-layout-max);
    --layout-reading: var(--ds-layout-reading);
    --layout-gutter: var(--ds-layout-gutter);
    --layout-gutter-tablet: var(--ds-layout-gutter-tablet);
    --layout-gutter-mobile: var(--ds-layout-gutter-mobile);
    --layout-columns: var(--ds-layout-columns);
    --layout-column-gap: var(--ds-layout-column-gap);
    --section-gap: var(--ds-section-gap);
    --control-height-sm: var(--ds-control-height-sm);
    --control-height-md: var(--ds-control-height-md);
    --control-height-lg: var(--ds-control-height-lg);
    --touch-target: var(--ds-touch-target);
    --control-radius: var(--ds-control-radius);
    --card-radius: var(--ds-card-radius);
    --dialog-radius: var(--ds-dialog-radius);
    --button-padding-x: var(--ds-button-padding-x);
    --field-padding-x: var(--ds-field-padding-x);
    --card-padding: var(--ds-card-padding);
    --header-height: var(--ds-header-height);
    --mobile-header-height: var(--ds-mobile-header-height);
    --mobile-nav-height: var(--ds-mobile-nav-height);
    --focus-ring: var(--ds-focus-ring);

    --ui-font: var(--ds-font-sans);
    --ui-page-max: var(--ds-layout-max);
    --ui-reading-max: 1080px;
    --ui-page-gutter: var(--ds-layout-gutter);
    --ui-mobile-gutter: var(--ds-layout-gutter-mobile);
    --ui-mobile-header: var(--ds-mobile-header-height);
    --ui-primary: var(--ds-color-primary);
    --ui-primary-hover: var(--ds-color-primary-hover);
    --ui-primary-active: var(--ds-color-primary-active);
    --ui-primary-soft: var(--ds-color-primary-soft);
    --ui-primary-border: var(--ds-color-primary-border);
    --ui-on-primary: var(--ds-color-white);
    --ui-accent: var(--ds-color-primary);
    --ui-accent-soft: var(--ds-color-primary-soft);
    --ui-price: var(--ds-color-primary);
    --ui-ink: var(--ds-color-text);
    --ui-heading: var(--ds-color-text-strong);
    --ui-muted: var(--ds-color-text-muted);
    --ui-subtle: var(--ds-color-text-subtle);
    --ui-line: var(--ds-color-border);
    --ui-line-strong: var(--ds-color-border-strong);
    --ui-page: var(--ds-color-page);
    --ui-surface: var(--ds-color-surface);
    --ui-surface-raised: var(--ds-color-surface);
    --ui-surface-muted: var(--ds-color-surface-muted);
    --ui-surface-hover: var(--ds-color-surface-hover);
    --ui-surface-accent: var(--ds-color-primary-soft);
    --ui-overlay: var(--ds-color-overlay);
    --ui-nav-surface: var(--ds-color-surface);
    --ui-mobile-bar-surface: var(--ds-color-surface);
    --ui-success: var(--ds-color-success);
    --ui-success-soft: var(--ds-color-success-soft);
    --ui-success-border: var(--ds-color-success-border);
    --ui-danger: var(--ds-color-danger);
    --ui-danger-soft: var(--ds-color-danger-soft);
    --ui-danger-border: var(--ds-color-danger-border);
    --ui-warning: var(--ds-color-warning);
    --ui-warning-soft: var(--ds-color-warning-soft);
    --ui-warning-border: var(--ds-color-warning-border);
    --ui-info: var(--ds-color-info);
    --ui-info-soft: var(--ds-color-info-soft);
    --ui-info-border: var(--ds-color-info-border);
    --ui-image-placeholder: var(--ds-color-neutral-100);
    --ui-image-sheen: var(--ds-color-neutral-25);
    --ui-skeleton: var(--ds-color-neutral-200);
    --ui-skeleton-highlight: var(--ds-color-neutral-50);
    --ui-banner-copy: rgba(17, 19, 24, .76);
    --ui-favorite-surface: rgba(255, 255, 255, .94);
    --ui-hero-surface: var(--ds-color-surface);
    --ui-hero-ink: var(--ds-color-text-strong);
    --ui-hero-muted: var(--ds-color-text-muted);
    --ui-profile-surface: var(--ds-color-surface);
    --ui-profile-ink: var(--ds-color-text-strong);
    --ui-profile-muted: var(--ds-color-text-muted);
    --ui-share-surface: var(--ds-color-surface);
    --ui-share-ink: var(--ds-color-text);
    --ui-share-muted: var(--ds-color-text-muted);
    --ui-share-line: var(--ds-color-border);
    --ui-radius-xs: var(--ds-radius-1);
    --ui-radius-sm: var(--ds-radius-2);
    --ui-radius-md: var(--ds-radius-3);
    --ui-radius-lg: var(--ds-radius-3);
    --ui-radius-round: var(--ds-radius-pill);
    --ui-control-sm: var(--ds-control-height-sm);
    --ui-control-md: var(--ds-control-height-md);
    --ui-control-lg: var(--ds-control-height-lg);
    --ui-touch-target: var(--ds-touch-target);
    --ui-shadow-xs: var(--ds-shadow-1);
    --ui-shadow-sm: var(--ds-shadow-2);
    --ui-shadow-md: var(--ds-shadow-2);
    --ui-shadow-lg: var(--ds-shadow-3);
    --ui-focus: var(--ds-focus-ring);
    --ui-duration-fast: var(--ds-duration-fast);
    --ui-duration: var(--ds-duration-base);
    --ui-ease-out: var(--ds-ease-out);
    --ui-z-dropdown: var(--ds-z-dropdown);
    --ui-z-sticky: var(--ds-z-sticky);
    --ui-z-backdrop: var(--ds-z-backdrop);
    --ui-z-modal: var(--ds-z-modal);
    --ui-z-mobile-bar: var(--ds-z-mobile-bar);
    --ui-z-toast: var(--ds-z-toast);
    --market-nav-height: var(--ds-header-height);
    --market-mobile-nav-height: var(--ds-mobile-nav-height);
    --market-content-gap: var(--ds-space-6);
    --market-section-gap: var(--ds-section-gap);
    --market-reading-width: var(--ds-layout-reading);
    --brand: var(--ds-color-primary);
    --brand-2: var(--ds-color-primary);
    --ink: var(--ds-color-text);
    --muted: var(--ds-color-text-muted);
    --line: var(--ds-color-border);
    --soft: var(--ds-color-surface-muted);
    --card: var(--ds-color-surface);
    --good: var(--ds-color-success);
    --bad: var(--ds-color-danger);
    --shadow: var(--ds-shadow-2);
    --page-bg: var(--ds-color-page);
}

/* Source: assets/market-v2/styles/base.css */
/* Market v2 storefront foundation. */
@font-face {
    font-family: "Inter Variable";
    src: url('../fonts/inter-latin-wght-normal.woff2') format('woff2');
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
}

.market-v2-page small {
    font-size: var(--ds-font-size-12, 12px);
}

body.theme-market-v2 {
    color-scheme: light;
    min-width: 320px;
    min-height: 100vh;
    margin: 0;
    overflow-x: hidden;
    overflow-x: clip;
    background: var(--color-page);
    color: var(--color-text);
    font-family: var(--font-sans);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-body);
    letter-spacing: 0;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.theme-market-v2,
.theme-market-v2 *,
.theme-market-v2 *::before,
.theme-market-v2 *::after {
    box-sizing: border-box;
}

.theme-market-v2 :where(button, input, select, textarea) {
    color: inherit;
    font: inherit;
    letter-spacing: 0;
}

.theme-market-v2 :where(button, [role="button"], a[href]) {
    -webkit-tap-highlight-color: transparent;
}

.theme-market-v2 :where(img, svg, video) {
    display: block;
    max-width: 100%;
}

.theme-market-v2 :where(h1, h2, h3, h4, p) {
    letter-spacing: 0;
    overflow-wrap: anywhere;
}

.theme-market-v2 :where(h1, h2, h3, h4) {
    color: var(--color-text-strong);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-tight);
    text-wrap: balance;
}

.theme-market-v2 p {
    text-wrap: pretty;
}

.theme-market-v2 :where(a, button, input, select, textarea, [role="button"]):focus {
    outline: none;
}

.theme-market-v2 :where(a, button, input, select, textarea, [role="button"]):focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

.theme-market-v2 :where([aria-disabled="true"], :disabled) {
    cursor: not-allowed;
}

.theme-market-v2 ::selection {
    background: var(--color-primary-soft);
    color: var(--color-text-strong);
}

.theme-market-v2 :where([id]) {
    scroll-margin-top: calc(var(--header-height) + var(--space-4));
}

/* 12-column layout primitives for current and parallel HTML work. */
.theme-market-v2 .app-shell,
.theme-market-v2 .market-v2-shell,
.theme-market-v2 .market-container {
    width: min(100%, var(--layout-max));
    margin-inline: auto;
    padding-inline: var(--layout-gutter);
}

.theme-market-v2 .app-shell {
    padding-bottom: var(--space-12);
}

.theme-market-v2 .market-grid,
.theme-market-v2 .grid-12 {
    display: grid;
    grid-template-columns: repeat(var(--layout-columns), minmax(0, 1fr));
    gap: var(--layout-column-gap);
}

.theme-market-v2 .col-span-12 { grid-column: span 12; }
.theme-market-v2 .col-span-9 { grid-column: span 9; }
.theme-market-v2 .col-span-8 { grid-column: span 8; }
.theme-market-v2 .col-span-6 { grid-column: span 6; }
.theme-market-v2 .col-span-4 { grid-column: span 4; }
.theme-market-v2 .col-span-3 { grid-column: span 3; }

.theme-market-v2 .market-v2-main {
    min-width: 0;
    padding-block: var(--space-6) var(--space-12);
}

.theme-market-v2 .market-v2-page-header {
    position: sticky;
    top: 0;
    z-index: var(--z-sticky);
    min-height: var(--mobile-header-height);
    padding-block: var(--space-2);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
    border-bottom: 1px solid var(--color-border);
    background: var(--color-surface);
}

.theme-market-v2:has(.desktop-nav:not(:empty)) .market-v2-page-header {
    display: none;
}

.theme-market-v2 .market-v2-header-link {
    min-height: var(--touch-target);
    padding-inline: var(--space-3);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--color-border-strong);
    border-radius: var(--control-radius);
    background: var(--color-surface);
    color: var(--color-text);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
    transition: border-color var(--motion-fast) var(--ease-out),
        background-color var(--motion-fast) var(--ease-out),
        color var(--motion-fast) var(--ease-out);
}

.theme-market-v2 .market-v2-header-link:hover {
    border-color: var(--color-neutral-400);
    background: var(--color-surface-muted);
    color: var(--color-text-strong);
}

.theme-market-v2 .market-v2-content-heading {
    padding-bottom: var(--space-6);
    border-bottom: 1px solid var(--color-border);
}

.theme-market-v2 .market-v2-content-heading h1 {
    margin: 0;
    font-size: var(--font-size-30);
}

.theme-market-v2 .market-v2-content-heading p {
    max-width: 68ch;
    margin: var(--space-2) 0 0;
    color: var(--color-text-muted);
    font-size: var(--font-size-14);
}

.theme-market-v2 .site-footer.market-v2-shell,
.theme-market-v2 .site-footer {
    padding-top: 0;
}

.theme-market-v2 .page {
    min-width: 0;
}

.theme-market-v2 .page-narrow {
    width: min(100%, var(--ui-reading-max));
    margin-inline: auto;
    padding-top: var(--space-6);
}

.theme-market-v2 .card {
    border: 1px solid var(--color-border);
    border-radius: var(--card-radius);
    background: var(--color-surface);
    box-shadow: var(--shadow-1);
}

.theme-market-v2 .muted {
    color: var(--color-text-muted);
}

.theme-market-v2 .text-good,
.theme-market-v2 .text-success {
    color: var(--color-success);
}

.theme-market-v2 .text-bad,
.theme-market-v2 .text-danger {
    color: var(--color-danger);
}

.theme-market-v2 .ui-icon {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    stroke-width: 1.8;
}

.theme-market-v2 .section-head {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-4);
}

.theme-market-v2 .section-head h2 {
    margin: 0;
    font-size: var(--font-size-20);
}

.theme-market-v2 .section-head p {
    max-width: 64ch;
    margin: var(--space-1) 0 0;
    color: var(--color-text-muted);
    font-size: var(--font-size-14);
}

.theme-market-v2 .grid-2,
.theme-market-v2 .grid-3 {
    gap: var(--space-4);
}

.theme-market-v2 .rich-content {
    max-width: 100%;
    color: var(--color-text);
    font-size: var(--font-size-16);
    line-height: var(--line-height-prose);
}

.theme-market-v2 .rich-content :where(p, ul, ol, blockquote) {
    max-width: 72ch;
    margin: 0 0 var(--space-4);
}

.theme-market-v2 .rich-content a {
    color: var(--color-link);
    font-weight: var(--font-weight-semibold);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.theme-market-v2 .rich-content :where(img, video, iframe) {
    width: 100%;
    margin-top: var(--space-4);
    border-radius: var(--card-radius);
}

.theme-market-v2 .rich-content iframe {
    min-height: 360px;
    border: 1px solid var(--color-border);
    background: var(--color-neutral-900);
}

.theme-market-v2 .lazy-img {
    background-color: var(--ui-image-placeholder);
    background-image: none;
    opacity: .78;
    animation: market-image-pulse 1.2s ease-in-out infinite;
    transition: opacity var(--motion-base) var(--ease-out);
}

.theme-market-v2 .lazy-img.loaded {
    background-color: transparent;
    opacity: 1;
    animation: none;
}

.theme-market-v2 .footer-card {
    margin-top: var(--space-12);
    padding: var(--space-6) 0;
    border-width: 1px 0 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: var(--color-text-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-prose);
}

.theme-market-v2 .footer-card a {
    min-height: var(--touch-target);
    display: inline-flex;
    align-items: center;
    color: var(--color-text-muted);
}

.theme-market-v2 .footer-card a:hover {
    color: var(--color-link);
}

.theme-market-v2 .footer-split {
    color: var(--color-border-strong);
}

@keyframes market-image-pulse {
    0%, 100% { opacity: .62; }
    50% { opacity: .9; }
}

/* Source: assets/market-v2/styles/components.css */
/* Controls */
.theme-market-v2 .btn {
    position: relative;
    min-height: var(--ui-touch-target);
    padding: 0 var(--button-padding-x);
    gap: var(--space-2);
    border: 1px solid transparent;
    border-radius: var(--ui-radius-sm);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-semibold);
    line-height: 1.2;
    box-shadow: none;
    transition: border-color var(--motion-fast) var(--ease-out),
        background-color var(--motion-fast) var(--ease-out),
        color var(--motion-fast) var(--ease-out),
        opacity var(--motion-fast) var(--ease-out);
}

.theme-market-v2 .btn:hover:not(:disabled),
.theme-market-v2 .btn:active:not(:disabled) {
    transform: none;
}

.theme-market-v2 .btn-main {
    border-color: var(--ui-primary);
    background: var(--ui-primary);
    color: var(--ui-on-primary);
}

.theme-market-v2 .btn-main:hover:not(:disabled) {
    border-color: var(--ui-primary-hover);
    background: var(--ui-primary-hover);
}

.theme-market-v2 .btn-main:active:not(:disabled) {
    border-color: var(--ui-primary-active);
    background: var(--ui-primary-active);
}

.theme-market-v2 .btn-line {
    border-color: var(--ui-line-strong);
    background: var(--ui-surface);
    color: var(--ui-heading);
}

.theme-market-v2 .btn-line:hover:not(:disabled) {
    border-color: var(--color-neutral-400);
    background: var(--ui-surface-muted);
    color: var(--ui-heading);
}

.theme-market-v2 .btn-soft {
    border-color: transparent;
    background: var(--ui-surface-muted);
    color: var(--ui-muted);
}

.theme-market-v2 .btn-soft:hover:not(:disabled) {
    background: var(--ui-surface-hover);
    color: var(--ui-heading);
}

.theme-market-v2 .btn.mini {
    min-height: 44px;
    padding-inline: 11px;
    font-size: var(--font-size-12);
}

.theme-market-v2 :where(.btn, .chip):disabled,
.theme-market-v2 :where(.btn, .chip)[aria-busy="true"] {
    opacity: .52;
    pointer-events: none;
}

.theme-market-v2 .btn[aria-busy="true"]::before {
    content: "";
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: var(--radius-pill);
    animation: market-spin .8s linear infinite;
}

@keyframes market-spin {
    to { transform: rotate(360deg); }
}

.theme-market-v2 .input {
    min-height: var(--ui-touch-target);
    padding: 0 var(--field-padding-x);
    border: 1px solid var(--ui-line-strong);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
    color: var(--ui-ink);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-medium);
    box-shadow: none;
    transition: border-color var(--ui-duration-fast) ease-out,
        box-shadow var(--ui-duration-fast) ease-out,
        background-color var(--ui-duration-fast) ease-out;
}

.theme-market-v2 .input::placeholder {
    color: var(--ui-subtle);
    opacity: 1;
}

.theme-market-v2 .input:hover:not(:disabled) {
    border-color: var(--color-neutral-400);
}

.theme-market-v2 .input:focus {
    border-color: var(--ui-primary);
    background: var(--ui-surface);
    box-shadow: var(--ui-focus);
}

.theme-market-v2 textarea.input {
    min-height: 116px;
    padding-block: 11px;
    line-height: 1.7;
}

.theme-market-v2 :where(.input, select, textarea)[aria-invalid="true"],
.theme-market-v2 :where(.input, select, textarea).is-error {
    border-color: var(--color-danger);
    box-shadow: 0 0 0 3px var(--color-focus-danger);
}

.theme-market-v2 .field-label {
    display: block;
    margin-bottom: var(--space-1);
    color: var(--color-text-strong);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .field-help,
.theme-market-v2 .field-error {
    margin-top: var(--space-1);
    color: var(--color-text-muted);
    font-size: var(--font-size-12);
}

.theme-market-v2 .field-error {
    color: var(--color-danger);
}

.theme-market-v2 .catalog-toolbar {
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: var(--space-2);
    padding: var(--space-1);
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
    box-shadow: none;
}

.theme-market-v2 .catalog-toolbar .input {
    border-color: transparent;
    background: var(--ui-surface-muted);
}

.theme-market-v2 .catalog-toolbar .input:focus {
    border-color: var(--ui-primary);
    background: var(--ui-surface);
}

.theme-market-v2 .market-v2-search-field {
    min-width: 0;
    display: block;
}

.theme-market-v2 .market-v2-search-field > span {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.theme-market-v2 .market-v2-search-field .input {
    width: 100%;
}

.theme-market-v2 .verify-box {
    gap: 8px;
}

/* Category and filter controls */
.theme-market-v2 .tabs {
    gap: var(--space-2);
    padding-top: var(--space-3);
    scrollbar-width: none;
}

.theme-market-v2 .chip {
    min-height: var(--ui-touch-target);
    padding: 0 var(--space-3);
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
    color: var(--ui-muted);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-medium);
    box-shadow: none;
    transition: border-color var(--ui-duration-fast) ease-out,
        background-color var(--ui-duration-fast) ease-out,
        color var(--ui-duration-fast) ease-out;
}

.theme-market-v2 .chip:hover:not(:disabled) {
    border-color: var(--color-neutral-400);
    color: var(--ui-heading);
}

.theme-market-v2 .chip.active,
.theme-market-v2 .chip[aria-selected="true"],
.theme-market-v2 .chip[aria-pressed="true"] {
    border-color: var(--ui-primary);
    background: var(--ui-primary-soft);
    color: var(--ui-primary);
}

.theme-market-v2 .chip-with-icon {
    gap: 8px;
    padding-left: 7px;
}

.theme-market-v2 .category-chip-icon {
    width: 28px;
    height: 28px;
    flex-basis: 28px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
    color: var(--ui-muted);
}

.theme-market-v2 .category-chip-icon :where(img, .ui-icon) {
    width: 20px;
    height: 20px;
    object-fit: cover;
}

.theme-market-v2 .chip.active .category-chip-icon {
    border-color: var(--ui-primary-border);
    background: var(--ui-surface);
    color: var(--ui-primary);
}

.theme-market-v2 .subcategory-tabs .chip,
.theme-market-v2 #filterSubs .chip {
    min-height: 44px;
    padding-inline: 11px;
    background: var(--ui-surface-muted);
    font-size: var(--font-size-12);
}

.theme-market-v2 .tag {
    margin: 0 6px 6px 0;
    padding: 5px 8px;
    border: 1px solid var(--ui-line-strong);
    border-radius: var(--ui-radius-xs);
    background: var(--ui-surface);
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-medium);
}

.theme-market-v2 .result-count {
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-medium);
}

.theme-market-v2 .section-select {
    width: 132px;
    min-height: 44px;
}

/* Desktop navigation */
.theme-market-v2 .desktop-nav {
    min-height: var(--market-nav-height);
    border-bottom: 1px solid var(--ui-line);
    background: var(--ui-surface);
    box-shadow: none;
}

.theme-market-v2 .desktop-nav__inner {
    width: min(var(--layout-max), calc(100% - (var(--layout-gutter) * 2)));
    min-height: var(--market-nav-height);
    grid-template-columns: minmax(200px, auto) minmax(520px, 1fr) minmax(240px, 300px);
    gap: var(--space-4);
}

.theme-market-v2 .desktop-nav__logo {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-primary);
    font-size: var(--font-size-18);
}

.theme-market-v2 .desktop-nav__brand-copy strong {
    color: var(--ui-heading);
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-bold);
}

.theme-market-v2 .desktop-nav__brand-copy small {
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-regular);
}

.theme-market-v2 .desktop-nav__links {
    gap: 0;
}

.theme-market-v2 .desktop-nav__link {
    min-width: 70px;
    height: var(--market-nav-height);
    padding: 0 10px;
    gap: 5px;
    color: var(--ui-muted);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-medium);
}

.theme-market-v2 .desktop-nav__link::after {
    right: 18px;
    left: 18px;
    height: 2px;
    border-radius: 2px 2px 0 0;
}

.theme-market-v2 .desktop-nav__link:hover {
    color: var(--ui-heading);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .desktop-nav__link.active,
.theme-market-v2 .desktop-nav__link[aria-current="page"] {
    color: var(--ui-primary);
    background: transparent;
}

.theme-market-v2 .desktop-nav__search {
    height: 46px;
    padding-left: 11px;
    border: 1px solid var(--ui-line-strong);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
    box-shadow: none;
}

.theme-market-v2 .desktop-nav__search input,
.theme-market-v2 .desktop-nav__search button {
    min-height: 44px;
}

.theme-market-v2 .desktop-nav__search:focus-within {
    border-color: var(--ui-primary);
    background: var(--ui-surface);
    box-shadow: var(--ui-focus);
}

.theme-market-v2 .desktop-nav__search button {
    min-width: 58px;
    align-self: stretch;
    border: 0;
    border-radius: 0 var(--ui-radius-sm) var(--ui-radius-sm) 0;
    background: var(--ui-primary);
    color: var(--ui-on-primary);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-bold);
}

.theme-market-v2 .page-top {
    min-height: 58px;
    margin-top: 12px;
    padding: 7px 10px;
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
    box-shadow: none;
}

.theme-market-v2 .brand-lockup.compact {
    min-height: 44px;
}

.theme-market-v2 .brand-logo {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    font-size: var(--font-size-18);
}

/* Mobile brand bar and quick actions */
.theme-market-v2 .mobile-brand-bar {
    min-height: var(--ui-mobile-header);
    padding: 6px 0;
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border-bottom: 1px solid var(--ui-line);
    background: var(--ui-surface);
}

.theme-market-v2 .mobile-brand-bar__identity {
    min-width: 0;
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: 9px;
}

.theme-market-v2 .mobile-brand-bar__logo {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-primary);
    color: var(--ui-on-primary);
    font-size: var(--font-size-18);
    font-weight: var(--font-weight-bold);
}

.theme-market-v2 .mobile-brand-bar__logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: var(--ui-surface);
}

.theme-market-v2 .mobile-brand-bar__identity strong {
    overflow: hidden;
    color: var(--ui-heading);
    font-size: var(--font-size-18);
    font-weight: var(--font-weight-bold);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.theme-market-v2 .mobile-brand-bar__user {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: grid;
    place-items: center;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
    color: var(--ui-muted);
}

.theme-market-v2 .market-v2-header-actions {
    display: flex;
    align-items: center;
    gap: 6px;
}

.theme-market-v2 .market-v2-header-actions > a {
    min-width: 44px;
    min-height: 44px;
    padding: 0 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .home-quick-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin-top: var(--space-4);
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
}

.theme-market-v2 .home-quick-actions a {
    min-width: 0;
    min-height: 72px;
    padding: var(--space-3);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
    color: var(--ui-heading);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .market-v2-quick-actions__trust {
    min-width: 0;
    min-height: 72px;
    padding: var(--space-3);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
    border-right: 1px solid var(--ui-line);
}

.theme-market-v2 .market-v2-quick-actions__trust > span:first-child {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: grid;
    place-items: center;
    border-radius: var(--ui-radius-sm);
    background: var(--ui-success-soft);
    color: var(--ui-success);
}

.theme-market-v2 .market-v2-quick-actions__trust > span:last-child {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.theme-market-v2 .market-v2-quick-actions__trust strong,
.theme-market-v2 .market-v2-quick-actions__trust small {
    display: block;
}

.theme-market-v2 .market-v2-quick-actions__trust small {
    color: var(--ui-muted);
}

.theme-market-v2 .home-quick-actions a + a {
    border-left: 1px solid var(--ui-line);
}

.theme-market-v2 .home-quick-actions a > span {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: grid;
    place-items: center;
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
    color: var(--ui-muted);
}

.theme-market-v2 .home-quick-actions a:hover {
    background: var(--ui-surface-muted);
}

.theme-market-v2 .market-v2-section-title {
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.theme-market-v2 .market-v2-section-title h2 {
    margin: 0;
    font-size: var(--font-size-20);
}

.theme-market-v2 .market-v2-section-title a {
    min-height: 44px;
    padding: 0 2px;
    display: inline-flex;
    align-items: center;
    color: var(--ui-info);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

/* Banner and notice */
.theme-market-v2 .banner {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-image-placeholder);
    box-shadow: none;
}

.theme-market-v2 .banner-media,
.theme-market-v2 .banner-media img {
    width: 100%;
    height: 100%;
}

.theme-market-v2 .banner-media img {
    object-fit: cover;
}

.theme-market-v2 .banner-copy {
    padding: 8px 10px;
    border-radius: var(--ui-radius-sm);
    background: var(--ui-banner-copy);
    color: var(--color-white);
    box-shadow: none;
}

.theme-market-v2 .banner-nav {
    width: 44px;
    height: 44px;
    border: 1px solid var(--color-inverse-border);
    border-radius: var(--ui-radius-sm);
    background: var(--color-scrim-control);
    color: var(--color-white);
    box-shadow: none;
}

.theme-market-v2 .banner-dot {
    position: relative;
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    border: 0;
    background: transparent;
}

.theme-market-v2 .banner-dot::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 8px;
    border: 1px solid var(--color-inverse-border-strong);
    border-radius: var(--ui-radius-round);
    background: var(--color-scrim-control);
    transform: translate(-50%, -50%);
    transition: width var(--ui-duration-fast) ease-out, background-color var(--ui-duration-fast) ease-out;
}

.theme-market-v2 .banner-dot.active::after {
    width: 20px;
    border-color: var(--color-white);
    background: var(--color-white);
}

.theme-market-v2 .notice {
    min-height: 46px;
    padding: 0 12px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    border-color: var(--ui-info-border);
    background: var(--ui-info-soft);
    color: var(--ui-ink);
    box-shadow: none;
}

.theme-market-v2 .notice > span,
.theme-market-v2 .notice > strong {
    color: var(--ui-info);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-bold);
}

/* Product cards */
.theme-market-v2 .product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--space-4);
}

.theme-market-v2 .product-card {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border-color: var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
    box-shadow: none;
    transition: border-color var(--motion-fast) var(--ease-out),
        box-shadow var(--motion-fast) var(--ease-out),
        transform var(--motion-fast) var(--ease-out);
}

.theme-market-v2 .product-card__link {
    min-width: 0;
    display: block;
}

.theme-market-v2 .product-img,
.theme-market-v2 .product-skeleton .product-img {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-bottom: 1px solid var(--ui-line);
    background: var(--ui-image-placeholder);
}

.theme-market-v2 .product-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform var(--ui-duration) var(--ui-ease-out), opacity var(--ui-duration) var(--ui-ease-out);
}

.theme-market-v2 .product-body {
    min-width: 0;
    padding: var(--space-3);
}

.theme-market-v2 .product-meta {
    min-width: 0;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
    overflow: hidden;
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-medium);
    white-space: nowrap;
}

.theme-market-v2 .product-meta span {
    overflow: hidden;
    text-overflow: ellipsis;
}

.theme-market-v2 .product-meta span + span::before {
    content: "/";
    margin-right: 6px;
    color: var(--ui-line-strong);
}

.theme-market-v2 .product-title {
    min-height: 42px;
    margin: 0;
    color: var(--ui-heading);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-semibold);
    line-height: 1.5;
}

.theme-market-v2 .product-card__facts {
    min-height: 26px;
    margin-top: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
    overflow: hidden;
}

.theme-market-v2 .product-card__facts span {
    min-width: 0;
    padding: 4px 6px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border: 1px solid var(--ui-success-border);
    border-radius: var(--ui-radius-xs);
    background: var(--ui-success-soft);
    color: var(--ui-success);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
    white-space: nowrap;
}

.theme-market-v2 .product-card__facts span:nth-child(n + 2) {
    border-color: var(--ui-line);
    background: var(--ui-surface-muted);
    color: var(--ui-muted);
}

.theme-market-v2 .product-card__facts .ui-icon {
    width: 13px;
    height: 13px;
    flex-basis: 13px;
}

.theme-market-v2 .price-row {
    min-height: 44px;
    margin-top: 8px;
    align-items: end;
}

.theme-market-v2 .price-label {
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-regular);
}

.theme-market-v2 .price {
    color: var(--ui-price);
    font-size: var(--font-size-24);
    font-weight: var(--font-weight-bold);
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
}

.theme-market-v2 .price small {
    margin-right: 2px;
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .badge {
    min-height: 24px;
    padding: 0 6px;
    border-radius: var(--ui-radius-xs);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
    line-height: 1;
}

.theme-market-v2 .badge-code {
    left: 8px;
    bottom: 8px;
    border: 1px solid var(--color-inverse-border);
    background: var(--color-scrim-label);
    color: var(--color-white);
}

.theme-market-v2 .badge-code-label {
    opacity: .78;
}

.theme-market-v2 .badge-hot {
    top: 8px;
    left: 8px;
    right: auto;
    border: 1px solid var(--color-inverse-border);
    background: var(--color-scrim-label);
    color: var(--color-white);
}

.theme-market-v2 .product-favorite {
    top: 6px;
    right: 6px;
    left: auto;
    width: 44px;
    height: 44px;
    padding: 0;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: var(--ui-radius-sm);
    background: var(--ui-favorite-surface);
    color: var(--ui-muted);
    box-shadow: var(--ui-shadow-xs);
}

.theme-market-v2 .product-favorite.is-active,
.theme-market-v2 .product-favorite[aria-pressed="true"] {
    color: var(--ui-primary);
}

.theme-market-v2 .product-grid.is-refreshing {
    opacity: .62;
    pointer-events: none;
}

.theme-market-v2 .product-skeleton :where(.product-img, .skeleton-line, .skeleton-price, .skeleton-button),
.theme-market-v2 .detail-skeleton :where(.detail-media, .detail-thumbnails span, .skeleton-line, .skeleton-price, .info-box),
.theme-market-v2 .profile-skeleton > *,
.theme-market-v2 :where(.market-v2-category-skeleton, .market-v2-banner-skeleton, .market-v2-copy-skeleton i, .market-v2-article-skeleton i, .market-v2-field-skeleton i, .market-v2-cart-skeleton i, .market-v2-cart-skeleton span, .market-v2-notice-skeleton i, .market-v2-notice-skeleton span) {
    background: var(--ui-skeleton);
    background-image: none;
    animation: market-skeleton-pulse 1.2s ease-in-out infinite;
}

.theme-market-v2 .product-skeleton :where(.product-img, .skeleton-line, .skeleton-price, .skeleton-button)::after,
.theme-market-v2 .detail-skeleton *::after,
.theme-market-v2 .loading-card::after {
    content: none;
}

.theme-market-v2 .market-v2-category-skeleton {
    width: 104px;
    height: 44px;
    flex: 0 0 104px;
    border-radius: var(--ui-radius-sm);
}

.theme-market-v2 .market-v2-banner-skeleton {
    width: 100%;
    height: 100%;
}

.theme-market-v2 .market-v2-copy-skeleton,
.theme-market-v2 .market-v2-article-skeleton,
.theme-market-v2 .market-v2-field-skeleton {
    display: grid;
    gap: 10px;
}

.theme-market-v2 .market-v2-copy-skeleton i,
.theme-market-v2 .market-v2-article-skeleton i,
.theme-market-v2 .market-v2-field-skeleton i {
    height: 14px;
    border-radius: var(--ui-radius-xs);
}

.theme-market-v2 :where(.market-v2-copy-skeleton, .market-v2-article-skeleton, .market-v2-field-skeleton) i:nth-child(2n) {
    width: 78%;
}

@keyframes market-skeleton-pulse {
    0%, 100% { opacity: .65; }
    50% { opacity: 1; }
}

/* Pagination */
.theme-market-v2 .pager {
    gap: var(--space-2);
    margin-top: var(--space-6);
}

.theme-market-v2 .pager .btn {
    min-width: 44px;
    min-height: 44px;
}

.theme-market-v2 .pager-info {
    color: var(--ui-muted);
    font-size: var(--font-size-12);
}

/* Dialogs, states and feedback */
.theme-market-v2 .modal {
    z-index: var(--z-backdrop);
    padding: var(--space-6);
    background: var(--ui-overlay);
}

.theme-market-v2 .modal-panel {
    border: 1px solid var(--ui-line);
    border-radius: var(--dialog-radius);
    background: var(--ui-surface);
    box-shadow: var(--ui-shadow-lg);
}

.theme-market-v2 .modal-head {
    min-height: 44px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--ui-line);
}

.theme-market-v2 .modal-head h2 {
    font-size: var(--font-size-20);
}

.theme-market-v2 .toast {
    max-width: min(92vw, 420px);
    padding: 11px 14px;
    border: 1px solid var(--color-inverse-border);
    border-radius: var(--ui-radius-sm);
    background: var(--color-neutral-800);
    color: var(--color-white);
    font-size: var(--font-size-14);
    box-shadow: var(--ui-shadow-md);
}

.theme-market-v2 .empty-state {
    grid-column: 1 / -1;
    min-height: 210px;
    padding: var(--space-8) var(--space-6);
    display: grid;
    place-items: center;
    align-content: center;
    gap: var(--space-2);
    border-style: dashed;
    background: var(--ui-surface);
    color: var(--ui-muted);
    text-align: center;
    box-shadow: none;
}

.theme-market-v2 .empty-state strong {
    color: var(--ui-heading);
    font-size: var(--font-size-16);
}

.theme-market-v2 .empty-state p {
    max-width: 46ch;
    margin: 0;
}

.theme-market-v2 .notice-panel,
.theme-market-v2 .share-panel {
    width: min(100%, 520px);
}

.theme-market-v2 .notice-panel .detail-content {
    margin-top: 16px;
}

.theme-market-v2 .share-card {
    border: 1px solid var(--ui-share-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-share-surface);
    box-shadow: none;
}

.theme-market-v2 .share-price {
    color: var(--ui-price);
}

.theme-market-v2 .share-qr {
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
}

.theme-market-v2 .image-lightbox {
    background: var(--color-scrim-lightbox);
}

.theme-market-v2 .image-lightbox-panel {
    border-radius: var(--dialog-radius);
}

.theme-market-v2 .image-lightbox-close,
.theme-market-v2 .image-lightbox-nav {
    min-width: 44px;
    min-height: 44px;
    border: 1px solid var(--color-inverse-border);
    border-radius: var(--ui-radius-sm);
    background: var(--color-scrim-label);
    color: var(--color-white);
}

/* Bottom navigation */
.theme-market-v2 .bottom-nav {
    height: calc(var(--market-mobile-nav-height) + env(safe-area-inset-bottom));
    padding: var(--space-1) max(var(--space-2), env(safe-area-inset-right)) env(safe-area-inset-bottom) max(var(--space-2), env(safe-area-inset-left));
    border-top: 1px solid var(--ui-line);
    background: var(--ui-surface);
    box-shadow: var(--shadow-mobile-bar);
}

.theme-market-v2 .bottom-nav .nav-btn {
    min-width: 0;
    min-height: 60px;
    padding: 5px 2px 3px;
    gap: 2px;
    border-radius: var(--ui-radius-sm);
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-medium);
}

.theme-market-v2 .bottom-nav .nav-btn .ui-icon {
    width: 21px;
    height: 21px;
    flex-basis: 21px;
}

.theme-market-v2 .bottom-nav .nav-btn.active,
.theme-market-v2 .bottom-nav .nav-btn[aria-current="page"] {
    background: var(--ui-primary-soft);
    color: var(--ui-primary);
}

.theme-market-v2 .bottom-nav .nav-buy {
    transform: none;
}

.theme-market-v2 .back-to-top {
    right: max(14px, env(safe-area-inset-right));
    width: 44px;
    height: 44px;
    border: 1px solid var(--ui-line-strong);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
    color: var(--ui-heading);
    box-shadow: var(--ui-shadow-sm);
}

@media (hover: hover) and (pointer: fine) {
    .theme-market-v2 .product-card:hover {
        border-color: var(--color-neutral-400);
        box-shadow: var(--ui-shadow-sm);
        transform: translateY(-2px);
    }

    .theme-market-v2 .product-card:hover .product-img img {
        transform: scale(1.025);
    }
}

/* Source: assets/market-v2/styles/pages.css */
/* Home */
.theme-market-v2 .home-page {
    padding-top: var(--space-6);
}

.theme-market-v2 .market-v2-page--home .market-v2-main {
    padding-top: var(--space-4);
}

.theme-market-v2 .market-v2-discovery {
    min-height: 0;
    padding: 0;
    display: block;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.theme-market-v2 .market-v2-discovery .market-v2-search-bar {
    width: min(100%, 760px);
    margin-inline: auto;
}

.theme-market-v2 .market-v2-category-strip {
    margin-top: var(--space-6);
    padding-block: var(--space-3);
    border-block: 1px solid var(--ui-line);
    background: transparent;
}

.theme-market-v2 .market-v2-category-strip .category-tabs {
    padding-top: 7px;
}

.theme-market-v2 .market-v2-products {
    padding-top: var(--market-section-gap);
}

.theme-market-v2 .home-discovery {
    min-height: 178px;
    padding: var(--space-6) 0;
    display: grid;
    grid-template-columns: minmax(260px, .82fr) minmax(460px, 1.38fr);
    align-items: center;
    gap: var(--space-8);
    border-block: 1px solid var(--ui-line);
    background: transparent;
}

.theme-market-v2 .home-discovery:has(.discovery-heading[hidden]) {
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
    padding: var(--space-4) 0;
}

.theme-market-v2 .discovery-heading {
    min-width: 0;
}

.theme-market-v2 .discovery-heading h1 {
    margin: 8px 0 0;
    font-size: var(--font-size-30);
    line-height: 1.25;
}

.theme-market-v2 .discovery-heading > p {
    margin: 7px 0 0;
    color: var(--ui-muted);
    font-size: var(--font-size-14);
}

.theme-market-v2 .hero-pill {
    min-height: 28px;
    padding: 4px 8px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--ui-info-border);
    border-radius: var(--ui-radius-xs);
    background: var(--ui-info-soft);
    color: var(--ui-info);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .trust-row {
    margin-top: 16px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
}

.theme-market-v2 .trust-row span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--ui-success);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .trust-row span::before {
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--ui-success);
}

.theme-market-v2 .discovery-search {
    min-width: 0;
}

.theme-market-v2 .home-banner {
    height: 200px;
    min-height: 200px;
    margin-top: var(--space-4);
}

.theme-market-v2 .home-page > .notice {
    margin-top: 12px;
}

.theme-market-v2 #productsSection {
    padding-top: var(--market-section-gap);
}

.theme-market-v2 .products-head {
    min-height: 46px;
    margin-bottom: 14px;
}

.theme-market-v2 .catalog-result-tools {
    gap: 8px;
}

.theme-market-v2 #activeFilters:not(:empty) {
    padding: 0 0 8px;
}

/* Catalog */
.theme-market-v2 .buy-page {
    padding-top: var(--space-8);
}

.theme-market-v2 .market-v2-catalog-heading {
    min-height: 54px;
    margin-bottom: 14px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
}

.theme-market-v2 .market-v2-catalog-heading h1 {
    margin: 0;
    font-size: var(--font-size-30);
}

.theme-market-v2 .market-v2-catalog-heading p {
    margin: 4px 0 0;
    color: var(--ui-muted);
    font-size: var(--font-size-14);
}

.theme-market-v2 .market-v2-catalog > .market-v2-search-bar {
    grid-template-columns: minmax(0, 1fr) auto;
    margin-bottom: 10px;
}

.theme-market-v2 .market-v2-mobile-catalog-tools {
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.theme-market-v2 .buy-head {
    min-height: 52px;
    margin-bottom: 14px;
}

.theme-market-v2 .buy-title {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.theme-market-v2 .section-icon {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    display: grid;
    place-items: center;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
    color: var(--ui-muted);
}

.theme-market-v2 .section-icon svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.theme-market-v2 .buy-page > .catalog-toolbar {
    margin-bottom: 10px;
}

.theme-market-v2 .buy-layout {
    display: grid;
    grid-template-columns: 264px minmax(0, 1fr);
    align-items: start;
    gap: var(--space-6);
    margin-top: var(--space-4);
}

.theme-market-v2 .catalog-filter-panel {
    position: sticky;
    top: calc(var(--market-nav-height) + 14px);
    width: 264px;
    padding: 0;
    display: block;
    background: transparent;
}

.theme-market-v2 .catalog-filter-panel .modal-panel {
    width: 100%;
    max-height: calc(100vh - var(--market-nav-height) - 28px);
    padding: var(--space-4);
    overflow: auto;
    border: 1px solid var(--ui-line);
    box-shadow: none;
}

.theme-market-v2 .catalog-filter-panel .modal-head {
    margin-bottom: 12px;
}

.theme-market-v2 .catalog-filter-panel h3 {
    margin: 17px 0 0;
    color: var(--ui-heading);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .catalog-filter-panel .tabs {
    flex-wrap: wrap;
    gap: 6px;
    padding-top: 7px;
    overflow: visible;
}

.theme-market-v2 .catalog-filter-panel .chip {
    min-height: 44px;
    padding-inline: 10px;
    font-size: var(--font-size-12);
}

.theme-market-v2 .catalog-filter-panel .grid-2 {
    gap: 7px;
    margin-top: 8px;
}

.theme-market-v2 .catalog-filter-panel .modal-actions {
    margin-top: 15px;
}

.theme-market-v2 .catalog-filter-panel #closeFilterBtn {
    display: none;
}

.theme-market-v2 .catalog-results {
    min-width: 0;
}

.theme-market-v2 .catalog-results .product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.theme-market-v2 .market-v2-buy-layout {
    margin-top: 16px;
}

.theme-market-v2 .active-filters:not(:empty) {
    min-height: 40px;
    padding: 0 0 8px;
}

/* Product detail */
.theme-market-v2[data-page="product"] .page-narrow {
    width: 100%;
    max-width: var(--ui-page-max);
}

.theme-market-v2[data-page="product"] .page-narrow > .section-head {
    margin-bottom: 14px;
}

.theme-market-v2 #detailCard {
    min-height: 520px;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.theme-market-v2 .market-v2-product-page > .market-v2-content-heading {
    margin-bottom: 16px;
}

.theme-market-v2 .market-v2-detail-shell {
    min-height: 520px;
}

.theme-market-v2 .market-v2-detail-panel {
    margin-top: 16px;
}

.theme-market-v2 .detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(380px, 5fr);
    align-items: stretch;
    gap: var(--space-6);
}

.theme-market-v2 .product-gallery-panel,
.theme-market-v2 .detail-info {
    min-width: 0;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
}

.theme-market-v2 .product-gallery-panel {
    padding: var(--space-3);
}

.theme-market-v2 .detail-media {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: var(--ui-radius-sm);
    background: var(--ui-image-placeholder);
}

.theme-market-v2 .detail-image-trigger {
    width: 100%;
    height: 100%;
    padding: 0;
    display: block;
    border: 0;
    background: transparent;
    cursor: zoom-in;
}

.theme-market-v2 .detail-image-trigger img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: var(--ui-image-placeholder);
}

.theme-market-v2 .detail-image-trigger > span {
    right: 10px;
    bottom: 10px;
    min-height: 36px;
    padding: 0 10px;
    border: 1px solid var(--color-inverse-border);
    border-radius: var(--ui-radius-sm);
    background: var(--color-scrim-label);
    color: var(--color-white);
    font-size: var(--font-size-12);
}

.theme-market-v2 .detail-thumbnails {
    margin-top: 10px;
    grid-auto-columns: 72px;
    gap: 8px;
}

.theme-market-v2 .detail-thumbnail {
    width: 72px;
    min-height: 72px;
    padding: 2px;
    overflow: hidden;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
}

.theme-market-v2 .detail-thumbnail.active,
.theme-market-v2 .detail-thumbnail[aria-current="true"] {
    border-color: var(--ui-primary);
    box-shadow: 0 0 0 1px var(--ui-primary);
}

.theme-market-v2 .detail-thumbnail img {
    width: 100%;
    height: 100%;
    border-radius: 4px;
    object-fit: cover;
}

.theme-market-v2 .detail-info {
    padding: var(--space-6);
}

.theme-market-v2 .detail-eyebrow {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .detail-title {
    margin: 13px 0 0;
    color: var(--ui-heading);
    font-size: var(--font-size-24);
    font-weight: var(--font-weight-bold);
    line-height: 1.45;
}

.theme-market-v2 #titleToggle {
    min-height: 44px;
    padding-top: 2px;
    color: var(--ui-info);
    font-size: var(--font-size-12);
}

.theme-market-v2 .detail-tags {
    min-height: 0;
    margin-top: 8px;
}

.theme-market-v2 .detail-tags:empty {
    display: none;
}

.theme-market-v2 .price-panel {
    margin-top: var(--space-4);
    padding-block: var(--space-4);
    border-block: 1px solid var(--ui-line);
    background: transparent;
}

.theme-market-v2 .detail-price {
    margin-top: 2px;
    color: var(--ui-price);
    font-size: var(--font-size-36);
}

.theme-market-v2 .price-panel small {
    display: block;
    margin-top: 7px;
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    line-height: 1.55;
}

.theme-market-v2 .info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-2);
    margin-top: var(--space-3);
}

.theme-market-v2 .info-box {
    min-width: 0;
    padding: 10px;
    border: 0;
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .info-box span {
    display: block;
    color: var(--ui-muted);
    font-size: var(--font-size-12);
}

.theme-market-v2 .info-box strong {
    display: block;
    margin-top: 3px;
    overflow: hidden;
    color: var(--ui-heading);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-semibold);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.theme-market-v2 .info-box:nth-child(3) strong {
    color: var(--ui-success);
}

.theme-market-v2 .detail-actions {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) repeat(3, auto);
    gap: var(--space-2);
    margin-top: var(--space-4);
}

.theme-market-v2 .detail-actions .btn {
    padding-inline: 11px;
}

.theme-market-v2 .product-mobile-actions {
    display: none;
}

.theme-market-v2 .detail-panel {
    margin-top: 16px;
    padding: 0;
    overflow: hidden;
    box-shadow: none;
}

.theme-market-v2 .detail-tabs {
    min-height: 52px;
    padding: 0 16px;
    display: flex;
    gap: 22px;
    border-bottom: 1px solid var(--ui-line);
    background: var(--ui-surface);
}

.theme-market-v2 .detail-tab {
    position: relative;
    min-height: 52px;
    padding: 0 2px;
    border: 0;
    background: transparent;
    color: var(--ui-muted);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .detail-tab::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 2px;
    background: var(--ui-primary);
    opacity: 0;
}

.theme-market-v2 .detail-tab.active,
.theme-market-v2 .detail-tab[aria-selected="true"] {
    color: var(--ui-primary);
}

.theme-market-v2 .detail-tab.active::after,
.theme-market-v2 .detail-tab[aria-selected="true"]::after {
    opacity: 1;
}

.theme-market-v2 .detail-panel > .detail-content {
    padding: var(--space-6);
}

.theme-market-v2 .detail-text {
    width: min(100%, var(--market-reading-width));
}

.theme-market-v2 .detail-gallery {
    margin-top: 18px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.theme-market-v2 .detail-gallery-button {
    min-width: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-image-placeholder);
    cursor: zoom-in;
}

.theme-market-v2 .detail-gallery-button img {
    width: 100%;
    height: auto;
}

.theme-market-v2 .flow-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-3);
}

.theme-market-v2 .flow-step {
    min-width: 0;
    padding: var(--space-4);
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
}

.theme-market-v2 .flow-step > span {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border: 1px solid var(--ui-line-strong);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
    color: var(--ui-heading);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-bold);
}

.theme-market-v2 .flow-step strong {
    display: block;
    margin-top: 10px;
    color: var(--ui-heading);
}

.theme-market-v2 .flow-step p {
    margin: 5px 0 0;
    color: var(--ui-muted);
    font-size: var(--font-size-12);
}

/* Shared informational pages */
.theme-market-v2 .inner-hero {
    padding: 22px 0 18px;
    border: 0;
    border-bottom: 1px solid var(--ui-line);
    border-radius: 0;
    background: transparent;
    color: var(--ui-ink);
    box-shadow: none;
}

.theme-market-v2 .inner-hero h1 {
    margin: 10px 0 0;
    color: var(--ui-heading);
    font-size: var(--font-size-30);
}

.theme-market-v2 .inner-hero > p {
    max-width: 68ch;
    margin: 8px 0 0;
    color: var(--ui-muted);
}

.theme-market-v2 .content-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
    align-items: start;
    gap: var(--space-6);
    margin-top: var(--space-6);
}

.theme-market-v2 .market-v2-status-label {
    min-height: 28px;
    padding: 4px 8px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--ui-success-border);
    border-radius: var(--ui-radius-xs);
    background: var(--ui-success-soft);
    color: var(--ui-success);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .panel-block {
    padding: var(--card-padding);
    box-shadow: none;
}

.theme-market-v2 .panel-block h2 {
    margin: 0;
    font-size: var(--font-size-20);
}

/* Sell */
.theme-market-v2[data-page="sell"] .content-grid {
    grid-template-columns: minmax(0, 1.4fr) minmax(280px, .6fr);
}

.theme-market-v2 .market-v2-sell-layout {
    margin-top: 16px;
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr);
    align-items: start;
    gap: var(--space-6);
}

.theme-market-v2 .market-v2-sell-primary {
    min-width: 0;
    padding: var(--card-padding);
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
}

.theme-market-v2 .market-v2-flow-section {
    margin-top: 22px;
    padding-top: 20px;
    border-top: 1px solid var(--ui-line);
}

.theme-market-v2 .market-v2-flow-section h2 {
    margin: 0 0 12px;
    font-size: var(--font-size-20);
}

.theme-market-v2 .market-v2-contact-panel {
    position: sticky;
    top: calc(var(--market-nav-height) + 14px);
    padding: var(--card-padding);
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
}

.theme-market-v2 .market-v2-contact-panel h2 {
    margin: 0;
    font-size: var(--font-size-18);
}

.theme-market-v2 .sell-intro-copy {
    margin-bottom: 18px;
    color: var(--ui-muted);
}

.theme-market-v2 .sell-wizard {
    padding-top: 18px;
    border-top: 1px solid var(--ui-line);
}

.theme-market-v2 .sell-wizard-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.theme-market-v2 .sell-kicker {
    color: var(--ui-success);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .sell-draft-button {
    min-height: 44px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1px solid var(--ui-line-strong);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .sell-stepper {
    margin: 18px 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .sell-stepper button {
    position: relative;
    min-width: 0;
    min-height: 58px;
    padding: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 0;
    border-right: 1px solid var(--ui-line);
    background: transparent;
    color: var(--ui-muted);
}

.theme-market-v2 .sell-stepper button:last-child {
    border-right: 0;
}

.theme-market-v2 .sell-stepper button > span {
    width: 26px;
    height: 26px;
    flex: 0 0 26px;
    display: grid;
    place-items: center;
    border: 1px solid var(--ui-line-strong);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
    font-size: var(--font-size-12);
}

.theme-market-v2 .sell-stepper button strong {
    overflow: hidden;
    font-size: var(--font-size-12);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.theme-market-v2 .sell-stepper button.active {
    background: var(--ui-surface);
    color: var(--ui-primary);
}

.theme-market-v2 .sell-stepper button.active > span {
    border-color: var(--ui-primary);
    background: var(--ui-primary);
    color: var(--ui-on-primary);
}

.theme-market-v2 .sell-stepper button.complete {
    color: var(--ui-success);
}

.theme-market-v2 .sell-stepper button.complete > span {
    border-color: var(--ui-success-border);
    background: var(--ui-success-soft);
    color: var(--ui-success);
}

.theme-market-v2 .sell-field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.theme-market-v2 .sell-field-wide {
    grid-column: 1 / -1;
}

.theme-market-v2 .sell-wizard label > span {
    display: block;
    margin-bottom: 5px;
    color: var(--ui-heading);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .sell-wizard [aria-invalid="true"] {
    border-color: var(--ui-danger);
    box-shadow: 0 0 0 3px var(--color-focus-danger);
}

.theme-market-v2 .sell-privacy-note {
    margin: 10px 0 0;
    padding: 9px 10px;
    border: 1px solid var(--ui-warning-border);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-warning-soft);
    color: var(--ui-warning);
    font-size: var(--font-size-12);
}

.theme-market-v2 .sell-upload-zone {
    min-height: 150px;
    padding: 22px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 6px;
    border: 1px dashed var(--ui-line-strong);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface-muted);
    color: var(--ui-muted);
    text-align: center;
    cursor: pointer;
}

.theme-market-v2 .sell-upload-zone .ui-icon {
    width: 26px;
    height: 26px;
}

.theme-market-v2 .sell-upload-zone strong {
    color: var(--ui-heading);
}

.theme-market-v2 .sell-upload-zone span {
    max-width: 52ch;
    font-size: var(--font-size-12);
}

.theme-market-v2 .sell-image-progress {
    position: relative;
    min-height: 40px;
    margin-top: 10px;
    overflow: hidden;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .sell-image-progress > span {
    position: absolute;
    inset: 0 auto 0 0;
    width: 0;
    background: var(--ui-info-soft);
    transition: width var(--ui-duration) var(--ui-ease-out);
}

.theme-market-v2 .sell-image-progress strong {
    position: relative;
    min-height: 40px;
    display: grid;
    place-items: center;
    color: var(--ui-info);
    font-size: var(--font-size-12);
}

.theme-market-v2 .sell-image-preview {
    margin-top: 10px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.theme-market-v2 .sell-image-preview figure {
    position: relative;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
}

.theme-market-v2 .sell-image-preview img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.theme-market-v2 .sell-image-preview figcaption {
    padding: 5px 7px;
    overflow: hidden;
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.theme-market-v2 .sell-image-preview button {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 44px;
    height: 44px;
    border: 1px solid var(--color-inverse-border);
    border-radius: var(--ui-radius-sm);
    background: var(--color-scrim-label);
    color: var(--color-white);
}

.theme-market-v2 .sell-review {
    padding-block: var(--space-4);
    border-block: 1px solid var(--ui-line);
    background: transparent;
}

.theme-market-v2 .sell-review dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.theme-market-v2 .sell-review dl > div {
    padding: 9px;
    border: 0;
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .sell-review dl > .wide {
    grid-column: 1 / -1;
}

.theme-market-v2 .sell-review dt {
    color: var(--ui-muted);
    font-size: var(--font-size-12);
}

.theme-market-v2 .sell-review dd {
    margin: 3px 0 0;
    color: var(--ui-heading);
    font-size: var(--font-size-14);
}

.theme-market-v2 .sell-submit-actions,
.theme-market-v2 .sell-wizard-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 14px;
}

.theme-market-v2 .sell-wizard-actions {
    padding-top: 14px;
    border-top: 1px solid var(--ui-line);
}

.theme-market-v2 #sellDraftStatus {
    margin-right: auto;
    color: var(--ui-muted);
    font-size: var(--font-size-12);
}

.theme-market-v2 .contact-list {
    display: grid;
    gap: 8px;
    margin-top: 14px;
}

.theme-market-v2 .contact-list .btn {
    width: 100%;
    justify-content: flex-start;
}

/* Service verification */
.theme-market-v2[data-page="service"] .content-grid {
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
}

.theme-market-v2 .market-v2-service-layout {
    margin-top: 16px;
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
    align-items: start;
    gap: var(--space-6);
}

.theme-market-v2 .market-v2-verify-panel {
    min-width: 0;
    padding: var(--card-padding);
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
}

.theme-market-v2 .market-v2-verify-panel > div:first-child h2 {
    margin: 0;
    font-size: var(--font-size-20);
}

.theme-market-v2 .market-v2-verify-panel > div:first-child p {
    margin: 4px 0 0;
    color: var(--ui-muted);
    font-size: var(--font-size-14);
}

.theme-market-v2 .service-safety-strip {
    margin: -4px 0 16px;
    padding: 11px 12px;
    display: flex;
    align-items: flex-start;
    gap: 9px;
    border: 1px solid var(--ui-success-border);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-success-soft);
    color: var(--ui-success);
}

.theme-market-v2 .service-safety-strip > span {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.theme-market-v2 .service-safety-strip small {
    color: var(--ui-muted);
}

.theme-market-v2 #verifyResult:not(:empty) {
    margin-top: 12px;
}

.theme-market-v2 .verify-card,
.theme-market-v2 .verify-pending {
    min-height: 96px;
    padding: 14px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .verify-card.good {
    border-color: var(--ui-success-border);
    background: var(--ui-success-soft);
    color: var(--ui-success);
}

.theme-market-v2 .verify-card.bad {
    border-color: var(--ui-danger-border);
    background: var(--ui-danger-soft);
    color: var(--ui-danger);
}

.theme-market-v2 .verify-card h3 {
    margin: 0;
    color: currentColor;
    font-size: var(--font-size-16);
}

.theme-market-v2 .verify-card p {
    margin: 5px 0 0;
    color: var(--ui-ink);
    font-size: var(--font-size-12);
}

.theme-market-v2 .verify-card small {
    display: block;
    margin-top: 6px;
    color: var(--ui-muted);
}

.theme-market-v2 .verify-pending {
    align-items: center;
    color: var(--ui-info);
}

.theme-market-v2 .verify-pending span {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    border: 2px solid var(--ui-info-border);
    border-top-color: var(--ui-info);
    border-radius: 50%;
    animation: market-spin .8s linear infinite;
}

/* About, notices and agreements */
.theme-market-v2 .about-article {
    margin-top: 16px;
}

.theme-market-v2 .market-v2-rich-panel {
    padding: var(--card-padding);
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
}

.theme-market-v2 .market-v2-about-page > section:last-child {
    margin-top: 18px;
}

.theme-market-v2 .about-content-mark {
    margin-bottom: 14px;
    padding-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 7px;
    border-bottom: 1px solid var(--ui-line);
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .about-timeline,
.theme-market-v2 .notice-list {
    margin-top: 16px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.theme-market-v2 .about-post,
.theme-market-v2 .notice-item {
    min-width: 0;
    overflow: hidden;
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    box-shadow: none;
}

.theme-market-v2 .about-post-cover {
    min-height: 150px;
    overflow: hidden;
    border-right: 1px solid var(--ui-line);
    background: var(--ui-image-placeholder);
}

.theme-market-v2 .about-post-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.theme-market-v2 .about-post-body,
.theme-market-v2 .notice-item__body {
    min-width: 0;
    min-height: 150px;
    padding: 15px;
    display: flex;
    flex-direction: column;
}

.theme-market-v2 .about-post-date,
.theme-market-v2 .notice-item time {
    color: var(--ui-muted);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-medium);
}

.theme-market-v2 .about-post h2,
.theme-market-v2 .notice-item h2 {
    margin: 7px 0 0;
    font-size: var(--font-size-16);
    line-height: 1.45;
}

.theme-market-v2 .about-post p,
.theme-market-v2 .notice-item p {
    margin: 6px 0 0;
    display: -webkit-box;
    overflow: hidden;
    font-size: var(--font-size-12);
    line-height: 1.6;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.theme-market-v2 .about-post-link,
.theme-market-v2 .notice-item__link {
    min-height: 44px;
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--ui-info);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .about-detail {
    width: min(100%, 820px);
    margin-inline: auto;
    padding: var(--space-8);
    box-shadow: none;
}

.theme-market-v2 .about-detail-head {
    padding-bottom: 18px;
    border-bottom: 1px solid var(--ui-line);
}

.theme-market-v2 .about-detail-head h1 {
    margin: 8px 0 0;
    font-size: var(--font-size-30);
}

.theme-market-v2 .about-detail-cover {
    margin: 18px 0;
    overflow: hidden;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
}

.theme-market-v2 .about-detail > .detail-content {
    margin-top: 20px;
}

/* User center */
.theme-market-v2 .user-center {
    min-height: 360px;
}

.theme-market-v2 .user-auth-shell {
    width: min(100%, 560px);
    margin-inline: auto;
    gap: 12px;
}

.theme-market-v2 .user-auth-intro {
    padding: 16px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
}

.theme-market-v2 .user-auth-intro > span {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
    color: var(--ui-muted);
}

.theme-market-v2 .user-auth-intro h1 {
    font-size: var(--font-size-20);
}

.theme-market-v2 .user-auth-tabs {
    padding: 3px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .user-auth-tabs button {
    min-height: 44px;
    border-radius: var(--ui-radius-sm);
    color: var(--ui-muted);
}

.theme-market-v2 .user-auth-tabs button.active {
    background: var(--ui-surface);
    color: var(--ui-primary);
    box-shadow: var(--ui-shadow-xs);
}

.theme-market-v2 .console-card,
.theme-market-v2 .profile-panel {
    padding: var(--card-padding);
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
    box-shadow: none;
}

.theme-market-v2 .profile-shell {
    display: grid;
    gap: 14px;
}

.theme-market-v2 .profile-hero {
    min-height: 142px;
    padding: var(--card-padding);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 14px;
    overflow: hidden;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
    color: var(--ui-ink);
    box-shadow: none;
}

.theme-market-v2 .profile-hero::after {
    content: none;
}

.theme-market-v2 .profile-user {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 12px;
}

.theme-market-v2 .profile-avatar {
    width: 64px;
    height: 64px;
    flex: 0 0 64px;
    overflow: hidden;
    display: grid;
    place-items: center;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface-muted);
    color: var(--ui-heading);
}

.theme-market-v2 .profile-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.theme-market-v2 .profile-overline,
.theme-market-v2 .profile-hero .profile-user span {
    color: var(--ui-muted);
}

.theme-market-v2 .profile-hero h1 {
    margin: 2px 0 0;
    color: var(--ui-heading);
    font-size: var(--font-size-24);
}

.theme-market-v2 .profile-logout {
    min-height: 44px;
    border-color: var(--ui-line-strong);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
    color: var(--ui-muted);
}

.theme-market-v2 .profile-badges {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.theme-market-v2 .profile-badges span {
    padding: 5px 7px;
    border-radius: var(--ui-radius-xs);
    background: var(--ui-surface-muted);
    color: var(--ui-muted);
    font-size: var(--font-size-12);
}

.theme-market-v2 .profile-badges .is-good {
    background: var(--ui-success-soft);
    color: var(--ui-success);
}

.theme-market-v2 .profile-badges .is-bad {
    background: var(--ui-danger-soft);
    color: var(--ui-danger);
}

.theme-market-v2 .profile-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr);
    align-items: start;
    gap: 14px;
}

.theme-market-v2 .profile-stat-grid,
.theme-market-v2 .profile-safe-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.theme-market-v2 .profile-stat-grid > div,
.theme-market-v2 .profile-safe-grid > div {
    padding: 11px;
    border: 0;
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .profile-stat-grid span,
.theme-market-v2 .profile-safe-grid span {
    color: var(--ui-muted);
    font-size: var(--font-size-12);
}

.theme-market-v2 .profile-stat-grid strong,
.theme-market-v2 .profile-safe-grid strong {
    display: block;
    margin-top: 3px;
    color: var(--ui-heading);
    font-size: var(--font-size-16);
}

.theme-market-v2 .profile-tool-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.theme-market-v2 .profile-tool-grid a {
    min-height: 70px;
    padding: 11px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
}

.theme-market-v2 .profile-tool-grid a:hover {
    border-color: var(--color-neutral-400);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .profile-tool-grid i {
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
    color: var(--ui-muted);
}

.theme-market-v2 .api-key-box {
    margin-top: 14px;
    padding: 14px;
    border: 0;
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .api-key-box code {
    min-height: 44px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface);
    color: var(--ui-heading);
}

.theme-market-v2 .pro-api-box {
    border-color: var(--ui-info-border);
    background: var(--ui-info-soft);
}

.theme-market-v2 .favorite-list {
    gap: 8px;
}

.theme-market-v2 .favorite-item {
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px;
    padding: 8px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-sm);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .favorite-item img {
    width: 76px;
    height: 76px;
    border-radius: var(--ui-radius-sm);
}

.theme-market-v2 .favorite-item .price {
    color: var(--ui-price);
    font-size: var(--font-size-18);
}

/* Notices */
.theme-market-v2 .market-v2-notice-tabs {
    margin-top: 16px;
    padding: 3px;
    display: inline-grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(72px, auto);
    gap: 3px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface-muted);
}

.theme-market-v2 .market-v2-notice-tabs button {
    min-height: 44px;
    padding: 0 12px;
    border: 0;
    border-radius: var(--ui-radius-sm);
    background: transparent;
    color: var(--ui-muted);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .market-v2-notice-tabs button.active,
.theme-market-v2 .market-v2-notice-tabs button[aria-selected="true"] {
    background: var(--ui-surface);
    color: var(--ui-primary);
    box-shadow: var(--ui-shadow-xs);
}

.theme-market-v2 .market-v2-notice-list {
    margin-top: 14px;
    display: grid;
    gap: 8px;
}

.theme-market-v2 .market-v2-notice-skeleton,
.theme-market-v2 .market-v2-notice-item {
    min-height: 84px;
    padding: 14px;
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
}

.theme-market-v2 .market-v2-notice-skeleton i,
.theme-market-v2 .market-v2-notice-item > i {
    width: 44px;
    height: 44px;
    border-radius: var(--ui-radius-sm);
}

.theme-market-v2 .market-v2-notice-skeleton > div {
    display: grid;
    gap: 8px;
}

.theme-market-v2 .market-v2-notice-skeleton span {
    height: 12px;
    border-radius: var(--ui-radius-xs);
}

.theme-market-v2 .market-v2-notice-skeleton span:last-child {
    width: 68%;
}

/* Cart */
.theme-market-v2 .market-v2-cart-layout {
    margin-top: 16px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    align-items: start;
    gap: var(--space-6);
}

.theme-market-v2 .market-v2-cart-list {
    min-width: 0;
    display: grid;
    gap: 9px;
}

.theme-market-v2 .market-v2-cart-skeleton,
.theme-market-v2 .market-v2-cart-item {
    min-height: 122px;
    padding: var(--space-3);
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr);
    gap: 12px;
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
}

.theme-market-v2 .market-v2-cart-skeleton > i {
    width: 100px;
    height: 100px;
    border-radius: var(--ui-radius-sm);
}

.theme-market-v2 .market-v2-cart-skeleton > div {
    display: grid;
    align-content: center;
    gap: 10px;
}

.theme-market-v2 .market-v2-cart-skeleton span {
    height: 13px;
    border-radius: var(--ui-radius-xs);
}

.theme-market-v2 .market-v2-cart-skeleton span:nth-child(2) {
    width: 72%;
}

.theme-market-v2 .market-v2-cart-skeleton span:last-child {
    width: 34%;
}

.theme-market-v2 .market-v2-cart-summary {
    position: sticky;
    top: calc(var(--market-nav-height) + 14px);
    padding: var(--card-padding);
    border: 1px solid var(--ui-line);
    border-radius: var(--ui-radius-md);
    background: var(--ui-surface);
}

.theme-market-v2 .market-v2-cart-summary h2 {
    margin: 0;
    font-size: var(--font-size-18);
}

.theme-market-v2 .market-v2-cart-summary p {
    margin: 6px 0 0;
    color: var(--ui-muted);
    font-size: var(--font-size-14);
}

/* Optional semantic hooks for the parallel consultation-list HTML work. */
.theme-market-v2 .consultation-list {
    min-width: 0;
    display: grid;
    gap: var(--space-3);
}

.theme-market-v2 .consultation-item {
    min-width: 0;
    padding: var(--space-3);
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--space-4);
    border: 1px solid var(--color-border);
    border-radius: var(--card-radius);
    background: var(--color-surface);
}

.theme-market-v2 .consultation-item__image {
    width: 104px;
    aspect-ratio: 1;
    overflow: hidden;
    border-radius: var(--control-radius);
    background: var(--ui-image-placeholder);
}

.theme-market-v2 .consultation-item__body {
    min-width: 0;
}

.theme-market-v2 .consultation-item__title {
    margin: 0;
    color: var(--color-text-strong);
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-semibold);
}

.theme-market-v2 .consultation-summary {
    position: sticky;
    top: calc(var(--header-height) + var(--space-4));
    padding: var(--card-padding);
    border: 1px solid var(--color-border);
    border-radius: var(--card-radius);
    background: var(--color-surface);
}

/* Source: assets/market-v2/styles/responsive.css */
/* Large laptop and compact desktop: 1024-1279px. */
@media (max-width: 1279px) {
    body.theme-market-v2 {
        --layout-gutter: var(--ds-layout-gutter-tablet);
        --ui-page-gutter: var(--ds-layout-gutter-tablet);
    }

    .theme-market-v2 .desktop-nav__inner {
        width: min(var(--layout-max), calc(100% - (var(--layout-gutter) * 2)));
        grid-template-columns: auto minmax(430px, 1fr) 220px;
        gap: var(--space-3);
    }

    .theme-market-v2 .desktop-nav__brand-copy small {
        display: none;
    }

    .theme-market-v2 .desktop-nav__link {
        min-width: 60px;
        padding-inline: var(--space-2);
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .product-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .theme-market-v2 .catalog-results .product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .theme-market-v2 .detail-layout {
        grid-template-columns: minmax(0, 3fr) minmax(360px, 2fr);
    }

    .theme-market-v2 .detail-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Tablet and narrow laptop: 768-1023px. */
@media (max-width: 1023px) {
    .theme-market-v2 .desktop-nav__inner {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .theme-market-v2 .desktop-nav__search {
        display: none;
    }

    .theme-market-v2 .home-discovery,
    .theme-market-v2 .detail-layout,
    .theme-market-v2 .content-grid,
    .theme-market-v2[data-page="sell"] .content-grid,
    .theme-market-v2[data-page="service"] .content-grid,
    .theme-market-v2 .market-v2-sell-layout,
    .theme-market-v2 .market-v2-service-layout,
    .theme-market-v2 .market-v2-cart-layout,
    .theme-market-v2 .profile-grid {
        grid-template-columns: 1fr;
    }

    .theme-market-v2 .home-discovery {
        gap: var(--space-6);
    }

    .theme-market-v2 .detail-info {
        padding: var(--space-6);
    }

    .theme-market-v2 .market-v2-contact-panel,
    .theme-market-v2 .market-v2-cart-summary,
    .theme-market-v2 .consultation-summary {
        position: static;
    }

    .theme-market-v2 .about-timeline,
    .theme-market-v2 .notice-list {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 768px) {
    .theme-market-v2 .mobile-brand-bar,
    .theme-market-v2 .bottom-nav {
        display: none;
    }

    .theme-market-v2 .catalog-filter-panel #filterCategories {
        min-height: 76px;
    }

    .theme-market-v2 .catalog-filter-panel #filterSubs {
        min-height: 62px;
    }

    .theme-market-v2[data-page="buy"] .mobile-category-tabs,
    .theme-market-v2[data-page="buy"] #filterBtn {
        display: none;
    }

    .theme-market-v2 .catalog-filter-panel.catalog-filter-panel.hidden {
        display: block;
    }
}

/* Mobile: 320-767px. */
@media (max-width: 767px) {
    body.theme-market-v2 {
        --layout-gutter: var(--ds-layout-gutter-mobile);
        --ui-page-gutter: var(--ds-layout-gutter-mobile);
        --ui-mobile-gutter: var(--ds-layout-gutter-mobile);
        padding-bottom: calc(var(--market-mobile-nav-height) + var(--space-6) + env(safe-area-inset-bottom));
        background: var(--ui-page);
    }

    body.theme-market-v2[data-page="product"] {
        padding-bottom: calc(72px + env(safe-area-inset-bottom));
    }

    .theme-market-v2 .desktop-nav {
        display: none;
    }

    .theme-market-v2 .app-shell,
    .theme-market-v2 .market-v2-shell,
    .theme-market-v2 .market-container {
        padding-inline: var(--ui-mobile-gutter);
    }

    .theme-market-v2 .app-shell {
        padding-bottom: var(--space-4);
    }

    .theme-market-v2 .market-grid,
    .theme-market-v2 .grid-12 {
        grid-template-columns: 1fr;
        gap: var(--space-4);
    }

    .theme-market-v2 :where(.col-span-12, .col-span-9, .col-span-8, .col-span-6, .col-span-4, .col-span-3) {
        grid-column: 1;
    }

    .theme-market-v2 .market-v2-main {
        padding-block: var(--space-3) var(--space-6);
    }

    .theme-market-v2 .market-v2-page-header,
    .theme-market-v2:has(.desktop-nav:not(:empty)) .market-v2-page-header,
    .theme-market-v2 .page-top,
    .theme-market-v2:has(.desktop-nav:not(:empty)) .page-top,
    .theme-market-v2 .desktop-nav:not(:empty) + .app-shell .page-top {
        position: sticky;
        top: 0;
        z-index: var(--z-sticky);
        height: var(--ui-mobile-header);
        min-height: var(--ui-mobile-header);
        margin: 0 calc(var(--ui-mobile-gutter) * -1) var(--space-2);
        padding: var(--space-1) var(--ui-mobile-gutter);
        display: flex;
        border-width: 0 0 1px;
        border-radius: 0;
        background: var(--ui-surface);
        box-shadow: none;
    }

    .theme-market-v2 .market-v2-page-header .brand-logo,
    .theme-market-v2 .page-top .brand-logo {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
    }

    .theme-market-v2 .market-v2-page-header .brand-lockup strong,
    .theme-market-v2 .page-top .brand-lockup strong {
        max-width: min(54vw, 240px);
        overflow: hidden;
        font-size: var(--font-size-16);
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .theme-market-v2 .page-top .btn,
    .theme-market-v2 .market-v2-header-link {
        min-width: var(--touch-target);
        min-height: var(--touch-target);
        padding-inline: var(--space-2);
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .market-v2-content-heading {
        padding: var(--space-2) 0 var(--space-4);
    }

    .theme-market-v2 .market-v2-content-heading h1 {
        font-size: var(--font-size-24);
    }

    .theme-market-v2 .market-v2-content-heading p {
        margin-top: var(--space-1);
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .page-narrow {
        padding-top: 0;
    }

    .theme-market-v2 .page-narrow > .section-head {
        display: none;
    }

    /* Home and catalog discovery */
    .theme-market-v2 .home-page,
    .theme-market-v2 .market-v2-page--home .market-v2-main {
        padding-top: 0;
    }

    .theme-market-v2 .mobile-brand-bar {
        position: sticky;
        top: 0;
        z-index: var(--z-sticky);
        margin-inline: calc(var(--ui-mobile-gutter) * -1);
        padding: var(--space-1) var(--ui-mobile-gutter);
        display: flex;
    }

    .theme-market-v2 .home-discovery {
        min-height: 0;
        margin: 0;
        padding: 0;
        display: block;
        border: 0;
        background: transparent;
    }

    .theme-market-v2 .discovery-heading {
        display: none;
    }

    .theme-market-v2 .discovery-search {
        min-width: 0;
        padding-top: var(--space-2);
        background: var(--ui-page);
    }

    .theme-market-v2 .market-v2-discovery .market-v2-search-bar {
        width: 100%;
    }

    .theme-market-v2 .discovery-search > .catalog-toolbar,
    .theme-market-v2[data-page="buy"] .buy-page > .catalog-toolbar,
    .theme-market-v2 .market-v2-catalog > .market-v2-search-bar {
        position: sticky;
        top: var(--ui-mobile-header);
        z-index: calc(var(--z-sticky) - 1);
    }

    .theme-market-v2 .catalog-toolbar,
    .theme-market-v2 .market-v2-catalog > .market-v2-search-bar {
        grid-template-columns: 44px minmax(0, 1fr) 56px;
        gap: var(--space-1);
        padding: var(--space-1);
        border-radius: var(--ui-radius-md);
    }

    .theme-market-v2[data-page="buy"] .market-v2-catalog > .market-v2-search-bar {
        grid-template-columns: minmax(0, 1fr) 56px;
    }

    .theme-market-v2 .catalog-toolbar .btn {
        min-width: 44px;
        min-height: 44px;
        padding-inline: var(--space-2);
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .catalog-toolbar .input {
        min-height: 44px;
        padding-inline: var(--space-2);
        font-size: var(--font-size-14);
    }

    .theme-market-v2 .category-tabs,
    .theme-market-v2 .subcategory-tabs,
    .theme-market-v2 .market-v2-category-strip .category-tabs,
    .theme-market-v2 .market-v2-category-strip .subcategory-tabs {
        margin-inline: calc(var(--ui-mobile-gutter) * -1);
        padding-inline: var(--ui-mobile-gutter);
        scroll-padding-inline: var(--ui-mobile-gutter);
    }

    .theme-market-v2 .category-tabs {
        padding-top: var(--space-2);
        gap: var(--space-2);
    }

    .theme-market-v2 .market-v2-category-strip {
        margin-top: var(--space-2);
        padding-block: var(--space-2);
        border-top: 0;
    }

    .theme-market-v2 .market-v2-category-strip .market-v2-section-title {
        min-height: 44px;
    }

    .theme-market-v2 .market-v2-category-strip .market-v2-section-title h2 {
        font-size: var(--font-size-18);
    }

    .theme-market-v2 .category-tabs .chip,
    .theme-market-v2 .subcategory-tabs .chip,
    .theme-market-v2 #filterSubs .chip {
        min-height: 44px;
        padding-inline: var(--space-2);
        gap: var(--space-2);
        font-size: var(--font-size-12);
        scroll-snap-align: start;
    }

    .theme-market-v2 .home-quick-actions {
        margin-top: var(--space-3);
    }

    .theme-market-v2 .home-quick-actions a {
        min-height: 72px;
        padding: var(--space-2) var(--space-1);
        flex-direction: column;
        gap: var(--space-1);
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .market-v2-quick-actions__trust {
        min-height: 72px;
        padding: var(--space-2) var(--space-1);
        flex-direction: column;
        gap: var(--space-1);
        text-align: center;
    }

    .theme-market-v2 .market-v2-quick-actions__trust > span:first-child {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
    }

    .theme-market-v2 .market-v2-quick-actions__trust small {
        display: none;
    }

    .theme-market-v2 .home-quick-actions a > span {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
    }

    .theme-market-v2 .home-banner {
        height: 128px;
        min-height: 128px;
        margin-top: var(--space-3);
    }

    .theme-market-v2 .banner-copy {
        right: var(--space-2);
        bottom: var(--space-2);
        left: var(--space-2);
        width: auto;
        padding: var(--space-2);
    }

    .theme-market-v2 .banner-copy strong {
        font-size: var(--font-size-14);
    }

    .theme-market-v2 .banner-copy span {
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .home-page > .notice {
        min-height: 44px;
        margin-top: var(--space-2);
        padding-inline: var(--space-2);
        gap: var(--space-2);
        font-size: var(--font-size-12);
    }

    .theme-market-v2 #productsSection,
    .theme-market-v2 .market-v2-products {
        padding-top: var(--space-6);
    }

    .theme-market-v2 .section-head.products-head,
    .theme-market-v2 .buy-head {
        min-height: 44px;
        align-items: center;
        gap: var(--space-2);
        margin-bottom: var(--space-3);
    }

    .theme-market-v2 .products-head h2,
    .theme-market-v2 .buy-title h2 {
        font-size: var(--font-size-18);
    }

    .theme-market-v2 .products-head p,
    .theme-market-v2 .buy-title p,
    .theme-market-v2 .buy-title .section-icon {
        display: none;
    }

    .theme-market-v2 .catalog-result-tools {
        gap: var(--space-1);
    }

    .theme-market-v2 .result-count,
    .theme-market-v2 .section-select {
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .section-select {
        width: 112px;
        min-height: 44px;
    }

    /* Two columns are stable at 360, 390 and 430px. */
    .theme-market-v2 .product-grid,
    .theme-market-v2 .catalog-results .product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--space-2);
    }

    .theme-market-v2 .product-body {
        padding: var(--space-2);
    }

    .theme-market-v2 .product-meta {
        margin-bottom: var(--space-1);
        gap: var(--space-1);
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .product-meta span + span::before {
        margin-right: var(--space-1);
    }

    .theme-market-v2 .product-title {
        min-height: 42px;
        font-size: var(--font-size-14);
        line-height: 1.5;
    }

    .theme-market-v2 .product-card__facts {
        min-height: 24px;
        margin-top: var(--space-1);
    }

    .theme-market-v2 .product-card__facts span {
        padding: var(--space-1);
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .product-card__facts span:nth-child(n + 2) {
        display: none;
    }

    .theme-market-v2 .price-row {
        min-height: 40px;
        margin-top: var(--space-1);
    }

    .theme-market-v2 .price-label {
        display: none;
    }

    .theme-market-v2 .price {
        font-size: var(--font-size-20);
    }

    .theme-market-v2 .price small,
    .theme-market-v2 .badge {
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .badge-code-label {
        display: none;
    }

    .theme-market-v2 .pager {
        margin-top: var(--space-4);
    }

    .theme-market-v2 .pager .btn {
        min-width: 44px;
        min-height: 44px;
        padding-inline: var(--space-2);
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .pager-info {
        width: 100%;
        text-align: center;
    }

    /* Buy page and filter sheet. */
    .theme-market-v2[data-page="buy"] .app-shell {
        padding-top: 0;
    }

    .theme-market-v2 .buy-page {
        padding-top: 0;
    }

    .theme-market-v2 .market-v2-catalog-heading {
        min-height: 44px;
        margin-bottom: var(--space-2);
        align-items: center;
    }

    .theme-market-v2 .market-v2-catalog-heading h1 {
        font-size: var(--font-size-20);
    }

    .theme-market-v2 .market-v2-catalog-heading p {
        display: none;
    }

    .theme-market-v2 .market-v2-mobile-catalog-tools {
        min-height: 52px;
        margin-top: var(--space-2);
        display: flex;
    }

    .theme-market-v2 .market-v2-mobile-catalog-tools .btn {
        min-width: 88px;
    }

    .theme-market-v2 .market-v2-mobile-catalog-tools .section-select {
        margin-left: auto;
    }

    .theme-market-v2 .buy-layout,
    .theme-market-v2 .market-v2-buy-layout {
        display: block;
        margin-top: var(--space-2);
    }

    .theme-market-v2 .catalog-filter-panel {
        position: fixed;
        inset: 0;
        z-index: var(--z-backdrop);
        width: auto;
        padding: 0;
        display: flex;
        align-items: flex-end;
        background: var(--ui-overlay);
    }

    .theme-market-v2 .catalog-filter-panel.hidden {
        display: none;
    }

    .theme-market-v2 .catalog-filter-panel .modal-panel {
        width: 100%;
        max-height: min(84vh, 700px);
        padding: var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));
        overflow-y: auto;
        border-width: 1px 0 0;
        border-radius: var(--dialog-radius) var(--dialog-radius) 0 0;
        box-shadow: var(--shadow-3);
    }

    .theme-market-v2 .catalog-filter-panel #closeFilterBtn {
        display: inline-flex;
    }

    .theme-market-v2 .catalog-filter-panel .tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
    }

    .theme-market-v2 .catalog-filter-panel .chip {
        min-height: 44px;
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .catalog-filter-panel .modal-actions {
        position: sticky;
        bottom: calc((var(--space-4) * -1) - env(safe-area-inset-bottom));
        margin-top: var(--space-4);
        padding: var(--space-3) 0 calc(var(--space-4) + env(safe-area-inset-bottom));
        background: var(--ui-surface);
    }

    /* Product detail. */
    .theme-market-v2 .market-v2-product-page > .market-v2-content-heading {
        display: none;
    }

    .theme-market-v2 #detailCard {
        min-height: 620px;
        margin-inline: calc(var(--ui-mobile-gutter) * -1);
    }

    .theme-market-v2 .detail-layout {
        grid-template-columns: 1fr;
        gap: var(--space-2);
    }

    .theme-market-v2 .product-gallery-panel,
    .theme-market-v2 .detail-info {
        border-right: 0;
        border-left: 0;
        border-radius: 0;
    }

    .theme-market-v2 .product-gallery-panel {
        padding: var(--space-2) var(--space-3);
    }

    .theme-market-v2 .detail-media {
        aspect-ratio: 1;
    }

    .theme-market-v2 .detail-thumbnails {
        grid-auto-columns: 64px;
        gap: var(--space-2);
        margin-top: var(--space-2);
    }

    .theme-market-v2 .detail-thumbnail {
        width: 64px;
        min-height: 64px;
    }

    .theme-market-v2 .detail-info {
        padding: var(--space-4);
    }

    .theme-market-v2 .detail-eyebrow {
        align-items: flex-start;
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .detail-title {
        margin-top: var(--space-2);
        font-size: var(--font-size-20);
    }

    .theme-market-v2 .price-panel {
        margin-top: var(--space-3);
        padding-block: var(--space-3);
    }

    .theme-market-v2 .detail-price {
        font-size: var(--font-size-30);
    }

    .theme-market-v2 .info-grid {
        gap: var(--space-2);
        margin-top: var(--space-3);
    }

    .theme-market-v2 .info-box {
        padding: var(--space-2);
    }

    .theme-market-v2 .detail-actions {
        display: none;
    }

    .theme-market-v2 .product-mobile-actions {
        position: fixed;
        z-index: var(--z-mobile-bar);
        inset: auto 0 0;
        min-height: calc(68px + env(safe-area-inset-bottom));
        padding: var(--space-2) max(var(--space-3), env(safe-area-inset-right)) calc(var(--space-2) + env(safe-area-inset-bottom)) max(var(--space-3), env(safe-area-inset-left));
        display: grid;
        grid-template-columns: 64px 64px minmax(0, 1fr);
        gap: var(--space-2);
        border-top: 1px solid var(--ui-line);
        background: var(--ui-surface);
        box-shadow: var(--shadow-mobile-bar);
    }

    .theme-market-v2 .product-mobile-actions button {
        min-width: 0;
        min-height: 52px;
        padding: var(--space-1);
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: var(--space-1);
        border: 1px solid var(--ui-line);
        border-radius: var(--ui-radius-sm);
        background: var(--ui-surface);
        color: var(--ui-muted);
        font-size: var(--font-size-12);
        font-weight: var(--font-weight-semibold);
    }

    .theme-market-v2 .product-mobile-actions button.primary {
        flex-direction: row;
        gap: var(--space-2);
        border-color: var(--ui-primary);
        background: var(--ui-primary);
        color: var(--ui-on-primary);
        font-size: var(--font-size-14);
        font-weight: var(--font-weight-bold);
    }

    .theme-market-v2 .product-mobile-actions button[aria-pressed="true"] {
        color: var(--ui-primary);
    }

    .theme-market-v2[data-page="product"] .bottom-nav {
        display: none;
    }

    .theme-market-v2 .detail-panel {
        margin: var(--space-2) calc(var(--ui-mobile-gutter) * -1) 0;
        border-right: 0;
        border-left: 0;
        border-radius: 0;
    }

    .theme-market-v2 .detail-tabs,
    .theme-market-v2 .detail-tab {
        min-height: 52px;
    }

    .theme-market-v2 .detail-tabs {
        padding-inline: var(--space-4);
    }

    .theme-market-v2 .detail-panel > .detail-content {
        padding: var(--space-4);
    }

    .theme-market-v2 .detail-gallery,
    .theme-market-v2 .flow-steps {
        grid-template-columns: 1fr;
        gap: var(--space-2);
    }

    /* Sell, service, content, user and consultation pages. */
    .theme-market-v2 .inner-hero {
        padding: var(--space-4) 0;
    }

    .theme-market-v2 .market-v2-status-label {
        min-height: 28px;
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .inner-hero h1 {
        margin-top: var(--space-2);
        font-size: var(--font-size-24);
    }

    .theme-market-v2 .inner-hero > p {
        margin-top: var(--space-2);
        font-size: var(--font-size-14);
    }

    .theme-market-v2 .content-grid,
    .theme-market-v2[data-page="sell"] .content-grid,
    .theme-market-v2[data-page="service"] .content-grid,
    .theme-market-v2 .profile-grid,
    .theme-market-v2 .market-v2-sell-layout,
    .theme-market-v2 .market-v2-service-layout,
    .theme-market-v2 .market-v2-cart-layout {
        grid-template-columns: 1fr;
        gap: var(--space-3);
        margin-top: var(--space-3);
    }

    .theme-market-v2 .market-v2-sell-primary,
    .theme-market-v2 .market-v2-verify-panel,
    .theme-market-v2 .market-v2-contact-panel,
    .theme-market-v2 .market-v2-rich-panel,
    .theme-market-v2 .market-v2-cart-summary,
    .theme-market-v2 .consultation-summary,
    .theme-market-v2 .panel-block,
    .theme-market-v2 .console-card,
    .theme-market-v2 .profile-panel {
        position: static;
        padding: var(--space-4);
    }

    .theme-market-v2 .sell-stepper {
        margin-block: var(--space-4);
    }

    .theme-market-v2 .sell-stepper button {
        min-height: 64px;
        flex-direction: column;
        gap: var(--space-1);
    }

    .theme-market-v2 .sell-stepper button strong {
        max-width: 100%;
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .sell-field-grid {
        grid-template-columns: 1fr;
        gap: var(--space-3);
    }

    .theme-market-v2 .sell-field-wide {
        grid-column: auto;
    }

    .theme-market-v2 .sell-image-preview {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .theme-market-v2 .sell-submit-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .theme-market-v2 .sell-submit-actions .btn {
        width: 100%;
    }

    .theme-market-v2 .sell-wizard-actions {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr) auto;
    }

    .theme-market-v2 .verify-box {
        grid-template-columns: 1fr;
    }

    .theme-market-v2 .verify-box .btn {
        width: 100%;
    }

    .theme-market-v2 .about-timeline,
    .theme-market-v2 .notice-list {
        grid-template-columns: 1fr;
        gap: var(--space-3);
        margin-top: var(--space-3);
    }

    .theme-market-v2 .about-post,
    .theme-market-v2 .notice-item {
        grid-template-columns: 112px minmax(0, 1fr);
    }

    .theme-market-v2 .about-post-cover,
    .theme-market-v2 .about-post-body,
    .theme-market-v2 .notice-item__body {
        min-height: 132px;
    }

    .theme-market-v2 .about-post-body,
    .theme-market-v2 .notice-item__body {
        padding: var(--space-3);
    }

    .theme-market-v2 .about-post h2,
    .theme-market-v2 .notice-item h2 {
        font-size: var(--font-size-14);
    }

    .theme-market-v2 .about-detail {
        padding: var(--space-6) var(--space-4);
    }

    .theme-market-v2 .about-detail-head h1 {
        font-size: var(--font-size-24);
    }

    .theme-market-v2 .market-v2-notice-tabs {
        width: 100%;
        margin-top: var(--space-3);
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        grid-auto-flow: row;
        grid-auto-columns: auto;
    }

    .theme-market-v2 .market-v2-notice-tabs button {
        min-width: 0;
        padding-inline: var(--space-1);
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .market-v2-notice-skeleton,
    .theme-market-v2 .market-v2-notice-item {
        min-height: 80px;
        padding: var(--space-3);
        gap: var(--space-2);
    }

    .theme-market-v2 .market-v2-cart-skeleton,
    .theme-market-v2 .market-v2-cart-item,
    .theme-market-v2 .consultation-item {
        min-height: 108px;
        grid-template-columns: 84px minmax(0, 1fr);
        gap: var(--space-3);
        padding: var(--space-2);
    }

    .theme-market-v2 .market-v2-cart-skeleton > i,
    .theme-market-v2 .consultation-item__image {
        width: 84px;
        height: 84px;
    }

    .theme-market-v2 .consultation-item > :last-child {
        grid-column: 1 / -1;
    }

    .theme-market-v2 .profile-hero {
        min-height: 0;
        padding: var(--space-4);
        grid-template-columns: minmax(0, 1fr) auto;
        gap: var(--space-3);
    }

    .theme-market-v2 .profile-avatar {
        width: 56px;
        height: 56px;
        flex-basis: 56px;
    }

    .theme-market-v2 .profile-hero h1 {
        font-size: var(--font-size-20);
    }

    .theme-market-v2 .profile-logout {
        min-width: 44px;
        width: auto;
        padding-inline: var(--space-2);
        justify-content: center;
        font-size: var(--font-size-12);
    }

    .theme-market-v2 .profile-stat-grid,
    .theme-market-v2 .profile-safe-grid,
    .theme-market-v2 .profile-tool-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .theme-market-v2 .bottom-nav {
        display: grid;
    }

    .theme-market-v2 .footer-card {
        margin-top: var(--space-6);
        padding-block: var(--space-4);
    }

    .theme-market-v2 .back-to-top {
        right: max(var(--space-3), env(safe-area-inset-right));
        bottom: calc(var(--market-mobile-nav-height) + var(--space-3) + env(safe-area-inset-bottom));
    }

    .theme-market-v2 .modal {
        padding: var(--space-3);
    }

    .theme-market-v2 .share-panel {
        width: min(100%, 430px);
        max-height: 92vh;
        padding: var(--space-4);
    }

    .theme-market-v2 .share-card {
        grid-template-columns: minmax(0, 1fr) 88px;
    }

    .theme-market-v2 .share-brand,
    .theme-market-v2 .share-cover {
        grid-column: 1 / -1;
    }

    .theme-market-v2 .share-cover {
        aspect-ratio: 16 / 9;
    }

    .theme-market-v2 .image-lightbox {
        padding: var(--space-2);
    }

    .theme-market-v2 .image-lightbox-panel {
        width: 100%;
    }
}

@media (max-width: 430px) {
    .theme-market-v2 .grid-2,
    .theme-market-v2 .grid-3,
    .theme-market-v2 .share-actions,
    .theme-market-v2 .sell-review dl {
        grid-template-columns: 1fr;
    }

    .theme-market-v2 .sell-review dl > .wide {
        grid-column: auto;
    }

    .theme-market-v2 .market-v2-notice-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 359px) {
    body.theme-market-v2 {
        --layout-gutter: 12px;
        --ui-page-gutter: 12px;
        --ui-mobile-gutter: 12px;
    }

    .theme-market-v2 .catalog-toolbar,
    .theme-market-v2 .market-v2-catalog > .market-v2-search-bar {
        grid-template-columns: 44px minmax(0, 1fr) 48px;
    }

    .theme-market-v2 .result-count {
        display: none;
    }

    .theme-market-v2 .detail-eyebrow {
        flex-direction: column;
        gap: var(--space-1);
    }
}

@media (max-width: 339px) {
    .theme-market-v2 .product-grid,
    .theme-market-v2 .catalog-results .product-grid {
        grid-template-columns: 1fr;
    }

    .theme-market-v2 .product-img,
    .theme-market-v2 .product-skeleton .product-img {
        aspect-ratio: 16 / 10;
    }
}

@media (prefers-reduced-motion: reduce) {
    .theme-market-v2,
    .theme-market-v2 *,
    .theme-market-v2 *::before,
    .theme-market-v2 *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}
