/* =========================================================
   FOXMAIA Dashboard V2
   Base, Hero e KPIs
   ========================================================= */

.fx-v2-dashboard {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.fx-v2-dashboard *,
.fx-v2-dashboard *::before,
.fx-v2-dashboard *::after {
    box-sizing: border-box;
}

/* HERO */

.fx-v2-hero {
    position: relative;
    overflow: hidden;

    padding: 32px;

    border: 1px solid #e8edf4;
    border-radius: 24px;

    background:
        radial-gradient(
            circle at top right,
            rgba(249, 115, 22, 0.13),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            #ffffff 0%,
            #fffaf5 100%
        );

    box-shadow:
        0 20px 45px rgba(15, 23, 42, 0.07);
}

.fx-v2-hero::after {
    content: "";

    position: absolute;
    top: -100px;
    right: -80px;

    width: 260px;
    height: 260px;

    border-radius: 50%;

    background: rgba(249, 115, 22, 0.06);

    pointer-events: none;
}

.fx-v2-hero-content {
    position: relative;
    z-index: 1;

    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 32px;

    margin-bottom: 28px;
}

.fx-v2-hero-copy {
    max-width: 720px;
}

.fx-v2-eyebrow {
    display: inline-flex;
    align-items: center;

    padding: 7px 12px;

    border: 1px solid rgba(249, 115, 22, 0.18);
    border-radius: 999px;

    background: rgba(255, 247, 237, 0.92);

    color: #ea580c;

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.fx-v2-hero-copy h2 {
    margin: 14px 0 8px;

    color: #0f172a;

    font-size: clamp(28px, 3vw, 40px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.035em;
}

.fx-v2-hero-copy p {
    max-width: 650px;

    margin: 0;

    color: #64748b;

    font-size: 15px;
    line-height: 1.7;
}

.fx-v2-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;

    margin-top: 18px;

    color: #94a3b8;

    font-size: 12px;
    font-weight: 600;
}

.fx-v2-hero-meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.fx-v2-hero-meta span:first-child::before {
    content: "";

    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: #22c55e;
    box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.12);
}

/* BOTÕES */

.fx-v2-hero-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.fx-v2-button {
    min-height: 42px;
    padding: 0 17px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid transparent;
    border-radius: 11px;

    font-size: 13px;
    font-weight: 700;
    text-decoration: none;

    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease,
        background 0.18s ease,
        border-color 0.18s ease;
}

.fx-v2-button:hover {
    transform: translateY(-1px);
}

.fx-v2-button-primary {
    color: #ffffff;
    background: #f97316;

    box-shadow:
        0 9px 20px rgba(249, 115, 22, 0.24);
}

.fx-v2-button-primary:hover {
    color: #ffffff;
    background: #ea580c;

    box-shadow:
        0 12px 24px rgba(249, 115, 22, 0.3);
}

.fx-v2-button-secondary {
    color: #334155;
    background: rgba(255, 255, 255, 0.88);
    border-color: #dfe5ec;
}

.fx-v2-button-secondary:hover {
    color: #0f172a;
    background: #ffffff;
    border-color: #cbd5e1;
}

/* KPI GRID */

.fx-v2-kpi-grid {
    position: relative;
    z-index: 1;

    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.fx-v2-kpi-card {
    min-width: 0;
    padding: 20px;

    display: flex;
    align-items: center;
    gap: 15px;

    border: 1px solid rgba(226, 232, 240, 0.95);
    border-radius: 17px;

    background: rgba(255, 255, 255, 0.92);

    box-shadow:
        0 10px 25px rgba(15, 23, 42, 0.045);

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}

.fx-v2-kpi-card:hover {
    transform: translateY(-3px);

    border-color: rgba(249, 115, 22, 0.25);

    box-shadow:
        0 16px 32px rgba(15, 23, 42, 0.08);
}

.fx-v2-kpi-icon {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 15px;

    background: #fff7ed;

    font-size: 24px;
}

.fx-v2-kpi-card > div:last-child {
    min-width: 0;
}

.fx-v2-kpi-card span {
    display: block;

    margin-bottom: 4px;

    color: #64748b;

    font-size: 12px;
    font-weight: 700;
}

.fx-v2-kpi-card strong {
    display: block;

    overflow: hidden;

    color: #0f172a;

    font-size: 25px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.025em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fx-v2-kpi-card small {
    display: block;

    margin-top: 6px;

    overflow: hidden;

    color: #94a3b8;

    font-size: 11px;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fx-v2-kpi-warning {
    border-color: rgba(245, 158, 11, 0.22);
}

.fx-v2-kpi-warning .fx-v2-kpi-icon {
    background: #fffbeb;
}

/* RESPONSIVO */

@media (max-width: 1180px) {
    .fx-v2-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 850px) {
    .fx-v2-hero {
        padding: 24px;
        border-radius: 20px;
    }

    .fx-v2-hero-content {
        flex-direction: column;
        align-items: stretch;
    }

    .fx-v2-hero-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 620px) {
    .fx-v2-hero {
        padding: 20px;
    }

    .fx-v2-kpi-grid {
        grid-template-columns: 1fr;
    }

    .fx-v2-hero-actions {
        flex-direction: column;
    }

    .fx-v2-button {
        width: 100%;
    }
}

/* =========================================================
   Dashboard V2 - Layout Principal
   ========================================================= */

.fx-v2-main-grid{
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:24px;
}

.fx-v2-panel{
    background:#fff;
    border:1px solid #e8edf4;
    border-radius:22px;
    padding:24px;
    box-shadow:0 12px 30px rgba(15,23,42,.05);
}

.fx-v2-panel-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:16px;
    margin-bottom:22px;
}

.fx-v2-panel-header h3{
    margin:6px 0 0;
    font-size:22px;
    font-weight:700;
    color:#0f172a;
}

.fx-v2-panel-eyebrow{
    display:block;
    font-size:11px;
    font-weight:700;
    color:#f97316;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.fx-v2-filter-group{
    display:flex;
    gap:8px;
}

.fx-v2-filter-group button{

    border:none;
    background:#f3f4f6;

    padding:8px 14px;

    border-radius:999px;

    cursor:pointer;

    font-size:12px;
    font-weight:600;

    transition:.2s;
}

.fx-v2-filter-group button:hover{

    background:#e5e7eb;

}

.fx-v2-filter-group .is-active{

    background:#f97316;
    color:#fff;

}

.fx-v2-sales-summary{

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;

    margin-bottom:24px;

}

.fx-v2-sales-summary div{

    background:#fafafa;

    border-radius:16px;

    padding:18px;

}

.fx-v2-sales-summary span{

    display:block;

    color:#94a3b8;

    font-size:12px;

    margin-bottom:6px;

}

.fx-v2-sales-summary strong{

    font-size:24px;

    color:#111827;

}

.fx-v2-chart{

    height:260px;

    display:flex;
    align-items:flex-end;
    gap:8px;

}

.fx-v2-chart span{

    flex:1;

    border-radius:8px 8px 0 0;

    background:
        linear-gradient(
            to top,
            #f97316,
            #fdba74
        );

    transition:.2s;

}

.fx-v2-chart span:hover{

    opacity:.85;

}

.fx-v2-chart-footer{

    margin-top:16px;

    display:flex;
    justify-content:space-between;

    color:#94a3b8;

    font-size:12px;

}

.fx-v2-summary-list{

    display:flex;
    flex-direction:column;
    gap:16px;

}

.fx-v2-summary-list div{

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:16px;

    border-radius:14px;

    background:#fafafa;

}

.fx-v2-summary-list span{

    color:#64748b;

}

.fx-v2-summary-list strong{

    font-size:20px;

    color:#111827;

}

/* MARKETPLACES */

.fx-v2-marketplaces{

    display:grid;
    grid-template-columns:repeat(3,1fr);

    gap:20px;

}

.fx-v2-market-card{

    background:#fff;

    border-radius:20px;

    border:1px solid #e8edf4;

    padding:24px;

    box-shadow:0 10px 24px rgba(15,23,42,.05);

    transition:.25s;

}

.fx-v2-market-card:hover{

    transform:translateY(-4px);

    box-shadow:0 18px 36px rgba(15,23,42,.08);

}

.fx-v2-market-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:24px;

}

.fx-v2-market-header>div{

    display:flex;

    align-items:center;

    gap:14px;

}

.fx-v2-market-icon{

    width:48px;
    height:48px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:14px;

    background:#fff4ea;

    font-weight:700;

}

.fx-v2-market-metrics{

    display:grid;
    grid-template-columns:repeat(2,1fr);

    gap:16px;

}

.fx-v2-market-metrics div{

    background:#fafafa;

    padding:16px;

    border-radius:14px;

}

.fx-v2-market-metrics span{

    display:block;

    font-size:12px;

    color:#94a3b8;

    margin-bottom:6px;

}

.fx-v2-market-metrics strong{

    font-size:22px;

}

.fx-v2-status{

    font-size:12px;

    font-weight:700;

    padding:6px 10px;

    border-radius:999px;

}

.is-online{

    background:#ecfdf5;

    color:#16a34a;

}

.is-offline{

    background:#fef2f2;

    color:#dc2626;

}

@media(max-width:1100px){

    .fx-v2-main-grid{

        grid-template-columns:1fr;

    }

    .fx-v2-marketplaces{

        grid-template-columns:1fr;

    }

}

@media(max-width:700px){

    .fx-v2-sales-summary{

        grid-template-columns:1fr;

    }

}



/* =====================================================
   FOXMAIA DASHBOARD 3.0
   Compact Hero Override
===================================================== */

.fx-v2-dashboard{

    gap:24px;

}

.fx-v2-hero{

    padding:28px 34px !important;

    border-radius:20px;

    min-height:auto !important;

}

.fx-v2-hero-content{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:30px;

    margin-bottom:24px;

}

.fx-v2-hero-copy h2{

    font-size:34px !important;

    margin-bottom:8px !important;

}

.fx-v2-hero-copy p{

    font-size:15px;

    max-width:650px;

    margin-bottom:16px !important;

}

.fx-v2-hero-meta{

    margin-top:10px !important;

}

.fx-v2-hero-actions{

    display:flex;

    gap:14px;

    align-items:center;

}

.fx-v2-kpi-grid{

    display:grid;

    grid-template-columns:repeat(4,minmax(0,1fr));

    gap:18px;

}

.fx-v2-kpi-card{

    min-height:110px;

    padding:20px;

    border-radius:18px;

}

.fx-v2-kpi-card strong{

    font-size:30px !important;

}

.fx-v2-main-grid{

    margin-top:8px !important;

}



/* =====================================================
   FOXMAIA — Full Width Dashboard
===================================================== */

.fx-v2-dashboard{
    width:100%;
    max-width:none;
    margin:0;
}

.fx-v2-hero,
.fx-v2-main-grid,
.fx-v2-kpi-grid{
    width:100%;
    max-width:none;
    box-sizing:border-box;
}
/* FOXMAIA Design System — Operations */
.fx-ops-page{display:grid;gap:20px;color:#172033}.fx-ops-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:26px;border:1px solid #e3e8f0;border-radius:18px;background:linear-gradient(135deg,#fff,#f7f9fc)}.fx-ops-heading h2{margin:5px 0 7px;font-size:28px;letter-spacing:-.025em}.fx-ops-heading p{margin:0;color:#657187}.fx-ops-eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#2563eb}.fx-ops-actions{display:flex;gap:10px;flex-wrap:wrap}.fx-ops-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.fx-ops-kpi,.fx-ops-card{border:1px solid #e3e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 26px rgba(15,23,42,.045)}.fx-ops-kpi{padding:20px}.fx-ops-kpi span{display:block;color:#657187;font-size:13px;font-weight:700}.fx-ops-kpi strong{display:block;margin:8px 0 5px;font-size:30px;letter-spacing:-.04em}.fx-ops-kpi small{color:#8a94a6}.fx-ops-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:16px}.fx-ops-grid-main{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.fx-ops-card{padding:20px;min-width:0}.fx-ops-card>header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.fx-ops-card h3{margin:4px 0 0;font-size:18px}.fx-ops-card>header>strong{font-size:22px}.fx-ops-chart{height:210px;display:flex;align-items:end;gap:5px;padding:14px 4px 0;border-bottom:1px solid #dce3ec;background:repeating-linear-gradient(to top,#fff 0,#fff 51px,#eef2f7 52px)}.fx-ops-chart span{flex:1;min-height:2px;height:var(--bar);border-radius:4px 4px 0 0;background:linear-gradient(#3b82f6,#2563eb)}.fx-ops-card>footer{display:flex;justify-content:space-between;gap:16px;margin-top:12px;color:#657187;font-size:12px}.fx-ops-list{display:grid}.fx-ops-list>a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px 0;border-bottom:1px solid #edf1f6;color:#273247;text-decoration:none}.fx-ops-list>a:last-child{border-bottom:0}.fx-ops-list>a>span{display:grid;gap:3px}.fx-ops-list small{color:#8a94a6}.fx-ops-list>a>strong{font-size:17px}.fx-ops-table{overflow:auto}.fx-ops-table table{width:100%;border-collapse:collapse}.fx-ops-table th,.fx-ops-table td{padding:11px 10px;border-bottom:1px solid #edf1f6;text-align:left;white-space:nowrap}.fx-ops-table th{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7c879a}.fx-ops-status{display:inline-flex;padding:4px 8px;border-radius:99px;background:#edf3ff;color:#2459b8;font-size:11px;font-weight:800}.fx-ops-empty{padding:32px 16px;text-align:center;color:#7c879a;background:#f8fafc;border-radius:12px}.fx-ops-channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.fx-ops-channel-grid article{position:relative;display:grid;gap:5px;padding:16px;border:1px solid #e6ebf2;border-radius:12px;background:#fafbfd}.fx-ops-channel-grid span,.fx-ops-channel-grid small{color:#748096}.fx-ops-channel-grid em{position:absolute;right:12px;top:12px;padding:4px 8px;border-radius:99px;background:#fee2e2;color:#991b1b;font-size:10px;font-style:normal;font-weight:800}.fx-ops-channel-grid em.is-online{background:#dcfce7;color:#166534}@media(max-width:1050px){.fx-ops-kpis{grid-template-columns:repeat(2,1fr)}.fx-ops-grid,.fx-ops-grid-main{grid-template-columns:1fr}}@media(max-width:640px){.fx-ops-heading{align-items:flex-start;flex-direction:column}.fx-ops-kpis{grid-template-columns:1fr}.fx-ops-channel-grid{grid-template-columns:1fr}.fx-ops-card{padding:16px}}
