/* Fanime Artist Alley v1.3 convention floor map */
.faa-alley-map {
  max-width: 1180px;
  margin: 0 auto;
  padding: 24px 16px 40px;
}

.faa-alley-map__hero {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(166, 124, 45, 0.35);
  border-radius: 24px;
  padding: 28px;
  background: linear-gradient(135deg, #ffffff 0%, #fff8e8 48%, #111111 49%, #1d1a14 100%);
  color: #17130b;
  box-shadow: 0 18px 50px rgba(20, 16, 10, 0.12);
}

.faa-alley-map__eyebrow {
  margin: 0 0 6px;
  font-size: 0.78rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #9a6a10;
  font-weight: 800;
}

.faa-alley-map__hero h2 {
  margin: 0 0 8px;
  font-size: clamp(2rem, 5vw, 3.3rem);
  line-height: 1;
}

.faa-alley-map__hero p:not(.faa-alley-map__eyebrow) {
  max-width: 640px;
  margin: 0;
  color: #473b24;
  font-size: 1rem;
}

.faa-alley-map__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.faa-alley-map__stats span {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(166, 124, 45, 0.35);
  border-radius: 999px;
  padding: 7px 12px;
  background: rgba(255, 255, 255, 0.72);
  color: #251c0e;
  font-weight: 700;
  font-size: 0.88rem;
}

.faa-alley-map__floor-wrap {
  margin-top: 24px;
  border: 1px solid rgba(0, 0, 0, 0.10);
  border-radius: 26px;
  background:
    linear-gradient(90deg, rgba(166,124,45,0.07) 1px, transparent 1px),
    linear-gradient(0deg, rgba(166,124,45,0.07) 1px, transparent 1px),
    #fffdf8;
  background-size: 32px 32px;
  box-shadow: inset 0 0 0 4px rgba(255, 255, 255, 0.6), 0 20px 60px rgba(0,0,0,0.08);
  overflow: hidden;
}

.faa-alley-map__entrance {
  display: flex;
  justify-content: center;
  gap: 10px;
  align-items: center;
  padding: 14px 18px;
  background: #111;
  color: #f8d37a;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.8rem;
}

.faa-alley-map__entrance strong {
  color: #fff;
}

.faa-alley-map__floor {
  padding: 22px;
}

.faa-alley-map__row {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr);
  gap: 16px;
  align-items: stretch;
  margin-bottom: 22px;
}

.faa-alley-map__row:last-child {
  margin-bottom: 0;
}

.faa-alley-map__row-sign {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 156px;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,0.12);
  background: #151515;
  color: #f7c95d;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  box-shadow: 0 10px 28px rgba(0,0,0,0.12);
}

.faa-alley-map__row-sign span {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}

.faa-alley-map__tables {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.faa-alley-map__table {
  position: relative;
  display: flex;
  min-height: 168px;
  flex-direction: column;
  overflow: hidden;
  border-radius: 20px;
  border: 1px solid rgba(166, 124, 45, 0.35);
  background: #fff;
  color: #17130b;
  text-decoration: none;
  box-shadow: 0 12px 30px rgba(0,0,0,0.10);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.faa-alley-map__table:hover,
.faa-alley-map__table:focus {
  transform: translateY(-3px);
  box-shadow: 0 18px 42px rgba(0,0,0,0.16);
  border-color: #b88726;
  outline: none;
}

.faa-alley-map__table-no {
  position: absolute;
  z-index: 2;
  top: 10px;
  left: 10px;
  border-radius: 999px;
  padding: 4px 8px;
  background: rgba(17,17,17,0.88);
  color: #f9d477;
  font-weight: 900;
  font-size: 0.76rem;
}

.faa-alley-map__table-banner {
  display: block;
  min-height: 70px;
  background: linear-gradient(135deg, #f5ca65, #fff2c2);
  background-position: center;
  background-size: cover;
}

.faa-alley-map__table-body {
  display: grid;
  gap: 4px;
  padding: 28px 14px 14px;
}

.faa-alley-map__avatar {
  position: absolute;
  top: 50px;
  right: 14px;
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 3px solid #d9bf72;
  border-radius: 16px;
  background: #111;
  color: #f7d475;
  font-weight: 900;
  box-shadow: 0 10px 20px rgba(0,0,0,0.16);
  overflow: hidden;
}

.faa-alley-map__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.faa-alley-map__title {
  font-weight: 900;
  font-size: 1rem;
  line-height: 1.15;
}

.faa-alley-map__artist {
  color: #6c5a38;
  font-size: 0.86rem;
}

.faa-alley-map__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 8px;
}

.faa-alley-map__tags em {
  border-radius: 999px;
  padding: 3px 7px;
  background: #fff3d0;
  color: #6e4b08;
  font-style: normal;
  font-weight: 800;
  font-size: 0.72rem;
}

.faa-alley-map__empty {
  margin-top: 24px;
  border: 1px dashed rgba(166, 124, 45, 0.45);
  border-radius: 20px;
  padding: 28px;
  background: #fffdf8;
  text-align: center;
}

.faa-alley-map__empty h3 {
  margin: 0 0 8px;
}

.faa-alley-map__empty p {
  margin: 0;
  color: #5d513e;
}

@media (max-width: 980px) {
  .faa-alley-map__tables {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .faa-alley-map {
    padding-left: 10px;
    padding-right: 10px;
  }

  .faa-alley-map__hero {
    padding: 22px;
    background: linear-gradient(180deg, #ffffff 0%, #fff8e8 100%);
  }

  .faa-alley-map__floor {
    padding: 14px;
  }

  .faa-alley-map__row {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .faa-alley-map__row-sign {
    min-height: auto;
    padding: 10px;
  }

  .faa-alley-map__row-sign span {
    writing-mode: horizontal-tb;
    transform: none;
  }

  .faa-alley-map__tables {
    grid-template-columns: 1fr;
  }
}


/* v1.4 front-row map polish */
.faa-alley-map__row--front {
  border: 2px solid rgba(184, 135, 38, .45);
  border-radius: 22px;
  padding: 14px;
  background: rgba(255, 246, 218, .7);
  box-shadow: 0 14px 36px rgba(184, 135, 38, .12);
}
.faa-alley-map__row--front .faa-alley-map__row-sign {
  background: linear-gradient(180deg, #111, #3b2a08);
  color: #fff;
  border-color: rgba(248, 211, 122, .55);
}
.faa-alley-map__table--front {
  border: 2px solid rgba(184, 135, 38, .7);
  box-shadow: 0 16px 44px rgba(184, 135, 38, .18);
}
.faa-alley-map__featured-ribbon {
  position: absolute;
  z-index: 3;
  top: 10px;
  right: 10px;
  border-radius: 999px;
  padding: 4px 8px;
  background: rgba(17,17,17,.9);
  color: #f9d477;
  font-weight: 900;
  font-size: .72rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}


/* v1.4.1 future map placeholder */
.faa-future-map {
  max-width: 980px;
  margin: 0 auto;
  display: grid;
  gap: 1.25rem;
}
.faa-future-map__panel {
  border: 1px solid rgba(166,124,45,.32);
  border-radius: 28px;
  padding: clamp(1.25rem, 4vw, 2.5rem);
  background: linear-gradient(180deg, #fff, #fff7df);
  box-shadow: 0 18px 50px rgba(0,0,0,.07);
}
.faa-future-map__button {
  display: inline-flex;
  border: 2px solid #111;
  border-radius: 999px;
  padding: .75rem 1.1rem;
  background: #d9bf72;
  color: #111;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-decoration: none;
}
.faa-future-map__mock-floor {
  border: 1px solid rgba(166,124,45,.22);
  border-radius: 24px;
  padding: 1.25rem;
  background-image: linear-gradient(rgba(166,124,45,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(166,124,45,.08) 1px, transparent 1px);
  background-size: 34px 34px;
  display: grid;
  gap: .75rem;
}
.faa-future-map__entrance,
.faa-future-map__row,
.faa-future-map__booth {
  display: block;
  border-radius: 999px;
  padding: .75rem 1rem;
  text-align: center;
  font-weight: 900;
}
.faa-future-map__entrance { background: #111; color: #f7d982; }
.faa-future-map__row { background: rgba(17,17,17,.9); color: #fff; }
.faa-future-map__booth { background: #fff; border: 1px solid rgba(166,124,45,.25); }

/* v1.5 public 2D map pass */
.faa-alley-map--map-v1 {
  max-width: 1240px;
}

.faa-alley-map--map-v1 .faa-alley-map__hero {
  background:
    radial-gradient(circle at 82% 18%, rgba(247, 211, 122, .38), transparent 26%),
    linear-gradient(135deg, #ffffff 0%, #fff8e8 56%, #151515 57%, #232018 100%);
}

.faa-alley-map__guide {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  align-items: center;
  margin: 1.1rem 0 0;
  padding: .85rem 1rem;
  border: 1px solid rgba(166, 124, 45, .28);
  border-radius: 18px;
  background: #fffdf8;
  box-shadow: 0 10px 26px rgba(0, 0, 0, .05);
  color: #312716;
  font-size: .9rem;
  font-weight: 800;
}

.faa-alley-map__guide span {
  display: inline-flex;
  gap: .45rem;
  align-items: center;
}

.faa-alley-map__guide .faa-alley-map__guide-note {
  margin-left: auto;
  color: #765718;
  font-weight: 700;
}

.faa-alley-map__legend-dot {
  width: .8rem;
  height: .8rem;
  border-radius: 999px;
  display: inline-block;
  border: 1px solid rgba(0,0,0,.16);
}

.faa-alley-map__legend-dot--occupied { background: #ffffff; }
.faa-alley-map__legend-dot--featured { background: #f4cc67; }
.faa-alley-map__legend-dot--empty { background: repeating-linear-gradient(45deg, #f5ead0 0 5px, #fffaf0 5px 10px); }

.faa-alley-map--map-v1 .faa-alley-map__floor-wrap {
  position: relative;
  margin-top: 1.25rem;
  border-color: rgba(166, 124, 45, .35);
  overflow-x: auto;
  overscroll-behavior-x: contain;
}

.faa-alley-map--map-v1 .faa-alley-map__floor-wrap::before,
.faa-alley-map--map-v1 .faa-alley-map__floor-wrap::after {
  content: '';
  position: absolute;
  top: 58px;
  bottom: 0;
  width: 16px;
  pointer-events: none;
  z-index: 3;
}

.faa-alley-map--map-v1 .faa-alley-map__floor-wrap::before {
  left: 0;
  background: linear-gradient(90deg, rgba(255,253,248,.95), transparent);
}

.faa-alley-map--map-v1 .faa-alley-map__floor-wrap::after {
  right: 0;
  background: linear-gradient(270deg, rgba(255,253,248,.95), transparent);
}

.faa-alley-map--map-v1 .faa-alley-map__entrance {
  position: sticky;
  left: 0;
  z-index: 4;
  min-width: 760px;
  justify-content: center;
  border-bottom: 3px solid rgba(248, 211, 122, .35);
}

.faa-alley-map__entrance em {
  border: 1px solid rgba(248, 211, 122, .5);
  border-radius: 999px;
  padding: .28rem .55rem;
  color: #ffffff;
  font-style: normal;
  font-weight: 900;
  text-transform: none;
  letter-spacing: .02em;
}

.faa-alley-map--map-v1 .faa-alley-map__floor {
  min-width: 760px;
  padding: 1.1rem 1.25rem 1.3rem;
}

.faa-alley-map__aisle {
  min-width: 760px;
  margin: 0;
  padding: .62rem 1rem;
  background: rgba(17, 17, 17, .88);
  color: #f8d37a;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-weight: 900;
  font-size: .72rem;
}

.faa-alley-map__aisle--main {
  background: linear-gradient(90deg, #111111, #3b2a08, #111111);
  color: #ffffff;
}

.faa-alley-map--map-v1 .faa-alley-map__row {
  grid-template-columns: 96px minmax(640px, 1fr);
  align-items: stretch;
  margin: 0;
  padding: 1rem 0;
}

.faa-alley-map--map-v1 .faa-alley-map__row--front {
  margin: 0;
  border-width: 1px;
  border-radius: 0;
  border-left: 0;
  border-right: 0;
  background: rgba(255, 246, 218, .82);
}

.faa-alley-map--map-v1 .faa-alley-map__row-sign {
  min-height: 154px;
  border-radius: 18px 6px 6px 18px;
}

.faa-alley-map--map-v1 .faa-alley-map__tables {
  grid-template-columns: repeat(4, minmax(142px, 1fr));
  gap: 14px;
}

.faa-alley-map--map-v1 .faa-alley-map__table {
  min-height: 154px;
  border-radius: 16px;
}

.faa-alley-map--map-v1 .faa-alley-map__table::after {
  content: '';
  position: absolute;
  left: 18%;
  right: 18%;
  bottom: 8px;
  height: 7px;
  border-radius: 999px;
  background: rgba(17, 17, 17, .10);
}

.faa-alley-map__table--empty {
  justify-content: center;
  align-items: center;
  border-style: dashed;
  border-color: rgba(166, 124, 45, .28);
  background:
    repeating-linear-gradient(45deg, rgba(245, 234, 208, .68) 0 8px, rgba(255,250,240,.9) 8px 16px);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.7);
  color: #856321;
}

.faa-alley-map__table--empty:hover,
.faa-alley-map__table--empty:focus {
  transform: none;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.7);
  border-color: rgba(166, 124, 45, .28);
}

.faa-alley-map__empty-table-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: .45rem .75rem;
  background: rgba(255,255,255,.72);
  font-weight: 900;
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.faa-alley-map--map-v1 .faa-alley-map__table:focus-visible {
  outline: 3px solid rgba(184, 135, 38, .55);
  outline-offset: 3px;
}

.faa-alley-map--map-v1 .faa-alley-map__table.is-map-focused {
  transform: translateY(-4px) scale(1.01);
  border-color: #111;
  box-shadow: 0 18px 46px rgba(0,0,0,.2), 0 0 0 4px rgba(248, 211, 122, .32);
}

@media (max-width: 760px) {
  .faa-alley-map__guide .faa-alley-map__guide-note {
    width: 100%;
    margin-left: 0;
  }

  .faa-alley-map--map-v1 .faa-alley-map__hero {
    background: linear-gradient(180deg, #ffffff 0%, #fff8e8 100%);
  }
}

/* v2.5 locked booth visibility structure */
.faa-alley-map__row--spotlight {
  border-color: rgba(244, 204, 103, 0.78);
  box-shadow: 0 22px 48px rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(244, 204, 103, 0.28) inset;
}

.faa-alley-map__table--spotlight {
  transform: translateY(-2px);
  box-shadow: 0 24px 50px rgba(0, 0, 0, 0.24), 0 0 0 2px rgba(244, 204, 103, 0.62) inset;
}

.faa-alley-map__table--spotlight .faa-alley-map__featured-ribbon {
  background: #f4cc67;
  color: #111;
}

.faa-alley-map__legend-dot--spotlight {
  background: #f4cc67;
  box-shadow: 0 0 0 2px rgba(244, 204, 103, 0.25);
}


/* v2.10 frontend/public polish */
.faa-button,
.faa-booth-card__visit a {
  border-radius: 999px;
  box-shadow: 0 10px 22px rgba(0,0,0,.08);
}

.faa-button--primary {
  background: #d9bf72;
  color: #111;
}

.faa-button--secondary {
  background: #fff;
  color: #111;
}

.faa-booth-single--v210 {
  max-width: 1180px;
  padding: 0 12px;
}

.faa-booth-single--v210 .faa-booth-single__hero {
  border-color: rgba(166, 124, 45, .32);
  border-radius: 28px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 22px 60px rgba(20, 16, 10, .10);
}

.faa-booth-single--v210 .faa-booth-single__banner {
  height: clamp(190px, 28vw, 320px);
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.45), transparent 32%),
    linear-gradient(135deg, #111 0%, #3a2a09 48%, #d9bf72 100%);
}

.faa-booth-single--v210 .faa-booth-single__identity {
  position: relative;
  padding: 0 clamp(18px, 4vw, 36px) clamp(22px, 4vw, 36px);
  align-items: flex-start;
}

.faa-booth-single--v210 .faa-booth-single__logo {
  width: clamp(96px, 18vw, 132px);
  height: clamp(96px, 18vw, 132px);
  flex-basis: clamp(96px, 18vw, 132px);
  margin-top: -54px;
  border: 6px solid #d9bf72;
  border-radius: 28px;
  box-shadow: 0 18px 42px rgba(0,0,0,.16);
}

.faa-booth-single__identity-main {
  padding-top: 22px;
  min-width: 0;
}

.faa-booth-single--v210 .faa-booth-single__eyebrow,
.faa-booth-single__section-kicker {
  color: #9a6a10;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.faa-booth-single--v210 .faa-booth-single__identity h2 {
  font-size: clamp(2rem, 5vw, 4rem);
  line-height: .98;
  letter-spacing: -.04em;
}

.faa-booth-single__badges,
.faa-booth-single__actions,
.faa-account-booth-summary__badges,
.faa-account-booth-summary__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.faa-booth-single__badge,
.faa-account-booth-summary__badges span {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: .4rem .72rem;
  background: #111;
  color: #f7d475;
  font-weight: 900;
  font-size: .78rem;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.faa-booth-single__badge--market {
  background: #fff2c5;
  color: #5e4208;
  border: 1px solid rgba(166,124,45,.35);
}

.faa-booth-single__badge--front-row {
  background: #171717;
  color: #fff;
  border: 1px solid #d9bf72;
}

.faa-booth-single__grid {
  gap: 1.5rem;
  margin-top: 1.5rem;
}

.faa-booth-single--v210 .faa-booth-single__section,
.faa-booth-single--v210 .faa-booth-single__panel {
  border-color: rgba(166, 124, 45, .22);
  border-radius: 22px;
  box-shadow: 0 16px 44px rgba(0,0,0,.06);
}

.faa-booth-single__section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.faa-booth-single__section-head h3 {
  margin: .15rem 0 0;
}

.faa-booth-single__section-head > span {
  border-radius: 999px;
  padding: .35rem .7rem;
  background: #fff4cf;
  color: #6e4b08;
  font-weight: 900;
  white-space: nowrap;
}

.faa-gallery-grid--premium {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.faa-gallery-grid--premium .faa-gallery-item {
  display: block;
  min-height: 160px;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(166,124,45,.28);
  background: #fff8e8;
  box-shadow: 0 12px 30px rgba(0,0,0,.08);
}

.faa-gallery-grid--premium .faa-gallery-item--feature {
  grid-column: span 2;
  grid-row: span 2;
}

.faa-gallery-grid--premium .faa-gallery-item img {
  width: 100%;
  height: 100%;
  min-height: 160px;
  object-fit: cover;
  display: block;
  transition: transform .18s ease;
}

.faa-gallery-grid--premium .faa-gallery-item:hover img,
.faa-gallery-grid--premium .faa-gallery-item:focus img {
  transform: scale(1.035);
}

.faa-featured-link-grid--premium {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.faa-featured-link-card--premium {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  color: #111;
  text-decoration: none;
  border-color: rgba(166,124,45,.28);
  background: linear-gradient(180deg, #fff, #fff8e8);
  transition: transform .18s ease, box-shadow .18s ease;
}

.faa-featured-link-card--premium:hover,
.faa-featured-link-card--premium:focus {
  transform: translateY(-2px);
  box-shadow: 0 18px 36px rgba(0,0,0,.10);
}

.faa-featured-link-card__number {
  width: 38px;
  height: 38px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #111;
  color: #f7d475;
  font-weight: 900;
}

.faa-featured-link-card__body strong,
.faa-featured-link-card__body em {
  display: block;
}

.faa-featured-link-card__body em {
  margin-top: .25rem;
  color: #6c5a38;
  font-style: normal;
  font-size: .9rem;
}

.faa-booth-empty-panel {
  border: 1px dashed rgba(166,124,45,.35);
  border-radius: 18px;
  padding: 1rem;
  background: #fffdf8;
}

.faa-booth-empty-panel p {
  margin-bottom: 0;
}

.faa-booth-single__visit-panel {
  background: linear-gradient(180deg, #111, #211707) !important;
  color: #fff;
}

.faa-booth-single__visit-panel h3,
.faa-booth-single__visit-panel p {
  color: #fff;
}

.faa-booth-single__visit-panel .faa-creator-link-card {
  border-color: rgba(247,212,117,.32);
}

.faa-booth-single__map-panel {
  background: #fffdf8 !important;
}

.faa-account-booth-summary--v210 {
  display: grid;
  grid-template-columns: minmax(220px, 320px) 1fr;
  gap: clamp(18px, 4vw, 32px);
  align-items: stretch;
  border-color: rgba(166,124,45,.28);
  border-radius: 26px;
  overflow: hidden;
  padding: 0;
  box-shadow: 0 18px 44px rgba(0,0,0,.07);
}

.faa-account-booth-summary__visual {
  position: relative;
  min-height: 230px;
  background: #111;
}

.faa-account-booth-summary__banner {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 230px;
  background-position: center;
  background-size: cover;
}

.faa-account-booth-summary__banner--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #d9bf72;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: linear-gradient(135deg, #111, #362706);
}

.faa-account-booth-summary__logo {
  position: absolute;
  left: 20px;
  bottom: 20px;
  width: 86px;
  height: 86px;
  object-fit: cover;
  border: 5px solid #d9bf72;
  border-radius: 22px;
  background: #111;
  box-shadow: 0 18px 36px rgba(0,0,0,.18);
}

.faa-account-booth-summary__logo--empty {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #d9bf72;
  font-size: 2rem;
  font-weight: 900;
}

.faa-account-booth-summary__content {
  padding: clamp(18px, 4vw, 30px);
}

.faa-account-booth-summary__eyebrow {
  margin: 0 0 .35rem;
  color: #9a6a10;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.faa-account-booth-summary__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 1rem 0;
}

.faa-account-booth-summary__stats span {
  border: 1px solid rgba(166,124,45,.25);
  border-radius: 16px;
  padding: .8rem;
  background: #fffdf8;
}

.faa-account-booth-summary__stats strong,
.faa-account-booth-summary__stats em {
  display: block;
}

.faa-account-booth-summary__stats strong {
  font-size: 1.1rem;
}

.faa-account-booth-summary__stats em {
  margin-top: .2rem;
  color: #6c5a38;
  font-size: .82rem;
  font-style: normal;
  font-weight: 800;
  text-transform: uppercase;
}

.faa-alley-map__world-teaser {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem .8rem;
  align-items: center;
  margin-top: 18px;
  border: 1px solid rgba(166,124,45,.28);
  border-radius: 18px;
  padding: .85rem 1rem;
  background: rgba(255,255,255,.74);
}

.faa-alley-map__world-teaser strong {
  color: #111;
}

@media (max-width: 820px) {
  .faa-booth-single--v210 .faa-booth-single__identity {
    display: block;
  }

  .faa-booth-single__identity-main {
    padding-top: 12px;
  }

  .faa-gallery-grid--premium {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .faa-gallery-grid--premium .faa-gallery-item--feature {
    grid-column: span 2;
  }

  .faa-account-booth-summary--v210 {
    grid-template-columns: 1fr;
  }

  .faa-account-booth-summary__visual,
  .faa-account-booth-summary__banner {
    min-height: 180px;
  }
}

@media (max-width: 560px) {
  .faa-booth-single--v210 {
    padding: 0 4px;
  }

  .faa-gallery-grid--premium,
  .faa-account-booth-summary__stats {
    grid-template-columns: 1fr;
  }

  .faa-gallery-grid--premium .faa-gallery-item--feature {
    grid-column: auto;
    grid-row: auto;
  }

  .faa-booth-single__section-head {
    display: block;
  }

  .faa-booth-single__actions .faa-button,
  .faa-account-booth-summary__actions .button {
    width: 100%;
    text-align: center;
  }
}


/* v2.12 unified Fanime gold logo outlines */
.faa-booth-single__logo,
.faa-booth-single--v210 .faa-booth-single__logo,
.faa-account-booth-summary__logo,
.faa-alley-map__avatar,
.faa-booth-card__logo,
.faa-admin-booth-logo,
.faa-admin-snapshot-logo {
  border-color: #d9bf72 !important;
}

.faa-booth-single__logo,
.faa-booth-single--v210 .faa-booth-single__logo,
.faa-account-booth-summary__logo {
  box-shadow: 0 18px 42px rgba(0,0,0,.16), 0 0 0 3px rgba(217,191,114,.18) !important;
}

.faa-alley-map__avatar,
.faa-booth-card__logo {
  box-shadow: 0 10px 20px rgba(0,0,0,.16), 0 0 0 2px rgba(217,191,114,.18) !important;
}


/* v2.16.3 mini creator themes for directory/map booth tables */
.faa-alley-map__table--themed {
  border-color: color-mix(in srgb, var(--faa-creator-border, #d8b96a) 72%, transparent);
  background: var(--faa-creator-surface, #ffffff);
  color: var(--faa-creator-text, #171717);
  box-shadow: 0 16px 36px color-mix(in srgb, var(--faa-creator-accent, #d6a84f) 15%, transparent);
}

.faa-alley-map__table--themed:hover,
.faa-alley-map__table--themed:focus {
  border-color: var(--faa-creator-accent, #d6a84f);
  box-shadow: 0 20px 46px color-mix(in srgb, var(--faa-creator-accent, #d6a84f) 24%, transparent);
}

.faa-alley-map__table--themed .faa-alley-map__table-banner {
  background-color: var(--faa-creator-accent, #d6a84f);
  background-image: linear-gradient(135deg, var(--faa-creator-accent, #d6a84f), var(--faa-creator-bg, #fffaf0));
}

.faa-alley-map__table--themed .faa-alley-map__table-body {
  background: linear-gradient(180deg, var(--faa-creator-surface, #ffffff), color-mix(in srgb, var(--faa-creator-bg, #fffaf0) 44%, var(--faa-creator-surface, #ffffff)));
}

.faa-alley-map__table--themed .faa-alley-map__avatar {
  border-color: var(--faa-creator-border, #d8b96a);
  background: var(--faa-creator-button, #171717);
  color: var(--faa-creator-button-text, #ffffff);
}

.faa-alley-map__table--themed .faa-alley-map__title,
.faa-alley-map__table--themed .faa-alley-map__title:visited {
  color: var(--faa-creator-text, #171717);
}

.faa-alley-map__table--themed .faa-alley-map__artist {
  color: var(--faa-creator-muted, #675f50);
}

.faa-alley-map__table--themed .faa-alley-map__tags em {
  border-color: color-mix(in srgb, var(--faa-creator-border, #d8b96a) 70%, transparent);
  background: color-mix(in srgb, var(--faa-creator-accent, #d6a84f) 16%, var(--faa-creator-surface, #ffffff));
  color: var(--faa-creator-text, #171717);
}

.faa-alley-map__table--themed .faa-alley-map__table-no,
.faa-alley-map__table--themed .faa-alley-map__featured-ribbon {
  background: var(--faa-creator-button, #171717);
  color: var(--faa-creator-button-text, #ffffff);
}

.faa-alley-map__table--themed.faa-creator-theme--dark_anime {
  background: #15101f;
  border-color: #6b548f;
  box-shadow: 0 18px 42px rgba(15, 13, 21, .42);
}

.faa-alley-map__table--themed.faa-creator-theme--dark_anime .faa-alley-map__table-body {
  background: linear-gradient(180deg, #211b2d, #15101f);
}

.faa-alley-map__table--themed.faa-creator-theme--dark_anime .faa-alley-map__title,
.faa-alley-map__table--themed.faa-creator-theme--dark_anime .faa-alley-map__artist {
  color: #fffaff;
}

.faa-alley-map__table--themed.faa-creator-theme--dark_anime .faa-alley-map__tags em {
  background: rgba(183, 140, 255, .16);
  border-color: rgba(183, 140, 255, .78);
  color: #fffaff;
}

/* v2.17.3 cleaner map edges + Spotlight glow */
.faa-alley-map--map-v1 .faa-alley-map__floor-wrap::before,
.faa-alley-map--map-v1 .faa-alley-map__floor-wrap::after {
  display: none !important;
}

.faa-alley-map__floor-wrap {
  box-shadow: 0 20px 60px rgba(0,0,0,0.08) !important;
}

.faa-alley-map__table--spotlight,
.faa-alley-map__table--themed.faa-alley-map__table--spotlight {
  border-color: rgba(248, 211, 122, .82) !important;
  box-shadow:
    0 20px 44px rgba(18, 13, 8, .22),
    0 0 0 1px rgba(255,255,255,.62),
    0 0 0 4px rgba(248, 211, 122, .22),
    0 0 30px rgba(248, 211, 122, .18) !important;
}

.faa-alley-map__table--spotlight .faa-alley-map__avatar {
  box-shadow:
    0 12px 24px rgba(0,0,0,.22),
    0 0 0 3px rgba(255,255,255,.45),
    0 0 24px rgba(248, 211, 122, .28) !important;
}

/* v2.17.4 section-based temporary map */
.faa-alley-map__section {
  display: grid;
  gap: 16px;
  padding: 18px;
  border: 1px solid rgba(214, 168, 79, .28);
  border-radius: 24px;
  background: rgba(255, 255, 255, .66);
  box-shadow: 0 14px 34px rgba(0, 0, 0, .05);
}
.faa-alley-map__section + .faa-alley-map__section {
  margin-top: 18px;
}
.faa-alley-map__section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(23,23,23,.96), rgba(80,58,18,.94));
  color: #fff;
}
.faa-alley-map__section-heading span {
  font-weight: 900;
  letter-spacing: .02em;
}
.faa-alley-map__section-heading em {
  color: rgba(255,255,255,.72);
  font-size: 13px;
  font-style: normal;
}
@media (max-width: 720px) {
  .faa-alley-map__section {
    padding: 12px;
    border-radius: 18px;
  }
  .faa-alley-map__section-heading {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* v2.25 creator page polish: clearer gallery previews, featured thumbnails, softer visit panel. */
.faa-gallery-grid--premium .faa-gallery-item {
  min-height: 190px;
}

.faa-gallery-grid--premium .faa-gallery-item img {
  min-height: 190px;
}

.faa-featured-link-card--premium.faa-featured-link-card--has-image {
  grid-template-columns: 86px 1fr;
  align-items: center;
}

.faa-featured-link-card__thumb {
  display: block;
  width: 86px;
  height: 72px;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(166,124,45,.28);
  background: #fff8e8;
}

.faa-featured-link-card__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.faa-booth-single__visit-panel {
  background: linear-gradient(180deg, #fff, #fff8e8) !important;
  color: #171717 !important;
  border-color: rgba(166,124,45,.32) !important;
}

.faa-booth-single__visit-panel h3,
.faa-booth-single__visit-panel p {
  color: #171717 !important;
}

.faa-booth-single__visit-panel .faa-creator-link-card {
  background: #fff !important;
  color: #171717 !important;
  border-color: rgba(166,124,45,.32) !important;
}

.faa-booth-single__visit-panel .faa-creator-link-card--market {
  background: linear-gradient(180deg, #fffdf8, #fff4cf) !important;
  border-color: rgba(166,124,45,.45) !important;
}

.faa-booth-single__visit-panel .faa-creator-link-card__label,
.faa-booth-single__visit-panel .faa-creator-link-card__hint {
  color: #171717 !important;
}

.faa-booth-single__visit-panel .faa-creator-link-card__hint {
  opacity: .72;
}

@media (max-width: 640px) {
  .faa-gallery-grid--premium {
    grid-template-columns: 1fr;
  }

  .faa-gallery-grid--premium .faa-gallery-item,
  .faa-gallery-grid--premium .faa-gallery-item img {
    min-height: 240px;
  }

  .faa-gallery-grid--premium .faa-gallery-item--feature {
    grid-column: auto;
    grid-row: auto;
  }

  .faa-featured-link-card--premium.faa-featured-link-card--has-image {
    grid-template-columns: 96px 1fr;
  }

  .faa-featured-link-card__thumb {
    width: 96px;
    height: 82px;
  }
}

/* v2.29.1 theme-pack visit-card contrast hardening.
   Keep creator link cards readable on dark paid themes even when older bundled CSS
   contains hardcoded black visit-card text. */
.faa-booth-single--v210 .faa-booth-single__visit-panel,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card--market {
  background: var(--faa-creator-surface, #ffffff) !important;
  color: var(--faa-creator-text, #171717) !important;
  border-color: var(--faa-creator-border, #d8b96a) !important;
}

.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card:link,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card:visited,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card:hover,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card:focus {
  color: var(--faa-creator-text, #171717) !important;
  text-decoration-color: var(--faa-creator-border, #d8b96a) !important;
}

.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card__label,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card__label:link,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card__label:visited,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card strong,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card span:not(.faa-creator-link-card__hint) {
  color: var(--faa-creator-text, #171717) !important;
}

.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card__hint,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card small,
.faa-booth-single--v210 .faa-booth-single__visit-panel .faa-creator-link-card em {
  color: var(--faa-creator-muted, #675f50) !important;
  opacity: 1 !important;
}

