#ilmerror-modal-wrap {
	display: none; /* Hidden by default */
	position: fixed; /* Stay in place */
	z-index: 1050; /* Sit on top */
	padding-top: 100px; /* Location of the box */
	left: 0;
	top: 0;
	width: 100%; /* Full width */
	height: 100%; /* Full height */
	overflow: auto; /* Enable scroll if needed */
	background-color: rgba(0, 0, 0, 0.4); /* Black w/ opacity */
	transition: 0.5s; /* Smooth transition */
  }

  #ilmerror-modal {
	position: relative;
	margin: auto;
	padding: 0;
	width: 80%;
	max-width: 500px; /* Could be more or less, depending on screen size */
	animation: animatetop 0.4s; /* Animation */
  }

  @keyframes animatetop {
	from { top: -300px; opacity: 0 }
	to { top: 0; opacity: 1 }
  }

  .ilmerror-modal-content {
	position: relative;
	background-color: #f9c4c4;
	padding: 16px;
	border: none;
	width: 100%;
	border-radius: 5px;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  }

  .ilmerror-modal-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid #db9c9c;
  }

  .ilmerror-modal-title {
	margin: 0;
  }

  .ilmerror-close {
	background: none;
	border: none;
	font-size: 1.5rem;
	cursor: pointer;
  }

  .ilmerror-modal-body {
	margin-top: 10px;
  }

  @media (max-width: 767px) {
	.ilmerror-modal-content {
	  margin: 10px;
	  width: auto;
	}
  }

  @media (max-width: 480px) {
	.ilmerror-modal-content {
	  margin: 5px;
	  width: auto;
	}
  }

  /* ==========================================================================
     Quantity/amount rule message badge (shown near price on product & list
     pages). Kept theme-neutral on purpose: no icon fonts, no theme-specific
     selectors, so it looks reasonable on Classic, Hummingbird and any custom
     theme. Shop owners can still override via Configuration > Custom CSS,
     which loads after this file.
     ========================================================================== */
  .ilmgroupprice {
	--ilmqty-accent: #2c7a7b;
	--ilmqty-bg: #eef7f7;
	--ilmqty-ink: #1f3d3d;
	margin: 8px 0;
	padding: 6px 12px;
	max-width: 100%;
	font-size: 0.85em;
	line-height: 1.4;
	color: var(--ilmqty-ink);
	background: var(--ilmqty-bg);
	border-left: 3px solid var(--ilmqty-accent);
	border-radius: 4px;
	box-sizing: border-box;
  }

  .ilmgroupprice b {
	color: var(--ilmqty-accent);
  }

  /* The product's own limits, stated before anything is blocked. Same
     theme-neutral treatment as the pack badge, quieter. */
  .ilmruleinfo {
	--ilmqty-accent: #2c7a7b;
	--ilmqty-ink: #1f3d3d;
	margin: 8px 0;
	font-size: 0.85em;
	line-height: 1.4;
	color: var(--ilmqty-ink);
  }

  .ilmruleinfo b {
	color: var(--ilmqty-accent);
  }
