/* Shared product controls, member workspace and storefront presentation. */
:root {
    color-scheme: dark;
    --bg: #101116;
    --bg-soft: #191b22;
    --card-solid: #1b1d25;
    --text: #f4f3f6;
    --muted: #b8b9c5;
    --line: #343640;
    --accent: #ff4fa3;
    --success: #94dfb5;
    --error: #ffaaaa;
    --radius: 16px;
    --radius-sm: 10px;
    --shadow: 0 8px 24px rgb(0 0 0 / 14%);
    --ui-space-1: 4px;
    --ui-space-2: 8px;
    --ui-space-3: 12px;
    --ui-space-4: 16px;
    --ui-space-5: 24px;
    --ui-space-6: 32px;
    --ui-control: 44px;
    --ui-focus: #ffb4d8;
}

html, body {
    background: var(--bg);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.5;
}

:is(h1, h2, h3) { overflow-wrap: anywhere; }
:is(input, select, textarea, button) { font: inherit; }
:is(a, button, input, textarea, select, summary, [tabindex]):focus-visible {
    outline: 2px solid var(--ui-focus);
    outline-offset: 4px;
}
:is(h1, h2, h3, section[id]) { scroll-margin-top: 150px; }

/* One action hierarchy; outlines remain quieter than the primary action. */
.btn {
    min-height: var(--ui-control);
    padding: 10px 18px;
    border: 1px solid transparent;
    border-radius: var(--radius-sm);
    background: var(--gradient);
    color: #08090d;
    box-shadow: none;
    font-size: 14px;
    font-weight: 650;
    line-height: 1.35;
    text-align: center;
    transition: background 150ms ease, border-color 150ms ease;
}
.btn:hover { background: linear-gradient(135deg, #ff70b4 0%, #9d84ff 100%); transform: none; opacity: 1; }
.btn.btn-outline { background: transparent; border-color: #676977; color: var(--text); }
.btn.btn-outline:hover { background: #292b35; border-color: #858794; }
.btn.btn-danger-soft { background: #381f29; color: #ffc4cf; border-color: #995967; }
.btn.btn-danger-soft:hover { background: #4c2937; }
.btn.btn-small { min-height: 36px; padding: 7px 12px; font-size: 13px; }
.btn:disabled, button:disabled, [aria-disabled="true"] {
    opacity: .55;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.form-group :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), select, textarea) {
    border: 1px solid #696b7a;
    border-radius: var(--radius-sm);
    background: #13151b;
    color: var(--text);
    min-height: var(--ui-control);
    padding: 10px 12px;
    font-size: 15px;
    line-height: 1.5;
    box-shadow: none;
    max-width: 100%;
}
.form-group :is(input, select, textarea):focus {
    border-color: var(--ui-focus);
    box-shadow: 0 0 0 3px rgb(255 79 163 / 12%);
}
.form-group { min-width: 0; gap: 7px; }
.form-group label { font-size: 14px; line-height: 1.4; color: #e4e3eb; }
.form-group select { appearance: auto; -webkit-appearance: auto; background-image: none; padding-right: 12px; }
input::placeholder, textarea::placeholder { color: #a8a9b7; opacity: 1; }
input:is([type="checkbox"], [type="radio"]) { accent-color: var(--accent); }
textarea { resize: vertical; }
.form-errors { border-color: #bd737d; background: #301e25; color: #ffd9df; }

/* Shell navigation gives discovery a visible desktop path. */
header.site-header.xs-header { background: var(--bg); }
header.site-header.xs-header .xs-header-shell {
    background: #15171e;
    border-radius: 14px;
    box-shadow: none;
    backdrop-filter: none;
}
header.site-header.xs-header .xs-header-bar { min-height: 76px; }
header.site-header.xs-header .xs-header-brand-mark { width: clamp(180px, 18vw, 224px); }
header.site-header.xs-header .xs-header-wall-cta { box-shadow: none; }
header.site-header.xs-header .xs-header-pill strong { background: #383040; color: #ffd5e9; }
.xs-desktop-nav { display: none; }
@media (min-width: 1040px) {
    .xs-desktop-nav { display: flex; gap: 4px; align-items: center; min-height: 44px; padding: 4px 2px; }
    .xs-desktop-nav a { padding: 7px 14px; border-radius: 8px; color: var(--muted); font-size: 13px; font-weight: 600; }
    .xs-desktop-nav a:hover { background: #23252e; color: var(--text); }
    .xs-desktop-nav a[aria-current="page"] { background: #322632; color: #ffbddc; }
}
@media (min-width: 481px) and (max-width: 900px) {
    header.site-header.xs-header .xs-header-brand-mark {
        width: 54px;
        height: 54px;
        aspect-ratio: auto;
        overflow: hidden;
    }
    header.site-header.xs-header .xs-header-brand-mark img {
        width: 165px;
        max-width: none;
        height: 54px;
        object-fit: contain;
        object-position: left center;
    }
    header.site-header.xs-header .xs-header-summary {
        gap: 8px;
    }
    header.site-header.xs-header .xs-header-pill {
        padding-inline: 10px;
    }
    header.site-header.xs-header .xs-header-pill-label,
    header.site-header.xs-header .xs-header-account-copy {
        display: none;
    }
}

/* Compact page introductions leave the work visible in the first viewport. */
:is(.dashboard-hero-card, .wallet-v3-shell, .transactions-v3-shell, .buyxs-v3-shell,
    .library-v3-shell, .notifications-v3-shell, .messages-v1-shell, .upload-v3-shell,
    .mycontent-v3-shell, .analytics-v3-shell, .support-ticket-shell,
    .market-v3-hero-card, .docs-v3-hero-card, .auction-v4-hero-shell) {
    background: #191b23;
    border-color: var(--line);
    border-radius: var(--radius);
    padding: var(--ui-space-5);
    box-shadow: none;
    gap: var(--ui-space-5);
}
:is(.dashboard-hero-copy, .wallet-v3-hero-copy, .transactions-v3-hero-copy,
    .buyxs-v3-hero-copy, .library-v3-copy, .notifications-v3-copy, .messages-v1-copy,
    .upload-v3-copy, .mycontent-v3-copy, .analytics-v3-copy, .support-ticket-copy,
    .market-v3-hero-copy, .docs-v3-hero-copy, .auction-v4-copy) h1,
.admin-v3-hero h1 {
    font-size: clamp(26px, 3vw, 34px);
    line-height: 1.18;
    letter-spacing: -.035em;
    max-width: 28ch;
    color: var(--text);
    -webkit-text-fill-color: currentColor;
}
:is(.dashboard-panel, .wallet-v3-panel, .transactions-v3-panel, .library-v3-panel,
    .notifications-v3-panel, .messages-v1-panel, .upload-v3-panel, .mycontent-v3-panel,
    .analytics-v3-panel, .support-ticket-panel, .docs-v3-panel,
    .admin-v3-panel, .admin-v3-side-card, .admin-v3-report-card, .admin-v3-audit-card) {
    border-radius: var(--radius);
    background: #191b23;
    padding: var(--ui-space-5);
    box-shadow: none;
    backdrop-filter: none;
}
:is(.dashboard-section-head, .wallet-v3-panel-head, .transactions-v3-panel-head,
    .docs-v3-section-head, .notifications-v3-panel-head, .messages-v1-section-head) h2 {
    font-size: 21px;
    line-height: 1.3;
    letter-spacing: -.025em;
}
:is(.dashboard-highlight-card, .dashboard-highlight-mini, .dashboard-mini-card,
    .wallet-v3-balance-card, .transactions-v3-balance-card, .messages-v1-highlight-card,
    .notifications-v3-highlight-card, .library-v3-highlight-card) {
    background: #20222c;
    border-color: #3d3f4c;
    border-radius: 12px;
    box-shadow: none;
}
.ui-source-link { text-decoration: none; }
.ui-source-link:hover { background: #2c2935; border-color: #8d7186; }
.ui-stat-source { text-decoration: underline; text-underline-offset: 4px; }
.ui-stat-source:hover { color: #ffd5e9; }
:is(.dashboard-highlight-card, .transactions-v3-balance-card) strong,
.wallet-v3-balance-value { font-size: 30px; font-variant-numeric: tabular-nums; }
.dashboard-mini-card strong { font-size: 22px; font-variant-numeric: tabular-nums; }
.dashboard-action-card { border-radius: 10px; padding: 16px; box-shadow: none; }
.dashboard-action-card:hover { transform: none; }

/* Discovery keeps its imagery; search and card information use quieter chrome. */
.home-v3-hero-card { min-height: 460px; padding: 32px; border-radius: 20px; background: #191b23; box-shadow: none; }
.home-v3-hero-card::before, .market-v3-hero-card::before { display: none; }
.home-v3-copy h1 { font-size: clamp(30px, 3.4vw, 44px); line-height: 1.14; letter-spacing: -.035em; }
.home-v3-hero-actions .btn { min-height: 44px; }
.market-v3-hero { padding-top: 24px; }
.market-v3-filter-shell { padding: 20px; border-radius: 14px; background: #191b23; box-shadow: none; }
.market-v3-filter-head { margin-bottom: 16px; }
.market-v3-filter-copy h2 { font-size: 21px; }
.market-v3-filter-status { background: transparent; border: 0; }
:is(.creator-collection-card, .market-creator-card, .library-v3-card, .mycontent-v3-card) {
    border-radius: 14px;
    box-shadow: none;
}

/* Financial and operational lists remain lists, with stable row geometry. */
.wallet-v3-balance-card {
    background: #20222c !important;
    border-color: #55505e !important;
    box-shadow: none !important;
}
#cashout_amount_xs { font-size: 24px !important; padding: 10px 12px !important; }
.wallet-v3-activity-item:hover { transform: none !important; }
.transactions-v3-list { gap: 0; }
.transactions-v3-item { padding: 16px 0; border-radius: 0; border-width: 0 0 1px; background: transparent; }
.transactions-v3-item:last-child { border-bottom: 0; }
.transactions-v3-item-amount { font-variant-numeric: tabular-nums; }
.admin-v3-hero, .admin-v3-stat-card, .admin-v3-admin-card { background: #191b23; border-radius: 14px; box-shadow: none; }
.admin-v3-table-wrap { border-radius: 12px; scrollbar-color: #79717d #191b23; }
.admin-v3-table { min-width: 960px; font-size: 14px; }
.admin-v3-table thead th { padding: 12px 14px; letter-spacing: .045em; background: #22242e; }
.admin-v3-table tbody td { padding: 14px; }
.admin-v3-user-primary { min-width: 230px; }
.admin-v3-table tbody tr:focus-within { background: #292631; }
.admin-v3-nav-link { border-radius: 10px; }
.admin-v3-subnav { border-radius: 12px; box-shadow: none; padding: 8px; gap: 6px; }
.admin-v3-subnav-link { border-radius: 8px; padding: 10px 12px; }
.admin-v3-subnav-link.is-active { background: #332736; box-shadow: none; }
.mycontent-v3-page .market-v3-filter-form { grid-template-columns: minmax(180px, 1fr) 150px 160px auto auto; align-items: end; }
.mycontent-v3-page .library-v3-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), min(100%, 380px))); }
.mycontent-v3-page .library-v3-card { min-width: 0; }

/* Account forms, documentation and gates share a readable, calm surface. */
.auth-card, .auth-aside, .agegate-v1-card { background: #191b23; border-radius: 16px; box-shadow: var(--shadow); backdrop-filter: none; }
.auth-card { padding: 28px; }
.auth-card-head :is(h1, h2), .auth-aside h1 { font-size: 28px; line-height: 1.2; letter-spacing: -.03em; }
.auth-page { padding-top: 32px; }
.auth-form { gap: 20px; }
.auth-card-head { margin-bottom: 24px; }
.auth-shell-single { max-width: 520px; margin-inline: auto; }
.profile-edit-card { max-width: 900px; margin-inline: auto; }
.agegate-v1-body { background: var(--bg); }
.agegate-v1-shell { max-width: 640px; }
.agegate-v1-copy h1 { font-size: clamp(28px, 4vw, 38px); line-height: 1.2; }
.docs-v3-hero { padding-top: 24px; padding-bottom: 8px; }
.docs-v3-hero-card-single { max-width: none; }
.docs-v3-hero-card::before { display: none; }
.docs-v3-card, .docs-v3-highlight-card, .docs-v3-hero-note { background: #20222a; border-radius: 12px; box-shadow: none; }
.docs-v3-card p, .docs-v3-panel p { max-width: 76ch; line-height: 1.7; }
.docs-v3-panel h2 { font-size: 23px; }
.site-footer { background: var(--bg); border-top: 1px solid #292b34; }
.footer-links a { display: inline-flex; align-items: center; min-height: 36px; }
.footer-links a:hover { text-decoration: underline; text-underline-offset: 4px; }
.wall-v3-card-timer.is-ending { animation: none !important; }
.messages-v1-panel-head { align-items: flex-start; flex-wrap: wrap; gap: 12px; }
.messages-v1-panel-head h2 { font-size: 22px; overflow-wrap: normal; }
.messages-v1-highlight-card { padding: 16px; }
.messages-v1-highlight-grid { gap: 8px; }
.messages-v1-highlight-mini { padding: 12px; border-radius: 10px; }
.messages-v1-thread-card-link { grid-template-columns: 40px minmax(0, 1fr); gap: 12px; padding: 16px; }
.messages-v1-thread-avatar { width: 40px; height: 40px; }
.ui-password-field { display: flex; align-items: stretch; gap: 8px; }
.ui-password-field input { min-width: 0; flex: 1; width: 100%; }
.ui-password-toggle { flex: 0 0 auto; padding: 8px 12px; border: 1px solid #696b7a; border-radius: 10px; color: var(--text); background: #242630; cursor: pointer; font-size: 13px; }
.ui-password-toggle:hover { background: #33303d; }
.analytics-v3-table-wrap { scrollbar-color: #79717d #191b23; }
.analytics-v3-status-card, .analytics-v3-metric-card, .analytics-v3-hero-metric { min-width: 0; }
.analytics-v3-status-card > div { flex-wrap: wrap; gap: 8px; }
.analytics-v3-status-card .request-status-chip { white-space: normal; overflow-wrap: anywhere; }
.owned-collection-shell, .image-focus-shell { background: #191b23; border-radius: 16px; box-shadow: none; }
.owned-collection-copy h1, .image-focus-copy h1, .content-v3-heading h1 { font-size: clamp(26px, 3vw, 34px); line-height: 1.2; }
.owned-collection-highlight-card, .image-focus-highlight-card { background: #20222c; border-radius: 12px; box-shadow: none; }
.buyxs-v3-summary-card { padding: 18px; gap: 8px; background: #20222c; border-radius: 12px; box-shadow: none; }
.buyxs-v3-summary-mini { padding: 10px 12px; border-radius: 8px; }
.buyxs-v3-summary-mini strong { font-size: 18px; }
.buyxs-v3-summary-card p { margin-block: 0; }
.site-closed-body { background: var(--bg); }
.site-closed-shell { background: #191b23; border-radius: 16px; box-shadow: var(--shadow); }
.site-closed-shell h1 { font-size: clamp(28px, 4vw, 38px); line-height: 1.2; }
.site-closed-btn { border-radius: 10px; }
.site-closed-btn-primary { background: var(--gradient); color: #08090d; box-shadow: none; }
.site-closed-btn:hover { transform: none; }
.site-closed-btn:focus-visible { outline: 2px solid var(--ui-focus); outline-offset: 4px; }
.buyxs-v3-panel, .upload-v3-form-panel, .upload-v3-side-panel {
    border-radius: 16px;
    background: #191b23;
    box-shadow: none;
}
.buyxs-v3-suggestion.is-active, .buyxs-v3-suggestion[aria-pressed="true"] {
    border-color: #ff4fa3;
    background: #3b2937;
    color: #ffd5e9;
}

@media (max-width: 900px) {
    .mycontent-v3-page .market-v3-filter-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    :is(.dashboard-hero-card, .wallet-v3-shell, .transactions-v3-shell, .buyxs-v3-shell,
        .library-v3-shell, .notifications-v3-shell, .messages-v1-shell, .upload-v3-shell,
        .analytics-v3-shell, .support-ticket-shell, .market-v3-hero-card, .docs-v3-hero-card,
        .auction-v4-hero-shell) { padding: 20px; gap: 20px; }
    .home-v3-hero-card { min-height: auto; padding: 24px; }
}
@media (max-width: 640px) {
    :is(.messages-v1-highlight-card, .library-v3-highlight-card) { padding: 14px; gap: 6px; }
    :is(.messages-v1-highlight-grid, .library-v3-highlight-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    :is(.messages-v1-highlight-mini, .library-v3-highlight-mini) { padding: 10px; gap: 4px; }
    :is(.messages-v1-highlight-mini, .library-v3-highlight-mini) strong { font-size: 20px; }
    .mycontent-v3-page .market-v3-filter-form { grid-template-columns: minmax(0, 1fr); }
    .mycontent-v3-page .market-v3-filter-form .btn { width: 100%; }
    .admin-v3-subnav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .admin-v3-subnav-link { min-height: 44px; align-content: center; font-size: 13px; }
    .admin-v3-subnav-link small { display: none; }
    .admin-v3-hero .admin-v3-admin-card { padding: 12px; gap: 4px; }
    :root { --ui-control: 44px; }
    .btn.btn-small { min-height: 44px; }
    .form-group :is(input, select, textarea) { font-size: 16px; }
    :is(.dashboard-panel, .wallet-v3-panel, .transactions-v3-panel, .docs-v3-panel,
        .admin-v3-panel, .admin-v3-side-card, .admin-v3-report-card, .admin-v3-audit-card) { padding: 18px; }
    .auth-card { padding: 24px 20px; }
    .auth-page { padding-top: 24px; }
    .home-v3-copy h1 { font-size: 30px; }
    header.site-header.xs-header .xs-header-brand-mark { width: 170px; }
    header.site-header.xs-header .xs-header-bar { min-height: 64px; }
    .transactions-v3-item-head { gap: 12px; }
    .transactions-v3-item-title { min-width: 0; overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* The member workspace uses a stable navigation rail and an open work canvas. */
.workspace-icon { width: 20px; height: 20px; flex: 0 0 20px; vertical-align: middle; }
.workspace-layout { width: min(1440px, calc(100% - 64px)); margin: 26px auto 56px; display: grid; grid-template-columns: 204px minmax(0, 1fr); gap: 36px; align-items: start; }
.workspace-content { min-width: 0; }
.workspace-content > .container { width: 100%; max-width: none; margin: 0; padding: 0; }
.workspace-rail { position: sticky; top: 130px; min-width: 0; padding-right: 22px; border-right: 1px solid var(--line); max-height: calc(100dvh - 150px); overflow-y: auto; scrollbar-width: thin; scrollbar-color: #49404f transparent; }
.workspace-rail > summary { display: none; }
.workspace-navigation { display: grid; gap: 24px; }
.workspace-nav-group { display: grid; gap: 3px; }
.workspace-nav-group > p { margin: 0 0 8px 12px; color: #8f919e; text-transform: uppercase; letter-spacing: .1em; font-size: 10px; font-weight: 700; }
.workspace-nav-group > a { display: flex; align-items: center; gap: 11px; padding: 10px 12px; color: #bfc0cb; font-size: 13px; line-height: 1.35; min-height: 42px; border-radius: 8px; transition: color 150ms, background 150ms; }
.workspace-nav-group > a:hover { color: #fff; background: #1c1d26; }
.workspace-nav-group > a[aria-current="page"] { color: #fff; background: #302033; box-shadow: inset 3px 0 var(--accent); }
.workspace-nav-group > a[aria-current="page"] > svg { color: var(--accent); }
.workspace-nav-discover { border-top: 1px solid var(--line); padding-top: 16px; }
.workspace-nav-discover > a > svg:last-child:not(:first-child) { width: 14px; flex-basis: 14px; margin-left: auto; }
.workspace-content :is(.wallet-v3-hero,.transactions-v3-hero,.buyxs-v3-hero,.library-v3-hero,.notifications-v3-hero,.messages-v1-hero,.upload-v3-hero,.mycontent-v3-hero,.analytics-v3-hero) { padding: 0; margin-bottom: 28px; }
.workspace-content :is(.wallet-v3-shell,.transactions-v3-shell,.buyxs-v3-shell,.library-v3-shell,.notifications-v3-shell,.messages-v1-shell,.upload-v3-shell,.mycontent-v3-shell,.analytics-v3-shell) { border: 0; border-bottom: 1px solid var(--line); border-radius: 0 !important; background: transparent; box-shadow: none; padding: 0 0 28px !important; gap: 28px; min-height: 0; }
.workspace-content :is(.wallet-v3-shell,.transactions-v3-shell,.buyxs-v3-shell,.library-v3-shell,.notifications-v3-shell,.messages-v1-shell,.upload-v3-shell,.mycontent-v3-shell,.analytics-v3-shell)::before { display: none; }
.workspace-content :is(.wallet-v3-hero-copy,.transactions-v3-hero-copy,.buyxs-v3-hero-copy,.library-v3-copy,.notifications-v3-copy,.messages-v1-copy,.upload-v3-copy,.mycontent-v3-copy,.analytics-v3-copy) h1 { max-width: none; font-size: 30px; line-height: 1.2; }
.workspace-content :is(.wallet-v3-hero-copy,.transactions-v3-hero-copy,.buyxs-v3-hero-copy,.library-v3-copy,.notifications-v3-copy,.messages-v1-copy,.upload-v3-copy,.mycontent-v3-copy,.analytics-v3-copy) > p:not(:first-child) { max-width: 60ch; font-size: 14px; line-height: 1.65; }
.workspace-content :is(.wallet-v3-panel,.transactions-v3-panel,.library-v3-panel,.notifications-v3-panel,.messages-v1-panel,.upload-v3-panel,.mycontent-v3-panel,.analytics-v3-panel,.support-ticket-panel) { padding: 22px; border: 1px solid #2e303b; border-radius: 12px; background: #15171e; }
.workspace-content :is(.analytics-v3-metric-card,.analytics-v3-hero-metric,.wallet-v3-summary-card,.notifications-v3-highlight-mini,.messages-v1-highlight-mini) { background: transparent; border-radius: 0; border-width: 0 0 1px; border-color: #343640; box-shadow: none; }
.workspace-content .wallet-v3-activity-item { background: transparent; border-width: 0 0 1px; border-radius: 0; padding-inline: 0; box-shadow: none; }
.workspace-content .wallet-v3-activity-list { gap: 0; }
.workspace-content .analytics-v3-grid--two { grid-template-columns: minmax(0,1fr); }
.workspace-content .analytics-v3-metric-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.workspace-content .analytics-v3-copy { background: transparent; border: 0; box-shadow: none; padding: 0; border-radius: 0; }
.workspace-content .analytics-v3-hero-card { background: #1b1825; border: 1px solid #3d3047; border-radius: 12px; box-shadow: none; padding: 20px; }
.workspace-content .wallet-v3-stats { gap: 0; border-block: 1px solid var(--line); }
.workspace-content .wallet-v3-stat-card { border: 0; border-radius: 0 !important; background: transparent; box-shadow: none; padding: 20px 16px; }
.workspace-content .wallet-v3-stat-card strong { font-size: 25px; }
.workspace-content .wallet-v3-balance-card { padding: 20px; gap: 8px; border-radius: 12px !important; }
.workspace-content .wallet-v3-balance-note { font-size: 12px; line-height: 1.55; }
.workspace-content .wallet-v3-balance-mini { background: transparent; padding: 10px 0; border: 0; border-top: 1px solid #43404a; border-radius: 0 !important; }
.workspace-content .mycontent-v3-page .library-v3-list-panel { background: transparent; border: 0; padding: 0 !important; box-shadow: none; }
.workspace-content .mycontent-v3-page .market-v3-filter-form { grid-template-columns: minmax(160px,1fr) 130px 140px auto auto; }
.workspace-content .mycontent-v3-page .library-v3-grid { grid-template-columns: repeat(auto-fill,minmax(min(100%,260px),1fr)); }
.workspace-content :is(.profile-edit-card,.member-private-room-card) { border-radius: 12px; box-shadow: none; }

/* An actionable dashboard: a work queue, wallet, studio and personal destinations. */
.member-page-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 3px 0 36px; }
.member-page-heading h1 { margin: 8px 0 10px; max-width: 28ch; font-size: clamp(25px,2.4vw,34px); line-height: 1.2; letter-spacing: -.035em; }
.member-page-heading p { margin: 0; color: var(--muted); font-size: 14px; }
.member-page-heading p.workspace-eyebrow { color: var(--accent); font-size: 11px; text-transform: uppercase; letter-spacing: .12em; font-weight: 700; }
.member-page-heading > .btn { flex-shrink: 0; display: inline-flex; gap: 9px; align-items: center; }
.member-dashboard-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(280px,1fr); column-gap: 32px; row-gap: 36px; }
.member-section-heading { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 18px; }
.member-section-heading h2 { margin: 0; font-size: 18px; letter-spacing: -.02em; }
.member-section-heading > span { font-size: 11px; color: #9396a5; }
.member-activity-row { display: grid; grid-template-columns: 42px minmax(0,1fr) auto 18px; gap: 14px; align-items: center; min-height: 87px; padding: 16px 0; border-bottom: 1px solid var(--line); color: var(--text); }
.member-activity-row:hover { background: #171921; }
.member-activity-icon { width: 42px; height: 42px; display: grid; place-items: center; background: #23202d; color: #d2bbe6; border-radius: 10px; }
.member-activity-row strong { font-size: 14px; display: block; }
.member-activity-row small { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.member-activity-row b { min-width: 27px; text-align: center; font-size: 17px; font-variant-numeric: tabular-nums; }
.member-activity-row > svg { color: #858897; width: 17px; }
.member-balance { background: #1d1928; border: 1px solid #3f304d; border-radius: 14px; padding: 24px; align-self: start; position: relative; overflow: hidden; }
.member-balance::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--gradient); }
.member-balance .member-section-heading { margin-bottom: 22px; }
.member-balance .member-section-heading > svg { color: var(--accent); }
.member-balance-value { display: grid; gap: 2px; color: var(--text); margin-bottom: 18px; }
.member-balance-value:hover { background: transparent; }
.member-balance-value span { font-size: 12px; color: var(--muted); }
.member-balance-value strong { font-size: clamp(28px,3vw,40px); line-height: 1.3; letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
.member-balance-details { display: grid; gap: 8px; border-bottom: 1px solid #40334c; padding-bottom: 18px; margin-bottom: 16px; }
.member-balance-details a { display: flex; justify-content: space-between; gap: 12px; font-size: 12px; color: var(--muted); }
.member-balance-details b { color: var(--text); }
.member-text-link { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 600; color: #e5c4ef; }
.member-text-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.member-text-link svg { width: 16px; flex-basis: 16px; }
.member-studio { min-width: 0; }
.member-studio-metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); padding: 18px 0; border-block: 1px solid var(--line); }
.member-studio-metrics a { color: var(--text); display: grid; gap: 5px; padding: 0 18px; border-right: 1px solid var(--line); }
.member-studio-metrics a:first-child { padding-left: 0; }
.member-studio-metrics a:last-child { border: 0; }
.member-studio-metrics strong { font-size: 28px; font-variant-numeric: tabular-nums; }
.member-studio-metrics span { font-size: 12px; color: var(--muted); }
.member-studio-links { display: grid; margin-top: 10px; }
.member-studio-links > a { display: flex; align-items: center; gap: 12px; min-height: 55px; color: var(--text); font-size: 13px; border-bottom: 1px solid #262833; }
.member-studio-links > a > svg:first-child { color: #9b8bb2; }
.member-studio-links > a > svg:last-child { margin-left: auto; width: 17px; color: #9697a5; }
.member-studio-links small { margin-left: 12px; color: var(--muted); font-size: 11px; }
.member-studio-links > a:hover { color: var(--accent); }
.member-destinations { display: grid; align-content: start; gap: 12px; }
.member-destination { display: grid; grid-template-columns: 24px minmax(0,1fr) 20px; gap: 14px; align-items: center; padding: 20px; color: var(--text); border: 1px solid #31313d; border-radius: 12px; background: #161820; }
.member-destination > svg:first-child { color: #cda0e5; }
.member-destination strong { font-size: 14px; display: block; }
.member-destination small { display: block; font-size: 12px; line-height: 1.5; margin-top: 4px; color: var(--muted); }
.member-destination > svg:last-child { width: 17px; color: #9697a5; }
.member-destination:hover { background: #20202b; border-color: #6c4f80; }

/* Account identity is distinct from the selected section of the workspace. */
.profile-shell-page .profile-shell-hero { border: 1px solid #30313b; border-radius: 14px; overflow: hidden; background: #15171e; }
.profile-shell-page .profile-shell-banner { height: 110px; min-height: 0; border: 0; border-radius: 0; }
.profile-shell-page .profile-shell-top { display: block; margin: 0; padding: 0; }
.profile-shell-page .profile-shell-identity-card { display: grid; grid-template-columns: 96px minmax(0,1fr); gap: 22px; padding: 24px; background: transparent; border: 0; border-radius: 0; box-shadow: none; backdrop-filter: none; overflow: visible; }
.profile-shell-page .profile-shell-avatar-shell { width: 96px; height: 96px; border-radius: 50%; padding: 0; border: 3px solid #33303e; margin-top: -48px; }
.profile-shell-page .profile-shell-avatar { width: 100%; height: 100%; border-radius: 50%; }
.profile-shell-page .profile-shell-copy { display: flex; flex-direction: column; gap: 12px; }
.profile-shell-page .profile-shell-title-row h1 { font-size: 28px; }
.profile-shell-page .profile-shell-kicker { display: none; }
.profile-shell-page .profile-shell-bio { font-size: 14px; margin: 0; padding: 0; max-width: 68ch; }
.profile-shell-page .profile-shell-primary-actions { display: flex; gap: 10px; margin: 0; }
.profile-shell-page .profile-shell-utility-links { display: none; }
.profile-shell-page .profile-shell-meta-pill { padding: 0; min-height: 24px; border: 0; background: none; font-size: 11px; color: var(--muted); }
.profile-shell-page .profile-shell-subnav { display: flex; width: 100%; gap: 8px; border: 0; border-radius: 0; background: #11131a; padding: 0 24px; margin: 0; overflow-x: auto; }
.profile-shell-page .profile-shell-subnav a { border: 0; border-bottom: 2px solid transparent; border-radius: 0; padding: 15px 12px; color: var(--muted); font-size: 13px; text-transform: none; white-space: nowrap; }
.profile-shell-page .profile-shell-subnav a[aria-selected="true"] { border-bottom-color: var(--accent); color: #fff; background: transparent; }
.profile-shell-page .profile-shell-layout { display: grid; grid-template-columns: minmax(0,1fr); gap: 22px; }
.profile-shell-page :is(.profile-shell-main,.profile-shell-sidebar) { display: contents; }
.profile-shell-page [hidden] { display: none !important; }
.profile-shell-page .profile-shell-panel { background: transparent; border: 0; padding: 0; border-radius: 0; box-shadow: none; backdrop-filter: none; }
.profile-shell-page .profile-shell-command-card { background: #1a1722; border-radius: 12px; padding: 22px; margin-bottom: 28px; border: 1px solid #403247; box-shadow: none; backdrop-filter: none; order: 0; }
.profile-shell-page #profileSnapshot > .profile-shell-panel-head { order: -1; }
.profile-shell-page .profile-shell-command-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; }
.profile-shell-page .profile-shell-command-item { border: 0; border-right: 1px solid #403247; background: transparent; box-shadow: none; border-radius: 0; padding: 10px 14px; min-height: 0; }
.profile-shell-page .profile-shell-command-item:last-child { border-right: 0; }
.profile-shell-page .profile-shell-command-item p { display: none; }
.profile-shell-page .profile-shell-command-copy { margin-block: 8px; font-size: 12px; }
.profile-shell-page .profile-shell-feature-card { background: #171921; border: 1px solid #2e303b; border-radius: 12px; box-shadow: none; padding: 20px; }
.profile-shell-page .profile-shell-metric-card { border-radius: 0; background: transparent; border-width: 0 0 1px; padding: 16px 0; box-shadow: none; }
.profile-shell-page .profile-shell-summary-card { background: #171921; border-radius: 10px; box-shadow: none; }
.profile-shell-page :is(.profile-shell-section-kicker,.profile-shell-card-kicker) { font-size: 10px; letter-spacing: .1em; color: #b8a1c5; }
.profile-shell-page :is(.profile-shell-section-kicker,.profile-shell-card-kicker)::before { display: none; }
.profile-shell-page .profile-shell-disclosure { background: #15171e; border: 1px solid #30313c; border-radius: 12px; box-shadow: none; backdrop-filter: none; }
.profile-shell-page .profile-shell-link-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.profile-shell-page .profile-shell-link-card { background: transparent; border-width: 0 0 1px; border-radius: 0; padding: 16px 0; }

/* A storefront puts the creator's identity next to the work, with secondary tools aside. */
.creator-shell-page .creator-shell-hero { border: 1px solid #30313b; border-radius: 16px; background: #15171e; overflow: hidden; }
.creator-shell-page .creator-shell-banner { height: 150px; border: 0; border-radius: 0; min-height: 0; }
.creator-shell-page .creator-shell-top { display: block; margin: 0; padding: 0 28px 24px; }
.creator-storefront-layout { display: grid; grid-template-columns: minmax(0,1fr) 285px; gap: 28px; align-items: start; }
.creator-storefront-layout > .creator-shell-command-card { grid-column: 2; grid-row: 1; position: sticky; top: 175px; }
.creator-storefront-layout > .creator-collections-card { grid-column: 1; grid-row: 1; }
.creator-shell-command-section:not(:has(a, button)) { display: none; }
.creator-shell-page .creator-shell-identity-card { display: grid; grid-template-columns: 112px minmax(0,1fr); gap: 24px; padding: 24px 0 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; backdrop-filter: none; overflow: visible; align-items: start; }
.creator-shell-page .creator-shell-avatar-shell { width: 112px; height: 112px; border: 4px solid #15171e; padding: 0; border-radius: 50%; margin-top: -68px; background: #1d1e26; }
.creator-shell-page .creator-shell-avatar { width: 100%; height: 100%; border-radius: 50%; }
.creator-shell-page .creator-shell-copy { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.creator-shell-page .creator-shell-title { font-size: 32px; line-height: 1.2; }
.creator-shell-page .creator-shell-kicker { font-size: 10px; letter-spacing: .1em; color: #c1a9cd; }
.creator-shell-page .creator-shell-kicker::before, .creator-shell-page .creator-shell-card-kicker::before { display: none; }
.creator-shell-page .creator-shell-meta-row { gap: 12px; }
.creator-shell-page .creator-shell-meta-pill { padding: 0; min-height: 24px; border: 0; background: transparent; font-size: 11px; color: var(--muted); }
.creator-shell-page .creator-shell-cta { padding: 0; margin: 0 0 16px; border: 0; }
.creator-shell-page .creator-shell-cta > .creator-shell-card-kicker { display: none; }
.creator-shell-page .creator-shell-cta .creator-shell-card-copy { margin-top: 10px; font-size: 12px; }
.creator-shell-page .creator-shell-primary-actions { display: grid; grid-template-columns: minmax(0,1fr); gap: 10px; }
.creator-shell-page .creator-shell-primary-actions > .btn { flex: 0 1 auto; }
.creator-shell-page .creator-shell-bio { padding: 0; margin: 0; border: 0; background: none; font-size: 14px; max-width: 65ch; }
.creator-shell-page .creator-shell-rating-overview { order: 4; font-size: 12px; padding: 0; border: 0; }
.creator-shell-page .creator-shell-metric-grid { grid-template-columns: repeat(6,minmax(0,1fr)); gap: 20px; border-top: 1px solid #30303b; margin: 0 28px; padding: 16px 0; }
.creator-shell-page .creator-shell-metric-card { border: 0; border-radius: 0; padding: 0; background: transparent; box-shadow: none; min-height: 0; display: flex; flex-direction: column; gap: 5px; }
.creator-shell-page .creator-shell-metric-card span { font-size: 9px; letter-spacing: .03em; line-height: 1.4; }
.creator-shell-page .creator-shell-metric-card strong { font-size: 18px; }
.creator-shell-page .creator-shell-command-card { padding: 24px 0 0 24px; border: 0; border-left: 1px solid #30313b; border-radius: 0; background: none; box-shadow: none; backdrop-filter: none; }
.creator-shell-page .creator-shell-quick-grid { grid-template-columns: minmax(0,1fr); gap: 8px; }
.creator-shell-page .creator-shell-quick-action { justify-content: flex-start; text-align: left; font-size: 12px; padding: 10px 12px; min-height: 40px; }
.creator-shell-page :is(.creator-shell-disclosure,.creator-shell-rating-card) { padding: 14px; border-radius: 10px; background: #1c1e27; box-shadow: none; backdrop-filter: none; }
.creator-shell-page .creator-shell-disclosure > summary span { font-size: 12px; }
.creator-shell-page .creator-shell-subnav { display: flex; width: 100%; gap: 20px; margin: 0; padding: 0 28px; border: 0; border-radius: 0; background: #11131a; overflow-x: auto; }
.creator-shell-page .creator-shell-subnav a { padding: 16px 0; border: 0; border-radius: 0; background: transparent; font-size: 13px; text-transform: none; white-space: nowrap; }
.creator-shell-page .creator-shell-subnav a:first-child { border-bottom: 2px solid var(--accent); }
.creator-shell-page .creator-shell-panel { border-radius: 12px; background: #15171e; box-shadow: none; backdrop-filter: none; }
.creator-shell-page .creator-shell-panel.creator-collections-card { background: transparent; border: 0; padding: 8px 0 0; }
.creator-shell-page .creator-collections-grid { grid-template-columns: repeat(auto-fill,minmax(min(100%,270px),1fr)); gap: 20px; }
.creator-shell-page .library-v3-card { display: flex; flex-direction: column; height: auto; border-radius: 12px; background: #15171e; border-color: #30313b; }
.creator-shell-page .library-v3-card-media { width: 100%; height: auto; min-height: 0; aspect-ratio: 16 / 10; flex: 0 0 auto; }
.creator-shell-page .library-v3-card-image { width: 100%; height: 100%; object-fit: cover; }
.creator-shell-page .library-v3-card-body { flex: 1 0 auto; padding: 18px; }
.creator-shell-page .library-v3-card-title { font-size: 17px; line-height: 1.3; }
.creator-shell-page .library-v3-card-description { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.5; }

/* Guest conversion is a real sign-in form, separate from every room access form. */
.header-guest-access { display: flex; align-items: center; gap: 10px; }
.header-guest-access > .btn, .header-login-widget > summary { font-size: 12px; padding: 10px 14px; white-space: nowrap; }
.header-login-widget { position: relative; }
.header-login-widget > summary { list-style: none; cursor: pointer; }
.header-login-widget > summary::-webkit-details-marker { display: none; }
.header-login-panel { position: absolute; top: calc(100% + 14px); right: 0; width: 352px; max-width: calc(100vw - 32px); max-height: calc(100dvh - 160px); overflow-y: auto; overscroll-behavior: contain; padding: 24px; border: 1px solid #49404f; border-radius: 14px; background: #191922; box-shadow: 0 22px 60px #0008; z-index: 100; }
.guest-access-widget { min-width: 0; text-align: left; }
.guest-access-heading { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 20px; }
.guest-access-mark { width: 36px; height: 36px; display: grid; place-items: center; flex-shrink: 0; background: #37213d; border-radius: 10px; color: #ff78ba; }
.guest-access-widget .guest-access-heading h2 { margin: 0 0 7px; font-size: 19px; line-height: 1.25; color: #fff; letter-spacing: -.025em; }
.guest-access-widget .guest-access-heading p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.guest-access-register, .guest-access-form > .btn { display: flex; justify-content: center; align-items: center; gap: 10px; width: 100%; }
.guest-access-divider { display: flex; align-items: center; gap: 12px; margin: 20px 0; color: #b7b3c0; font-size: 11px; }
.guest-access-divider::before, .guest-access-divider::after { content: ''; flex: 1; height: 1px; background: #3c3543; }
.guest-access-form { display: grid; gap: 14px; }
.guest-access-form .form-group { margin: 0; display: grid; }
.guest-access-form .form-group label { font-size: 12px; }
.guest-access-form .form-group input { width: 100%; }
.guest-access-form .ui-password-toggle { font-size: 11px; padding-inline: 10px; }
.guest-access-widget p.guest-access-room-note { font-size: 11px; line-height: 1.65; color: #b8afbf; margin: 18px 0 0; }
.home-private-chatroom-dialog.member-private-room-dialog { box-sizing: border-box; width: min(460px,calc(100vw - 24px)); max-width: calc(100vw - 24px); max-height: calc(100dvh - 24px); margin: auto; border-radius: 18px; background: #191922; box-shadow: 0 28px 80px #000b; }
.home-private-chatroom-dialog-shell { position: relative; padding: 30px; }
.home-private-chatroom-dialog .member-private-room-dialog-close { position: absolute; top: 16px; right: 16px; z-index: 1; }
.home-private-chatroom-dialog .guest-access-heading { padding-right: 44px; }
.private-room-access-shell.private-room-access-shell--with-account { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,360px); align-items: center; gap: 48px; width: 100%; max-width: 980px; margin-inline: auto; }
.private-room-access-shell--with-account .private-room-access-card { width: 100%; max-width: none; background: #16161f; box-shadow: none; border-radius: 16px; padding: 30px; }
.private-room-access-shell--with-account:not(:has(.private-room-join)) { grid-template-columns: minmax(0,1fr); max-width: 560px; }
.private-room-join { padding: 28px; border: 1px solid #3b2e45; border-radius: 16px; background: #1c1725; }
.wall-v7-account-card:has(.guest-access-widget) { padding: 18px; }

@media (min-width: 1120px) {
    .workspace-rail::details-content { display: block; }
}
@media (max-width: 1119px) {
    .workspace-layout { width: calc(100% - 40px); grid-template-columns: minmax(0,1fr); gap: 24px; margin-top: 18px; }
    .workspace-rail { position: relative; top: auto; padding: 0; border: 1px solid #37323f; border-radius: 10px; background: #17151f; max-height: none; overflow: visible; }
    .workspace-rail > summary { display: flex; align-items: center; gap: 10px; padding: 12px 16px; list-style: none; cursor: pointer; font-size: 13px; }
    .workspace-rail > summary::-webkit-details-marker { display: none; }
    .workspace-rail-chevron { margin-left: auto; }
    .workspace-navigation { padding: 12px; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
    .workspace-nav-discover { grid-column: 1 / -1; }
    .creator-shell-page .creator-shell-top { padding-inline: 20px; }
    .creator-storefront-layout { grid-template-columns: minmax(0,1fr) 230px; gap: 20px; }
    .creator-shell-page .creator-shell-metric-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .creator-shell-page .creator-shell-identity-card { grid-template-columns: 88px minmax(0,1fr); gap: 16px; }
    .creator-shell-page .creator-shell-avatar-shell { width: 88px; height: 88px; }
}
@media (max-width: 760px) {
    .member-dashboard-grid { grid-template-columns: minmax(0,1fr); gap: 28px; }
    .member-balance { grid-row: 2; }
    .member-page-heading { align-items: flex-start; flex-direction: column; gap: 18px; margin-bottom: 28px; }
    .member-page-heading h1 { font-size: 27px; }
    .member-section-heading { flex-wrap: wrap; gap: 8px; }
    .workspace-content .mycontent-v3-page .market-v3-filter-form { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .workspace-content .analytics-v3-metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .creator-shell-page .creator-shell-banner { height: 150px; }
    .creator-shell-page .creator-shell-top { grid-template-columns: minmax(0,1fr); gap: 0; padding: 0 20px 20px; }
    .creator-storefront-layout { grid-template-columns: minmax(0,1fr); gap: 24px; }
    .creator-storefront-layout > .creator-shell-command-card { grid-column: 1; grid-row: 1; position: static; }
    .creator-storefront-layout > .creator-collections-card { grid-column: 1; grid-row: 2; }
    .creator-shell-page .creator-shell-identity-card { grid-template-columns: 80px minmax(0,1fr); }
    .creator-shell-page .creator-shell-avatar-shell { width: 80px; height: 80px; margin-top: -58px; }
    .creator-shell-page .creator-shell-command-card { border: 0; padding: 20px 0 0; }
    .creator-shell-page .creator-shell-quick-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .creator-shell-page .creator-shell-copy { display: contents; }
    .creator-shell-page .creator-shell-copy > * { grid-column: 1 / -1; }
    .creator-shell-page .creator-shell-copy > .creator-shell-title-row { grid-column: 2; }
    .creator-shell-page .creator-shell-title { font-size: 27px; }
    .creator-shell-page .creator-shell-title-row { align-self: start; }
    .creator-shell-page .creator-shell-cta { order: initial; }
    .creator-shell-page .creator-shell-rating-overview { order: initial; }
    .creator-shell-page .creator-shell-subnav { padding-inline: 20px; }
    .profile-shell-page .profile-shell-identity-card { grid-template-columns: 76px minmax(0,1fr); gap: 14px; padding: 18px; }
    .profile-shell-page .profile-shell-avatar-shell { width: 76px; height: 76px; margin-top: -48px; }
    .profile-shell-page .profile-shell-copy { display: contents; }
    .profile-shell-page .profile-shell-copy > * { grid-column: 1 / -1; }
    .profile-shell-page .profile-shell-copy > .profile-shell-title-row { grid-column: 2; }
    .profile-shell-page .profile-shell-title-row h1 { font-size: 25px; }
    .profile-shell-page .profile-shell-command-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 0; }
    .profile-shell-page .profile-shell-subnav { padding-inline: 10px; gap: 0; }
    .profile-shell-page .profile-shell-subnav a { padding-inline: 10px; font-size: 12px; }
    .profile-shell-page .profile-shell-link-grid { grid-template-columns: minmax(0,1fr); }
    .private-room-access-shell.private-room-access-shell--with-account { grid-template-columns: minmax(0,1fr); gap: 24px; max-width: 480px; }
    .private-room-access-shell--with-account .private-room-access-card { padding: 24px; }
    .private-room-join { padding: 24px; }
    .header-guest-access { gap: 6px; }
    .header-login-widget { position: static; }
    .header-login-panel { right: 10px; top: calc(100% + 6px); width: min(352px,calc(100vw - 32px)); }
    .header-guest-access > .btn, .header-login-widget > summary { padding-inline: 10px; font-size: 11px; }
}
@media (max-width: 440px) {
    .workspace-layout { width: calc(100% - 28px); }
    .workspace-navigation { grid-template-columns: minmax(0,1fr); }
    .workspace-content .mycontent-v3-page .market-v3-filter-form { grid-template-columns: minmax(0,1fr); }
    .member-activity-row { gap: 10px; grid-template-columns: 36px minmax(0,1fr) auto 16px; }
    .member-activity-icon { width: 36px; height: 36px; }
    .member-section-heading > span { display: none; }
    .member-studio-metrics a { padding-inline: 12px; }
    .profile-shell-page .profile-shell-feature-grid { grid-template-columns: minmax(0,1fr); }
    .profile-shell-page .profile-shell-primary-actions { flex-wrap: wrap; }
    .creator-shell-page .creator-shell-primary-actions > .btn { flex: 1 1 100%; }
    .header-guest-access .header-register-link { max-width: 120px; white-space: normal; }
    .home-private-chatroom-dialog.member-private-room-dialog { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); }
    .home-private-chatroom-dialog-shell { padding: 25px 18px 22px; }
    .home-private-chatroom-dialog .member-private-room-dialog-close { top: 12px; right: 12px; }
}
/* Creator verification keeps the complete submission in one focused dialog. */
.private-room-page:not(.private-room-page--gate) {
  display: flex; flex-direction: column; box-sizing: border-box;
  height: var(--private-room-height, 100dvh); min-height: 0;
  padding-bottom: max(12px, env(safe-area-inset-bottom)) !important;
}
.private-room-page .member-private-room-live-head { flex-shrink: 0; }
.private-room-page .wall-v7-layout { flex: 1; min-height: 0; height: 100%; grid-template-rows: minmax(0, 1fr); }
.private-room-page .wall-v7-main, .private-room-page #wallCommunityChat { height: 100%; min-height: 0; }
.private-room-page #wallCommunityChat .wall-v8-room-shell { height: 100%; max-height: 100%; min-height: 0; }
.private-room-page .wall-v7-sidebar { display: flex; flex-direction: column; height: 100%; max-height: 100%; min-height: 0; overflow-y: auto; }
.private-room-page .wall-v7-sidebar > * { flex-shrink: 0; }
.private-room-page .wall-v7-online-card { flex: 1 0 110px; }
@media (max-width: 1120px) {
  .private-room-page .wall-v7-layout { grid-template-rows: minmax(0, 1fr) auto; }
  .private-room-page .wall-v7-sidebar { height: auto; max-height: min(22dvh, 170px); }
}
.verification-panel [data-verification-focus]:focus { outline: none; }
.verification-modal-open { overflow: hidden; }
.verification-dialog {
  width: min(680px, calc(100% - 32px)); max-width: none; max-height: calc(100dvh - 40px);
  padding: 0; margin: auto; color: var(--text); background: #15171e;
  border: 1px solid #393b48; border-radius: 20px; box-shadow: 0 24px 90px #0009;
}
.verification-dialog[open] { display: flex; flex-direction: column; }
.verification-dialog::backdrop { background: #06070cc9; backdrop-filter: blur(5px); }
.verification-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 26px; border-bottom: 1px solid var(--border); }
.verification-dialog-header h2 { margin: 0; font: 600 17px/1.4 var(--font-body, sans-serif); }
.verification-dialog-header button { display: grid; place-items: center; width: 40px; height: 40px; padding: 0; flex-shrink: 0; font-size: 26px; line-height: 1; border: 1px solid var(--border); border-radius: 12px; background: #ffffff08; color: var(--text); cursor: pointer; }
.verification-dialog-body { overflow-y: auto; overscroll-behavior: contain; min-height: 0; padding: 26px; }
.verification-panel { max-width: 640px; margin: 0 auto; }
.verification-panel-intro { margin-bottom: 24px; }
.verification-panel h3 { font-size: 26px; letter-spacing: -.7px; line-height: 1.2; margin: 12px 0 10px; }
.verification-panel p { line-height: 1.55; }
.verification-panel-intro p, .verification-help, .verification-private-note, .verification-actions p, .verification-next-step p { color: var(--text-muted, #b8b9c5); margin: 8px 0 0; }
.verification-status { display: inline-block; border: 1px solid #7b61ff66; background: #7b61ff18; border-radius: 8px; color: #ddd5ff; padding: 5px 9px; font-size: 12px; font-weight: 600; }
.verification-form { display: grid; gap: 24px; }
.verification-form fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.verification-form legend { padding: 0; margin-bottom: 14px; color: var(--text); font-size: 15px; font-weight: 650; }
.verification-form legend > span { display: inline-grid; place-items: center; width: 26px; height: 26px; border: 1px solid #4a405e; color: #ddd5ff; background: #7b61ff14; border-radius: 8px; margin-right: 7px; font-size: 12px; }
.verification-form .form-group { margin: 0; min-width: 0; }
.verification-form .form-group label { display: block; margin-bottom: 7px; font-size: 13px; font-weight: 500; }
.verification-form input:not([type=checkbox]) { width: 100%; min-width: 0; box-sizing: border-box; font-size: 16px; }
.verification-field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 16px; }
.verification-help { font-size: 13px; margin: 0 0 12px; }
.verification-upload { display: grid; gap: 10px; padding: 16px; border: 1px dashed #545064; border-radius: 12px; background: #ffffff03; }
.verification-upload > span { font-size: 13px; font-weight: 600; }
.verification-upload input[type=file] { padding: 0; border: 0; background: transparent; font-size: 13px; border-radius: 0; }
.verification-upload input::file-selector-button { background: #272934; color: #f4f3f6; border: 1px solid #454654; border-radius: 8px; min-height: 38px; margin-right: 12px; padding: 7px 12px; cursor: pointer; }
.verification-upload small, .verification-private-note { font-size: 12px; color: #b8b9c5; }
.verification-declaration { display: flex; align-items: flex-start; gap: 12px; padding: 14px; background: #ffffff04; border-radius: 12px; cursor: pointer; }
.verification-declaration input[type=checkbox] { appearance: auto; width: 19px; height: 19px; flex-shrink: 0; margin: 3px 0 0; accent-color: #7b61ff; }
.verification-declaration span { font-size: 13px; line-height: 1.6; }
.verification-actions { display: flex; align-items: center; gap: 22px; border-top: 1px solid var(--border); padding-top: 20px; }
.verification-actions p { flex: 1; font-size: 12px; margin: 0; }
.verification-actions .btn { flex-shrink: 0; }
.verification-notice, .verification-next-step { background: #7b61ff0d; border-left: 2px solid #7b61ff; padding: 16px; margin: 16px 0; border-radius: 0 10px 10px 0; }
.verification-notice p { margin: 6px 0 0; }
.verification-panel [hidden], .verification-page [hidden], .verification-dialog [hidden] { display: none !important; }
.verification-panel .form-errors { margin: 0 0 22px; }
.verification-dialog-fallback { padding: 0 26px 20px; }
.verification-overview { display: grid; grid-template-columns: 1.2fr 1fr; gap: 40px; padding: 28px 0; }
.verification-overview h1 { font-size: clamp(28px, 3vw, 38px); letter-spacing: -1px; }
.verification-overview p { color: #b8b9c5; line-height: 1.6; }
.verification-overview-status { border-left: 1px solid var(--border); padding-left: 30px; }
.verification-eyebrow { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; }
@media (max-width: 600px) {
  .verification-dialog { width: calc(100% - 16px); max-height: calc(100dvh - 16px); border-radius: 16px; }
  .verification-dialog-header { padding: 12px 16px; }
  .verification-dialog-body { padding: 20px 16px; }
  .verification-panel h3 { font-size: 24px; }
  .verification-field-grid { grid-template-columns: 1fr; }
  .verification-actions { flex-direction: column; align-items: stretch; gap: 14px; }
  .verification-overview { grid-template-columns: 1fr; gap: 20px; }
  .verification-overview-status { padding: 0; border: 0; }
}

/* Private-chatroom promotion: original banner ratio in the Wall header, card ratio in rooms. */
.private-chatroom-promo {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  flex: 0 1 400px;
  width: min(100%, 400px);
  min-width: 180px;
  max-width: 400px;
  aspect-ratio: 8 / 1;
  height: auto;
  min-height: 0;
  max-height: 50px;
  padding: 4px 7px 4px 11px;
  overflow: hidden;
  border: 1px solid rgb(255 79 163 / 42%);
  border-radius: 11px;
  background: linear-gradient(100deg, #160e18 0%, #130f18 58%, #2c0f24 100%);
  color: #fff;
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 3%);
  text-decoration: none;
  transition: border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease;
}
.private-chatroom-promo::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, #120d16 0%, #120d16 50%, rgb(18 13 22 / 78%) 68%, transparent 100%);
}
.private-chatroom-promo:hover {
  color: #fff;
  border-color: rgb(255 112 180 / 78%);
  background: linear-gradient(100deg, #211020 0%, #18101c 58%, #3b102e 100%);
  box-shadow: 0 0 0 2px rgb(255 79 163 / 10%);
}
.private-chatroom-promo:focus-visible { outline-offset: 2px; }
.private-chatroom-promo-copy {
  position: relative;
  z-index: 2;
  display: grid;
  min-width: 0;
  line-height: 1;
}
.private-chatroom-promo-kicker {
  overflow: hidden;
  color: #ff58ad;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: .01em;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.private-chatroom-promo-copy strong {
  overflow: visible;
  margin-top: 2px;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  text-overflow: clip;
  white-space: nowrap;
}
.private-chatroom-promo--header .private-chatroom-promo-copy strong {
  text-shadow: 0 1px 2px #000;
}
html[lang="de"] .private-chatroom-promo--header .private-chatroom-promo-copy strong {
  font-size: 10px;
  letter-spacing: -.025em;
}
.private-chatroom-promo-cta {
  position: relative;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 26px;
  margin-left: 8px;
  margin-right: 84px;
  padding: 3px 8px;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff3ea5 0%, #9a63ff 100%);
  color: #08090d;
  font-size: 7.5px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}
.private-chatroom-promo-art {
  position: absolute;
  z-index: 0;
  inset: 0 0 0 auto;
  width: auto;
  height: 100%;
  max-width: none;
  object-fit: contain;
  pointer-events: none;
}

body.public-wall-page header.site-header.xs-header .xs-header-bar {
  height: 60px;
  min-height: 60px;
  max-height: 60px;
}
body.public-wall-page header.site-header.xs-header .xs-header-brand-cluster { width: 100%; }
body.public-wall-page header.site-header.xs-header .private-chatroom-promo { margin-left: 10px; }

.member-private-room-live-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  height: 52px;
  min-height: 52px;
  max-height: 52px;
}
.member-private-room-live-identity { min-width: 0; }
.member-private-room-live-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
}
.member-private-room-live-wall,
.member-private-room-live-home,
.member-private-room-live-manage { white-space: nowrap; }
.member-private-room-live-wall-short { display: none; }
.private-chatroom-promo--sidebar {
  grid-template-columns: minmax(0, 1fr);
  align-content: center;
  flex: 0 0 auto;
  width: 100%;
  min-width: 0;
  max-width: none;
  aspect-ratio: 2 / 1;
  height: auto;
  min-height: 88px;
  max-height: 112px;
  padding: 10px 10px 10px 13px;
  border-radius: 14px;
}
.private-chatroom-promo--sidebar::before {
  background: linear-gradient(90deg, #120d16 0%, #120d16 32%, rgb(18 13 22 / 76%) 55%, rgb(18 13 22 / 8%) 82%, transparent 100%);
}
.private-chatroom-promo--sidebar .private-chatroom-promo-copy {
  max-width: 78%;
  line-height: 1.05;
}
.private-chatroom-promo--sidebar .private-chatroom-promo-kicker {
  font-size: 9px;
}
.private-chatroom-promo--sidebar .private-chatroom-promo-copy strong {
  margin-top: 2px;
  overflow: visible;
  font-size: 13px;
  line-height: 1.08;
  text-overflow: clip;
  white-space: normal;
}
.private-chatroom-promo--sidebar .private-chatroom-promo-cta {
  justify-self: start;
  min-height: 23px;
  margin: 6px 0 0;
  padding-inline: 9px;
}
.private-chatroom-promo--sidebar .private-chatroom-promo-art {
  height: 100%;
  filter: brightness(1.35) saturate(1.08) contrast(1.02);
}
.member-private-room-live-manage-icon { display: none; }

.member-private-room-wall-publish-form {
  display: flex;
  align-items: center;
  min-width: 0;
}
.wall-private-publication-remove-form {
  display: flex;
  align-items: center;
  min-width: 0;
}
.wall-upload-extend-form {
  display: flex;
  align-items: center;
  min-width: 0;
}
.member-private-room-wall-publish-form[hidden],
.member-private-room-wall-publish-button[hidden],
.member-private-room-wall-view-button[hidden],
.wall-private-publication-remove-form[hidden],
.wall-upload-extend-form[hidden] { display: none !important; }
.member-private-room-wall-publish-button,
.member-private-room-wall-view-button,
.wall-private-publication-remove-button {
  justify-content: center;
  min-width: 0;
  white-space: nowrap;
}
.wall-upload-extend-button {
  justify-content: center;
  min-width: 0;
  white-space: nowrap;
}

@media (min-width: 901px) {
  body.public-wall-page .wall-v7-layout { min-height: calc(100dvh - 78px); }
  body.public-wall-page .wall-v7-sidebar { top: 72px; }
}

@media (max-width: 1180px) {
  body.public-wall-page header.site-header.xs-header .xs-header-page-title {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
  }
  body.public-wall-page header.site-header.xs-header .private-chatroom-promo { margin-left: 0; }
}

@media (max-width: 760px) {
  .member-private-room-live-head {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px;
  }
  .member-private-room-live-head p { display: none; }
  .member-private-room-live-head h1 { max-width: none; font-size: .92rem; }
  .member-private-room-live-actions { gap: 6px; }
  .member-private-room-live-wall,
  .member-private-room-live-home,
  .member-private-room-live-manage { min-height: 34px; padding-inline: 8px; font-size: 10px; }
}

@media (max-width: 980px) {
  .private-chatroom-promo--header .private-chatroom-promo-cta { display: none; }
}

@media (max-width: 1120px) {
  .private-chatroom-promo--sidebar {
    aspect-ratio: 4 / 1;
    min-height: 78px;
    max-height: 92px;
  }
  .private-chatroom-promo--sidebar .private-chatroom-promo-copy { max-width: 62%; }
  .private-chatroom-promo--sidebar .private-chatroom-promo-copy strong { font-size: 13px; }
}

@media (max-width: 640px) {
  body.public-wall-page header.site-header.xs-header .xs-header-bar {
    height: 62.4px;
    min-height: 62.4px;
    max-height: 62.4px;
  }
  body.public-wall-page header.site-header.xs-header .xs-header-wall-cta,
  body.public-wall-page header.site-header.xs-header .header-register-link { display: none; }
  body.public-wall-page header.site-header.xs-header .private-chatroom-promo {
    flex-basis: 182px;
    width: min(100%, 182px);
    min-width: 118px;
    max-width: 182px;
    aspect-ratio: 3.5 / 1;
    max-height: 52px;
  }
  body.public-wall-page header.site-header.xs-header .xs-mobile-menu {
    top: 68px;
    max-height: calc(100dvh - 76px);
  }
  .private-chatroom-promo--header::before {
    background: linear-gradient(90deg, #120d16 0%, #120d16 38%, rgb(18 13 22 / 84%) 70%, transparent 100%);
  }
  .private-chatroom-promo--header .private-chatroom-promo-copy { padding-right: 28px; }
  .private-chatroom-promo--header .private-chatroom-promo-kicker { font-size: 8px; }
  .private-chatroom-promo--header .private-chatroom-promo-copy strong { font-size: 10px; }
}

@media (max-width: 420px) {
  .member-private-room-live-head {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 4px;
  }
  .member-private-room-live-head h1 { font-size: .78rem; }
  .member-private-room-live-actions { gap: 4px; }
  .member-private-room-live-wall {
    min-width: 46px;
    padding-inline: 7px;
  }
  .member-private-room-live-home {
    min-width: 42px;
    padding-inline: 6px;
  }
  .member-private-room-live-wall-label { display: none; }
  .member-private-room-live-wall-short { display: inline; }
  .member-private-room-live-manage {
    display: inline-grid;
    place-items: center;
    width: 36px;
    min-width: 36px;
    padding: 0;
  }
  .member-private-room-live-manage-label { display: none; }
  .member-private-room-live-manage-icon { display: inline; font-size: 17px; line-height: 1; }
  .private-chatroom-promo--header .private-chatroom-promo-copy { padding-right: 18px; }
  .private-chatroom-promo--header .private-chatroom-promo-kicker { font-size: 7px; }
  .private-chatroom-promo--header .private-chatroom-promo-copy strong { font-size: 9px; }
}

@media (max-width: 640px) {
  .member-private-room-page .wall-v11-modal-stats-row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .member-private-room-page .wall-v11-modal-like-form,
  .member-private-room-page .member-private-room-wall-publish-form { width: 100%; }
  .member-private-room-page .member-private-room-wall-publish-button,
  .member-private-room-page .member-private-room-wall-view-button {
    width: 100%;
    min-height: 42px;
    padding-inline: 8px;
    font-size: 10px;
    line-height: 1.15;
    white-space: normal;
  }
  .member-private-room-page .wall-v11-modal-view-count { grid-column: 1 / -1; }
  .public-wall-page .wall-private-publication-remove-form,
  .public-wall-page .wall-private-publication-remove-button,
  .public-wall-page .wall-upload-extend-form,
  .public-wall-page .wall-upload-extend-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .private-chatroom-promo { transition: none; }
}

/* Approved Batch 3 public discovery surfaces; no shared component overrides. */
.discovery-page { padding-top: 28px; padding-bottom: 40px; }
.discovery-page :is(h1,h2,p) { margin-top: 0; }
.discovery-page h1 { font-size: clamp(28px,3.2vw,40px); line-height: 1.16; letter-spacing: -.035em; margin-bottom: 14px; }
.discovery-page h2 { font-size: 24px; line-height: 1.25; margin-bottom: 10px; }
.discovery-page a:not(.btn) { color: #e0c5ff; text-decoration: underline; text-underline-offset: 3px; }
.discovery-page h2 a:not(.btn) { color: var(--text); text-decoration: none; }
.discovery-page p { line-height: 1.55; }
.discovery-lead { color: var(--muted); font-size: 17px; max-width: 820px; }
.discovery-kicker { font-size: 12px; text-transform: uppercase; letter-spacing: .12em; color: var(--muted); margin-bottom: 16px; }
.discovery-home-panel { padding: 32px; background: #191b23; border: 1px solid #30323d; border-radius: 20px; }
.discovery-home-hero { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 40px; align-items: start; }
.discovery-home-hero--solo { grid-template-columns: 1fr; }
.discovery-home-copy { max-width: 570px; }
.discovery-home-copy h1 { font-size: clamp(30px,3.4vw,44px); }
.discovery-home-actions { display: grid; gap: 16px; margin-top: 24px; }
.discovery-home-actions > .btn { min-height: 48px; }
.discovery-helper { color: var(--muted); font-size: 13px; text-align: center; margin: -8px 0 4px; }
.discovery-home-links { display: flex; flex-wrap: wrap; gap: 8px 24px; align-items: center; }
.discovery-home-links a { display: inline-flex; align-items: center; min-height: 44px; }
.discovery-home-feature { min-width: 0; border: 1px solid #383a46; border-radius: 16px; padding: 16px; }
.discovery-home-feature .discovery-card { border: 0; background: transparent; }
.discovery-home-feature .discovery-card-body { padding: 20px 0 0; }
.discovery-home-feature .discovery-media img { max-height: 255px; border-radius: 10px; }
.discovery-home-feature .btn { background: transparent; color: var(--text); border: 1px solid #676977; }
.discovery-home-guides { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; padding-top: 28px; margin-top: 28px; border-top: 1px solid #383a46; }
.discovery-home-guides h2 { font-size: 21px; }
.discovery-home-guides p { color: var(--muted); margin-bottom: 8px; }
.discovery-home-guides a { display: inline-flex; align-items: center; min-height: 44px; }
.discovery-intro { margin-bottom: 28px; }
.discovery-library-link { display: inline-flex; align-items: center; min-height: 44px; }
.discovery-filters { display: grid; grid-template-columns: minmax(0,2fr) minmax(160px,1fr) auto; align-items: end; gap: 16px; margin: 0 0 28px; }
.discovery-filters--categories { grid-template-columns: minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) auto; }
.discovery-filters .form-group { min-width: 0; margin: 0; }
.discovery-filters label { display: block; margin-bottom: 8px; font-size: 14px; }
.discovery-filters :is(input,select) { box-sizing: border-box; width: 100%; min-width: 0; min-height: 44px; font-size: 16px; }
.discovery-filters > .btn { min-height: 44px; padding-inline: 28px; }
.discovery-clear { margin-top: -12px; }
.discovery-clear a { display: inline-flex; align-items: center; min-height: 44px; }
.discovery-results-count { color: var(--muted); font-size: 14px; margin-bottom: 16px; }
.discovery-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(min(100%,300px),1fr)); gap: 24px; }
.discovery-grid--single { grid-template-columns: 1fr; }
.discovery-card { min-width: 0; border: 1px solid #383a46; border-radius: 16px; overflow: hidden; background: #191b23; display: flex; flex-direction: column; }
.discovery-media { display: block; min-width: 0; background: #20222c; }
.discovery-media img { display: block; width: 100%; aspect-ratio: 16/10; object-fit: contain; }
.discovery-creator .discovery-media img { aspect-ratio: 4/3; object-position: center; }
.discovery-card-body { padding: 24px; min-width: 0; display: flex; flex: 1; flex-direction: column; align-items: flex-start; }
.discovery-card h2 { overflow-wrap: anywhere; }
.discovery-byline { color: var(--muted); margin-bottom: 10px; }
.discovery-meta { color: var(--muted); font-size: 14px; margin-bottom: 8px; }
.discovery-price { font-size: 21px; font-weight: 700; font-variant-numeric: tabular-nums; margin-bottom: 12px; }
.discovery-description { color: var(--muted); overflow-wrap: anywhere; margin-bottom: 20px; }
.discovery-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.discovery-card-body > .discovery-actions { margin-top: auto; }
.discovery-actions .btn { min-height: 44px; text-align: center; white-space: normal; }
.discovery-message-link { display: inline-flex; align-items: center; min-height: 44px; }
.discovery-disabled { color: var(--muted); }
.discovery-grid--single .discovery-card { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1fr); }
.discovery-grid--single .discovery-media img { height: 100%; max-height: 360px; min-height: 260px; }
.discovery-empty { padding: 32px; background: #191b23; border: 1px solid #383a46; border-radius: 16px; }
.discovery-empty p { color: var(--muted); }
.discovery-more { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 24px; border-top: 1px solid #383a46; margin-top: 28px; padding-top: 20px; }
.discovery-more p { margin-bottom: 0; }
.discovery-more a { display: inline-flex; align-items: center; min-height: 44px; }
.discovery-pagination { display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; margin-top: 28px; }
.discovery-pagination [aria-current="page"] { border-color: #ffb4d8; color: #ffb4d8; }
@media (max-width: 900px) {
    .discovery-home-hero { grid-template-columns: 1fr; gap: 24px; }
    .discovery-home-copy { max-width: none; }
    .discovery-home-feature .discovery-media img { max-height: 320px; }
    .discovery-filters { grid-template-columns: minmax(0,1fr) auto; }
    .discovery-filters .discovery-search { grid-column: 1/-1; }
    .discovery-filters--categories { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
    .discovery-filters--categories > .btn { grid-column: 1/-1; }
}
@media (max-width: 640px) {
    .discovery-page { padding-top: 20px; padding-bottom: 28px; }
    .discovery-page h1 { font-size: 30px; }
    .discovery-home-panel { padding: 20px 16px; }
    .discovery-lead { font-size: 16px; }
    .discovery-home-links { gap: 4px 16px; }
    .discovery-home-guides { grid-template-columns: 1fr; gap: 24px; }
    .discovery-home-feature { padding: 12px; }
    .discovery-card-body { padding: 20px; }
    .discovery-home-feature .discovery-card-body { padding: 16px 0 0; }
    .discovery-grid--single .discovery-card { display: flex; }
    .discovery-grid--single .discovery-media img { height: auto; min-height: 0; max-height: 260px; }
    .discovery-actions { width: 100%; }
    .discovery-actions .btn { width: 100%; }
    .discovery-empty { padding: 24px 18px; }
    .discovery-more { justify-content: flex-start; }
}
@media (max-width: 480px) {
    .discovery-filters { grid-template-columns: minmax(0,1fr); }
    .discovery-filters > .btn { grid-column: 1/-1; }
}

/* Batch 4: collection purchase, top-up, result and Library only. */
.commerce-page { padding-top: 32px; padding-bottom: 48px; }
.commerce-page h1 { font-size: clamp(1.65rem, 3vw, 2.35rem); line-height: 1.15; overflow-wrap: anywhere; }
.commerce-page h2 { font-size: 1.3rem; line-height: 1.3; }
.commerce-page h2 a, .commerce-context-identity { color: var(--text, #f6f6fa); text-decoration: none; }
.commerce-heading { margin-bottom: 28px; }
.commerce-heading > p { max-width: 72ch; color: var(--muted, #b6bac9); line-height: 1.6; }
.commerce-panel, .commerce-review { background: #191c25; border: 1px solid #353844; border-radius: 16px; padding: 28px; }
.commerce-summary { margin: 22px 0; }
.commerce-summary > div { display: flex; justify-content: space-between; gap: 24px; border-bottom: 1px solid #353844; padding: 13px 0; }
.commerce-summary dt { color: #bfc2cf; }
.commerce-summary dd { margin: 0; font-weight: 650; text-align: right; overflow-wrap: anywhere; }
.commerce-page .btn, .commerce-review .btn { min-height: 44px; white-space: normal; text-align: center; line-height: 1.4; }
.commerce-access { display: inline-block; padding: 7px 10px; border-radius: 6px; background: #242831; color: #e3e4ec; font-size: .88rem; line-height: 1.5; }
.commerce-access.is-temporary { background: #3b301d; color: #ffe0a4; }
.commerce-helper { font-size: .88rem; line-height: 1.65; color: #bfc2cf; }
.commerce-notice { padding: 14px 18px; background: #242831; border-left: 3px solid #c572f4; border-radius: 6px; margin: 18px 0; line-height: 1.6; }
.commerce-notice p { margin: 4px 0; }
.commerce-links { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 22px 0; }
.commerce-links a, .commerce-help { display: inline-flex; min-height: 44px; align-items: center; }
.commerce-page.content-page .content-v3-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 32px; }
.commerce-page.content-page .content-v3-heading, .commerce-page.content-page .content-v3-info-panel { min-width: 0; }
.commerce-page.content-page .content-v3-preview-image { max-height: 560px; object-fit: contain; }
.commerce-page.content-page .content-v3-meta-row { margin-bottom: 16px; }
.commerce-page.content-page .content-v3-price-row { margin: 20px 0; }
.commerce-page.content-page .content-price { margin-bottom: 3px; }
.commerce-page.content-page .content-v3-actions { display: flex; flex-wrap: wrap; gap: 18px; margin-bottom: 0; }
.commerce-page.content-page .token-action-unavailable {
    width: 100%; min-width: 0; padding: 18px; border-left: 3px solid var(--accent);
    border-radius: 0 12px 12px 0; background: #211b26;
}
.commerce-page.content-page .token-action-unavailable p { margin: 0; line-height: 1.6; }
.commerce-page.content-page .token-action-unavailable p + p { margin-top: 6px; }
.commerce-page.content-page .token-action-unavailable strong { color: var(--text); }
.commerce-page.content-page .token-action-unavailable .btn { width: 100%; margin-top: 16px; min-height: 44px; }
.commerce-page.content-page .collection-social-actions {
    display: flex; flex-wrap: wrap; gap: 12px; width: 100%; min-width: 0;
}
.commerce-page.content-page .collection-social-actions:empty { display: none; }
.commerce-page.content-page .collection-social-actions > * { flex: 1 1 140px; min-width: 0; margin: 0; }
.commerce-page.content-page .collection-social-actions .btn { width: 100%; min-height: 44px; white-space: normal; text-align: center; }
.commerce-page.content-page .collection-resource-links {
    display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; width: 100%;
    padding-top: 14px; border-top: 1px solid var(--line);
}
.commerce-page.content-page .collection-resource-links a {
    display: inline-flex; align-items: center; min-height: 44px; font-size: 13px;
    line-height: 1.5; text-underline-offset: 3px;
}
.commerce-page.content-page .collection-report-link { margin-left: auto; color: var(--muted); }
.commerce-page.content-page .collection-resource-links a:hover { text-decoration: underline; }
.commerce-page.content-page .content-v3-actions > .commerce-helper { width: 100%; margin: 0; }
.commerce-review[open] { color: #f6f6fa; width: min(500px, calc(100% - 32px)); box-sizing: border-box; max-height: calc(100dvh - 40px); overflow: auto; }
.commerce-review[open]:not(:modal) { position: relative; margin: 24px auto; }
.commerce-review::backdrop { background: rgb(5 7 12 / 80%); }
.commerce-review h2 { font-size: 1.4rem; margin-top: 0; }
.commerce-review form .btn { width: 100%; }
.commerce-cancel { display: flex; min-height: 44px; justify-content: center; align-items: center; margin-top: 12px; }
.commerce-topup-layout { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.commerce-topup-form { grid-column: 1; grid-row: 1; }
.commerce-context { grid-column: 2; grid-row: 1; }
.commerce-context-identity { display: flex; gap: 18px; align-items: center; }
.commerce-context-identity img { width: 100px; height: 120px; object-fit: contain; border-radius: 8px; background: #11141c; }
.commerce-context-identity > span { min-width: 0; overflow-wrap: anywhere; }
.commerce-context-identity strong { font-size: 1.1rem; }
.commerce-context-identity span span { display: block; margin-top: 10px; color: #bfc2cf; }
.commerce-topup label { display: block; font-weight: 650; margin-bottom: 10px; }
.commerce-topup input[type=number] { width: 100%; min-height: 52px; box-sizing: border-box; padding: 12px 14px; font-size: 1.15rem; color: #f6f6fa; background: #11141c; border: 1px solid #555968; border-radius: 9px; }
.commerce-amounts { display: flex; flex-wrap: wrap; gap: 10px; margin: 16px 0; align-items: start; }
.commerce-amounts [aria-pressed=true] { outline: 2px solid #d788ff; outline-offset: 2px; }
.commerce-amounts details { flex: 1 1 140px; }
.commerce-amounts summary, .commerce-library-actions summary { min-height: 44px; display: flex; align-items: center; justify-content: center; cursor: pointer; border: 1px solid #555968; border-radius: 9px; padding: 9px 13px; box-sizing: border-box; }
.commerce-primary { width: 100%; }
.commerce-nojs { display: none; }
.commerce-receipt { max-width: 650px; margin: 0 auto; }
.commerce-receipt h1 { margin-top: 12px; }
.commerce-result[data-payment-state=paid] .commerce-receipt { border-top: 3px solid #78cba5; }
.commerce-result[data-payment-state=pending] .commerce-receipt { border-top: 3px solid #e1bd70; }
.commerce-library-list { display: grid; gap: 18px; }
.commerce-library-item { display: grid; grid-template-columns: minmax(120px, .7fr) minmax(0, 1.5fr) minmax(180px, .8fr); gap: 24px; padding: 22px; border: 1px solid #353844; border-radius: 16px; background: #191c25; align-items: start; }
.commerce-library-media img { width: 100%; height: 220px; object-fit: contain; border-radius: 8px; background: #11141c; }
.commerce-library-body { min-width: 0; overflow-wrap: anywhere; }
.commerce-library-body h2 { margin-top: 0; }
.commerce-library-body p { line-height: 1.5; margin: 8px 0; }
.commerce-library-actions { display: grid; gap: 12px; min-width: 0; }
.commerce-library-actions details { font-size: .88rem; line-height: 1.6; }
.commerce-library-actions details p { padding: 8px 0; }
.commerce-page :focus-visible, .commerce-review :focus-visible { outline: 2px solid #e6b7ff; outline-offset: 4px; }
@media (max-width: 1000px) {
    .commerce-library-item { grid-template-columns: 140px minmax(0, 1fr); }
    .commerce-library-actions { grid-column: 2; }
    .commerce-topup-layout { grid-template-columns: 1fr; }
    .commerce-context, .commerce-topup-form { grid-column: 1; grid-row: auto; }
}
@media (max-width: 800px) {
    .commerce-page.content-page .content-v3-layout { grid-template-columns: 1fr; }
    .commerce-page.content-page .content-v3-preview-image { max-height: 340px; }
    .commerce-page.content-page .content-v3-media-panel { order: 1; }
    .commerce-page.content-page .content-v3-info-panel { order: 2; }
    .commerce-page.content-page .content-v3-info-panel > * { order: 0; }
    .commerce-page.content-page .content-v3-teaser-strip { display: flex; overflow-x: auto; gap: 10px; }
    .commerce-page.content-page .content-v3-teaser-item { flex: 0 0 76px; }
}
@media (max-width: 520px) {
    .commerce-page { padding-top: 22px; padding-bottom: 32px; }
    .commerce-panel, .commerce-review { padding: 20px 16px; }
    .commerce-summary > div { gap: 14px; }
    .commerce-summary dt { max-width: 62%; }
    .commerce-page.content-page .content-v3-actions > .btn { width: 100%; }
    .commerce-library-item { grid-template-columns: minmax(0, 1fr); gap: 14px; padding: 16px; }
    .commerce-library-actions { grid-column: 1; }
    .commerce-library-media img { height: 180px; }
    .commerce-context-identity img { width: 75px; height: 90px; }
    .commerce-links { flex-direction: column; gap: 4px; }
}
