:root {
  --llc-main: var(--color_main, #b46b35);
  --llc-thin: var(--color_main_thin, #fff7f1);
  --llc-border: rgba(180, 107, 53, .24);
  --llc-text: #202020;
  --llc-muted: #666;
}

.local-list-card,
.llc-card {
  position: relative;
  margin: 2.1em 0;
  padding: clamp(1.25rem, 2.5vw, 1.85rem);
  border: 1px solid var(--llc-border);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 1px 0 rgba(0,0,0,.02), 0 12px 26px rgba(0,0,0,.035);
  overflow: hidden;
}

.llc-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 6px;
  background: var(--llc-main);
  border-radius: 14px 0 0 14px;
}

.llc-card__head {
  display: flex;
  gap: .85rem;
  align-items: flex-start;
  margin-bottom: .9rem;
}

.llc-card__icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.35rem;
  height: 2.35rem;
  margin-top: .05rem;
  border-radius: 999px;
  background: var(--llc-main);
  color: #fff;
}

.llc-card__icon svg {
  width: 1.22rem;
  height: 1.22rem;
  fill: currentColor;
}

.llc-card__title-wrap {
  min-width: 0;
}

.llc-card__title {
  margin: 0 0 .55rem !important;
  padding: 0 !important;
  border: 0 !important;
  color: var(--llc-text);
  font-size: clamp(1.22rem, 2.2vw, 1.55rem) !important;
  line-height: 1.35 !important;
  font-weight: 700;
}

.llc-card__title::before,
.llc-card__title::after {
  content: none !important;
  display: none !important;
}

.llc-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}

.llc-card__tag {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  padding: .24rem .7rem;
  border: 1px solid var(--llc-main);
  border-radius: 999px;
  background: #fff;
  color: var(--llc-main);
  font-size: .83rem;
  line-height: 1.4;
  font-weight: 600;
}

.llc-card__description {
  margin: .95rem 0 1rem;
  color: var(--llc-text);
}

.llc-card__description p {
  margin: 0 !important;
  line-height: 1.9;
}

.llc-card__info {
  margin-top: 1.05rem;
  padding: 1rem 1.05rem;
  border: 1px solid rgba(0,0,0,.055);
  border-radius: 10px;
  background: linear-gradient(135deg, var(--llc-thin), #fff);
}

.llc-card__row {
  display: grid;
  grid-template-columns: 5.8em 1fr;
  gap: .7rem;
  align-items: start;
  margin: .1rem 0;
}

.llc-card__row + .llc-card__row {
  margin-top: .65rem;
}

.llc-card__label {
  color: var(--llc-text);
  font-weight: 700;
  white-space: nowrap;
}

.llc-card__value {
  color: var(--llc-text);
}

.llc-card__links {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem .8rem;
}

.llc-card__link {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  color: var(--llc-main) !important;
  text-decoration: none !important;
  font-weight: 700;
  line-height: 1.5;
}

.llc-card__link:hover {
  opacity: .78;
  text-decoration: underline !important;
}

.llc-card__arrow {
  display: inline-block;
  font-size: 1.25em;
  line-height: 1;
  transform: translateY(-.02em);
}

.wp-block-local-list-card-card {
  max-width: none;
}

.llc-card.is-editor-preview {
  margin-top: 0;
}

.llc-editor-fields .components-base-control {
  margin-bottom: 12px;
}

.llc-editor-note {
  margin: 0 0 12px;
  color: #646970;
  font-size: 12px;
}

@media (max-width: 600px) {
  .llc-card {
    padding: 1.1rem 1rem 1.15rem 1.15rem;
    border-radius: 12px;
  }

  .llc-card::before {
    width: 4px;
    border-radius: 12px 0 0 12px;
  }

  .llc-card__head {
    gap: .65rem;
  }

  .llc-card__icon {
    width: 2rem;
    height: 2rem;
  }

  .llc-card__icon svg {
    width: 1rem;
    height: 1rem;
  }

  .llc-card__row {
    display: block;
  }

  .llc-card__label {
    display: block;
    margin-bottom: .15rem;
  }

  .llc-card__links {
    display: block;
  }

  .llc-card__link {
    margin: .18rem .7rem .18rem 0;
  }
}

.llc-card--editable .rich-text,
.llc-card--editable [contenteditable="true"] {
  outline: 0;
}

.llc-card--editable [contenteditable="true"]:focus {
  box-shadow: 0 0 0 2px rgba(180, 107, 53, .18);
  border-radius: 6px;
}

.llc-card__hint {
  color: var(--llc-muted);
}

.llc-editor-note {
  margin: 0 0 12px;
  color: #555;
  font-size: 12px;
  line-height: 1.6;
}

.llc-editor-links {
  margin-top: 12px;
}
.llc-editor-link-item {
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  padding: 10px;
  margin: 0 0 10px;
  background: #fff;
}
.llc-editor-link-item .components-base-control {
  margin-bottom: 8px;
}
.llc-editor-link-item .components-button.is-secondary.is-destructive {
  margin-top: 2px;
}

/* Editor-only: keep the card close to the published content width. */
.editor-styles-wrapper .llc-card,
.block-editor-block-list__layout .llc-card {
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
}
