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

.iconcly-nfc-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:14px 18px;
  border-radius:999px;
  border:1px solid rgba(15,23,42,.15);
  background: rgba(255,255,255,.88);
  backdrop-filter: blur(10px);
  box-shadow: 0 18px 45px rgba(2,6,23,.10);
  cursor:pointer;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.iconcly-nfc-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 22px 55px rgba(2,6,23,.14);
  border-color: rgba(15,23,42,.25);
}
.iconcly-nfc-btn:active{ transform: translateY(0); }

.iconcly-nfc-btn-dot{
  width:10px; height:10px;
  border-radius:999px;
  background: radial-gradient(circle at 30% 30%, rgba(99,102,241,.95), rgba(14,165,233,.9));
  box-shadow: 0 0 0 6px rgba(99,102,241,.10);
}
.iconcly-nfc-btn-text{
  font-weight:700;
  letter-spacing:.2px;
  color:#0b1220;
}

.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;
}

.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;

  /* Icon */
  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;

  /* Hide the × text cleanly */
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-shadow: none !important;
}
.iconcly-nfc-x:hover{
  background:#fff !important;
  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:800;
  color:#0b1220;
}
.iconcly-nfc-sub{
  margin-top:2px;
  font-weight:700;
  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:800;
  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:800;
  color:#0b1220;
  text-decoration:none;
}
.iconcly-nfc-link:hover{ text-decoration:underline; }
.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{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.10);
  background:#fff;
  text-decoration:none;
  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:800;
  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{
  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));
  color:#fff;
  text-decoration:none;
  font-weight:900;
  letter-spacing:.2px;
  box-shadow: 0 18px 45px rgba(2,6,23,.18);
}
.iconcly-nfc-save:hover{ filter: brightness(1.02); }

.iconcly-nfc-save-ic{
  width:18px; height:18px;
  border-radius:6px;
  background: rgba(255,255,255,.22);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.28);
}
.iconcly-nfc-note{
  margin-top:8px;
  font-size:12px;
  color: rgba(2,6,23,.58);
  text-align:center;
}

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


/* ===== Styling Adjustments (v1.0.3) ===== */

/* Only underline phone/email (the .iconcly-nfc-link anchors). Keep underline even on hover. */
.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;
}

/* Do NOT underline quick links */
.iconcly-nfc-quick,
.iconcly-nfc-quick:hover{
  text-decoration: none !important;
  color: inherit !important;
}

/* Do NOT underline Save Contact button, keep text color stable */
.iconcly-nfc-save,
.iconcly-nfc-save:hover,
.iconcly-nfc-save:visited,
.iconcly-nfc-save:active{
  text-decoration: none !important;
  color:#fff !important;
}

/* Replace the left square with a contact icon */
.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-x::before, .iconcly-nfc-x::after{ content:'' !important; }
