/* Colors point at autofliper-dark's shared --af-* tokens (Sloj 1,
   2026-09-20) — see afc-frontend.css's :root block for the full
   rationale. --afc-red here is a distinct semantic error red (not the
   brand accent) — maps to --af-danger. */
#afc-feature-widget {
    --afc-accent: var(--af-accent) !important;
    --afc-accent-hover: color-mix(in srgb, var(--af-accent) 82%, black) !important;
    --afc-bg: var(--af-surface-2) !important;
    --afc-white: var(--af-surface) !important;
    --afc-ink: var(--af-ink) !important;
    --afc-ink2: var(--af-ink-2) !important;
    --afc-line: var(--af-line) !important;
    --afc-red: var(--af-danger) !important;
    --afc-red-bg: color-mix(in srgb, var(--af-danger) 12%, var(--af-surface)) !important;
    --afc-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important;
    --afc-font: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    --afc-display: 'Sora', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-family: var(--afc-font) !important;
    display: block !important;
    margin: 12px 0 !important;
}
#afc-feature-widget * { box-sizing: border-box !important; }
#afc-feature-widget svg { display: block !important; width: 17px !important; height: 17px !important; flex-shrink: 0 !important; }
@media (prefers-reduced-motion: reduce) {
    #afc-feature-widget * { animation: none !important; transition: none !important; }
}

.afc-btn {
    display: flex !important; align-items: center !important; justify-content: center !important;
    gap: 8px !important; width: 100% !important; min-height: 48px !important;
    padding: 13px 22px !important; border: none !important; border-radius: 14px !important;
    font-size: 15px !important; font-weight: 700 !important; font-family: var(--afc-display) !important;
    cursor: pointer !important; transition: background .15s ease, transform .12s cubic-bezier(.34,1.56,.64,1), opacity .12s ease !important;
    -webkit-tap-highlight-color: transparent !important;
}
@media (min-width: 601px) { .afc-btn { width: auto !important; } }
.afc-btn-primary { background: var(--afc-accent) !important; color: var(--af-accent-ink) !important; }
.afc-btn-primary:hover:not(:disabled) { background: var(--afc-accent-hover) !important; }
.afc-btn-primary:active:not(:disabled) { transform: scale(.97) !important; opacity: .88 !important; }
.afc-btn-primary:disabled { opacity: .55 !important; cursor: not-allowed !important; }

#afc-feature-modal {
    /* display is deliberately NOT !important — afc-feature.js toggles it
       inline (style.display = 'none'/'flex') to open/close the modal, and
       an !important rule here would permanently beat that inline style in
       both directions: the modal would render open on page load (ignoring
       the "display:none" markup starts with) and clicking close/backdrop
       would never be able to hide it again. Confirmed live — this was
       exactly why Sergio couldn't dismiss the modal at all. */
    position: fixed !important; inset: 0 !important; z-index: 999996 !important;
    align-items: center !important; justify-content: center !important;
    padding: 20px !important;
}
.afc-modal-backdrop { position: absolute !important; inset: 0 !important; background: rgba(0,0,0,.5) !important; backdrop-filter: blur(6px) !important; }
.afc-modal-card {
    position: relative !important; background: var(--afc-white) !important; border-radius: 22px !important;
    padding: 26px 22px !important; max-width: 380px !important; width: 100% !important;
    box-shadow: 0 30px 80px rgba(0,0,0,.25) !important; z-index: 1 !important;
    max-height: 88vh !important; overflow-y: auto !important;
}
.afc-modal-x {
    position: absolute !important; top: 16px !important; right: 16px !important;
    width: 30px !important; height: 30px !important; border-radius: 50% !important;
    background: var(--afc-bg) !important; border: none !important; color: var(--afc-ink2) !important;
    display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important;
}
.afc-feature-h3 { font-family: var(--afc-display) !important; font-size: 19px !important; font-weight: 700 !important; color: var(--afc-ink) !important; margin: 0 0 6px !important; padding-right: 30px !important; }
.afc-feature-balance { font-size: 13.5px !important; color: var(--afc-ink2) !important; margin: 0 0 20px !important; }
.afc-feature-balance strong { font-family: var(--afc-mono) !important; color: var(--afc-ink) !important; }

.afc-feature-field { margin-bottom: 16px !important; }
.afc-feature-field label {
    display: block !important; font-family: var(--afc-display) !important; font-size: 11px !important; font-weight: 700 !important;
    text-transform: uppercase !important; letter-spacing: .07em !important; color: var(--afc-ink2) !important;
    margin-bottom: 8px !important;
}
.afc-feature-options { display: flex !important; gap: 8px !important; flex-wrap: wrap !important; }
.afc-chip {
    flex: 1 1 auto !important; min-width: 80px !important; padding: 11px 12px !important;
    border-radius: 12px !important; border: 1.5px solid var(--afc-line) !important; background: var(--afc-white) !important;
    color: var(--afc-ink) !important; font-size: 13.5px !important; font-weight: 600 !important; font-family: var(--afc-font) !important;
    cursor: pointer !important; text-align: center !important;
    transition: border-color .15s ease, background .15s ease, transform .12s cubic-bezier(.34,1.56,.64,1) !important;
}
.afc-chip:active { transform: scale(.96) !important; }
.afc-chip-active { border-color: var(--afc-accent) !important; background: color-mix(in srgb, var(--afc-accent) 8%, transparent) !important; color: var(--afc-accent) !important; }

.afc-feature-summary { background: var(--afc-bg) !important; border-radius: 14px !important; padding: 12px 14px !important; margin-bottom: 14px !important; }
.afc-feature-summary-row { display: flex !important; justify-content: space-between !important; font-size: 13.5px !important; color: var(--afc-ink2) !important; padding: 3px 0 !important; }
.afc-feature-summary-row strong { font-family: var(--afc-mono) !important; color: var(--afc-ink) !important; }

.afc-feature-autorenew {
    display: flex !important; align-items: flex-start !important; gap: 10px !important; cursor: pointer !important;
    padding: 12px 14px !important; background: var(--afc-bg) !important; border-radius: 14px !important; margin-bottom: 16px !important;
}
.afc-feature-autorenew input { flex: 0 0 auto !important; width: 18px !important; height: 18px !important; margin: 1px 0 0 !important; accent-color: var(--afc-accent) !important; cursor: pointer !important; }
.afc-feature-autorenew span { font-size: 12.5px !important; line-height: 1.45 !important; color: var(--afc-ink2) !important; }

.afc-feature-error {
    background: var(--afc-red-bg) !important; color: var(--afc-red) !important; font-size: 12.5px !important;
    padding: 10px 12px !important; border-radius: 10px !important; margin: 0 0 14px !important;
}

/* ─── "waiting on payment" notice (AFC_Listing_Limit) — sits BEFORE the
   listing content, own token set for the same sibling-element reason as the
   views badge below. Same glossy-card family, but red/accent-tinted (not
   graphite) since this is an action-needed moment, not a neutral readout —
   added 2026-09-17 after a real client saw only Motors' bare "Disabled"
   status on a listing blocked by the free-listing limit, with no
   explanation of why or what to do about it. ─── */
.afc-blocked-notice {
    --afc-accent: var(--af-accent); --afc-accent-hover: color-mix(in srgb, var(--af-accent) 82%, black); --afc-ink: var(--af-ink); --afc-ink2: var(--af-ink-2);
    --afc-red-bg: color-mix(in srgb, var(--af-danger) 12%, var(--af-surface)); --afc-line: var(--af-line);
    --afc-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    --afc-font: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --afc-display: 'Sora', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    display: flex !important; align-items: center !important; gap: 14px !important; flex-wrap: wrap !important;
    font-family: var(--afc-font) !important;
    background: linear-gradient(180deg, var(--af-surface), color-mix(in srgb, var(--af-danger) 3%, var(--af-surface))) !important;
    border: 1px solid color-mix(in srgb, var(--afc-accent) 18%, var(--afc-line)) !important; border-radius: 16px !important;
    padding: 16px !important; margin: 0 0 20px !important; box-sizing: border-box !important;
    box-shadow: 0 1px 2px rgba(20,16,18,.05), 0 8px 20px color-mix(in srgb, var(--afc-accent) 8%, transparent) !important;
}
.afc-blocked-icon {
    position: relative !important; overflow: hidden !important; flex: 0 0 auto !important;
    width: 38px !important; height: 38px !important; border-radius: 11px !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    background: linear-gradient(155deg, #d64444, var(--afc-accent) 70%) !important; color: var(--af-accent-ink) !important;
    box-shadow: 0 2px 6px color-mix(in srgb, var(--afc-accent) 40%, transparent) !important, inset 0 1px 0 rgba(255,255,255,.3) !important, inset 0 0 0 1px rgba(255,255,255,.08) !important;
}
.afc-blocked-icon::after {
    content: "" !important; position: absolute !important; inset: 0 !important; pointer-events: none !important;
    background: linear-gradient(135deg, rgba(255,255,255,.4), transparent 55%) !important;
}
.afc-blocked-icon svg { position: relative !important; z-index: 1 !important; display: block !important; width: 19px !important; height: 19px !important; }
.afc-blocked-body { flex: 1 1 180px !important; min-width: 0 !important; }
.afc-blocked-title { font-family: var(--afc-display) !important; font-weight: 700 !important; font-size: 14px !important; color: var(--afc-ink) !important; margin-bottom: 3px !important; }
.afc-blocked-sub { font-size: 12.5px !important; line-height: 1.45 !important; color: var(--afc-ink2) !important; }
.afc-blocked-btn {
    flex: 0 0 auto !important; display: flex !important; align-items: center !important; justify-content: center !important;
    min-height: 44px !important; padding: 0 20px !important; border-radius: 12px !important;
    background: linear-gradient(155deg, #d64444, var(--afc-accent) 60%) !important; color: var(--af-accent-ink) !important;
    font-family: var(--afc-display) !important; font-size: 13px !important; font-weight: 700 !important;
    text-decoration: none !important; white-space: nowrap !important;
    box-shadow: 0 1px 2px rgba(0,0,0,.12), 0 3px 10px color-mix(in srgb, var(--afc-accent) 45%, transparent), 0 0 22px color-mix(in srgb, var(--afc-accent) 38%, transparent) !important;
    transition: background .2s ease, transform .12s cubic-bezier(.34,1.56,.64,1), box-shadow .25s ease !important;
}
.afc-blocked-btn:hover { background: linear-gradient(155deg, #e05252, var(--afc-accent-hover) 60%) !important; color: var(--af-accent-ink) !important; transform: translateY(-1px) !important; }
.afc-blocked-btn:active { transform: scale(.96) !important; }
@media (min-width: 601px) { .afc-blocked-btn { margin-left: auto !important; } }

/* ─── view-count badge — sits as a sibling of #afc-feature-widget, not a
   descendant, so it redeclares its own small token set rather than relying
   on CSS variables cascading down from that element. A real glossy "stat
   card": white card with a soft lift (same shadow language as the account
   page's .afc-sec cards), a dark glass icon chip with a diagonal shine
   layer + inset highlight (the same glossy-chip technique used on the
   balance card elsewhere in dizajnios), not a flat bordered box. ─── */
.afc-views-badge {
    --afc-ink: var(--af-ink) !important; --afc-ink2: var(--af-ink-2) !important; --afc-line: var(--af-line) !important;
    --afc-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important;
    --afc-font: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    --afc-display: 'Sora', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    display: flex !important; align-items: center !important; gap: 14px !important; flex-wrap: wrap !important;
    font-family: var(--afc-font) !important;
    background: linear-gradient(180deg, var(--af-surface), var(--af-surface-2)) !important;
    border: 1px solid var(--afc-line) !important; border-radius: 16px !important;
    padding: 14px 16px !important; margin: 22px 0 6px !important; box-sizing: border-box !important;
    box-shadow: 0 1px 2px rgba(20,16,18,.05), 0 8px 20px rgba(20,16,18,.06) !important;
}
.afc-views-icon {
    position: relative !important; overflow: hidden !important; flex: 0 0 auto !important;
    width: 38px !important; height: 38px !important; border-radius: 11px !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    background: linear-gradient(155deg, #5b5b64 0%, #2a2a30 70%) !important; color: #fff !important;
    box-shadow: 0 2px 6px rgba(20,20,24,.35) !important, inset 0 1px 0 rgba(255,255,255,.25) !important, inset 0 0 0 1px rgba(255,255,255,.06) !important;
}
.afc-views-icon::after {
    content: "" !important; position: absolute !important; inset: 0 !important; pointer-events: none !important;
    background: linear-gradient(135deg, rgba(255,255,255,.4), transparent 55%) !important;
}
.afc-views-icon svg { position: relative !important; z-index: 1 !important; display: block !important; width: 18px !important; height: 18px !important; }

.afc-views-stats { display: flex !important; align-items: center !important; gap: 16px !important; }
.afc-views-stat { display: flex !important; flex-direction: column !important; gap: 1px !important; }
.afc-views-stat strong {
    font-family: var(--afc-mono) !important; font-weight: 800 !important; font-size: 17px !important; line-height: 1.15 !important;
    color: var(--afc-ink) !important; font-variant-numeric: tabular-nums !important;
}
.afc-views-stat small {
    font-family: var(--afc-display) !important; font-size: 9.5px !important; font-weight: 600 !important;
    text-transform: uppercase !important; letter-spacing: .06em !important; color: var(--afc-ink2) !important;
}
.afc-views-divider { flex: 0 0 auto !important; width: 1px !important; height: 26px !important; background: var(--afc-line) !important; }
.afc-views-dot { color: var(--afc-line) !important; }
