/* ============================================================
   ELANLAR PLUGIN — Brand: White + #0067ed
   ============================================================ */
:root {
    --elan-bg:        #f0f4fa;
    --elan-surface:   #ffffff;
    --elan-surface2:  #f5f8ff;
    --elan-border:    #dde6f5;
    --elan-primary:   #0067ed;
    --elan-primary-h: #005bd4;
    --elan-primary-light: #e8f0fe;
    --elan-success:   #16a34a;
    --elan-warning:   #d97706;
    --elan-danger:    #dc2626;
    --elan-vip:       #b45309;
    --elan-text:      #111827;
    --elan-muted:     #6b7280;
    --elan-radius:    14px;
    --elan-radius-sm: 8px;
    --elan-shadow:    0 4px 24px rgba(0,103,237,.12);
    --elan-shadow-sm: 0 1px 6px rgba(0,0,0,.08);
}

/* Global Roboto 500 */
body, .elanlar-wrapper, .elan-dashboard, .elan-form-container,
.woocommerce-MyAccount-content, .waif-dashboard-card {
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-weight: 500;
}

.elanlar-wrapper * { box-sizing: border-box; }
.elanlar-wrapper {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    color: var(--elan-text);
    background: transparent;
    min-height: 50vh;
    padding: 28px 16px;
}
/* Vitrin wrapper transparent */
.elanlar-wrapper.elan-vitrin-wrapper {
    background: transparent;
    padding-top: 0;
    padding-bottom: 0;
}

/* WHITE + BLUE cards (override dark) */
.elan-dcard,
.elanlar-lp .edc:not(.is-promo),
#elanlar-lp .edc:not(.is-promo),
#elan-sp-root .edc:not(.is-promo) {
    background: #ffffff !important;
    border: 1.5px solid var(--elan-border) !important;
    border-radius: 14px !important;
    box-shadow: 0 2px 12px rgba(0,103,237,.08) !important;
    color: var(--elan-text) !important;
}
.elanlar-lp .edc.is-promo,
#elanlar-lp .edc.is-promo,
#elan-sp-root .edc.is-promo {
    position: relative !important;
    overflow: hidden !important;
    color: var(--elan-text) !important;
}
.elan-dcard:hover,
.elanlar-lp .edc:not(.is-promo):hover,
#elanlar-lp .edc:not(.is-promo):hover,
#elan-sp-root .edc:not(.is-promo):hover {
    border-color: var(--elan-primary) !important;
    box-shadow: 0 6px 24px rgba(0,103,237,.18) !important;
    transform: translateY(-4px);
}

/* Card ribbon stays colorful */
.elan-dcard__ribbon, .edc-rib { color: #fff !important; }

/* Card title and text on white background */
.elan-dcard__title, .edc-title {
    font-weight: 400;
    color: var(--elan-text) !important;
    font-weight: 700 !important;
}
.elan-dcard__price, .edc-price {
    font-weight: 700;
    color: var(--elan-primary) !important;
    font-weight: 900 !important;
}
.elan-dcard__seller-name, .edc-seller span {
    color: var(--elan-muted) !important;
}
.elan-dcard__img-placeholder, .edc-noimg {
    background: var(--elan-surface2) !important;
    color: var(--elan-primary) !important;
}
.elan-dcard__arrow, .edc-arr {
    background: var(--elan-primary-light) !important;
}
.elan-dcard:hover .elan-dcard__arrow,
.edc:hover .edc-arr {
    background: var(--elan-primary) !important;
}
.elan-dcard__arrow svg path, .elan-dcard__arrow svg line,
.elan-dcard__arrow svg polyline,
.edc-arr svg path, .edc-arr svg line, .edc-arr svg polyline {
    stroke: var(--elan-primary) !important;
}
.elan-dcard:hover .elan-dcard__arrow svg path,
.elan-dcard:hover .elan-dcard__arrow svg line,
.elan-dcard:hover .elan-dcard__arrow svg polyline,
.edc:hover .edc-arr svg path,
.edc:hover .edc-arr svg line,
.edc:hover .edc-arr svg polyline {
    stroke: #fff !important;
}

/* Vitrin wrapper overrides background to transparent so theme bg shows */
.elanlar-wrapper.elan-vitrin-wrapper {
    background: transparent;
    padding-top: 0;
    padding-bottom: 0;
}

/* ── NOTICES ── */
.elan-notice {
    display: flex; align-items: center; gap: 12px;
    padding: 14px 18px; border-radius: var(--elan-radius-sm);
    margin-bottom: 20px; font-size: 14px;
}
.elan-notice--warning { background: #fffbeb; border: 1px solid #fcd34d; color: #92400e; }
.elan-notice--success { background: #f0fdf4; border: 1px solid #86efac; color: #166534; }
.elan-notice--error   { background: #fef2f2; border: 1px solid #fca5a5; color: #991b1b; }
.elan-notice a { color: var(--elan-primary); font-weight: 600; }

/* ── SEARCH BAR ── */
.elanlar-search-bar {
    display: flex; gap: 10px;
    max-width: 640px; margin: 0 auto 32px;
}
.elanlar-search-bar input {
    flex: 1; background: var(--elan-surface);
    border: 2px solid var(--elan-border); color: var(--elan-text);
    padding: 13px 18px; border-radius: var(--elan-radius-sm);
    font-size: 14px; outline: none; transition: border-color .2s;
    box-shadow: var(--elan-shadow-sm);
}
.elanlar-search-bar input:focus { border-color: var(--elan-primary); }
.elanlar-search-bar button {
    background: var(--elan-primary); border: none;
    border-radius: var(--elan-radius-sm); color: #fff;
    padding: 13px 20px; cursor: pointer;
    display: flex; align-items: center;
    transition: background .2s; font-weight: 600;
}
.elanlar-search-bar button:hover { background: var(--elan-primary-h); }

/* ── LAYOUT ── */
.elanlar-layout { display: flex; gap: 24px; align-items: flex-start; }

/* ── SIDEBAR ── */
.elanlar-sidebar {
    width: 240px; flex-shrink: 0;
    background: var(--elan-surface);
    border: 1px solid var(--elan-border);
    border-radius: var(--elan-radius);
    box-shadow: var(--elan-shadow-sm);
    overflow: hidden;
}
.elanlar-sidebar__title {
    font-size: 11px; font-weight: 700; text-transform: uppercase;
    letter-spacing: .07em; color: var(--elan-muted);
    padding: 18px 16px 8px;
}
.elanlar-cat-list { list-style: none; margin: 0; padding: 0 8px 8px; }
.elanlar-cat-item {
    display: flex; align-items: center; gap: 10px;
    padding: 10px 12px; border-radius: var(--elan-radius-sm);
    color: var(--elan-text); text-decoration: none;
    font-size: 14px; font-weight: 500; transition: background .15s;
}
.elanlar-cat-item:hover { background: var(--elan-primary-light); color: var(--elan-primary); }
.elanlar-cat-item.active {
    background: var(--elan-primary); color: #fff;
    box-shadow: 0 2px 10px rgba(0,103,237,.3);
}
.elanlar-cat-icon { font-size: 18px; }
.elanlar-cat-count {
    margin-left: auto; background: rgba(0,0,0,.07);
    border-radius: 50px; padding: 1px 8px; font-size: 11px; font-weight: 600;
}
.elanlar-cat-item.active .elanlar-cat-count { background: rgba(255,255,255,.25); }

/* ── MAIN ── */
.elanlar-main { flex: 1; }

/* ── GRID ── */
.elanlar-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 14px;
}

/* ── CARD ── */
.elan-card {
    background: var(--elan-surface);
    border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius);
    overflow: hidden; position: relative;
    transition: transform .2s, box-shadow .2s;
    box-shadow: var(--elan-shadow-sm);
}
.elan-card:hover { transform: translateY(-4px); box-shadow: var(--elan-shadow); }

/* Promoted card styles */
.elan-card--vip {
    border-color: #f59e0b;
    box-shadow: 0 0 0 2px #f59e0b, 0 8px 30px rgba(245,158,11,.3);
    background: linear-gradient(180deg, #fffcf5 0%, #ffffff 100%);
}
.elan-card--vip::after {
    content: 'VIP';
    position: absolute; top: 10px; left: 10px;
    background: #f59e0b; color: #fff;
    font-size: 10px; font-weight: 900; padding: 2px 6px;
    border-radius: 4px; z-index: 10;
}

.elan-card--featured {
    border-color: var(--elan-primary);
    box-shadow: 0 0 0 2px var(--elan-primary), 0 8px 30px rgba(0,103,237,.2);
}
.elan-card--featured::after {
    content: 'ÖNE ÇIKAN';
    position: absolute; top: 10px; left: 10px;
    background: var(--elan-primary); color: #fff;
    font-size: 10px; font-weight: 900; padding: 2px 6px;
    border-radius: 4px; z-index: 10;
}

.elan-card--urgent {
    border-color: #ef4444;
    box-shadow: 0 0 0 2px #ef4444, 0 8px 30px rgba(239,68,68,.2);
}
.elan-card--urgent::after {
    content: 'TƏCİLİ';
    position: absolute; top: 10px; left: 10px;
    background: #ef4444; color: #fff;
    font-size: 10px; font-weight: 900; padding: 2px 6px;
    border-radius: 4px; z-index: 10;
}

/* Promo ribbon */
/* ── PROMO RIBBON base ── */
.elan-promo-ribbon {
    position: absolute; top: 0; left: 0; right: 0;
    padding: 5px 12px;
    font-size: 11px; font-weight: 800; letter-spacing: .04em;
    color: #fff; text-align: center;
    text-transform: uppercase;
    border-radius: 14px 14px 0 0;
}

/* ── RIBBON per-tier colors ── */
.elan-promo-ribbon--boost     { background: linear-gradient(90deg, #10b981, #059669); }
.elan-promo-ribbon--spotlight { background: linear-gradient(90deg, #8b5cf6, #ec4899); }
.elan-promo-ribbon--ultra     { background: linear-gradient(90deg, #ef4444, #f97316); }
.elan-promo-ribbon--elite     {
    background: linear-gradient(90deg, #f59e0b, #fde68a, #d97706);
    background-size: 200% 100%;
    animation: elan-ribbon-elite-shimmer 2s linear infinite;
    color: #7c2d12;
    text-shadow: 0 1px 0 rgba(255,255,255,.4);
}
@keyframes elan-ribbon-elite-shimmer {
    0%   { background-position: 0% 0%; }
    100% { background-position: 200% 0%; }
}

/* ══════════════════════════════════════════════════════
   LIST CARD TIER EFFECTS — каждый тир уникальный
   ══════════════════════════════════════════════════════ */

/* BOOST — зелёная левая полоса + мягкое дыхание */
.elan-card--boost {
    border-left: 4px solid #10b981 !important;
    box-shadow: 0 2px 14px rgba(16,185,129,.18);
    animation: elan-card-boost-breathe 3s ease-in-out infinite;
}
@keyframes elan-card-boost-breathe {
    0%,100% { box-shadow: 0 2px 14px rgba(16,185,129,.18); border-left-color: #10b981; }
    50%     { box-shadow: 0 4px 26px rgba(16,185,129,.38); border-left-color: #34d399; }
}

/* SPOTLIGHT — вращающееся радужное кольцо вокруг карточки */
.elan-card--spotlight {
    border: 2px solid transparent !important;
    position: relative;
    isolation: isolate;
    box-shadow: 0 4px 18px rgba(139,92,246,.18);
}
.elan-card--spotlight::before {
    content: '';
    position: absolute;
    inset: -3px;
    border-radius: 17px;
    background: conic-gradient(from 0deg, #8b5cf6, #ec4899, #f472b6, #c084fc, #8b5cf6);
    animation: elan-card-spotlight-spin 3s linear infinite;
    z-index: -1;
}
.elan-card--spotlight::after {
    content: '';
    position: absolute;
    inset: 1px;
    background: var(--elan-surface, #fff);
    border-radius: 14px;
    z-index: -1;
}
@keyframes elan-card-spotlight-spin {
    to { transform: rotate(360deg); }
}

/* ULTRA — пульсирующие сонарные кольца + красное свечение */
.elan-card--ultra {
    border: 2px solid rgba(239,68,68,.75) !important;
    animation: elan-card-ultra-sonar 1.8s ease-out infinite;
}
@keyframes elan-card-ultra-sonar {
    0%  { box-shadow: 0 0 0 0 rgba(239,68,68,.5),  0 4px 18px rgba(239,68,68,.25); }
    70% { box-shadow: 0 0 0 10px rgba(239,68,68,0), 0 4px 18px rgba(239,68,68,.25); }
    100%{ box-shadow: 0 0 0 0 rgba(239,68,68,0),    0 4px 18px rgba(239,68,68,.25); }
}

/* ELITE — анимированная золотая фольга + мерцание */
.elan-card--elite {
    border: 2px solid transparent !important;
    position: relative;
    isolation: isolate;
    box-shadow: 0 6px 32px rgba(245,158,11,.38);
    animation: elan-card-elite-breathe 2.5s ease-in-out infinite;
}
.elan-card--elite::before {
    content: '';
    position: absolute;
    inset: -3px;
    border-radius: 17px;
    background: linear-gradient(135deg, #fbbf24, #f59e0b, #fde68a, #d97706, #fbbf24, #f59e0b);
    background-size: 300% 300%;
    animation: elan-card-elite-foil 2.5s ease-in-out infinite;
    z-index: -1;
}
.elan-card--elite::after {
    content: '';
    position: absolute;
    inset: 1px;
    background: var(--elan-surface, #fff);
    border-radius: 14px;
    z-index: -1;
}
@keyframes elan-card-elite-foil {
    0%,100% { background-position: 0% 0%; }
    50%     { background-position: 100% 100%; }
}
@keyframes elan-card-elite-breathe {
    0%,100% { box-shadow: 0 6px 32px rgba(245,158,11,.35); }
    50%     { box-shadow: 0 8px 46px rgba(245,158,11,.65), 0 0 18px rgba(245,158,11,.25); }
}

.elan-card__badges {
    position: absolute; top: 10px; right: 10px;
    display: flex; gap: 4px; flex-direction: column; align-items: flex-end;
}
.elan-card--promo .elan-card__badges { top: 36px; }

.badge {
    display: inline-flex; align-items: center; gap: 4px;
    font-size: 11px; font-weight: 600; padding: 3px 8px; border-radius: 50px;
}
.badge--auto   { background: var(--elan-primary-light); color: var(--elan-primary); border: 1px solid #93c5fd; }
.badge--manual { background: #fffbeb; color: #92400e; border: 1px solid #fcd34d; }

.elan-card__body {
    display: block; padding: 20px 16px 10px;
    text-decoration: none; color: var(--elan-text);
}
.elan-card--promo .elan-card__body { padding-top: 30px; }
.elan-card__title { font-size: 15px; font-weight: 700; margin: 0 0 6px; line-height: 1.4; }
.elan-card__cat {
    display: inline-block; font-size: 11px; font-weight: 600;
    color: var(--elan-primary); background: var(--elan-primary-light);
    border-radius: 4px; padding: 2px 8px; margin-bottom: 8px;
}
.elan-card__excerpt { font-size: 13px; color: var(--elan-muted); margin: 0; line-height: 1.5; }
.elan-card__footer {
    display: flex; align-items: center; justify-content: space-between;
    padding: 12px 16px; border-top: 1px solid var(--elan-border);
}
.elan-card__author { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--elan-muted); }
.elan-card__avatar { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; border: 2px solid var(--elan-border); }
.price-tag { font-size: 16px; font-weight: 800; color: var(--elan-primary); }
.elan-card__warranty { font-size: 11px; color: var(--elan-muted); padding: 6px 16px; border-top: 1px solid var(--elan-border); background: var(--elan-surface2); }

/* ── PAGINATION ── */
.elanlar-pagination { display: flex; justify-content: center; gap: 6px; margin-top: 36px; flex-wrap: wrap; }
.elanlar-pagination .page-numbers {
    display: inline-flex; align-items: center; justify-content: center;
    width: 38px; height: 38px; border-radius: var(--elan-radius-sm);
    background: var(--elan-surface); border: 1.5px solid var(--elan-border);
    color: var(--elan-text); text-decoration: none; font-size: 13px; font-weight: 600;
    transition: all .2s;
}
.elanlar-pagination .page-numbers.current,
.elanlar-pagination .page-numbers:hover { background: var(--elan-primary); border-color: var(--elan-primary); color: #fff; }

/* ── EMPTY STATE ── */
.elanlar-empty { text-align: center; padding: 60px 20px; color: var(--elan-muted); }
.elanlar-empty__icon { font-size: 56px; margin-bottom: 16px; }
.elanlar-empty h3 { font-size: 20px; color: var(--elan-text); margin: 0 0 8px; font-weight: 700; }

/* ============================================================
   ADD FORM — Full theme reset + premium design
   ============================================================ */

/* ── HARD RESET: kill all theme interference inside form ── */
.elan-form-container *,
.elan-form-container *::before,
.elan-form-container *::after {
    box-sizing: border-box !important;
}
.elan-form-container input:not([type=checkbox]):not([type=radio]):not([type=file]),
.elan-form-container select,
.elan-form-container textarea {
    all: unset !important;
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    font-family: 'Roboto', -apple-system, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: var(--elan-text) !important;
    background: #fff !important;
    border: 1.5px solid var(--elan-border) !important;
    border-radius: 10px !important;
    padding: 12px 16px !important;
    outline: none !important;
    transition: border-color .2s, box-shadow .2s !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    line-height: 1.5 !important;
    margin: 0 !important;
}
.elan-form-container input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,
.elan-form-container select:focus,
.elan-form-container textarea:focus {
    border-color: var(--elan-primary) !important;
    box-shadow: 0 0 0 3px rgba(0,103,237,.1) !important;
}
.elan-form-container select {
    cursor: pointer !important;
}
.elan-form-container button:not(.elan-btn):not(.elan-editor__toolbar button):not(.elan-btn-text) {
    cursor: pointer !important;
}
.elan-form-container label {
    all: unset !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: var(--elan-text) !important;
    margin-bottom: 8px !important;
    cursor: default !important;
    font-family: 'Roboto', -apple-system, sans-serif !important;
}
.elan-form-container p,
.elan-form-container h2,
.elan-form-container h4 {
    margin: 0 !important;
}
.elan-form-container ul {
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

/* ── CONTAINER ── */
.elan-form-container {
    max-width: 860px;
    margin: 0 auto;
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
}

/* ── STEP INDICATOR ── */
.elan-steps {
    display: flex;
    align-items: stretch;
    gap: 0;
    margin-bottom: 32px;
    background: #fff;
    border: 1.5px solid var(--elan-border);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,103,237,.07);
}
.elan-step-divider { display: none; }
.elan-step {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    border: none !important;
    border-right: 1.5px solid var(--elan-border) !important;
    border-radius: 0 !important;
    background: #fff;
    opacity: .45;
    transition: all .25s;
    box-shadow: none !important;
    cursor: default;
}
.elan-step:last-child { border-right: none !important; }
.elan-step.active {
    background: var(--elan-primary);
    opacity: 1;
    color: #fff;
}
.elan-step.done {
    opacity: .75;
    background: var(--elan-primary-light);
    color: var(--elan-primary);
}
.elan-step__icon {
    flex-shrink: 0;
    width: 38px; height: 38px;
    border-radius: 10px;
    background: rgba(255,255,255,.22);
    display: flex; align-items: center; justify-content: center;
}
.elan-step:not(.active) .elan-step__icon {
    background: var(--elan-primary-light);
    color: var(--elan-primary);
}
.elan-step.done .elan-step__icon {
    background: rgba(0,103,237,.15);
}
.elan-step__label { font-weight: 700; font-size: 13px; display: block; line-height: 1.2; }
.elan-step__sub   { font-size: 11px; opacity: .7; display: block; margin-top: 3px; }

/* ── FORM CARD ── */
.elan-form-step {
    background: #fff;
    border: 1.5px solid var(--elan-border);
    border-radius: 16px;
    padding: 28px 32px;
    box-shadow: 0 2px 20px rgba(0,103,237,.06);
    animation: efadeIn .2s ease;
}
@keyframes efadeIn { from { opacity:0; transform:translateY(6px); } to { opacity:1; transform:none; } }

/* ── SECTION TITLE ── */
.elan-form__section-title {
    font-size: 17px;
    font-weight: 800;
    color: var(--elan-text);
    margin: 0 0 20px !important;
    padding-bottom: 14px;
    border-bottom: 1.5px solid var(--elan-border);
    display: flex;
    align-items: center;
    gap: 8px;
}

/* ── FIELDS ── */
.elan-field { margin-bottom: 20px; }
.elan-field > label {
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    color: var(--elan-muted) !important;
    margin-bottom: 8px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}
.req { color: var(--elan-danger); }
.elan-char-count { margin-left: auto; font-size: 11px; font-weight: 400; color: var(--elan-muted); text-transform: none; letter-spacing: 0; }

.elan-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }

/* ── INPUT WRAPPERS ── */
.elan-input-icon {
    position: relative;
    display: flex;
    align-items: center;
}
.elan-input-icon > svg {
    position: absolute;
    left: 14px;
    color: var(--elan-muted);
    pointer-events: none;
    z-index: 2;
    flex-shrink: 0;
}
.elan-input-icon .elan-input,
.elan-input-icon input.elan-input { padding-left: 40px !important; }

.elan-select-wrap {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}
.elan-select-wrap > svg {
    position: absolute;
    left: 14px;
    color: var(--elan-muted);
    pointer-events: none;
    z-index: 2;
    flex-shrink: 0;
}
.elan-select-wrap select,
.elan-select-wrap .elan-select,
.elan-select-wrap .elan-input { padding-left: 40px !important; width: 100%; }
.elan-select-wrap::after {
    content: '';
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 0; height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid var(--elan-muted);
    pointer-events: none;
}

/* ── CATEGORY SEARCH ── */
.elan-search-wrap {
    position: relative;
    margin-bottom: 16px;
}
.elan-search-wrap > svg {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--elan-muted);
    pointer-events: none;
    z-index: 1;
}
.elan-search-wrap input,
.elan-search-wrap .elan-input,
#elan-cat-search {
    padding-left: 42px !important;
    padding-right: 16px !important;
}

/* ── CATEGORY GRID WRAP ── */
.elan-cat-grid-wrap {
    position: relative;
    border: 1.5px solid #dde6f5;
    border-radius: 12px;
    background: #f8faff;
    padding: 8px;
}
.elan-cat-grid-wrap::after {
    content: '';
    position: absolute;
    bottom: 8px;
    left: 8px;
    right: 8px;
    height: 36px;
    background: linear-gradient(to bottom, transparent, #f8faff);
    border-radius: 0 0 8px 8px;
    pointer-events: none;
    z-index: 1;
}

/* ── CATEGORY GRID ── */
.elan-cat-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    max-height: 330px;
    overflow-y: auto;
    padding: 4px 2px 24px;
    scrollbar-width: thin;
    scrollbar-color: #c7d2e7 transparent;
}
.elan-cat-grid::-webkit-scrollbar { width: 5px; }
.elan-cat-grid::-webkit-scrollbar-track { background: #f3f4f6; border-radius: 4px; }
.elan-cat-grid::-webkit-scrollbar-thumb { background: #c7d2e7; border-radius: 4px; }
.elan-cat-grid::-webkit-scrollbar-thumb:hover { background: #0067ed; }

.elan-cat-option {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    min-height: 60px;
    background: #fff;
    border: 1.5px solid var(--elan-border) !important;
    border-radius: 12px !important;
    cursor: pointer;
    transition: all .18s;
    user-select: none;
}
.elan-cat-option:hover {
    border-color: var(--elan-primary) !important;
    background: var(--elan-primary-light);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0,103,237,.12);
}
.elan-cat-option.selected {
    border-color: var(--elan-primary) !important;
    background: var(--elan-primary-light);
    box-shadow: 0 0 0 3px rgba(0,103,237,.15), 0 2px 10px rgba(0,103,237,.1);
}
.elan-cat-option__icon {
    font-size: 22px;
    flex-shrink: 0;
    width: 36px; height: 36px;
    background: var(--elan-primary-light);
    border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
}
.elan-cat-option__icon img { width: 100%; height: 100%; object-fit: cover; border-radius: 8px; }
.elan-cat-option__name { font-size: 12px; font-weight: 600; flex: 1; min-width: 0; word-break: break-word; line-height: 1.3; }
.elan-cat-option__count {
    font-size: 11px;
    font-weight: 700;
    color: var(--elan-muted);
    background: var(--elan-border);
    padding: 2px 7px;
    border-radius: 20px;
    flex-shrink: 0;
}
.elan-cat-option.selected .elan-cat-option__count {
    background: rgba(0,103,237,.15);
    color: var(--elan-primary);
}
.elan-cat-option__arrow {
    flex-shrink: 0;
    color: #9ca3af;
    transition: color .15s;
}
.elan-cat-option.has-children:hover .elan-cat-option__arrow,
.elan-cat-option.has-children.selected .elan-cat-option__arrow {
    color: var(--elan-primary);
}

/* ── RADIO CARDS (delivery) ── */
.elan-radio-group { display: flex; gap: 12px; }
.elan-radio-card { cursor: pointer; flex: 1; }
.elan-radio-card input[type=radio] {
    display: none !important;
    width: auto !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}
.elan-radio-card__inner {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    background: #fff;
    border: 2px solid var(--elan-border) !important;
    border-radius: 12px !important;
    transition: all .18s;
    cursor: pointer;
    user-select: none;
}
.elan-radio-card:hover .elan-radio-card__inner {
    border-color: var(--elan-primary) !important;
    background: var(--elan-primary-light);
}
.elan-radio-card input:checked + .elan-radio-card__inner {
    border-color: var(--elan-primary) !important;
    background: var(--elan-primary-light);
    box-shadow: 0 0 0 3px rgba(0,103,237,.12);
}
.elan-radio-card__icon {
    width: 38px; height: 38px;
    background: var(--elan-primary-light);
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    color: var(--elan-primary);
    flex-shrink: 0;
}
.elan-radio-card input:checked + .elan-radio-card__inner .elan-radio-card__icon {
    background: var(--elan-primary);
    color: #fff;
}
.elan-radio-card__label { font-weight: 600; font-size: 13px; line-height: 1.3; }

/* ── RICH TEXT EDITOR ── */
.elan-editor {
    border: 1.5px solid var(--elan-border) !important;
    border-radius: 12px !important;
    overflow: hidden;
    transition: border-color .2s, box-shadow .2s;
    background: #fff;
}
.elan-editor:focus-within {
    border-color: var(--elan-primary) !important;
    box-shadow: 0 0 0 3px rgba(0,103,237,.1);
}
.elan-editor__toolbar {
    display: flex;
    gap: 4px;
    padding: 10px 12px;
    background: #f8faff;
    border-bottom: 1px solid var(--elan-border);
}
.elan-editor__toolbar button {
    all: unset !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important; height: 32px !important;
    border-radius: 7px !important;
    border: 1px solid var(--elan-border) !important;
    background: #fff !important;
    color: var(--elan-text) !important;
    font-size: 13px !important;
    cursor: pointer !important;
    transition: all .15s !important;
    font-family: inherit !important;
}
.elan-editor__toolbar button:hover {
    background: var(--elan-primary) !important;
    border-color: var(--elan-primary) !important;
    color: #fff !important;
}
.elan-editor__content {
    min-height: 160px;
    padding: 14px 16px;
    background: #fff;
    color: var(--elan-text);
    font-size: 14px;
    outline: none;
    line-height: 1.7;
    font-family: 'Roboto', -apple-system, sans-serif;
}
.elan-editor__content[data-placeholder]:empty::before {
    content: attr(data-placeholder);
    color: var(--elan-muted);
    pointer-events: none;
}

/* ── CATEGORY BAR (step 2 top) ── */
.elan-selected-cat-bar {
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--elan-primary-light);
    border: 1.5px solid rgba(0,103,237,.2) !important;
    border-radius: 10px !important;
    padding: 11px 16px;
    margin-bottom: 22px;
    font-size: 13px;
}
.elan-selected-cat-bar strong { color: var(--elan-primary); font-weight: 700; }
.elan-btn-text {
    all: unset !important;
    margin-left: auto;
    color: var(--elan-primary);
    cursor: pointer;
    font-size: 12px;
    font-weight: 700;
    display: flex !important;
    align-items: center;
    gap: 4px;
    opacity: .75;
    transition: opacity .15s;
}
.elan-btn-text:hover { opacity: 1; }

/* ── SUMMARY CARD ── */
.elan-summary-card {
    background: #f8faff;
    border: 1.5px solid var(--elan-border) !important;
    border-radius: 14px !important;
    padding: 20px 22px;
    margin-bottom: 20px;
}
.elan-summary-card h4 {
    margin: 0 0 14px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .07em !important;
    color: var(--elan-muted) !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}
.elan-summary-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid var(--elan-border);
    font-size: 13px;
}
.elan-summary-row:last-child { border-bottom: none; padding-bottom: 0; }
.elan-summary-row span { color: var(--elan-muted); font-weight: 500; }
.elan-summary-row strong { color: var(--elan-text); font-weight: 700; }

/* ── TERMS BOX ── */
.elan-terms-box {
    background: #fffbeb;
    border: 1.5px solid #fde68a !important;
    border-radius: 12px !important;
    padding: 16px 20px;
    margin-bottom: 20px;
    font-size: 13px;
    display: flex;
    gap: 14px;
    align-items: flex-start;
}
.elan-terms-box__icon {
    width: 36px; height: 36px;
    background: #fef3c7;
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    color: #92400e;
    flex-shrink: 0;
}
.elan-terms-box__content { flex: 1; }
.elan-terms-box__content p { color: #92400e; font-weight: 600; margin-bottom: 8px !important; }
.elan-terms-box li {
    padding: 4px 0;
    color: #78350f;
    display: flex;
    align-items: flex-start;
    gap: 7px;
    font-size: 12px;
}
.elan-terms-box li svg { flex-shrink: 0; margin-top: 2px; color: #d97706; }
.elan-terms-box a { color: var(--elan-primary); font-weight: 700; }

/* ── CHECKBOX ── */
.elan-checkbox-label {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    cursor: pointer !important;
    font-size: 14px !important;
    margin-bottom: 24px !important;
    font-weight: 500 !important;
    padding: 14px 18px;
    background: #f0fdf4;
    border: 1.5px solid #bbf7d0;
    border-radius: 12px;
    transition: background .15s;
}
.elan-checkbox-label:hover { background: #dcfce7; }
.elan-checkbox-label input[type=checkbox] {
    display: none !important;
}
.elan-checkbox-custom {
    width: 22px !important; height: 22px !important;
    border-radius: 6px !important;
    border: 2px solid var(--elan-border) !important;
    background: #fff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    transition: all .15s !important;
}
.elan-checkbox-label input:checked ~ .elan-checkbox-custom {
    background: var(--elan-success) !important;
    border-color: var(--elan-success) !important;
}

/* ── BUTTONS ── */
.elan-btn {
    all: unset !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 12px 24px !important;
    border-radius: 50px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    text-decoration: none !important;
    transition: all .2s !important;
    letter-spacing: .01em !important;
    white-space: nowrap !important;
    font-family: 'Roboto', -apple-system, sans-serif !important;
    line-height: 1 !important;
}
.elan-btn--primary {
    background: var(--elan-primary) !important;
    color: #fff !important;
    box-shadow: 0 4px 16px rgba(0,103,237,.3) !important;
}
.elan-btn--primary:hover {
    background: var(--elan-primary-h) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 20px rgba(0,103,237,.38) !important;
}
.elan-btn--success {
    background: var(--elan-success) !important;
    color: #fff !important;
    box-shadow: 0 4px 16px rgba(22,163,74,.28) !important;
}
.elan-btn--success:hover {
    background: #15803d !important;
    transform: translateY(-1px) !important;
}
.elan-btn--ghost {
    background: #fff !important;
    color: var(--elan-text) !important;
    border: 1.5px solid var(--elan-border) !important;
}
.elan-btn--ghost:hover {
    border-color: var(--elan-primary) !important;
    color: var(--elan-primary) !important;
}
.elan-btn--promote {
    background: linear-gradient(135deg,#0067ed,#0ea5e9) !important;
    color: #fff !important;
    padding: 7px 16px !important;
    font-size: 12px !important;
    border-radius: 50px !important;
}
.elan-btn--promote:hover { opacity: .9 !important; }
.elan-btn:disabled { opacity: .45 !important; cursor: not-allowed !important; transform: none !important; }

/* ── FORM NAV ── */
.elan-form-nav {
    display: flex;
    justify-content: flex-end;
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid var(--elan-border);
    gap: 12px;
}
.elan-form-nav--spaced { justify-content: space-between; }

/* ── NOTICE ── */
.elan-notice {
    display: flex; align-items: flex-start; gap: 10px;
    padding: 14px 18px; border-radius: 12px;
    margin-bottom: 20px; font-size: 14px; line-height: 1.5;
}
.elan-notice span { flex-shrink: 0; display: flex; }
.elan-notice p { margin: 0; }
.elan-notice--success { background: #f0fdf4; border: 1.5px solid #86efac; color: #166534; }
.elan-notice--error   { background: #fef2f2; border: 1.5px solid #fca5a5; color: #991b1b; }
.elan-notice--warning { background: #fffbeb; border: 1.5px solid #fcd34d; color: #92400e; }

/* ── EMPTY MSG ── */
.elan-empty-msg { color: var(--elan-muted); font-size: 13px; padding: 20px 0; text-align: center; }

/* ── LOADING SPINNER ── */
.elan-loading { display: inline-block; width: 14px; height: 14px; border: 2px solid rgba(255,255,255,.4); border-top-color: currentColor; border-radius: 50%; animation: spin .6s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* ── MOBILE ── */
@media(max-width:640px) {
    .elan-form-step { padding: 20px 18px; border-radius: 14px; }
    .elan-steps { border-radius: 12px; }
    .elan-step { padding: 12px 14px; gap: 8px; }
    .elan-step__label { font-size: 12px; }
    .elan-step__sub { display: none; }
    .elan-field-row { grid-template-columns: 1fr; }
    .elan-radio-group { flex-direction: column; gap: 8px; }
    .elan-cat-grid { grid-template-columns: 1fr 1fr; max-height: 210px; }
    .elan-form-nav { flex-wrap: wrap; }
    .elan-btn { justify-content: center; }
}
@media(max-width:400px) {
    .elan-steps { flex-direction: column; border-radius: 12px; }
    .elan-step { border-right: none !important; border-bottom: 1.5px solid var(--elan-border) !important; }
    .elan-step:last-child { border-bottom: none !important; }
}

/* ============================================================
   DASHBOARD
   ============================================================ */
.elan-dashboard { max-width: 1040px; margin: 0 auto; }

.elan-dashboard__header {
    display: flex; align-items: center; justify-content: space-between;
    background: var(--elan-surface); border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius); padding: 22px 26px; margin-bottom: 20px;
    box-shadow: var(--elan-shadow-sm);
}
.elan-dashboard__user { display: flex; align-items: center; gap: 16px; }
.elan-dashboard__avatar { border-radius: 50%; object-fit: cover; border: 3px solid var(--elan-primary); }
.elan-dashboard__user h2 { margin: 0 0 4px; font-size: 18px; font-weight: 800; }
.elan-dashboard__user span { font-size: 13px; color: var(--elan-muted); }

.elan-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-bottom: 24px; }
.elan-stat-card {
    display: flex; align-items: center; gap: 16px;
    background: var(--elan-surface); border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius); padding: 18px 22px; box-shadow: var(--elan-shadow-sm);
}
.elan-stat-card__icon { font-size: 28px; }
.elan-stat-card__num   { font-size: 28px; font-weight: 900; display: block; color: var(--elan-primary); }
.elan-stat-card__label { font-size: 12px; color: var(--elan-muted); display: block; font-weight: 600; }

.elan-tabs { display: flex; gap: 4px; border-bottom: 2px solid var(--elan-border); margin-bottom: 20px; }
.elan-tab {
    padding: 10px 22px; border-radius: var(--elan-radius-sm) var(--elan-radius-sm) 0 0;
    font-size: 13px; font-weight: 700; color: var(--elan-muted); text-decoration: none;
    transition: all .2s; border-bottom: 3px solid transparent; margin-bottom: -2px;
}
.elan-tab:hover { color: var(--elan-text); }
.elan-tab.active { color: var(--elan-primary); border-bottom-color: var(--elan-primary); background: var(--elan-primary-light); }
.elan-tab.active:hover { color: var(--elan-primary); background: var(--elan-primary-light); }

.elan-table-wrap { background: var(--elan-surface); border: 1.5px solid var(--elan-border); border-radius: var(--elan-radius); overflow: hidden; box-shadow: var(--elan-shadow-sm); }
.elan-table { width: 100%; border-collapse: collapse; }
.elan-table th { text-align: left; padding: 13px 16px; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; color: var(--elan-muted); background: var(--elan-surface2); border-bottom: 1.5px solid var(--elan-border); }
.elan-table td { padding: 14px 16px; font-size: 13px; border-bottom: 1px solid var(--elan-border); vertical-align: middle; }
.elan-table tr:last-child td { border-bottom: none; }
.elan-table tr:hover td { background: var(--elan-surface2); }
.elan-table__title {
    color: var(--elan-text); text-decoration: none; font-weight: 700;
    display: block;
    max-width: 220px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.elan-table__title:hover { color: var(--elan-primary); }
.elan-table__cat { color: var(--elan-muted); font-size: 12px; }
.elan-price { color: var(--elan-primary); font-weight: 800; white-space: nowrap; }

/* Checkbox column — narrow */
.elan-table td:first-child,
.elan-table th:first-child {
    min-width: 32px;
    max-width: 40px;
    width: 36px;
    padding-left: 12px;
    padding-right: 4px;
}
/* Title column — second child */
.elan-table td:nth-child(2),
.elan-table th:nth-child(2) {
    min-width: 140px;
    max-width: 220px;
    width: 180px;
}
/* Price column — never wraps */
.elan-table td:nth-child(4),
.elan-table th:nth-child(4) {
    white-space: nowrap;
    width: 90px;
}
.elan-date  { color: var(--elan-muted); font-size: 12px; }

.elan-status { display: inline-flex; align-items: center; gap: 4px; padding: 3px 10px; border-radius: 50px; font-size: 11px; font-weight: 700; }
.elan-status--active  { background: #f0fdf4; color: var(--elan-success); border: 1px solid #86efac; }
.elan-status--pending { background: #fffbeb; color: var(--elan-warning); border: 1px solid #fcd34d; }
.elan-status--trash   { background: #fef2f2; color: var(--elan-danger); border: 1px solid #fca5a5; }

.elan-promo-badge { display: inline-flex; align-items: center; gap: 4px; padding: 3px 10px; border-radius: 50px; font-size: 11px; font-weight: 800; color: #fff; text-transform: uppercase; }
.elan-promo-badge--boost     { background: linear-gradient(90deg, #10b981, #059669); }
.elan-promo-badge--spotlight { background: linear-gradient(90deg, #8b5cf6, #ec4899); }
.elan-promo-badge--ultra     { background: linear-gradient(90deg, #ef4444, #f97316); }
.elan-promo-badge--elite     { background: linear-gradient(90deg, #f59e0b, #d97706); color: #7c2d12; }

.elan-actions { display: flex; align-items: center; gap: 6px; }
.elan-action-btn { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 50%; border: 1.5px solid #e5e7eb; background: #fff; color: #6b7280; cursor: pointer; text-decoration: none; font-size: 14px; transition: all .18s; flex-shrink: 0; }
.elan-action-btn:hover { border-color: #0067ed; color: #0067ed; background: #e8f0fe; }
.elan-action-btn--pending { border-color: #fbbf24; color: #d97706; background: #fffbeb; }
.elan-delete-btn { color: #9ca3af; }
.elan-delete-btn:hover { border-color: #f87171; color: #dc2626; background: #fef2f2; }

/* ============================================================
   PROMOTION MODAL
   ============================================================ */
.elan-modal { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; padding: 20px; }
.elan-modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.45); backdrop-filter: blur(4px); }
.elan-modal__box { position: relative; background: var(--elan-surface); border-radius: var(--elan-radius); max-width: 680px; width: 100%; max-height: 90vh; overflow-y: auto; box-shadow: 0 20px 60px rgba(0,0,0,.2); border: 1px solid var(--elan-border); animation: modalIn .25s ease-out; }
@keyframes modalIn { from { opacity:0; transform:scale(.95) translateY(10px); } to { opacity:1; transform:scale(1) translateY(0); } }

.elan-modal__header { display: flex; align-items: center; justify-content: space-between; padding: 22px 24px 0; }
.elan-modal__header h3 { margin: 0; font-size: 20px; font-weight: 800; color: var(--elan-text); }
.elan-modal__close { background: var(--elan-surface2); border: 1px solid var(--elan-border); color: var(--elan-muted); width: 32px; height: 32px; border-radius: 50%; cursor: pointer; font-size: 16px; display: flex; align-items: center; justify-content: center; transition: all .15s; }
.elan-modal__close:hover { background: #fef2f2; color: var(--elan-danger); border-color: var(--elan-danger); }
.elan-modal__subtitle { padding: 8px 24px 20px; color: var(--elan-muted); font-size: 14px; margin: 0; border-bottom: 1px solid var(--elan-border); }

/* Package cards inside modal */
.elan-packages-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 16px; padding: 24px; }

.elan-pkg-card {
    border: 2px solid var(--elan-border); border-radius: var(--elan-radius);
    overflow: hidden; transition: all .2s; cursor: pointer;
    box-shadow: var(--elan-shadow-sm);
    display: flex; flex-direction: column;
}
.elan-pkg-card__features { flex: 1; }
.elan-pkg-card:hover { border-color: var(--pkg-color,var(--elan-primary)); box-shadow: 0 4px 20px rgba(0,0,0,.1); transform: translateY(-3px); }
.elan-pkg-card.selected { border-color: var(--pkg-color,var(--elan-primary)); box-shadow: 0 0 0 3px rgba(0,103,237,.15); }

.elan-pkg-card__header {
    display: flex; align-items: center; gap: 10px;
    padding: 16px; background: var(--elan-surface2);
    border-bottom: 1px solid var(--elan-border);
}
.elan-pkg-card__icon { font-size: 26px; flex-shrink: 0; }
.elan-pkg-card__header h4 { margin: 0 0 2px; font-size: 15px; font-weight: 800; color: var(--elan-text); }
.elan-pkg-card__duration { font-size: 11px; color: var(--elan-muted); font-weight: 600; }
.elan-pkg-card__price { margin-left: auto; font-size: 18px; font-weight: 900; color: var(--pkg-color, var(--elan-primary)); white-space: nowrap; }

.elan-pkg-card__features { list-style: none; margin: 0; padding: 14px 16px; }
.elan-pkg-card__features li { font-size: 12px; color: var(--elan-muted); padding: 3px 0; font-weight: 500; }

.elan-pkg-select-btn { all: revert !important; display: block !important; width: 100% !important; box-sizing: border-box !important; padding: 12px !important; font-size: 13px !important; font-weight: 600 !important; font-family: inherit !important; text-align: center !important; color: #fff !important; background: var(--pkg-color, #0067ed) !important; border: none !important; border-radius: 0 !important; cursor: pointer !important; transition: opacity .2s !important; margin: 0 !important; line-height: 1.4 !important; }
.elan-pkg-select-btn:hover { opacity: .85 !important; }

/* ── RESPONSIVE ── */
@media (max-width: 768px) {
    .elanlar-layout { flex-direction: column; }
    .elanlar-sidebar { width: 100%; }
    .elan-steps { flex-direction: column; }
    .elan-field-row { grid-template-columns: 1fr; }
    .elan-stats { grid-template-columns: 1fr; }
    .elan-radio-group { flex-direction: column; }
    .elan-table-wrap { overflow-x: auto; }
    .elan-dashboard__header { flex-direction: column; gap: 16px; align-items: flex-start; }
    .elan-packages-grid { grid-template-columns: 1fr; }
    .elan-steps { gap: 8px; }
}

/* ── REJECTED STATUS ── */
.elan-status--rejected { background:#fef2f2; color:#dc2626; border:1px solid #fca5a5; }
.elan-reject-reason {
    margin-top:6px; padding:7px 10px;
    background:#fef2f2; border-left:3px solid #dc2626;
    border-radius:4px; font-size:12px; color:#991b1b;
    line-height:1.4; display:flex; gap:6px; align-items:flex-start;
}

/* ============================================================
   EDIT FORM
   ============================================================ */
.elan-edit-header {
    display:flex; align-items:center; gap:16px;
    background:var(--elan-surface); border:1.5px solid var(--elan-border);
    border-radius:var(--elan-radius); padding:20px 24px; margin-bottom:28px;
    box-shadow:var(--elan-shadow-sm);
}
.elan-edit-header__icon { font-size:32px; }
.elan-edit-header h2 { margin:0 0 4px; font-size:20px; font-weight:800; }
.elan-edit-header p  { margin:0; color:var(--elan-muted); font-size:13px; }
.elan-edit-pending-badge {
    margin-left:auto; background:#fffbeb; border:1px solid #fcd34d;
    color:#92400e; padding:6px 14px; border-radius:50px; font-size:12px; font-weight:700;
    display:flex; gap:6px; align-items:center;
}
.elan-pending-notice {
    display:flex; gap:12px; align-items:flex-start;
    background:#fffbeb; border:1.5px solid #fcd34d;
    border-radius:var(--elan-radius-sm); padding:14px 18px; margin-bottom:20px;
}
.elan-pending-notice span { font-size:20px; }
.elan-pending-notice strong { display:block; margin-bottom:4px; color:#92400e; }
.elan-pending-notice p { margin:0; font-size:13px; color:#92400e; }
.elan-action-btn--pending { border-color:var(--elan-warning)!important; background:#fffbeb!important; }

/* ============================================================
   MESSENGER
   ============================================================ */
.elan-messenger { max-width:800px; margin:0 auto; }
.elan-messenger__header {
    display:flex; align-items:center; gap:12px;
    margin-bottom:20px; padding-bottom:16px;
    border-bottom:1.5px solid var(--elan-border);
}
.elan-messenger__header h2 { margin:0; font-size:22px; font-weight:800; }
.elan-msg-bubble {
    background:var(--elan-primary); color:#fff;
    padding:4px 12px; border-radius:50px; font-size:12px; font-weight:700;
}

/* Conversation list */
.elan-conv-list { display:flex; flex-direction:column; gap:1px; }
.elan-conv-item {
    display:flex; align-items:center; gap:14px;
    background:var(--elan-surface); border:1.5px solid var(--elan-border);
    border-radius:var(--elan-radius); padding:14px 16px; margin-bottom:8px;
    text-decoration:none; color:var(--elan-text);
    transition:all .2s; position:relative; box-shadow:var(--elan-shadow-sm);
}
.elan-conv-item:hover { border-color:var(--elan-primary); transform:translateX(4px); }
.elan-conv-item--unread { border-left:3px solid var(--elan-primary); background:var(--elan-primary-light); }
.elan-conv-item__avatar { position:relative; flex-shrink:0; }
.elan-conv-item__avatar img { width:44px; height:44px; border-radius:50%; object-fit:cover; border:2px solid var(--elan-border); }
.elan-conv-item__dot { position:absolute; bottom:0; right:0; width:12px; height:12px; background:var(--elan-primary); border-radius:50%; border:2px solid #fff; }
.elan-conv-item__body { flex:1; min-width:0; }
.elan-conv-item__top { display:flex; justify-content:space-between; align-items:center; margin-bottom:3px; }
.elan-conv-item__name { font-weight:700; font-size:15px; }
.elan-conv-item__time { font-size:11px; color:var(--elan-muted); }
.elan-conv-item__listing { font-size:12px; color:var(--elan-primary); margin-bottom:3px; font-weight:600; }
.elan-conv-item__preview { font-size:13px; color:var(--elan-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.elan-conv-item__badge { background:var(--elan-primary); color:#fff; font-size:11px; font-weight:800; padding:3px 8px; border-radius:50px; flex-shrink:0; }

/* Chat UI */
/* ══════════════════════════════════════════════════════
   CHAT — redesigned clean marketplace style
   ══════════════════════════════════════════════════════ */

/* Header */
.elan-chat-header {
    display: flex;
    align-items: center;
    gap: 12px;
    background: var(--elan-surface);
    border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius);
    padding: 12px 16px;
    margin-bottom: 10px;
    box-shadow: var(--elan-shadow-sm);
}
.elan-chat-back {
    color: var(--elan-primary);
    font-weight: 700;
    text-decoration: none;
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}
.elan-chat-header__avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid var(--elan-border);
    flex-shrink: 0;
}
.elan-chat-header__info strong { display: block; font-size: 14px; font-weight: 800; }
.elan-chat-header__info span   { font-size: 11px; color: var(--elan-muted); }
.elan-chat-listing-link {
    font-size: 11px; color: var(--elan-primary); text-decoration: none;
    font-weight: 600; background: var(--elan-primary-light);
    padding: 4px 10px; border-radius: 20px;
}
.elan-chat-header__actions { margin-left: auto; display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.elan-chat-header__role-row { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
#elan-complaint-btn {
    display: inline-flex; align-items: center; justify-content: center;
    width: 28px; height: 28px; cursor: pointer;
    opacity: 0.4; transition: opacity .2s; flex-shrink: 0; margin-left: auto;
}
#elan-complaint-btn:hover { opacity: 1; }
#elan-complaint-btn svg { display: block; pointer-events: none; }

/* Online badge */
.elan-online-badge {
    display: none;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 700;
    padding: 2px 9px;
    border-radius: 50px;
    border: 1.5px solid transparent;
    white-space: nowrap;
}
.elan-online-dot {
    width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0;
    background: #9ca3af;
}
.elan-online-badge--online  { display: inline-flex; background: #f0fdf4; color: #16a34a; border-color: #bbf7d0; }
.elan-online-badge--online .elan-online-dot {
    background: #16a34a;
    animation: elanDotPulse 1.5s ease-in-out infinite;
}
.elan-online-badge--recent  { display: inline-flex; background: #fffbeb; color: #d97706; border-color: #fde68a; }
.elan-online-badge--recent .elan-online-dot  { background: #d97706; }
.elan-online-badge--today   { display: inline-flex; background: #f0f4ff; color: #6366f1; border-color: #c7d2fe; }
.elan-online-badge--today .elan-online-dot   { background: #6366f1; }
.elan-online-badge--offline { display: inline-flex; background: #f8fafc; color: #94a3b8; border-color: #e2e8f0; }
.elan-online-badge--offline .elan-online-dot { background: #94a3b8; }
.elan-online-badge--loading { display: none; }
@keyframes elanDotPulse {
    0%,100% { box-shadow: 0 0 0 0 rgba(22,163,74,.4); }
    50%      { box-shadow: 0 0 0 4px rgba(22,163,74,0); }
}

/* Message area */
.elan-chat-body {
    background: var(--elan-surface);
    border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius);
    padding: 16px;
    min-height: 400px;
    max-height: 500px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 10px;
    box-shadow: var(--elan-shadow-sm);
}
.elan-chat-empty { text-align: center; color: var(--elan-muted); padding: 40px; font-size: 14px; }
.elan-chat-date-sep { text-align: center; position: relative; margin: 4px 0; }
.elan-chat-date-sep span {
    background: var(--elan-surface2); padding: 3px 14px;
    border-radius: 50px; font-size: 11px; color: var(--elan-muted);
    font-weight: 600; border: 1px solid var(--elan-border);
}

/* Message rows */
.elan-msg-row { display: flex; gap: 8px; align-items: flex-end; }
.elan-msg-row--me { flex-direction: row-reverse; }
.elan-msg-avatar { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.elan-msg-bubble-wrap { max-width: 68%; display: flex; flex-direction: column; gap: 2px; }
.elan-msg-row--me .elan-msg-bubble-wrap { align-items: flex-end; }
.elan-msg-sender {
    font-size: 10px; color: var(--elan-muted); font-weight: 600;
    display: flex; align-items: center; gap: 5px; padding: 0 2px;
}
.elan-msg-sender a { color: inherit; text-decoration: none; pointer-events: none; cursor: default; }

/* Text bubbles */
.elan-msg {
    padding: 9px 13px; border-radius: 16px;
    font-size: 14px; line-height: 1.5; word-break: break-word;
    max-width: 100%;
}
.elan-msg--me    { background: var(--elan-primary); color: #fff; border-bottom-right-radius: 4px; }
.elan-msg--other { background: var(--elan-surface2); color: var(--elan-text); border: 1px solid var(--elan-border); border-bottom-left-radius: 4px; }
.elan-msg--admin { background: #fffbeb; color: #92400e; border: 1.5px solid #fcd34d; border-bottom-left-radius: 4px; }

/* Meta (time + read ticks) */
.elan-msg-meta {
    font-size: 10px; color: var(--elan-muted); padding: 0 2px;
    display: flex; align-items: center; gap: 3px;
}
.elan-msg-meta--right { justify-content: flex-end; }
.elan-msg-check      { color: var(--elan-muted); font-size: 11px; }
.elan-msg-check--read { color: var(--elan-success); }
.elan-admin-badge {
    background: #fbbf24; color: #78350f;
    padding: 1px 6px; border-radius: 10px;
    font-size: 10px; font-weight: 800; text-transform: uppercase;
}

/* ── Photo bubbles ── */
.elan-msg-photo-wrap {
    position: relative;
    display: inline-block;
    border-radius: 14px;
    overflow: hidden;
    line-height: 0;
    font-size: 0;
    box-shadow: 0 2px 8px rgba(0,0,0,.1);
    cursor: zoom-in;
}
.elan-msg-photo {
    display: block;
    width: 200px;
    height: 200px;
    object-fit: cover;
    vertical-align: top;
    transition: opacity .2s;
    border-radius: 14px;
}
.elan-msg-photo:hover { opacity: .9; }
.elan-msg-photo-delete {
    position: absolute;
    top: 7px; right: 7px;
    width: 20px; height: 20px;
    background: rgba(0,0,0,.55);
    backdrop-filter: blur(4px);
    color: #fff;
    border: none;
    border-radius: 50%;
    font-size: 9px;
    font-weight: 900;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity .15s;
    padding: 0;
    z-index: 2;
}
.elan-msg-photo-wrap:hover .elan-msg-photo-delete { opacity: 1; }

/* ── Footer / input area ── */
/* ═══════════════════════════════════════════
   CHAT FOOTER — fully rebuilt
═══════════════════════════════════════════ */
.elan-chat-footer {
    background: var(--elan-surface);
    border: 1.5px solid var(--elan-border);
    border-radius: 20px;
    padding: 8px 8px 8px 12px;
    margin-top: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
    box-sizing: border-box;
    width: 100%;
}

/* ── Photo preview strip ── */
#chat-photo-preview-bar {
    display: none;
    align-items: flex-start;
    gap: 8px;
    padding: 8px 4px 10px;
    border-bottom: 1px solid var(--elan-border);
    margin-bottom: 8px;
    flex-wrap: wrap;
}
.elan-preview-chips {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    flex: 1;
}
.elan-preview-chip {
    position: relative;
    display: inline-block;
    flex-shrink: 0;
}
.elan-preview-chip img {
    display: block;
    width: 64px;
    height: 64px;
    object-fit: cover;
    border-radius: 10px;
    border: 2px solid var(--elan-primary);
    box-shadow: 0 2px 6px rgba(0,103,237,.15);
}
.elan-preview-chip__remove {
    position: absolute;
    top: -6px; right: -6px;
    width: 20px; height: 20px;
    background: #ef4444;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 50%;
    font-size: 9px;
    font-weight: 900;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    line-height: 1;
    box-shadow: 0 2px 5px rgba(0,0,0,.25);
    transition: background .15s, transform .15s;
    z-index: 10;
}
.elan-preview-chip__remove:hover {
    background: #dc2626;
    transform: scale(1.15);
}
#chat-photo-preview-bar .elan-preview-hint {
    font-size: 11px;
    color: var(--elan-muted);
    font-style: italic;
    white-space: nowrap;
    align-self: center;
}

/* ── Input row: [+btn] [textarea] [send] ── */
.elan-chat-input-wrap {
    display: flex;
    gap: 8px;
    align-items: flex-end;
    width: 100%;
    box-sizing: border-box;
}

/* ── Photo attach button — iOS "+" style ── */
.elan-chat-photo-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    min-width: 34px;
    min-height: 34px;
    border-radius: 50%;
    background: #e9edf5;
    border: none;
    cursor: pointer;
    flex-shrink: 0;
    color: #555e6d;
    transition: background .2s, color .2s;
    align-self: flex-end;
    margin-bottom: 4px;
    box-sizing: border-box;
    padding: 0;
}
.elan-chat-photo-btn:hover {
    background: #d0d9ef;
    color: #0067ed;
}
.elan-chat-photo-btn svg {
    width: 20px;
    height: 20px;
    stroke: currentColor;
    flex-shrink: 0;
    display: block;
}
.elan-chat-photo-btn--loading { opacity: .4; pointer-events: none; }

/* ── Textarea ── */
.elan-chat-input {
    flex: 1;
    min-width: 0;
    background: transparent !important;
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    color: var(--elan-text);
    padding: 9px 4px 9px 0;
    border-radius: 0 !important;
    font-size: 15px;
    font-family: inherit;
    outline: none !important;
    resize: none !important;
    transition: none !important;
    min-height: 38px;
    max-height: 130px;
    line-height: 1.5;
    box-sizing: border-box;
    width: 100%;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    display: block;
    word-wrap: break-word !important;
    word-break: break-word !important;
    white-space: pre-wrap !important;
    overflow-wrap: break-word !important;
    height: 38px;
    box-shadow: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    -webkit-tap-highlight-color: transparent !important;
}
.elan-chat-input:focus,
.elan-chat-input:active,
.elan-chat-input:focus-visible,
.elan-chat-footer .elan-chat-input:focus,
body .elan-chat-input:focus {
    outline: none !important;
    outline-width: 0 !important;
    box-shadow: none !important;
    border: none !important;
    border-color: transparent !important;
    background: transparent !important;
    -webkit-box-shadow: none !important;
}
.elan-chat-input::placeholder {
    color: var(--elan-muted);
    opacity: .8;
}

/* ── Send button — iOS arrow style ── */
.elan-chat-send-btn {
    background: #0067ed;
    border: none;
    color: #fff;
    width: 34px;
    height: 34px;
    min-width: 34px;
    min-height: 34px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .2s, transform .15s;
    flex-shrink: 0;
    align-self: flex-end;
    margin-bottom: 4px;
    padding: 0;
    box-sizing: border-box;
    box-shadow: none;
}
.elan-chat-send-btn svg {
    width: 16px;
    height: 16px;
    min-width: 16px;
    flex-shrink: 0;
    /* Rotate the arrow to point up like iOS */
    transform: rotate(-45deg) translate(1px, 1px);
}
.elan-chat-send-btn:hover  { background: #0052cc; }
.elan-chat-send-btn:active { transform: scale(.90); }
.elan-chat-send-btn:disabled { background: #b0c4e0; cursor: not-allowed; }

/* ── Mobile ── */
@media(max-width: 600px) {
    .elan-chat-footer {
        border-radius: 18px;
        padding: 7px 7px 7px 10px;
        margin-top: 8px;
    }
    .elan-chat-input {
        font-size: 16px; /* prevent iOS zoom */
        min-height: 36px;
        padding: 8px 4px 8px 0;
    }
    .elan-chat-photo-btn,
    .elan-chat-send-btn {
        width: 32px;
        height: 32px;
        min-width: 32px;
        min-height: 32px;
        margin-bottom: 3px;
    }
    .elan-preview-chip img {
        width: 56px;
        height: 56px;
    }
}

/* ── Very small screens ── */
@media(max-width: 360px) {
    .elan-chat-input { font-size: 15px; }
    .elan-chat-photo-btn,
    .elan-chat-send-btn {
        width: 30px;
        height: 30px;
        min-width: 30px;
        min-height: 30px;
    }
}

/* Contact box on listing page */
.elan-contact-box {
    background:var(--elan-surface); border:1.5px solid var(--elan-border);
    border-radius:var(--elan-radius); padding:20px; margin-top:24px;
    box-shadow:var(--elan-shadow-sm);
}
.elan-contact-box h4 { margin:0 0 14px; font-size:16px; font-weight:800; }

/* ============================================================
   VITRIN (HOMEPAGE SHOWCASE) — Dark card style
   ============================================================ */
.elan-vitrin {
    font-family: 'Roboto', sans-serif; font-weight: 500;
    padding: 0 0 40px;
}

/* Tab nav */
.elan-vitrin-nav {
    display: flex; align-items: center; gap: 6px;
    padding: 0 0 24px; flex-wrap: wrap;
}
.elan-vitrin-nav__tab {
    display: flex; align-items: center; gap: 8px;
    padding: 10px 20px; border-radius: 50px;
    font-size: 14px; font-weight: 700; cursor: pointer;
    border: 2px solid transparent; transition: all .2s;
    color: var(--elan-text); background: var(--elan-surface);
    border-color: var(--elan-border); text-decoration: none;
}
.elan-vitrin-nav__tab.active, .elan-vitrin-nav__tab:hover {
    background: var(--elan-primary); color: #fff; border-color: var(--elan-primary);
    box-shadow: 0 4px 14px rgba(0,103,237,.35);
}

/* Game logos row */
.elan-vitrin-brands {
    display: flex; align-items: center; gap: 20px;
    margin-left: auto; flex-wrap: wrap;
}
.elan-vitrin-brands a {
    opacity: .55; transition: opacity .2s; font-size: 12px;
    font-weight: 800; color: var(--elan-text); text-decoration: none;
    letter-spacing: .04em; text-transform: uppercase;
}
.elan-vitrin-brands a:hover { opacity: 1; }

/* Dark card grid */
.elan-vitrin-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px;
}

/* ═══════════════════════════════════════════
   VITRIN CARD — redesigned with tier effects
═══════════════════════════════════════════ */
.elan-dcard {
    background: #ffffff;
    border-radius: 14px;
    overflow: visible; /* allow badge to overflow */
    position: relative;
    transition: transform .22s, box-shadow .22s;
    cursor: pointer;
    border: 1.5px solid #dde6f5;
    box-shadow: 0 2px 10px rgba(0,103,237,.07);
    margin-top: 14px; /* space for badge that overflows top */
}
.elan-dcard > a {
    display: block;
    border-radius: 14px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
}
.elan-dcard:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 36px rgba(0,103,237,.18);
    border-color: #0067ed;
}

/* ── TIER BADGE (floats above card top border) ── */
.elan-dcard__tier-badge {
    position: absolute;
    top: -13px;
    left: 12px;
    z-index: 10;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: #fff;
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(0,0,0,.25);
}
.elan-dcard__tier-badge-icon { font-size: 12px; line-height: 1; }
.elan-dcard__tier-badge-text { line-height: 1; }

/* Tier badge colors */
.elan-dcard__tier-badge--new       { background: linear-gradient(90deg,#10b981,#0067ed); }
.elan-dcard__tier-badge--boost     { background: linear-gradient(90deg,#10b981,#059669); box-shadow: 0 2px 10px rgba(16,185,129,.5); }
.elan-dcard__tier-badge--spotlight { background: linear-gradient(90deg,#8b5cf6,#ec4899); box-shadow: 0 2px 10px rgba(139,92,246,.5); }
.elan-dcard__tier-badge--ultra     { background: linear-gradient(90deg,#ef4444,#f97316); box-shadow: 0 2px 12px rgba(239,68,68,.55); }
.elan-dcard__tier-badge--elite     { background: linear-gradient(90deg,#f59e0b,#ef4444); box-shadow: 0 2px 12px rgba(245,158,11,.6); }

/* ═══════════════════════════════════════════════
   TIER CARD EFFECTS — each tier is UNIQUE
   ═══════════════════════════════════════════════ */

/* BOOST — green left accent bar + gentle breathe */
.elan-dcard--tier-boost {
    border: 1.5px solid rgba(16,185,129,.4);
    border-left: 4px solid #10b981;
    box-shadow: 0 2px 16px rgba(16,185,129,.2);
    animation: elan-boost-breathe 3s ease-in-out infinite;
}
@keyframes elan-boost-breathe {
    0%,100% { box-shadow: 0 2px 16px rgba(16,185,129,.2); border-left-color: #10b981; }
    50%     { box-shadow: 0 4px 28px rgba(16,185,129,.45); border-left-color: #34d399; }
}

/* SPOTLIGHT — rotating rainbow conic ring around the card */
.elan-dcard--tier-spotlight {
    border: 2px solid transparent;
    position: relative;
    isolation: isolate;
    box-shadow: 0 4px 20px rgba(139,92,246,.2);
}
.elan-dcard--tier-spotlight::before {
    content: '';
    position: absolute;
    inset: -3px;
    border-radius: 17px;
    background: conic-gradient(from 0deg, #8b5cf6, #ec4899, #f472b6, #c084fc, #8b5cf6);
    animation: elan-spotlight-spin 3s linear infinite;
    z-index: -1;
}
.elan-dcard--tier-spotlight::after {
    content: '';
    position: absolute;
    inset: 1px;
    background: #ffffff;
    border-radius: 14px;
    z-index: -1;
}
@keyframes elan-spotlight-spin {
    to { transform: rotate(360deg); }
}

/* ULTRA — pulsing sonar rings + red glow */
.elan-dcard--tier-ultra {
    border: 2px solid rgba(239,68,68,.8);
    box-shadow: 0 0 0 0 rgba(239,68,68,.5);
    animation: elan-ultra-sonar 1.6s ease-out infinite;
}
@keyframes elan-ultra-sonar {
    0%  { box-shadow: 0 0 0 0 rgba(239,68,68,.55), 0 4px 20px rgba(239,68,68,.3); }
    70% { box-shadow: 0 0 0 10px rgba(239,68,68,0), 0 4px 20px rgba(239,68,68,.3); }
    100%{ box-shadow: 0 0 0 0 rgba(239,68,68,0),  0 4px 20px rgba(239,68,68,.3); }
}

/* ELITE — animated gold foil gradient border */
.elan-dcard--tier-elite {
    border: 2px solid transparent;
    position: relative;
    isolation: isolate;
    box-shadow: 0 6px 36px rgba(245,158,11,.45);
    animation: elan-elite-breathe 2.5s ease-in-out infinite;
}
.elan-dcard--tier-elite::before {
    content: '';
    position: absolute;
    inset: -3px;
    border-radius: 17px;
    background: linear-gradient(135deg, #fbbf24, #f59e0b, #fde68a, #d97706, #fbbf24, #f59e0b);
    background-size: 300% 300%;
    animation: elan-elite-foil 2.5s ease-in-out infinite;
    z-index: -1;
}
.elan-dcard--tier-elite::after {
    content: '';
    position: absolute;
    inset: 1px;
    background: #ffffff;
    border-radius: 14px;
    z-index: -1;
}
@keyframes elan-elite-foil {
    0%,100% { background-position: 0% 0%; }
    50%     { background-position: 100% 100%; }
}
@keyframes elan-elite-breathe {
    0%,100% { box-shadow: 0 6px 36px rgba(245,158,11,.4); }
    50%     { box-shadow: 0 8px 50px rgba(245,158,11,.7), 0 0 20px rgba(245,158,11,.3); }
}

/* ── SELLER OVERLAY on image ── */
.elan-dcard__seller-overlay {
    position: absolute;
    top: 0; left: 0; right: 0;
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 10px;
    background: linear-gradient(180deg, rgba(0,0,0,.65) 0%, transparent 100%);
    border-radius: 14px 14px 0 0;
}
.elan-dcard__seller-avatar {
    width: 24px; height: 24px; border-radius: 50%;
    object-fit: cover;
    border: 1.5px solid rgba(255,255,255,.7);
    flex-shrink: 0;
}
.elan-dcard__seller-label {
    font-size: 9px; font-weight: 800;
    color: rgba(255,255,255,.6);
    letter-spacing: .08em;
    text-transform: uppercase;
}
.elan-dcard__seller-name {
    font-size: 11px; font-weight: 700;
    color: #fff;
}

/* ── COVER IMAGE ── */
.elan-dcard__img {
    width: 100%; aspect-ratio: 1/1; object-fit: cover;
    display: block; background: #f0f4fa;
}
.elan-dcard__img-placeholder {
    width: 100%; aspect-ratio: 1/1;
    background: linear-gradient(135deg, #e8f0fe 0%, #f0f4fa 100%);
    display: flex; align-items: center; justify-content: center;
    font-size: 48px; color: #0067ed;
}

/* ── CARD BODY ── */
.elan-dcard__body {
    padding: 10px 12px 12px;
}
.elan-dcard__title {
    font-size: 13px; font-weight: 700; color: #111827;
    line-height: 1.35; margin: 0 0 8px;
    display: -webkit-box; -webkit-line-clamp: 2;
    -webkit-box-orient: vertical; overflow: hidden;
}
.elan-dcard__foot {
    display: flex; align-items: center; justify-content: space-between;
}
.elan-dcard__price {
    font-size: 20px; font-weight: 900; color: #0067ed; letter-spacing: -.02em;
}
.elan-dcard__arrow {
    width: 30px; height: 30px; border-radius: 50%;
    background: #e8f0fe; display: flex;
    align-items: center; justify-content: center;
    transition: background .2s; flex-shrink: 0;
}
.elan-dcard:hover .elan-dcard__arrow { background: var(--elan-primary); }
.elan-dcard:hover .elan-dcard__arrow svg line,
.elan-dcard:hover .elan-dcard__arrow svg polyline { stroke: #fff !important; }
.elan-dcard__delivery {
    font-size: 9px; font-weight: 800;
    padding: 3px 8px; border-radius: 50px;
    margin-bottom: 6px; display: inline-block;
    letter-spacing: .05em; text-transform: uppercase;
}
.elan-dcard__delivery--auto   { background:rgba(16,185,129,.15); color:#059669; }
.elan-dcard__delivery--manual { background:rgba(245,158,11,.12);  color:#b45309; }

/* ============================================================
   LISTING PAGE REDESIGN
   ============================================================ */
.elan-listings-page {
    display: flex; gap: 24px; align-items: flex-start;
    font-family: 'Roboto', sans-serif; font-weight: 500;
}

/* New sidebar */
.elan-listings-sidebar {
    width: 260px; flex-shrink: 0;
    background: var(--elan-surface);
    border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius);
    overflow: hidden; box-shadow: var(--elan-shadow-sm);
    position: sticky; top: 24px;
}
.elan-listings-sidebar__header {
    padding: 16px 18px 12px;
    border-bottom: 1px solid var(--elan-border);
    display: flex; align-items: center; gap: 8px;
    font-weight: 800; font-size: 14px;
}
.elan-sidebar-cat-search {
    margin: 12px 14px 8px;
    padding: 9px 14px; width: calc(100% - 28px);
    background: var(--elan-surface2);
    border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius-sm);
    font-size: 13px; color: var(--elan-text); outline: none;
}
.elan-sidebar-cat-search:focus { border-color: var(--elan-primary); }
.elan-sidebar-cat-list { list-style: none; margin: 0; padding: 8px; }
.elan-sidebar-cat-item {
    display: flex; align-items: center; gap: 10px;
    padding: 9px 12px; border-radius: var(--elan-radius-sm);
    color: var(--elan-text); text-decoration: none;
    font-size: 13px; font-weight: 500; transition: all .15s;
    position: relative;
}
.elan-sidebar-cat-item:hover  { background: var(--elan-primary-light); color: var(--elan-primary); }
.elan-sidebar-cat-item.active { background: var(--elan-primary); color: #fff; font-weight: 700; }
.elan-sidebar-cat-item .cat-icon {
    width: 32px; height: 32px; border-radius: 8px;
    object-fit: cover; flex-shrink: 0;
    background: var(--elan-surface2);
    display: flex; align-items: center; justify-content: center;
    font-size: 16px;
}
.elan-sidebar-cat-item .cat-img {
    width: 32px; height: 32px; border-radius: 8px; object-fit: cover; flex-shrink: 0;
}
.elan-sidebar-cat-item .cat-count {
    margin-left: auto; font-size: 11px; font-weight: 700;
    background: rgba(0,0,0,.07); padding: 1px 7px; border-radius: 50px;
}
.elan-sidebar-cat-item.active .cat-count { background: rgba(255,255,255,.2); }

/* Filter bar on top */
.elan-listings-topbar {
    display: flex; gap: 12px; align-items: center;
    margin-bottom: 20px; flex-wrap: wrap;
}
.elan-listings-topbar__search {
    flex: 1; min-width: 200px;
    display: flex; align-items: center;
    background: var(--elan-surface);
    border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius-sm);
    padding: 0 14px; gap: 10px;
    box-shadow: var(--elan-shadow-sm);
}
.elan-listings-topbar__search input {
    flex: 1; border: none; background: transparent;
    padding: 11px 0; font-size: 14px; color: var(--elan-text); outline: none;
}
.elan-listings-topbar__filter-btn {
    padding: 10px 18px; background: var(--elan-surface);
    border: 1.5px solid var(--elan-border); border-radius: var(--elan-radius-sm);
    font-size: 13px; font-weight: 600; color: var(--elan-text);
    cursor: pointer; transition: all .15s; white-space: nowrap;
}
.elan-listings-topbar__filter-btn.active,
.elan-listings-topbar__filter-btn:hover {
    background: var(--elan-primary); color: #fff; border-color: var(--elan-primary);
}

/* Grid */
.elan-listings-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 16px;
}

/* Card in listing page — same dark card style */
.elan-listings-grid .elan-dcard { /* reuse dark card */ }

/* Pagination */
.elan-pagination {
    display: flex; gap: 6px; justify-content: center;
    flex-wrap: wrap; margin-top: 32px;
}
.elan-pagination a, .elan-pagination span {
    padding: 8px 14px; border-radius: var(--elan-radius-sm);
    font-size: 13px; font-weight: 700;
    background: var(--elan-surface); border: 1.5px solid var(--elan-border);
    color: var(--elan-text); text-decoration: none; transition: all .15s;
}
.elan-pagination .current, .elan-pagination a:hover {
    background: var(--elan-primary); color: #fff; border-color: var(--elan-primary);
}

/* ============================================================
   SINGLE LISTING PAGE
   ============================================================ */
.elan-single {
    font-family: 'Roboto', sans-serif; font-weight: 500;
    max-width: 1140px; margin: 0 auto;
}
.elan-single-layout {
    display: grid; grid-template-columns: 1fr 380px; gap: 28px;
    align-items: start;
}
@media(max-width:900px) { .elan-single-layout { grid-template-columns:1fr; } }

/* Gallery */
.elan-gallery { position: sticky; top: 24px; }
.elan-gallery__main {
    border-radius: var(--elan-radius); overflow: hidden;
    aspect-ratio: 1/1; background: #111827;
    margin-bottom: 10px; position: relative;
}
.elan-gallery__main img {
    width: 100%; height: 100%; object-fit: cover; display: block;
    transition: opacity .3s;
}
.elan-gallery__main .no-img {
    width: 100%; height: 100%; display: flex;
    align-items: center; justify-content: center; font-size: 64px;
    color: #374151;
}
/* Promo ticker tape */
.elan-ticker {
    position: absolute; top: 0; left: 0; right: 0;
    background: linear-gradient(90deg, #e91e8c, #ff5722);
    color: #fff; font-size: 10px; font-weight: 800;
    letter-spacing: .1em; text-transform: uppercase;
    padding: 5px 0; overflow: hidden;
}
.elan-ticker__inner {
    display: inline-flex; gap: 40px;
    animation: ticker-scroll 14s linear infinite;
    white-space: nowrap;
}
@keyframes ticker-scroll { from{transform:translateX(0)} to{transform:translateX(-50%)} }

.elan-gallery__thumbs {
    display: flex; gap: 8px; flex-wrap: wrap;
}
.elan-gallery__thumb {
    width: 68px; height: 54px; border-radius: 8px; overflow: hidden;
    cursor: pointer; border: 2px solid transparent; transition: border-color .15s;
    flex-shrink: 0;
}
.elan-gallery__thumb.active { border-color: var(--elan-primary); }
.elan-gallery__thumb img { width: 100%; height: 100%; object-fit: cover; }

/* Right panel */
.elan-single-right {}
.elan-single-breadcrumb {
    font-size: 12px; color: var(--elan-muted); margin-bottom: 10px;
}
.elan-single-breadcrumb a { color: var(--elan-primary); text-decoration: none; }
.elan-single-id { font-size: 12px; color: var(--elan-muted); margin-bottom: 6px; }
.elan-single-title {
    font-size: 22px; font-weight: 900; color: var(--elan-text);
    line-height: 1.2; margin: 0 0 14px;
}
.elan-single-meta {
    display: flex; gap: 16px; align-items: center;
    margin-bottom: 16px; flex-wrap: wrap;
}
.elan-single-meta span { font-size: 12px; color: var(--elan-muted); display: flex; gap: 5px; align-items: center; }

/* Badges row */
.elan-single-badges {
    display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 20px;
}
.elan-single-badge {
    display: flex; align-items: center; gap: 6px;
    padding: 7px 14px; border-radius: var(--elan-radius-sm);
    font-size: 12px; font-weight: 700;
    background: var(--elan-surface2); border: 1.5px solid var(--elan-border);
    color: var(--elan-text);
}

/* Urgency bar */
.elan-single-urgency {
    background: #fff8ed; border: 1px solid #fde68a;
    border-radius: var(--elan-radius-sm); padding: 10px 14px;
    font-size: 13px; font-weight: 600; color: #92400e;
    display: flex; align-items: center; gap: 8px;
    margin-bottom: 18px;
}
.elan-urgency-dot {
    width: 8px; height: 8px; border-radius: 50%;
    background: #f59e0b; animation: pulse-dot 1.5s infinite;
    flex-shrink: 0;
}
@keyframes pulse-dot { 0%,100%{transform:scale(1);opacity:1} 50%{transform:scale(1.5);opacity:.6} }

/* Price & buy box */
.elan-buy-box {
    background: var(--elan-surface); border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius); padding: 20px;
    margin-bottom: 20px; box-shadow: var(--elan-shadow-sm);
}
.elan-buy-box__price {
    font-size: 32px; font-weight: 900; color: var(--elan-primary);
    margin-bottom: 16px; display: flex; align-items: center; gap: 10px;
}
.elan-buy-box__qty {
    display: flex; align-items: center; gap: 12px; margin-bottom: 14px;
}
.elan-qty-btn {
    width: 36px; height: 36px; border-radius: 50%;
    border: 2px solid var(--elan-border); background: var(--elan-surface2);
    font-size: 20px; line-height: 1; cursor: pointer; font-weight: 700;
    transition: all .15s; color: var(--elan-text);
    display: flex; align-items: center; justify-content: center;
}
.elan-qty-btn:hover { border-color: var(--elan-primary); color: var(--elan-primary); }
.elan-qty-num { font-size: 18px; font-weight: 800; width: 32px; text-align: center; }
.elan-buy-box__actions {
    display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
}
.elan-buy-btn {
    padding: 14px; border: none; border-radius: var(--elan-radius-sm);
    font-size: 15px; font-weight: 800; cursor: pointer; transition: all .2s;
    display: flex; align-items: center; justify-content: center; gap: 8px;
}
.elan-buy-btn--cart   { background: var(--elan-primary); color: #fff; box-shadow: 0 4px 14px rgba(0,103,237,.3); }
.elan-buy-btn--cart:hover { background: var(--elan-primary-h); }
.elan-buy-btn--buy { background: #16a34a; color: #fff; box-shadow: 0 4px 14px rgba(22,163,74,.3); }
.elan-buy-btn--buy:hover { background: #15803d; }

/* Block/escrow notice */
.elan-escrow-notice {
    background: #fff0f0; border: 1px solid #fca5a5;
    border-radius: var(--elan-radius-sm); padding: 10px 14px;
    font-size: 12px; color: #991b1b; margin-top: 10px;
    line-height: 1.5;
}

/* Seller card */
.elan-seller-card {
    background: var(--elan-surface); border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius); padding: 18px 20px;
    margin-bottom: 20px; box-shadow: var(--elan-shadow-sm);
}
.elan-seller-card__top {
    display: flex; align-items: center; gap: 14px; margin-bottom: 14px;
}
.elan-seller-card__avatar {
    width: 52px; height: 52px; border-radius: 50%;
    object-fit: cover; border: 2.5px solid var(--elan-primary);
}
.elan-seller-card__name { font-size: 16px; font-weight: 800; margin-bottom: 3px; }
.elan-seller-card__badges { display: flex; gap: 5px; flex-wrap: wrap; }
.elan-seller-v-badge {
    font-size: 11px; padding: 1px 7px; border-radius: 50px; font-weight: 700;
}
.elan-seller-v-badge--verified { background: #dbeafe; color: #1d4ed8; }
.elan-seller-v-badge--gold     { background: #fef3c7; color: #92400e; }
.elan-seller-card__stats {
    display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 14px;
}
.elan-seller-stat {
    background: var(--elan-surface2); border-radius: var(--elan-radius-sm);
    padding: 8px 12px; text-align: center;
}
.elan-seller-stat__val { font-size: 18px; font-weight: 800; color: var(--elan-primary); }
.elan-seller-stat__lbl { font-size: 11px; color: var(--elan-muted); font-weight: 600; }
.elan-seller-card__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }

/* Tabs */
.elan-single-tabs {
    border-bottom: 2px solid var(--elan-border); display: flex; gap: 0; margin-bottom: 24px;
}
.elan-single-tab {
    padding: 12px 20px; font-size: 14px; font-weight: 700;
    color: var(--elan-muted); cursor: pointer; border-bottom: 2px solid transparent;
    margin-bottom: -2px; transition: all .15s;
}
.elan-single-tab.active { color: var(--elan-primary); border-bottom-color: var(--elan-primary); }
.elan-single-tab-content { display: none; }
.elan-single-tab-content.active { display: block; }
.elan-tab-desc { font-size: 15px; line-height: 1.8; color: var(--elan-text); }
.elan-tab-desc h3 { font-weight: 800; margin-top: 20px; }
.elan-tab-desc ul { padding-left: 20px; }
.elan-tab-desc ul li { margin-bottom: 6px; }

/* FAQ / Q&A */
.elan-qa-empty { color: var(--elan-muted); font-size: 14px; padding: 20px 0; }
.elan-qa-form { display: flex; gap: 10px; margin-top: 16px; }
.elan-qa-form input { flex:1; padding:10px 14px; border:1.5px solid var(--elan-border); border-radius:var(--elan-radius-sm); font-size:13px; color:var(--elan-text); background:var(--elan-surface2); outline:none; }

/* Image upload widget */
.elan-img-upload-zone {
    border: 2px dashed var(--elan-border); border-radius: var(--elan-radius);
    padding: 30px; text-align: center; cursor: pointer;
    transition: border-color .2s, background .2s; margin-bottom: 16px;
}
.elan-img-upload-zone:hover, .elan-img-upload-zone.dragover {
    border-color: var(--elan-primary); background: var(--elan-primary-light);
}
.elan-img-upload-zone__icon { font-size: 40px; margin-bottom: 8px; }
.elan-img-upload-zone p { font-size: 14px; color: var(--elan-muted); margin: 4px 0; }
.elan-img-preview-grid {
    display: grid; grid-template-columns: repeat(5,1fr); gap: 8px; margin-bottom: 10px;
}
.elan-img-thumb {
    aspect-ratio: 1; border-radius: 8px; overflow: hidden; position: relative;
    border: 2px solid var(--elan-border);
}
.elan-img-thumb:first-child { border-color: var(--elan-primary); }
.elan-img-thumb:first-child::after {
    content: 'Ana'; position: absolute; bottom: 0; left: 0; right: 0;
    background: var(--elan-primary); color: #fff; font-size: 10px;
    font-weight: 800; padding: 3px; text-align: center;
}
.elan-img-thumb img { width: 100%; height: 100%; object-fit: cover; }
.elan-img-thumb__del {
    position: absolute; top: 4px; right: 4px;
    background: rgba(220,38,38,.9); color: #fff;
    width: 20px; height: 20px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 12px; cursor: pointer; font-weight: 700;
    opacity: 0; transition: opacity .15s;
}
.elan-img-thumb:hover .elan-img-thumb__del { opacity: 1; }

/* Responsive */
@media (max-width: 768px) {
    .elan-listings-page { flex-direction: column; }
    .elan-listings-sidebar { width: 100%; position: static; }
    .elan-vitrin-brands { display: none; }
    .elan-vitrin-grid { grid-template-columns: repeat(2, 1fr); }
    .elan-listings-grid { grid-template-columns: repeat(2, 1fr); }
    .elan-single-layout { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
    .elan-vitrin-grid, .elan-listings-grid { grid-template-columns: 1fr; }
    .elan-buy-box__actions { grid-template-columns: 1fr; }
}

/* ============================================================
   SALES TAB & WC ORDER MESSAGE BUTTON
   ============================================================ */
.elan-sales-stats {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 20px;
}
.elan-sale-stat {
    background: var(--elan-surface); border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius); padding: 18px 22px; text-align: center;
    box-shadow: var(--elan-shadow-sm);
}
.elan-sale-stat__num   { font-size: 28px; font-weight: 900; color: var(--elan-primary); display: block; }
.elan-sale-stat__label { font-size: 12px; color: var(--elan-muted); font-weight: 600; }

/* WC order actions */
.woocommerce-orders-table__cell-order-actions .button.elan_message_seller,
.woocommerce-MyAccount-orders .elan_message_seller {
    background: var(--elan-primary) !important;
    color: #fff !important;
    border-color: var(--elan-primary) !important;
}
.woocommerce-MyAccount-orders .elan_message_seller:hover {
    background: var(--elan-primary-h) !important;
}

/* Message button in orders table */
.elan-order-msg-btn {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 14px; background: var(--elan-primary); color: #fff;
    border-radius: var(--elan-radius-sm); font-size: 13px; font-weight: 700;
    text-decoration: none; transition: background .2s; border: none; cursor: pointer;
}
.elan-order-msg-btn:hover { background: var(--elan-primary-h); color: #fff; }

/* ============================================================
   UPDATED STYLES v3.1 — AZ + SVG + Modern Design
   ============================================================ */

/* Spin animation for loading */
@keyframes elan-spin { to { transform: rotate(360deg); } }
.elan-spin { animation: elan-spin 0.8s linear infinite; display: inline-block; vertical-align: middle; }
.elan-spin-wrap { display: inline-flex; align-items: center; justify-content: center; }

/* ── STEPS REDESIGN — covered by main block above ── */

.elan-step.active .elan-step__icon {
    background: var(--elan-primary); border-color: var(--elan-primary);
    color: #fff; box-shadow: 0 4px 12px rgba(0,103,237,.3);
}
.elan-step__info { display: none; }
@media(min-width:640px) { .elan-step__info { display: block; } }
.elan-step__label { display: block; font-size: 13px; font-weight: 700; color: var(--elan-text); }
.elan-step__sub   { display: block; font-size: 11px; color: var(--elan-muted); }
.elan-step.active .elan-step__label { color: var(--elan-primary); }

/* ── STEP DONE (completed) state ── */
.elan-step.completed,
.elan-step.done {
    opacity: 1 !important;
    background: #fff !important;
    color: var(--elan-primary) !important;
}
.elan-step.completed .elan-step__icon,
.elan-step.done .elan-step__icon {
    background: var(--elan-primary) !important;
    color: #fff !important;
    box-shadow: 0 4px 12px rgba(0,103,237,.25) !important;
}
.elan-step.completed .elan-step__icon .elan-step__icon-default,
.elan-step.done .elan-step__icon .elan-step__icon-default { display: none !important; }
.elan-step.completed .elan-step__icon .elan-step__icon-check,
.elan-step.done .elan-step__icon .elan-step__icon-check { display: block !important; stroke: #fff; }
.elan-step.completed .elan-step__label,
.elan-step.done .elan-step__label { color: var(--elan-primary); }
/* Divider turns blue when the step before it is done */
.elan-step-divider.done,
.elan-step-divider.completed {
    background: var(--elan-primary) !important;
    opacity: 1 !important;
}

/* ── No-arrow select (for edit form category) ── */
.elan-select-wrap--no-arrow { position: relative; }
.elan-select-wrap--no-arrow .elan-select { padding-left: 14px !important; }

/* ── STEP CONNECTOR: line + checkmark between steps ── */
.elan-step-connector {
    display: flex !important;
    align-items: center !important;
    flex: 1 !important;
    min-width: 60px !important;
}
.elan-step-connector__line {
    flex: 1 !important;
    height: 2px !important;
    background: var(--elan-border) !important;
    transition: background .3s !important;
}
.elan-step-connector__check {
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    background: var(--elan-border) !important;
    border: 2px solid var(--elan-border) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    color: #fff !important;
    transition: all .3s !important;
    opacity: .5 !important;
}
/* When connector is completed — everything turns blue */
.elan-step-connector.completed .elan-step-connector__line--left,
.elan-step-connector.completed .elan-step-connector__line--right {
    background: var(--elan-primary) !important;
}
.elan-step-connector.completed .elan-step-connector__check {
    background: var(--elan-primary) !important;
    border-color: var(--elan-primary) !important;
    opacity: 1 !important;
    box-shadow: 0 2px 8px rgba(0,103,237,.35) !important;
}
/* When active step is reached — left line turns blue, right stays grey */
.elan-step-connector.half .elan-step-connector__line--left {
    background: var(--elan-primary) !important;
}
.elan-step-connector.half .elan-step-connector__check {
    background: var(--elan-primary) !important;
    border-color: var(--elan-primary) !important;
    opacity: 1 !important;
    box-shadow: 0 2px 8px rgba(0,103,237,.35) !important;
}

/* ── FORM SECTION TITLE ── */
.elan-form__section-title {
    font-size: 18px; font-weight: 800; color: var(--elan-text);
    margin: 0 0 20px; padding-bottom: 12px;
    border-bottom: 2px solid var(--elan-border);
    display: flex; align-items: center; gap: 8px;
}

/* ── CAT OPTION ── */
.elan-cat-option {
    display: flex; align-items: center; gap: 10px;
    padding: 12px 14px; border-radius: 10px;
    border: 1.5px solid var(--elan-border);
    background: var(--elan-surface); cursor: pointer;
    transition: all .15s;
}
.elan-cat-option:hover { border-color: var(--elan-primary); background: var(--elan-primary-light); }
.elan-cat-option.selected {
    border-color: var(--elan-primary); background: var(--elan-primary-light);
    box-shadow: 0 0 0 3px rgba(0,103,237,.15);
}
.elan-cat-option__icon {
    width: 36px; height: 36px; border-radius: 8px;
    background: var(--elan-surface2); flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    font-size: 18px; overflow: hidden;
}
.elan-cat-option__icon img { width: 100%; height: 100%; object-fit: cover; }
.elan-cat-option__name { font-size: 12px; font-weight: 600; color: var(--elan-text); flex: 1; min-width: 0; word-break: break-word; line-height: 1.3; }
.elan-cat-option__count {
    font-size: 11px; font-weight: 700; color: var(--elan-muted);
    background: var(--elan-surface2); padding: 2px 7px; border-radius: 50px;
}
.elan-empty-msg { color: var(--elan-muted); padding: 20px; font-size: 14px; }

/* ── SEARCH WRAP ── */
.elan-search-wrap {
    position: relative; margin-bottom: 16px;
}
.elan-search-wrap svg {
    position: absolute; left: 14px; top: 50%; transform: translateY(-50%);
    color: var(--elan-muted); pointer-events: none; z-index: 1;
}
.elan-search-wrap input,
.elan-search-wrap .elan-input { padding-left: 42px !important; }
/* Extra specificity to beat theme + reset */
.elan-form-container .elan-search-wrap input,
.elan-form-container .elan-search-wrap .elan-input,
#elan-cat-search { padding-left: 42px !important; }

/* ── RADIO CARDS ── */
.elan-radio-group { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.elan-radio-card { cursor: pointer; }
.elan-radio-card input { position: absolute; opacity: 0; pointer-events: none; }
.elan-radio-card__inner {
    display: flex; align-items: center; gap: 12px;
    padding: 14px 16px; border-radius: var(--elan-radius-sm);
    border: 2px solid var(--elan-border); background: var(--elan-surface);
    transition: all .15s; font-size: 14px; font-weight: 600;
}
.elan-radio-card input:checked + .elan-radio-card__inner {
    border-color: var(--elan-primary); background: var(--elan-primary-light);
    box-shadow: 0 0 0 3px rgba(0,103,237,.12);
}
.elan-radio-card__icon {
    width: 38px; height: 38px; border-radius: 8px;
    background: var(--elan-surface2); display: flex; align-items: center; justify-content: center;
    color: var(--elan-primary); flex-shrink: 0;
}
.elan-radio-card input:checked + .elan-radio-card__inner .elan-radio-card__icon {
    background: var(--elan-primary); color: #fff;
}
@media(max-width:480px) { .elan-radio-group { grid-template-columns: 1fr; } }

/* ── SELECT WRAP ── */
.elan-select-wrap {
    position: relative;
}
.elan-select-wrap > svg {
    position: absolute; left: 12px; top: 50%; transform: translateY(-50%);
    color: var(--elan-muted); pointer-events: none;
}
.elan-select-wrap .elan-select { padding-left: 34px; }

/* ── IMAGE UPLOAD ZONE ── */
.elan-img-upload-zone {
    border: 2px dashed var(--elan-border); border-radius: var(--elan-radius);
    background: var(--elan-surface2); cursor: pointer;
    transition: border-color .2s, background .2s;
    margin-bottom: 12px;
}
.elan-img-upload-zone:hover, .elan-img-upload-zone.dragover {
    border-color: var(--elan-primary); background: var(--elan-primary-light);
}
.elan-img-upload-zone__body {
    padding: 20px 16px; text-align: center;
}
.elan-img-upload-zone__svg { margin-bottom: 12px; }
.elan-img-upload-zone__title {
    font-size: 15px; font-weight: 700; color: var(--elan-primary); margin: 0 0 6px;
}
.elan-img-upload-zone__sub { font-size: 13px; color: var(--elan-muted); margin: 0; }

/* ── IMG THUMB ── */
.elan-img-preview-grid {
    display: grid; grid-template-columns: repeat(5,1fr);
    gap: 8px; margin-bottom: 12px;
}
.elan-img-thumb {
    aspect-ratio: 1; border-radius: 8px; overflow: hidden;
    position: relative; border: 2px solid var(--elan-border);
}
.elan-img-thumb.is-cover { border-color: var(--elan-primary); }
.elan-img-thumb.is-cover::after {
    content: 'Kapak'; position: absolute; bottom: 0; left: 0; right: 0;
    background: var(--elan-primary); color: #fff; font-size: 9px;
    font-weight: 800; padding: 3px; text-align: center;
    text-transform: uppercase; letter-spacing: .04em;
}
.elan-img-thumb img { width: 100%; height: 100%; object-fit: cover; }
.elan-img-thumb__del {
    position: absolute; top: 4px; right: 4px;
    background: rgba(220,38,38,.9); color: #fff;
    width: 22px; height: 22px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 12px; cursor: pointer; font-weight: 700;
    opacity: 0; transition: opacity .15s;
}
.elan-img-thumb:hover .elan-img-thumb__del { opacity: 1; }
.elan-img-uploading {
    position: absolute; inset: 0; background: rgba(255,255,255,.7);
    display: flex; align-items: center; justify-content: center;
}
.elan-img-uploading::after {
    content: ''; width: 20px; height: 20px; border-radius: 50%;
    border: 2.5px solid var(--elan-border); border-top-color: var(--elan-primary);
    animation: elan-spin .7s linear infinite;
}
@media(max-width:480px) { .elan-img-preview-grid { grid-template-columns: repeat(3,1fr); } }

/* ── SUMMARY CARD ── */
.elan-summary-card {
    background: var(--elan-surface); border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius); padding: 20px 22px;
    margin-bottom: 20px; box-shadow: var(--elan-shadow-sm);
}
.elan-summary-card h4 {
    font-size: 14px; font-weight: 800; color: var(--elan-text);
    margin: 0 0 14px; display: flex; align-items: center; gap: 6px;
}
.elan-summary-row {
    display: flex; align-items: center; justify-content: space-between;
    padding: 8px 0; border-bottom: 1px solid var(--elan-border);
    font-size: 14px;
}
.elan-summary-row:last-child { border-bottom: none; }
.elan-summary-row span { color: var(--elan-muted); }
.elan-summary-row strong { color: var(--elan-text); font-weight: 700; }

/* ── TERMS BOX ── */
.elan-terms-box {
    background: #eff6ff; border: 1.5px solid #bfdbfe;
    border-radius: var(--elan-radius-sm); padding: 18px 20px;
    margin-bottom: 20px; display: flex; gap: 14px; align-items: flex-start;
}
.elan-terms-box__icon {
    width: 36px; height: 36px; border-radius: 8px;
    background: var(--elan-primary); color: #fff;
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.elan-terms-box__content p { font-size: 14px; font-weight: 600; color: #1e40af; margin: 0 0 10px; }
.elan-terms-box__content ul { list-style: none; padding: 0; margin: 0; }
.elan-terms-box__content ul li {
    display: flex; align-items: center; gap: 6px;
    font-size: 13px; color: #1e3a8a; padding: 3px 0;
}
.elan-terms-box__content ul li svg { color: #1d4ed8; flex-shrink: 0; }
.elan-terms-box__content a { color: var(--elan-primary); font-weight: 700; }

/* ── CHECKBOX ── */
.elan-checkbox-label {
    display: flex; align-items: center; gap: 12px;
    cursor: pointer; font-size: 14px; margin-bottom: 24px; user-select: none;
}
.elan-checkbox-custom {
    width: 20px; height: 20px; border-radius: 5px;
    border: 2px solid var(--elan-border); background: var(--elan-surface);
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0; transition: all .15s;
}
.elan-checkbox-label input { position: absolute; opacity: 0; pointer-events: none; }
.elan-checkbox-label input:checked ~ .elan-checkbox-custom {
    background: var(--elan-primary); border-color: var(--elan-primary);
}
.elan-checkbox-label input:checked ~ .elan-checkbox-custom svg { display: block; }
.elan-checkbox-custom svg { display: none; }

/* ── EDIT HEADER ── */
.elan-edit-container .elan-edit-header {
    display: flex; align-items: center; gap: 16px;
    background: var(--elan-surface); border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius); padding: 20px 24px;
    margin-bottom: 24px; box-shadow: var(--elan-shadow-sm);
}
.elan-edit-header__icon {
    width: 48px; height: 48px; border-radius: 12px;
    background: var(--elan-primary-light); border: 1.5px solid #bfdbfe;
    color: var(--elan-primary); display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.elan-edit-header h2 { font-size: 18px; font-weight: 800; margin: 0 0 3px; }
.elan-edit-header p { font-size: 13px; color: var(--elan-muted); margin: 0; }
.elan-edit-pending-badge {
    margin-left: auto; display: flex; align-items: center; gap: 6px;
    padding: 7px 14px; background: #fff8ed; border: 1.5px solid #fcd34d;
    border-radius: var(--elan-radius-sm); font-size: 12px; font-weight: 700; color: #92400e;
    white-space: nowrap; flex-shrink: 0;
}

/* ── PENDING NOTICE ── */
.elan-pending-notice {
    display: flex; align-items: flex-start; gap: 12px;
    background: #fff8ed; border: 1.5px solid #fde68a;
    border-radius: var(--elan-radius-sm); padding: 14px 18px; margin-bottom: 20px;
    font-size: 13px; color: #92400e;
}
.elan-pending-notice svg { flex-shrink: 0; margin-top: 1px; }
.elan-pending-notice p { margin: 4px 0 0; }

/* ── FORM FIELDS ── */
.elan-field { margin-bottom: 20px; }
.elan-field label {
    display: block; font-size: 13px; font-weight: 700; color: var(--elan-text);
    margin-bottom: 7px;
}
.elan-input {
    width: 100%; padding: 11px 14px;
    background: var(--elan-surface); color: var(--elan-text);
    border: 1.5px solid var(--elan-border); border-radius: var(--elan-radius-sm);
    font-size: 14px; font-family: inherit; outline: none;
    transition: border-color .2s, box-shadow .2s;
}
.elan-input:focus { border-color: var(--elan-primary); box-shadow: 0 0 0 3px rgba(0,103,237,.1); }
.elan-input-icon {
    position: relative;
}
.elan-input-icon > svg {
    position: absolute; left: 12px; top: 50%; transform: translateY(-50%);
    color: var(--elan-muted); pointer-events: none;
}
.elan-input-icon .elan-input { padding-left: 34px; }
.elan-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media(max-width:540px) { .elan-field-row { grid-template-columns: 1fr; } }
.req { color: var(--elan-danger); }
.elan-char-count { font-weight: 400; color: var(--elan-muted); margin-left: 6px; }

/* ── EDITOR ── */
.elan-editor {
    border: 1.5px solid var(--elan-border); border-radius: var(--elan-radius-sm);
    background: var(--elan-surface); overflow: hidden;
    transition: border-color .2s;
}
.elan-editor:focus-within { border-color: var(--elan-primary); box-shadow: 0 0 0 3px rgba(0,103,237,.1); }
.elan-editor__toolbar {
    display: flex; gap: 2px; padding: 8px 10px;
    border-bottom: 1px solid var(--elan-border); background: var(--elan-surface2);
    flex-wrap: wrap;
}
.elan-editor__toolbar button {
    width: 30px; height: 30px; border: none; background: transparent;
    border-radius: 5px; cursor: pointer; color: var(--elan-text);
    display: flex; align-items: center; justify-content: center;
    font-size: 13px; transition: background .15s;
}
.elan-editor__toolbar button:hover { background: var(--elan-primary-light); color: var(--elan-primary); }
.elan-editor__content {
    min-height: 140px; padding: 14px; font-size: 14px;
    color: var(--elan-text); line-height: 1.6; outline: none;
}
.elan-editor__content:empty::before {
    content: attr(data-placeholder); color: var(--elan-muted); pointer-events: none;
}

/* ── NAV BUTTONS ── */
.elan-form-nav { display: flex; justify-content: flex-end; gap: 12px; margin-top: 24px; }
.elan-form-nav--spaced { justify-content: space-between; }
.elan-btn {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 12px 24px; border-radius: var(--elan-radius-sm);
    font-size: 14px; font-weight: 700; cursor: pointer;
    border: none; transition: all .2s; font-family: inherit;
    text-decoration: none; line-height: 1;
}
.elan-btn--primary { background: var(--elan-primary); color: #fff; box-shadow: 0 4px 12px rgba(0,103,237,.25); }
.elan-btn--primary:hover { background: var(--elan-primary-h); transform: translateY(-1px); }
.elan-btn--ghost {
    background: var(--elan-surface); color: var(--elan-text);
    border: 1.5px solid var(--elan-border);
}
.elan-btn--ghost:hover { border-color: var(--elan-primary); color: var(--elan-primary); }
.elan-btn--success { background: #16a34a; color: #fff; box-shadow: 0 4px 12px rgba(22,163,74,.25); }
.elan-btn--success:hover { background: #15803d; }
.elan-btn--success:disabled, .elan-btn--primary:disabled { opacity: .7; cursor: not-allowed; transform: none; }
.elan-btn-text {
    background: none; border: none; color: var(--elan-primary);
    font-size: 12px; font-weight: 600; cursor: pointer; padding: 0;
    display: inline-flex; align-items: center; gap: 4px;
    text-decoration: underline; font-family: inherit;
}

/* ── SELECTED CAT BAR ── */
.elan-selected-cat-bar {
    display: flex; align-items: center; gap: 8px;
    background: var(--elan-primary-light); border: 1.5px solid #bfdbfe;
    border-radius: var(--elan-radius-sm); padding: 10px 14px;
    margin-bottom: 20px; font-size: 13px; color: #1e40af;
}
.elan-selected-cat-bar strong { font-weight: 800; }

/* ── STANDALONE FORM PAGE (elan-yerlesdir) ── */
.elanlar-wrapper .elan-form-container {
    max-width: 860px;
    margin: 0 auto;
}
.elan-steps {
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
}

.elan-dashboard__header {
    display: flex; align-items: center; justify-content: space-between;
    flex-wrap: wrap; gap: 16px; margin-bottom: 24px;
}
.elan-dashboard__user { display: flex; align-items: center; gap: 16px; }
.elan-dashboard__user h2 { font-size: 18px; font-weight: 800; margin: 0 0 2px; }
.elan-dashboard__user span { font-size: 13px; color: var(--elan-muted); }
.elan-stats {
    display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; margin-bottom: 24px;
}
.elan-stat-card {
    background: var(--elan-surface); border: 1.5px solid var(--elan-border);
    border-radius: var(--elan-radius); padding: 16px 20px;
    display: flex; align-items: center; gap: 14px;
    box-shadow: var(--elan-shadow-sm);
}
.elan-stat-card__num { font-size: 24px; font-weight: 900; color: var(--elan-primary); display: block; }
.elan-stat-card__label { font-size: 12px; color: var(--elan-muted); display: block; }
@media(max-width:600px) { .elan-stats { grid-template-columns: 1fr 1fr; } }

/* ── TABS ── */
.elan-tabs {
    display: flex; gap: 0; border-bottom: 2px solid var(--elan-border);
    margin-bottom: 20px; overflow-x: auto; -webkit-overflow-scrolling: touch;
}
.elan-tab {
    padding: 11px 20px; font-size: 13px; font-weight: 700; white-space: nowrap;
    color: var(--elan-muted); text-decoration: none; border-bottom: 2px solid transparent;
    margin-bottom: -2px; transition: all .15s; cursor: pointer;
}
.elan-tab:hover { color: var(--elan-primary); border-bottom-color: var(--elan-primary); }
.elan-tab.active { color: var(--elan-primary); border-bottom-color: var(--elan-primary); }
.elan-tab.active:hover { color: var(--elan-primary); }

/* ── TABLE ── */
.elan-table-wrap { overflow-x: auto; }
.elan-table {
    width: 100%; border-collapse: collapse; font-size: 13px;
}
.elan-table th, .elan-table td {
    padding: 12px 14px; text-align: left;
    border-bottom: 1px solid var(--elan-border);
}
.elan-table th { font-weight: 700; color: var(--elan-muted); font-size: 11px; text-transform: uppercase; letter-spacing: .06em; }
.elan-table tr:hover td { background: var(--elan-surface2); }

/* ── MOBILE RESPONSIVE SINGLE ── */
@media(max-width:768px) {
    .elan-single-layout { grid-template-columns: 1fr !important; }
    .elan-single-title { font-size: 18px; }
    .elan-buy-box__actions { grid-template-columns: 1fr; }
    .elan-seller-card__actions { grid-template-columns: 1fr; }
    .elan-gallery { position: static; }
    .elan-steps { padding: 16px; }
    .elan-form-container { padding: 18px 14px; }
}
@media(max-width:480px) {
    .elan-stats { grid-template-columns: 1fr; }
    .elan-img-preview-grid { grid-template-columns: repeat(3,1fr); }
}

/* ── PRICE STYLING — like valyutamobile shop ── */
.edc-price .edc-cur { font-size: 11px; font-weight: 900; vertical-align: super; line-height: 1; margin-right: 1px; }
.edc-price-wrap { display: flex; align-items: baseline; gap: 2px; }
.elan-dcard__price .edc-cur { font-size: 12px; vertical-align: super; }

/* Delivery badges in table */
.badge { display: inline-flex; align-items: center; gap: 4px; padding: 3px 9px; border-radius: 50px; font-size: 11px; font-weight: 700; }
.badge--auto   { background: rgba(16,185,129,.12); color: #065f46; }
.badge--manual { background: rgba(245,158,11,.10); color: #92400e; }

/* Promote button */
.elan-promote-btn {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 16px; background: var(--elan-primary); color: #fff;
    border: none; border-radius: 50px; font-size: 12px; font-weight: 700;
    cursor: pointer; transition: all .15s; white-space: nowrap;
}
.elan-promote-btn:hover { background: var(--elan-primary-h); }

/* Status badges */
.elan-status { display: inline-flex; align-items: center; gap: 4px; padding: 3px 9px; border-radius: 50px; font-size: 11px; font-weight: 700; }
.elan-status--active  { background: rgba(16,185,129,.12); color: #065f46; }
.elan-status--pending { background: rgba(245,158,11,.10); color: #92400e; }
.elan-status--trash   { background: rgba(220,38,38,.08); color: #dc2626; }
.elan-status--rejected{ background: rgba(220,38,38,.1); color: #991b1b; }

/* Price currency superscript */
.edc-cur, .elan-dcard__price sup {
    font-size: 11px; font-weight: 900; line-height: 1;
    vertical-align: super; margin-right: 1px;
}
.elan-dcard__price {
    display: flex !important; align-items: flex-start; gap: 1px;
}

/* ============================================================
   v3.4.2 FULL REDESIGN — Mobile-first, better UX, clean type
   ============================================================ */

/* ── GLOBAL FONT WEIGHT RESET — less heavy ── */
.elanlar-wrapper,
.elan-form-container,
.elan-dashboard,
.elan-modal__box {
    font-weight: 400 !important;
}
.elan-form-container label,
.elan-dashboard .elan-table th { font-weight: 600 !important; }

/* ── PROMOTE BUTTON — clean, precise ── */
.elan-promote-btn {
    font-family: 'Roboto', -apple-system, sans-serif !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    letter-spacing: 0.02em !important;
    padding: 7px 14px !important;
    border-radius: 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    white-space: nowrap !important;
    line-height: 1.4 !important;
    background: linear-gradient(135deg, #0067ed, #0ea5e9) !important;
    color: #fff !important;
    border: none !important;
    cursor: pointer !important;
    transition: opacity .2s, transform .2s !important;
    box-shadow: 0 2px 8px rgba(0,103,237,.25) !important;
}
.elan-promote-btn:hover {
    opacity: .9 !important;
    transform: translateY(-1px) !important;
}
.elan-promote-btn svg { flex-shrink: 0; }

/* ── MODAL CLOSE BUTTON — fully isolated from theme ── */
#elan-promote-modal .elan-modal__close,
#elan-view-modal .elan-modal__close,
#elan-edit-modal .elan-modal__close,
.elan-modal .elan-modal__close {
    all: unset !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: #f3f4f6 !important;
    border: 1.5px solid #e5e7eb !important;
    color: #6b7280 !important;
    font-size: 16px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    transition: background .15s, color .15s !important;
    flex-shrink: 0 !important;
    font-family: Arial, sans-serif !important;
}
.elan-modal .elan-modal__close:hover {
    background: #fef2f2 !important;
    color: #dc2626 !important;
    border-color: #fca5a5 !important;
}

/* ── MODAL HEADER — better spacing ── */
.elan-modal__header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 20px 22px 16px !important;
    border-bottom: 1.5px solid var(--elan-border) !important;
    gap: 12px !important;
}
.elan-modal__header h3 {
    margin: 0 !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: var(--elan-text) !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    line-height: 1.3 !important;
}
.elan-modal__subtitle {
    padding: 12px 22px !important;
    color: var(--elan-muted) !important;
    font-size: 13px !important;
    margin: 0 !important;
    border-bottom: 1px solid var(--elan-border) !important;
    line-height: 1.5 !important;
}

/* ── MODAL BOX — base ── */
.elan-modal__box {
    border-radius: 16px !important;
    max-height: 92vh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

/* ── Quick-view modal: always single column on mobile ── */
#elan-view-modal-body > div {
    display: block !important;
}
@media(min-width: 601px) {
    #elan-view-modal-body > div {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 20px !important;
        align-items: start !important;
    }
}
/* Action buttons — always full width, never clip */
#elan-view-modal-body a {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    white-space: normal !important;
}

/* ── MOBILE: bottom sheet, fills screen properly ── */
@media(max-width: 600px) {
    .elan-modal {
        padding: 0 !important;
        align-items: flex-end !important;
    }
    .elan-modal__box {
        border-radius: 20px 20px 0 0 !important;
        /* Use dvh for modern browsers, fall back to svh then vh */
        max-height: 92dvh !important;
        max-height: 92svh !important;
        max-height: 92vh !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        animation: modalInMobile .25s ease-out !important;
    }
    @keyframes modalInMobile {
        from { transform: translateY(60px); opacity: 0; }
        to   { transform: translateY(0);    opacity: 1; }
    }
    /* Header stays fixed inside modal so title always visible */
    .elan-modal__box .elan-modal__header {
        position: sticky !important;
        top: 0 !important;
        z-index: 10 !important;
        background: var(--elan-surface, #fff) !important;
    }
    /* Image inside view modal — don't take up too much space */
    #elan-view-modal-body img:not(.elan-view-thumb) {
        max-height: 200px !important;
        object-fit: contain !important;
    }
    /* Padding inside body */
    #elan-view-modal-body {
        padding: 12px !important;
    }
}

/* Extra small phones (iPhone SE, Galaxy A series etc.) */
@media(max-width: 375px) {
    .elan-modal__box {
        max-height: 96vh !important;
        max-height: 96dvh !important;
    }
    #elan-view-modal-body img:not(.elan-view-thumb) {
        max-height: 160px !important;
    }
    .elan-modal__header h3 {
        font-size: 14px !important;
    }
}

/* ── PACKAGE CARDS — better layout ── */
.elan-packages-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)) !important;
    gap: 14px !important;
    padding: 18px 22px !important;
}
@media(max-width: 520px) {
    .elan-packages-grid { grid-template-columns: 1fr !important; }
}
.elan-pkg-card {
    border-radius: 12px !important;
    transition: transform .2s, box-shadow .2s !important;
    display: flex !important; flex-direction: column !important;
}
.elan-pkg-card__features { flex: 1 !important; }
.elan-pkg-card:hover { transform: translateY(-3px) !important; }
.elan-pkg-card__header { padding: 14px 14px 10px !important; }
.elan-pkg-card__header h4 { font-size: 14px !important; font-weight: 700 !important; }
.elan-pkg-card__price {
    font-size: 16px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}
.elan-pkg-card__features { padding: 10px 14px 12px !important; }
.elan-pkg-card__features li { font-size: 12px !important; line-height: 1.6 !important; }
.elan-pkg-select-btn {
    padding: 11px 14px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #fff !important;
    background: var(--pkg-color, #0067ed) !important;
    border-radius: 0 0 10px 10px !important;
}

/* ── SINGLE PAGE — price spacing from title ── */
.elan-single-title {
    margin-bottom: 10px !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}
.elan-buy-box {
    border-radius: 14px !important;
    padding: 18px !important;
}
.elan-buy-box__price {
    font-size: 28px !important;
    font-weight: 900 !important;
    color: var(--elan-primary) !important;
    margin-bottom: 14px !important;
    padding-bottom: 14px !important;
    border-bottom: 1.5px solid var(--elan-border) !important;
    display: flex !important;
    align-items: baseline !important;
    gap: 3px !important;
    letter-spacing: -0.03em !important;
}

/* ── DESCRIPTION — "Açıqlama" header + scrollable ── */
.elan-single-tab-content[data-tab="detail"] { position: relative; }
.elan-tab-desc-inner {
    max-height: 400px;
    overflow-y: auto;
    padding-right: 6px;
    scroll-behavior: smooth;
}
.elan-tab-desc-inner::-webkit-scrollbar { width: 5px; }
.elan-tab-desc-inner::-webkit-scrollbar-track { background: var(--elan-surface2); border-radius: 10px; }
.elan-tab-desc-inner::-webkit-scrollbar-thumb { background: #c7d9f5; border-radius: 10px; }
.elan-tab-desc-inner::-webkit-scrollbar-thumb:hover { background: var(--elan-primary); }

.elan-desc-header {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 700;
    color: var(--elan-text);
    padding: 10px 0 14px;
    border-bottom: 1.5px solid var(--elan-border);
    margin-bottom: 14px;
    letter-spacing: 0.01em;
}

/* ── CONTACT / MESAJ GÖNDƏRMƏSİ — full redesign ── */
.elan-contact-box {
    border-radius: 14px !important;
    padding: 0 !important;
    margin-top: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}
.elan-msg-form-card {
    background: var(--elan-surface2);
    border: 1.5px solid var(--elan-border);
    border-radius: 12px;
    overflow: hidden;
    margin-top: 14px;
}
.elan-msg-form-card__header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    background: var(--elan-surface);
    border-bottom: 1px solid var(--elan-border);
    font-size: 13px;
    font-weight: 600;
    color: var(--elan-text);
}
.elan-msg-form-card__header svg { color: var(--elan-primary); flex-shrink: 0; }
.elan-msg-form-card__body { padding: 12px 14px; }
.elan-msg-form-card textarea.elan-input {
    border-radius: 8px !important;
    font-size: 13px !important;
    padding: 10px 12px !important;
    resize: none !important;
    min-height: 80px !important;
    line-height: 1.5 !important;
    background: var(--elan-surface) !important;
    transition: border-color .2s, box-shadow .2s !important;
    margin-bottom: 10px !important;
    display: block !important;
    width: 100% !important;
}
.elan-msg-form-card textarea.elan-input:focus {
    border-color: var(--elan-primary) !important;
    box-shadow: 0 0 0 3px rgba(0,103,237,.1) !important;
}
.elan-msg-send-btn {
    width: 100% !important;
    justify-content: center !important;
    padding: 11px 16px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
    background: var(--elan-primary) !important;
    color: #fff !important;
    border: none !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    transition: background .2s !important;
    font-family: inherit !important;
    letter-spacing: 0.01em !important;
}
.elan-msg-send-btn:hover { background: var(--elan-primary-h) !important; }

/* ── SELLER CARD — cleaner layout ── */
.elan-seller-card {
    border-radius: 14px !important;
    padding: 16px !important;
}
.elan-seller-card__top {
    margin-bottom: 12px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid var(--elan-border) !important;
}
.elan-seller-card__avatar {
    width: 46px !important;
    height: 46px !important;
    border-width: 2px !important;
}

/* ── FORM CONTAINER — mobile padding ── */
@media(max-width: 600px) {
    .elan-form-container {
        padding: 16px 14px !important;
        border-radius: 12px !important;
        margin: 0 !important;
        border-left: none !important;
        border-right: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
    .elanlar-wrapper {
        padding: 0 !important;
    }
    .elan-steps {
        padding: 14px 12px !important;
        gap: 0 !important;
        overflow-x: hidden !important;
    }
    .elan-step { padding: 6px 8px !important; }
    .elan-step__icon { width: 34px !important; height: 34px !important; }
    .elan-step-divider { margin: 0 6px !important; }
    .elan-field-row { grid-template-columns: 1fr !important; }
    .elan-cat-grid { grid-template-columns: 1fr 1fr !important; gap: 8px !important; }
    .elan-img-preview-grid { grid-template-columns: repeat(3, 1fr) !important; }
    .elan-radio-group { grid-template-columns: 1fr !important; }
    .elan-form-nav { flex-direction: column !important; gap: 8px !important; }
    .elan-form-nav .elan-btn { width: 100% !important; justify-content: center !important; }
}

/* ── SINGLE PAGE MOBILE ── */
@media(max-width: 600px) {
    .elan-single { padding: 0 12px !important; }
    .elan-single-layout { grid-template-columns: 1fr !important; gap: 16px !important; }
    .elan-gallery { position: static !important; }
    .elan-gallery__main { aspect-ratio: 4/3 !important; border-radius: 12px !important; }
    .elan-gallery__thumb { width: 54px !important; height: 42px !important; }
    .elan-single-title { font-size: 17px !important; }
    .elan-buy-box__price { font-size: 24px !important; }
    .elan-buy-box { padding: 14px !important; }
    .elan-buy-box__actions { grid-template-columns: 1fr !important; }
    .elan-buy-btn { padding: 12px 10px !important; font-size: 14px !important; }
    .elan-single-meta { gap: 10px !important; flex-wrap: wrap !important; }
    .elan-single-badges { gap: 6px !important; }
    .elan-single-badge { font-size: 11px !important; padding: 5px 10px !important; }
    .elan-single-urgency { font-size: 12px !important; padding: 8px 12px !important; }
    .elan-seller-card__stats { grid-template-columns: 1fr 1fr !important; }
    .elan-seller-card__actions { grid-template-columns: 1fr !important; }
    .elan-tab-desc-inner { max-height: 260px !important; }
}

/* ── DASHBOARD TABLE MOBILE ── */
@media(max-width: 768px) {
    .elan-dashboard { padding: 0 !important; }
    .elan-dashboard__header {
        border-radius: 0 !important;
        border-left: none !important;
        border-right: none !important;
        padding: 16px 14px !important;
    }
    .elan-stats { grid-template-columns: 1fr 1fr !important; gap: 10px !important; margin-bottom: 16px !important; }
    .elan-stat-card { padding: 14px !important; gap: 10px !important; }
    .elan-stat-card__num { font-size: 20px !important; }
    .elan-tabs { gap: 0 !important; border-bottom-width: 1.5px !important; }
    .elan-tab { padding: 10px 14px !important; font-size: 12px !important; }
    .elan-table-wrap { border-radius: 0 !important; border-left: none !important; border-right: none !important; }
    .elan-table th, .elan-table td { padding: 10px 10px !important; }
    /* Hide less important columns on mobile */
    .elan-table .col-hide-mobile { display: none !important; }
    /* Title column — narrower on mobile but still truncated */
    .elan-table td:first-child,
    .elan-table th:first-child { min-width: 120px !important; max-width: 150px !important; width: 150px !important; }
    .elan-table__title { max-width: 140px !important; }
    /* Price always on one line */
    .elan-table td:nth-child(3),
    .elan-table th:nth-child(3) { white-space: nowrap !important; }
    .elan-price { white-space: nowrap !important; }
    .elanlar-wrapper { padding: 16px 0 !important; }
}
@media(max-width: 480px) {
    .elan-stats { grid-template-columns: 1fr !important; }
    .elan-dashboard__user h2 { font-size: 16px !important; }
}

/* ── LISTINGS PAGE MOBILE ── */
@media(max-width: 768px) {
    .elan-listings-page { flex-direction: column !important; gap: 16px !important; }
    .elan-listings-sidebar { width: 100% !important; position: static !important; }
    .elan-listings-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }
    .elan-listings-topbar { gap: 8px !important; }
    .elan-listings-topbar__search { min-width: 0 !important; }
}
@media(max-width: 420px) {
    .elan-listings-grid { grid-template-columns: 1fr !important; }
    .elan-dcard__price { font-size: 17px !important; }
}

/* ── VITRIN GRID MOBILE ── */
@media(max-width: 600px) {
    .elan-vitrin-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }
    .elan-dcard__body { padding: 10px 10px 12px !important; }
    .elan-dcard__title { font-size: 12px !important; }
    .elan-dcard__price { font-size: 16px !important; }
    .elan-vitrin-nav { padding-bottom: 16px !important; gap: 6px !important; }
    .elan-vitrin-nav__tab { padding: 8px 14px !important; font-size: 13px !important; }
}
@media(max-width: 380px) {
    .elan-vitrin-grid { grid-template-columns: 1fr !important; }
}

/* ── INBOX / CHAT MOBILE ── */
@media(max-width: 600px) {
    .elan-messenger { padding: 0 !important; }
    .elan-chat-body { min-height: 280px !important; max-height: 360px !important; padding: 14px 12px !important; }
    .elan-chat-header { border-radius: 0 !important; border-left: none !important; border-right: none !important; padding: 12px 14px !important; }
    /* chat-footer border-radius handled by its own block above — do NOT reset to 0 here */
    .elan-chat-listing-link { display: none !important; }
    #elan-complaint-btn { display: flex !important; }
    .elan-conv-item { border-radius: 10px !important; padding: 12px 12px !important; }
    .elan-msg { font-size: 13px !important; padding: 9px 12px !important; }
    .elan-msg-bubble-wrap { max-width: 82% !important; }
    /* font-size 16px set in chat-footer block above to prevent iOS zoom */
}

/* ── GENERAL RESPONSIVE WRAPPER ── */
@media(max-width: 600px) {
    .elanlar-wrapper { min-height: auto !important; }
    .elan-form-container, .elan-dashboard, .elan-messenger, .elan-single { max-width: 100% !important; }
}


/* ============================================================
   v3.4.2 — PATCH 2: Screenshot fixes
   ============================================================ */

/* ── PRICE SYMBOL POSITION — after number ── */
.elan-buy-box__price {
    flex-direction: row !important;
    align-items: baseline !important;
    gap: 4px !important;
}
.elan-price-sym {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: var(--elan-primary) !important;
    line-height: 1 !important;
}
/* Also fix any inline ₼ in card prices — move symbol after */
.elan-dcard__price, .edc-price {
    direction: ltr !important;
}

/* ── TITLE → PRICE SPACING ── */
.elan-single-title {
    margin-bottom: 16px !important;
}
.elan-single-meta {
    margin-bottom: 12px !important;
}
.elan-buy-box__price {
    margin-bottom: 16px !important;
    padding-bottom: 16px !important;
}

/* ── GALLERY — no squish on mobile ── */
.elan-gallery__main {
    border-radius: 14px !important;
    overflow: hidden !important;
    background: #f0f4fa !important;
}
.elan-gallery__main img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    background: #f0f4fa !important;
    display: block !important;
}
@media(max-width: 768px) {
    .elan-gallery__main {
        aspect-ratio: 1 / 1 !important;
        max-height: 320px !important;
    }
    .elan-gallery__main img {
        object-fit: contain !important;
    }
}

/* ── STEPS — horizontal ── */
.elan-steps {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    padding: 14px 16px !important;
    gap: 0 !important;
    flex-wrap: nowrap !important;
    overflow: visible !important;
    background: var(--elan-surface) !important;
    border: 1.5px solid var(--elan-border) !important;
    border-radius: var(--elan-radius) !important;
    box-shadow: var(--elan-shadow-sm) !important;
    margin-bottom: 24px !important;
}
.elan-step {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    flex-shrink: 0 !important;
    border: none !important;
    box-shadow: none !important;
    opacity: .5 !important;
    background: transparent !important;
    border-radius: 10px !important;
    padding: 8px 14px !important;
    transition: all .2s !important;
}
.elan-step.active {
    opacity: 1 !important;
    background: var(--elan-primary-light) !important;
}
.elan-step-divider {
    flex: 1 !important;
    min-width: 16px !important;
    height: 2px !important;
    background: var(--elan-border) !important;
    margin: 0 8px !important;
    display: block !important;
}

/* Mobile: compact numbered steps */
@media(max-width: 600px) {
    .elan-steps {
        padding: 12px 12px !important;
        background: var(--elan-surface) !important;
        border: 1.5px solid var(--elan-border) !important;
        border-radius: 12px !important;
        margin-bottom: 20px !important;
    }
    .elan-step {
        flex-direction: column !important;
        align-items: center !important;
        gap: 4px !important;
        padding: 4px 6px !important;
        flex: 0 0 auto !important;
    }
    .elan-step__icon {
        width: 36px !important;
        height: 36px !important;
        border-radius: 10px !important;
        flex-shrink: 0 !important;
    }
    .elan-step__info {
        display: block !important;
        text-align: center !important;
    }
    .elan-step__label {
        font-size: 10px !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: 64px !important;
        display: block !important;
    }
    .elan-step__sub { display: none !important; }
    .elan-step-divider {
        margin: 0 4px !important;
        min-width: 12px !important;
        align-self: flex-start !important;
        margin-top: 22px !important;
    }
}

/* ── DESCRIPTION — Açıqlama header + scroll ── */
.elan-desc-header {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: var(--elan-muted) !important;
    padding: 0 0 12px !important;
    border-bottom: 1.5px solid var(--elan-border) !important;
    margin-bottom: 16px !important;
}
.elan-tab-desc-inner {
    max-height: 380px !important;
    overflow-y: auto !important;
    padding-right: 8px !important;
    -webkit-overflow-scrolling: touch !important;
}
.elan-tab-desc-inner::-webkit-scrollbar { width: 4px; }
.elan-tab-desc-inner::-webkit-scrollbar-track { background: var(--elan-surface2); border-radius: 10px; }
.elan-tab-desc-inner::-webkit-scrollbar-thumb { background: #bfdbfe; border-radius: 10px; }
.elan-tab-desc-inner::-webkit-scrollbar-thumb:hover { background: var(--elan-primary); }

.elan-tab-desc {
    font-size: 14px !important;
    line-height: 1.7 !important;
    color: var(--elan-text) !important;
    font-weight: 400 !important;
}

/* ── FORM — better mobile ── */
@media(max-width: 600px) {
    .elanlar-wrapper { padding: 12px 12px 32px !important; }
    .elan-form-container {
        padding: 16px 14px !important;
        border-radius: 14px !important;
        box-shadow: 0 2px 16px rgba(0,103,237,.08) !important;
    }
    .elan-cat-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        max-height: 340px !important;
    }
    .elan-cat-option {
        padding: 10px 10px !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 6px !important;
    }
    .elan-cat-option__count { display: none !important; }
    .elan-cat-option__icon {
        width: 40px !important;
        height: 40px !important;
        border-radius: 10px !important;
    }
    .elan-cat-option__name {
        font-size: 11px !important;
        line-height: 1.3 !important;
    }
    .elan-field-row { grid-template-columns: 1fr !important; gap: 0 !important; }
    .elan-img-preview-grid { grid-template-columns: repeat(3,1fr) !important; }
    .elan-form-nav {
        flex-direction: column-reverse !important;
        gap: 8px !important;
    }
    .elan-form-nav .elan-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 13px !important;
    }
    .elan-form__section-title { font-size: 16px !important; }
    .elan-summary-card { padding: 14px !important; }
}


/* ═══════════════════════════════════════════════════════
   COMPACT PATCH — minimal padding everywhere
═══════════════════════════════════════════════════════ */

/* Main wrapper — zero outer padding when inside WC account */
.woocommerce-MyAccount-content .elanlar-wrapper,
.woocommerce-account .elanlar-wrapper {
    padding: 0 !important;
    min-height: 0 !important;
    background: transparent !important;
}
.elanlar-wrapper { padding: 12px 0 !important; min-height: 0 !important; }

/* Dashboard */
.elan-dashboard { padding: 0 !important; }
.elan-dashboard__user { padding: 12px 14px !important; margin-bottom: 12px !important; }
.elan-stats { gap: 8px !important; margin-bottom: 12px !important; }
.elan-stat { padding: 10px 12px !important; }
.elan-stat__num { font-size: 20px !important; }
.elan-tabs { margin-bottom: 12px !important; padding-bottom: 0 !important; }
.elan-tab { padding: 8px 12px !important; font-size: 12px !important; }
.elan-table th { padding: 8px 10px !important; }
.elan-table td { padding: 8px 10px !important; }

/* Single page */
.elan-single { padding: 0 !important; }
.elan-single__buy-box { padding: 14px !important; }
.elan-single-badges { margin-bottom: 8px !important; gap: 4px !important; }
.elan-single-title { font-size: 18px !important; margin-bottom: 4px !important; }
.elan-single-price { font-size: 22px !important; margin-bottom: 10px !important; padding-bottom: 10px !important; }
.elan-seller-card { padding: 10px 12px !important; margin-bottom: 10px !important; }
.elan-desc-header { padding: 10px 0 6px !important; margin-bottom: 6px !important; }
.elan-tab-desc-inner { max-height: 280px !important; }
.elan-msg-form-card { padding: 12px !important; margin-top: 10px !important; }

/* Modal */
.elan-modal__header { padding: 14px 16px 0 !important; }
.elan-modal__subtitle { padding: 6px 16px 12px !important; font-size: 13px !important; }
.elan-modal__box { max-width: 500px !important; }
#elan-view-modal-body { padding: 0 14px 14px !important; }
#elan-edit-modal-body { padding: 0 14px 14px !important; }
.elan-packages-grid { padding: 12px !important; gap: 10px !important; }
.elan-pkg-card { padding: 0 !important; }
.elan-pkg-card__header { padding: 10px 12px !important; }
.elan-pkg-card__features { padding: 8px 12px !important; }
.elan-pkg-card__features li { padding: 3px 0 !important; font-size: 12px !important; }
.elan-pkg-card__footer { padding: 10px 12px !important; }

/* Add / Edit form */
.elan-steps { margin-bottom: 20px !important; }
.elan-form__section-title { font-size: 15px !important; margin-bottom: 12px !important; padding-bottom: 8px !important; }
.elan-field { margin-bottom: 16px !important; }
.elan-form-nav { margin-top: 16px !important; padding-top: 14px !important; }
.elan-summary-card { padding: 14px 16px !important; }
.elan-summary-row { padding: 8px 0 !important; }

/* Vitrin */
.elan-vitrin-nav { padding-bottom: 10px !important; gap: 4px !important; }
.elan-vitrin-nav__tab { padding: 6px 12px !important; font-size: 12px !important; }
.elan-vitrin-grid { gap: 10px !important; }
.elan-card { border-radius: 10px !important; }
.elan-card__body { padding: 8px 10px 10px !important; }
.elan-card__title { font-size: 13px !important; margin-bottom: 4px !important; }
.elan-card__price { font-size: 15px !important; }
.elan-card__footer { padding: 6px 10px !important; }
.elan-card__warranty { padding: 4px 10px !important; font-size: 11px !important; }

/* List / Listings */
.elan-list { gap: 8px !important; }
.elan-list-item { padding: 10px 12px !important; gap: 10px !important; }
.elan-list-item__body { padding: 0 !important; }

/* Inbox / Conversation */
.elan-inbox { padding: 0 !important; }
.elan-inbox__item { padding: 10px 12px !important; }
.elan-chat { padding: 0 !important; }
.elan-chat__header { padding: 10px 12px !important; }
.elan-chat__body { padding: 10px !important; }
.elan-chat__footer { padding: 8px 10px !important; }
.elan-msg { padding: 7px 10px !important; font-size: 13px !important; }

/* Empty states */
.elanlar-empty { padding: 28px 16px !important; }
.elanlar-empty__icon { font-size: 40px !important; margin-bottom: 8px !important; }

/* Global button compact */
.elan-btn { padding: 8px 16px !important; font-size: 13px !important; border-radius: 8px !important; }
.elan-promote-btn { padding: 6px 12px !important; font-size: 11px !important; }

/* Mobile extra compact */
@media(max-width: 768px) {
    .elanlar-wrapper { padding: 0 !important; }
    .elan-dashboard__user { padding: 10px 10px !important; }
    .elan-stats { grid-template-columns: repeat(3,1fr) !important; gap: 6px !important; }
    .elan-stat { padding: 8px !important; }
    .elan-stat__num { font-size: 17px !important; }
    .elan-table th,
    .elan-table td { padding: 6px 8px !important; font-size: 11px !important; }
    .elan-single__buy-box { padding: 10px !important; }
    .elan-modal__box { margin: 8px !important; max-height: calc(100vh - 16px) !important; }
    .elan-packages-grid { grid-template-columns: 1fr !important; padding: 10px !important; }
}
@media(max-width: 480px) {
    .elan-stats { grid-template-columns: 1fr 1fr !important; }
    .elan-tabs { gap: 2px !important; }
    .elan-tab { padding: 6px 8px !important; font-size: 11px !important; }
    .elan-form__section-title { font-size: 14px !important; }
}

/* ── Subcategory sidebar styles ── */
.elanlar-cat-item { position: relative; display: flex; align-items: center; gap: 8px; padding: 9px 12px; border-radius: 8px; text-decoration: none; color: #374151; font-size: 13px; font-weight: 500; transition: background .15s, color .15s; }
.elanlar-cat-item:hover { background: #f0f4ff; color: #0067ed; }
.elanlar-cat-item.active { background: #0067ed; color: #fff; }
.elanlar-cat-item.active .elanlar-cat-count { background: rgba(255,255,255,.25); color: #fff; }
.elanlar-cat-icon { width: 24px; height: 24px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
.elanlar-cat-icon img { width: 22px; height: 22px; object-fit: cover; border-radius: 4px; }
.elanlar-cat-count { margin-left: auto; background: #f3f4f6; color: #6b7280; font-size: 11px; font-weight: 700; padding: 2px 7px; border-radius: 20px; }
.elanlar-cat-arrow { margin-left: 2px; flex-shrink: 0; transition: transform .2s; }
.elanlar-cat-parent-li.is-open > .elanlar-cat-item .elanlar-cat-arrow { transform: rotate(180deg); }

/* Subcategory list */
.elanlar-subcat-list { list-style: none; margin: 4px 0 4px 20px; padding: 0; border-left: 2px solid #e5e7eb; }
.elanlar-subcat-list li { margin: 0; }
.elanlar-subcat-item { font-size: 12px !important; padding: 7px 10px !important; }
.elanlar-subcat-item .elanlar-cat-icon { width: 20px; height: 20px; }
.elanlar-subcat-item .elanlar-cat-icon img { width: 18px; height: 18px; }

/* Add-form subcat back bar */
.elan-subcat-back-bar {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f0f0f0;
}
.elan-subcat-geri-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #374151;
    font-size: 13px;
    font-weight: 600;
    background: #f3f4f6;
    border: 1.5px solid #e5e7eb;
    border-radius: 8px;
    cursor: pointer;
    padding: 6px 12px;
    line-height: 1;
    white-space: nowrap;
    transition: background .15s, border-color .15s;
}
.elan-subcat-geri-btn:hover { background: #e5e7eb; border-color: #d1d5db; }
#elan-subcat-parent-name {
    font-weight: 700;
    color: #0067ed;
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 4-column subcat grid on desktop */
.elan-subcat-grid-4 {
    grid-template-columns: repeat(4, 1fr) !important;
    max-height: none !important;
    overflow-y: visible !important;
}

/* Fix card: equal height, text on one line */
.elan-subcat-grid-4 .elan-cat-option {
    min-height: 60px;
    align-items: center;
}
.elan-subcat-grid-4 .elan-cat-option__name {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 768px) {
    .elan-subcat-grid-4 { grid-template-columns: repeat(2, 1fr) !important; }
    .elan-subcat-grid-4 .elan-cat-option__name { white-space: normal; }
}
@media (max-width: 480px) {
    .elan-subcat-grid-4 { grid-template-columns: 1fr 1fr !important; }
}

.elan-spin { animation: elan-spin .8s linear infinite; }
@keyframes elan-spin { to { transform: rotate(360deg); } }

/* cat-list reset */
.elanlar-cat-list { list-style: none; margin: 0; padding: 0; }
.elanlar-cat-list li { margin: 0; }
/* ── Geri button & subcat card fix (override theme) ── */
.elan-subcat-geri-btn {
    all: unset !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    color: #374151 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    background: #f3f4f6 !important;
    border: 1.5px solid #e5e7eb !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    padding: 6px 14px !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    font-family: inherit !important;
}
.elan-subcat-geri-btn:hover {
    background: #e5e7eb !important;
    border-color: #d1d5db !important;
    color: #111827 !important;
}
.elan-subcat-geri-btn svg {
    display: inline-block !important;
    flex-shrink: 0 !important;
    vertical-align: middle !important;
}
.elan-subcat-grid-4 .elan-cat-option {
    min-height: 60px !important;
    height: 60px !important;
    align-items: center !important;
    overflow: hidden !important;
}
.elan-subcat-grid-4 .elan-cat-option .elan-cat-option__name {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-width: 0 !important;
    flex: 1 !important;
}
@media (max-width: 768px) {
    .elan-subcat-grid-4 .elan-cat-option { height: auto !important; }
    .elan-subcat-grid-4 .elan-cat-option .elan-cat-option__name { white-space: normal !important; }
}

/* ── Subcat card: no fixed height, always wrap text ── */
.elan-subcat-grid-4 .elan-cat-option {
    min-height: 56px !important;
    height: auto !important;
    align-items: center !important;
    overflow: visible !important;
}
.elan-subcat-grid-4 .elan-cat-option .elan-cat-option__name {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
    word-break: break-word !important;
    min-width: 0 !important;
    flex: 1 !important;
    line-height: 1.3 !important;
}

/* ── ORDER CONFIRMATION BAR ── */
.elan-confirm-order-bar {
    padding: 0 14px;
    flex-shrink: 0;
}
.elan-confirm-order-bar > div {
    transition: all .3s ease;
}
#elan-confirm-delivery-modal {
    display: none;
}
#elan-confirm-delivery-modal.active {
    display: flex;
}

/* Responsive confirm modal */
@media(max-width: 480px) {
    #elan-confirm-delivery-modal > div {
        border-radius: 18px 18px 0 0 !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
        max-height: 90vh;
        overflow-y: auto;
    }
    #elan-confirm-delivery-modal {
        align-items: flex-end !important;
    }
    .elan-confirm-order-bar {
        padding: 0 10px;
    }
}

/* ════════════════════════════════════════════
   REVIEWS & RATINGS SYSTEM
════════════════════════════════════════════ */

/* Summary block */
.elan-reviews-summary {
    display: flex;
    gap: 24px;
    align-items: flex-start;
    background: linear-gradient(135deg,#fffbeb,#fef3c7);
    border: 1.5px solid #fde68a;
    border-radius: 16px;
    padding: 20px 22px;
    margin-bottom: 22px;
}
.elan-reviews-summary__score {
    text-align: center;
    flex-shrink: 0;
    min-width: 80px;
}
.elan-reviews-summary__avg {
    font-size: 44px;
    font-weight: 900;
    color: #92400e;
    line-height: 1;
    display: block;
    margin-bottom: 6px;
}
.elan-reviews-summary__count {
    font-size: 12px;
    color: #b45309;
    margin-top: 4px;
    font-weight: 600;
}
.elan-reviews-summary__bars {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
    justify-content: center;
}
.elan-reviews-bar-row {
    display: flex;
    align-items: center;
    gap: 8px;
}
.elan-reviews-bar-row__label {
    font-size: 11px;
    color: #92400e;
    font-weight: 700;
    white-space: nowrap;
    width: 28px;
    text-align: right;
}
.elan-reviews-bar-row__track {
    flex: 1;
    height: 7px;
    background: rgba(255,255,255,.7);
    border-radius: 10px;
    overflow: hidden;
}
.elan-reviews-bar-row__fill {
    height: 100%;
    background: linear-gradient(90deg,#f59e0b,#d97706);
    border-radius: 10px;
    transition: width .6s ease;
}
.elan-reviews-bar-row__count {
    font-size: 11px;
    color: #92400e;
    width: 22px;
    font-weight: 600;
}

/* Empty state */
.elan-reviews-empty {
    text-align: center;
    padding: 40px 20px;
    color: #9ca3af;
}

/* Review card */
/* ── Review card V2 — Telegram marketplace style ── */
.elan-review-card:not(.elan-review-card--v2) { display:none !important; }
.elan-review-card--v2 {
    display: block !important;
    background: var(--elan-surface, #fff);
    border: 1px solid var(--elan-border, #e5e7eb);
    border-radius: 16px;
    padding: 16px 18px;
    margin-bottom: 12px;
    transition: box-shadow .2s, border-color .2s;
}
.elan-review-card--v2:hover {
    box-shadow: 0 4px 18px rgba(0,0,0,.08);
    border-color: #fde68a;
}
.elan-review-card__header {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    margin-bottom: 10px;
}
.elan-review-card__avatar {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #fde68a;
    flex-shrink: 0;
}
.elan-review-card__meta { flex: 1; min-width: 0; }
.elan-review-card__name-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 4px;
}
.elan-review-card__name {
    font-size: 14px;
    font-weight: 700;
    color: var(--elan-text, #111827);
}
.elan-review-card__verified {
    background: #dbeafe;
    color: #1d4ed8;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 20px;
}
.elan-review-card__stars {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 2px;
}
.elan-review-card__rating-num {
    font-size: 12px;
    font-weight: 700;
    color: #f59e0b;
}
.elan-review-card__date {
    font-size: 11px;
    color: var(--elan-muted, #9ca3af);
    display: block;
}
.elan-review-card__thumb-wrap {
    flex-shrink: 0;
}
.elan-review-card__thumb {
    width: 64px;
    height: 64px;
    border-radius: 10px;
    object-fit: cover;
    border: 1px solid var(--elan-border, #e5e7eb);
}
.elan-review-card__product {
    font-size: 11px;
    color: var(--elan-primary, #0067ed);
    font-weight: 600;
    margin-bottom: 8px;
    background: var(--elan-primary-light, #eff6ff);
    display: inline-block;
    padding: 2px 8px;
    border-radius: 6px;
}
.elan-review-card__comment {
    font-size: 13px;
    color: var(--elan-text, #374151);
    line-height: 1.6;
    margin: 0 0 10px;
}
.elan-review-card__reply {
    background: linear-gradient(135deg,#f0fdf4,#dcfce7);
    border: 1px solid #86efac;
    border-radius: 10px;
    padding: 10px 14px;
    margin-top: 8px;
}
.elan-review-card__reply-header {
    font-size: 12px;
    font-weight: 700;
    color: #14532d;
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.elan-review-card__reply p {
    font-size: 12px;
    color: #166534;
    margin: 0;
    line-height: 1.5;
}
.elan-review-reply-btn {
    all: unset;
    cursor: pointer;
    font-size: 12px;
    color: #0067ed;
    font-weight: 600;
    margin-top: 6px;
    display: inline-block;
}
.elan-review-reply-form {
    margin-top: 10px;
}
.elan-review-reply-textarea {
    width: 100%;
    padding: 9px 12px;
    border: 1.5px solid #e5e7eb;
    border-radius: 10px;
    font-size: 13px;
    resize: none;
    outline: none;
    font-family: inherit;
    box-sizing: border-box;
    line-height: 1.5;
}
.elan-review-reply-textarea:focus { border-color: #0067ed; }
.elan-review-reply-submit {
    margin-top: 6px;
    background: #0067ed;
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 8px 18px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background .2s;
}
.elan-review-reply-submit:hover { background: #004bbd; }

/* Load more */
.elan-reviews-load-more {
    width: 100%;
    background: #f9fafb;
    border: 1.5px solid #e5e7eb;
    border-radius: 12px;
    padding: 12px;
    font-size: 13px;
    font-weight: 700;
    color: #374151;
    cursor: pointer;
    margin-top: 8px;
    transition: all .2s;
}
.elan-reviews-load-more:hover {
    background: #eff6ff;
    border-color: #bfdbfe;
    color: #0067ed;
}

/* Inline rating badge (used in listing cards, profiles) */
.elan-rating-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: #fef3c7;
    border: 1px solid #fde68a;
    border-radius: 20px;
    padding: 2px 9px;
    font-size: 11px;
    font-weight: 700;
    color: #92400e;
    white-space: nowrap;
}

/* Responsive */
@media(max-width:600px) {
    .elan-reviews-summary {
        flex-direction: column;
        gap: 14px;
        padding: 16px;
    }
    .elan-reviews-summary__avg { font-size: 36px; }
    .elan-reviews-summary__score { display: flex; align-items: center; gap: 12px; min-width: unset; text-align: left; }
    .elan-review-card--v2 { padding: 13px 14px; }
}

/* ── WooCommerce order actions: review button ── */
.woocommerce-MyAccount-orders .elan_write_review,
.woocommerce-orders-table__cell-order-actions .button.elan_write_review {
    background: linear-gradient(135deg,#f59e0b,#d97706) !important;
    color: #fff !important;
    border-color: #d97706 !important;
    font-weight: 700 !important;
}
.woocommerce-MyAccount-orders .elan_write_review:hover,
.woocommerce-orders-table__cell-order-actions .button.elan_write_review:hover {
    background: linear-gradient(135deg,#d97706,#b45309) !important;
    color: #fff !important;
}

/* ── Hide duplicate theme "Satıcıya Mesaj Göndər" button on order detail page ──
   Our elanlar plugin adds its own clean "Sifariş Əməliyyatları" block.
   The theme adds a standalone button with class .elan-seller-msg-btn or similar.
   We target known theme button patterns to remove the duplicate. */
.woocommerce-order .elan-contact-box,
.woocommerce-order .elan-seller-msg-standalone,
.woocommerce-order a.elan-seller-msg-order-btn {
    display: none !important;
}

/* ── Stock display on single listing ── */
.elan-stock-row {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin: 8px 0 4px;
}
.elan-stock-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 20px;
}
.elan-stock-badge--ok {
    background: #dcfce7;
    color: #15803d;
    border: 1px solid #86efac;
}
.elan-stock-badge--low {
    background: #fef9c3;
    color: #a16207;
    border: 1px solid #fde047;
    animation: elan-stock-pulse 2s ease-in-out infinite;
}
.elan-stock-badge--out {
    background: #fee2e2;
    color: #b91c1c;
    border: 1px solid #fca5a5;
}
.elan-sold-count {
    font-size: 11px;
    color: var(--elan-muted, #9ca3af);
    background: var(--elan-surface2, #f3f4f6);
    padding: 3px 9px;
    border-radius: 20px;
}
@keyframes elan-stock-pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: .7; }
}

/* ── Dashboard stock column ── */
.elan-dash-stock {
    display: inline-block;
    font-size: 12px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 12px;
}
.elan-dash-stock--ok  { background:#dcfce7; color:#15803d; }
.elan-dash-stock--low { background:#fef9c3; color:#a16207; }
.elan-dash-stock--out { background:#fee2e2; color:#b91c1c; }

/* =========================================================
   POPUP CHIPS — compact delivery/warranty/stock labels
========================================================= */
.elan-popup-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: 20px;
    white-space: nowrap;
    line-height: 1.4;
}
.elan-popup-chip--blue   { background: #eff6ff; color: #0067ed; }
.elan-popup-chip--green  { background: #f0fdf4; color: #16a34a; }
.elan-popup-chip--orange { background: #fffbeb; color: #d97706; }
.elan-popup-chip--red    { background: #fef2f2; color: #dc2626; }

/* =========================================================
   POPUP ACTION BUTTONS — full-width, never overflow
========================================================= */
.elan-popup-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 11px 14px !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    text-align: center !important;
    cursor: pointer !important;
    border: none !important;
    line-height: 1.3 !important;
    transition: opacity .15s !important;
}
.elan-popup-btn:hover { opacity: .88 !important; }
.elan-popup-btn--blue    { background: #0067ed !important; color: #fff !important; }
.elan-popup-btn--green   { background: #16a34a !important; color: #fff !important; }
.elan-popup-btn--outline { background: #f0f4ff !important; color: #0067ed !important; border: 1.5px solid #0067ed !important; }
.elan-popup-btn--disabled{ background: #f1f5f9 !important; color: #94a3b8 !important; cursor: not-allowed !important; }

/* ── View modal: title truncates properly in header ── */
#elan-view-modal .elan-modal__header h3,
#elan-view-modal-title {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    max-width: calc(100% - 50px) !important;
    font-size: 14px !important;
}

/* ── View modal: no duplicate close button in header ── */
#elan-view-modal .elan-modal__close { display: none !important; }

/* ── View modal body: no top padding (image bleeds to edge) ── */
#elan-view-modal .elan-modal__body,
#elan-view-modal-body {
    padding: 12px !important;
}

/* ═══════════════════════════════════════════════
   QUICK-VIEW POPUP — global (used on listings + seller profile)
   ═══════════════════════════════════════════════ */
#elan-qv-overlay{
    position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:99998;
    display:none;align-items:center;justify-content:center;
    padding:12px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
#elan-qv-overlay.open{display:flex}
#elan-qv-modal{
    background:#f8faff;border-radius:20px;width:100%;max-width:800px;
    max-height:90vh;position:relative;
    box-shadow:0 24px 64px rgba(0,0,0,.25);
    animation:qvIn .25s cubic-bezier(.34,1.56,.64,1);
    overflow:hidden;display:flex;flex-direction:column;
}
@keyframes qvIn{from{opacity:0;transform:scale(.9) translateY(24px)}to{opacity:1;transform:none}}
#elan-qv-close{display:none !important;}
#elan-qv-body{flex:1;overflow-y:auto;min-height:0}
.qv-inner{display:grid;grid-template-columns:1fr 1fr;min-height:440px}
.qv-gallery{border-radius:20px 0 0 20px;overflow:hidden;background:#f5f7ff;position:relative;}
.qv-gallery img{width:100%;height:100%;object-fit:contain;display:block;min-height:280px;background:#fff;padding:20px}
.qv-gallery-empty{width:100%;height:100%;min-height:280px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8f0fe,#f0f4fa);}
.qv-gallery-thumbs{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:6px;flex-wrap:wrap;padding:0 12px;}
.qv-gallery-thumb{width:44px;height:44px;border-radius:8px;overflow:hidden;cursor:pointer;border:2px solid rgba(255,255,255,.7);transition:border-color .15s;flex-shrink:0;box-shadow:0 2px 8px rgba(0,0,0,.15);background:#fff;}
.qv-gallery-thumb.active{border-color:#0067ed}
.qv-gallery-thumb img{width:100%;height:100%;object-fit:cover;border-radius:6px;display:block;padding:0}
.qv-info{padding:24px 24px 20px;display:flex;flex-direction:column;overflow-y:auto;background:#fff;}
.qv-badge-row{display:flex;align-items:center;gap:6px;margin-bottom:14px;flex-wrap:wrap;}
.qv-cat-badge{font-size:11px;font-weight:600;color:#374151;background:#f3f4f6;padding:4px 10px;border-radius:50px;border:1px solid #e5e7eb;}
.qv-del-badge{font-size:11px;font-weight:600;padding:4px 10px;border-radius:50px;display:inline-flex;align-items:center;gap:4px;border:1px solid;}
.qv-del-badge.a{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}
.qv-del-badge.m{background:#fffbeb;color:#92400e;border-color:#fde68a}
.qv-warranty{font-size:11px;font-weight:600;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;padding:4px 10px;border-radius:50px;display:inline-flex;align-items:center;gap:4px;}
.qv-title{font-size:18px;font-weight:600;color:#111827;line-height:1.3;margin:0 0 10px;}
.qv-price{font-size:28px;font-weight:700;color:#0067ed;margin-bottom:16px;display:flex;align-items:baseline;gap:4px;line-height:1;}
.qv-price-sym{font-size:20px;font-weight:700;color:#0067ed}
.qv-divider{height:1px;background:#f3f4f6;margin:0 0 16px}
.qv-seller{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#f8faff;border-radius:12px;margin-bottom:14px;border:1px solid #e0e8ff;}
.qv-seller img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid #0067ed;flex-shrink:0;}
.qv-seller-info{flex:1;min-width:0}
.qv-seller-name{font-size:13px;font-weight:700;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qv-seller-sub{font-size:11px;color:#6b7280;margin-top:1px;font-weight:500}
.qv-seller-chat{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:50px;background:#0067ed;color:#fff;border:none;cursor:pointer;transition:all .15s;flex-shrink:0;text-decoration:none;box-shadow:0 2px 8px rgba(0,103,237,.25);font-size:12px;font-weight:700;white-space:nowrap;}
.qv-seller-chat:hover{background:#005bd4;transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,103,237,.35)}
.qv-desc{font-size:13px;font-weight:400;color:#6b7280;line-height:1.6;margin-bottom:16px;max-height:160px;overflow-y:auto;padding-right:6px;word-break:break-word;overflow-wrap:break-word;}
.qv-desc::-webkit-scrollbar{width:3px}
.qv-desc::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:2px}
.qv-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto;}
.qv-btn{padding:13px 12px;border:none;border-radius:50px;font-size:13px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;transition:all .18s;font-family:inherit;text-decoration:none;line-height:1;}
.qv-btn-cart{background:#0067ed;color:#fff;box-shadow:0 4px 14px rgba(0,103,237,.28);}
.qv-btn-cart:hover{background:#005bd4;box-shadow:0 6px 20px rgba(0,103,237,.38)}
.qv-btn-buy{background:#16a34a;color:#fff;box-shadow:0 4px 14px rgba(22,163,74,.22);}
.qv-btn-buy:hover{background:#15803d;box-shadow:0 6px 20px rgba(22,163,74,.32)}
.qv-loading{display:flex;align-items:center;justify-content:center;padding:100px 40px;color:#9ca3af;font-size:14px;gap:14px;}
.qv-spinner{width:26px;height:26px;border-radius:50%;border:3px solid #e5e7eb;border-top-color:#0067ed;animation:spin .7s linear infinite;flex-shrink:0;}
@media(max-width:680px){
    #elan-qv-overlay{padding:60px 0 0 0;align-items:flex-end}
    #elan-qv-modal{border-radius:20px 20px 0 0;height:calc(100vh - 60px);max-height:calc(100vh - 60px);display:flex;flex-direction:column;overflow:hidden}
    #elan-qv-body{flex:1;overflow:hidden;min-height:0;display:flex;flex-direction:column}
    .qv-inner{grid-template-columns:1fr;display:flex;flex-direction:column;min-height:unset;flex:1;overflow:hidden}
    .qv-gallery{border-radius:0;min-height:200px;max-height:220px;flex-shrink:0;position:relative}
    .qv-gallery img{min-height:200px;max-height:220px;padding:0;object-fit:cover}
    .qv-gallery-empty{min-height:200px}
    #elan-qv-close{display:flex !important;position:absolute;top:12px;right:12px;z-index:10;width:34px;height:34px;align-items:center;justify-content:center;background:rgba(0,0,0,.45);backdrop-filter:blur(4px);border:none;border-radius:50%;cursor:pointer;color:#fff;padding:0;transition:background .15s}
    #elan-qv-close:hover{background:rgba(0,0,0,.7)}
    .qv-info{padding:16px 16px 0 16px;overflow-y:auto;flex:1;min-height:0;display:flex;flex-direction:column}
    .qv-actions{flex-shrink:0;background:#fff;padding:12px 16px 20px;border-top:1px solid #f3f4f6;gap:8px;z-index:2;margin-top:auto;position:sticky;bottom:0}
    .qv-title{font-size:16px}
    .qv-price{font-size:22px}
    .qv-price-sym{font-size:17px}
    .qv-btn{font-size:12px;padding:11px 8px}
    .qv-seller{padding:10px 12px;margin-bottom:10px}
    .qv-desc{max-height:100px;font-size:12px}
    .qv-badge-row{margin-bottom:10px}
    .qv-close-row{display:none !important}
}
@keyframes elanOnlinePulse{0%,100%{box-shadow:0 0 0 2px rgba(16,185,129,.3)}50%{box-shadow:0 0 0 5px rgba(16,185,129,.1)}}

/* ═══════════════════════════════════════════════
   SELLER PROFILE PAGE  [elan_seller_profile]
   ═══════════════════════════════════════════════ */
#elan-sp-root { max-width:1100px; margin:0 auto; padding:24px 16px 60px; font-family:inherit; box-sizing:border-box; }

/* Header card */
.esp-header { display:flex; align-items:flex-start; gap:20px; background:#fff; border:1px solid #e8edf5; border-radius:16px; padding:28px; margin-bottom:20px; box-shadow:0 2px 12px rgba(0,0,0,.06); flex-wrap:wrap; }
.esp-avatar-wrap { position:relative; flex-shrink:0; }
.esp-avatar { width:90px; height:90px; border-radius:50% !important; object-fit:cover; border:3px solid #e8edf5; display:block; }
.esp-online-dot { position:absolute; bottom:4px; right:4px; width:16px; height:16px; border-radius:50%; border:3px solid #fff; display:block; }
.esp-online-dot--online  { background:#10b981; box-shadow:0 0 0 3px rgba(16,185,129,.2); animation:elanOnlinePulse 2s ease-in-out infinite; }
.esp-online-dot--offline { background:#ef4444; }
.esp-info { flex:1; min-width:0; }
.esp-name-row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:6px; }
.esp-name { margin:0; font-size:22px; font-weight:800; color:#111827; line-height:1.2; }
.esp-badge { display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; border-radius:50%; font-size:12px; font-weight:700; }
.esp-rating { display:flex; align-items:center; gap:6px; margin-bottom:8px; }
.esp-rating__stars { display:flex; gap:1px; font-size:15px; }
.esp-rating__avg { font-size:14px; font-weight:800; color:#f59e0b; }
.esp-rating__total { font-size:12px; color:#9ca3af; }
.esp-bio { font-size:13px; color:#6b7280; line-height:1.6; margin:0 0 10px; }
.esp-stats { display:flex; gap:20px; flex-wrap:wrap; }
.esp-stat { display:flex; flex-direction:column; align-items:center; min-width:50px; }
.esp-stat__val { font-size:18px; font-weight:800; color:#111827; }
.esp-stat__lbl { font-size:11px; color:#9ca3af; font-weight:500; margin-top:1px; }
.esp-actions { display:flex; flex-direction:column; gap:8px; flex-shrink:0; }
.esp-btn { display:inline-flex; align-items:center; gap:7px; padding:10px 18px; border-radius:50px; font-size:13px; font-weight:700; cursor:pointer; text-decoration:none; border:none; transition:all .15s; white-space:nowrap; }
.esp-btn--primary { background:#0067ed; color:#fff; }
.esp-btn--primary:hover { background:#005bd4; transform:translateY(-1px); }
.esp-btn--outline { background:#fff; color:#0067ed; border:1.5px solid #0067ed; }
.esp-btn--outline:hover { background:#eff6ff; }

/* Tabs */
.esp-tabs { display:flex; gap:4px; background:#f3f4f6; border-radius:12px; padding:4px; margin-bottom:20px; }
.esp-tab { display:flex; align-items:center; gap:6px; padding:9px 18px; border-radius:9px; font-size:13px; font-weight:600; color:#6b7280; text-decoration:none; transition:all .15s; }
.esp-tab:hover { color:#374151; background:rgba(255,255,255,.6); }
.esp-tab.active { background:#fff; color:#0067ed; box-shadow:0 1px 4px rgba(0,0,0,.1); }
.esp-tab__count { background:#e5e7eb; color:#374151; font-size:11px; font-weight:700; padding:1px 7px; border-radius:20px; }
.esp-tab.active .esp-tab__count { background:#dbeafe; color:#1d4ed8; }

/* Listings grid — 5 cols desktop → 2 mobile */
.esp-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; }
@media(max-width:1100px) { .esp-grid { grid-template-columns:repeat(4,1fr); } }
@media(max-width:860px)  { .esp-grid { grid-template-columns:repeat(3,1fr); } }
@media(max-width:600px)  { .esp-grid { grid-template-columns:repeat(2,1fr); gap:8px; } }

/* Pagination */
.esp-pagination { display:flex; gap:6px; justify-content:center; margin-top:24px; flex-wrap:wrap; }
.esp-page-btn { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:8px; font-size:13px; font-weight:700; text-decoration:none; color:#374151; background:#f3f4f6; transition:all .15s; }
.esp-page-btn:hover { background:#e5e7eb; }
.esp-page-btn.active { background:#0067ed; color:#fff; }

/* Reviews header */
.esp-reviews-header { background:#fffbeb; border:1px solid #fde68a; border-radius:12px; padding:20px 24px; margin-bottom:20px; }
.esp-reviews-avg { display:flex; flex-direction:column; align-items:center; }
.esp-reviews-avg__num { font-size:40px; font-weight:900; color:#f59e0b; line-height:1; }
.esp-reviews-avg__stars { margin:4px 0 2px; }
.esp-reviews-avg__total { font-size:12px; color:#92400e; font-weight:600; }

/* Empty state */
.esp-empty { text-align:center; padding:60px 20px; color:#9ca3af; }
.esp-empty__icon { font-size:48px; margin-bottom:14px; }
.esp-empty p { font-size:14px; margin:0; }

/* Mobile tweaks */
@media(max-width:600px) {
    .esp-header { padding:16px; }
    .esp-actions { flex-direction:row; width:100%; }
    .esp-btn { flex:1; justify-content:center; }
    .esp-name { font-size:18px; }
    .esp-tabs { overflow-x:auto; }
}

/* ═══ EDC card sub-elements — global (used on listings + seller profile) ═══ */
.edc-disc{position:absolute;top:10px;left:10px;z-index:3;background:#0067ed;color:#fff;border-radius:20px;font-size:10px;font-weight:800;padding:3px 7px}
.edc-img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:#f5f7ff}
.edc-noimg{width:100%;aspect-ratio:1/1;background:linear-gradient(135deg,#e8f0fe,#f0f4fa);display:flex;align-items:center;justify-content:center;color:#0067ed}
.edc-body{padding:10px 10px 12px;display:flex;flex-direction:column;gap:4px;flex:1}
.edc-seller{display:none}
.edc-title{font-size:13px;font-weight:400;color:#1a1a2e;line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.8em}
.edc-stock{display:flex;align-items:center;gap:4px;font-size:11px;color:#16a34a;font-weight:500}
.edc-stock svg{flex-shrink:0}
.edc-del{display:none}
.edc-foot{display:flex;flex-direction:column;gap:1px;margin-top:2px}
.edc-price-orig{font-size:11px;color:#9ca3af;text-decoration:line-through;font-weight:400}
.edc-price{font-size:15px;font-weight:700;color:#0067ed;display:flex;align-items:baseline;gap:2px}
.edc-cur{font-size:13px;font-weight:700;order:2}
.edc-arr{display:none}
.edc-war{font-size:10px;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:20px;padding:2px 7px;font-weight:600;display:inline-block;margin-top:2px}
#elan-sp-root .edc-war, #elan-sp-root .elan-card__warranty { display:none !important; }

/* ═══ SELLER TIER AVATAR BORDER ═══ */
.esp-tier-ring {
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    z-index: 0;
}
.esp-tier-ring::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 50%;
    padding: 3px;
    background: var(--tier-gradient);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}
/* Rotate animation */
.esp-tier--rotate::before {
    animation: tierRotate var(--tier-speed,3s) linear infinite;
    background: conic-gradient(var(--tier-c1), var(--tier-c2), var(--tier-c1));
}
@keyframes tierRotate {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}
/* Pulse animation */
.esp-tier--pulse::before {
    animation: tierPulse var(--tier-speed,2s) ease-in-out infinite;
    background: linear-gradient(135deg, var(--tier-c1), var(--tier-c2));
}
@keyframes tierPulse {
    0%,100% { opacity:1; transform:scale(1); }
    50%     { opacity:.6; transform:scale(1.05); }
}
/* Rainbow animation */
.esp-tier--rainbow::before {
    animation: tierRainbow var(--tier-speed,3s) linear infinite;
    background: conic-gradient(#f59e0b,#ef4444,#8b5cf6,#3b82f6,#10b981,#f59e0b);
}
@keyframes tierRainbow {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}
/* Shine animation */
.esp-tier--shine {
    overflow: hidden;
}
.esp-tier--shine::after {
    content: '';
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--tier-c1), var(--tier-c2));
    animation: tierShine var(--tier-speed,3s) ease-in-out infinite;
    opacity: .9;
    padding: 3px;
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}
@keyframes tierShine {
    0%,100% { filter: brightness(1); }
    50%     { filter: brightness(1.4) saturate(1.3); }
}

/* Tier label badge on profile */
.esp-tier-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 10px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    margin-left: 4px;
}

/* Quick-view tier ring on avatar */
.qv-tier-wrap {
    position: relative;
    flex-shrink: 0;
    width: 44px;
    height: 44px;
}
.qv-tier-ring {
    position: absolute;
    inset: -3px;
    border-radius: 50%;
    padding: 2px;
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
}
.qv-tier-ring--rotate { animation: tierRotate var(--tier-speed,3s) linear infinite; background: conic-gradient(var(--tier-c1),var(--tier-c2),var(--tier-c1)); }
.qv-tier-ring--pulse  { animation: tierPulse var(--tier-speed,2s) ease-in-out infinite; background: linear-gradient(135deg,var(--tier-c1),var(--tier-c2)); }
.qv-tier-ring--rainbow{ animation: tierRainbow var(--tier-speed,3s) linear infinite; background: conic-gradient(#f59e0b,#ef4444,#8b5cf6,#3b82f6,#10b981,#f59e0b); }
.qv-tier-ring--shine  { animation: tierShine var(--tier-speed,3s) ease-in-out infinite; background: linear-gradient(135deg,var(--tier-c1),var(--tier-c2)); }

/* ═══ PROMO CARD EFFECTS — global (listings + seller profile) ═══ */
.edc.is-promo { transform:translateY(-2px); }
.edc.is-promo .edc-shimmer {
    position:absolute;inset:0;z-index:4;pointer-events:none;
    background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.22) 50%,transparent 62%);
    background-size:300% 100%;
    animation:shimmerBase 10s ease-in-out infinite;
}
@keyframes shimmerBase { 0%{background-position:300% 0} 100%{background-position:-300% 0} }

.edc-rib {
    position:absolute;top:12px;left:10px;z-index:6;
    padding:4px 11px;border-radius:4px;
    font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.13em;
    color:#fff;box-shadow:0 2px 10px rgba(0,0,0,.25);
}


/* Promo pkg-* styles are now dynamically generated via wp_head (elanlar-v2.php) */

/* .edc base — defined via scoped rules above */
