.iconcly-nfc { display:inline-block; }

.iconcly-nfc-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.iconcly-nfc-btn:hover{ transform: translateY(-1px); }
.iconcly-nfc-btn:active{ transform: translateY(0); }
.iconcly-nfc-btn-text{ font-weight:800; letter-spacing:.2px; }

.iconcly-nfc-modal{ position:fixed; inset:0; z-index:99999; display:none; }
.iconcly-nfc-modal.is-open{ display:block; }

.iconcly-nfc-backdrop{
  position:absolute; inset:0;
  background: rgba(2,6,23,.55);
  backdrop-filter: blur(6px);
}

.iconcly-nfc-sheet{
  position:absolute;
  left:50%; top:50%;
  transform: translate(-50%, -50%);
  width:min(520px, calc(100% - 24px));
  border-radius:20px;
  background: rgba(255,255,255,.96);
  border:1px solid rgba(15,23,42,.12);
  box-shadow: 0 30px 80px rgba(2,6,23,.30);
  padding:18px 18px 16px;
  outline:none;
}

/* Close button (SVG background) */
.iconcly-nfc-x{
  position:absolute;
  right:14px;
  top:12px;
  width:46px !important;
  height:46px !important;
  border-radius:14px !important;
  border:1px solid rgba(15,23,42,.12) !important;
  background:#fff !important;
  cursor:pointer;
  display:grid !important;
  place-items:center !important;
  box-shadow: 0 10px 26px rgba(2,6,23,.10) !important;

  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:18px 18px !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M18 6L6 18' stroke='%230b1220' stroke-width='2.5' stroke-linecap='round'/%3E%3Cpath d='M6 6l12 12' stroke='%230b1220' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E") !important;

  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
}
.iconcly-nfc-x::before, .iconcly-nfc-x::after{ content:'' !important; }
.iconcly-nfc-x:hover{
  border-color: rgba(15,23,42,.18) !important;
  box-shadow: 0 14px 34px rgba(2,6,23,.14) !important;
}
.iconcly-nfc-x:active{ transform: translateY(1px) !important; }

.iconcly-nfc-header{ display:flex; align-items:center; gap:14px; padding:10px 6px 6px; }
.iconcly-nfc-avatar{
  width:58px; height:58px; border-radius:999px; overflow:hidden;
  border:1px solid rgba(15,23,42,.12); background:#fff; flex:0 0 auto;
}
.iconcly-nfc-avatar img{ width:100%; height:100%; object-fit:cover; display:block; }
.iconcly-nfc-avatar-fallback{
  width:100%; height:100%;
  background: radial-gradient(circle at 30% 30%, rgba(99,102,241,.18), rgba(14,165,233,.12));
}
.iconcly-nfc-name{ font-size:18px; font-weight:900; color:#0b1220; }
.iconcly-nfc-sub{ margin-top:2px; font-weight:800; color: rgba(2,6,23,.72); }
.iconcly-nfc-meta{ margin-top:2px; font-size:13px; color: rgba(2,6,23,.62); }

.iconcly-nfc-info{
  margin-top:10px; padding:12px;
  border-radius:16px;
  border:1px solid rgba(15,23,42,.10);
  background: rgba(248,250,252,.8);
}
.iconcly-nfc-info-row{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 4px; }
.iconcly-nfc-pill{
  font-size:12px; font-weight:900; color: rgba(2,6,23,.65);
  background: rgba(255,255,255,.85);
  border:1px solid rgba(15,23,42,.10);
  padding:6px 10px;
  border-radius:999px;
}
.iconcly-nfc-link{ font-weight:900; color:#0b1220; }
.iconcly-nfc-info .iconcly-nfc-link{ text-decoration: underline !important; text-underline-offset: 3px !important; }
.iconcly-nfc-info .iconcly-nfc-link:hover{ text-decoration: underline !important; color:#0b1220 !important; }
.iconcly-nfc-text{ font-weight:700; color: rgba(2,6,23,.78); text-align:right; }

.iconcly-nfc-links{ display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; padding: 2px 4px; }
.iconcly-nfc-quick, .iconcly-nfc-quick:hover{ text-decoration:none !important; color:inherit !important; }
.iconcly-nfc-quick{
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.10);
  background:#fff;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.iconcly-nfc-quick:hover{ transform: translateY(-1px); box-shadow: 0 16px 36px rgba(2,6,23,.12); border-color: rgba(15,23,42,.18); }
.iconcly-nfc-quick-ic{
  width:26px; height:26px;
  border-radius:9px;
  display:grid; place-items:center;
  overflow:hidden;
  background: rgba(148,163,184,.12);
  border:1px solid rgba(15,23,42,.08);
}
.iconcly-nfc-quick-ic img{ width:100%; height:100%; object-fit:cover; display:block; }
.iconcly-nfc-quick-ic-fallback{ width:12px; height:12px; border-radius:999px; background: rgba(99,102,241,.7); }
.iconcly-nfc-quick-t{ font-weight:900; color:#0b1220; font-size:13px; }

.iconcly-nfc-cta{ margin-top:14px; padding-top:12px; border-top:1px dashed rgba(15,23,42,.12); }
.iconcly-nfc-save, .iconcly-nfc-save:hover, .iconcly-nfc-save:visited, .iconcly-nfc-save:active{ text-decoration:none !important; color:#fff !important; }
.iconcly-nfc-save{
  display:flex; align-items:center; justify-content:center; gap:10px;
  width:100%;
  padding:14px 14px;
  border-radius:16px;
  background: linear-gradient(135deg, rgba(99,102,241,.95), rgba(14,165,233,.95));
  font-weight:900;
  letter-spacing:.2px;
  box-shadow: 0 18px 45px rgba(2,6,23,.18);
}
.iconcly-nfc-save-ic{
  width:20px !important; height:20px !important;
  border-radius:0 !important;
  background: transparent !important;
  box-shadow: none !important;
  flex:0 0 auto;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:20px 20px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9 11a4 4 0 1 0 0-8 4 4 0 0 0 0 8Z' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20 8v6' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23 11h-6' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.iconcly-nfc-note{ margin-top:8px; font-size:12px; color: rgba(2,6,23,.58); text-align:center; }

html.iconcly-nfc-lock{ overflow:hidden; }
