.oa-root {
    display: grid;
    gap: 1.5rem;
}

.oa-root *,
.oa-root *::before,
.oa-root *::after {
    box-sizing: border-box;
}

.oa-hero {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1.75rem 1.5rem;
    border-radius: 1.5rem;
    border: 1px solid rgba(148, 163, 184, 0.18);
    background:
        radial-gradient(circle at top right, rgba(59, 130, 246, 0.16), transparent 24%),
        linear-gradient(135deg, #091833 0%, #0f2560 58%, #0a1a40 100%);
    box-shadow: 0 28px 80px rgba(15, 23, 42, 0.16);
    color: white;
}

.oa-eyebrow {
    margin: 0 0 0.4rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(191, 219, 254, 0.88);
}

.oa-title {
    margin: 0;
    font-size: clamp(1.65rem, 3.2vw, 2.4rem);
    line-height: 1.05;
    letter-spacing: -0.03em;
    font-weight: 800;
}

.oa-subtitle {
    max-width: 54rem;
    margin: 0.8rem 0 0;
    color: rgba(226, 232, 240, 0.88);
    line-height: 1.6;
    font-size: 0.95rem;
}

.oa-panel {
    display: grid;
    gap: 1rem;
    padding: 1.35rem;
    border-radius: 1.4rem;
    border: 1px solid rgba(226, 232, 240, 0.92);
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.06);
}

.dark .oa-panel {
    border-color: rgba(255, 255, 255, 0.08);
    background: rgba(17, 24, 39, 0.95);
}

.oa-panel--alert {
    color: rgb(185 28 28);
    border-color: rgba(248, 113, 113, 0.3);
    background: rgba(254, 242, 242, 0.95);
}

.dark .oa-panel--alert {
    color: rgb(254 202 202);
    background: rgba(69, 10, 10, 0.55);
}

.oa-panel-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.oa-panel-head h2 {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: rgb(15 23 42);
}

.oa-panel-head p {
    margin: 0.35rem 0 0;
    color: rgb(100 116 139);
    line-height: 1.5;
    font-size: 0.875rem;
}

.dark .oa-panel-head h2 {
    color: rgb(241 245 249);
}

.dark .oa-panel-head p {
    color: rgb(148 163 184);
}

.oa-filter-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.oa-filter-grid--compact {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.oa-field {
    display: grid;
    gap: 0.45rem;
}

.oa-field--wide {
    grid-column: span 2;
}

.oa-field span {
    font-size: 0.78rem;
    font-weight: 700;
    color: rgb(71 85 105);
}

.oa-field select,
.oa-field input {
    width: 100%;
    padding: 0.75rem 0.9rem;
    border-radius: 0.95rem;
    border: 1px solid rgba(203, 213, 225, 0.95);
    background: rgba(248, 250, 252, 0.92);
    color: rgb(15 23 42);
    font: inherit;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.dark .oa-field select,
.dark .oa-field input {
    border-color: rgba(255, 255, 255, 0.08);
    background: rgba(15, 23, 42, 0.72);
    color: rgb(226 232 240);
}

.oa-field select:focus,
.oa-field input:focus {
    outline: none;
    border-color: rgba(37, 99, 235, 0.7);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}

.oa-kpi-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.oa-kpi-grid--triple {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.oa-kpi-card {
    display: grid;
    gap: 0.45rem;
    padding: 1.2rem 1.1rem;
    border-radius: 1.2rem;
    border: 1px solid rgba(226, 232, 240, 0.92);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05);
}

.dark .oa-kpi-card {
    border-color: rgba(255, 255, 255, 0.08);
    background: rgba(17, 24, 39, 0.95);
}

.oa-kpi-card--highlight {
    border-color: rgba(37, 99, 235, 0.28);
    background:
        radial-gradient(circle at top right, rgba(59, 130, 246, 0.12), transparent 30%),
        linear-gradient(180deg, rgba(239, 246, 255, 0.95), rgba(255, 255, 255, 0.98));
}

.dark .oa-kpi-card--highlight {
    background:
        radial-gradient(circle at top right, rgba(59, 130, 246, 0.12), transparent 30%),
        linear-gradient(180deg, rgba(15, 23, 42, 0.96), rgba(17, 24, 39, 0.98));
}

.oa-kpi-label {
    color: rgb(100 116 139);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.oa-kpi-value {
    color: rgb(15 23 42);
    font-size: 1.4rem;
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -0.03em;
}

.dark .oa-kpi-value {
    color: rgb(248 250 252);
}

.oa-kpi-note {
    margin: 0;
    color: rgb(100 116 139);
    font-size: 0.82rem;
}

.oa-grid-2,
.oa-grid-3 {
    display: grid;
    gap: 1rem;
}

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

.oa-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.oa-stat-list,
.oa-mini-table,
.oa-alert-list {
    display: grid;
    gap: 0.8rem;
}

.oa-stat-list div,
.oa-mini-table div,
.oa-alert-list div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.9rem 1rem;
    border-radius: 1rem;
    background: rgba(248, 250, 252, 0.92);
    border: 1px solid rgba(226, 232, 240, 0.92);
}

.dark .oa-stat-list div,
.dark .oa-mini-table div,
.dark .oa-alert-list div {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(255, 255, 255, 0.06);
}

.oa-stat-list span,
.oa-mini-table span,
.oa-alert-list span {
    display: block;
    color: rgb(100 116 139);
    font-size: 0.82rem;
}

.oa-highlight-card {
    display: grid;
    gap: 0.55rem;
    padding: 1.1rem;
    border-radius: 1.1rem;
    border: 1px solid rgba(191, 219, 254, 0.92);
    background: rgba(239, 246, 255, 0.95);
}

.dark .oa-highlight-card {
    border-color: rgba(96, 165, 250, 0.18);
    background: rgba(15, 23, 42, 0.78);
}

.oa-highlight-card h3 {
    margin: 0;
    font-size: 1.05rem;
}

.oa-highlight-card p {
    margin: 0;
    color: rgb(71 85 105);
}

.oa-chip {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 0.35rem 0.7rem;
    border-radius: 999px;
    background: rgba(37, 99, 235, 0.1);
    color: rgb(30 64 175);
    font-size: 0.74rem;
    font-weight: 700;
}

.oa-bars {
    display: grid;
    gap: 0.75rem;
}

.oa-bar-row {
    display: grid;
    gap: 0.75rem;
    align-items: center;
    grid-template-columns: minmax(6rem, 8rem) minmax(0, 1fr) auto;
}

.oa-bar-row span {
    color: rgb(51 65 85);
    font-size: 0.86rem;
    font-weight: 600;
}

.oa-bar-track {
    position: relative;
    overflow: hidden;
    height: 0.7rem;
    border-radius: 999px;
    background: rgba(226, 232, 240, 0.92);
}

.dark .oa-bar-track {
    background: rgba(255, 255, 255, 0.08);
}

.oa-bar-fill {
    position: absolute;
    inset: 0 auto 0 0;
    border-radius: inherit;
    background: linear-gradient(90deg, #2563eb, #60a5fa);
}

.oa-bar-fill--secondary {
    background: linear-gradient(90deg, #0f766e, #14b8a6);
}

.oa-table-wrap {
    overflow-x: auto;
}

.oa-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.oa-table th,
.oa-table td {
    padding: 0.95rem 0.85rem;
    border-bottom: 1px solid rgba(226, 232, 240, 0.92);
    text-align: left;
    vertical-align: top;
}

.oa-table th {
    color: rgb(100 116 139);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.oa-table td {
    color: rgb(15 23 42);
    font-size: 0.9rem;
}

.dark .oa-table td {
    color: rgb(226 232 240);
}

.oa-table td strong,
.oa-table td span {
    display: block;
}

.oa-table td span {
    margin-top: 0.2rem;
    color: rgb(100 116 139);
    font-size: 0.76rem;
}

.oa-table .is-num {
    text-align: right;
}

.oa-table-empty {
    padding: 1.6rem !important;
    text-align: center !important;
    color: rgb(100 116 139) !important;
}

.oa-row-button {
    cursor: pointer;
    transition: background 0.15s ease;
}

.oa-row-button:hover td {
    background: rgba(239, 246, 255, 0.82);
}

.oa-dre {
    width: 100%;
    border-collapse: collapse;
}

.oa-dre td {
    padding: 0.85rem 0;
    border-bottom: 1px solid rgba(226, 232, 240, 0.92);
}

.oa-dre td:last-child {
    text-align: right;
    font-weight: 700;
}

.oa-dre .is-total td {
    font-weight: 700;
}

.oa-dre .is-final td {
    padding-top: 1rem;
    border-top: 2px solid rgba(148, 163, 184, 0.35);
    font-weight: 800;
    font-size: 1rem;
}

.oa-segmented {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.oa-segmented button {
    padding: 0.6rem 0.9rem;
    border-radius: 999px;
    border: 1px solid rgba(203, 213, 225, 0.95);
    background: rgba(248, 250, 252, 0.92);
    color: rgb(51 65 85);
    font: inherit;
    font-size: 0.84rem;
    font-weight: 700;
    cursor: pointer;
}

.oa-segmented button.is-active {
    border-color: rgba(37, 99, 235, 0.35);
    background: rgba(239, 246, 255, 0.95);
    color: rgb(30 64 175);
}

.oa-empty {
    margin: 0;
    color: rgb(100 116 139);
    line-height: 1.6;
}

.oa-record-modal {
    border-radius: 1.5rem;
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.22);
    box-shadow: 0 28px 80px rgba(15, 23, 42, 0.16);
}

.oa-record-modal .fi-modal-header {
    padding: 1.5rem 1.5rem 1rem;
    border-bottom: 1px solid rgba(226, 232, 240, 0.9);
    background:
        linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(255, 255, 255, 0.98)),
        linear-gradient(135deg, rgba(15, 23, 42, 0.04), rgba(59, 130, 246, 0.08));
}

.oa-record-modal .fi-modal-content {
    padding: 1.25rem 1.5rem 1.5rem;
    background:
        radial-gradient(circle at top right, rgba(59, 130, 246, 0.08), transparent 24%),
        linear-gradient(180deg, rgba(248, 250, 252, 0.92), rgba(255, 255, 255, 1));
}

.oa-record-modal .fi-modal-footer {
    border-top: 1px solid rgba(226, 232, 240, 0.9);
    background: rgba(255, 255, 255, 0.98);
}

.oa-record-modal .fi-sc-component > .fi-section,
.oa-record-modal .fi-sc-component > .fi-section-content-ctn > .fi-section {
    border-radius: 1.2rem;
    border: 1px solid rgba(226, 232, 240, 0.92);
    box-shadow: 0 14px 32px rgba(15, 23, 42, 0.05);
    background: rgba(255, 255, 255, 0.96);
}

.oa-decision-modal {
    max-width: min(42rem, calc(100vw - 2rem));
}

.oa-decision-modal .fi-modal-description,
.oa-export-modal .fi-modal-description {
    max-width: 68ch;
    line-height: 1.55;
}

.oa-decision-modal .fi-modal-footer-actions,
.oa-export-modal .fi-modal-footer-actions {
    width: 100%;
    gap: 0.75rem;
}

.oa-decision-modal .fi-modal-footer-actions .fi-btn,
.oa-export-modal .fi-modal-footer-actions .fi-btn {
    min-width: 8rem;
    white-space: nowrap;
}

/* Motivos da aprovação — leitura rápida dentro do card da venda */
.crm-list-approval .fi-ta-text-item,
.oa-approval-reasons {
    display: block;
    width: 100%;
}

.oa-approval-reasons {
    display: grid;
    gap: 0.5rem;
    color: #172033;
}

.oa-approval-reasons__commercial {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.55rem 0.7rem;
    border: 1px solid #f1d18d;
    border-radius: 0.65rem;
    background: #fff9eb;
}

.oa-approval-reasons__commercial-icon,
.oa-approval-reasons__summary-icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.55rem;
    height: 1.55rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 800;
}

.oa-approval-reasons__commercial-icon {
    background: #ffebba;
    color: #965600;
}

.oa-approval-reasons__commercial div {
    display: grid;
    gap: 0.05rem;
    min-width: 0;
}

.oa-approval-reasons__commercial span:not(.oa-approval-reasons__commercial-icon) {
    color: #8a5b11;
    font-size: 0.65rem;
    font-weight: 750;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.oa-approval-reasons__commercial strong {
    color: #69400a;
    font-size: 0.76rem;
    line-height: 1.35;
}

.oa-approval-reasons__summary {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #8f2525;
    font-size: 0.76rem;
}

.oa-approval-reasons__summary-icon {
    width: 1.3rem;
    height: 1.3rem;
    background: #fee7e7;
    color: #b42318;
    font-size: 0.67rem;
}

.oa-approval-reasons__list {
    display: grid;
    gap: 0.4rem;
}

.oa-approval-reasons__item {
    display: grid;
    grid-template-columns: minmax(12rem, 1fr) minmax(18rem, 0.9fr);
    align-items: center;
    gap: 0.75rem;
    min-width: 0;
    padding: 0.55rem 0.65rem;
    border: 1px solid #e2c9c9;
    border-left: 3px solid #d65a5a;
    border-radius: 0.6rem;
    background: linear-gradient(90deg, #fff8f8 0%, #ffffff 46%);
    box-shadow: 0 2px 8px rgba(103, 34, 34, 0.045);
}

.oa-approval-reasons__product {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

.oa-approval-reasons__product-marker {
    flex: 0 0 auto;
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 999px;
    background: #d34848;
    box-shadow: 0 0 0 3px #fee7e7;
}

.oa-approval-reasons__product strong {
    min-width: 0;
    color: #263047;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.oa-approval-reasons__metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.35rem;
    margin: 0;
}

.oa-approval-reasons__metric {
    min-width: 0;
    padding: 0.35rem 0.45rem;
    border-radius: 0.45rem;
    background: #f4f6fa;
}

.oa-approval-reasons__metric dt {
    color: #727b90;
    font-size: 0.58rem;
    font-weight: 750;
    letter-spacing: 0.025em;
    text-transform: uppercase;
}

.oa-approval-reasons__metric dd {
    margin: 0.08rem 0 0;
    color: #202a40;
    font-size: 0.73rem;
    font-variant-numeric: tabular-nums;
    font-weight: 750;
}

.oa-approval-reasons__metric--requested {
    background: #eef4ff;
}

.oa-approval-reasons__metric--requested dt,
.oa-approval-reasons__metric--requested dd {
    color: #315a9d;
}

.oa-approval-reasons__metric--available {
    background: #fff8e7;
}

.oa-approval-reasons__metric--available dt,
.oa-approval-reasons__metric--available dd {
    color: #895816;
}

.oa-approval-reasons__metric--deficit {
    background: #feecec;
}

.oa-approval-reasons__metric--deficit dt,
.oa-approval-reasons__metric--deficit dd {
    color: #b42318;
}

.oa-approval-modal.fi-modal-window {
    max-width: min(48rem, calc(100vw - 2rem));
}

.oa-approval-modal .fi-modal-header {
    padding-bottom: 1rem;
}

.oa-approval-modal .fi-modal-description {
    max-width: 58ch;
    color: #59637d;
}

.oa-approval-modal .fi-modal-content {
    padding: 1rem 1.25rem 1.2rem;
    background: #f6f8fc;
}

.oa-approval-review {
    display: grid;
    gap: 0.85rem;
    color: #111827;
}

.oa-approval-review__summary {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
    padding: 0.9rem 1rem;
    border: 1px solid #c7d7f4;
    border-radius: 0.8rem;
    background: linear-gradient(135deg, #eef4ff 0%, #ffffff 78%);
}

.oa-approval-review__summary-icon,
.oa-approval-review__alert-icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 0.65rem;
}

.oa-approval-review__summary-icon {
    background: #dce9ff;
    color: #174ea6;
}

.oa-approval-review__summary-icon svg,
.oa-approval-review__alert-icon svg {
    width: 1.25rem;
    height: 1.25rem;
}

.oa-approval-review__eyebrow {
    margin: 0 0 0.15rem;
    color: #52617e;
    font-size: 0.7rem;
    font-weight: 750;
    letter-spacing: 0.055em;
    text-transform: uppercase;
}

.oa-approval-review__summary h3,
.oa-approval-review__stock h4,
.oa-approval-review__item h5,
.oa-approval-review p {
    margin: 0;
}

.oa-approval-review__summary h3 {
    font-size: 1rem;
    font-weight: 750;
}

.oa-approval-review__summary h3 + p {
    margin-top: 0.2rem;
    color: #5d6780;
    font-size: 0.82rem;
    line-height: 1.45;
}

.oa-approval-review__discount {
    display: flex;
    gap: 0.75rem;
    padding: 0.8rem 0.9rem;
    border: 1px solid #f0cf8a;
    border-radius: 0.75rem;
    background: #fff9eb;
}

.oa-approval-review__alert-icon {
    width: 2rem;
    height: 2rem;
    background: #ffedbd;
    color: #9a5700;
}

.oa-approval-review__discount strong {
    color: #714000;
    font-size: 0.82rem;
}

.oa-approval-review__discount p {
    margin-top: 0.15rem;
    color: #80510f;
    font-size: 0.8rem;
    line-height: 1.4;
}

.oa-approval-review__stock {
    overflow: hidden;
    border: 1px solid #d5dbe7;
    border-radius: 0.8rem;
    background: #ffffff;
}

.oa-approval-review__stock > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.75rem 0.9rem;
    border-bottom: 1px solid #e1e5ed;
    background: #fafbfe;
}

.oa-approval-review__stock h4 {
    color: #202a42;
    font-size: 0.9rem;
    font-weight: 750;
}

.oa-approval-review__stock > header > span {
    flex: 0 0 auto;
    padding: 0.25rem 0.55rem;
    border-radius: 999px;
    background: #fee7e7;
    color: #a52828;
    font-size: 0.7rem;
    font-weight: 750;
}

.oa-approval-review__items {
    display: grid;
    gap: 0;
}

.oa-approval-review__item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(17rem, 0.8fr);
    align-items: center;
    gap: 1rem;
    padding: 0.8rem 0.9rem;
}

.oa-approval-review__item + .oa-approval-review__item {
    border-top: 1px solid #e6e9f0;
}

.oa-approval-review__item h5 {
    min-width: 0;
    color: #172033;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.oa-approval-review__metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.4rem;
    margin: 0;
}

.oa-approval-review__metrics > div {
    min-width: 0;
    padding: 0.45rem 0.5rem;
    border-radius: 0.5rem;
    background: #f3f5f9;
}

.oa-approval-review__metrics dt {
    color: #6b748a;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.025em;
    text-transform: uppercase;
}

.oa-approval-review__metrics dd {
    margin: 0.1rem 0 0;
    color: #1e293b;
    font-size: 0.82rem;
    font-variant-numeric: tabular-nums;
    font-weight: 750;
}

.oa-approval-review__metrics .oa-approval-review__metric--danger {
    background: #fff0f0;
}

.oa-approval-review__metric--danger dt,
.oa-approval-review__metric--danger dd {
    color: #b42318;
}

.oa-approval-review__notice,
.oa-approval-review__empty {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    padding: 0.7rem 0.8rem;
    border: 1px solid #d7deeb;
    border-radius: 0.65rem;
    background: #ffffff;
    color: #59637a;
    font-size: 0.76rem;
    line-height: 1.4;
}

.oa-approval-review__notice svg {
    flex: 0 0 auto;
    width: 1rem;
    height: 1rem;
    margin-top: 0.05rem;
    color: #3b67b0;
}

.oa-approval-modal .fi-modal-footer-actions .fi-color-success {
    min-width: 10rem;
}

.oa-export-modal {
    max-width: min(64rem, calc(100vw - 2rem));
}

@media (max-width: 640px) {
    .oa-approval-reasons__item {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }

    .oa-approval-reasons__metrics {
        gap: 0.25rem;
    }

    .oa-approval-reasons__metric {
        padding: 0.35rem;
    }

    .oa-approval-modal.fi-modal-window {
        max-width: calc(100vw - 1rem);
    }

    .oa-approval-modal .fi-modal-content {
        padding: 0.75rem;
    }

    .oa-approval-review__item {
        grid-template-columns: 1fr;
        gap: 0.65rem;
    }

    .oa-approval-review__stock > header {
        align-items: flex-start;
    }

    .oa-decision-modal .fi-modal-footer-actions .fi-btn,
    .oa-export-modal .fi-modal-footer-actions .fi-btn {
        width: 100%;
        justify-content: center;
    }
}

/* Separação por produto — grade compacta inspirada em planilha */
.oa-separation-products > .fi-fo-repeater-items {
    gap: 1rem;
}

.oa-separation-products > .fi-fo-repeater-items > .fi-fo-repeater-item {
    border-color: #9aa6bf;
    border-radius: 0.55rem;
}

.oa-separation-products > .fi-fo-repeater-items > .fi-fo-repeater-item > .fi-fo-repeater-item-header {
    padding: 0.65rem 0.8rem;
    border-bottom-color: #71809f;
    background: #eef3fb;
}

.oa-separation-products .fi-fo-repeater-item-header-label {
    color: #101828;
    font-size: 0.93rem;
    font-weight: 750;
}

.oa-separation-products > .fi-fo-repeater-items > .fi-fo-repeater-item > .fi-fo-repeater-item-content {
    padding: 0.65rem 0.75rem 0.75rem;
}

.oa-separation-lots.fi-fo-table-repeater {
    overflow-x: auto;
    border: 1px solid #8d99b0;
    border-radius: 0.35rem;
    background: #fff;
}

.oa-separation-lots table {
    min-width: 46rem;
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.oa-separation-lots .fi-fo-table-repeater-empty-header-cell {
    width: 7%;
    min-width: 2.75rem;
}

.oa-separation-lots thead th {
    padding: 0.45rem 0.5rem;
    border-right: 1px solid #9ba6ba;
    border-bottom: 1px solid #77849c;
    background: #f1f4f8;
    color: #172033;
    font-size: 0.74rem;
    font-weight: 750;
    letter-spacing: 0.01em;
    text-align: left;
}

.oa-separation-lots tbody td {
    padding: 0.38rem;
    border-right: 1px solid #c1c8d5;
    border-bottom: 1px solid #c1c8d5;
    vertical-align: top;
    background: #fff;
}

.oa-separation-lots thead th:last-child,
.oa-separation-lots tbody td:last-child {
    border-right: 0;
}

.oa-separation-lots tbody tr:last-child td {
    border-bottom: 0;
}

.oa-separation-lots .fi-input-wrp {
    min-height: 2.25rem;
    border-radius: 0.32rem;
    box-shadow: none;
}

.oa-separation-lots .fi-input {
    min-height: 2.2rem;
    padding-block: 0.35rem;
    font-size: 0.78rem;
}

.oa-separation-lots .filepond--root {
    min-width: 0;
    width: 100%;
    margin-bottom: 0;
    font-size: 0.72rem;
}

.oa-separation-lots .filepond--drop-label {
    min-height: 2.25rem;
    color: #26467e;
}

.oa-separation-lots .fi-fo-table-repeater-actions {
    gap: 0.15rem;
    justify-content: center;
}

.oa-separation-lots tbody td:last-child {
    width: 7%;
    min-width: 2.75rem;
    padding-inline: 0.25rem;
}

.oa-separation-lots .fi-fo-table-repeater-add {
    padding: 0;
    border-top: 1px solid #8ca9d6;
    background: #dce9fb;
}

.oa-separation-lots .fi-fo-table-repeater-add .fi-btn {
    width: 100%;
    min-height: 2rem;
    justify-content: center;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #183f82;
    font-size: 0.78rem;
    font-weight: 700;
    box-shadow: none;
}

.oa-separation-lots .fi-fo-table-repeater-add .fi-btn:hover {
    background: #c8dcf8;
}

.oa-separation-order-note {
    padding: 0.75rem 0.8rem;
    border: 1px solid #b7c1d3;
    border-radius: 0.55rem;
    background: #f8faff;
}

.oa-separation-order-note textarea {
    min-height: 4.5rem;
}

.oa-romaneio-volumes-table.fi-fo-table-repeater {
    overflow: hidden;
    border: 1px solid #b6bfd0;
    border-radius: 0.55rem;
}

.oa-romaneio-volumes-table thead th {
    background: #eef3fb;
    color: #172033;
    font-weight: 700;
}

.oa-romaneio-volumes-table tbody td {
    vertical-align: middle;
}

@media (max-width: 760px) {
    .oa-separation-lots.fi-fo-table-repeater {
        overflow: visible;
        border: 0;
        background: transparent;
    }

    .oa-separation-lots table {
        display: block;
        min-width: 0;
        width: 100%;
        border-collapse: separate;
        table-layout: auto;
        background: transparent;
        box-shadow: none;
    }

    .oa-separation-lots thead {
        display: none;
    }

    .oa-separation-lots tbody {
        display: grid;
        gap: 0.75rem;
    }

    .oa-separation-lots tbody tr {
        display: grid;
        gap: 0.65rem;
        padding: 0.75rem;
        border: 1px solid #b7c1d3;
        border-radius: 0.65rem;
        background: #ffffff;
        box-shadow: 0 2px 8px rgba(15, 23, 41, 0.05);
    }

    .oa-separation-lots tbody td,
    .oa-separation-lots tbody td:last-child {
        display: grid;
        gap: 0.35rem;
        width: auto;
        min-width: 0;
        padding: 0;
        border: 0;
    }

    .oa-separation-lots tbody td:not(:last-child)::before {
        color: #34405f;
        font-size: 0.72rem;
        font-weight: 700;
        line-height: 1.2;
    }

    .oa-separation-lots tbody td:nth-child(1)::before {
        content: "Lote *";
    }

    .oa-separation-lots tbody td:nth-child(2)::before {
        content: "Quantidade *";
    }

    .oa-separation-lots tbody td:nth-child(3)::before {
        content: "Validade";
    }

    .oa-separation-lots tbody td:nth-child(4)::before {
        content: "Data de fabricação";
    }

    .oa-separation-lots tbody td:nth-child(5)::before {
        content: "Imagem";
    }

    .oa-separation-lots tbody td:last-child {
        display: flex;
        justify-content: flex-end;
        padding-top: 0.35rem;
        border-top: 1px solid #e0e5ee;
    }

    .oa-separation-lots .filepond--root,
    .oa-separation-lots .filepond--list,
    .oa-separation-lots .filepond--item,
    .oa-separation-lots .filepond--file {
        min-width: 0;
        max-width: 100%;
        width: 100%;
    }

    .oa-separation-lots .fi-fo-table-repeater-add {
        margin-top: 0.65rem;
        border: 1px solid #8ca9d6;
        border-radius: 0.5rem;
        overflow: hidden;
    }
}

/* Modal de nova/copiar venda — layout mais limpo e denso */
.oa-sales-modal {
    max-width: min(56rem, calc(100vw - 2rem));
}

.oa-sales-modal .fi-modal-heading {
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #0f1729;
}

.oa-sales-modal .fi-modal-description {
    margin-top: 0.35rem;
    color: #6b7694;
    font-size: 0.9rem;
    line-height: 1.45;
}

.oa-sales-modal .fi-section-header-heading {
    font-size: 0.95rem;
    font-weight: 650;
    color: #1a2340;
}

.oa-sales-modal .fi-section-header-description {
    color: #6b7694;
    font-size: 0.82rem;
}

.oa-sales-modal .fi-fo-repeater-item {
    border: 1px solid rgba(212, 216, 230, 0.95);
    border-radius: 1rem;
    background: linear-gradient(180deg, #fbfcff 0%, #ffffff 100%);
    box-shadow: 0 8px 20px rgba(15, 34, 97, 0.04);
    padding: 0.85rem 0.95rem;
}

.oa-sales-modal .fi-fo-repeater-item + .fi-fo-repeater-item {
    margin-top: 0.75rem;
}

.oa-sales-modal .fi-input-wrp,
.oa-sales-modal .fi-select-input {
    border-radius: 0.75rem;
}

.oa-sales-modal .fi-fo-field-wrp-helper-text {
    color: #b45309;
    font-weight: 500;
}

.oa-sales-modal .fi-modal-footer {
    padding: 1rem 1.5rem;
}

.oa-sales-modal .fi-modal-footer-actions {
    gap: 0.65rem;
}

.oa-sales-modal .fi-modal-footer .fi-btn {
    min-height: 2.5rem;
    padding: 0.55rem 1.2rem;
    border-radius: 0.7rem;
}

.oa-sales-modal .fi-fo-repeater-add,
.oa-sales-modal .fi-fo-repeater .fi-ac-btn-action {
    min-height: 2.4rem;
    padding: 0.5rem 1rem;
    border-radius: 0.7rem;
    gap: 0.5rem;
}

.oa-sales-modal .fi-fo-repeater-item-header-actions {
    gap: 0.45rem;
}

/* Separação de mercadoria — modal compacto, legível e orientado à tarefa */
.oa-separation-modal.fi-modal-window {
    max-width: min(64rem, calc(100vw - 2rem));
    max-height: min(48rem, calc(100dvh - 2rem)) !important;
    border: 1px solid rgba(23, 54, 141, 0.24);
    border-radius: 1.1rem;
    box-shadow: 0 24px 64px rgba(10, 26, 74, 0.22);
}

.oa-separation-modal .fi-modal-header {
    padding: 1rem 1.25rem 0.9rem;
    border-bottom: 1px solid #d4d8e6;
    background: linear-gradient(180deg, #f8faff 0%, #f4f7fd 100%);
}

.oa-separation-modal .fi-modal-heading {
    color: #0f1729;
    font-size: 1.08rem;
    font-weight: 750;
    letter-spacing: -0.01em;
}

.oa-separation-modal .fi-modal-description {
    max-width: 72ch;
    margin-top: 0.3rem;
    color: #47516e;
    font-size: 0.84rem;
    line-height: 1.45;
}

.oa-separation-modal .fi-modal-content {
    gap: 0.9rem;
    padding: 1rem 1.25rem 1.15rem;
    background: #f7f8fb;
    overflow-y: auto !important;
    overscroll-behavior: contain;
}

.oa-separation-modal .fi-modal-footer {
    padding: 0.8rem 1.25rem;
    border-top: 1px solid #d4d8e6;
    background: #ffffff;
}

.oa-separation-modal .fi-modal-footer-actions {
    gap: 0.6rem;
}

.oa-separation-modal .fi-modal-footer .fi-btn {
    min-height: 2.4rem;
    padding: 0.5rem 1rem;
    border-radius: 0.65rem;
}

.oa-separation-volume-grid {
    padding: 0.85rem 0.95rem;
    border: 1px solid #d4d8e6;
    border-radius: 0.8rem;
    background: #ffffff;
}

.oa-separation-modal .fi-fo-field-label-content,
.oa-separation-modal .fi-in-entry-label {
    color: #2d3756;
    font-weight: 650;
}

.oa-separation-modal .fi-fo-field-wrp-helper-text {
    color: #6b7694;
    font-size: 0.78rem;
}

.oa-separation-modal .fi-input-wrp {
    border-color: #b4bace;
    background: #ffffff;
}

.oa-separation-modal .fi-input-wrp:focus-within {
    border-color: #2a58c0;
    box-shadow: 0 0 0 3px rgba(42, 88, 192, 0.12);
}

.oa-separation-products > .fi-fo-repeater-items {
    gap: 0.8rem;
}

.oa-separation-products > .fi-fo-repeater-items > .fi-fo-repeater-item {
    padding: 0;
    overflow: hidden;
    border: 1px solid #b4bace;
    border-radius: 0.85rem;
    background: #ffffff;
    box-shadow: 0 3px 12px rgba(15, 23, 41, 0.06);
}

.oa-separation-products > .fi-fo-repeater-items > .fi-fo-repeater-item > .fi-fo-repeater-item-header {
    padding: 0.68rem 0.85rem;
    border-bottom: 1px solid #a8c5f5;
    background: #eaf1fd;
}

.oa-separation-products .fi-fo-repeater-item-header-label {
    color: #0a1a4a;
    font-weight: 700;
}

.oa-separation-products > .fi-fo-repeater-items > .fi-fo-repeater-item > .fi-fo-repeater-item-content {
    padding: 0.85rem;
}

.oa-separation-summary .fi-in-text-item {
    color: #11192c;
    font-weight: 650;
}

.oa-separation-summary--warning .fi-in-text-item {
    color: #92400e;
}

.oa-separation-lots > .fi-fo-repeater-items {
    gap: 0.65rem;
}

.oa-separation-lots > .fi-fo-repeater-items > .fi-fo-repeater-item {
    padding: 0;
    overflow: hidden;
    border: 1px solid #d4d8e6;
    border-radius: 0.75rem;
    background: #fbfcff;
    box-shadow: none;
}

.oa-separation-lots > .fi-fo-repeater-items > .fi-fo-repeater-item > .fi-fo-repeater-item-header {
    padding: 0.55rem 0.75rem;
    border-bottom: 1px solid #d4d8e6;
    background: #f0f2f7;
}

.oa-separation-lots > .fi-fo-repeater-items > .fi-fo-repeater-item > .fi-fo-repeater-item-content {
    padding: 0.75rem;
}

.oa-separation-optional.fi-section {
    border: 1px solid #d4d8e6;
    border-radius: 0.7rem;
    background: #ffffff;
    box-shadow: none;
}

.oa-separation-optional .fi-section-header {
    padding: 0.65rem 0.75rem;
    background: #f8f9fc;
}

.oa-separation-optional .fi-section-header-heading {
    color: #2d3756;
    font-size: 0.84rem;
}

.oa-separation-optional .fi-section-header-description {
    color: #6b7694;
    font-size: 0.75rem;
}

@media (max-width: 640px) {
    .oa-separation-modal.fi-modal-window {
        max-width: calc(100vw - 1rem);
        max-height: calc(100dvh - 1rem) !important;
    }

    .oa-separation-modal .fi-modal-header,
    .oa-separation-modal .fi-modal-content,
    .oa-separation-modal .fi-modal-footer {
        padding-inline: 0.875rem;
    }

    .oa-separation-volume-grid {
        padding: 0.75rem;
    }
}

/* Página de vendas: respiro entre header e botão Nova venda */
.fi-page:has(.crm-resource-page) .fi-header-actions,
.fi-page:has(.crm-resource-page) .fi-page-header-actions {
    gap: 0.7rem;
}

.fi-page:has(.crm-resource-page) .fi-header-actions .fi-btn,
.fi-page:has(.crm-resource-page) .fi-page-header-actions .fi-btn {
    min-height: 2.55rem;
    padding: 0.62rem 1.15rem;
    border-radius: 0.75rem;
    gap: 0.5rem;
}

.fi-page:has(.crm-resource-page) .fi-ta-ctn {
    margin-top: 0.25rem;
}

.fi-page:has(.crm-resource-page) .fi-ta-header-toolbar {
    gap: 0.65rem;
    row-gap: 0.55rem;
    margin-bottom: 0.35rem;
}

/* Visualizacao dos pedidos do romaneio */
.oa-orders-view-modal.fi-modal-window {
    max-width: min(72rem, calc(100vw - 2rem));
    max-height: calc(100dvh - 2rem);
    overflow: hidden;
}

.oa-orders-view-modal .fi-modal-content {
    padding: 1.25rem;
    overflow-y: auto;
    background: #f8fafc;
}

.oa-orders-view { display: grid; gap: 1rem; }
.oa-orders-view__summary > div {
    padding: .85rem 1rem;
    border: 1px solid #dbe3ef;
    border-radius: .8rem;
    background: #fff;
}

.oa-orders-view__order {
    overflow: hidden;
    padding: 0 !important;
    border-color: #dbe3ef;
    background: #fff;
}

.oa-orders-view__order-header {
    margin: 0 !important;
    padding: 1rem;
    border-bottom: 1px solid #e2e8f0;
    background: #f1f5f9;
}

.oa-orders-view__table th {
    padding: .75rem 1rem;
    color: #475569;
    background: #f8fafc;
    white-space: nowrap;
}

.oa-orders-view__table td {
    padding: .75rem 1rem;
    border-top: 1px solid #eef2f7;
    vertical-align: top;
}

.dark .oa-orders-view-modal .fi-modal-content,
.dark .oa-orders-view__table th {
    background: #0f172a;
}

.dark .oa-orders-view__summary > div,
.dark .oa-orders-view__order {
    border-color: #334155;
    background: #111827;
}

.dark .oa-orders-view__order-header {
    border-bottom-color: #334155;
    background: #1e293b;
}

.dark .oa-orders-view__table td { border-top-color: #334155; }

@media (max-width: 640px) {
    .oa-orders-view-modal.fi-modal-window {
        max-width: calc(100vw - 1rem);
    }

    .oa-orders-view-modal .fi-modal-content { padding: .75rem; }
}

.oa-sale-calc {
    margin-top: 0.15rem;
}

.oa-sale-calc--empty {
    border: 1px dashed rgba(180, 186, 206, 0.9);
    border-radius: 0.9rem;
    padding: 0.85rem 1rem;
    color: #6b7694;
    background: rgba(244, 245, 249, 0.7);
    font-size: 0.88rem;
}

.oa-sale-calc__grid {
    display: grid;
    gap: 0.65rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.oa-sale-calc__card {
    min-width: 0;
    border: 1px solid rgba(212, 216, 230, 0.95);
    border-radius: 0.9rem;
    background: linear-gradient(180deg, #fbfcff 0%, #ffffff 100%);
    box-shadow: 0 8px 18px rgba(15, 34, 97, 0.04);
    padding: 0.75rem 0.85rem;
    display: grid;
    gap: 0.2rem;
}

.oa-sale-calc__card--highlight {
    border-color: rgba(23, 54, 141, 0.28);
    background: linear-gradient(180deg, rgba(234, 241, 253, 0.95) 0%, #ffffff 100%);
}

.oa-sale-calc__label {
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #6b7694;
}

.oa-sale-calc__value {
    font-size: 1.02rem;
    font-weight: 700;
    color: #0f1729;
    letter-spacing: -0.01em;
}

.oa-sale-calc__hint {
    font-size: 0.78rem;
    color: #9098b0;
}

.oa-sale-calc--sale {
    margin-top: 0.35rem;
    padding-top: 0.15rem;
}

@media (max-width: 900px) {
    .oa-sale-calc__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .oa-sale-calc__grid {
        grid-template-columns: 1fr;
    }
}

.oa-sale-products-modal .fi-modal-content {
    padding: 1.25rem 1.35rem 1.4rem;
}

.oa-sale-products {
    display: grid;
    gap: 1rem;
    color: rgb(15 23 42);
}

.oa-sale-products *,
.oa-sale-products *::before,
.oa-sale-products *::after {
    box-sizing: border-box;
}

.oa-sale-products__summary {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.oa-sale-products__card,
.oa-sale-products__table-card {
    border: 1px solid rgba(203, 213, 225, 0.86);
    border-radius: 0.5rem;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
}

.oa-sale-products__card {
    min-width: 0;
    display: grid;
    gap: 0.3rem;
    padding: 0.95rem 1rem;
}

.oa-sale-products__card--highlight {
    border-color: rgba(37, 99, 235, 0.22);
    background:
        linear-gradient(180deg, rgba(239, 246, 255, 0.95), rgba(255, 255, 255, 0.98));
}

.oa-sale-products__label {
    color: rgb(100 116 139);
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
}

.oa-sale-products__value {
    min-width: 0;
    color: rgb(15 23 42);
    font-size: 1rem;
    line-height: 1.25;
    font-weight: 800;
    overflow-wrap: anywhere;
}

.oa-sale-products__hint {
    color: rgb(100 116 139);
    font-size: 0.78rem;
    overflow-wrap: anywhere;
}

.oa-sale-products__table-card {
    overflow: hidden;
}

.oa-sale-products__table-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1rem 0.85rem;
    border-bottom: 1px solid rgba(226, 232, 240, 0.92);
    background:
        linear-gradient(180deg, rgba(248, 250, 252, 0.96), rgba(255, 255, 255, 0.96));
}

.oa-sale-products__table-header h3 {
    margin: 0;
    color: rgb(15 23 42);
    font-size: 1rem;
    font-weight: 800;
}

.oa-sale-products__table-header p {
    margin: 0.25rem 0 0;
    color: rgb(100 116 139);
    font-size: 0.84rem;
    line-height: 1.45;
}

.oa-sale-products__table-header > span {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.35rem 0.65rem;
    border: 1px solid rgba(191, 219, 254, 0.9);
    border-radius: 999px;
    background: rgba(239, 246, 255, 0.9);
    color: rgb(30 64 175);
    font-size: 0.78rem;
    font-weight: 800;
}

.oa-sale-products__table-wrap {
    overflow-x: auto;
}

.oa-sale-products__table {
    width: 100%;
    min-width: 760px;
    border-collapse: separate;
    border-spacing: 0;
}

.oa-sale-products__table th,
.oa-sale-products__table td {
    padding: 0.95rem 1rem;
    border-bottom: 1px solid rgba(226, 232, 240, 0.92);
    vertical-align: top;
}

.oa-sale-products__table th {
    background: rgba(248, 250, 252, 0.92);
    color: rgb(71 85 105);
    font-size: 0.74rem;
    font-weight: 800;
    text-align: left;
    text-transform: uppercase;
}

.oa-sale-products__table td {
    color: rgb(15 23 42);
    font-size: 0.88rem;
}

.oa-sale-products__table tbody tr:last-child td {
    border-bottom: 0;
}

.oa-sale-products__table strong,
.oa-sale-products__table small {
    display: block;
}

.oa-sale-products__table strong {
    font-weight: 800;
    overflow-wrap: anywhere;
}

.oa-sale-products__table small {
    margin-top: 0.35rem;
    color: rgb(100 116 139);
    font-size: 0.76rem;
}

.oa-sale-products__table .is-num {
    text-align: right;
    white-space: nowrap;
}

.oa-sale-products__code,
.oa-sale-products__badge,
.oa-sale-products__muted {
    display: inline-flex;
    width: fit-content;
    max-width: 100%;
    align-items: center;
    margin-top: 0.35rem;
    overflow-wrap: anywhere;
}

.oa-sale-products__code {
    padding: 0.22rem 0.5rem;
    border-radius: 999px;
    background: rgba(241, 245, 249, 0.98);
    color: rgb(71 85 105);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 0.72rem;
    font-weight: 700;
}

.oa-sale-products__badge {
    padding: 0.28rem 0.58rem;
    border: 1px solid rgba(20, 184, 166, 0.25);
    border-radius: 999px;
    background: rgba(240, 253, 250, 0.98);
    color: rgb(15 118 110);
    font-size: 0.74rem;
    font-weight: 800;
}

.oa-sale-products__muted {
    color: rgb(100 116 139);
    font-size: 0.82rem;
}

.oa-sale-products__empty-row td {
    padding: 1.25rem !important;
}

.oa-sale-products__empty {
    display: grid;
    justify-items: center;
    gap: 0.35rem;
    padding: 1.3rem;
    border: 1px dashed rgba(148, 163, 184, 0.7);
    border-radius: 0.5rem;
    background: rgba(248, 250, 252, 0.88);
    text-align: center;
}

.oa-sale-products__empty strong {
    color: rgb(15 23 42);
    font-size: 0.95rem;
}

.oa-sale-products__empty span {
    color: rgb(100 116 139);
    font-size: 0.84rem;
}

.dark .oa-sale-products {
    color: rgb(226 232 240);
}

.dark .oa-sale-products__card,
.dark .oa-sale-products__table-card {
    border-color: rgba(255, 255, 255, 0.08);
    background: rgba(17, 24, 39, 0.96);
}

.dark .oa-sale-products__card--highlight {
    background:
        linear-gradient(180deg, rgba(15, 23, 42, 0.98), rgba(17, 24, 39, 0.98));
}

.dark .oa-sale-products__value,
.dark .oa-sale-products__table-header h3,
.dark .oa-sale-products__table td,
.dark .oa-sale-products__empty strong {
    color: rgb(248 250 252);
}

.dark .oa-sale-products__label,
.dark .oa-sale-products__hint,
.dark .oa-sale-products__table-header p,
.dark .oa-sale-products__table small,
.dark .oa-sale-products__muted,
.dark .oa-sale-products__empty span {
    color: rgb(148 163 184);
}

.dark .oa-sale-products__table-header,
.dark .oa-sale-products__table th {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(255, 255, 255, 0.08);
}

.dark .oa-sale-products__table th {
    color: rgb(203 213 225);
}

.dark .oa-sale-products__table td {
    border-color: rgba(255, 255, 255, 0.08);
}

.dark .oa-sale-products__code,
.dark .oa-sale-products__empty {
    background: rgba(15, 23, 42, 0.82);
    border-color: rgba(255, 255, 255, 0.08);
    color: rgb(203 213 225);
}

.dark .oa-sale-products__badge {
    border-color: rgba(45, 212, 191, 0.2);
    background: rgba(20, 184, 166, 0.12);
    color: rgb(94 234 212);
}

@media (max-width: 1280px) {
    .oa-kpi-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

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

@media (max-width: 960px) {
    .oa-filter-grid,
    .oa-filter-grid--compact,
    .oa-kpi-grid,
    .oa-kpi-grid--triple,
    .oa-grid-2,
    .oa-grid-3 {
        grid-template-columns: minmax(0, 1fr);
    }

    .oa-field--wide {
        grid-column: auto;
    }

    .oa-bar-row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .oa-sale-products-modal .fi-modal-content {
        padding: 0.95rem;
    }

    .oa-sale-products__summary {
        grid-template-columns: minmax(0, 1fr);
    }

    .oa-sale-products__table-header {
        flex-direction: column;
        align-items: stretch;
    }

    .oa-sale-products__table-header > span {
        width: fit-content;
    }

    .oa-sale-products__table-wrap {
        overflow: visible;
    }

    .oa-sale-products__table {
        min-width: 0;
    }

    .oa-sale-products__table,
    .oa-sale-products__table tbody,
    .oa-sale-products__table tr,
    .oa-sale-products__table td {
        display: block;
        width: 100%;
    }

    .oa-sale-products__table thead {
        display: none;
    }

    .oa-sale-products__table tbody {
        padding: 0.8rem;
        background: rgba(248, 250, 252, 0.7);
    }

    .oa-sale-products__table tr {
        display: grid;
        gap: 0.65rem;
        padding: 0.85rem;
        border: 1px solid rgba(226, 232, 240, 0.95);
        border-radius: 0.5rem;
        background: rgba(255, 255, 255, 0.98);
    }

    .oa-sale-products__table tr + tr {
        margin-top: 0.75rem;
    }

    .oa-sale-products__table td {
        display: grid;
        grid-template-columns: minmax(6.5rem, 42%) minmax(0, 1fr);
        gap: 0.75rem;
        padding: 0;
        border-bottom: 0;
        text-align: left !important;
        white-space: normal !important;
    }

    .oa-sale-products__table td::before {
        content: attr(data-label);
        color: rgb(71 85 105);
        font-size: 0.74rem;
        font-weight: 800;
        text-transform: uppercase;
    }

    .oa-sale-products__table .is-num {
        text-align: left;
    }

    .oa-sale-products__empty-row {
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .oa-sale-products__empty-row td {
        display: block;
        padding: 0 !important;
    }

    .oa-sale-products__empty-row td::before {
        content: none;
    }

    .dark .oa-sale-products__table tbody {
        background: rgba(15, 23, 42, 0.5);
    }

    .dark .oa-sale-products__table tr {
        border-color: rgba(255, 255, 255, 0.08);
        background: rgba(17, 24, 39, 0.96);
    }

    .dark .oa-sale-products__table td::before {
        color: rgb(203 213 225);
    }
}
