/* ===================== VARIÁVEIS========================== */
:root {
    --gold: #d4a62a;
    --gold-light: #f0c45b;
    --gold-dark: #8f6510;

    --navy: #020914;
    --navy-2: #04111f;
    --navy-3: #07182a;

    --card: #071525;
    --card-light: #0a1d32;

    --border: #18324d;
    --border-soft: rgba(24, 50, 77, 0.72);
    --border-gold: rgba(212, 166, 42, 0.55);

    --white: #ffffff;
    --text: #e7edf5;
    --muted: #8fa1b5;

    --green: #28b463;
    --green-light: #67d99b;

    --red: #e74c3c;
    --red-light: #ff8585;

    --orange: #f39c12;
    --blue: #3498db;

    --radius-sm: 7px;
    --radius-md: 10px;
    --radius-lg: 14px;
    --radius-xl: 18px;

    --shadow-sm: 0 5px 16px rgba(0, 0, 0, 0.18);
    --shadow-md: 0 12px 30px rgba(0, 0, 0, 0.24);
    --shadow-lg: 0 25px 70px rgba(0, 0, 0, 0.55);

    --transition-fast: 0.18s ease;
    --transition: 0.25s ease;
}

/* ====================RESET============================= */
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    width: 100%;
    min-height: 100%;
    scroll-behavior: smooth;
}

body {
    width: 100%;
    min-height: 100vh;
    margin: 0;

    overflow-x: hidden;
    overflow-y: auto;

    font-family:
        Inter,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;

    color: var(--text);

    background:
        radial-gradient(
            circle at 20% 0%,
            rgba(30, 64, 110, 0.18),
            transparent 32%
        ),
        radial-gradient(
            circle at 100% 100%,
            rgba(212, 166, 42, 0.045),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #010811 0%,
            #03101f 45%,
            #020914 100%
        );
}

button,
input,
select,
textarea {
    font: inherit;
}

button {
    border: 0;
}

img {
    max-width: 100%;
    display: block;
}

/* =======================APP ROOT============================ */
.app-root {
    width: 100%;
    min-width: 0;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    overflow-x: clip;
}

/* ================HEADER====================== */
.header {
    width: 100%;
    height: 100px;

    position: fixed;
    top: 0;
    left: 0;
    right: 0;

    z-index: 1000;

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

    gap: 24px;

    padding: 10px 20px;

    border-bottom:
        1px solid rgba(212, 166, 42, 0.45);

    background:
        linear-gradient(
            90deg,
            rgba(2, 10, 20, 0.99),
            rgba(6, 20, 35, 0.98)
        );

    box-shadow:
        0 8px 25px rgba(0, 0, 0, 0.22);
}

/* ====================MARCA====================== */
.brand {
    flex: 1 1 auto;
    min-width: 0;

    display: flex;
    align-items: center;

    gap: 18px;
}

/*=================LOGO============*/
.logo {
    width: clamp(125px, 10vw, 170px);
    height: 62px;

    flex-shrink: 0;

    object-fit: contain;

    filter:
        drop-shadow(
            0 0 9px rgba(212, 166, 42, 0.18)
        );
}

/*===========INFORMAÇÕES DA MARCA===============*/
.brand-info {
    min-width: 0;

    padding-left: 18px;

    border-left:
        1px solid rgba(212, 166, 42, 0.40);
}

.title {
    margin: 0;

    color: var(--white);

    font-size: clamp(20px, 1.8vw, 30px);
    font-weight: 900;

    line-height: 1.05;

    letter-spacing: 0.015em;

    text-transform: uppercase;

    white-space: nowrap;
}

.subtitle {
    margin-top: 7px;

    display: flex;
    align-items: center;

    gap: 5px;

    color: var(--gold-light);

    font-size: 9px;
    font-weight: 800;

    letter-spacing: 0.12em;

    text-transform: uppercase;
}

.subtitle strong {
    color: var(--gold-light);

    font-weight: 900;
}

/* ===================LADO DIREITO===================*/
.header-right {
    display: flex;
    align-items: center;
    gap: 12px;
}

.header-user-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* ==================BOTÕES DO HEADER================= */
.header-action {
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    font-family: inherit;
    cursor: pointer;
    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

.fullscreen-btn {
    width: 42px;
    min-width: 42px;
    padding: 0;
    border: 1px solid rgba(148, 163, 184, 0.25);
    background: rgba(148, 163, 184, 0.07);
    color: #b8c5d3;
    font-size: 18px;
}

.fullscreen-btn:hover {
    color: var(--gold-light);
    border-color:
        rgba(212, 166, 42, 0.50);
    background:
        rgba(212, 166, 42, 0.08);
}

/* =========================================================
   RELÓGIO
========================================================= */
.now {
    width: 144px;
    min-width: 144px;
    height: 48px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4px 10px;
    margin: 0;
    border: 1px solid rgba(212, 166, 42, 0.50);
    border-radius: 9px;
    background:
        linear-gradient(
            180deg,
            rgba(12, 30, 48, 0.90),
            rgba(4, 16, 29, 0.90)
        );
}

.clock {
    color: var(--gold-light);
    font-size: 16px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.04em;
    font-variant-numeric: tabular-nums;
}

.date {
    margin-top: 4px;
    color: var(--muted);
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}

/* =========================================================
   TERMINAR SESSÃO
========================================================= */
.logout-btn {
    min-width: 144px;
    height: 48px;
    padding: 0 13px;
    gap: 7px;
    border: 1px solid rgba(239, 68, 68, 0.38);
    border-radius: 9px;
    background:rgba(239, 68, 68, 0.055);
    color: #f87171;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    white-space: nowrap;
}

.logout-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 15px;

    line-height: 1;
}

.logout-btn:hover {
    color: #fca5a5;
    border-color: rgba(248, 113, 113, 0.85);
    background:rgba(239, 68, 68, 0.14);
    transform: translateY(-1px);
}

.logout-btn:active,
.fullscreen-btn:active {
    transform: translateY(0);
}

/* =========================================================
   RESPONSIVO — TABLET
========================================================= */
@media (max-width: 1100px) {

    .header {
        height: 86px;

        padding:
            10px 18px;

        gap: 15px;
    }


    .logo {
        width: 135px;
        height: 58px;
    }


    .brand {
        gap: 14px;
    }


    .brand-info {
        padding-left: 14px;
    }


    .title {
        font-size: 22px;
    }


    .subtitle {
        margin-top: 7px;

        font-size: 9px;
    }


    .now {
        min-width: 130px;
    }


    .logout-btn {
        min-width: 44px;
        width: 44px;

        padding: 0;
    }


    .logout-text {
        display: none;
    }
}

/* =========================================================
   RESPONSIVO — MOBILE
========================================================= */
@media (max-width: 700px) {

    .header {
        height: 76px;

        padding:
            8px 12px;

        gap: 8px;
    }


    .brand {
        flex: 1;

        gap: 10px;
    }


    .logo {
        width: 82px;
        height: 48px;
    }


    .brand-info {
        padding-left: 10px;
    }


    .title {
        max-width: 210px;

        overflow: hidden;

        font-size: 16px;

        white-space: nowrap;

        text-overflow: ellipsis;
    }


    .subtitle {
        margin-top: 5px;

        font-size: 8px;

        letter-spacing: 0.07em;
    }


    .header-right {
        gap: 6px;
    }


    .header-action {
        width: 38px;
        min-width: 38px;
        height: 38px;
    }


    .fullscreen-btn {
        font-size: 17px;
    }


    .logout-btn {
        padding: 0;
    }

    .logout-icon {
        font-size: 16px;
    }

    .logout-text {
        display: none;
    }

    .now {
        min-width: 94px;
        height: 42px;

        padding:
            4px 7px;

        border-radius: 8px;
    }

    .clock {
        font-size: 14px;
    }

    .date {
        margin-top: 4px;

        max-width: 88px;

        overflow: hidden;

        font-size: 7px;

        text-overflow: ellipsis;
    }
}

/* =========================================================
   ECRÃ MUITO PEQUENO
========================================================= */
@media (max-width: 480px) {

    .logo {
        width: 65px;
    }


    .brand-info {
        border-left: 0;

        padding-left: 0;
    }


    .title {
        max-width: 135px;

        font-size: 14px;
    }


    .subtitle {
        font-size: 7px;
    }


    .now {
        min-width: 76px;
    }


    .date {
        display: none;
    }


    .clock {
        font-size: 12px;
    }
}

/*=============TOKEN=======================*/
.token-area {
    min-width: 0;

    display: flex;
    align-items: center;

    gap: 9px;

    padding: 9px 12px;

    border:
        1px solid rgba(212, 166, 42, 0.25);

    border-radius: var(--radius-md);

    background:
        rgba(0, 0, 0, 0.16);
}

.token-label {
    color: var(--gold-light);

    font-size: 10px;

    font-weight: 900;

    letter-spacing: 0.08em;

    text-transform: uppercase;
}

.token-value {
    max-width: 140px;

    overflow: hidden;

    color: var(--text);

    font-family: "JetBrains Mono", monospace;

    font-size: 11px;

    font-weight: 700;

    white-space: nowrap;

    text-overflow: ellipsis;
}

/* ======================== KPIs======================== */
.kpis {
    width: 100%;
    min-width: 0;
    position: fixed;
    top: 100px;
    left: 0;
    right: 0;
    z-index: 900;
    display: grid;
    grid-template-columns:
        repeat(6, minmax(0, 1fr));
    gap: 10px;
    padding: 12px 20px;
    background:
        linear-gradient(
            180deg,
            rgba(2, 9, 20, 0.99),
            rgba(3, 13, 25, 0.97)
        );
    border-bottom:
        1px solid rgba(24, 50, 77, 0.50);
    box-shadow:
        0 8px 20px rgba(0, 0, 0, 0.15);
}

.kpi {
    position: relative;
    border: 1px solid var(--gold);
    min-width: 0;
    min-height: 82px;

    display: flex;
    align-items: center;

    gap: 13px;

    padding: 14px;

    overflow: hidden;


    border-radius: var(--radius-lg);

    background:
        linear-gradient(
            145deg,
            rgba(8, 25, 44, 0.98),
            rgba(3, 13, 25, 0.98)
        );

    box-shadow: var(--shadow-sm);

    transition:
        transform var(--transition),
        border-color var(--transition),
        background var(--transition),
        box-shadow var(--transition);
}

.kpi::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    
    background:
        linear-gradient(
            180deg,
            var(--gold-light),
            transparent
        );

    opacity: 0.75;
}

.kpi:hover {
    transform: translateY(-3px);
    border-color: var(--border-gold);
    background: var(--gold);
    box-shadow: var(--shadow-md);
}

.kpi .icon {
    width: 48px;
    height: 48px;

    flex-shrink: 0;

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

    border-radius: 11px;

    font-size: 23px;

    background:
        rgba(212, 166, 42, 0.11);

    border:
        1px solid rgba(212, 166, 42, 0.25);
}

.kpi > div {
    min-width: 0;

    display: flex;
    flex-direction: column;
}

.kpi small {
    color: #ffffff;

    font-size: 10px;

    font-weight: 900;

    letter-spacing: 0.07em;

    text-transform: uppercase;

    white-space: nowrap;

    overflow: hidden;

    text-overflow: ellipsis;
}

.kpi strong {
    margin-top: 5px;

    color: var(--white);

    font-size: 29px;

    font-weight: 900;

    line-height: 1;

    font-variant-numeric: tabular-nums;
}

/*====================MODAL - KPI - INTERAÇÃO================================ */
.kpi {
    cursor: pointer;
    user-select: none;
    transition:
        transform 0.2s ease,
        background 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

.kpi:hover {
    transform: translateY(-3px);
}

.kpi:active {
    transform: translateY(-1px);
}

.kpi:focus {
    outline: none;
}

.kpi:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
}


/* =================KPI HISTORY MODAL=================== */
.kpi-history-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;

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

    padding: 30px;

    background: rgba(0, 0, 0, 0.72);

    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.kpi-history-modal.active {
    display: flex;
}

/* =================CONTEÚDO========================== */
.kpi-history-content {
    position: relative;

    width: min(900px, 95vw);
    max-height: 85vh;

    overflow: hidden;

    border: 1px solid rgba(212, 166, 42, 0.25);
    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            rgba(9, 28, 48, 0.98),
            rgba(2, 9, 20, 0.99)
        );

    box-shadow:
        0 25px 80px rgba(0, 0, 0, 0.55);

    color: var(--white);

    animation: kpiModalOpen 0.2s ease-out;
}

@keyframes kpiModalOpen {
    from {
        opacity: 0;
        transform: translateY(15px) scale(0.98);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* =================BOTÃO FECHAR======================= */
.kpi-history-close {
    position: absolute;
    top: 16px;
    right: 18px;

    width: 38px;
    height: 38px;

    border: none;
    border-radius: 50%;

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

    color: var(--white);

    font-size: 25px;
    line-height: 1;

    cursor: pointer;

    transition:
        background 0.2s ease,
        transform 0.2s ease;
}

.kpi-history-close:hover {
    background: rgba(212, 166, 42, 0.2);
    transform: rotate(90deg);
}

/* ==================CABEÇALHO DO HISTÓRICO=================== */
.kpi-history-header {
    padding: 26px 70px 20px 28px;

    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

.kpi-history-eyebrow {
    display: block;

    margin-bottom: 5px;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 0.12em;

    color: var(--gold);
}

.kpi-history-header h2 {
    margin: 0;

    font-size: 22px;
    font-weight: 800;
}

.kpi-history-current {
    display: flex;
    align-items: center;

    gap: 12px;

    margin-top: 14px;
}

.kpi-history-current strong {
    font-size: 34px;
    font-weight: 900;

    color: var(--gold);
}

/* ==================LISTA========================= */
.kpi-history-list {
    max-height: 55vh;

    overflow-y: auto;

    padding: 20px 28px 28px;
}

.kpi-history-item {
    display: grid;

    grid-template-columns: 120px 1fr auto;

    align-items: center;

    gap: 18px;

    padding: 14px 16px;

    margin-bottom: 8px;

    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 10px;

    background: rgba(255, 255, 255, 0.035);
}

.kpi-history-time {
    font-size: 13px;

    color: var(--muted);
}

.kpi-history-value {
    font-size: 18px;
    font-weight: 800;
}

.kpi-history-change {
    min-width: 70px;

    text-align: right;

    font-size: 13px;
    font-weight: 800;
}

.kpi-history-change.up {
    color: #3ebe78;
}

.kpi-history-change.down {
    color: #ef6b6b;
}

.kpi-history-change.same {
    color: var(--muted);
}

/* =====================VAZIO========================= */
.kpi-history-empty {
    padding: 45px 20px;

    text-align: center;

    color: var(--muted);
}

/* ===================SCROLLBAR===================== */
.kpi-history-list::-webkit-scrollbar {
    width: 6px;
}

.kpi-history-list::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.03);
}

.kpi-history-list::-webkit-scrollbar-thumb {
    border-radius: 999px;

    background: rgba(212, 166, 42, 0.5);
}

/* ========================MAIN============================ */
.dashboard-main {
    width: 100%;
    flex: 1;
    min-height: 0;
    display: grid;
    grid-template-columns:
        minmax(0, 1fr) 300px;
    gap: 18px;
    padding: 220px 24px 95px;
    margin-top: 0;
    overflow: hidden;
}

.production-area {
    min-width: 0;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.tables {
    width: 100%;

    min-height: 0;

    flex: 1;

    display: flex;
    flex-direction: column;
}

/* ===================== PREPARATION SECTION ==================== */
.preparation-section {
    width: 100%;
    height: 100%;

    min-height: 0;

    display: flex;
    flex-direction: column;

    overflow: hidden;

    border:
        1px solid var(--border-gold);

    border-radius: var(--radius-lg);

    background:
        linear-gradient(
            180deg,
            rgba(7, 21, 37, 0.98),
            rgba(3, 12, 23, 0.98)
        );

    box-shadow: var(--shadow-md);
}

/* ====================== SECTION HEADER====================== */

.section-header {
    min-height: 78px;

    flex-shrink: 0;

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

    gap: 18px;

    padding: 13px 17px;

    border-bottom:
        1px solid var(--border-gold);

    background:
        linear-gradient(
            90deg,
            rgba(3, 13, 25, 0.99),
            rgba(10, 28, 47, 0.90)
        );
}

.section-title {
    min-width: 0;

    display: flex;
    align-items: center;

    gap: 12px;
}

.section-icon {
    width: 46px;
    height: 46px;

    flex-shrink: 0;

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

    font-size: 22px;

    border-radius: 10px;

    background:
        rgba(212, 166, 42, 0.12);

    border:
        1px solid rgba(212, 166, 42, 0.42);
}

.section-title h2 {
    color: var(--white);

    font-size: 19px;

    font-weight: 900;

    letter-spacing: 0.035em;
}

.section-count {
    display: block;

    margin-top: 3px;

    color: var(--muted);

    font-size: 10px;
}

.section-count strong {
    color: var(--gold-light);
}

/* ====================TOTAIS DE PRODUÇÃO============================ */
.production-totals {
    display: flex;

    overflow: hidden;

    border:
        1px solid rgba(212, 166, 42, 0.28);

    border-radius: var(--radius-sm);
}

.production-total {
    min-width: 140px;

    padding: 7px 15px;

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

    text-align: center;

    background:
        rgba(0, 0, 0, 0.15);
}

.production-total + .production-total {
    border-left:
        1px solid rgba(212, 166, 42, 0.28);
}

.production-total small {
    color: var(--muted);

    font-size: 8px;

    font-weight: 900;

    letter-spacing: 0.08em;

    text-transform: uppercase;
}

.production-total strong {
    margin-top: 4px;

    color: var(--gold-light);

    font-size: 18px;

    font-weight: 900;

    font-variant-numeric: tabular-nums;
}

/* ================== GRID DAS SUBORDENS============================ */
.subordens-grid {
    flex: 1;
    min-height: 0;
    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));
    gap: 14px;
    padding: 15px;
    overflow-y: auto;
    overflow-x: hidden;
    align-content: start;
    scrollbar-width:thin;
    scrollbar-color:
        rgba(212, 166, 42, 0.45)
        transparent;
}

.subordens-grid::-webkit-scrollbar {
    width: 5px;
}

.subordens-grid::-webkit-scrollbar-track {
    background:
        rgba(255, 255, 255, 0.02);
}

.subordens-grid::-webkit-scrollbar-thumb {
    border-radius: 999px;

    background:
        rgba(212, 166, 42, 0.50);
}

/* =========================================================
   PRIORIDADE DAS SUBORDENS
========================================================= */

.subordem-header-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}


.priority-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    padding: 6px 10px;

    border-radius: 999px;

    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.6px;

    white-space: nowrap;

    border: 1px solid transparent;
}


.priority-dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: currentColor;
}


/* PRIORIDADE 1 */

.priority-high {
    color: #ef4444;

    background:
        rgba(239, 68, 68, 0.10);

    border-color:
        rgba(239, 68, 68, 0.25);
}


/* PRIORIDADE 2 */

.priority-medium {
    color: #f59e0b;

    background:
        rgba(245, 158, 11, 0.10);

    border-color:
        rgba(245, 158, 11, 0.25);
}


/* PRIORIDADE 3+ */

.priority-normal {
    color: #94a3b8;

    background:
        rgba(148, 163, 184, 0.08);

    border-color:
        rgba(148, 163, 184, 0.18);
}

/* ========================CARD DA SUBORDEM=================== */
.subordem-card {
    position: relative;

    width: 100%;
    min-width: 0;

    display: flex;
    flex-direction: column;

    overflow: hidden;

    border:
        1px solid rgba(31, 55, 80, 0.95);

    border-radius: var(--radius-lg);

    background:
        linear-gradient(
            145deg,
            rgba(9, 29, 49, 0.98),
            rgba(3, 14, 27, 0.98)
        );

    box-shadow:
        0 7px 22px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.025);

    cursor: pointer;

    transition:
        transform var(--transition),
        border-color var(--transition),
        box-shadow var(--transition),
        background var(--transition);
}

.subordem-card::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;
    right: 0;

    height: 2px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(212, 166, 42, 0.90),
            transparent
        );

    opacity: 0.70;
}

.subordem-card::after {
    content: "";

    position: absolute;

    top: 14px;
    bottom: 14px;
    left: 0;

    width: 3px;

    border-radius:
        0 4px 4px 0;

    background:
        linear-gradient(
            180deg,
            var(--gold-light),
            var(--gold-dark)
        );

    opacity: 0.85;
}

.subordem-card:hover {
    transform: translateY(-3px);

    border-color:
        rgba(212, 166, 42, 0.75);

    box-shadow:
        0 14px 30px rgba(0, 0, 0, 0.30);
}

.subordem-card:active {
    transform: scale(0.99);
}

/* ========================CARD HEADER============================ */
.subordem-card-header {
    position: relative;
    min-height: 70px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 11px 18px;
    border-bottom: 1px solid var(--gold);
    background:
        linear-gradient(
            90deg,
            rgba(8, 27, 46, 0.98),
            rgba(4, 16, 29, 0.92)
        );
}

.subordem-card-header::before {
    content: "";
    width: 7px;
    height: 7px;
    position: absolute;
    left: 9px;
    top: 50%;
    transform: translateY(-50%);

    border-radius: 50%;

    background: var(--gold-light);

    box-shadow:
        0 0 10px rgba(212, 166, 42, 0.45);
}

.subordem-code {
    min-width: 0;
    color: #f4c95d;
    font-size: 20px;
    font-weight: 900;
    letter-spacing: 0.04em;
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.subordem-status {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 25px;
    padding: 4px 9px;
    border-radius: 999px;
    color: var(--navy);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    white-space: nowrap;
    border: 1px solid var(--gold);
    background: var(--gold);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
    transition: all 0.5s ease-in-out;
}

.subordem-status:hover{
    background: var(--navy);
    color: #ffffff;
}

/* ======================== ESTADOS============================ */
.subordem-status.progress {
    background:
        linear-gradient(
            180deg,
            #c57d13,
            #8d5107
        );
}

.subordem-status.done {
    background:
        linear-gradient(
            180deg,
            #2ecc71,
            #168a47
        );
}

.subordem-status.confirmed {
    background:
        linear-gradient(
            180deg,
            #3498db,
            #17679a
        );
}

.subordem-status.cancel {
    background:
        linear-gradient(
            180deg,
            #e74c3c,
            #a5271b
        );
}

/* =====================INFORMAÇÕES DA SUBORDEM========================= */
.subordem-card-body {
    min-height: 0; 
    display: flex; 
    flex-direction: column;  
    overflow-x: hidden; 
    scrollbar-width: thin; 
    scrollbar-color: rgba(212, 166, 42, 0.45) transparent;
}

/* ======================== CHECKLIST============================ */
.subordem-checklist {
    width: 60%; 
    min-height: 50px;
    display: flex; 
    align-items: center; 
    gap: 8px; 
    padding: 6px 10px; 
    border-radius: 8px; 
    background: linear-gradient( 145deg, rgba(9, 28, 47, 0.75), rgba(2, 12, 23, 0.75) );
    overflow: hidden;
    margin-left: auto;
    flex-shrink: 0;
}

.checklist-item, 
.subordem-waste {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.025);
    overflow: hidden;
    padding: 6px 8px;
    
}

.checklist-item.checked {
    border-color:
        rgba(62, 190, 120, 0.35);

    background:
        rgba(62, 190, 120, 0.07);
}

.check-icon {
    width: 23px;
    height: 23px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid rgba(143, 161, 181, 0.45);
    border-radius: 5px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 900;
}

.checklist-item.checked .check-icon {
    border-color: #3ebe78;
    background: #3ebe78;
    box-shadow:
        0 0 10px rgba(62, 190, 120, 0.18);
}

.check-content {
    min-width: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.check-content strong {
    display: block; 
    color: var(--text); 
    font-size: 12px; 
    font-weight: 600; 
    white-space: nowrap; 
    overflow: hidden; 
    text-overflow: ellipsis;
}

.check-content small {
    display: block; 
    margin-top: 2px; 
    color: var(--text-muted); 
    font-size: 10px; 
    white-space: nowrap; 
    overflow: hidden; 
    text-overflow: ellipsis;
}

.checklist-item.checked .check-content strong {
    color: var(--green-light);
}

@keyframes checkAlert { 
    0% { 
        transform: scale(1); 
        box-shadow: 0 0 0 rgba(231, 76, 60, 0); 
    } 
    50% { 
        transform: scale(1.04); 
        box-shadow: #3ebe78; 
    } 
    100% { 
        transform: scale(1); 
        box-shadow: 0 0 0 rgba(231, 76, 60, 0); 
    } 
} 

/* ===================== SOMENTE QUANDO EXISTIR QUEBRA =================== */ 
.checklist-item.checked { 
    border: 1px solid #3ebe78; 
    background: rgba(27, 90, 55, 0.08);
    animation: checkAlert 2s ease-in-out infinite; 
}


/* ======================== QUEBRAS=========================== */
.subordem-waste {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px;
    border-radius: 7px;
    background: rgba(231, 76, 60, 0.06);
    color: #e74c3c;
    font-size: 12px;
    font-weight: 600;
    margin: 0 10px
}

.waste-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background:
        rgba(231, 76, 60, 0.12);
    border:
        1px solid rgba(231, 76, 60, 0.25);
    font-size: 12px;
}

.subordem-waste strong {
    margin-left: auto;
    color: #ff8a80;
    font-size: 11px;
}

/* Cor neutra quando sem quebras */
.subordem-waste:not(.has-waste) {
    border-color: rgba(143, 161, 181, 0.25);
    background: rgba(143, 161, 181, 0.06);
    color: #8fa1b5;
}

.subordem-waste:not(.has-waste) .waste-icon {
    background: rgba(143, 161, 181, 0.12);
    border-color: rgba(143, 161, 181, 0.25);
}

.subordem-waste:not(.has-waste) strong {
    color: #8fa1b5;
}

/* Cor de alerta quando tem quebras */
.subordem-waste.has-waste {
    border-color: rgba(231, 76, 60, 0.35);
    background: rgba(231, 76, 60, 0.08);
}

.subordem-waste.has-waste .waste-icon {
    background: rgba(231, 76, 60, 0.15);
    border-color: rgba(231, 76, 60, 0.35);
}

/* ======================== ANIMAÇÃO DE ALERTA ========================= */ 
@keyframes wasteAlert { 
    0% { 
        transform: scale(1); 
        box-shadow: 0 0 0 rgba(231, 76, 60, 0); 
    } 
    50% { 
        transform: scale(1.04); 
        box-shadow: 0 0 12px rgba(231, 76, 60, 0.35); 
    } 
    100% { 
        transform: scale(1); 
        box-shadow: 0 0 0 rgba(231, 76, 60, 0); 
    } 
} 

/* ===================== SOMENTE QUANDO EXISTIR QUEBRA =================== */ 
.subordem-waste.has-waste { 
    border: 1px solid rgba(231, 76, 60, 0.35); 
    background: rgba(231, 76, 60, 0.08); 
    animation: wasteAlert 1.8s ease-in-out infinite; 
}

/* ===================== LINHA PRINCIPAL ========================= */
.subordem-info-row-bottom{
    width: 100%; 
    min-width: 0;     
    display: grid; 
    grid-template-columns: repeat(4, minmax(0, 1fr));   
    align-items: center; 
    gap: 12px;  
    margin: 0;
    padding: 4px 10px;
    border-radius: 8px;
    background:
        linear-gradient(
            145deg,
            rgba(9, 28, 47, 0.75),
            rgba(2, 12, 23, 0.75)
        );
    transition: border-color 0.2s ease, 
        background 0.2s ease, 
        transform 0.2s ease;
}

.info-field {
    width: 100%; 
    min-width: 0;     
    display: flex;  
    align-items: center; 
    justify-content: space-between;
    gap: 8px; 
    margin: 0; 
    padding: 4px 6px;
    border-radius: 8px;
    background:
        linear-gradient(
            145deg,
            rgba(9, 28, 47, 0.75),
            rgba(2, 12, 23, 0.75)
        );
    transition: border-color 0.2s ease, 
        background 0.2s ease, 
        transform 0.2s ease;
}

.info-field:hover {
    border-color: rgba(212, 166, 42, 0.45);
    background:
        linear-gradient(
            145deg,
            rgba(12, 35, 57, 0.85),
            rgba(3, 15, 28, 0.85)
        );

    transform: translateY(-1px);
}

.info-field label {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--gold-light);
    font-size: 14px;
    font-weight: 700;
    border-radius: 7px;
}

.info-value {
    width: 100%; 
    min-width: 0; 
    display: flex; 
    align-items: center; 
    padding: 0 6px; 
    color: var(--text); 
    font-size: 12px; 
    text-align: center;
    font-weight: 500;  
    overflow: hidden; 
    white-space: nowrap; 
    text-overflow: ellipsis; 
    border-radius: 6px; 
}

.meal-value {
    color: var(--gold-light);
    font-weight: 900;
    font-variant-numeric: tabular-nums;
}

/* =======================TABELA============================= */
.preparation-table-wrap {
    width: 100%;
    padding: 12px 14px 16px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color:
        rgba(212, 166, 42, 0.55)
        rgba(255, 255, 255, 0.04);
}

.preparation-table-wrap::-webkit-scrollbar {
    height: 6px;
}

.preparation-table-wrap::-webkit-scrollbar-track {
    background:
        rgba(255, 255, 255, 0.035);
    border-radius: 999px;
}

.preparation-table-wrap::-webkit-scrollbar-thumb {
    background:
        linear-gradient(
            90deg,
            rgba(212, 166, 42, 0.35),
            rgba(212, 166, 42, 0.75)
        );
    border-radius: 999px;
}

.preparation-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.preparation-table thead th {
    padding: 10px 12px;
    color: var(--gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: center;
    white-space: nowrap;
    background: rgba(255, 255, 255, 0.025);
    border-top: 1px solid rgba(56, 81, 110, 0.35);
    border-bottom: 1px solid rgba(56, 81, 110, 0.45);
}

.preparation-table thead th:first-child {
    border-radius: 8px 0 0 8px;
}

.preparation-table thead th:last-child {
    border-radius: 0 8px 8px 0;
}

/* ======================CÉLULAS====================== */
.preparation-table tbody td {
    text-align: center;
    padding: 11px 12px;
    color: var(--text);
    font-size: 12px;
    font-weight: 600;
    vertical-align: middle;
    background:
        linear-gradient(
            135deg,
            rgba(7, 24, 42, 0.92),
            rgba(4, 17, 31, 0.92)
        );
    border-top: 1px solid rgba(24, 50, 77, 0.65);
    border-bottom: 1px solid rgba(24, 50, 77, 0.65);
    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

/* ==================CANTOS DA LINHA==================== */
.preparation-table tbody td:first-child {
    border-left: 1px solid rgba(24, 50, 77, 0.65);
    border-radius: 9px 0 0 9px;
}

.preparation-table tbody td:last-child {
    border-right: 1px solid rgba(24, 50, 77, 0.65);
    border-radius: 0 9px 9px 0;
}

.preparation-table tbody tr {
    transition: transform 0.2s ease;
}

.preparation-table tbody tr:hover {
    transform: translateY(-1px);
}

.preparation-table tbody tr:hover td {
    background:
        linear-gradient(
            135deg,
            rgba(14, 39, 62, 0.98),
            rgba(6, 23, 39, 0.98)
        );

    border-color:
        rgba(212, 166, 42, 0.28);
}

/* ==================PRODUTO====================== */
.preparation-table th:first-child,
.preparation-table td:first-child {
    width: 22%;
}

.product-cell {
    min-width: 150px;
    color: #f1f5f9 !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    line-height: 1.4;
    white-space: normal !important;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* ================== QUANTIDADES=================== */
.preparation-table th:nth-child(2),
.preparation-table td:nth-child(2) {
    width: 14%;
}

.preparation-table th:nth-child(4),
.preparation-table td:nth-child(4) {
    width: 14%;
}

.preparation-table th:nth-child(5),
.preparation-table td:nth-child(5) {
    width: 14%;
}

.quantity-cell {
    color: #dce6f2 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

/* ===================QUEBRAS===================== */
.break-cell {
    color: #ef4444 !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

/* =================PROGRESSO======================= */
.preparation-table th:nth-child(3),
.preparation-table td:nth-child(3) {
    width: 22%;
}

.item-progress-cell {
    width: 100%;
    min-width: 150px;
}

/* ===================BARRA DE PROGRESSO================= */
.item-progress {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 9px;
}

.item-progress-bar {
    position: relative;
    width: 100%;
    max-width: 160px;
    height: 7px;
    overflow: hidden;
    border-radius: 999px;
    background:
        rgba(255, 255, 255, 0.08);
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.035);
}

.item-progress-bar-fill {
    width: 0;
    height: 100%;
    border-radius: inherit;
    transition:
        width 0.45s ease;
    box-shadow:
        0 0 8px rgba(255, 255, 255, 0.12);
}

/* ===============CORES DO PROGRESSO=================== */
.item-progress-bar-fill.progress-low {
    background:
        linear-gradient(
            90deg,
            #dc2626,
            #ef4444
        );
}

.item-progress-bar-fill.progress-medium {
    background:
        linear-gradient(
            90deg,
            #ca8a04,
            #eab308
        );
}

.item-progress-bar-fill.progress-high {
    background:
        linear-gradient(
            90deg,
            #16a34a,
            #22c55e
        );
}

/* ==================PERCENTUAL======================= */
.item-progress-value {
    min-width: 38px;
    color: #dce6f2;
    font-size: 10px;
    font-weight: 850;
    text-align: right;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

/* ===================TABELA VAZIA====================== */
.empty-preparation {
    padding: 28px 18px !important;
    color: var(--muted) !important;
    font-size: 12px !important;
    font-weight: 600;
    text-align: center;
    background: transparent !important;
    border: 1px dashed rgba(56, 81, 110, 0.5) !important;
    border-radius: 10px;
}

/* ========================PAINEL DIREITO========================= */
.panel {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

/* =======================CONCLUÍDAS=================== */
.priorities {
    flex: 1;
    min-height: 0;
    padding: 11px;
    border:
        1px solid var(--gold-light);
    border-radius: var(--radius-lg);
    background:
        linear-gradient(
            145deg,
            #071729,
            #040f1c
        );
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    cursor: pointer;
}

.priorities-title {
    padding:
        7px 9px 10px;
    color: var(--gold-light);
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.07em;
}

.completed-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 23px;
    height: 23px;
    margin-left: 7px;
    padding: 0 7px;
    border-radius: 20px;
    background:
        rgba(62, 190, 120, 0.12);
    border:
        1px solid rgba(62, 190, 120, 0.35);
    color: var(--green-light);
    font-size: 10px;
}

.completed-list {
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 8px;
    max-height: 100%;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color:
        rgba(212, 166, 42, 0.40)
        transparent;
}

.completed-subordem {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 10px;
    border-radius: 9px;
    background:
        rgba(255, 255, 255, 0.025);
    border:
        1px solid rgba(255, 255, 255, 0.07);
    transition:
        transform var(--transition-fast),
        background var(--transition-fast),
        border-color var(--transition-fast);
}

.completed-subordem:hover {
    transform: translateY(-2px);
    background:
        rgba(255, 255, 255, 0.045);
    border-color:
        rgba(54, 201, 120, 0.2);
}

.completed-icon {
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background:
        rgba(62, 190, 120, 0.14);
    border:
        1px solid rgba(62, 190, 120, 0.40);
    color: var(--green-light);
    font-weight: 800;
}

.completed-info {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.completed-info strong {
    color: #f2f4f7;
    font-size: 11px;
}

.completed-info span {
    margin-top: 3px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #9ca8b8;
    font-size: 10px;
}

.completed-info small {
    margin-top: 4px;
    color: var(--green-light);
    font-size: 9px;
}

.completed-progress {
    color: var(--green-light);
    font-size: 10px;
    font-weight: 700;
}

.priority-empty {
    padding: 20px;
    text-align: center;
    color: var(--muted);
    font-size: 11px;
}

.completed-status-text {
    color: #ffffff;
    background: #22c55e;
    text-transform: uppercase;
    font-size: 9px;
    font-weight: 900;
    padding: 2px 6px;
    border-radius: 6px;
    cursor: pointer;
}

/* ================== STATUS INFO===================== */
.status-info {
    font-size: 9px;
    font-weight: 900;
}

.status-ok {
    color: var(--green-light);
    border-color:
        rgba(62, 190, 120, 0.35);
    background:
        rgba(62, 190, 120, 0.08);
}

.status-pending {
    color: #f7c75e;
    border-color:
        rgba(212, 166, 42, 0.35);
    background:
        rgba(212, 166, 42, 0.08);
}

/* ================= ALERTAS ======================== */
.alerts {
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding:
        0 24px 15px;
}

.alert {
    padding:
        11px 14px;
    border-radius: 8px;
    color: var(--text);
    font-size: 12px;
    background:
        rgba(231, 76, 60, 0.10);
    border:
        1px solid rgba(231, 76, 60, 0.40);
}

/* ==================LOADING======================== */
.loading-state {
    grid-column: 1 / -1;
    min-height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--muted);
    font-size: 13px;
}

/* =================EMPTY====================== */
.empty-subordens {
    grid-column: 1 / -1;
    min-height: 220px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--muted);
    font-size: 14px;
    font-weight: 700;
    border:
        1px dashed rgba(212, 166, 42, 0.30);
    border-radius: 10px;
    background:
        rgba(255, 255, 255, 0.012);
}

/* ======================FOOTER====================== */
.footer {
    width: 100%;
    min-height: 78px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 15px;
    padding:
        12px 24px;
    background:
        linear-gradient(
            90deg,
            rgba(2, 14, 31, 0.99),
            rgba(6, 23, 45, 0.99),
            rgba(2, 14, 31, 0.99)
        );
    border-top:
        2px solid rgba(200, 155, 44, 0.75);
    box-shadow:
        0 -8px 30px rgba(0, 0, 0, 0.18);
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
}

.footer-stat {
    min-width: 220px;

    display: flex;
    flex-direction: column;

    justify-content: center;

    gap: 4px;

    padding:
        9px 16px;

    border-radius: 8px;

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

    transition:
        background var(--transition),
        transform var(--transition);
}

.footer-stat:hover {
    transform: translateY(-2px);
    background:
        rgba(200, 155, 44, 0.08);
}

.footer-label {
    color: #b9c8d8;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.footer-value {
    font-size: 21px;
    font-weight: 900;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
}

.footer-value.produced {
    color: #7ee8a8;
}

.footer-value.planned {
    color: #f7c75e;
}

.footer .sync {
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
    color: #8197ad;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
}

#sync-time {
    padding:
        5px 9px;
    color: var(--gold);
    font-weight: 800;
    border:
        1px solid rgba(200, 155, 44, 0.25);
    border-radius: 6px;
    background:
        rgba(200, 155, 44, 0.06);
    font-variant-numeric:
        tabular-nums;
}

/* ====================MODAL — OVERLAY======================== */
.subordem-details-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background:
        radial-gradient(
            circle at center,
            rgba(8, 28, 48, 0.30),
            rgba(1, 5, 12, 0.90)
        );
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity var(--transition),
        visibility var(--transition);
}

.subordem-details-modal.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* ==================MODAL — CONTENT=========================== */
.subordem-details-content {
    width: min(100vw, 1400px);
    max-width: 1400px;
    max-height: 100vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(212, 166, 42, 0.45);
    border-radius: var(--radius-xl);
    background:
        linear-gradient(
            145deg,
            #081a2e 0%,
            #04111f 55%,
            #020914 100%
        );
    box-shadow:
        var(--shadow-lg),
        0 0 0 1px rgba(255, 255, 255, 0.025),
        0 0 45px rgba(212, 166, 42, 0.06);
    transform:
        translateY(18px)
        scale(0.97);
    transition:
        transform 0.28s ease;

    color: #ffffff;
}

.subordem-details-modal.active
.subordem-details-content {
    transform:
        translateY(0)
        scale(1);
}

/* ======================LINHA DOURADA============================= */
.subordem-details-content::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background:
        linear-gradient(
            90deg,
            transparent,
            var(--gold),
            var(--gold-light),
            var(--gold),
            transparent
        );

    z-index: 5;
}

/* ====================BOTÃO FECHAR======================== */
.subordem-details-close {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 20;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(212, 166, 42, 0.28);
    border-radius: 8px;
    background: rgba(2, 9, 20, 0.78);
    color: #ffffff;
    font-size: 21px;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
    transition:
        color var(--transition-fast),
        background var(--transition-fast),
        border-color var(--transition-fast),
        transform var(--transition-fast);
}

.subordem-details-close:hover {
    color: var(--white);
    border-color:
        rgba(212, 166, 42, 0.65);
    background:
        rgba(212, 166, 42, 0.12);
    transform:
        rotate(90deg);
}

.subordem-details-close:focus-visible {
    outline:
        2px solid var(--gold-light);

    outline-offset: 3px;
}

/* ======================CORPO DO MODAL============================ */
#subordemDetailsBody {
    width: 100%;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    padding:
        25px 30px 30px;

    scrollbar-width: thin;
    scrollbar-color:
        rgba(212, 166, 42, 0.45)
        transparent;
}

#subordemDetailsBody::-webkit-scrollbar {
    width: 6px;
}

#subordemDetailsBody::-webkit-scrollbar-track {
    background: transparent;
}

#subordemDetailsBody::-webkit-scrollbar-thumb {
    border-radius: 10px;

    background:
        rgba(212, 166, 42, 0.40);
}

#subordemDetailsBody::-webkit-scrollbar-thumb:hover {
    background:
        rgba(212, 166, 42, 0.70);
}

/* ======================== CABEÇALHO DO MODAL============================ */
.subordem-modal-header {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding:
        4px 52px 18px 0;
    border-bottom:
        1px solid rgba(212, 166, 42, 0.18);
}

.modal-kicker {
    display: block;

    margin-bottom: 5px;

    color: var(--gold-light);

    font-size: 8px;

    font-weight: 900;

    letter-spacing: 0.15em;

    text-transform: uppercase;
}

.subordem-modal-header h2 {
    margin: 0;

    color: var(--white);

    font-size: 24px;
    font-weight: 900;

    line-height: 1.2;

    letter-spacing: -0.02em;
}

.production-status {
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 900;
}

/* ==========================INFORMAÇÕES PRINCIPAIS======================== */
.subordem-details-info {
    width: 100%;
    display: grid;
    grid-template-columns:
        repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin:
        17px 0 22px;
    color: #ffffff;
}

.subordem-details-info div {
    min-width: 0;
    padding:
        11px 13px;
    border:
        1px solid rgba(24, 50, 77, 0.95);
    border-radius: 9px;
    background:
        rgba(255, 255, 255, 0.025);
    transition:
        border-color var(--transition-fast),
        background var(--transition-fast);
}

.subordem-details-info div:hover {
    border-color:
        rgba(212, 166, 42, 0.35);

    background:
        rgba(212, 166, 42, 0.045);
}

.subordem-details-info span {
    display: block;

    margin-bottom: 4px;

    color: var(--gold);

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 0.08em;

    text-transform: uppercase;
}

.subordem-details-info strong {
    display: block;

    min-width: 0;

    overflow: hidden;

    color: #f4f7fa;

    font-size: 14px;

    font-weight: 800;

    line-height: 1.35;

    white-space: nowrap;

    text-overflow: ellipsis;
}


/* ================TÍTULOS DAS SECÇÕES DO MODAL===================== */
.subordem-details-content h3 {
    position: relative;

    display: flex;

    align-items: center;

    gap: 8px;

    margin:
        22px 0 11px;

    color: var(--gold);

    font-size: 13px;

    font-weight: 900;

    letter-spacing: 0.02em;
}

.subordem-details-content h3::before {
    content: "";
    width: 3px;
    height: 16px;
    flex-shrink: 0;
    border-radius: 5px;
    background:
        linear-gradient(
            180deg,
            var(--gold-light),
            var(--gold-dark)
        );
}

/* ===================PRODUTOS========================= */
.subordem-products-section {
    width: 100%;
    min-width: 0;
    margin-top: 25px;
    display: flex;
    flex-direction: column;
    min-height: 0;
    
}

.subordem-products-section .section-title {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.subordem-products-section .section-title > div {
    min-width: 0;
}

.subordem-products-section .section-eyebrow {
    display: block;
    margin-bottom: 4px;
    color: var(--gold-light);
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 0.16em;
    line-height: 1;
    text-transform: uppercase;
}

.subordem-products-section .section-title h3 {
    position: relative;
    display: flex;
    align-items: center;
    margin: 0;
    padding-left: 11px;
    color: #f5f7fa;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.subordem-products-section .section-title h3::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 3px;
    height: 18px;

    transform:
        translateY(-50%);

    border-radius: 999px;

    background:
        linear-gradient(
            to bottom,
            var(--gold-light),
            var(--gold-dark)
        );
}

/* ==================LISTA DE PRODUTOS======================== */
.subordem-details-products {
    width: 100%;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 10px;
}


/* ===================CARD DO PRODUTO=========================== */
.subordem-detail-product {
    position: relative;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    padding: 14px 16px;
    overflow: hidden;
    border-radius: 12px;
    background:
        linear-gradient(
            135deg,
            rgba(9, 28, 48, 0.96),
            rgba(4, 16, 29, 0.98)
        );
    box-shadow:
        0 6px 18px rgba(0, 0, 0, 0.18);
    transition:
        transform 0.2s ease,
        border-color 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease;
}


/* =====================HOVER===================== */
.subordem-detail-product:hover {   
    border-color:
        rgba(212, 166, 42, 0.42);
    background:
        linear-gradient(
            135deg,
            rgba(11, 34, 57, 0.98),
            rgba(5, 18, 32, 0.98)
        );
    box-shadow:
        0 10px 26px rgba(0, 0, 0, 0.25);
}

/* ======================= CABEÇALHO DO PRODUTO================================ */
.subordem-detail-product-header {
    width: 100%;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

/* ====================NOME DO PRODUTO=============================== */
.product-name {
    min-width: 0;
    flex: 1;
}

.product-name strong {
    display: block;
    min-width: 0;
    overflow: hidden;
    color: #f2f5f8;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.35;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* ==================PERCENTUAL======================= */
.product-progress {
    flex-shrink: 0;
    min-width: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px 8px;
    color: var(--gold-light);
    font-size: 18px;
    font-weight: 900;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    border: 1px solid rgba(212, 166, 42, 0.30);
    border-radius: 6px;
    background: rgba(212, 166, 42, 0.08);
}

/* ====================ÁREA DE PROGRESSO========================= */
.subordem-detail-product-progress {
    position: relative;
    z-index: 2;
    grid-column: 1 / -1;
    width: 100%;
    margin-bottom: 13px;
}

/* =======================BARRA=========================== */
.subordem-detail-product .item-progress-bar {
    position: relative;
    width: 100%;
    height: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.025);
}

/* ===================PREENCHIMENTO=========================== */
.subordem-detail-product .item-progress-bar-fill {
    width: 0;
    height: 100%;
    border-radius: inherit;
    transition:
        width 0.5s ease;
    background:
        linear-gradient(
            90deg,
            var(--gold-dark),
            var(--gold-light)
        );
    box-shadow:
        0 0 8px rgba(212, 166, 42, 0.25);
}

/* ====================PROGRESSO BAIXO========================== */
.subordem-detail-product
.item-progress-bar-fill.progress-low {
    background:
        linear-gradient(
            90deg,
            #dc2626,
            #ef4444
        );
}

/* =====================PROGRESSO MÉDIO=============================== */
.subordem-detail-product
.item-progress-bar-fill.progress-medium {
    background:
        linear-gradient(
            90deg,
            #ca8a04,
            #eab308
        );
}

/* ====================PROGRESSO ALTO====================== */
.subordem-detail-product
.item-progress-bar-fill.progress-high {
    background:
        linear-gradient(
            90deg,
            #16a34a,
            #22c55e
        );
}

/* =====================DADOS DO PRODUTO=========================== */
.subordem-detail-product-data {
    width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

/* ======================= ITEM DOS DADOS=========================== */
.product-data-item {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    padding: 7px 9px;
    border: 1px solid rgba(35, 61, 87, 0.65);
    border-radius: 7px;
    background:
        rgba(1, 8, 17, 0.42);
}

/* =====================LABEL=========================== */
.product-data-item span {
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-align: center;
}

/* ================VALOR========================= */
.product-data-item strong {
    color: #e7edf5;
    font-size: 14px;
    font-weight: 850;
    line-height: 1.1;
    white-space: nowrap;
    text-align: center;
}

/* ===================PLANEADA==================== */
.product-data-item.planned {
    border-color:
        rgba(56, 81, 110, 0.55);
}

/* ====================PRODUZIDA========================== */
.product-data-item.produced {
    border-color:
        rgba(40, 180, 99, 0.20);
}

.product-data-item.produced strong {
    color: #5ee49a;
}

/* =================QUEBRAS============================== */
.product-data-item.waste {
    border-color:
        rgba(231, 76, 60, 0.20);
    color: #ef4444;
}

.product-data-item.waste span {
    color: #ef4444;
}

.product-data-item.waste strong {
    color: #ef4444;
}

/* =======================ESTADO VAZIO=============================== */
.subordem-details-products > p {
    width: 100%;
    min-height: 65px;
    margin: 0;

    display: flex;

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

    padding: 16px;

    text-align: center;

    color: var(--muted);

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

    border:
        1px dashed rgba(212, 166, 42, 0.28);

    border-radius: 10px;

    background:
        rgba(255, 255, 255, 0.015);
}

/* =======================SCROLLBARS============================== */
.completed-list::-webkit-scrollbar {
    width: 6px;
}

.completed-list::-webkit-scrollbar-track {
    background:
        rgba(255, 255, 255, 0.02);
}

.completed-list::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background:
        rgba(212, 166, 42, 0.40);
}

/* =================MODAL — SUB-ORDENS CONCLUÍDAS========================= */

#completedHistoryModal {
    position: fixed;
    inset: 0;
    z-index: 9999;

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

    width: 100%;
    height: 100%;

    padding: 24px;

    background: rgba(0, 5, 12, 0.82);

    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.25s ease,
        visibility 0.25s ease;
}

#completedHistoryModal.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}


/* ========================= CONTAINER ========================= */

.completed-history-modal {
    position: relative;

    width: min(1050px, 100%);
    max-width: 1050px;

    height: auto;
    max-height: calc(100vh - 48px);

    display: flex;
    flex-direction: column;

    overflow: hidden;

    border: 1px solid rgba(212, 166, 42, 0.45);
    border-radius: 18px;

    background:
        linear-gradient(
            145deg,
            #071827 0%,
            #04111f 55%,
            #020b15 100%
        );

    box-shadow:
        0 25px 80px rgba(0, 0, 0, 0.55),
        0 0 0 1px rgba(255, 255, 255, 0.025);

    color: #ffffff;

    transform:
        translateY(20px)
        scale(0.98);

    transition:
        transform 0.25s ease;
}

#completedHistoryModal.active
.completed-history-modal {
    transform:
        translateY(0)
        scale(1);
}


/* ========================= LINHA SUPERIOR ========================= */

.completed-history-modal::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;
    right: 0;

    height: 3px;

    z-index: 5;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--gold),
            var(--gold-light),
            var(--gold),
            transparent
        );
}


/* ========================= CABEÇALHO ========================= */

.completed-history-header {
    position: relative;

    flex-shrink: 0;

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

    gap: 20px;

    padding: 22px 26px;

    border-bottom:
        1px solid rgba(212, 166, 42, 0.30);

    background:
        linear-gradient(
            90deg,
            rgba(3, 13, 24, 0.99),
            rgba(7, 25, 42, 0.96)
        );
}


/* ========================= TÍTULO ========================= */

.completed-history-header > div {
    min-width: 0;
}

.completed-history-header .modal-kicker {
    display: block;

    margin-bottom: 5px;

    color: var(--gold-light);

    font-size: 10px;
    font-weight: 900;

    letter-spacing: 0.14em;

    text-transform: uppercase;
}

.completed-history-header h2 {
    margin: 0;

    overflow: hidden;

    color: #ffffff;

    font-size: 24px;
    font-weight: 900;

    line-height: 1.2;

    white-space: nowrap;
    text-overflow: ellipsis;
}


/* ========================= BOTÃO FECHAR ========================= */

.completed-history-header .modal-close {
    width: 40px;
    height: 40px;

    flex-shrink: 0;

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

    border:
        1px solid rgba(212, 166, 42, 0.28);

    border-radius: 9px;

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

    color: #ffffff;

    font-size: 25px;
    font-weight: 700;

    line-height: 1;

    cursor: pointer;

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

.completed-history-header .modal-close:hover {
    background:
        rgba(212, 166, 42, 0.16);

    border-color:
        rgba(212, 166, 42, 0.55);

    transform:
        rotate(90deg);
}

.completed-history-header .modal-close:focus-visible {
    outline:
        2px solid var(--gold-light);

    outline-offset: 3px;
}


/* ========================= CORPO ========================= */

.completed-history-body {
    flex: 1;

    min-height: 0;

    overflow-y: auto;
    overflow-x: hidden;

    padding: 22px 26px 28px;

    scrollbar-width: thin;

    scrollbar-color:
        rgba(212, 166, 42, 0.45)
        transparent;
}

.completed-history-body::-webkit-scrollbar {
    width: 6px;
}

.completed-history-body::-webkit-scrollbar-track {
    background:
        rgba(255, 255, 255, 0.02);
}

.completed-history-body::-webkit-scrollbar-thumb {
    border-radius: 999px;

    background:
        rgba(212, 166, 42, 0.45);
}

.completed-history-body::-webkit-scrollbar-thumb:hover {
    background:
        rgba(212, 166, 42, 0.70);
}


/* ========================= RESUMO ========================= */
.completed-history-summary {
    width: 100%;
    display: grid;

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

    gap: 10px;

    margin-bottom: 20px;
}

.history-summary-card {
    min-width: 0;

    padding: 13px 14px;

    border:
        1px solid rgba(255, 255, 255, 0.07);

    border-radius: 10px;

    background:
        rgba(255, 255, 255, 0.035);
}

.history-summary-card span {
    display: block;

    margin-bottom: 6px;

    color: #7890a5;

    font-size: 9px;
    font-weight: 800;

    letter-spacing: 0.08em;

    text-transform: uppercase;
}

.history-summary-card strong {
    display: block;

    min-width: 0;

    overflow: hidden;

    color: #ffffff;

    font-size: 14px;
    font-weight: 800;

    line-height: 1.25;

    white-space: nowrap;
    text-overflow: ellipsis;
}


/* ========================= SECÇÕES ========================= */

.completed-history-section {
    width: 100%;

    margin-top: 18px;

    padding: 17px;

    border:
        1px solid rgba(255, 255, 255, 0.07);

    border-radius: 12px;

    background:
        rgba(5, 19, 33, 0.75);
}

.completed-history-section-title {
    margin-bottom: 15px;
}

.completed-history-section-title h3 {
    margin: 4px 0 0;

    color: #ffffff;

    font-size: 17px;
    font-weight: 800;

    line-height: 1.2;
}

.completed-history-section .section-eyebrow {
    color: var(--gold-light);

    font-size: 9px;
    font-weight: 900;

    letter-spacing: 0.12em;

    text-transform: uppercase;
}


/* ========================= PROGRESSO ========================= */

.history-progress {
    width: 100%;

    margin-bottom: 18px;
}

.history-progress-header {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    margin-bottom: 8px;
}

.history-progress-header strong {
    color: var(--gold-light);

    font-size: 23px;
    font-weight: 900;

    font-variant-numeric: tabular-nums;
}

.history-progress-header span {
    color: #8095a8;

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

.history-progress-bar {
    width: 100%;
    height: 8px;

    overflow: hidden;

    border-radius: 999px;

    background:
        rgba(255, 255, 255, 0.08);
}

.history-progress-fill {
    width: 0;
    height: 100%;

    border-radius: inherit;

    background:
        linear-gradient(
            90deg,
            var(--gold-dark),
            var(--gold-light)
        );

    transition:
        width 0.5s ease;
}


/* ========================= QUANTIDADES ========================= */

.history-quantities {
    display: grid;

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

    gap: 9px;
}

.history-quantities > div {
    min-width: 0;

    padding: 12px;

    border:
        1px solid rgba(255, 255, 255, 0.06);

    border-radius: 9px;

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

    text-align: center;
}

.history-quantities span {
    display: block;

    margin-bottom: 5px;

    color: #7890a5;

    font-size: 10px;
    font-weight: 700;

    text-transform: uppercase;
}

.history-quantities strong {
    display: block;

    color: #ffffff;

    font-size: 18px;
    font-weight: 900;

    font-variant-numeric: tabular-nums;
}


/* ========================= TIMELINE ========================= */
.completed-history-timeline {
    position: relative;

    display: flex;
    flex-direction: row;
    align-items: flex-start;

    width: 100%;

    padding: 10px 5px 20px;
}


/* =========================================================
   ETAPA
========================================================= */

.history-timeline-item {
    position: relative;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    min-height: auto;
    padding: 0;
}

/* =========================================================
   LINHA ENTRE AS ETAPAS
========================================================= */

.history-timeline-item:not(:last-child)::before {
    content: "";

    position: absolute;

    top: 15px;
    left: calc(50% + 16px);

    width: calc(100% - 32px);
    height: 2px;

    background:
        rgba(212, 166, 42, 0.28);

    z-index: 1;
}


/* =========================================================
   ÍCONE
========================================================= */

.history-timeline-icon {
    position: relative;

    z-index: 2;

    width: 32px;
    height: 32px;

    flex-shrink: 0;

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

    border:
        1px solid rgba(39, 196, 132, 0.50);

    border-radius: 50%;

    background:
        rgba(39, 196, 132, 0.10);

    color: #39d394;

    font-size: 13px;
    font-weight: 800;
}


/* =========================================================
   CONTEÚDO
========================================================= */

.history-timeline-content {
    min-width: 0;

    width: 100%;

    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 4px;

    padding-top: 0;

    text-align: center;
}


.history-timeline-content strong {
    color: #ffffff;

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

    line-height: 1.3;
}


.history-timeline-content span {
    color: #7890a5;

    font-size: 10px;

    line-height: 1.3;
}

/* ========================= PRODUTOS ========================= */

.completed-history-products {
    width: 100%;

    display: flex;
    flex-direction: column;

    gap: 8px;
}

.history-product {
    width: 100%;
    min-width: 0;

    display: grid;

    grid-template-columns:
        minmax(180px, 1fr)
        repeat(3, minmax(75px, 110px));

    align-items: center;

    gap: 10px;

    padding: 12px;

    border:
        1px solid rgba(255, 255, 255, 0.06);

    border-radius: 9px;

    background:
        rgba(255, 255, 255, 0.025);
}

.history-product-name {
    min-width: 0;
}

.history-product-name strong {
    display: block;

    min-width: 0;

    overflow: hidden;

    color: #ffffff;

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

    line-height: 1.3;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.history-product > div:not(.history-product-name) {
    min-width: 0;

    display: flex;
    flex-direction: column;

    gap: 3px;

    text-align: center;
}

.history-product span {
    color: #71869a;

    font-size: 9px;
    font-weight: 700;

    text-transform: uppercase;
}

.history-product strong {
    color: #ffffff;

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

    font-variant-numeric: tabular-nums;
}


/* ========================= VAZIO ========================= */

.history-empty {
    min-height: 70px;

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

    padding: 20px;

    color: #71869a;

    font-size: 11px;

    text-align: center;

    border:
        1px dashed rgba(212, 166, 42, 0.20);

    border-radius: 9px;

    background:
        rgba(255, 255, 255, 0.015);
}


/* ======================ACESSIBILIDADE========================== */
:focus-visible {
    outline:
        2px solid var(--gold-light);

    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;

        transition-duration:
            0.01ms !important;

        animation-duration:
            0.01ms !important;

        animation-iteration-count:
            1 !important;
    }
}



/* ===================RESPONSIVIDADE - 1024px======================== */
@media (max-width: 1024px) {

    /* ================= HEADER ================= */

    .header {
        min-height: 96px;
        padding: 14px 20px;
        gap: 18px;
    }

    .brand {
        gap: 16px;
    }

    .logo {
        width: 145px;
        max-height: 62px;
    }

    .brand-info {
        padding-left: 16px;
    }

    .title {
        font-size: clamp(19px, 2.4vw, 28px);
    }

    .subtitle {
        font-size: 10px;
    }


    /* ================= KPIs ================= */

    .kpis {
        top: 96px;

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

        gap: 10px;
        padding: 11px 18px;
    }

    .kpi {
        min-height: 70px;
        padding: 10px;
        gap: 10px;
    }

    .kpi .icon {
        width: 40px;
        height: 40px;
        font-size: 19px;
        flex-shrink: 0;
    }

    .kpi small {
        font-size: 8px;
    }

    .kpi strong {
        font-size: 23px;
    }


    /* ================= MAIN ================= */

    /*
       Header = 96px
       KPIs = aproximadamente 152px
       Conteúdo começa depois dos dois.
    */

    .dashboard-main {
        grid-template-columns: 1fr;

        padding:
            270px
            18px
            95px;

        gap: 16px;

        overflow: hidden;
    }


    /* ================= PRODUÇÃO ================= */

    .production-area {
        width: 100%;
        min-width: 0;
    }


    /* ================= PAINEL DIREITO ================= */

    .panel {
        display: grid;

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

        gap: 14px;
    }

    .priorities {
        min-height: 280px;
    }


    /* ================= SUBORDENS ================= */

    .subordens-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 12px;
        padding: 13px;
    }


    /* ================= SECTION HEADER ================= */

    .section-header {
        gap: 12px;
        padding: 12px 14px;
    }

    .production-totals {
        min-width: 0;
        flex: 1;
    }

    .production-total {
        min-width: 0;
        flex: 1;
    }


    /* ================= CARD ================= */

    .subordem-card-header {
        min-height: 64px;
        padding: 10px 14px 10px 17px;
        gap: 10px;
    }

    .subordem-code {
        font-size: 16px;
    }

    .subordem-status {
        font-size: 9px;
        max-width: 48%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }


    /* ================= CHECKLIST ================= */

    .subordem-checklist {
        width: 75%;
        margin-left: auto;

        gap: 8px;
    }

    .checklist-item,
    .subordem-waste {
        min-width: 0;
        flex: 1;
    }


    /* ================= INFO ================= */

    .subordem-info-row,
    .subordem-info-row-bottom {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 8px;
    }


    /* ================= MODAL ================= */

    .subordem-details-content {
        width: min(920px, calc(100% - 32px));
        max-height: 92vh;
    }

    .subordem-detail-product {
        grid-template-columns:
            minmax(150px, 1.4fr)
            repeat(3, minmax(80px, 0.7fr));
    }


    /* ================= HISTÓRICO KPI ================= */

    .kpi-history-content {
        width: min(900px, calc(100% - 32px));
        max-height: 88vh;
    }


    /* ================= HISTÓRICO CONCLUÍDAS ================= */

    .completed-history-modal {
        width: min(900px, calc(100% - 32px));
        max-height: 90vh;
    }


    /* ================= TOKEN ================= */

    .token-area {
        display: none;
    }


    /* ================= FOOTER ================= */

    .footer {
        min-height: 74px;
        padding: 10px 18px;
        gap: 10px;
    }

    .footer-stat {
        min-width: 0;
        flex: 1;
    }
}

/* ==================RESPONSIVIDADE - TABLETS==================== */
@media (max-width: 768px) {

    /* ================= HEADER ================= */

    .header {
        min-height: 84px;

        padding:
            10px
            14px;

        flex-direction: column;
        align-items: stretch;

        gap: 8px;
    }

    .brand {
        width: 100%;
        gap: 12px;
    }

    .logo {
        width: 110px;
        max-height: 48px;
    }

    .brand-info {
        padding-left: 12px;
    }

    .title {
        font-size: 17px;
    }

    .subtitle {
        margin-top: 5px;
        font-size: 8px;
        letter-spacing: 0.10em;
    }


    /* ================= HEADER RIGHT ================= */

    .header-right {
        width: 100%;
        justify-content: space-between;
    }


    /* ================= KPIs ================= */

    .kpis {
        top: 84px;

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

        gap: 8px;

        padding:
            9px
            14px;
    }

    .kpi {
        min-height: 62px;
        padding: 8px;
        gap: 8px;
    }

    .kpi .icon {
        width: 35px;
        height: 35px;
        font-size: 17px;
    }

    .kpi small {
        font-size: 7px;
    }

    .kpi strong {
        font-size: 20px;
    }


    /* ================= MAIN ================= */

    /*
       Header = 84px
       KPIs = 3 linhas
       Conteúdo começa abaixo dos KPIs.
    */

    .dashboard-main {
        grid-template-columns: 1fr;

        padding:
            215px
            12px
            95px;

        gap: 12px;
    }


    /* ================= PAINEL ================= */

    .panel {
        grid-template-columns: 1fr;
        gap: 12px;
    }


    /* ================= SUBORDENS ================= */

    .subordens-grid {
        grid-template-columns: 1fr;

        gap: 12px;
        padding: 11px;
    }


    /* ================= SECTION HEADER ================= */

    .sectioproduction-routen-header {
        flex-direction: column;
        align-items: stretch;

        gap: 10px;
        padding: 11px;
    }

    .production-totals {
        width: 100%;

        display: flex;
        gap: 7px;
    }

    .production-total {
        min-width: 0;
        flex: 1;
        padding: 7px;
    }


    /* ================= CARD ================= */

    .subordem-card-header {
        min-height: 60px;

        padding:
            9px
            12px
            9px
            16px;

        gap: 8px;
    }

    .subordem-code {
        font-size: 15px;
    }

    .subordem-status {
        max-width: 46%;
        font-size: 8px;
    }


    /* ================= CHECKLIST ================= */

    .subordem-checklist {
        width: 100%;
        margin-left: 0;

        gap: 7px;
        padding: 5px 0;

        flex-wrap: nowrap;
    }

    .checklist-item,
    .subordem-waste {
        min-width: 0;
        flex: 1;

        padding: 6px;
    }


    /* ================= INFO ================= */

    .subordem-info-row,
    .subordem-info-row-bottom,
    .subordem-details-info {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 7px;
    }

    .info-field {
        min-width: 0;
    }

    .info-value {
        font-size: 10px;
    }


    /* ================= MODAL ================= */

    .subordem-details-content {
        width: calc(100% - 24px);
        max-height: 94vh;
    }

    #subordemDetailsBody {
        padding:
            18px
            13px
            20px;
    }

    .subordem-detail-product {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 8px;
    }


    /* ================= KPI HISTORY ================= */

    .kpi-history-content {
        width: calc(100% - 24px);
        max-height: 92vh;
    }

    .kpi-history-header {
        padding:
            20px
            55px
            16px
            20px;
    }


    /* ================= COMPLETED HISTORY ================= */

    .completed-history-modal {
        width: calc(100% - 24px);
        max-height: 92vh;
    }

    .completed-history-summary {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }


    /* ================= FOOTER ================= */

    .footer {
        min-height: 76px;

        padding:
            9px
            12px;

        gap: 8px;
    }

    .footer-stat {
        min-width: 0;
        flex: 1;

        padding:
            8px
            10px;
    }

    .footer-value {
        font-size: 17px;
    }
}


/* ===========RESPONSIVIDADE - 450px============== */
@media (max-width: 450px) {

    /* ================= HEADER ================= */

    .header {
        min-height: 78px;
        padding: 8px 10px;
        gap: 6px;
    }

    .brand {
        gap: 8px;
    }

    .logo {
        width: 82px;
        max-height: 38px;
    }

    .brand-info {
        padding-left: 9px;
    }

    .title {
        font-size: 13px;
        letter-spacing: 0.015em;
    }

    .subtitle {
        margin-top: 3px;
        font-size: 7px;
        letter-spacing: 0.07em;
    }


    /* ================= HEADER RIGHT ================= */

    .header-right {
        flex-direction: column;
        align-items: stretch;

        gap: 2px;
    }

    .now {
        width: 100%;
        min-width: 0;
        text-align: left;
    }

    .clock {
        font-size: 19px;
    }

    .date {
        font-size: 8px;
    }


    /* ================= KPIs ================= */

    .kpis {
        top: 78px;

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

        gap: 6px;

        padding:
            7px
            9px;
    }

    .kpi {
        min-height: 56px;
        padding: 7px;
        gap: 6px;
    }

    .kpi .icon {
        width: 29px;
        height: 29px;
        font-size: 14px;
    }

    .kpi small {
        font-size: 6px;
        line-height: 1.1;
    }

    .kpi strong {
        font-size: 18px;
    }


    /* ================= MAIN ================= */

    .dashboard-main {
        padding:
            190px
            8px
            105px;

        gap: 10px;
    }


    /* ================= SECTION ================= */

    .section-header {
        padding: 8px;
        gap: 8px;
    }

    .section-title h2 {
        font-size: 14px;
    }

    .section-icon {
        width: 34px;
        height: 34px;
        font-size: 16px;
    }


    /* ================= TOTALS ================= */

    .production-totals {
        gap: 5px;
    }

    .production-total {
        padding:
            5px
            6px;
    }

    .production-total strong {
        font-size: 13px;
    }

    .production-total small {
        font-size: 6px;
    }


    /* ================= SUBORDENS ================= */

    .subordens-grid {
        grid-template-columns: 1fr;

        gap: 9px;
        padding: 8px;
    }


    /* ================= CARD ================= */

    .subordem-card-header {
        min-height: 53px;

        padding:
            7px
            8px
            7px
            14px;

        gap: 6px;
    }

    .subordem-code {
        font-size: 13px;
    }

    .subordem-status {
        max-width: 45%;

        padding:
            3px
            6px;

        font-size: 7px;
    }


    /* ================= CHECKLIST ================= */

    .subordem-checklist {
        gap: 5px;
        padding: 4px 0;
    }

    .checklist-item,
    .subordem-waste {
        padding: 5px;
        gap: 4px;
    }

    .check-icon {
        width: 19px;
        height: 19px;
        font-size: 9px;
    }

    .check-content strong {
        font-size: 9px;
    }

    .check-content small {
        font-size: 7px;
    }


    /* ================= INFO ================= */

    .subordem-info-row,
    .subordem-info-row-bottom,
    .subordem-details-info {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .info-field {
        padding: 4px;
    }

    .info-field label {
        width: 28px;
        height: 28px;
        font-size: 11px;
    }

    .info-value {
        font-size: 9px;
    }


    /* ================= MODAL ================= */

    .subordem-details-content {
        width: calc(100% - 12px);
        max-height: 94vh;

        border-radius: 12px;
    }

    #subordemDetailsBody {
        padding:
            15px
            10px
            18px;
    }

    .subordem-modal-header {
        padding-right: 42px;
    }

    .subordem-modal-header h2 {
        font-size: 17px;
    }

    .subordem-detail-product {
        grid-template-columns: 1fr;
        gap: 7px;
    }

    /* ================= KPI HISTORY ================= */

    #kpiHistoryModal {
        padding: 6px;
    }

    .kpi-history-content {
        width: calc(100% - 4px);
        max-height: 94vh;
        border-radius: 13px;
    }

    .kpi-history-header {
        padding:
            17px
            48px
            14px
            15px;
    }

    .kpi-history-close {
        top: 10px;
        right: 10px;

        width: 34px;
        height: 34px;

        font-size: 21px;
    }


    /* ================= COMPLETED HISTORY ================= */

    #completedHistoryModal {
        padding: 6px;
    }

    .completed-history-modal {
        width: calc(100% - 4px);
        max-height: 94vh;
        border-radius: 12px;
    }

    .completed-history-header {
        padding:
            14px
            42px
            13px
            13px;
    }

    .completed-history-header h2 {
        font-size: 16px;
    }

    .completed-history-body {
        padding: 12px;
    }

    .completed-history-summary {
        grid-template-columns: 1fr;
        gap: 7px;
    }

    .history-quantities {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .history-product {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 7px;
    }


    /* ================= FOOTER ================= */

    .footer {
        flex-direction: column;
        align-items: stretch;

        min-height: 94px;

        padding:
            8px
            10px;

        gap: 6px;
    }

    .footer-stat {
        width: 100%;
        min-width: 0;
        padding: 6px 9px;
    }

    .footer-label {
        font-size: 7px;
    }

    .footer-value {
        font-size: 15px;
    }

    .footer .sync {
        width: 100%;
        margin-left: 0;

        justify-content: space-between;

        padding-top: 6px;

        border-top:
            1px solid var(--border);
    }
}

/* ============================================================
   MODAL DE SUBORDEM — NOVA ESTILIZAÇÃO
============================================================ */

/* ---------- OVERLAY ---------- */

.subordem-details-modal {
    padding: 32px;

    background:
        radial-gradient(
            circle at 50% 35%,
            rgba(19, 48, 76, 0.34),
            rgba(1, 6, 13, 0.94) 68%
        );

    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}


/* ---------- CONTAINER ---------- */

.subordem-details-content {
    position: relative;

    width: min(1320px, 96vw);
    max-width: 1320px;
    max-height: 92vh;

    border:
        1px solid rgba(212, 166, 42, 0.52);

    border-radius: 18px;

    background:
        linear-gradient(
            145deg,
            #091a2c 0%,
            #061423 48%,
            #030c17 100%
        );

    box-shadow:
        0 35px 90px rgba(0, 0, 0, 0.68),
        0 0 0 1px rgba(255, 255, 255, 0.025),
        0 0 55px rgba(212, 166, 42, 0.055);

    overflow: hidden;
}


/* linha dourada superior */

.subordem-details-content::before {
    height: 2px;

    background:
        linear-gradient(
            90deg,
            transparent 0%,
            rgba(212, 166, 42, 0.25) 10%,
            var(--gold) 35%,
            var(--gold-light) 50%,
            var(--gold) 65%,
            rgba(212, 166, 42, 0.25) 90%,
            transparent 100%
        );
}


/* ---------- CORPO ---------- */

#subordemDetailsBody {
    padding: 28px 30px 34px;

    overflow-y: auto;
    overflow-x: hidden;
}


/* scrollbar */

#subordemDetailsBody::-webkit-scrollbar {
    width: 6px;
}

#subordemDetailsBody::-webkit-scrollbar-track {
    background: transparent;
}

#subordemDetailsBody::-webkit-scrollbar-thumb {
    border-radius: 999px;

    background:
        rgba(212, 166, 42, 0.42);
}


/* ============================================================
   BOTÃO FECHAR
============================================================ */

.subordem-details-close {
    top: 18px;
    right: 18px;

    width: 38px;
    height: 38px;

    border:
        1px solid rgba(212, 166, 42, 0.32);

    border-radius: 10px;

    background:
        rgba(2, 10, 19, 0.85);

    color: #ffffff;

    font-size: 22px;

    box-shadow:
        0 4px 12px rgba(0, 0, 0, 0.25);
}

.subordem-details-close:hover {
    color: var(--gold-light);

    border-color:
        rgba(212, 166, 42, 0.75);

    background:
        rgba(212, 166, 42, 0.12);

    transform: rotate(90deg);
}


/* ============================================================
   CABEÇALHO DO MODAL
============================================================ */

.subordem-modal-header {
    position: relative;

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

    gap: 24px;

    padding:
        0
        58px
        22px
        0;

    margin-bottom: 18px;

    border-bottom:
        1px solid rgba(212, 166, 42, 0.20);
}


/* pequena legenda */

.subordem-modal-header .modal-kicker,
.subordem-modal-header .section-eyebrow {
    display: block;

    margin-bottom: 6px;

    color: var(--gold-light);

    font-size: 9px;
    font-weight: 900;

    letter-spacing: 0.16em;

    text-transform: uppercase;
}


/* código da subordem */

.subordem-modal-header h2 {
    margin: 0;

    color: #ffffff;

    font-size: 26px;
    font-weight: 900;

    line-height: 1.05;

    letter-spacing: -0.025em;
}


/* status geral */

.subordem-modal-header .subordem-status {
    margin-top: 4px;

    padding: 7px 13px;

    border-radius: 999px;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: 0.04em;

    text-transform: uppercase;
}


/* ============================================================
   INFORMAÇÕES PRINCIPAIS
============================================================ */

.subordem-details-info {
    display: grid;

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

    gap: 10px;

    margin-bottom: 24px;
}


/* cada informação */

.subordem-details-info .info-field {
    position: relative;

    min-width: 0;

    padding: 12px 14px;

    border:
        1px solid rgba(38, 68, 97, 0.82);

    border-radius: 9px;

    background:
        linear-gradient(
            145deg,
            rgba(14, 37, 61, 0.85),
            rgba(7, 23, 39, 0.88)
        );

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.025);
}


/* label */

.subordem-details-info .info-field small,
.subordem-details-info .info-field span:first-child {
    display: block;

    margin-bottom: 5px;

    color: var(--gold-light);

    font-size: 8px;
    font-weight: 900;

    letter-spacing: 0.09em;

    text-transform: uppercase;
}


/* valor */

.subordem-details-info .info-value,
.subordem-details-info strong {
    color: #f4f7fa;
    font-size: 14px;
    font-weight: 800;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* ============================================================
   ROTA DE PRODUÇÃO — VERSÃO CONSOLIDADA
   Todos os sectores usam a mesma largura/altura.
   Este bloco substitui as versões antigas/duplicadas da rota.
============================================================ */
.production-route {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.product-route-card {
    width: 100%;
    margin: 0;
    padding: 18px 20px 20px;
    box-sizing: border-box;
    overflow: hidden;
    background: linear-gradient(145deg, rgba(13, 28, 43, 0.98), rgba(8, 23, 37, 0.98));
    border: 1px solid #24394d;
    border-radius: 12px;
    box-shadow: 0 7px 20px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

/* single-sector deixa de alterar a largura do fluxo/card. */
.product-route-card.single-sector {
    width: 100%;
    max-width: none;
}

.product-route-header {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #203346;
}

.product-route-header h3 {
    position: relative;
    margin: 0;
    padding-left: 12px;
    color: var(--gold-light);
    font-size: 14px;
    font-weight: 900;
    line-height: 1.25;
}

.product-route-header h3::before {
    content: "";
    position: absolute;
    top: 1px;
    bottom: 1px;
    left: 0;
    width: 3px;
    border-radius: 999px;
    background: var(--gold);
}

.product-route-flow {
    --sector-card-width: 360px;
    --sector-card-height: 82px;
    width: 100%;
    display: flex;
    align-items: stretch;
    gap: 0;
    padding: 0 0 5px;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
    scrollbar-color: rgba(212, 166, 42, 0.42) transparent;
}

.product-route-flow::-webkit-scrollbar { height: 5px; }
.product-route-flow::-webkit-scrollbar-track { background: transparent; }
.product-route-flow::-webkit-scrollbar-thumb {
    background: rgba(212, 166, 42, 0.38);
    border-radius: 999px;
}

.product-route-stage-wrapper {
    flex: 0 0 auto;
    display: flex;
    align-items: stretch;
    min-width: 0;
}

.product-route-stage {
    width: var(--sector-card-width);
    min-width: var(--sector-card-width);
    height: var(--sector-card-height);
    min-height: var(--sector-card-height);
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    box-sizing: border-box;
    background: linear-gradient(145deg, rgba(16, 33, 49, 0.98), rgba(9, 25, 40, 0.98));
    border: 1px solid #294056;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.025);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.product-route-stage:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.product-route-stage-icon {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 15px;
    font-weight: 900;
}

.product-route-stage-content {
    min-width: 0;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
}

.product-route-sector-name {
    max-width: 100%;
    overflow: hidden;
    color: #fff;
    font-size: 14px;
    font-weight: 850;
    line-height: 1.2;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.product-route-stage-status {
    font-size: 11px;
    font-weight: 900;
    line-height: 1.15;
    letter-spacing: .025em;
    text-transform: uppercase;
    white-space: nowrap;
}

.product-route-reference {
    max-width: 100%;
    margin-top: 1px;
    overflow: hidden;
    color: #dce5ee;
    font-size: 10px;
    font-weight: 650;
    line-height: 1.15;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.product-route-arrow {
    width: 48px;
    min-width: 48px;
    height: var(--sector-card-height);
    flex: 0 0 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #526b7f;
    font-size: 21px;
    font-weight: 800;
    line-height: 1;
}

/* Concluída */
.product-route-stage.route-done {
    border-color: rgba(31, 211, 125, .48);
    background: linear-gradient(145deg, rgba(17, 92, 65, .20), rgba(8, 48, 42, .22));
}
.product-route-stage.route-done .product-route-stage-icon {
    color: #43e89a;
    background: rgba(31, 211, 125, .12);
    border: 1px solid #1fd37d;
}
.product-route-stage-status.route-done { color: #43e89a; }

/* Em andamento */
.product-route-stage.route-progress {
    border-color: rgba(43, 169, 255, .58);
    background: linear-gradient(145deg, rgba(27, 91, 139, .20), rgba(12, 52, 84, .24));
}
.product-route-stage.route-progress .product-route-stage-icon {
    color: #51baff;
    background: rgba(43, 169, 255, .12);
    border: 1px solid #2ba9ff;
}
.product-route-stage-status.route-progress { color: #51baff; }

/* Pendente */
.product-route-stage.route-pending {
    border-color: rgba(78, 104, 128, .60);
    background: linear-gradient(145deg, rgba(18, 37, 54, .96), rgba(10, 27, 42, .96));
}
.product-route-stage.route-pending .product-route-stage-icon {
    color: #8294a5;
    background: #142536;
    border: 1px solid #33495d;
}
.product-route-stage-status.route-pending { color: #8294a5; }

/* Cancelada */
.product-route-stage.route-cancelled {
    border-color: rgba(255, 76, 76, .48);
    background: linear-gradient(145deg, rgba(91, 34, 40, .18), rgba(49, 22, 31, .22));
}
.product-route-stage.route-cancelled .product-route-stage-icon {
    color: #ff5656;
    background: rgba(255, 86, 86, .08);
    border: 1px solid #ff5656;
}
.product-route-stage-status.route-cancelled { color: #ff5656; }

/* Tablet: conserva a medida comum e permite scroll horizontal. */
@media (max-width: 900px) {
    .product-route-flow { --sector-card-width: 320px; }
    .product-route-card { padding: 16px; }
}

/* Telemóvel: cada sector ocupa a largura disponível. */
@media (max-width: 600px) {
    .product-route-flow {
        --sector-card-width: 100%;
        flex-direction: column;
        overflow-x: visible;
        gap: 0;
    }
    .product-route-stage-wrapper {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
    }
    .product-route-stage {
        width: 100%;
        min-width: 0;
    }
    .product-route-arrow {
        width: 100%;
        min-width: 0;
        height: 34px;
        flex: 0 0 34px;
        transform: rotate(90deg);
    }
}

/* ============================================================
   TÍTULO DA SECÇÃO PRODUÇÃO
============================================================ */

.subordem-products-section {
    margin-top: 28px;

    padding-top: 22px;

    border-top:
        1px solid rgba(255, 255, 255, 0.055);
}

.subordem-products-section .section-title {
    margin-bottom: 14px;
}

.subordem-products-section .section-eyebrow {
    color: var(--gold-light);

    font-size: 8px;

    letter-spacing: 0.16em;
}

.subordem-products-section .section-title h3 {
    font-size: 19px;
}


/* ============================================================
   CARDS DOS PRODUTOS
============================================================ */

.subordem-details-products {
    gap: 12px;
}


.subordem-detail-product {
    padding: 16px;

    border:
        1px solid rgba(31, 57, 82, 0.72);

    border-radius: 12px;

    background:
        linear-gradient(
            135deg,
            rgba(10, 31, 51, 0.96),
            rgba(4, 16, 29, 0.98)
        );

    box-shadow:
        0 7px 20px rgba(0, 0, 0, 0.18);
}


.subordem-detail-product:hover {
    transform: translateY(-1px);

    border-color:
        rgba(212, 166, 42, 0.34);
}


/* nome */

.product-name strong {
    color: #f4f7fa;

    font-size: 17px;
    font-weight: 850;
}


/* percentual */

.product-progress {
    min-width: 52px;

    padding: 5px 9px;

    border-radius: 7px;

    font-size: 17px;

    color: var(--gold-light);

    background:
        rgba(212, 166, 42, 0.08);

    border:
        1px solid rgba(212, 166, 42, 0.32);
}


/* ============================================================
   PLANEADA / PRODUZIDA / QUEBRAS
============================================================ */

.subordem-detail-product-data {
    gap: 9px;
}


.product-data-item {
    min-height: 52px;

    padding: 9px 10px;

    border-radius: 8px;

    background:
        rgba(1, 8, 17, 0.38);
}


.product-data-item span {
    margin-bottom: 3px;

    color: #a7b4c1;

    font-size: 9px;
    font-weight: 800;
}


.product-data-item strong {
    color: #ffffff;

    font-size: 14px;
    font-weight: 900;
}


.product-data-item.produced {
    border-color:
        rgba(40, 180, 99, 0.24);

    background:
        rgba(40, 180, 99, 0.025);
}


.product-data-item.produced strong {
    color: #63e69e;
}


.product-data-item.waste {
    border-color:
        rgba(231, 76, 60, 0.25);

    background:
        rgba(231, 76, 60, 0.025);
}


.product-data-item.waste span,
.product-data-item.waste strong {
    color: #ff6262;
}