.lciim-wrap{max-width:100%;}
.lciim-map{position:relative; width:100%;}
.lciim-map svg{width:100%; height:auto; display:block;}
.lciim-map svg .lciim-booth{transition:stroke .18s ease, stroke-width .18s ease;}
.lciim-map svg .lciim-booth.lciim-booth-hover{filter:drop-shadow(0 6px 14px rgba(0,0,0,.18));}
.lciim-pop{position:fixed; z-index:99999; min-width:220px; max-width:320px; background:#fff; border:1px solid rgba(17,17,17,.35); border-radius:12px; box-shadow:0 12px 30px rgba(0,0,0,.18); padding:14px 16px 12px; transform:translateY(8px); opacity:0; pointer-events:none; transition:opacity .12s ease, transform .12s ease; text-align:center;}
.lciim-pop.is-visible{opacity:1; transform:translateY(0);}

.lciim-pop .lciim-pop-logo{margin:0 auto 10px; max-width:200px;}
.lciim-pop .lciim-pop-logo img{display:block; max-width:100%; height:auto; border-radius:10px;}

.lciim-pop .lciim-pop-type{display:inline-flex; align-items:center; justify-content:center; padding:4px 10px; border-radius:999px; font-weight:700; font-size:12px; letter-spacing:.04em; margin:0 auto 10px; text-transform:uppercase;}
.lciim-pop.is-type-choice .lciim-pop-type{background:rgba(59,130,246,.14); color:#2563eb;}
.lciim-pop.is-type-standard .lciim-pop-type{background:rgba(168,85,247,.14); color:#7c3aed;}
.lciim-pop.is-type-other .lciim-pop-type{background:rgba(15,23,42,.10); color:#0f172a;}

.lciim-pop .lciim-pop-booth{font-weight:800; font-size:15px; letter-spacing:.02em; color:#0f172a; margin:0 0 8px;}
.lciim-pop .lciim-pop-vendor{font-weight:800; font-size:18px; margin:0 0 10px; color:#0f172a;}
.lciim-pop .lciim-pop-status{font-weight:800; font-size:14px; margin:0;}

/* Status-colored booth line (status text is included in the booth line for pending/available) */
.lciim-pop.is-status-pending .lciim-pop-booth{color:#d10000;}
.lciim-pop.is-status-available .lciim-pop-booth{color:#0f8a3b;}
.lciim-legend{display:flex; gap:16px; flex-wrap:wrap; margin-top:24px; font-size:12px; justify-content:center;}
.lciim-legend-item{display:flex; align-items:center; gap:8px;}
.lciim-swatch{width:22px; height:14px; border:1px solid #111; border-radius:3px;}


/* Shortcode width is applied inline (max-width + centered). Keep it responsive. */
.lciim-wrap{ width:100%; }

/* Taken booths grid under the map */
.lciim-taken-grid{
  display:grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap:28px 24px;
  margin:34px 0 0;
  padding:0;
}
.lciim-taken-item{
  text-align:center;
}
.lciim-taken-logo{
  height:72px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 0 10px;
}
.lciim-taken-logo img{
  max-height:72px;
  max-width:180px;
  width:auto;
  height:auto;
  display:block;
}
.lciim-taken-booth{
  font-weight:600;
  margin:0;
}
.lciim-taken-link{
  display:inline-block;
  margin-top:6px;
  text-decoration:underline;
}
@media (max-width: 1100px){
  .lciim-taken-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 700px){
  .lciim-taken-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


/* Download button under map (shortcode output) */
.lciim-download-wrap{
  display:flex;
  justify-content:center;
  margin-top:34px;
  margin-bottom:8px;
}
.lciim-download-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 12px 26px;
  border-radius: 10px;
  text-decoration:none;
  font-weight: 700;
  letter-spacing: .02em;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 10px 20px rgba(0,0,0,.08);
}
.lciim-download-btn:hover{
  transform: translateY(-1px);
}
