:root {
    --fs-theme: emberline;
    --el-ember: var(--fs-primary, #C45C26);
    --el-ember-strong: var(--fs-primary-strong, #9A3F16);
    --el-ink: var(--fs-secondary, #1A1F2C);
    --el-paper: var(--fs-background, #F4EFE6);
    --el-cream: var(--fs-surface, #FFFBF4);
    --el-hairline: var(--fs-border, #E4D8C6);
    --el-mute: var(--fs-muted, #6F675C);
    --el-radius: 8px;
    --el-radius-sm: 6px;
    --el-shadow: 0 18px 40px rgba(92, 54, 26, 0.08);
    --el-shadow-float: 0 28px 60px rgba(26, 31, 44, 0.14);
    --el-grid: 1.15rem;
}

.el-kicker {
    margin: 0;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--el-ember-strong, #9A3F16);
}

.el-display {
    margin: 0;
    font-weight: 700;
    letter-spacing: -0.03em;
    line-height: 1.12;
    color: var(--el-ink, #1A1F2C);
}

.el-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    border: 1px solid var(--el-hairline, #E4D8C6);
    border-radius: 999px;
    background: var(--el-cream, #FFFBF4);
    padding: 0.28rem 0.7rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--el-mute, #6F675C);
    text-decoration: none;
}

.el-gig {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--el-hairline, #E4D8C6);
    border-radius: var(--el-radius, 18px);
    background: var(--el-cream, #FFFBF4);
    box-shadow: var(--el-shadow, 0 18px 40px rgba(92, 54, 26, 0.08));
}

.el-gig-media {
    position: relative;
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: linear-gradient(135deg, #F6E6D8, #E8D7C4);
}

.el-gig-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.el-gig-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 0.7rem;
    padding: 1.05rem 1.1rem 1.15rem;
}

.el-gig-title {
    margin: 0;
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.35;
    color: var(--el-ink, #1A1F2C);
}

.el-seller {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
     border: 1px solid var(--el-hairline, #E4D8C6);
     border-radius: var(--el-radius, 8px);
     background: var(--el-cream, #FFFBF4);
    box-shadow: var(--el-shadow, 0 18px 40px rgba(92, 54, 26, 0.08));
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.el-seller:hover {
    transform: translateY(-4px);
    box-shadow: var(--el-shadow-float, 0 28px 60px rgba(26, 31, 44, 0.14));
}

.el-seller-cover {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: linear-gradient(120deg, #C45C26, #1A1F2C);
}

.el-seller-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.el-seller-avatar {
    margin-top: -2.5rem;
}

.el-seller-panel {
    overflow: hidden;
    border: 1px solid var(--el-hairline, #E4D8C6);
    border-radius: var(--el-radius, 8px);
    background: var(--el-cream, #FFFBF4);
    box-shadow: var(--el-shadow, 0 18px 40px rgba(92, 54, 26, 0.08));
}

.el-seller-panel .el-seller-cover {
    aspect-ratio: 16 / 9;
}

.el-review-tab {
    cursor: pointer;
    white-space: nowrap;
    border: 1px solid var(--el-hairline, #E4D8C6);
    border-radius: 999px;
    background: var(--el-cream, #FFFBF4);
    padding: 0.28rem 0.75rem;
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--el-mute, #6F675C);
    transition: background 160ms ease, color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.el-review-tab:hover {
    border-color: color-mix(in srgb, var(--el-ember, #C45C26) 40%, var(--el-hairline, #E4D8C6));
    color: var(--el-ink, #1A1F2C);
}

.el-review-tab.is-active {
    border-color: var(--el-ember, #C45C26);
    background: var(--el-ember, #C45C26);
    color: #fff;
    box-shadow: 0 6px 14px rgba(196, 92, 38, 0.18);
}

.el-seller-rings {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(4.4rem, 1fr));
    gap: 0.2rem;
    justify-items: center;
    width: 100%;
}

.el-seller-rings .fs-ring {
    width: 5.85rem;
    height: 5.85rem;
    max-width: 100%;
}

.el-seller-rings .fs-ring-track {
    stroke-width: 2.2;
}

.el-seller-rings .fs-ring-display {
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1;
}

.el-seller-rings .fs-ring-label {
    margin-top: 0.12rem;
    max-width: 5.4rem;
    font-size: 0.62rem;
    letter-spacing: 0.02em;
    line-height: 1.1;
}

.el-seller-cover-slider {
    height: 350px;
}

.el-seller-cover-rings {
    position: absolute;
    right: 0.85rem;
    bottom: 1.15rem;
    z-index: 3;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.35rem;
    pointer-events: none;
}

.el-seller-cover-rings .fs-ring {
    width: 4.6rem;
    height: 4.6rem;
}

.el-seller-cover-rings .fs-ring-display {
    color: #fff;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
    text-shadow: 0 1px 6px rgba(17, 24, 39, 0.45);
}

.el-seller-cover-rings .fs-ring-label {
    color: rgba(255, 255, 255, 0.88);
    font-size: 0.52rem;
    letter-spacing: 0.03em;
}

.el-seller-cover-rings .fs-ring-track {
    stroke: rgba(255, 255, 255, 0.28);
    stroke-width: 2.2;
}

.el-seller-cover-chart {
    position: absolute;
    left: 0.85rem;
    bottom: 1.15rem;
    z-index: 3;
    max-width: 16.5rem;
    padding: 0.55rem 0.65rem;
    border-radius: 12px;
    background: rgba(17, 24, 39, 0.42);
    backdrop-filter: blur(8px);
}

.el-seller-cover-chart .fs-donut-body {
    flex-wrap: nowrap;
    gap: 0.7rem;
}

.el-seller-cover-chart .fs-donut-ring {
    width: 4.75rem;
    height: 4.75rem;
}

.el-seller-cover-chart .fs-donut-track {
    stroke: rgba(255, 255, 255, 0.22);
    stroke-width: 2.2;
}

.el-seller-cover-chart .fs-donut-segment {
    stroke-width: 2.2;
}

.el-seller-cover-chart .fs-donut-segment.is-active {
    stroke-width: 3.2;
}

.el-seller-cover-chart .fs-donut-total,
.el-seller-cover-chart .fs-donut-label,
.el-seller-cover-chart .fs-donut-legend-label,
.el-seller-cover-chart .fs-donut-legend-value,
.el-seller-cover-chart .fs-donut-legend-percent,
.el-seller-cover-chart .text-sm {
    color: #fff;
}

.el-seller-cover-chart .fs-donut-label,
.el-seller-cover-chart .fs-donut-legend-percent {
    color: rgba(255, 255, 255, 0.78);
}

.el-seller-cover-chart .fs-donut-total {
    font-size: 0.85rem;
}

.el-seller-cover-chart .fs-donut-legend {
    flex: 1 1 auto;
    min-width: 0;
    gap: 0.15rem;
}

.el-seller-cover-chart .fs-donut-legend li {
    padding: 0;
    font-size: 0.68rem;
    color: #fff;
}

.el-seller-actions {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.el-seller-actions .el-seller-action,
.el-seller-actions .inline-flex {
    flex: 1 1 0;
    min-width: 0;
}

.el-seller-actions .inline-flex a,
.el-seller-actions .inline-flex button,
.el-seller-actions .el-seller-action {
    width: 100%;
    padding-left: 0.7rem;
    padding-right: 0.7rem;
    white-space: nowrap;
}

.el-seller-report {
    flex: 0 0 auto;
    white-space: nowrap;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--el-ember, #C45C26);
}

.el-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    border-radius: 999px;
    background: #F6E6D8;
    padding: 0.18rem 0.55rem;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--el-ember-strong, #9A3F16);
}

.el-price {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--el-ink, #1A1F2C);
}

html.fs-theme-emberline,
body.fs-theme-emberline {
    --color-primary: var(--el-ember);
    --color-primary-strong: var(--el-ember-strong);
    --color-primary-soft: #F6E6D8;
    --color-secondary: var(--el-ink);
    --color-success: #2F7D4A;
    --color-success-soft: #E8F5EC;
    --color-warning: #C9891A;
    --color-warning-soft: #FBF1DC;
    --color-danger: #B42318;
    --color-danger-soft: #FBE8E6;
    --color-info: #2B6B8A;
    --color-info-soft: #E4F1F6;
    --color-background: var(--el-paper);
    --color-surface: var(--el-cream);
    --color-border: var(--el-hairline);
    --color-text: var(--el-ink);
    --color-muted: var(--el-mute);
    --shadow-card: var(--el-shadow);
    --shadow-float: var(--el-shadow-float);
    --radius-control: var(--el-radius-sm);
    background: var(--el-paper);
    color: var(--el-ink);
}

html.dark.fs-theme-emberline,
html.dark .fs-theme-emberline,
html.fs-theme-emberline.dark {
    --el-paper: #14110E;
    --el-cream: #1E1A16;
    --el-hairline: #3A322A;
    --el-ink: #F6EFE4;
    --el-mute: #B7A99A;
    --el-ember: #E08A4F;
    --el-ember-strong: #F0B27A;
    --color-primary: #E08A4F;
    --color-primary-strong: #F0B27A;
    --color-primary-soft: #3A2418;
    --color-secondary: #F6EFE4;
    --color-background: #14110E;
    --color-surface: #1E1A16;
    --color-border: #3A322A;
    --color-text: #F6EFE4;
    --color-muted: #B7A99A;
    --shadow-card: 0 18px 40px rgba(0, 0, 0, 0.38);
    --shadow-float: 0 28px 60px rgba(0, 0, 0, 0.5);
}

.fs-theme-emberline a,
.fs-theme-emberline button,
.fs-theme-emberline [role="button"],
.fs-theme-emberline label[for],
.fs-theme-emberline summary,
.fs-theme-emberline select {
    cursor: pointer;
}

.fs-theme-emberline .fs-container {
    max-width: var(--fs-content-max-width, 1400px);
}

.fs-theme-emberline .fs-card,
.fs-theme-emberline article.fs-card {
    border: 1px solid var(--el-hairline);
    border-radius: var(--el-radius);
    background: var(--el-cream);
    box-shadow: var(--el-shadow);
}

.fs-theme-emberline .fs-input {
    border-color: var(--el-hairline);
    border-radius: var(--el-radius-sm);
    background: var(--el-cream);
}

.fs-theme-emberline .fs-input:focus {
    border-color: var(--el-ember);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--el-ember) 18%, transparent);
}

.fs-theme-emberline .fs-header {
    border-bottom: 1px solid var(--el-hairline);
    background: color-mix(in srgb, var(--el-cream) 88%, transparent);
}

.fs-theme-emberline .fs-header-mark {
    border-radius: 0.85rem;
    background: var(--el-ember);
}

.fs-theme-emberline .fs-nav-link:hover,
.fs-theme-emberline .fs-nav-link.is-active {
    background: color-mix(in srgb, var(--el-ember) 12%, var(--el-cream));
    color: var(--el-ember-strong);
}

.fs-theme-emberline .fs-mega-panel,
.fs-theme-emberline .fs-header-dropdown {
    border-radius: var(--el-radius);
    border-color: var(--el-hairline);
    background: var(--el-cream);
    box-shadow: var(--el-shadow-float);
}

.fs-theme-emberline footer {
    border-top: 1px solid color-mix(in srgb, var(--el-ink) 80%, #000);
    background: var(--el-ink) !important;
}

.fs-theme-emberline .el-kicker {
    margin: 0;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--el-ember-strong);
}

.fs-theme-emberline .el-display {
    margin: 0;
    font-weight: 700;
    letter-spacing: -0.03em;
    line-height: 1.12;
    color: var(--el-ink);
}

.fs-theme-emberline .el-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    border: 1px solid var(--el-hairline);
    border-radius: 999px;
    background: var(--el-cream);
    padding: 0.28rem 0.7rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--el-mute);
    text-decoration: none;
}

.fs-theme-emberline .el-chip:hover {
    border-color: var(--el-ember);
    color: var(--el-ember-strong);
}

.fs-theme-emberline .el-gig {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--el-hairline);
    border-radius: var(--el-radius);
    background: var(--el-cream);
    box-shadow: var(--el-shadow);
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.fs-theme-emberline .el-gig:hover {
    transform: translateY(-3px);
    box-shadow: var(--el-shadow-float);
}

.fs-theme-emberline .el-gig-media {
    position: relative;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background:
        radial-gradient(circle at 20% 20%, color-mix(in srgb, var(--el-ember) 28%, transparent), transparent 42%),
        linear-gradient(135deg, #F6E6D8, #E8D7C4);
}

.fs-theme-emberline .el-gig-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.fs-theme-emberline .el-gig-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 0.7rem;
    padding: 1.05rem 1.1rem 1.15rem;
}

.fs-theme-emberline .el-gig-title {
    margin: 0;
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.35;
    color: var(--el-ink);
}

.fs-theme-emberline .el-seller {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
     border: 1px solid var(--el-hairline);
     border-radius: var(--el-radius, 8px);
     background: var(--el-cream);
    box-shadow: var(--el-shadow);
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.fs-theme-emberline .el-seller:hover {
    transform: translateY(-4px);
    box-shadow: var(--el-shadow-float);
}

.fs-theme-emberline .el-seller-cover {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background:
        linear-gradient(120deg, color-mix(in srgb, var(--el-ember) 55%, #1A1F2C), #1A1F2C);
}

.fs-theme-emberline .el-seller-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.fs-theme-emberline .el-seller-avatar {
    margin-top: -2.5rem;
}

.fs-theme-emberline .el-seller-panel {
    overflow: hidden;
    border: 1px solid var(--el-hairline);
    border-radius: var(--el-radius, 8px);
    background: var(--el-cream);
    box-shadow: var(--el-shadow);
}

.fs-theme-emberline .el-seller-rings .fs-ring-label {
    color: var(--el-muted, #8A7460);
}

.fs-theme-emberline .el-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--el-ember) 12%, var(--el-cream));
    padding: 0.18rem 0.55rem;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--el-ember-strong);
}

.fs-theme-emberline .el-price {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--el-ink);
}

.fs-theme-emberline .el-sticky {
    position: sticky;
    top: 5rem;
}

.fs-theme-emberline .el-mobile-bar {
    position: sticky;
    bottom: 0;
    z-index: 30;
    display: none;
    border-top: 1px solid var(--el-hairline);
    background: color-mix(in srgb, var(--el-cream) 94%, transparent);
    padding: 0.7rem 1rem;
    backdrop-filter: blur(12px);
}

@media (max-width: 767px) {
    .fs-theme-emberline .el-mobile-bar {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
    }
}

.fs-theme-emberline .el-chat {
    display: grid;
    min-height: 32rem;
    overflow: hidden;
    border: 1px solid var(--el-hairline);
    border-radius: var(--el-radius);
    background: var(--el-cream);
}

.fs-theme-emberline .el-bubble {
    max-width: 78%;
    border-radius: 1.1rem 1.1rem 1.1rem 0.3rem;
    background: color-mix(in srgb, var(--el-ember) 10%, var(--el-cream));
    padding: 0.7rem 0.9rem;
    font-size: 0.9rem;
}

.fs-theme-emberline .el-bubble.is-mine {
    margin-left: auto;
    border-radius: 1.1rem 1.1rem 0.3rem 1.1rem;
    background: var(--el-ink);
    color: #fff;
}

.fs-theme-emberline .fs-dashboard .fs-sidebar.is-dark {
    background: #16131A;
    border-right-color: rgba(255, 255, 255, 0.06);
}

.fs-theme-emberline .fs-auth-scene {
    background:
        radial-gradient(circle at 18% 20%, color-mix(in srgb, var(--el-ember) 40%, transparent), transparent 36%),
        linear-gradient(160deg, #1A1F2C, #2A211C);
}

.fs-theme-emberline [class*="rounded-\\[10px\\]"],
.fs-theme-emberline .rounded-\\[10px\\] {
    border-radius: var(--el-radius-sm);
}

.fs-theme-emberline .bg-primary {
    background-color: var(--el-ember);
}

.fs-theme-emberline .hover\\:bg-primary-strong:hover,
.fs-theme-emberline a.bg-primary:hover {
    background-color: var(--el-ember-strong);
}

.fs-theme-emberline .text-primary,
.fs-theme-emberline .text-primary-strong {
    color: var(--el-ember-strong);
}

.fs-theme-emberline .bg-primary-soft {
    background-color: color-mix(in srgb, var(--el-ember) 14%, var(--el-cream));
}

.fs-theme-emberline img[loading="lazy"] {
    content-visibility: auto;
}

@media (prefers-reduced-motion: reduce) {
    .fs-theme-emberline *,
    .fs-theme-emberline *::before,
    .fs-theme-emberline *::after {
        animation: none !important;
        transition: none !important;
        scroll-behavior: auto !important;
    }

    .fs-theme-emberline .el-gig:hover,
    .fs-theme-emberline .el-seller:hover,
    .el-seller:hover {
        transform: none;
    }
}

.fs-theme-emberline :focus-visible {
    outline: 2px solid var(--el-ember);
    outline-offset: 3px;
}

[dir="rtl"].fs-theme-emberline .el-bubble.is-mine,
html[dir="rtl"] .fs-theme-emberline .el-bubble.is-mine {
    margin-left: 0;
    margin-right: auto;
}

.fs-theme-emberline .fs-filter-toggle,
.fs-theme-emberline .fs-filter-online,
.fs-theme-emberline .fs-filter-apply,
.fs-theme-emberline .fs-filter-ghost,
.fs-theme-emberline .fs-filter-chip,
.fs-theme-emberline .fs-filter-popover,
.fs-theme-emberline .fs-filter-sheet-panel {
    border-color: var(--el-hairline);
    background: var(--el-cream);
}

.fs-theme-emberline .fs-filter-apply {
    background: var(--el-ember);
    border-color: var(--el-ember);
    color: #fff;
}

.fs-theme-emberline .fs-filter-online.is-active {
    border-color: var(--color-success, #2F7D4A);
    background: color-mix(in srgb, var(--color-success, #2F7D4A) 12%, var(--el-cream));
}

.fs-theme-emberline .fs-hero-slider {
    background: #1a2233;
}

.fs-theme-emberline .fs-hero-slide {
    background-color: #1a2233;
}

.fs-theme-emberline .fs-hero-title {
    color: #fff;
}

.fs-theme-emberline .fs-hero-search-form {
    border-color: rgba(255, 255, 255, 0.18);
    background: #fff;
}

.fs-theme-emberline .fs-hero-search-submit {
    background: var(--el-ember, var(--color-primary));
}

.fs-theme-emberline .fs-hero-search-submit:hover {
    background: var(--el-ember-strong, var(--color-primary-strong));
}

.fs-theme-emberline .fs-hero-popular a {
    border-color: rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
}
