/* Google Sheets states: hover, focus, selection, diffs. */
@media (min-width: 1024px) {

  /* Row borders */
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-row {
    border-bottom: 1px solid var(--table-grid) !important;
  }

  /* Hover — very subtle like Sheets */
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-row:hover .ag-cell,
  #screenTable.table-theme-sheets .data-table tbody tr:hover td {
    background: #f5f5f5 !important;
  }

  #screenTable.table-theme-sheets .reviz-ag-grid .ag-row.saved-row .ag-cell,
  #screenTable.table-theme-sheets .data-table tbody tr.saved-row td {
    background: var(--table-bg) !important;
  }

  /* Virtual spacers */
  #screenTable.table-theme-sheets .data-table tbody tr.tbl-virtual-spacer,
  #screenTable.table-theme-sheets .data-table tbody tr.tbl-virtual-spacer:hover {
    background: transparent !important;
  }

  #screenTable.table-theme-sheets .data-table tbody tr.tbl-virtual-spacer td {
    border: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    height: auto !important;
    line-height: 0 !important;
  }

  /* Flash on save */
  #screenTable.table-theme-sheets .data-table tbody tr.rt-flash td {
    background: #d3e3fd !important;
    transition: background-color 0.5s ease !important;
  }

  /* Selection — Google blue */
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-row.ag-row-selected .ag-cell:not([col-id="pr_fact"]),
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[class*="ag-cell-range-selected"]:not([col-id="pr_fact"]) {
    background: #d3e3fd !important;
  }

  /* Editable column — same as Sheets (white bg, no special color) */
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="pr_fact"],
  #screenTable.table-theme-sheets .data-table td[data-col="pr_fact"] {
    background: var(--table-bg) !important;
  }

  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="pr_fact"],
  #screenTable.table-theme-sheets .data-table th[data-col="pr_fact"] {
    background: var(--table-header-bg) !important;
    color: var(--table-header-text) !important;
    font-weight: 500 !important;
  }

  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="pr_fact"] .tbl-inp {
    color: #000 !important;
    font-weight: 400 !important;
    font-family: Arial, sans-serif !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  /* Active cell — the signature Google Sheets blue box */
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="pr_fact"].ag-cell-focus,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="pr_fact"].ag-cell-range-selected {
    outline: 2px solid #1a73e8 !important;
    outline-offset: -2px !important;
    background: #fff !important;
  }

  /* All inputs */
  #screenTable.table-theme-sheets .tbl-inp,
  #screenTable.table-theme-sheets .input-stepper input {
    width: 100% !important;
    min-width: 44px !important;
    height: 20px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #000 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    font-family: Arial, sans-serif !important;
    box-shadow: none !important;
    padding: 0 2px !important;
    text-align: center !important;
    font-variant-numeric: tabular-nums;
  }

  #screenTable.table-theme-sheets .tbl-inp[type="number"],
  #screenTable.table-theme-sheets .input-stepper input[type="number"] {
    -moz-appearance: textfield !important;
    appearance: textfield !important;
  }

  #screenTable.table-theme-sheets .tbl-inp[type="number"]::-webkit-outer-spin-button,
  #screenTable.table-theme-sheets .tbl-inp[type="number"]::-webkit-inner-spin-button,
  #screenTable.table-theme-sheets .input-stepper input[type="number"]::-webkit-outer-spin-button,
  #screenTable.table-theme-sheets .input-stepper input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
  }

  #screenTable.table-theme-sheets .tbl-inp.table-comm {
    text-align: left !important;
    font-weight: 400 !important;
  }

  #screenTable.table-theme-sheets .cell-padless {
    padding: 0 !important;
  }

  /* Focus — blue box */
  #screenTable.table-theme-sheets .tbl-inp:focus,
  #screenTable.table-theme-sheets .input-stepper input:focus {
    background: #fff !important;
    outline: 2px solid #1a73e8 !important;
    outline-offset: -2px !important;
  }

  #screenTable.table-theme-sheets .input-stepper {
    display: inline-flex !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 82px !important;
    height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  #screenTable.table-theme-sheets .btn-step {
    display: none !important;
  }

  /* Diff: positive/negative values */
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell-wrap.col-diff.is-pos,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell-wrap.col-diff-curr.is-pos,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell.col-diff.is-pos,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell.col-diff-curr.is-pos,
  #screenTable.table-theme-sheets .data-table td.col-diff.is-pos,
  #screenTable.table-theme-sheets .data-table td.col-diff-curr.is-pos {
    color: #137333 !important;
    font-weight: 400 !important;
  }

  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell-wrap.col-diff.is-neg,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell-wrap.col-diff-curr.is-neg,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell.col-diff.is-neg,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell.col-diff-curr.is-neg,
  #screenTable.table-theme-sheets .data-table td.col-diff.is-neg,
  #screenTable.table-theme-sheets .data-table td.col-diff-curr.is-neg {
    color: #a50e0e !important;
    font-weight: 400 !important;
  }

  /* Center-align numeric columns */
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="pc_fact"] .ag-header-cell-label,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="pc_acct"] .ag-header-cell-label,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="pc_diff"] .ag-header-cell-label,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="pr_fact"] .ag-header-cell-label,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="pr_acct"] .ag-header-cell-label,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="pr_diff"] .ag-header-cell-label,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="place"] .ag-header-cell-label,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="qty"] .ag-header-cell-label,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="page"] .ag-header-cell-label {
    justify-content: center !important;
  }

  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="pc_fact"] .ag-cell-wrap,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="pc_acct"] .ag-cell-wrap,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="pc_diff"] .ag-cell-wrap,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="pr_fact"] .ag-cell-wrap,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="pr_acct"] .ag-cell-wrap,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="pr_diff"] .ag-cell-wrap,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="place"] .ag-cell-wrap,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="qty"] .ag-cell-wrap,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="page"] .ag-cell-wrap {
    justify-content: center !important;
    text-align: center !important;
  }

  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="price"] .ag-cell-wrap,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="sum_initial"] .ag-cell-wrap,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-cell[col-id="pr_user_sum"] .ag-cell-wrap {
    justify-content: flex-end !important;
    text-align: right !important;
    font-variant-numeric: tabular-nums;
  }

  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="price"] .ag-header-cell-label,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="sum_initial"] .ag-header-cell-label,
  #screenTable.table-theme-sheets .reviz-ag-grid .ag-header-cell[col-id="pr_user_sum"] .ag-header-cell-label {
    justify-content: flex-end !important;
  }
}

/* ==========================================================================
   FIGMA THEME (.table-theme-figma) STATES
   ========================================================================== */
@media (min-width: 1024px) {
  #screenTable.table-theme-figma .reviz-ag-grid .ag-row:hover .ag-cell,
  #screenTable.table-theme-figma .data-table tbody tr:hover td {
    background: #f8fbff !important;
  }

  #screenTable.table-theme-figma .reviz-ag-grid .ag-row.saved-row .ag-cell,
  #screenTable.table-theme-figma .data-table tbody tr.saved-row td {
    background: #fcfefe !important;
  }

  #screenTable.table-theme-figma .reviz-ag-grid .ag-row.ag-row-selected .ag-cell:not([col-id="pr_fact"]),
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[class*="ag-cell-range-selected"]:not([col-id="pr_fact"]) {
    background: rgba(37, 99, 235, 0.08) !important;
  }

  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="pr_fact"],
  #screenTable.table-theme-figma .data-table td[data-col="pr_fact"] {
    background: #fbfdff !important;
  }

  #screenTable.table-theme-figma .input-stepper {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 30px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  #screenTable.table-theme-figma .input-stepper:focus-within {
    box-shadow:
      inset 0 0 0 1.5px rgba(37, 99, 235, 0.45),
      0 0 0 4px rgba(37, 99, 235, 0.08) !important;
    border-radius: 8px !important;
    background: #fff !important;
  }

  #screenTable.table-theme-figma .tbl-inp,
  #screenTable.table-theme-figma .input-stepper input {
    width: 100% !important;
    max-width: 66px !important;
    min-width: 42px !important;
    height: 24px !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: none !important;
    background: transparent !important;
    color: #111827 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-align: center !important;
    font-variant-numeric: tabular-nums;
  }

  #screenTable.table-theme-figma .tbl-inp[type="number"],
  #screenTable.table-theme-figma .input-stepper input[type="number"] {
    -moz-appearance: textfield !important;
    appearance: textfield !important;
  }

  #screenTable.table-theme-figma .tbl-inp[type="number"]::-webkit-outer-spin-button,
  #screenTable.table-theme-figma .tbl-inp[type="number"]::-webkit-inner-spin-button,
  #screenTable.table-theme-figma .input-stepper input[type="number"]::-webkit-outer-spin-button,
  #screenTable.table-theme-figma .input-stepper input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
  }

  #screenTable.table-theme-figma .tbl-inp.table-comm {
    text-align: left !important;
    font-weight: 500 !important;
    color: #334155 !important;
  }

  #screenTable.table-theme-figma .tbl-inp:focus,
  #screenTable.table-theme-figma .input-stepper input:focus {
    outline: none !important;
    box-shadow: none !important;
  }

  #screenTable.table-theme-figma .btn-step {
    display: none !important;
  }

  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell-wrap.col-diff.is-pos,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell.col-diff.is-pos,
  #screenTable.table-theme-figma .data-table td.col-diff.is-pos {
    color: #15803d !important;
    font-weight: 600 !important;
  }

  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell-wrap.col-diff.is-neg,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell.col-diff.is-neg,
  #screenTable.table-theme-figma .data-table td.col-diff.is-neg {
    color: #dc2626 !important;
    font-weight: 600 !important;
  }

  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="pc_fact"] .ag-header-cell-label,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="pc_acct"] .ag-header-cell-label,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="pc_diff"] .ag-header-cell-label,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="pr_fact"] .ag-header-cell-label,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="pr_acct"] .ag-header-cell-label,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="pr_diff"] .ag-header-cell-label,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="place"] .ag-header-cell-label,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="qty"] .ag-header-cell-label,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="page"] .ag-header-cell-label {
    justify-content: center !important;
  }

  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="pc_fact"] .ag-cell-wrap,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="pc_acct"] .ag-cell-wrap,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="pc_diff"] .ag-cell-wrap,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="pr_fact"] .ag-cell-wrap,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="pr_acct"] .ag-cell-wrap,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="pr_diff"] .ag-cell-wrap,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="place"] .ag-cell-wrap,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="qty"] .ag-cell-wrap,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="page"] .ag-cell-wrap {
    justify-content: center !important;
    text-align: center !important;
  }

  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="price"] .ag-header-cell-label,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="sum_initial"] .ag-header-cell-label,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-header-cell[col-id="pr_user_sum"] .ag-header-cell-label {
    justify-content: flex-end !important;
  }

  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="price"] .ag-cell-wrap,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="sum_initial"] .ag-cell-wrap,
  #screenTable.table-theme-figma .reviz-ag-grid .ag-cell[col-id="pr_user_sum"] .ag-cell-wrap {
    justify-content: flex-end !important;
    text-align: right !important;
    font-variant-numeric: tabular-nums;
  }
}
