/* RAWA — operações, suprimentos e financeiro
 * Peças, Estoque, Serviços, Compras e Financeiro.
 * Somente apresentação e acessibilidade visual.
 */

/* Shared module rhythm */
#app-view .rawa-pecas-page,
#app-view .rawa-estoque-page,
#app-view .rawa-servicos-page,
#app-view .rawa-compras-page,
#app-view .rawa-finance-page {
    min-width: 0;
}

#app-view .rawa-pecas-page .module-toolbar,
#app-view .rawa-estoque-page .module-toolbar,
#app-view .rawa-servicos-page .module-toolbar,
#app-view .rawa-compras-page .module-toolbar,
#app-view .rawa-finance-page .module-toolbar {
    min-height: 62px;
}

#app-view .rawa-pecas-page .module-toolbar-left,
#app-view .rawa-estoque-page .module-toolbar-left,
#app-view .rawa-servicos-page .module-toolbar-left,
#app-view .rawa-compras-page .module-toolbar-left,
#app-view .rawa-finance-page .module-toolbar-left {
    flex: 1 1 auto;
    min-width: 0;
}

#app-view .rawa-pecas-page .toolbar-select,
#app-view .rawa-estoque-page .toolbar-select,
#app-view .rawa-servicos-page .toolbar-select,
#app-view .rawa-compras-page .toolbar-select,
#app-view .rawa-finance-page .toolbar-select {
    width: min(245px, 100%) !important;
    flex: 0 1 245px;
}

/* Peças / Serviços */
#app-view .rawa-pecas-page .data-panel,
#app-view .rawa-servicos-page .data-panel,
#app-view .rawa-estoque-page .data-panel,
#app-view .rawa-compras-page .data-panel {
    box-shadow: var(--rawa-shadow-card) !important;
}

#app-view .rawa-pecas-page .status-badge,
#app-view .rawa-servicos-page .status-badge {
    min-height: 25px;
    display: inline-flex;
    align-items: center;
    padding: 4px 8px;
    font-size: 9px;
    font-weight: 780;
}

/* Estoque */
#app-view .rawa-estoque-page .estoque-kpis {
    gap: 10px !important;
    margin: 0 0 14px !important;
}

#app-view .rawa-estoque-page .estoque-kpi {
    position: relative;
    min-height: 104px !important;
    padding: 14px !important;
    border: 1px solid var(--v3-border) !important;
    border-radius: 14px !important;
    background: var(--v3-card) !important;
    box-shadow: var(--rawa-shadow-soft) !important;
    overflow: hidden;
}

#app-view .rawa-estoque-page .estoque-kpi::before {
    content: "";
    position: absolute;
    top: 0;
    left: 14px;
    right: 14px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(75,146,241,.32), transparent);
}

#app-view .rawa-estoque-page .estoque-kpi.warning {
    background: color-mix(in srgb, #f59e0b 4%, var(--v3-card)) !important;
}

#app-view .rawa-estoque-page .estoque-kpi.danger {
    background: color-mix(in srgb, #ef4444 4%, var(--v3-card)) !important;
}

#app-view .rawa-estoque-page .estoque-kpi span {
    color: var(--v3-muted) !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: .065em !important;
}

#app-view .rawa-estoque-page .estoque-kpi strong {
    color: var(--v3-text) !important;
    font-size: 22px !important;
}

#app-view .rawa-estoque-page .estoque-kpi.money strong {
    font-size: 17px !important;
}

#app-view .rawa-estoque-page .estoque-saldo {
    min-width: 38px;
    border: 1px solid rgba(34,197,94,.16);
    background: rgba(34,197,94,.09) !important;
}

#app-view .rawa-estoque-page .estoque-saldo.zero {
    border-color: rgba(239,68,68,.16);
    background: rgba(239,68,68,.08) !important;
}

#app-view .estoque-history-item,
#app-view .reposicao-summary > div {
    border-color: var(--v3-border) !important;
    background: var(--v3-card-2) !important;
}

/* Compras */
#app-view .rawa-compras-page .purchase-kpis {
    gap: 10px !important;
    margin: 0 0 14px !important;
}

#app-view .rawa-compras-page .purchase-kpis > div {
    min-height: 92px !important;
    padding: 14px !important;
    border: 1px solid var(--v3-border) !important;
    border-radius: 14px !important;
    background: var(--v3-card) !important;
    box-shadow: var(--rawa-shadow-soft) !important;
}

#app-view .rawa-compras-page .purchase-kpis span {
    color: var(--v3-muted) !important;
    font-size: 9px !important;
    letter-spacing: .065em !important;
}

#app-view .rawa-compras-page .purchase-kpis strong {
    color: var(--v3-text) !important;
    font-size: 22px !important;
}

#app-view .purchase-summary-grid > div,
#app-view .purchase-note,
#app-view .purchase-idempotency,
#app-view .supplier-link-item,
#app-view .supplier-purchase-item,
#app-view .purchase-item-card,
#app-view .purchase-receipt-card {
    border-color: var(--v3-border) !important;
    background: var(--v3-card-2) !important;
}

#app-view .purchase-section-head {
    padding-top: 4px;
}

/* Financeiro */
#app-view .rawa-finance-page {
    gap: 14px !important;
}

#app-view .rawa-finance-page .finance-hero {
    margin-bottom: 0 !important;
}

#app-view .rawa-finance-page .finance-kpis {
    gap: 10px !important;
}

#app-view .rawa-finance-page .finance-kpi {
    position: relative;
    min-height: 112px !important;
    padding: 15px !important;
    border: 1px solid var(--v3-border) !important;
    border-radius: 14px !important;
    background: var(--v3-card) !important;
    box-shadow: var(--rawa-shadow-soft) !important;
    overflow: hidden;
}

#app-view .rawa-finance-page .finance-kpi.primary,
#app-view .rawa-finance-page .finance-kpi.positive,
#app-view .rawa-finance-page .finance-kpi.negative,
#app-view .rawa-finance-page .finance-kpi.projected {
    border-top-width: 1px !important;
}

#app-view .rawa-finance-page .finance-kpi::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: #64748b;
}

#app-view .rawa-finance-page .finance-kpi.positive::before { background: #22c55e; }
#app-view .rawa-finance-page .finance-kpi.negative::before { background: #ef4444; }
#app-view .rawa-finance-page .finance-kpi.projected::before { background: #3182f6; }

#app-view .rawa-finance-page .finance-kpi span,
#app-view .rawa-finance-page .finance-kpi small {
    color: var(--v3-muted) !important;
}

#app-view .rawa-finance-page .finance-kpi strong {
    color: var(--v3-text) !important;
    font-size: clamp(19px, 1.7vw, 24px) !important;
}

#app-view .rawa-finance-page .finance-tabs {
    width: 100% !important;
    gap: 4px !important;
    padding: 4px !important;
    border: 1px solid var(--v3-border);
    border-radius: 12px !important;
    background: var(--v3-card-2) !important;
}

#app-view .rawa-finance-page .finance-tab {
    min-height: 36px;
    flex: 0 0 auto;
    padding: 8px 13px !important;
    border: 1px solid transparent !important;
    color: var(--v3-muted) !important;
}

#app-view .rawa-finance-page .finance-tab.active {
    border-color: var(--v3-border) !important;
    background: var(--v3-card) !important;
    color: var(--v3-text) !important;
    box-shadow: 0 4px 12px rgba(0,0,0,.06) !important;
}

#app-view .rawa-finance-page .finance-tab:focus-visible {
    position: relative;
    z-index: 2;
}

#app-view .rawa-finance-page .finance-overview-grid {
    gap: 12px !important;
}

#app-view .rawa-finance-page .finance-card {
    border: 1px solid var(--v3-border) !important;
    border-radius: 14px !important;
    background: var(--v3-card) !important;
    box-shadow: var(--rawa-shadow-soft);
}

#app-view .rawa-finance-page .finance-card.danger-card,
#app-view .rawa-finance-page .finance-card.warning-card {
    border-top-width: 1px !important;
}

#app-view .rawa-finance-page .finance-card-head h3,
#app-view .rawa-finance-page .finance-list-row strong,
#app-view .rawa-finance-page .finance-daily-row,
#app-view .rawa-finance-page .finance-extrato-row strong {
    color: var(--v3-text) !important;
}

#app-view .rawa-finance-page .finance-list-row,
#app-view .rawa-finance-page .finance-daily-row,
#app-view .rawa-finance-page .finance-extrato-row {
    border-color: var(--v3-border) !important;
}

#app-view .rawa-finance-page .finance-list-row:hover,
#app-view .rawa-finance-page .finance-extrato-row:hover {
    background: color-mix(in srgb, #3182f6 4%, transparent);
}

#app-view .rawa-finance-page .finance-caixa-filter,
#app-view .rawa-finance-page .finance-period-kpis > div {
    border-color: var(--v3-border) !important;
    background: var(--v3-card) !important;
}

#app-view .rawa-finance-page .finance-bar-line {
    background: var(--v3-card-soft) !important;
}

#app-view .rawa-finance-page .finance-bar-line small {
    color: var(--v3-text-2) !important;
}

#app-view .rawa-finance-page .finance-balance-strip,
#app-view .rawa-finance-page .finance-history-item {
    border-color: var(--v3-border) !important;
    background: var(--v3-card-2) !important;
}

#app-view .rawa-finance-page .finance-overdue-row td {
    background: color-mix(in srgb, #ef4444 4%, var(--v3-card)) !important;
}

#app-view .rawa-finance-page .finance-overdue-row:hover td {
    background: color-mix(in srgb, #ef4444 7%, var(--v3-card)) !important;
}

@media (max-width: 900px) {
    #app-view .rawa-pecas-page .module-toolbar-left,
    #app-view .rawa-estoque-page .module-toolbar-left,
    #app-view .rawa-servicos-page .module-toolbar-left,
    #app-view .rawa-compras-page .module-toolbar-left,
    #app-view .rawa-finance-page .module-toolbar-left {
        flex-wrap: wrap;
    }
}

@media (max-width: 720px) {
    #app-view .rawa-pecas-page .hero-row,
    #app-view .rawa-estoque-page .hero-row,
    #app-view .rawa-servicos-page .hero-row,
    #app-view .rawa-compras-page .hero-row,
    #app-view .rawa-finance-page .hero-row {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    #app-view .rawa-pecas-page .hero-row > .action-button,
    #app-view .rawa-estoque-page .hero-row > .action-button,
    #app-view .rawa-servicos-page .hero-row > .action-button,
    #app-view .rawa-compras-page .hero-row > .action-button {
        width: 100%;
    }

    #app-view .rawa-pecas-page .module-toolbar,
    #app-view .rawa-estoque-page .module-toolbar,
    #app-view .rawa-servicos-page .module-toolbar,
    #app-view .rawa-compras-page .module-toolbar,
    #app-view .rawa-finance-page .module-toolbar,
    #app-view .rawa-pecas-page .module-toolbar-left,
    #app-view .rawa-estoque-page .module-toolbar-left,
    #app-view .rawa-servicos-page .module-toolbar-left,
    #app-view .rawa-compras-page .module-toolbar-left,
    #app-view .rawa-finance-page .module-toolbar-left {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    #app-view .rawa-pecas-page .toolbar-select,
    #app-view .rawa-estoque-page .toolbar-select,
    #app-view .rawa-servicos-page .toolbar-select,
    #app-view .rawa-compras-page .toolbar-select,
    #app-view .rawa-finance-page .toolbar-select {
        width: 100% !important;
        max-width: none !important;
        flex: 1 1 auto;
    }

    #app-view .rawa-finance-page .finance-tabs {
        width: 100% !important;
        overflow-x: auto;
    }

    #app-view .rawa-finance-page .finance-tab {
        flex: 1 0 auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    #app-view .rawa-finance-page .finance-list-row,
    #app-view .rawa-finance-page .finance-extrato-row,
    #app-view .rawa-finance-page .finance-tab {
        transition: none !important;
    }
}
