﻿    .invoice-chip {
      cursor: pointer;
      padding: 6px 10px;
      background: var(--surface2);
      border: 1px solid var(--border2);
      border-radius: 6px;
      font-size: 11px;
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }

    .invoice-chip-cyan {
      background: rgba(6, 182, 212, .1);
      border-color: rgba(6, 182, 212, .2);
      color: #22d3ee;
    }

    .invoice-chip-icon {
      font-size: 14px;
    }

    .ops-summary-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
      gap: 12px;
    }

    .ops-summary-total {
      color: #34d399;
      font-weight: 700;
    }

    .ops-info-inline {
      display: flex;
      gap: 20px;
      flex-wrap: wrap;
      font-size: 13px;
    }

    .ops-info-inline-wide {
      gap: 24px;
    }

    .ops-muted {
      color: var(--muted);
    }

    .ops-invoice-list {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .ops-table-wrap,
    .ops-table-wrap-neutral {
      border-radius: 8px;
      overflow: hidden;
    }

    .ops-table-wrap {
      border: 1px solid rgba(6, 182, 212, .25);
    }

    .ops-table-wrap-neutral {
      border: 1px solid var(--border);
    }

    .ops-table {
      width: 100%;
      font-size: 12px;
    }

    .ops-table-head {
      background: rgba(6, 182, 212, .08);
    }

    .ops-table-head-neutral {
      background: var(--surface2);
    }

    .ops-th,
    .ops-cell {
      padding: 10px;
    }

    .ops-th-left {
      text-align: left;
    }

    .ops-th-center,
    .ops-cell-center {
      text-align: center;
    }

    .ops-th-right,
    .ops-cell-right {
      text-align: right;
    }

    .ops-cell-sm {
      padding: 8px;
    }

    .ops-cell-strong {
      font-weight: 500;
    }

    .ops-cell-object {
      color: #06b6d4;
      font-weight: 600;
      font-size: 11px;
    }

    .ops-cell-muted {
      color: var(--muted);
    }

    .ops-cell-qty {
      color: var(--muted);
      font-weight: 600;
    }

    .ops-cell-price {
      color: #34d399;
      font-weight: 500;
    }

    .ops-cell-total {
      color: #10b981;
      font-weight: 700;
    }

    .ops-cell-subtotal {
      color: #34d399;
      font-weight: 600;
    }

    .ops-row {
      border-top: 1px solid rgba(6, 182, 212, .12);
      transition: background .15s;
    }

    .ops-row-neutral {
      border-bottom: 1px solid var(--border);
    }

    .ops-row-dim {
      opacity: .5;
    }

    .ops-row-selected {
      background: rgba(6, 182, 212, .05);
    }

    .ops-total-row {
      background: var(--surface2);
      font-weight: 700;
      border-top: 2px solid var(--border);
    }

    .ops-total-row-cyan {
      background: var(--surface2);
      border-top: 2px solid rgba(6, 182, 212, .2);
    }

    .ops-total-label {
      font-weight: 600;
      font-size: 13px;
    }

    .ops-total-value {
      color: #34d399;
      font-weight: 700;
      font-size: 14px;
    }

    .ops-total-value-lg {
      color: #10b981;
      font-size: 15px;
    }

    .ops-status-meta {
      font-size: 10px;
      margin-top: 2px;
    }

    .ops-status-chip {
      display: inline-flex;
      align-items: center;
      padding: 2px 6px;
      border-radius: 3px;
      font-size: 9px;
    }

    .ops-status-chip-success {
      background: rgba(16, 185, 129, .2);
      color: #34d399;
    }

    .ops-status-chip-warning {
      background: rgba(249, 115, 22, .2);
      color: #fb923c;
    }

    .ops-status-chip-pending {
      background: rgba(148, 163, 184, .1);
      color: #94a3b8;
    }

    .ops-complete-label {
      color: #34d399;
      font-size: 11px;
    }

    .ops-note-lg {
      height: 80px;
    }

    .ops-note-md {
      height: 70px;
    }

    .ops-modal-footer-stack {
      flex-direction: column;
      gap: 8px;
    }

    .ops-btn-stack-lg {
      justify-content: center;
      padding: 12px;
      font-size: 14px;
      font-weight: 700;
    }

    .ops-btn-cyan {
      background: rgba(6, 182, 212, .2);
      color: #22d3ee;
      border: 1px solid rgba(6, 182, 212, .3);
      justify-content: center;
    }

    .ops-mini-btn {
      font-size: 11px;
      background: rgba(6, 182, 212, .1);
      color: #22d3ee;
      border: 1px solid rgba(6, 182, 212, .3);
      border-radius: 5px;
      padding: 3px 10px;
      cursor: pointer;
    }

    .ops-preview-row {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
      margin-top: 8px;
    }

    .ops-file-chip {
      padding: 4px 8px;
      font-size: 10px;
      background: var(--surface2);
      border-radius: 4px;
      border: 1px solid var(--border2);
    }

    .ops-already-box {
      background: rgba(16, 185, 129, .06);
      border: 1px solid rgba(16, 185, 129, .2);
      border-radius: 8px;
      padding: 10px 14px;
      margin-bottom: 14px;
    }

    .ops-already-title {
      color: #34d399;
      font-weight: 600;
      font-size: 12px;
      margin-bottom: 6px;
    }

    .ops-already-item {
      color: var(--muted);
      font-size: 12px;
      padding: 2px 0;
    }

    .ops-object-inline {
      color: #06b6d4;
    }

    .ops-inline-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 8px;
      gap: 10px;
      flex-wrap: wrap;
    }

    .ops-table-qty-input {
      width: 60px;
      font-size: 12px;
      padding: 4px;
      text-align: center;
    }

    .ops-table-price-input {
      width: 100%;
      font-size: 12px;
      padding: 4px;
      text-align: right;
    }

    .ops-import-cost-input {
      width: 100%;
      font-size: 12px;
      padding: 5px;
      text-align: right;
    }

    .ops-invoice-uploader {
      display: flex;
      flex-direction: column;
      gap: 4px;
      align-items: center;
    }

    .ops-file-input-hidden {
      display: none;
    }

    .ops-toggle-input {
      opacity: .35;
      transition: opacity .15s;
    }

    .ops-toggle-input.is-active {
      opacity: 1;
    }

    .ops-invoice-wrap {
      cursor: not-allowed;
      display: inline-flex;
      align-items: center;
      gap: 4px;
      background: rgba(100, 116, 139, .1);
      border: 1px solid rgba(100, 116, 139, .2);
      border-radius: 6px;
      padding: 4px 8px;
      font-size: 11px;
      color: var(--muted);
      opacity: .35;
      transition: all .15s;
      pointer-events: none;
    }

    .ops-invoice-wrap.is-active {
      cursor: pointer;
      pointer-events: auto;
      opacity: 1;
      background: rgba(6, 182, 212, .1);
      border-color: rgba(6, 182, 212, .3);
      color: #22d3ee;
    }

    .ops-invoice-number-input {
      width: 110px;
      font-size: 10px;
      padding: 3px 6px;
    }

    .ops-total-bar {
      background: rgba(52, 211, 153, .06);
      border: 1px solid rgba(52, 211, 153, .2);
      border-radius: 8px;
      padding: 10px 16px;
      margin-bottom: 2px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 12px;
    }

    .ops-total-bar-label {
      font-size: 13px;
      color: var(--muted);
    }

    .ops-total-bar-value {
      color: #34d399;
      font-weight: 700;
      font-size: 16px;
    }

    .ops-empty-success {
      padding: 20px;
      text-align: center;
      color: #34d399;
      font-size: 14px;
    }

    .ops-table-scroll {
      max-height: 400px;
      overflow-y: auto;
    }

    .ops-mt14 {
      margin-top: 14px;
    }

    .ops-wh-col-object {
      width: 12%;
    }

    .ops-wh-col-name {
      width: 25%;
    }

    .ops-wh-col-qty {
      width: 10%;
    }

    .ops-wh-col-price {
      width: 12%;
    }

    .ops-wh-col-total {
      width: 15%;
    }

    .ops-wh-col-action {
      width: 26%;
    }

    .ops-it-upload-col-name {
      width: 35%;
    }

    .ops-it-upload-col-object {
      width: 15%;
    }

    .ops-it-upload-col-est,
    .ops-it-upload-col-final {
      width: 14%;
    }

    .ops-it-upload-col-qty {
      width: 10%;
    }

    .ops-it-upload-col-total {
      width: 12%;
    }

    .ops-it-arrived-col-check {
      width: 5%;
    }

    .ops-it-arrived-col-name {
      width: 28%;
    }

    .ops-it-arrived-col-object {
      width: 14%;
    }

    .ops-it-arrived-col-qty {
      width: 7%;
    }

    .ops-it-arrived-col-price {
      width: 13%;
    }

    .ops-it-arrived-col-import {
      width: 15%;
    }

    .ops-it-arrived-col-invoice {
      width: 18%;
    }

    .cons-price-highlight {
      font-weight: 700;
      color: var(--accent);
      font-size: 1.1em;
    }

    .cons-summary-price {
      color: #34d399;
      font-weight: 700;
    }

    .cons-action-stack {
      display: flex;
      gap: 4px;
      justify-content: center;
    }

    .cons-btn-stack {
      justify-content: center;
      padding: 12px;
      font-size: 14px;
    }

    .cons-approve-btn-warning {
      background: rgba(251, 146, 60, .2);
      color: #fb923c;
      border: 1px solid rgba(251, 146, 60, .4);
    }

    .cons-card {
      padding: 7px 10px;
      background: rgba(167, 139, 250, .08);
      border-radius: 8px;
      border-left: 3px solid #a78bfa;
      margin-bottom: 12px;
      font-size: 12px;
    }

    .cons-card-caption {
      color: var(--muted);
      font-size: 10px;
      text-transform: uppercase;
      letter-spacing: .05em;
      margin-bottom: 1px;
    }

    .cons-card-title {
      color: var(--text);
      font-weight: 600;
    }

    .cons-card-amount {
      margin-top: 6px;
      color: #34d399;
      font-weight: 700;
    }

    .cons-selected-box {
      text-align: center;
      font-size: 12px;
      padding: 7px;
      background: var(--surface);
      border: 1px solid var(--border2);
      border-radius: 8px;
      margin: 10px 0 12px;
      min-height: 32px;
    }

    .cons-amount-display {
      font-size: 20px;
      font-weight: 700;
      color: #34d399;
    }

    .btn-state-warning {
      background: rgba(251, 146, 60, .2);
      color: #fb923c;
      border: 1px solid rgba(251, 146, 60, .4);
    }

    .btn-state-orange {
      background: rgba(234, 88, 12, .2);
      color: #fb923c;
      border: 1px solid rgba(234, 88, 12, .3);
    }

    .btn-state-cyan {
      background: rgba(6, 182, 212, .2);
      color: #22d3ee;
      border: 1px solid rgba(6, 182, 212, .3);
    }

    .btn-state-success {
      background: rgba(52, 211, 153, .15);
      color: #34d399;
      border: 1px solid rgba(52, 211, 153, .3);
    }

    .fin-banner {
      grid-column: span 2;
      padding: 10px 12px;
      border-radius: 8px;
    }

    .fin-banner-cyan {
      background: rgba(6, 182, 212, .1);
      border: 1px solid rgba(6, 182, 212, .25);
    }

    .fin-banner-orange {
      background: rgba(251, 146, 60, .1);
      border: 1px solid rgba(251, 146, 60, .2);
      border-radius: 6px;
      padding: 8px;
    }

    .fin-banner-blue {
      background: rgba(59, 130, 246, .1);
      border: 1px solid rgba(59, 130, 246, .2);
      border-radius: 6px;
      padding: 8px;
    }

    .fin-banner-title {
      font-size: 11px;
      font-weight: 700;
      margin-bottom: 8px;
      text-transform: uppercase;
      letter-spacing: .05em;
    }

    .fin-banner-title-cyan {
      color: #22d3ee;
    }

    .fin-summary-grid {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 4px 12px;
      font-size: 13px;
    }

    .fin-summary-label {
      color: var(--muted);
    }

    .fin-summary-divider {
      border-top: 1px solid rgba(255, 255, 255, .1);
      padding-top: 4px;
      color: var(--text);
      font-weight: 600;
    }

    .fin-amount-green {
      color: #34d399;
      font-weight: 700;
    }

    .fin-amount-green-strong {
      color: #34d399;
      font-weight: 800;
      font-size: 15px;
    }

    .fin-amount-orange {
      color: #fb923c;
      font-weight: 700;
    }

    .fin-amount-cyan {
      color: #22d3ee;
      font-weight: 700;
    }

    .fin-amount-cyan-lg {
      color: #22d3ee;
      font-weight: 800;
      font-size: 16px;
    }

    .fin-note-muted {
      color: var(--muted);
      font-size: 12px;
    }

    .fin-input-orange {
      font-weight: 700;
      font-size: 1.1em;
      color: #fb923c;
    }

    .fin-received-price-input {
      width: 90px;
      font-size: 12px;
      padding: 4px;
      text-align: right;
    }

    .fin-panel-danger {
      background: rgba(239, 68, 68, .06);
      border: 1px solid rgba(239, 68, 68, .2);
      border-radius: 8px;
      padding: 12px;
    }

    .fin-panel-warning {
      background: rgba(251, 146, 60, .06);
      border: 1px solid rgba(251, 146, 60, .2);
      border-radius: 8px;
      padding: 10px 12px;
    }

    .fin-panel-warning-lg {
      border-radius: 10px;
      padding: 14px 16px;
    }

    .fin-panel-danger-label {
      color: #ef4444;
      margin: 0 0 5px 0;
    }

    .fin-panel-danger-value {
      font-size: 1.4em;
      font-weight: 700;
      color: #ef4444;
    }

    .fin-note-warning {
      font-size: 12px;
      color: #fb923c;
    }

    .fin-note-warning-strong {
      font-size: 13px;
      color: #fb923c;
      font-weight: 700;
    }

    .fin-note-muted-sm {
      font-size: 11px;
      color: var(--muted);
      margin-top: 4px;
    }

    .fin-amount-orange-lg {
      font-size: 1.3em;
      color: #fb923c;
    }

    .fin-amount-orange-xl {
      font-size: 1.4em;
      color: #fb923c;
    }

    .fin-btn-stack {
      justify-content: center;
      padding: 12px;
      font-size: 14px;
      font-weight: 700;
    }

    .fin-status-chip {
      padding: 3px 6px;
      border-radius: 3px;
      font-size: 11px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }

    .fin-status-chip-success {
      background: rgba(16, 185, 129, .2);
      color: #34d399;
    }

    .fin-status-chip-warning {
      background: rgba(245, 158, 11, .2);
      color: #fbbf24;
    }

    .fin-status-chip-danger {
      background: rgba(239, 68, 68, .2);
      color: #f87171;
    }

