/* ============================================
   GLOBALEXCHANGE â€” Marketplace Styles
   ============================================ */

/* â”€â”€ Marketplace Header â”€â”€ */
.marketplace-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--space-4);
  flex-wrap: wrap;
  gap: var(--space-3);
}

.marketplace-tabs {
  display: flex;
  background: var(--color-bg-secondary);
  border-radius: var(--radius-md);
  padding: 3px;
}

.marketplace-tab {
  padding: var(--space-2) var(--space-5);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-secondary);
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all var(--transition-fast);
  border: none;
  background: none;
}

.marketplace-tab:hover {
  color: var(--color-text);
}

.marketplace-tab.active {
  background: var(--color-white);
  color: var(--color-text);
  box-shadow: var(--shadow-sm);
  font-weight: var(--font-weight-semibold);
}

.marketplace-tab.active.buy {
  color: var(--color-buy);
}

.marketplace-tab.active.sell {
  color: var(--color-sell);
}

/* â”€â”€ Filters Bar â”€â”€ */
.filters-bar {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-4);
  background: var(--color-white);
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-lg);
  margin-bottom: var(--space-4);
  flex-wrap: wrap;
}

.filter-group {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.filter-group label {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-medium);
  white-space: nowrap;
}

.filter-group .form-select,
.filter-group .form-input {
  min-height: 36px;
  font-size: var(--font-size-sm);
  min-width: 140px;
}

.filter-group .form-input {
  width: 120px;
}

.filters-bar .btn-sm {
  min-height: 36px;
}

.active-filters {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
  margin-bottom: var(--space-3);
}

/* â”€â”€ Offer Cards â”€â”€ */
.offers-grid {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.offer-card {
  background: var(--color-white);
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-lg);
  padding: var(--space-4) var(--space-5);
  display: flex;
  align-items: center;
  gap: var(--space-4);
  transition: all var(--transition-fast);
  cursor: pointer;
}

.offer-card:hover {
  border-color: var(--color-primary-light);
  box-shadow: var(--shadow-sm);
}

.offer-card.buy {
  border-left: 3px solid var(--color-buy);
}

.offer-card.sell {
  border-left: 3px solid var(--color-sell);
}

.offer-user {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  min-width: 200px;
}

.offer-user-info {
  min-width: 0;
}

.offer-user-name {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text);
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.offer-user-stats {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-size: var(--font-size-xs);
  color: var(--color-text-tertiary);
  margin-top: 2px;
}

.offer-user-stats .stars {
  gap: 1px;
}

.offer-user-stats .star {
  width: 12px;
  height: 12px;
}

.offer-details {
  flex: 1;
  display: flex;
  align-items: center;
  gap: var(--space-6);
}

.offer-detail {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.offer-detail-label {
  font-size: var(--font-size-xs);
  color: var(--color-text-tertiary);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.offer-detail-value {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text);
  font-variant-numeric: tabular-nums;
}

.offer-rate {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
}

.offer-method {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.offer-method-icon {
  width: 24px;
  height: 24px;
  border-radius: var(--radius-sm);
  background: var(--color-bg-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
}

.offer-method-icon svg {
  width: 14px;
  height: 14px;
  color: var(--color-text-secondary);
}

.offer-actions {
  flex-shrink: 0;
}

.offer-actions .btn {
  min-width: 100px;
}

/* â”€â”€ Create Operation Form â”€â”€ */
.create-op-form {
  max-width: 600px;
  margin: 0 auto;
}

.create-op-type-selector {
  display: flex;
  gap: var(--space-3);
  margin-bottom: var(--space-6);
}

.create-op-type {
  flex: 1;
  padding: var(--space-5);
  border: 2px solid var(--color-border);
  border-radius: var(--radius-lg);
  text-align: center;
  cursor: pointer;
  transition: all var(--transition-fast);
}

.create-op-type:hover {
  border-color: var(--color-primary-light);
}

.create-op-type.active.buy {
  border-color: var(--color-buy);
  background: var(--color-buy-bg);
}

.create-op-type.active.sell {
  border-color: var(--color-sell);
  background: var(--color-sell-bg);
}

.create-op-type-icon {
  width: 48px;
  height: 48px;
  border-radius: var(--radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto var(--space-3);
}

.create-op-type-icon svg {
  width: 24px;
  height: 24px;
}

.create-op-type.buy .create-op-type-icon {
  background: var(--color-buy-bg);
  color: var(--color-buy);
}

.create-op-type.sell .create-op-type-icon {
  background: var(--color-sell-bg);
  color: var(--color-sell);
}

.create-op-type h4 {
  font-size: var(--font-size-md);
  margin-bottom: var(--space-1);
}

.create-op-type p {
  font-size: var(--font-size-sm);
  color: var(--color-text-tertiary);
  margin: 0;
}

/* â”€â”€ Amount Input â”€â”€ */
.amount-input-wrapper {
  position: relative;
}

.amount-input-wrapper .form-input {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  text-align: center;
  height: 64px;
  padding: var(--space-3) var(--space-8);
}

.amount-input-wrapper .currency-label {
  position: absolute;
  right: var(--space-4);
  top: 50%;
  transform: translateY(-50%);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-tertiary);
}

/* â”€â”€ Rate Display â”€â”€ */
.rate-display {
  background: var(--color-bg);
  border-radius: var(--radius-md);
  padding: var(--space-4);
  text-align: center;
  margin: var(--space-4) 0;
}

.rate-display-label {
  font-size: var(--font-size-sm);
  color: var(--color-text-tertiary);
  margin-bottom: var(--space-1);
}

.rate-display-value {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
  font-variant-numeric: tabular-nums;
}

.rate-display-conversion {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  margin-top: var(--space-1);
}

/* â”€â”€ Fee Summary â”€â”€ */
.fee-summary {
  background: var(--color-bg);
  border-radius: var(--radius-md);
  padding: var(--space-4);
  margin: var(--space-4) 0;
}

.fee-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-2) 0;
  font-size: var(--font-size-sm);
}

.fee-row-label {
  color: var(--color-text-secondary);
}

.fee-row-value {
  font-weight: var(--font-weight-medium);
  color: var(--color-text);
  font-variant-numeric: tabular-nums;
}

.fee-row.total {
  border-top: 1px solid var(--color-border-light);
  margin-top: var(--space-2);
  padding-top: var(--space-3);
  font-size: var(--font-size-base);
}

.fee-row.total .fee-row-label {
  font-weight: var(--font-weight-semibold);
  color: var(--color-text);
}

.fee-row.total .fee-row-value {
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-md);
}

/* â”€â”€ Marketplace Empty â”€â”€ */
.marketplace-empty {
  text-align: center;
  padding: var(--space-12) var(--space-6);
}

.marketplace-empty svg {
  width: 80px;
  height: 80px;
  color: var(--color-text-disabled);
  margin-bottom: var(--space-4);
}

.marketplace-empty h3 {
  font-size: var(--font-size-lg);
  margin-bottom: var(--space-2);
}

.marketplace-empty p {
  color: var(--color-text-tertiary);
  max-width: 400px;
  margin: 0 auto var(--space-6);
}

/* â”€â”€ Offer Count â”€â”€ */
.offers-count {
  font-size: var(--font-size-sm);
  color: var(--color-text-tertiary);
  margin-bottom: var(--space-3);
}

.offers-count strong {
  color: var(--color-text);
}

/* ============================================
   CORREDOR P2P â€” Redesign Styles
   ============================================ */

/* â”€â”€ SC Page Container â”€â”€ */
.sc-page {
  max-width: var(--content-max-width);
  margin: 0 auto;
  padding: 0;
}

/* â”€â”€ SC Header â”€â”€ */
.sc-header {
  margin-bottom: var(--space-2);
}

.sc-title {
  font-size: 1.75rem;
  font-weight: 800;
  color: var(--color-text);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: var(--space-2);
  margin: 0 0 var(--space-4) 0;
  font-family: var(--font-family);
}

.sc-title-info {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: var(--radius-full);
  border: 1.5px solid var(--color-text-tertiary);
  color: var(--color-text-tertiary);
  font-size: 13px;
  font-weight: 400;
  cursor: help;
  line-height: 1;
  flex-shrink: 0;
}

/* â”€â”€ SC Tabs â”€â”€ */
.sc-tabs {
  display: flex;
  gap: var(--space-6);
  border-bottom: 1px solid var(--color-border-light);
  margin-bottom: var(--space-5);
}

.sc-tab {
  padding: var(--space-3) 0;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-tertiary);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border: none;
  background: none;
  cursor: pointer;
  position: relative;
  transition: color var(--transition-fast);
  border-bottom: 3px solid transparent;
  margin-bottom: -1px;
}

.sc-tab:hover {
  color: var(--color-text-secondary);
}

.sc-tab.active {
  color: var(--color-text);
  border-bottom-color: var(--color-text);
}

/* â”€â”€ SC Toolbar â”€â”€ */
.sc-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--space-4);
}

.sc-toolbar-left {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.sc-filter-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: none;
  background: none;
  cursor: pointer;
  color: var(--color-text);
  position: relative;
  padding: 0;
}

.sc-filter-btn svg {
  width: 22px;
  height: 22px;
}

.sc-filter-dot {
  position: absolute;
  top: 4px;
  right: 2px;
  width: 8px;
  height: 8px;
  border-radius: var(--radius-full);
  background: var(--color-danger);
}

.sc-toolbar-right {
  display: flex;
  align-items: center;
  gap: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  overflow: hidden;
}

.sc-view-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 36px;
  border: none;
  background: var(--color-white);
  cursor: pointer;
  color: var(--color-text-tertiary);
  transition: all var(--transition-fast);
  padding: 0;
}

.sc-view-btn:first-child {
  border-right: 1px solid var(--color-border);
}

.sc-view-btn:hover {
  background: var(--color-bg);
  color: var(--color-text);
}

.sc-view-btn.active {
  background: var(--color-bg-secondary);
  color: var(--color-text);
}

.sc-view-btn svg {
  width: 18px;
  height: 18px;
}

/* â”€â”€ SC Counter â”€â”€ */
.sc-counter {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  margin-bottom: var(--space-4);
}

/* â”€â”€ SC Content Area â”€â”€ */
.sc-content {
  min-height: 300px;
}

/* â”€â”€ SC Table View â”€â”€ */
.sc-table-wrap {
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-lg);
  overflow: hidden;
}

.sc-table {
  width: 100%;
  border-collapse: collapse;
}

.sc-table thead {
  background: var(--color-bg);
}

.sc-table th {
  padding: var(--space-3) var(--space-4);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-secondary);
  text-align: left;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
  border-bottom: 1px solid var(--color-border-light);
}

.sc-table th .sc-th-info {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  border-radius: var(--radius-full);
  border: 1px solid var(--color-text-tertiary);
  color: var(--color-text-tertiary);
  font-size: 9px;
  margin-left: 4px;
  cursor: help;
  vertical-align: middle;
}

.sc-table td {
  padding: var(--space-3) var(--space-4);
  font-size: var(--font-size-base);
  border-bottom: 1px solid var(--color-border-light);
  vertical-align: middle;
}

.sc-table tbody tr:last-child td {
  border-bottom: none;
}

.sc-table tbody tr:hover td {
  background: var(--color-bg);
}

/* Table cell: Type */
.sc-cell-type .sc-type-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 14px;
  border-radius: var(--radius-md);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  border: 1.5px solid;
  cursor: default;
}

.sc-type-badge.sc-type-buy {
  color: var(--color-success);
  border-color: var(--color-success);
  background: var(--color-success-bg);
}

.sc-type-badge.sc-type-sell {
  color: var(--color-primary);
  border-color: var(--color-primary);
  background: var(--color-primary-bg);
}

/* Table cell: Payment Method */
.sc-cell-pm {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.sc-pm-flag {
  width: 28px;
  height: 20px;
  border-radius: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
}

.sc-pm-name {
  font-size: var(--font-size-sm);
  color: var(--color-text);
  line-height: 1.3;
}

/* Table cell: Amount */
.sc-cell-amount {
  white-space: nowrap;
}

.sc-amount-line {
  display: block;
  font-size: var(--font-size-sm);
  line-height: 1.5;
}

.sc-amount-plus {
  color: var(--color-success);
  font-weight: var(--font-weight-semibold);
}

.sc-amount-minus {
  color: var(--color-text);
  font-weight: var(--font-weight-medium);
}

/* Table cell: Rate */
.sc-cell-rate {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  white-space: nowrap;
}

/* Table cell: User */
.sc-cell-user {
  display: flex;
  align-items: flex-start;
  gap: var(--space-2);
}

.sc-user-avatar {
  width: 36px;
  height: 36px;
  border-radius: var(--radius-full);
  background: var(--color-bg-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-secondary);
  flex-shrink: 0;
  overflow: hidden;
  position: relative;
}

.sc-user-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sc-user-info {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}

.sc-user-name {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
  display: flex;
  align-items: center;
  gap: 4px;
}

.sc-user-verified {
  display: inline-flex;
  width: 14px;
  height: 14px;
  color: var(--color-success);
  flex-shrink: 0;
}

.sc-user-meta {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--font-size-xs);
  color: var(--color-text-tertiary);
  flex-wrap: wrap;
}

.sc-user-meta-item {
  display: flex;
  align-items: center;
  gap: 3px;
  white-space: nowrap;
}

/* Table cell: Date */
.sc-cell-date {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  white-space: nowrap;
  line-height: 1.4;
}

/* Table cell: Action */
.sc-cell-action {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  white-space: nowrap;
}

.sc-accept-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 24px;
  background: var(--color-success);
  color: var(--color-white);
  border: none;
  border-radius: var(--radius-md);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  cursor: pointer;
  transition: background var(--transition-fast);
  white-space: nowrap;
}

.sc-accept-btn:hover {
  background: var(--color-success-dark);
}

.sc-accept-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background: var(--color-bg-tertiary);
  color: var(--color-text-tertiary);
}

.sc-dismiss-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: none;
  background: none;
  cursor: pointer;
  color: var(--color-text-tertiary);
  font-size: 18px;
  padding: 0;
  border-radius: var(--radius-full);
  transition: all var(--transition-fast);
}

.sc-dismiss-btn:hover {
  background: var(--color-bg-secondary);
  color: var(--color-text);
}

/* â”€â”€ SC Grid View â”€â”€ */
.sc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: var(--space-4);
}

.sc-card {
  background: var(--color-white);
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-lg);
  padding: var(--space-4) var(--space-5);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  transition: box-shadow var(--transition-fast);
  box-shadow: var(--shadow-xs);
}

.sc-card:hover {
  box-shadow: var(--shadow-sm);
}

/* Card header */
.sc-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
}

.sc-card-type {
  display: inline-flex;
  align-items: center;
  padding: 3px 12px;
  border-radius: var(--radius-md);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  color: var(--color-success);
}

.sc-card-header-right {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--font-size-xs);
  color: var(--color-text-tertiary);
}

/* Card payment method */
.sc-card-pm {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.sc-card-pm-flag {
  font-size: 22px;
  flex-shrink: 0;
}

.sc-card-pm-name {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
  line-height: 1.3;
}

/* Card amounts */
.sc-card-amounts {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.sc-card-amount-line {
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-bold);
  line-height: 1.4;
}

.sc-card-amount-plus {
  color: var(--color-text);
}

.sc-card-amount-minus {
  color: var(--color-text);
}

.sc-card-rate {
  font-size: var(--font-size-sm);
  color: var(--color-text-tertiary);
}

/* Card user */
.sc-card-user {
  display: flex;
  align-items: flex-start;
  gap: var(--space-2);
  padding-top: var(--space-2);
}

.sc-card-user-avatar {
  width: 32px;
  height: 32px;
  border-radius: var(--radius-full);
  background: var(--color-bg-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-secondary);
  flex-shrink: 0;
  overflow: hidden;
  position: relative;
}

.sc-card-user-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sc-card-user-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.sc-card-user-name {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
  display: flex;
  align-items: center;
  gap: 4px;
}

.sc-card-user-meta {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--font-size-xs);
  color: var(--color-text-tertiary);
  flex-wrap: wrap;
}

.sc-card-user-meta-item {
  display: flex;
  align-items: center;
  gap: 3px;
  white-space: nowrap;
}

/* Card action */
.sc-card-action {
  padding-top: var(--space-2);
}

.sc-card-action .sc-accept-btn {
  width: 100%;
  padding: 10px;
  border-radius: var(--radius-lg);
}

.sc-card-action .sc-accept-btn:disabled {
  width: 100%;
  background: var(--color-bg-tertiary);
  color: var(--color-text-tertiary);
}

/* â”€â”€ SC Empty State â”€â”€ */
.sc-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--space-16) var(--space-4);
  text-align: center;
}

.sc-empty-illustration {
  width: 200px;
  height: 160px;
  margin-bottom: var(--space-4);
}

.sc-empty-illustration svg {
  width: 100%;
  height: 100%;
}

.sc-empty-text {
  font-size: var(--font-size-md);
  color: var(--color-text-secondary);
  margin: 0;
}

/* â”€â”€ SC Filter Panel (collapsible) â”€â”€ */
.sc-filter-panel {
  background: var(--color-white);
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-lg);
  padding: var(--space-4);
  margin-bottom: var(--space-4);
  display: none;
}

.sc-filter-panel.open {
  display: block;
}

.sc-filter-panel .filters-bar {
  margin-bottom: 0;
  padding: 0;
  border: none;
  background: none;
}

/* ============================================
   SC FILTER MODAL (.scfm-*)
   ============================================ */

/* Overlay */
.scfm-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-4);
  animation: scfm-fade-in 0.18s ease;
}

@keyframes scfm-fade-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* Modal container */
.scfm-modal {
  background: var(--color-white);
  border-radius: var(--radius-xl, 16px);
  width: 100%;
  max-width: 480px;
  max-height: 85vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
  animation: scfm-slide-up 0.22s ease;
  overflow: hidden;
}

@keyframes scfm-slide-up {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Header */
.scfm-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-5) var(--space-6);
  border-bottom: 1px solid var(--color-border-light);
  flex-shrink: 0;
}

.scfm-title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: var(--color-text);
  margin: 0;
}

.scfm-close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: none;
  background: var(--color-bg);
  border-radius: var(--radius-full);
  font-size: 20px;
  color: var(--color-text-secondary);
  cursor: pointer;
  transition: all var(--transition-fast);
  line-height: 1;
}

.scfm-close:hover {
  background: var(--color-bg-secondary);
  color: var(--color-text);
}

/* Body (scrollable) */
.scfm-body {
  padding: var(--space-5) var(--space-6);
  overflow-y: auto;
  flex: 1;
}

/* Section */
.scfm-section {
  margin-bottom: var(--space-5);
}

.scfm-section:last-child {
  margin-bottom: 0;
}

/* Label */
.scfm-label {
  display: block;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text);
  margin-bottom: var(--space-2);
}

/* Type button group */
.scfm-type-group {
  display: flex;
  gap: var(--space-2);
}

.scfm-type-btn {
  flex: 1;
  padding: 10px 16px;
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-white);
  color: var(--color-text-secondary);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
  transition: all var(--transition-fast);
  text-align: center;
}

.scfm-type-btn:hover {
  border-color: var(--color-primary-light);
  color: var(--color-text);
  background: var(--color-bg);
}

.scfm-type-btn.scfm-type-active {
  border-color: var(--color-primary);
  background: var(--color-primary-bg, rgba(26, 115, 232, 0.08));
  color: var(--color-primary);
}

/* Amount range row */
.scfm-range-row {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.scfm-range-field {
  flex: 1;
  position: relative;
  display: flex;
  align-items: center;
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-white);
  overflow: hidden;
  transition: border-color var(--transition-fast);
}

.scfm-range-field:focus-within {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(26, 115, 232, 0.1);
}

.scfm-range-prefix {
  padding: 0 var(--space-3);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-tertiary);
  background: var(--color-bg);
  border-right: 1px solid var(--color-border-light);
  height: 40px;
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.scfm-range-sep {
  color: var(--color-text-tertiary);
  font-size: var(--font-size-sm);
  flex-shrink: 0;
  padding: 0 2px;
}

/* Input inside range field */
.scfm-input {
  border: none;
  outline: none;
  padding: 10px var(--space-3);
  font-size: var(--font-size-sm);
  color: var(--color-text);
  background: transparent;
  width: 100%;
  font-family: var(--font-family);
}

.scfm-input::placeholder {
  color: var(--color-text-disabled);
}

/* Full-width input (standalone) */
.scfm-input-full {
  display: block;
  width: 100%;
  padding: 10px var(--space-3);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-md);
  font-size: var(--font-size-sm);
  color: var(--color-text);
  background: var(--color-white);
  font-family: var(--font-family);
  transition: border-color var(--transition-fast);
}

.scfm-input-full:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(26, 115, 232, 0.1);
}

.scfm-input-full::placeholder {
  color: var(--color-text-disabled);
}

/* Select */
.scfm-select {
  display: block;
  width: 100%;
  padding: 10px var(--space-3);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-md);
  font-size: var(--font-size-sm);
  color: var(--color-text);
  background: var(--color-white);
  font-family: var(--font-family);
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235F6368' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  padding-right: 36px;
  transition: border-color var(--transition-fast);
}

.scfm-select:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(26, 115, 232, 0.1);
}

/* Toggle row */
.scfm-toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}

/* Toggle switch */
.scfm-switch {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 24px;
  flex-shrink: 0;
}

.scfm-switch input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

.scfm-switch-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--color-border);
  border-radius: 24px;
  transition: all 0.25s ease;
}

.scfm-switch-slider::before {
  content: '';
  position: absolute;
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background-color: var(--color-white);
  border-radius: 50%;
  transition: all 0.25s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

.scfm-switch input:checked + .scfm-switch-slider {
  background-color: var(--color-primary);
}

.scfm-switch input:checked + .scfm-switch-slider::before {
  transform: translateX(20px);
}

/* Rating row */
.scfm-rating-row {
  display: flex;
  align-items: center;
  gap: var(--space-1);
}

.scfm-star {
  font-size: 24px;
  color: var(--color-border);
  cursor: pointer;
  transition: color var(--transition-fast), transform 0.15s ease;
  user-select: none;
  line-height: 1;
}

.scfm-star:hover {
  transform: scale(1.15);
}

.scfm-star.scfm-star-active {
  color: var(--color-warning);
}

.scfm-rating-clear {
  margin-left: var(--space-2);
  border: none;
  background: none;
  color: var(--color-text-tertiary);
  font-size: var(--font-size-xs);
  cursor: pointer;
  text-decoration: underline;
  padding: 2px 4px;
}

.scfm-rating-clear:hover {
  color: var(--color-text-secondary);
}

/* Footer */
.scfm-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-4) var(--space-6);
  border-top: 1px solid var(--color-border-light);
  flex-shrink: 0;
  gap: var(--space-3);
}

.scfm-btn-reset {
  padding: 10px 20px;
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-white);
  color: var(--color-text-secondary);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
  transition: all var(--transition-fast);
  font-family: var(--font-family);
}

.scfm-btn-reset:hover {
  border-color: var(--color-text-tertiary);
  color: var(--color-text);
  background: var(--color-bg);
}

.scfm-btn-apply {
  flex: 1;
  padding: 10px 24px;
  border: none;
  border-radius: var(--radius-md);
  background: var(--color-primary);
  color: var(--color-white);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  cursor: pointer;
  transition: all var(--transition-fast);
  font-family: var(--font-family);
}

.scfm-btn-apply:hover {
  background: var(--color-primary-dark);
  box-shadow: 0 2px 8px rgba(26, 115, 232, 0.3);
}

/* â”€â”€ Responsive â”€â”€ */
@media (max-width: 768px) {
  .sc-title {
    font-size: 1.3rem;
  }

  .sc-tabs {
    gap: var(--space-4);
  }

  .sc-tab {
    font-size: var(--font-size-xs);
  }

  .sc-table-wrap {
    overflow-x: auto;
  }

  .sc-grid {
    grid-template-columns: 1fr;
  }

  .sc-cell-user {
    min-width: 140px;
  }

  /* Filter modal responsive */
  .scfm-modal {
    max-width: 100%;
    max-height: 90vh;
    border-radius: var(--radius-lg) var(--radius-lg) 0 0;
    margin-top: auto;
  }

  .scfm-overlay {
    align-items: flex-end;
    padding: 0;
  }

  .scfm-header {
    padding: var(--space-4) var(--space-5);
  }

  .scfm-body {
    padding: var(--space-4) var(--space-5);
  }

  .scfm-footer {
    padding: var(--space-3) var(--space-5);
  }
}

/* ============================================
   AGREGAR / RETIRAR FONDOS â€” Professional UI
   ============================================ */

/* â”€â”€ Header Pro â”€â”€ */
.af-header-pro{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);background:var(--color-white);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);margin-bottom:var(--space-5);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}
.af-header-pro::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-success),var(--color-primary));background-size:200% 100%;animation:afGrad 4s ease infinite}
@keyframes afGrad{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.af-back-pro{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-lg);background:var(--color-bg);color:var(--color-text-secondary);text-decoration:none;transition:all var(--transition-fast);flex-shrink:0;border:1px solid var(--color-border-light)}
.af-back-pro:hover{background:var(--color-bg-secondary);color:var(--color-text);transform:translateX(-2px)}
.af-back-pro svg{width:20px;height:20px}
.af-header-content{display:flex;align-items:center;gap:var(--space-4);flex:1}
.af-header-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-lg);flex-shrink:0}
.af-header-icon svg{width:24px;height:24px}
.af-header-text{display:flex;flex-direction:column;gap:2px}
.af-header-pro .af-header-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text);margin:0;letter-spacing:.04em}
.af-header-subtitle{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}

/* â”€â”€ Stepper Pro â”€â”€ */
.ws-stepper-pro{display:flex;align-items:flex-start;justify-content:center;padding:var(--space-5) var(--space-6);margin-bottom:var(--space-6);background:var(--color-white);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs)}
.ws-step-pro{display:flex;flex-direction:column;align-items:center;position:relative;flex:1;min-width:0}
.ws-step-circle{width:38px;height:38px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);transition:all var(--transition-base);position:relative;z-index:2;border:2.5px solid var(--color-border);background:var(--color-white);color:var(--color-text-tertiary)}
.ws-step-pro.ws-step-active .ws-step-circle{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white);box-shadow:0 0 0 5px rgba(26,115,232,.12)}
.ws-step-pro.ws-step-completed .ws-step-circle{background:var(--color-success);border-color:var(--color-success);color:var(--color-white)}
.ws-step-num{line-height:1}
.ws-step-pro .ws-step-label{margin-top:var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-tertiary);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;padding:0 var(--space-1)}
.ws-step-pro.ws-step-active .ws-step-label{color:var(--color-primary);font-weight:var(--font-weight-semibold)}
.ws-step-connector{position:absolute;top:19px;left:calc(50% + 24px);width:calc(100% - 48px);height:2.5px;background:var(--color-border-light);z-index:1;border-radius:2px}
.ws-step-pro.ws-step-active .ws-step-connector{background:linear-gradient(90deg,var(--color-primary),var(--color-border-light))}
.ws-step-pro.ws-step-completed .ws-step-connector{background:var(--color-success)}
.ws-step-pro.ws-step-completed .ws-step-label{color:var(--color-success);font-weight:var(--font-weight-semibold)}

/* â”€â”€ Title Row â”€â”€ */
.af-title-row{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}
.af-title-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:var(--radius-lg);background:var(--color-bg);flex-shrink:0;border:1px solid var(--color-border-light)}
.af-title-icon svg{width:20px;height:20px}
.af-title-row .af-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text);margin:0}

/* â”€â”€ Amount Input Pro â”€â”€ */
.af-amount-wrap-pro{margin-bottom:var(--space-6)}
.af-amount-input-pro{border:2px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-white);transition:all var(--transition-base);box-shadow:var(--shadow-xs)}
.af-amount-input-pro:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(26,115,232,.1),var(--shadow-sm)}
.af-amount-input-pro .af-amount-prefix{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);padding-left:var(--space-6);transition:color var(--transition-fast)}
.af-amount-input-pro:focus-within .af-amount-prefix{color:var(--color-primary)}
.af-amount-input-pro .af-amount-input{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);padding:var(--space-5) var(--space-2)}
.af-amount-input-pro .af-amount-currency{padding-right:var(--space-6);gap:var(--space-2)}
.af-amount-input-pro .af-amount-currency span{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-primary);letter-spacing:.06em;background:var(--color-primary-bg);padding:4px 10px;border-radius:var(--radius-full)}
.af-amount-input-pro .af-amount-currency svg{color:var(--color-primary);opacity:.5}

/* â”€â”€ Label / Section â”€â”€ */
.af-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.04em}
.af-label-icon{display:inline-flex;align-items:center;color:var(--color-text-tertiary)}
.af-label-icon svg{width:16px;height:16px}
.af-section-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);letter-spacing:.08em;text-transform:uppercase;margin-top:var(--space-6);margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-light)}
.af-section-icon{display:inline-flex;align-items:center;color:var(--color-warning)}
.af-section-icon svg{width:16px;height:16px}

/* â”€â”€ TX Card Pro â”€â”€ */
.af-tx-card-pro{border:2px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-white);padding:0;overflow:hidden;transition:all var(--transition-base);box-shadow:var(--shadow-xs)}
.af-tx-card-pro.af-tx-card-selected{border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(26,115,232,.06),var(--shadow-sm)}
.af-tx-card-pro .af-tx-card-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-white) 100%);border-bottom:1px solid var(--color-border-light)}
.af-tx-card-icon-pro{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:var(--radius-lg);flex-shrink:0;box-shadow:var(--shadow-xs)}
.af-tx-card-icon-pro svg{width:22px;height:22px}
.af-tx-card-pro .af-tx-card-text{flex:1;display:flex;flex-direction:column;gap:3px}
.af-tx-card-pro .af-tx-card-text strong{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-text)}
.af-tx-card-pro .af-tx-card-text span{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}
.af-tx-card-check{display:flex;align-items:center;justify-content:center;flex-shrink:0}
.af-tx-card-check svg{width:24px;height:24px}
.af-tx-card-pro .af-tx-card-preview{padding:var(--space-5)}
.af-tx-card-pro .af-tx-card-loading{display:flex;align-items:center;justify-content:center;padding:var(--space-4) 0}

/* â”€â”€ TX Preview â”€â”€ */
.af-tx-preview-label{font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-2)}
.af-tx-preview-amount{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-3)}
.af-tx-preview-flag{font-size:1.4em}
.af-tx-preview-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text);font-variant-numeric:tabular-nums}
.af-tx-preview-code{font-size:var(--font-size-sm);color:var(--color-text-tertiary);font-weight:var(--font-weight-medium)}
.af-tx-preview-rate{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-bg);border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:var(--space-2);border:1px solid var(--color-border-light)}
.af-tx-preview-time{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin-top:var(--space-2)}
.af-tx-preview-time svg{color:var(--color-success);flex-shrink:0;width:14px;height:14px}

/* â”€â”€ Sidebar Pro â”€â”€ */
.af-sidebar-pro{position:sticky;top:calc(var(--header-height) + var(--space-4))}
.af-sidebar-pro .af-sidebar-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--space-3)}
.af-sidebar-title-icon{display:inline-flex;align-items:center;color:var(--color-primary)}
.af-sidebar-title-icon svg{width:16px;height:16px}
.af-sidebar-card-pro{background:var(--color-white);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}
.af-sidebar-card-pro::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-success))}

/* â”€â”€ Protection Badge â”€â”€ */
.af-protection-pro{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,var(--color-success-bg),rgba(15,157,88,.04));border-radius:var(--radius-lg);margin-bottom:var(--space-5);border:1px solid rgba(15,157,88,.18)}
.af-protection-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}
.af-protection-icon svg{width:22px;height:22px}
.af-protection-pro span{font-size:var(--font-size-sm);color:var(--color-success-dark);line-height:1.4}

/* â”€â”€ Sidebar Rows â”€â”€ */
.af-sidebar-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-light);gap:var(--space-3)}
.af-sidebar-row:last-of-type{border-bottom:none}
.af-sidebar-row-left{display:flex;align-items:center;gap:var(--space-3);min-width:0;flex:1}
.af-sidebar-row-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-lg);background:var(--color-bg);flex-shrink:0;border:1px solid var(--color-border-light)}
.af-sidebar-row-icon svg{width:18px;height:18px;color:var(--color-text-secondary)}
.af-sidebar-row-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.af-sidebar-row-sublabel{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}
.af-sidebar-row-text strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.af-sidebar-row-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}
.af-sidebar-row-right strong{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-text);font-variant-numeric:tabular-nums}
.af-sidebar-row-currency{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}

/* â”€â”€ Sidebar Rate â”€â”€ */
.af-sidebar-rate{padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,var(--color-bg),var(--color-white));border-radius:var(--radius-lg);margin-top:var(--space-3);border:1px solid var(--color-border-light)}
.af-sidebar-rate-label{font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-weight:var(--font-weight-medium);display:block;margin-bottom:var(--space-1)}
.af-sidebar-rate-values{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text)}

/* â”€â”€ Continue Button Pro â”€â”€ */
.af-continue-btn-pro{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:14px var(--space-5);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:var(--color-white);border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);cursor:pointer;transition:all var(--transition-base);letter-spacing:.03em;box-shadow:0 4px 12px rgba(26,115,232,.3);margin-top:var(--space-5);font-family:var(--font-family);position:relative;overflow:hidden}
.af-continue-btn-pro::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transition:left .5s ease}
.af-continue-btn-pro:hover::before{left:100%}
.af-continue-btn-pro:hover{box-shadow:0 6px 20px rgba(26,115,232,.4);transform:translateY(-1px)}
.af-continue-btn-pro:active{transform:translateY(0);box-shadow:0 2px 8px rgba(26,115,232,.25)}
.af-continue-btn-pro:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}
.af-continue-btn-pro svg{width:14px;height:14px;transition:transform var(--transition-fast)}
.af-continue-btn-pro:hover svg{transform:translateX(3px)}

/* â”€â”€ Security Features â”€â”€ */
.af-security-features{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-5);padding:var(--space-4) var(--space-5);background:var(--color-white);border-radius:var(--radius-xl);border:1px solid var(--color-border-light);box-shadow:var(--shadow-xs)}
.af-security-item{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}
.af-security-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);background:var(--color-bg);flex-shrink:0;border:1px solid var(--color-border-light)}
.af-security-icon svg{width:16px;height:16px}

/* â”€â”€ AF Layout â”€â”€ */
.af-layout{display:grid;grid-template-columns:1fr 380px;gap:var(--space-6);align-items:start}
.af-main{min-width:0}

/* â”€â”€ AF Amount Base â”€â”€ */
.af-amount-wrap{margin-bottom:var(--space-5)}
.af-amount-input-container{display:flex;align-items:center;border:2px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-white);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);overflow:hidden}
.af-amount-input-container:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(26,115,232,.1)}
.af-amount-prefix{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);padding-left:var(--space-5);flex-shrink:0}
.af-amount-input{flex:1;border:none;outline:none;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text);padding:var(--space-4) var(--space-2);background:transparent;font-family:var(--font-family);min-width:0}
.af-amount-input::placeholder{color:var(--color-text-disabled)}
.af-amount-input::-webkit-outer-spin-button,.af-amount-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.af-amount-input[type=number]{-moz-appearance:textfield}
.af-amount-currency{display:flex;align-items:center;gap:var(--space-1);padding-right:var(--space-5);flex-shrink:0;color:var(--color-text-secondary)}
.af-amount-currency span{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}
.af-amount-limits{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-tertiary);padding:0 var(--space-1)}
.af-max-link{color:var(--color-primary);font-weight:var(--font-weight-bold);text-decoration:none;font-size:var(--font-size-xs);padding:2px 8px;border-radius:var(--radius-full);background:var(--color-primary-bg);transition:all var(--transition-fast)}
.af-max-link:hover{background:rgba(26,115,232,.12);color:var(--color-primary-dark)}

/* â”€â”€ Currency Select â”€â”€ */
.af-currency-select-wrap{margin-bottom:var(--space-5)}

/* â”€â”€ PM Trigger â”€â”€ */
.pm-trigger{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-white);cursor:pointer;transition:all var(--transition-fast);min-height:56px}
.pm-trigger:hover{border-color:var(--color-primary-light);box-shadow:var(--shadow-xs)}
.pm-trigger-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-md);background:var(--color-bg);flex-shrink:0;border:1px solid var(--color-border-light)}
.pm-trigger-icon svg{width:18px;height:18px}
.pm-trigger-info{flex:1;min-width:0}
.pm-trigger-name{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pm-trigger-detail{font-size:var(--font-size-xs);color:var(--color-text-tertiary);display:block;margin-top:2px}
.pm-trigger-arrow{display:flex;align-items:center;color:var(--color-text-tertiary);flex-shrink:0}
.pm-trigger-arrow svg{width:18px;height:18px}
.pm-trigger-empty{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-tertiary);font-size:var(--font-size-sm)}
.pm-trigger-empty svg{width:18px;height:18px;color:var(--color-primary)}

/* â”€â”€ PM Modal â”€â”€ */
.pm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.45);z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:pmFadeIn .18s ease}
@keyframes pmFadeIn{from{opacity:0}to{opacity:1}}
.pm-modal{background:var(--color-white);border-radius:var(--radius-xl);width:100%;max-width:520px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.2);animation:pmSlideUp .22s ease;overflow:hidden}
@keyframes pmSlideUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.pm-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border-light);flex-shrink:0}
.pm-modal-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text);margin:0}
.pm-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:var(--color-bg);border-radius:var(--radius-full);font-size:20px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}
.pm-modal-close:hover{background:var(--color-bg-secondary);color:var(--color-text)}
.pm-modal-tabs{display:flex;border-bottom:1px solid var(--color-border-light);padding:0 var(--space-6);flex-shrink:0}
.pm-modal-tab{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);border:none;background:none;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all var(--transition-fast)}
.pm-modal-tab:hover{color:var(--color-text-secondary)}
.pm-modal-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}
.pm-modal-search{padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--color-border-light);flex-shrink:0}
.pm-modal-search-input{width:100%;padding:var(--space-3) var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-family:var(--font-family);background:var(--color-bg);transition:all var(--transition-fast)}
.pm-modal-search-input:focus{outline:none;border-color:var(--color-primary);background:var(--color-white);box-shadow:0 0 0 3px rgba(26,115,232,.1)}
.pm-modal-body{flex:1;overflow-y:auto;padding:var(--space-3) var(--space-6)}
.pm-modal-list{display:flex;flex-direction:column;gap:var(--space-1)}
.pm-modal-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);border:1.5px solid transparent}
.pm-modal-item:hover{background:var(--color-bg);border-color:var(--color-border-light)}
.pm-modal-item.selected{background:var(--color-primary-bg);border-color:var(--color-primary)}
.pm-modal-item-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-bg);flex-shrink:0;font-size:18px;border:1px solid var(--color-border-light)}
.pm-modal-item-icon svg{width:20px;height:20px;color:var(--color-text-secondary)}
.pm-modal-item-info{flex:1;min-width:0}
.pm-modal-item-name{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text);display:block}
.pm-modal-item-detail{font-size:var(--font-size-xs);color:var(--color-text-tertiary);display:block;margin-top:1px}
.pm-modal-item-check{display:flex;align-items:center;color:var(--color-primary);flex-shrink:0;opacity:0;transition:opacity var(--transition-fast)}
.pm-modal-item.selected .pm-modal-item-check{opacity:1}
.pm-modal-item-check svg{width:20px;height:20px}
.pm-modal-empty{text-align:center;padding:var(--space-8) var(--space-4);color:var(--color-text-tertiary);font-size:var(--font-size-sm)}
.pm-modal-category{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-3) var(--space-4) var(--space-1);margin-top:var(--space-2)}

/* â”€â”€ Responsive AF â”€â”€ */
@media(max-width:900px){
  .af-layout{grid-template-columns:1fr;gap:var(--space-4)}
  .af-sidebar-pro{position:static}
}
@media(max-width:640px){
  .af-header-pro{padding:var(--space-4);gap:var(--space-3)}
  .af-header-icon{width:40px;height:40px}
  .af-header-icon svg{width:20px;height:20px}
  .ws-stepper-pro{padding:var(--space-4) var(--space-3);flex-wrap:wrap;gap:var(--space-2)}
  .ws-step-pro .ws-step-label{font-size:10px}
  .ws-step-circle{width:32px;height:32px;font-size:var(--font-size-xs)}
  .ws-step-connector{top:16px;left:calc(50% + 20px);width:calc(100% - 40px)}
  .af-amount-input-pro .af-amount-prefix{font-size:var(--font-size-xl);padding-left:var(--space-4)}
  .af-amount-input-pro .af-amount-input{font-size:var(--font-size-xl);padding:var(--space-3) var(--space-2)}
  .af-amount-input-pro .af-amount-currency{padding-right:var(--space-4)}
  .af-tx-card-pro .af-tx-card-header{padding:var(--space-3) var(--space-4)}
  .af-tx-card-icon-pro{width:38px;height:38px}
  .pm-modal{max-width:100%;max-height:90vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin-top:auto}
  .pm-modal-overlay{align-items:flex-end;padding:0}
}
