/* NFC & QR — mockup Dashboard - NFC & QR.html */

#nfc-wrap .mt-eyebrow {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--mt-text-tertiary);
  margin-bottom: 4px;
}

#nfc-wrap .mt-hero-name {
  font-size: 32px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--mt-text-primary);
}

#nfc-wrap .mt-hero-insight {
  font-size: 13.5px;
  color: var(--mt-text-secondary);
  margin-top: 9px;
}

#nfc-wrap .mt-hero-insight b {
  color: var(--mt-text-primary);
  font-weight: 600;
}

#nfc-wrap .mt-scope-tag {
  font-size: 12px;
  color: var(--mt-text-tertiary);
  font-weight: 600;
}

#nfc-wrap .mt-nfc-row-label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--mt-text-tertiary);
  margin: 22px 2px 10px;
}

#nfc-wrap .nfc-batch-top,
#nfc-wrap .batch-top {
  flex-wrap: wrap;
}

#nfc-wrap .btn-batch,
#nfc-wrap .mob-nfc-batch-btn {
  display: flex !important;
  align-items: center;
  gap: 6px;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  padding: 9px 14px !important;
  border-radius: 999px !important;
  cursor: pointer;
  border: none;
  white-space: nowrap;
  font-family: inherit;
}

#nfc-wrap .btn-batch.outline,
#nfc-wrap .mob-nfc-batch-btn-stat {
  background: rgba(255, 255, 255, 0.6) !important;
  border: 1px solid var(--mt-divider) !important;
  color: var(--mt-text-primary) !important;
}

#nfc-wrap .btn-batch.primary,
#nfc-wrap .mob-nfc-batch-btn:not(.mob-nfc-batch-btn-stat) {
  background: rgba(124, 92, 246, 0.1) !important;
  color: var(--mt-purple-deep) !important;
  border: none !important;
}

#nfc-wrap #nfcQrWidget .qr-layout {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}

.guide-step {
  display: flex;
  gap: 12px;
}

.guide-step + .guide-step {
  margin-top: 14px;
}

.guide-num {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: rgba(124, 92, 246, 0.1);
  color: var(--mt-purple-deep);
  font-weight: 700;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.guide-text {
  font-size: 13px;
  color: var(--mt-text-secondary);
  line-height: 1.5;
}

.guide-text b {
  color: var(--mt-text-primary);
}

#deskNfcGroupOverlay .chip-tag,
#deskNfcGroupOverlay .nfc-chip-group-select.chip-tag {
  appearance: none;
  -webkit-appearance: none;
  font-size: 10.5px;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.05);
  color: var(--mt-text-secondary);
  border: none;
  max-width: 140px;
  cursor: pointer;
}

#nfc-wrap {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0;
}

#nfc-wrap .mt-dash-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  align-items: stretch;
  margin-bottom: 16px;
}

#nfc-wrap .mt-span-1 { grid-column: span 1; }
#nfc-wrap .mt-span-3 { grid-column: span 3; }
#nfc-wrap .mt-span-4 { grid-column: span 4; }
#nfc-wrap .mt-tile { display: flex; flex-direction: column; height: 100%; }

#nfc-wrap .mt-hero {
  padding: 26px 28px 24px;
  overflow: hidden;
  position: relative;
}

#nfc-wrap .mt-hero-wave {
  position: absolute;
  top: -60px;
  right: -60px;
  width: 360px;
  height: 360px;
  z-index: 0;
  pointer-events: none;
}

#nfc-wrap .mt-hero-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  position: relative;
  z-index: 1;
  gap: 12px;
}

#nfc-wrap .mt-hero-bottom {
  display: flex;
  align-items: center;
  gap: 26px;
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid var(--mt-divider);
  position: relative;
  z-index: 1;
  flex-wrap: wrap;
}

#nfc-wrap .mt-hero-ring {
  position: relative;
  width: 92px;
  height: 92px;
  flex-shrink: 0;
}

#nfc-wrap .mt-hero-ring svg {
  transform: rotate(-90deg);
  width: 100%;
  height: 100%;
}

#nfc-wrap .mt-hero-ring-value {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 21px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
  color: var(--mt-text-primary);
}

#nfc-wrap .mt-hero-ring-label {
  flex-shrink: 0;
  padding-right: 24px;
  border-right: 1px solid var(--mt-divider);
}

#nfc-wrap .mt-hero-ring-title {
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}

#nfc-wrap .mt-hero-ring-trend {
  font-size: 12px;
  color: var(--mt-purple-deep);
  font-weight: 600;
  margin-top: 3px;
  white-space: nowrap;
}

#nfc-wrap .mt-hero-metrics-rest {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(90px, 1fr));
  gap: 14px 16px;
  min-width: 200px;
}

#nfc-wrap .mt-hero-metric-mini .metric-value {
  font-size: 19px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--mt-text-primary);
}

#nfc-wrap .mt-hero-metric-mini .metric-label {
  font-size: 11.5px;
  color: var(--mt-text-secondary);
  margin-top: 3px;
}

#nfc-wrap .mt-nfc-rail {
  padding: 20px 18px;
}

#nfc-wrap .mt-nfc-rail-title {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--mt-text-tertiary);
  margin-bottom: 14px;
  position: relative;
  z-index: 1;
}

#nfc-wrap .mt-nfc-rail-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
  position: relative;
  z-index: 1;
}

#nfc-wrap .mt-nfc-btn-rail {
  width: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 13px;
  font-weight: 600;
  padding: 11px;
  border-radius: 999px;
  cursor: pointer;
  border: none;
  text-decoration: none;
  font-family: inherit;
}

#nfc-wrap .mt-nfc-btn-rail.primary {
  color: #fff;
  background: linear-gradient(135deg, var(--mt-purple), var(--mt-purple-deep));
  box-shadow: 0 8px 20px rgba(124, 92, 246, 0.3);
}

#nfc-wrap .mt-nfc-btn-rail.outline {
  color: var(--mt-text-primary);
  background: rgba(255, 255, 255, 0.55);
  border: 1px solid var(--mt-divider);
}

#nfc-wrap .mt-nfc-panel {
  padding: 20px 22px;
  position: relative;
  z-index: 1;
}

#nfc-wrap .mt-nfc-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
  flex-wrap: wrap;
  gap: 10px;
}

#nfc-wrap .mt-nfc-section-title {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--mt-text-primary);
}

/* QR */
#nfc-wrap .mt-nfc-qr-layout {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}

#nfc-wrap .mt-nfc-qr-image,
#nfc-wrap .qr-thumb-wrap {
  width: 120px;
  height: 120px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid var(--mt-divider);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 10px;
  position: relative;
  overflow: hidden;
}

#nfc-wrap .mt-nfc-qr-info {
  flex: 1;
  min-width: 0;
}

#nfc-wrap .mt-nfc-qr-status {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 14px;
  font-weight: 600;
  color: var(--mt-text-primary);
}

#nfc-wrap .mt-nfc-qr-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--mt-purple);
  box-shadow: 0 0 0 3px rgba(124, 92, 246, 0.18);
}

#nfc-wrap .mt-nfc-qr-link {
  font-size: 13px;
  color: var(--mt-text-secondary);
  margin-top: 4px;
  word-break: break-all;
}

#nfc-wrap .mt-nfc-qr-link a,
#nfc-wrap .qr-active-dest a {
  color: var(--mt-purple-deep);
  font-weight: 600;
  text-decoration: none;
}

#nfc-wrap .mt-nfc-qr-controls,
#nfc-wrap .qr-change-row {
  display: flex;
  gap: 10px;
  margin-top: 16px;
  max-width: 420px;
  flex-wrap: wrap;
  align-items: center;
}

#nfc-wrap .mt-nfc-mode-toggle,
#nfc-wrap .nfcv-type-toggle {
  display: flex;
  gap: 6px;
  width: 100%;
  max-width: 420px;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}

#nfc-wrap .mt-nfc-mode-btn,
#nfc-wrap .nfcv-type-btn {
  flex: 1;
  text-align: center;
  padding: 9px;
  border-radius: 11px;
  font-size: 12.5px;
  font-weight: 600;
  cursor: pointer;
  border: 1.5px solid var(--mt-divider) !important;
  background: rgba(255, 255, 255, 0.5) !important;
  color: var(--mt-text-secondary) !important;
  white-space: nowrap;
  font-family: inherit;
}

#nfc-wrap .mt-nfc-mode-btn.active,
#nfc-wrap .nfcv-type-btn.active {
  border-color: var(--mt-purple) !important;
  background: linear-gradient(135deg, rgba(124, 92, 246, 0.13), rgba(124, 92, 246, 0.04)) !important;
  color: var(--mt-purple-deep) !important;
}

#nfc-wrap .mt-nfc-field-select,
#nfc-wrap .qr-page-select,
#nfc-wrap .nfcv-ext-input {
  font-size: 13px;
  padding: 9px 12px;
  border-radius: 11px;
  border: 1px solid var(--mt-divider);
  background: rgba(255, 255, 255, 0.55);
  color: var(--mt-text-primary);
  flex: 1;
  min-width: 0;
  font-family: inherit;
}

#nfc-wrap .mt-nfc-btn-update,
#nfc-wrap .qr-btn-change,
#nfc-wrap .qr-btn-generate {
  font-size: 13px;
  font-weight: 600;
  padding: 9px 16px;
  border-radius: 11px;
  background: rgba(124, 92, 246, 0.1) !important;
  color: var(--mt-purple-deep) !important;
  border: none !important;
  cursor: pointer;
  white-space: nowrap;
  font-family: inherit;
}

#nfc-wrap .qr-active-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--mt-text-primary);
  margin-bottom: 4px;
}

#nfc-wrap .qr-widget-sub {
  font-size: 13px;
  color: var(--mt-text-secondary);
  line-height: 1.45;
}

/* Stat cards attività */
#nfc-wrap .mt-nfc-stat-card {
  padding: 20px;
}

#nfc-wrap .mt-nfc-stat-icon {
  width: 38px;
  height: 38px;
  border-radius: 11px;
  background: rgba(124, 92, 246, 0.09);
  color: var(--mt-purple-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
  position: relative;
  z-index: 1;
}

#nfc-wrap .mt-nfc-stat-title {
  font-size: 12.5px;
  font-weight: 700;
  color: var(--mt-text-primary);
  margin-bottom: 8px;
  position: relative;
  z-index: 1;
}

#nfc-wrap .mt-nfc-stat-value {
  font-size: 23px;
  font-weight: 700;
  letter-spacing: -0.01em;
  font-variant-numeric: tabular-nums;
  color: var(--mt-text-primary);
  position: relative;
  z-index: 1;
}

#nfc-wrap .mt-nfc-stat-label {
  font-size: 12px;
  color: var(--mt-text-secondary);
  margin-top: 4px;
  position: relative;
  z-index: 1;
}

#nfc-wrap .mt-nfc-stat-badge {
  display: inline-block;
  margin-top: 11px;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 999px;
  position: relative;
  z-index: 1;
}

#nfc-wrap .mt-nfc-stat-badge.down {
  background: rgba(217, 66, 90, 0.09);
  color: #D9425A;
}

#nfc-wrap .mt-nfc-stat-badge.up {
  background: rgba(124, 92, 246, 0.10);
  color: var(--mt-purple-deep);
}

#nfc-wrap .mt-nfc-stat-split {
  display: flex;
  gap: 18px;
  position: relative;
  z-index: 1;
}

/* Batch rows */
#nfc-wrap .nfc-batch-grid {
  display: block;
  margin: 0;
  gap: 0;
}

#nfc-wrap .nfc-batch-card {
  display: block !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--mt-divider) !important;
  border-radius: 0 !important;
  padding: 18px 20px !important;
  box-shadow: none !important;
  margin: 0 !important;
}

#nfc-wrap .nfc-batch-card:last-child {
  border-bottom: none !important;
}

#nfc-wrap .nfc-batch-top {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  flex-wrap: nowrap;
  margin-bottom: 0 !important;
  width: 100%;
}

#nfc-wrap .nfc-batch-head-controls,
#nfc-wrap .nfc-batch-head-hint,
#nfc-wrap .nfc-batch-head-row {
  display: none !important;
}

#nfc-wrap .nfc-batch-icon {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 11px;
  background: rgba(124, 92, 246, 0.09);
  color: var(--mt-purple-deep);
  flex-shrink: 0;
  margin: 0 !important;
  font-size: 0;
  line-height: 1;
}

#nfc-wrap .nfc-batch-main {
  flex: 1;
  min-width: 0;
}

#nfc-wrap .nfc-batch-name {
  font-size: 14.5px !important;
  font-weight: 700 !important;
  color: var(--mt-text-primary) !important;
  font-family: inherit !important;
  margin: 0 !important;
  max-width: none !important;
}

#nfc-wrap .nfc-batch-url {
  font-size: 12px !important;
  color: var(--mt-text-tertiary) !important;
  margin-top: 2px !important;
  max-width: none !important;
  white-space: normal !important;
}

#nfc-wrap .nfc-batch-url::before {
  content: "→ ";
}

#nfc-wrap .nfc-stat-pills {
  display: flex;
  gap: 7px;
  margin-top: 10px !important;
  margin-bottom: 0 !important;
  flex-wrap: wrap;
  padding-left: 0 !important;
  width: auto !important;
}

#nfc-wrap .pill,
#nfc-wrap .mob-nfc-pill,
#nfc-wrap .nfc-pill {
  font-size: 11px !important;
  font-weight: 600 !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  background: rgba(0, 0, 0, 0.045) !important;
  color: var(--mt-text-secondary) !important;
  border: none !important;
}

#nfc-wrap .pill.purple,
#nfc-wrap .mob-nfc-pill-id,
#nfc-wrap .mob-nfc-pill-chip {
  background: rgba(124, 92, 246, 0.1) !important;
  color: var(--mt-purple-deep) !important;
  border: none !important;
}

#nfc-wrap .pill.amber,
#nfc-wrap .mob-nfc-pill-scan {
  background: rgba(230, 160, 40, 0.12) !important;
  color: #A8721A !important;
  border: none !important;
}

#nfc-wrap .mob-nfc-batch-btns,
#nfc-wrap .nfc-batch-actions {
  display: flex;
  gap: 8px;
  margin-left: auto;
  flex-shrink: 0;
  width: auto !important;
  align-self: flex-start;
}

#nfc-wrap .mob-nfc-batch-btn {
  display: flex !important;
  align-items: center;
  gap: 6px;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  padding: 9px 14px !important;
  border-radius: 999px !important;
  cursor: pointer;
  border: none;
  white-space: nowrap;
  flex: 0 0 auto !important;
  font-family: inherit !important;
}

#nfc-wrap .mob-nfc-batch-btn:not(.mob-nfc-batch-btn-stat) {
  background: rgba(124, 92, 246, 0.1) !important;
  color: var(--mt-purple-deep) !important;
  border: none !important;
}

#nfc-wrap .mob-nfc-batch-btn-stat {
  background: rgba(255, 255, 255, 0.6) !important;
  border: 1px solid var(--mt-divider) !important;
  color: var(--mt-text-primary) !important;
}

#deskNfcGroupSlot .desk-nfc-group-body,
#deskNfcGroupSlot [id^="deskNfcBody_"] {
  display: block !important;
}

#deskNfcGroupPills {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}

#deskNfcGroupPills .pill,
#deskNfcGroupPills .mob-nfc-pill {
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.045);
  color: var(--mt-text-secondary);
}

#deskNfcGroupPills .pill.purple,
#deskNfcGroupPills .mob-nfc-pill-id {
  background: rgba(124, 92, 246, 0.1);
  color: var(--mt-purple-deep);
}

#deskNfcGroupPills .pill.amber,
#deskNfcGroupPills .mob-nfc-pill-scan {
  background: rgba(230, 160, 40, 0.12);
  color: #A8721A;
}

.mt-nfc-section-desc {
  font-size: 12.5px;
  color: var(--mt-text-secondary);
  margin: 0 0 12px;
  line-height: 1.45;
}

.mt-nfc-mode-toggle,
.mode-toggle {
  display: flex;
  gap: 6px;
  width: 100%;
  background: transparent;
  border-radius: 0;
  padding: 0;
}

.mt-nfc-mode-btn,
.mode-toggle-btn {
  flex: 1;
  text-align: center;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  padding: 9px !important;
  border-radius: 11px !important;
  border: 1.5px solid var(--mt-divider) !important;
  background: rgba(255, 255, 255, 0.5) !important;
  color: var(--mt-text-secondary) !important;
  cursor: pointer;
  font-family: inherit;
  white-space: nowrap;
}

.mt-nfc-mode-btn.active,
.mode-toggle-btn.active {
  border-color: var(--mt-purple) !important;
  background: linear-gradient(135deg, rgba(124, 92, 246, 0.13), rgba(124, 92, 246, 0.04)) !important;
  color: var(--mt-purple-deep) !important;
}

.mt-nfc-qr-controls,
.qr-controls {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
  max-width: 420px;
}

.mt-nfc-qr-controls .qr-page-select,
.mt-nfc-qr-controls .nfcv-ext-input,
.qr-controls .field-select,
.qr-controls .qr-page-select,
.qr-controls .nfcv-ext-input {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  padding: 9px 12px;
  border-radius: 11px;
  border: 1px solid var(--mt-divider);
  background: rgba(255, 255, 255, 0.55);
  color: var(--mt-text-primary);
  font-family: inherit;
}

.mt-nfc-btn-save,
.btn-update {
  flex-shrink: 0;
  padding: 9px 16px !important;
  border-radius: 11px !important;
  background: rgba(124, 92, 246, 0.1) !important;
  color: var(--mt-purple-deep) !important;
  border: none !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  cursor: pointer;
  font-family: inherit;
  white-space: nowrap;
}

.mt-nfc-unid-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 4px;
}

.mt-nfc-assigned-head-row {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin: 0 0 14px !important;
  padding: 0 !important;
}

.mt-nfc-assigned-title {
  font-size: 14px;
  font-weight: 700;
  color: var(--mt-text-primary);
}

.mt-nfc-groups-slot .nfc-groups-bar,
.mt-nfc-filter-tabs {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0 !important;
}

.mt-nfc-chip-card {
  border: 1px solid var(--mt-divider);
  border-radius: 16px;
  padding: 16px 18px;
  margin-bottom: 12px;
  background: rgba(255, 255, 255, 0.4);
}

.mt-nfc-chip-card:last-child {
  margin-bottom: 0;
}

.mt-nfc-chip-head {
  display: flex;
  align-items: center;
  gap: 10px;
}

.mt-nfc-chip-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  flex-shrink: 0;
  background: linear-gradient(150deg, var(--mt-purple-soft, #B8A4FF), var(--mt-purple-deep));
  color: #fff;
  font-weight: 700;
  font-size: 11.5px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.mt-nfc-chip-head-main {
  flex: 1;
  min-width: 0;
}

.mt-nfc-chip-head-name {
  font-size: 13.5px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  color: var(--mt-text-primary);
}

.mt-nfc-chip-meta-line {
  font-size: 12px;
  color: var(--mt-text-secondary);
  margin-top: 2px;
}

.mt-nfc-chip-field-row {
  margin-top: 14px;
}

.mt-nfc-field-label {
  font-size: 11.5px;
  font-weight: 600;
  color: var(--mt-text-secondary);
  margin-bottom: 6px;
  display: block;
}

.mt-nfc-app-row {
  display: flex;
  gap: 8px;
  align-items: center;
}

.mt-nfc-app-row .nfc-chip-app-select {
  flex: 1;
  min-width: 0;
}

.mt-nfc-group-note {
  font-size: 11px;
  color: var(--mt-text-tertiary);
  margin-top: 10px;
  line-height: 1.4;
}

.mt-nfc-modal-card--wide .nfc-chip-group-select {
  font-size: 10.5px;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.05);
  color: var(--mt-text-secondary);
  border: none;
  max-width: 140px;
}

.mt-nfc-saved-msg {
  font-size: 11px;
  color: var(--mt-purple-deep);
  min-width: 48px;
  opacity: 0;
  transition: opacity 0.15s;
}

#deskNfcGroupSlot [id^="deskNfcLoading_"] {
  font-size: 13px;
  color: var(--mt-text-tertiary);
  padding: 6px 0;
}

#nfc-wrap .nfcv-locked-wrapper .nfcv-lock-overlay a {
  background: linear-gradient(135deg, var(--mt-purple), var(--mt-purple-deep)) !important;
  border-radius: 999px !important;
}

/* ── Modali NFC (stats + gestisci gruppo) ── */
.mt-nfc-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(20, 18, 30, 0.45);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 20000;
  padding: 24px;
}

.mt-nfc-modal-overlay.open {
  display: flex;
}

.mt-nfc-modal-card {
  background: var(--mt-glass-bg-strong);
  backdrop-filter: blur(30px) saturate(180%);
  -webkit-backdrop-filter: blur(30px) saturate(180%);
  border: 1px solid var(--mt-glass-border);
  border-radius: 24px;
  box-shadow: var(--mt-glass-shadow);
  width: 100%;
  max-width: 460px;
  max-height: 88vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  position: relative;
}

.mt-nfc-modal-card--wide {
  max-width: 780px;
}

.mt-nfc-modal-card--group {
  max-width: min(1040px, 94vw);
  max-height: 92vh;
  background: #ffffff;
  border: 1px solid rgba(124, 92, 246, 0.2);
  box-shadow: 0 28px 90px rgba(24, 16, 48, 0.28);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

#deskNfcGroupOverlay .mt-nfc-modal-sticky-bar {
  background: #fff;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

#deskNfcGroupOverlay .mt-nfc-modal-body {
  padding: 20px 32px 32px;
  color: #1a1625;
}

#deskNfcGroupOverlay .mt-nfc-modal-title {
  font-size: 22px;
  font-weight: 800;
  color: #1a1625;
  margin-bottom: 2px;
}

#deskNfcGroupOverlay .mt-nfc-group-batch-name {
  font-size: 15px;
  font-weight: 600;
  color: #4a4458;
  margin-bottom: 10px;
}

#deskNfcGroupOverlay .mt-nfc-group-pills {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin: 0 0 20px;
}

#deskNfcGroupOverlay .mt-nfc-group-toolbar {
  background: linear-gradient(160deg, #f6f1ff 0%, #faf8ff 100%);
  border: 1px solid rgba(124, 92, 246, 0.22);
  border-radius: 18px;
  padding: 16px 18px;
  margin-bottom: 22px;
}

#deskNfcGroupOverlay .mt-nfc-group-toolbar-head {
  margin-bottom: 10px;
}

#deskNfcGroupOverlay .mt-nfc-group-toolbar-label {
  font-size: 13px;
  font-weight: 800;
  color: #1a1625;
  letter-spacing: 0.01em;
}

#deskNfcGroupOverlay .mt-nfc-group-groups-row,
#deskNfcGroupOverlay .mt-nfc-group-groups-row .nfc-groups-bar {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0;
}

#deskNfcGroupOverlay .mt-nfc-group-link-slot {
  margin-top: 12px;
}

#deskNfcGroupOverlay .mt-nfc-group-link-slot:empty {
  display: none;
}

#deskNfcGroupOverlay .nfc-batch-card-quicklink,
#deskNfcGroupOverlay .nfc-batch-card-quicklink + .section-divider {
  display: none !important;
}

.mt-nfc-modal-sticky-bar {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding: 14px 16px;
  background: var(--mt-glass-bg-strong);
  backdrop-filter: blur(20px) saturate(180%);
  border-bottom: 1px solid var(--mt-divider);
  border-radius: 24px 24px 0 0;
  flex-shrink: 0;
}

.mt-nfc-modal-close {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--mt-text-secondary);
  border: none;
  flex-shrink: 0;
}

.mt-nfc-modal-close:hover {
  background: rgba(0, 0, 0, 0.1);
}

.mt-nfc-modal-body {
  padding: 24px 28px 28px;
  overflow-y: auto;
  flex: 1;
}

.mt-nfc-modal-title {
  font-size: 19px;
  font-weight: 700;
  margin-bottom: 4px;
  color: var(--mt-text-primary);
}

.mt-nfc-modal-sub {
  font-size: 13px;
  color: var(--mt-text-secondary);
  margin-bottom: 20px;
  word-break: break-all;
}

.mt-nfc-stat-grid-modal {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-bottom: 8px;
}

.mt-nfc-stat-tile-modal {
  text-align: center;
  background: rgba(124, 92, 246, 0.05);
  border-radius: 14px;
  padding: 14px 8px;
}

.mt-nfc-stat-tile-modal .v {
  font-size: 21px;
  font-weight: 700;
  color: var(--mt-text-primary);
}

.mt-nfc-stat-tile-modal .l {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--mt-text-tertiary);
  margin-top: 3px;
}

.mt-nfc-modal-actions {
  display: flex;
  gap: 10px;
  justify-content: stretch;
  margin-top: 22px;
}

.mt-nfc-btn-modal {
  padding: 11px 18px;
  border-radius: 999px;
  font-size: 13.5px;
  font-weight: 600;
  cursor: pointer;
  border: none;
  font-family: inherit;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.mt-nfc-btn-modal.primary {
  background: linear-gradient(135deg, var(--mt-purple), var(--mt-purple-deep));
  color: #fff;
  box-shadow: 0 8px 20px rgba(124, 92, 246, 0.3);
}

/* Group modal content */
.mt-nfc-modal-card--wide .mt-nfc-section-label {
  font-size: 12px;
  font-weight: 700;
  color: var(--mt-text-primary);
  margin-bottom: 6px;
}

.mt-nfc-modal-card--wide .mt-nfc-section-card-accent {
  background: linear-gradient(135deg, rgba(124, 92, 246, 0.07), rgba(124, 92, 246, 0.015));
  border: 1px solid rgba(124, 92, 246, 0.14);
  border-radius: 18px;
  padding: 18px 20px;
}

.mt-nfc-modal-card--wide .mt-nfc-section-divider {
  border-top: 1px solid var(--mt-divider);
  margin: 24px 0;
}

.mt-nfc-modal-card--wide .mob-nfc-chip-item,
.mt-nfc-modal-card--wide .mob-nfc-unid-group {
  border: 1px solid var(--mt-divider);
  border-radius: 16px;
  padding: 16px 18px;
  margin-bottom: 12px;
  background: rgba(255, 255, 255, 0.4);
}

.mt-nfc-modal-card--wide .mob-nfc-chip-name,
.mt-nfc-modal-card--wide .mob-nfc-unid-title {
  font-size: 13.5px;
  font-weight: 700;
  color: var(--mt-text-primary);
  font-family: inherit;
}

.mt-nfc-modal-card--wide .mob-nfc-chip-sub,
.mt-nfc-modal-card--wide .mob-nfc-unid-sub {
  font-size: 12px;
  color: var(--mt-text-secondary);
}

.mt-nfc-modal-card--wide .mob-nfc-assigned-head {
  font-size: 14px;
  font-weight: 700;
  color: var(--mt-text-primary);
  text-transform: none;
  letter-spacing: normal;
  margin: 0 0 12px;
  padding: 0;
}

.mt-nfc-modal-card--wide .mob-nfc-chip-save-btn,
.mt-nfc-modal-card--wide .nfc-save-btn {
  background: rgba(124, 92, 246, 0.1) !important;
  color: var(--mt-purple-deep) !important;
  border-radius: 11px !important;
  font-weight: 600 !important;
}

.mt-nfc-modal-card--wide .mob-nfc-qr-mode,
.mt-nfc-modal-card--wide .nfc-mode-btn {
  border: 1.5px solid var(--mt-divider) !important;
  background: rgba(255, 255, 255, 0.5) !important;
  color: var(--mt-text-secondary) !important;
  border-radius: 11px !important;
  padding: 9px !important;
  font-size: 12.5px !important;
}

.mt-nfc-modal-card--wide .mob-nfc-qr-mode.active,
.mt-nfc-modal-card--wide .nfc-mode-btn.active {
  border-color: var(--mt-purple) !important;
  background: linear-gradient(135deg, rgba(124, 92, 246, 0.13), rgba(124, 92, 246, 0.04)) !important;
  color: var(--mt-purple-deep) !important;
}

.mt-nfc-modal-card--wide .mob-nfc-toggle input:checked + .mob-nfc-toggle-slider {
  background: linear-gradient(135deg, var(--mt-purple), var(--mt-purple-deep));
}

.mt-nfc-modal-card--wide .nfc-groups-bar .nfc-group-pill {
  border: 1.5px solid var(--mt-divider);
  background: rgba(255, 255, 255, 0.5);
  color: var(--mt-text-secondary);
  border-radius: 999px;
  padding: 7px 13px;
  font-size: 12px;
  font-weight: 600;
}

.mt-nfc-modal-card--wide .nfc-groups-bar .nfc-group-pill.active {
  border-color: var(--mt-purple);
  background: linear-gradient(135deg, rgba(124, 92, 246, 0.14), rgba(124, 92, 246, 0.05));
  color: var(--mt-purple-deep);
}

.mt-nfc-modal-card--wide .nfc-group-link-panel {
  background: rgba(124, 92, 246, 0.04);
  border: 1px solid rgba(124, 92, 246, 0.12);
  border-radius: 14px;
  padding: 14px;
}

.mt-nfc-modal-card--wide .qr-page-select,
.mt-nfc-modal-card--wide .nfcv-ext-input,
.mt-nfc-modal-card--wide .mob-nfc-chip-url-input {
  border: 1px solid var(--mt-divider);
  background: rgba(255, 255, 255, 0.55);
  border-radius: 11px;
  color: var(--mt-text-primary);
}

.mt-nfc-modal-card--wide .mob-nfc-chip-item,
.mt-nfc-modal-card--wide .mob-nfc-unid-group {
  background: rgba(255, 255, 255, 0.4);
  border-color: var(--mt-divider);
}

.mt-nfc-modal-card--wide .mob-nfc-chip-contact-name {
  color: var(--mt-text-primary);
  font-weight: 600;
}

/* ── Gestisci gruppo modal — mockup HTML ── */
#deskNfcGroupOverlay .batch-pills {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}

#deskNfcGroupOverlay .batch-pills .pill,
#deskNfcGroupOverlay .batch-pills .mob-nfc-pill {
  font-size: 11.5px;
  font-weight: 700;
  padding: 5px 11px;
  border-radius: 999px;
  background: #ede9f8;
  color: #4a4458;
}

#deskNfcGroupOverlay .batch-pills .pill.purple,
#deskNfcGroupOverlay .batch-pills .mob-nfc-pill-id {
  background: rgba(124, 92, 246, 0.14);
  color: #5b3fd4;
}

#deskNfcGroupOverlay .batch-pills .pill.amber,
#deskNfcGroupOverlay .batch-pills .mob-nfc-pill-scan {
  background: rgba(230, 160, 40, 0.16);
  color: #9a5f10;
}

#deskNfcGroupOverlay .section-card-accent,
#deskNfcGroupOverlay .mt-nfc-section-card-accent {
  background: linear-gradient(160deg, #f6f1ff 0%, #faf8ff 100%);
  border: 1px solid rgba(124, 92, 246, 0.22);
  border-radius: 18px;
  padding: 18px 20px;
}

#deskNfcGroupOverlay .section-divider,
#deskNfcGroupOverlay .mt-nfc-section-divider {
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  margin: 24px 0;
}

#deskNfcGroupOverlay .modal-section-label,
#deskNfcGroupOverlay .mt-nfc-section-label {
  font-size: 14px;
  font-weight: 800;
  color: #1a1625;
  margin-bottom: 6px;
}

#deskNfcGroupOverlay .mt-nfc-section-desc {
  font-size: 13px;
  color: #5c5668;
  margin: 0 0 12px;
  line-height: 1.5;
}

#deskNfcGroupOverlay .mt-nfc-unid-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

#deskNfcGroupOverlay .section-head,
#deskNfcGroupOverlay .mt-nfc-assigned-head-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin: 0 0 14px;
}

#deskNfcGroupOverlay .section-title,
#deskNfcGroupOverlay .mt-nfc-assigned-title {
  font-size: 15px;
  font-weight: 800;
  color: #1a1625;
}

#deskNfcGroupOverlay .filter-tabs,
#deskNfcGroupOverlay .mt-nfc-groups-slot .nfc-groups-bar {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0;
}

#deskNfcGroupOverlay .filter-tab {
  font-size: 12.5px;
  font-weight: 700;
  padding: 8px 14px;
  border-radius: 999px;
  background: #fff;
  border: 1.5px solid rgba(0, 0, 0, 0.1);
  color: #5c5668;
  cursor: pointer;
  white-space: nowrap;
  font-family: inherit;
}

#deskNfcGroupOverlay .filter-tab.active {
  background: linear-gradient(135deg, rgba(124, 92, 246, 0.16), rgba(124, 92, 246, 0.08));
  color: #5b3fd4;
  border-color: rgba(124, 92, 246, 0.35);
}

#deskNfcGroupOverlay .filter-tab:hover {
  border-color: rgba(124, 92, 246, 0.25);
}

#deskNfcGroupOverlay .group-note,
#deskNfcGroupOverlay .mt-nfc-group-note {
  font-size: 12px;
  color: #6b6578;
  margin-top: 10px;
  line-height: 1.45;
}

#deskNfcGroupOverlay .mt-nfc-toggle {
  position: relative;
  width: 38px;
  height: 21px;
  flex-shrink: 0;
  display: inline-block;
}

#deskNfcGroupOverlay .mt-nfc-toggle input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

#deskNfcGroupOverlay .mt-nfc-toggle-slider {
  position: absolute;
  cursor: pointer;
  inset: 0;
  background: rgba(0, 0, 0, 0.13);
  border-radius: 999px;
  transition: background 0.15s;
}

#deskNfcGroupOverlay .mt-nfc-toggle-slider::before {
  content: '';
  position: absolute;
  height: 17px;
  width: 17px;
  left: 2px;
  top: 2px;
  background: #fff;
  border-radius: 50%;
  transition: transform 0.15s;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
}

#deskNfcGroupOverlay .mt-nfc-toggle input:checked + .mt-nfc-toggle-slider {
  background: linear-gradient(135deg, var(--mt-purple), var(--mt-purple-deep));
}

#deskNfcGroupOverlay .mt-nfc-toggle input:checked + .mt-nfc-toggle-slider::before {
  transform: translateX(17px);
}

#deskNfcGroupOverlay .chip-card,
#deskNfcGroupOverlay .mt-nfc-chip-card {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 16px;
  padding: 16px 18px;
  margin-bottom: 12px;
  background: #fff;
  box-shadow: 0 2px 8px rgba(20, 16, 40, 0.04);
}

#deskNfcGroupOverlay .chip-card:last-child {
  margin-bottom: 0;
}

#deskNfcGroupOverlay .chip-head,
#deskNfcGroupOverlay .mt-nfc-chip-head {
  display: flex;
  align-items: center;
  gap: 10px;
}

#deskNfcGroupOverlay .chip-avatar,
#deskNfcGroupOverlay .mt-nfc-chip-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  flex-shrink: 0;
  background: linear-gradient(150deg, var(--mt-purple-soft, #B8A4FF), var(--mt-purple-deep));
  color: #fff;
  font-weight: 700;
  font-size: 11.5px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#deskNfcGroupOverlay .chip-head-name,
#deskNfcGroupOverlay .mt-nfc-chip-head-name {
  font-size: 14px;
  font-weight: 800;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  color: #1a1625;
  font-family: inherit;
}

#deskNfcGroupOverlay .chip-meta-line,
#deskNfcGroupOverlay .mt-nfc-chip-meta-line {
  font-size: 12.5px;
  color: #5c5668;
  margin-top: 3px;
}

#deskNfcGroupOverlay .chip-field-row,
#deskNfcGroupOverlay .mt-nfc-chip-field-row {
  margin-top: 14px;
}

#deskNfcGroupOverlay .field-label,
#deskNfcGroupOverlay .mt-nfc-field-label {
  font-size: 12px;
  font-weight: 700;
  color: #4a4458;
  margin-bottom: 6px;
  display: block;
}

#deskNfcGroupOverlay .app-row,
#deskNfcGroupOverlay .mt-nfc-app-row {
  display: flex;
  gap: 8px;
  align-items: center;
}

#deskNfcGroupOverlay .app-row .field-select,
#deskNfcGroupOverlay .mt-nfc-app-row .nfc-chip-app-select {
  flex: 1;
  min-width: 0;
}

#deskNfcGroupOverlay .nfc-chip-group-select {
  font-size: 11px;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 999px;
  background: #ede9f8;
  color: #5b3fd4;
  border: 1px solid rgba(124, 92, 246, 0.2);
  max-width: 160px;
  cursor: pointer;
  font-family: inherit;
}

#deskNfcGroupOverlay .mt-nfc-loading {
  font-size: 13px;
  color: #6b6578;
  padding: 8px 0 16px;
}

#deskNfcGroupOverlay .nfc-group-link-panel {
  background: #fff;
  border: 1px solid rgba(124, 92, 246, 0.18);
  border-radius: 14px;
  padding: 14px 16px;
  margin-top: 10px;
}

#deskNfcGroupOverlay .nfc-group-link-panel .mob-nfc-chip-url-label {
  font-size: 12px;
  font-weight: 700;
  color: #1a1625;
  margin-bottom: 8px;
}

#deskNfcGroupOverlay .nfc-group-manage {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 10px;
  padding: 10px 12px;
  background: #fff;
  border: 1px solid rgba(124, 92, 246, 0.15);
  border-radius: 12px;
}

#deskNfcGroupOverlay .nfc-group-manage-name {
  font-size: 13px;
  color: #4a4458;
  margin-right: auto;
}

#deskNfcGroupOverlay .nfc-group-manage-name strong {
  color: #1a1625;
}

#deskNfcGroupOverlay .nfc-group-manage-btn {
  font-size: 12px;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(124, 92, 246, 0.25);
  background: #f3eeff;
  color: #5b3fd4;
  cursor: pointer;
  font-family: inherit;
}

#deskNfcGroupOverlay .nfc-group-manage-btn--danger {
  background: #fff5f5;
  border-color: rgba(220, 60, 60, 0.25);
  color: #c53030;
}

/* Override #view-nfc green .mob-nfc-qr-mode inside group modal */
#deskNfcGroupOverlay .mode-toggle,
#deskNfcGroupOverlay .mt-nfc-mode-toggle {
  display: flex;
  gap: 6px;
  width: 100%;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}

#deskNfcGroupOverlay .mode-toggle-btn,
#deskNfcGroupOverlay .mt-nfc-mode-btn,
#deskNfcGroupOverlay .mob-nfc-qr-mode {
  flex: 1 !important;
  text-align: center !important;
  padding: 10px !important;
  border-radius: 11px !important;
  border: 1.5px solid rgba(0, 0, 0, 0.12) !important;
  background: #fff !important;
  color: #5c5668 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  font-family: inherit !important;
  white-space: nowrap !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  line-height: 1.2 !important;
}

#deskNfcGroupOverlay .mode-toggle-btn.active,
#deskNfcGroupOverlay .mt-nfc-mode-btn.active,
#deskNfcGroupOverlay .mob-nfc-qr-mode.active {
  border-color: #7c5cf6 !important;
  background: linear-gradient(135deg, rgba(124, 92, 246, 0.14), rgba(124, 92, 246, 0.06)) !important;
  color: #5b3fd4 !important;
}

#deskNfcGroupOverlay .qr-controls,
#deskNfcGroupOverlay .mt-nfc-qr-controls {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
  max-width: 100%;
}

#deskNfcGroupOverlay .field-select,
#deskNfcGroupOverlay .qr-page-select,
#deskNfcGroupOverlay .nfcv-ext-input {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  padding: 10px 12px;
  border-radius: 11px;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  background: #fff !important;
  color: #1a1625 !important;
  font-family: inherit;
}

#deskNfcGroupOverlay .btn-update,
#deskNfcGroupOverlay .mt-nfc-btn-save,
#deskNfcGroupOverlay .mob-nfc-chip-save-btn {
  flex-shrink: 0;
  padding: 10px 18px !important;
  border-radius: 11px !important;
  background: rgba(124, 92, 246, 0.12) !important;
  color: #5b3fd4 !important;
  border: 1px solid rgba(124, 92, 246, 0.2) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  cursor: pointer;
  font-family: inherit;
  white-space: nowrap;
}

#deskNfcGroupOverlay .section-card-accent,
#deskNfcGroupOverlay .mt-nfc-section-card-accent {
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

#deskNfcGroupOverlay .mt-nfc-loading {
  font-size: 13px;
  color: var(--mt-text-secondary);
  padding: 8px 0 16px;
}

/* Stats overlay — purple glass (desktop + mobile) */
#mobNfcStatsOverlay.stats-open {
  position: fixed !important;
  inset: 0 !important;
  z-index: 20000 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
  background: rgba(20, 18, 30, 0.45) !important;
  backdrop-filter: blur(3px) !important;
  -webkit-backdrop-filter: blur(3px) !important;
}

#mobNfcStatsOverlay.stats-open .mt-nfc-modal-card,
#mobNfcStatsOverlay.stats-open .mob-nfc-stats-modal {
  background: var(--mt-glass-bg-strong) !important;
  backdrop-filter: blur(30px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(30px) saturate(180%) !important;
  border: 1px solid var(--mt-glass-border) !important;
  border-radius: 24px !important;
  box-shadow: var(--mt-glass-shadow) !important;
  padding: 0 !important;
  max-width: 460px !important;
  width: 100% !important;
  max-height: 88vh !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}

#mobNfcStatsOverlay .mt-nfc-modal-close,
#mobNfcStatsOverlay .modal-close {
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  background: rgba(0, 0, 0, 0.05) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--mt-text-secondary) !important;
  border: none !important;
  padding: 0 !important;
  font-size: inherit !important;
  line-height: 1 !important;
}

#mobNfcStatsOverlay .mt-nfc-modal-close:hover,
#mobNfcStatsOverlay .modal-close:hover {
  background: rgba(0, 0, 0, 0.1) !important;
  color: var(--mt-text-secondary) !important;
}

#mobNfcStatsOverlay .eyebrow,
#mobNfcStatsOverlay .mob-nfc-stats-modal-label {
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--mt-text-tertiary) !important;
  margin-bottom: 4px !important;
}

#mobNfcStatsOverlay .mob-nfc-stats-kpi,
#mobNfcStatsOverlay .stat-tile-modal {
  background: rgba(124, 92, 246, 0.05) !important;
  border-radius: 14px !important;
}

#mobNfcStatsOverlay .mob-nfc-stats-kpi-val,
#mobNfcStatsOverlay .stat-tile-modal .v {
  font-size: 21px !important;
  font-weight: 700 !important;
  color: var(--mt-text-primary) !important;
  font-family: inherit !important;
}

#mobNfcStatsOverlay .mob-nfc-stats-kpi-lbl,
#mobNfcStatsOverlay .stat-tile-modal .l {
  color: var(--mt-text-tertiary) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  margin-top: 3px !important;
}

#mobNfcStatsOverlay .mob-nfc-stats-modal-title,
#mobNfcStatsOverlay .modal-title {
  font-size: 19px !important;
  font-weight: 700 !important;
  color: var(--mt-text-primary) !important;
  font-family: inherit !important;
}

#mobNfcStatsOverlay .mob-nfc-stats-url,
#mobNfcStatsOverlay .modal-sub {
  color: var(--mt-text-secondary) !important;
  font-size: 13px !important;
  margin-bottom: 20px !important;
}

#mobNfcStatsOverlay .mob-nfc-stats-manage-btn,
#mobNfcStatsOverlay .btn-modal.primary {
  background: linear-gradient(135deg, var(--mt-purple), var(--mt-purple-deep)) !important;
  border-radius: 999px !important;
  font-family: inherit !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  box-shadow: 0 8px 20px rgba(124, 92, 246, 0.3) !important;
  color: #fff !important;
  border: none !important;
  width: auto !important;
  padding: 11px 18px !important;
}

#nfc-wrap [id^="deskNfcBody_"] {
  display: none !important;
}

@media (max-width: 1080px) {
  #nfc-wrap .mt-dash-grid { grid-template-columns: repeat(2, 1fr); }
  #nfc-wrap .mt-span-3,
  #nfc-wrap .mt-span-4 { grid-column: span 2; }
}

@media (max-width: 900px) {
  #nfc-wrap { display: none !important; }
}

@media (min-width: 901px) {
  .desk-nfc-hero { display: none !important; }
  #deskNfcGroupOverlay.open,
  #deskNfcHelpOverlay.open,
  #mobNfcStatsOverlay.stats-open { display: flex !important; }
}
