/* PortalGraf Market - Frontend */

.pgm-category-view,
.pgm-company-view {
  --pgm-border: #d8e2e7;
  --pgm-border-strong: #c4d5dc;
  --pgm-soft-bg: #f6f9fa;
  --pgm-panel-bg: #fbfcfd;
  --pgm-muted-bg: #f0f5f6;
  --pgm-brand-soft: rgba(29, 121, 137, .08);
  --pgm-card-shadow: 0 .45rem 1.15rem rgba(20, 52, 60, .055);
}

.pgm-directory-header h1,
.pgm-company-header h1 {
  letter-spacing: -.02em;
}

.pgm-company-logo,
.pgm-company-card-logo,
.pgm-company-logo img,
.pgm-company-card-logo img {
  box-sizing: border-box;
}

.pgm-company-logo img,
.pgm-company-card-logo img {
  display: block;
  max-width: 100%;
  height: auto;
}

.pgm-company-logo {
  width: 140px;
  height: 140px;
  flex: 0 0 140px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: .75rem;
  border: 1px solid var(--pgm-border);
  border-radius: .85rem;
  background: #fff;
}

.pgm-company-logo img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.pgm-company-card-logo {
  padding: 1rem 1rem 0;
  min-height: 100px;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.pgm-company-card-logo img {
  max-width: 100%;
  max-height: 90px;
  object-fit: contain;
}

.pgm-company-card,
.pgm-lead-card,
.pgm-directory-filter,
.pgm-related-card,
.pgm-empty-state {
  border-radius: .85rem;
  box-shadow: var(--pgm-card-shadow);
}

.pgm-company-card {
  overflow: hidden;
  transition: transform .15s ease, box-shadow .15s ease;
}

.pgm-company-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 .65rem 1.4rem rgba(20, 52, 60, .085);
}

.pgm-company-card h2 a,
.pgm-related-card h3 a {
  text-decoration: none;
}

.pgm-company-card h2 a:hover,
.pgm-related-card h3 a:hover {
  text-decoration: underline;
}

.pgm-company-card .card-body {
  padding-top: 1rem;
}

.pgm-company-card p {
  color: #4f5963;
}

.pgm-company-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}

.pgm-company-actions .btn {
  white-space: normal;
}

.pgm-company-header {
  padding: 1.25rem;
  border: 1px solid var(--pgm-border);
  border-radius: .85rem;
  background: linear-gradient(135deg, #ffffff, var(--pgm-soft-bg));
  box-shadow: var(--pgm-card-shadow);
}

.pgm-company-header .text-muted {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem .6rem;
}

.pgm-company-header .text-muted span + span::before {
  content: "·";
  margin-right: .6rem;
}

.pgm-company-view section.mb-4:not(.pgm-related-resources):not(.pgm-related-companies) {
  padding: 1.15rem;
  border: 1px solid var(--pgm-border);
  border-radius: .85rem;
  background: #fff;
}

.pgm-company-view section h2 {
  margin-bottom: .85rem;
}

.pgm-company-description,
.pgm-company-services,
.pgm-company-sectors {
  color: #343a40;
}

.pgm-related-resources {
  padding: 1rem;
  border: 1px solid var(--pgm-border);
  border-radius: .85rem;
  background: var(--pgm-panel-bg);
}

.pgm-contact-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
  margin-bottom: 0;
}

.pgm-contact-list li {
  margin-bottom: 0 !important;
  padding: .85rem;
  border: 1px solid var(--pgm-border);
  border-radius: .75rem;
  background: var(--pgm-muted-bg);
}

.pgm-contact-list strong {
  display: block;
  margin-bottom: .2rem;
  color: #6c757d;
  font-size: .82rem;
}

.pgm-contact-list a {
  overflow-wrap: anywhere;
}

.pgm-pagination .pagination {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .pgm-lead-card {
    position: sticky;
    top: 1rem;
  }
}

@media (max-width: 767.98px) {
  .pgm-contact-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .pgm-company-logo {
    width: 100%;
    height: 120px;
    flex-basis: auto;
  }

  .pgm-company-logo img {
    max-width: 100%;
    max-height: 100%;
  }
}

/* Compact public directory filter */
.pgm-directory-filter .card-body {
  padding: .85rem 1rem;
}

.pgm-directory-filter .form-label {
  margin-bottom: .25rem;
  font-size: .875rem;
}

.pgm-directory-filter .form-control,
.pgm-directory-filter .form-select,
.pgm-directory-filter .btn {
  min-height: 2.35rem;
  padding-top: .35rem;
  padding-bottom: .35rem;
}

.pgm-directory-filter .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.pgm-directory-filter .d-flex.gap-2 {
  flex-wrap: wrap;
}

.pgm-directory-filter .d-flex.gap-2 .btn {
  flex: 1 1 90px;
  min-width: 90px;
}

/* v1.3.6 - Directory frontend UX */
.pgm-directory-kicker {
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #6c757d;
}

.pgm-directory-summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
}

.pgm-directory-results-count {
  font-weight: 600;
  color: #343a40;
}

.pgm-active-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .4rem;
}

.pgm-active-filters__label {
  font-size: .875rem;
  color: #6c757d;
}

.pgm-filter-chip {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: .25rem .55rem;
  border: 1px solid var(--pgm-border);
  border-radius: 999px;
  background: #fff;
  font-size: .82rem;
  color: #495057;
}

.pgm-filter-actions .btn {
  min-width: 96px;
}

.pgm-company-card-logo {
  min-height: 118px;
  justify-content: center;
  border-bottom: 1px solid rgba(0, 0, 0, .055);
  background: linear-gradient(135deg, #ffffff, var(--pgm-soft-bg));
  text-decoration: none;
}

.pgm-company-card-logo:focus-visible,
.pgm-company-card-title a:focus-visible,
.pgm-company-meta-link:focus-visible,
.pgm-company-card-footer .btn:focus-visible {
  outline: 3px solid rgba(13, 110, 253, .35);
  outline-offset: 2px;
}

.pgm-company-card-logo__placeholder {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  border: 1px solid var(--pgm-border);
  background: var(--pgm-muted-bg);
  color: #6c757d;
  font-size: 2rem;
  font-weight: 700;
}

.pgm-company-card-title {
  margin-bottom: .35rem;
}

.pgm-company-meta {
  min-height: 1.3rem;
}

.pgm-company-meta-link {
  color: inherit;
  text-decoration: none;
}

.pgm-company-meta-link:hover {
  text-decoration: underline;
}

.pgm-company-meta-separator:first-child {
  display: none;
}

.pgm-company-card-summary {
  margin-bottom: 1rem;
  color: #4f5963;
}

.pgm-company-card-footer {
  display: flex;
  align-items: center;
}

.pgm-empty-state {
  padding: 1.25rem;
}

@media (max-width: 575.98px) {
  .pgm-directory-summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .pgm-company-card-logo {
    min-height: 104px;
  }
}


/* v1.3.8 - Category back navigation and softer public UI */
.pgm-category-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}

.pgm-company-card,
.pgm-lead-card,
.pgm-directory-filter,
.pgm-related-card,
.pgm-empty-state,
.pgm-company-view section.mb-4:not(.pgm-related-resources):not(.pgm-related-companies),
.pgm-company-header,
.pgm-related-resources {
  border-color: var(--pgm-border-strong);
}

.pgm-company-card,
.pgm-lead-card,
.pgm-directory-filter,
.pgm-related-card,
.pgm-company-view section.mb-4:not(.pgm-related-resources):not(.pgm-related-companies) {
  background-color: var(--pgm-panel-bg);
}

.pgm-company-card {
  border-top: 3px solid rgba(29, 121, 137, .22);
}

.pgm-company-card--featured,
.pgm-company-card--premium {
  border-top-color: rgba(222, 113, 13, .35);
}

.pgm-company-header {
  background: linear-gradient(135deg, #ffffff, #f2f7f8);
}

.pgm-lead-card {
  background: linear-gradient(180deg, #ffffff, #f6f9fa);
}

.pgm-directory-filter {
  background: #fbfcfd;
}

.pgm-contact-list li {
  background: #f5f8f9;
}

/* v1.3.9/1.3.10 - Visible, lightweight featured/premium labels */
.pgm-company-card__badges,
.pgm-company-badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .4rem;
}

.pgm-company-card__badges {
  margin-bottom: .65rem;
}

.pgm-company-badges {
  margin: .25rem 0 .75rem;
}

.pgm-company-badges--status {
  margin: .45rem 0 0;
}

.pgm-badge {
  display: inline-flex;
  align-items: center;
  gap: .32rem;
  padding: .28rem .64rem;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .01em;
  box-shadow: 0 .08rem .18rem rgba(20, 52, 60, .08);
  white-space: nowrap;
}

.pgm-badge::before {
  content: "";
  width: .46rem;
  height: .46rem;
  border-radius: 50%;
  background: currentColor;
  opacity: .78;
}

.pgm-badge--featured {
  color: #6f3b00;
  background: #fff0c2;
  border-color: #e0a128;
}

.pgm-badge--premium {
  color: #0a4955;
  background: #d7f3f6;
  border-color: #68bdc7;
}

.pgm-company-card--featured {
  border-top-color: rgba(222, 113, 13, .72);
}

.pgm-company-card--premium {
  border-top-color: rgba(29, 121, 137, .7);
}

.pgm-company-card--featured.pgm-company-card--premium {
  border-top-color: rgba(222, 113, 13, .72);
}


/* v1.3.11 - Company detail badges anchored to the lower right of the header */
.pgm-company-header-main {
  display: flex;
  flex-direction: column;
}

@media (min-width: 576px) {
  .pgm-company-header-main--with-logo {
    min-height: 140px;
  }

  .pgm-company-badges--status {
    margin: auto 0 0 auto;
    padding-top: .75rem;
    align-self: flex-end;
    justify-content: flex-end;
  }
}

@media (max-width: 575.98px) {
  .pgm-company-badges--status {
    margin: .65rem 0 0;
    align-self: flex-start;
    justify-content: flex-start;
  }
}

/* v1.3.13 - Real visible frame for company logos */
.pgm-company-card-logo {
  margin: 1rem 1rem 0;
  padding: .85rem;
  min-height: 118px;
  border: 1px solid var(--pgm-border-strong);
  border-radius: .85rem;
  background: #fff;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .72), 0 .18rem .45rem rgba(20, 52, 60, .045);
  overflow: hidden;
  background-clip: padding-box;
}

.pgm-company-card-logo img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 92px;
  object-fit: contain;
  position: relative;
  z-index: 1;
}

.pgm-company-card-logo__placeholder {
  position: relative;
  z-index: 1;
}

.pgm-company-logo {
  position: relative;
  overflow: hidden;
  border-color: var(--pgm-border-strong);
  background: #fff;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .72), 0 .18rem .45rem rgba(20, 52, 60, .045);
  background-clip: padding-box;
}

.pgm-company-logo img {
  width: auto;
  height: auto;
  position: relative;
  z-index: 1;
}

@media (max-width: 575.98px) {
  .pgm-company-card-logo {
    min-height: 104px;
  }

  .pgm-company-card-logo img {
    max-height: 78px;
  }
}

/* v1.3.14 - Safer company detail layout at tablet / 1024px widths
   Joomla/Cassiopeia can keep sidebars visible around 1024px, so the component
   column is narrower than the viewport. Do not let the company detail switch
   to a two-column Bootstrap layout until there is enough real content width. */
@media (max-width: 1199.98px) {
  .pgm-company-view > .row > .col-lg-8,
  .pgm-company-view > .row > .col-lg-4 {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
  }

  .pgm-company-view .pgm-lead-card {
    position: static;
    top: auto;
  }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .pgm-company-view .pgm-lead-card {
    margin-top: .25rem;
  }
}

/* v1.3.21 - Owner panel / Mis empresas foundation */
.pgm-owner-empty-state,
.pgm-owner-company-card {
  border-color: var(--pgm-border-strong);
  background: var(--pgm-panel-bg);
}

.pgm-owner-panel-summary {
  display: flex;
  flex-direction: column;
  gap: .35rem;
  padding: .85rem 1rem;
  border: 1px solid var(--pgm-border-strong);
  border-radius: .85rem;
  background: #fbfcfd;
}

.pgm-owner-company-card__layout {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
}

.pgm-owner-company-card__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 104px;
  padding: .75rem;
  border: 1px solid var(--pgm-border-strong);
  border-radius: .85rem;
  background: #fff;
  overflow: hidden;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .72), 0 .18rem .45rem rgba(20, 52, 60, .045);
}

.pgm-owner-company-card__logo img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 80px;
  object-fit: contain;
}

.pgm-owner-company-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  justify-content: flex-end;
}

.pgm-owner-status-row {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  align-items: center;
}

.pgm-badge--plan {
  color: #24444a;
  background: #eef5f6;
  border-color: rgba(29, 121, 137, .28);
}


.pgm-badge--plan-basic {
  color: #47545a;
  background: #f3f6f7;
  border-color: rgba(93, 112, 120, .24);
}

.pgm-badge--plan-professional {
  color: #24444a;
  background: #eef5f6;
  border-color: rgba(29, 121, 137, .28);
}

.pgm-badge--plan-premium {
  color: #0a4955;
  background: #d7f3f6;
  border-color: #68bdc7;
}

.pgm-badge--verified {
  color: #1e6f3b;
  background: #e8f7ee;
  border-color: #8fcfa2;
}

.pgm-badge--verified::before {
  content: "✓";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
  border-radius: 999px;
  background: #25804a;
  color: #fff;
  font-size: .74rem;
  font-weight: 900;
  line-height: 1;
  opacity: 1;
}

.pgm-badge--lead {
  color: #563f08;
  background: #fff5d8;
  border-color: #d8bd62;
}

.pgm-badge--locked {
  color: #6b1c1c;
  background: #fde6e6;
  border-color: #e1a0a0;
}

.pgm-owner-company-capabilities {
  padding: .85rem;
  border: 1px solid rgba(29, 121, 137, .16);
  border-radius: .75rem;
  background: #f8fafb;
}

.pgm-owner-company-capabilities strong,
.pgm-owner-company-capabilities span {
  display: block;
}

.pgm-owner-company-capabilities strong {
  font-size: .8rem;
  color: #5f6f73;
}

.pgm-owner-company-capabilities span {
  font-weight: 700;
}

@media (max-width: 575.98px) {
  .pgm-owner-company-card__layout {
    grid-template-columns: 1fr;
  }

  .pgm-owner-company-card__logo {
    min-height: 96px;
  }

  .pgm-owner-company-card__actions {
    justify-content: flex-start;
  }
}

/* v1.3.25 - Improved owner panel / Mis empresas visual hierarchy */
.pgm-mycompanies-header {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1.1rem 1.2rem;
  border: 1px solid var(--pgm-border-strong);
  border-radius: 1rem;
  background: linear-gradient(135deg, #ffffff 0%, #f6fbfc 100%);
}

.pgm-mycompanies-header__content {
  min-width: 0;
}

.pgm-mycompanies-header__actions {
  flex: 0 0 auto;
  display: flex;
  gap: .5rem;
  align-items: center;
}

.pgm-owner-panel-label {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: #1d7989;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.pgm-owner-panel-label::before {
  content: "";
  width: .5rem;
  height: .5rem;
  border-radius: 50%;
  background: #de710d;
}

.pgm-owner-panel-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 340px);
  gap: 1rem;
  align-items: stretch;
  padding: 1rem;
  border: 1px solid var(--pgm-border-strong);
  border-radius: 1rem;
  background: #fbfcfd;
}

.pgm-owner-panel-summary__main {
  min-width: 0;
}

.pgm-owner-panel-summary__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
}

.pgm-owner-stat {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 76px;
  padding: .75rem;
  border: 1px solid rgba(29, 121, 137, .16);
  border-radius: .85rem;
  background: #fff;
  text-align: center;
}

.pgm-owner-stat strong {
  color: #14343c;
  font-size: 1.35rem;
  line-height: 1.1;
}

.pgm-owner-stat span {
  color: #5f6f73;
  font-size: .78rem;
  font-weight: 600;
}

.pgm-owner-company-list {
  display: grid;
  gap: 1rem;
}

.pgm-owner-company-card {
  position: relative;
  border-color: var(--pgm-border-strong);
  background: #fff;
  border-top: 4px solid rgba(29, 121, 137, .28);
  box-shadow: 0 .28rem .8rem rgba(20, 52, 60, .055);
}

.pgm-owner-company-card--featured {
  border-top-color: rgba(222, 113, 13, .72);
}

.pgm-owner-company-card--premium:not(.pgm-owner-company-card--featured) {
  border-top-color: rgba(29, 121, 137, .75);
}

.pgm-owner-company-card--locked {
  border-top-color: rgba(131, 35, 32, .72);
}

.pgm-owner-company-card__layout {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  gap: 1.15rem;
  align-items: start;
}

.pgm-owner-company-card__logo {
  min-height: 122px;
  padding: .8rem;
  border: 1px solid var(--pgm-border-strong);
  border-radius: .9rem;
  background: #fff;
}

.pgm-owner-company-card__logo img {
  max-height: 92px;
}

.pgm-owner-company-card__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: start;
  margin-bottom: .8rem;
}

.pgm-owner-company-card__identity h2 {
  color: #14343c;
}

.pgm-owner-company-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  justify-content: flex-end;
}

.pgm-owner-status-row {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  align-items: center;
  padding-bottom: .8rem;
  border-bottom: 1px solid rgba(29, 121, 137, .12);
}

.pgm-owner-company-card__summary {
  padding: .8rem .9rem;
  border: 1px solid rgba(29, 121, 137, .12);
  border-radius: .85rem;
  background: #f8fafb;
}

.pgm-owner-company-card__summary strong {
  display: block;
  margin-bottom: .25rem;
  color: #44585e;
  font-size: .8rem;
}

.pgm-owner-company-card__summary p {
  margin: 0;
  color: #506367;
}

.pgm-owner-company-card__section-title {
  margin-bottom: .55rem;
  color: #14343c;
  font-size: .86rem;
  font-weight: 700;
}

.pgm-owner-company-capabilities {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
  padding: 0;
  border: 0;
  background: transparent;
}

.pgm-owner-capability {
  min-height: 74px;
  padding: .75rem;
  border: 1px solid rgba(29, 121, 137, .16);
  border-radius: .8rem;
  background: #f8fafb;
}

.pgm-owner-capability span,
.pgm-owner-capability strong {
  display: block;
}

.pgm-owner-capability span {
  color: #607176;
  font-size: .78rem;
  font-weight: 600;
}

.pgm-owner-capability strong {
  margin-top: .15rem;
  color: #14343c;
  font-size: 1.1rem;
}

.pgm-owner-next-areas {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}

.pgm-owner-next-areas span {
  display: inline-flex;
  align-items: center;
  padding: .25rem .55rem;
  border: 1px dashed rgba(29, 121, 137, .25);
  border-radius: 999px;
  background: #fbfcfd;
  color: #607176;
  font-size: .78rem;
  font-weight: 600;
}

@media (max-width: 1199.98px) {
  .pgm-mycompanies-header,
  .pgm-owner-panel-summary,
  .pgm-owner-company-card__header {
    grid-template-columns: 1fr;
  }

  .pgm-mycompanies-header {
    display: block;
  }

  .pgm-mycompanies-header__actions {
    margin-top: .85rem;
  }

  .pgm-owner-company-card__layout {
    grid-template-columns: 1fr;
  }

  .pgm-owner-company-card__logo {
    max-width: 150px;
  }

  .pgm-owner-company-card__actions {
    justify-content: flex-start;
  }
}

@media (max-width: 575.98px) {
  .pgm-owner-panel-summary__stats,
  .pgm-owner-company-capabilities {
    grid-template-columns: 1fr;
  }

  .pgm-owner-company-card__logo {
    max-width: none;
    min-height: 100px;
  }
}

/* v1.3.27 - Mis empresas: avoid compressed identity column
   The owner panel usually sits inside Cassiopeia with sidebars. At some viewport
   widths the component column is narrower than the viewport, so the company
   identity must not compete horizontally with action buttons. */
.pgm-owner-company-card__header {
  grid-template-columns: 1fr;
  gap: .75rem;
}

.pgm-owner-company-card__identity {
  min-width: 0;
  max-width: 100%;
}

.pgm-owner-company-card__identity h2 {
  margin-bottom: .25rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.pgm-owner-company-card__identity p {
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.pgm-owner-company-card__actions {
  justify-content: flex-start;
  width: 100%;
}

@media (min-width: 1200px) {
  .pgm-owner-company-card__actions {
    padding-top: .15rem;
  }
}

@media (max-width: 1399.98px) {
  .pgm-owner-company-card__layout {
    grid-template-columns: 118px minmax(0, 1fr);
  }

  .pgm-owner-company-card__logo {
    min-height: 108px;
  }

  .pgm-owner-company-card__logo img {
    max-height: 82px;
  }
}

/* v1.3.28 - Mis empresas: softer card container, rounded corners and subtle depth */
.pgm-owner-company-card {
  border: 1px solid rgba(29, 121, 137, .18);
  border-top-width: 4px;
  border-radius: 1.15rem;
  overflow: hidden;
  background: linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
  box-shadow: 0 .45rem 1.25rem rgba(20, 52, 60, .075);
}

.pgm-owner-company-card:hover {
  box-shadow: 0 .6rem 1.45rem rgba(20, 52, 60, .095);
}

.pgm-owner-company-card > .card-body {
  border-radius: inherit;
}

.pgm-owner-company-card__logo,
.pgm-owner-company-card__summary,
.pgm-owner-capability {
  box-shadow: 0 .18rem .55rem rgba(20, 52, 60, .045);
}

/* v1.3.29 - Mis empresas: plan permissions panel */
.pgm-owner-plan-panel {
  padding: .95rem;
  border: 1px solid rgba(29, 121, 137, .15);
  border-radius: 1rem;
  background: linear-gradient(135deg, #ffffff 0%, #f6fbfc 100%);
  box-shadow: 0 .18rem .55rem rgba(20, 52, 60, .045);
}

.pgm-owner-plan-panel__header {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: .85rem;
  padding-bottom: .8rem;
  border-bottom: 1px solid rgba(29, 121, 137, .12);
}

.pgm-owner-plan-panel__header .pgm-badge {
  flex: 0 0 auto;
}

.pgm-owner-plan-features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
}

.pgm-owner-plan-feature {
  display: grid;
  grid-template-columns: 1.75rem minmax(0, 1fr);
  gap: .55rem;
  min-height: 74px;
  padding: .7rem .75rem;
  border: 1px solid rgba(29, 121, 137, .14);
  border-radius: .85rem;
  background: #fff;
}

.pgm-owner-plan-feature__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.55rem;
  height: 1.55rem;
  border-radius: 999px;
  font-weight: 800;
  line-height: 1;
}

.pgm-owner-plan-feature--enabled .pgm-owner-plan-feature__icon {
  color: #245a2f;
  background: #e3f5e8;
}

.pgm-owner-plan-feature--disabled .pgm-owner-plan-feature__icon {
  color: #607176;
  background: #eef2f3;
}

.pgm-owner-plan-feature__body strong,
.pgm-owner-plan-feature__body span,
.pgm-owner-plan-feature__body em {
  display: block;
}

.pgm-owner-plan-feature__body strong {
  color: #14343c;
  font-size: .9rem;
}

.pgm-owner-plan-feature__body span {
  margin-top: .12rem;
  color: #607176;
  font-size: .78rem;
  line-height: 1.35;
}

.pgm-owner-plan-feature__body em {
  margin-top: .28rem;
  color: #1d7989;
  font-size: .72rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.pgm-owner-plan-feature--disabled .pgm-owner-plan-feature__body em {
  color: #607176;
}

@media (max-width: 991.98px) {
  .pgm-owner-plan-features {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .pgm-owner-plan-panel__header {
    flex-direction: column;
    gap: .6rem;
  }
}

/* Mis empresas: publication state badge aligned with PGM chip aesthetics */
.pgm-owner-publication-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.75rem;
  padding: .25rem .62rem;
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.2;
  border: 1px solid transparent;
  white-space: nowrap;
}

.pgm-owner-publication-badge--published {
  color: #245a2f;
  background: #e7f5eb;
  border-color: rgba(36, 90, 47, .24);
}

.pgm-owner-publication-badge--unpublished,
.pgm-owner-publication-badge--other {
  color: #4b5563;
  background: #f3f5f6;
  border-color: rgba(75, 85, 99, .22);
}

.pgm-owner-publication-badge--trashed {
  color: #7f1d1d;
  background: #fce8e8;
  border-color: rgba(127, 29, 29, .22);
}

/* v1.3.31 - Edición frontend controlada de ficha */
.pgm-mycompanyedit-view .pgm-mycompanyedit-card {
  border-radius: 18px;
  border: 1px solid rgba(29, 121, 137, .18);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .055);
  overflow: hidden;
}

.pgm-mycompanyedit-summary {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
  padding: 1rem;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(29, 121, 137, .06), rgba(222, 113, 13, .045));
  border: 1px solid rgba(29, 121, 137, .12);
}

.pgm-mycompanyedit-summary__body {
  min-width: 0;
}

.pgm-mycompanyedit-summary__body h2,
.pgm-mycompanyedit-summary__body p {
  overflow-wrap: anywhere;
}

.pgm-mycompanyedit-summary__actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.pgm-mycompanyedit-notice {
  border-radius: 14px;
}

.pgm-mycompanyedit-form {
  display: grid;
  gap: 1.25rem;
}

.pgm-mycompanyedit-section {
  padding: 1rem;
  border: 1px solid rgba(29, 121, 137, .14);
  border-radius: 16px;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 4px 16px rgba(0, 0, 0, .03);
}

.pgm-mycompanyedit-section h2 {
  margin-bottom: 1rem;
}

.pgm-mycompanyedit-readonly {
  background: rgba(248, 250, 249, .95);
  border-style: dashed;
}

.pgm-mycompanyedit-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  justify-content: flex-start;
  align-items: center;
}

.pgm-mycompanyedit-form textarea.form-control {
  min-height: 8rem;
}

@media (max-width: 991.98px) {
  .pgm-mycompanyedit-summary {
    grid-template-columns: 80px minmax(0, 1fr);
  }

  .pgm-mycompanyedit-summary__actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }
}

@media (max-width: 575.98px) {
  .pgm-mycompanyedit-summary {
    grid-template-columns: 1fr;
  }

  .pgm-mycompanyedit-summary .pgm-owner-company-card__logo {
    width: 88px;
    height: 88px;
  }
}


/* Owner pending review state */
.pgm-badge--pending {
  color: #4c3600;
  background: #fff8df;
  border-color: rgba(222, 113, 13, .35);
}

.pgm-mycompanyedit-notice.alert-warning {
  border-color: rgba(222, 113, 13, .28);
  background: #fff8e8;
  color: #5c3c00;
}

/* v1.3.39 - Mis empresas: pagination and compact plan details for many assigned companies */
.pgm-owner-list-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .85rem 1rem;
  border: 1px solid rgba(29, 121, 137, .14);
  border-radius: 1rem;
  background: #fbfcfd;
}

.pgm-owner-list-toolbar__pagination .pagination {
  margin-bottom: 0;
}

.pgm-owner-plan-details {
  display: block;
}

.pgm-owner-plan-details__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
  list-style: none;
}

.pgm-owner-plan-details__summary::-webkit-details-marker {
  display: none;
}

.pgm-owner-plan-details__summary span:first-child {
  min-width: 0;
}

.pgm-owner-plan-details__summary strong,
.pgm-owner-plan-details__summary em {
  display: block;
}

.pgm-owner-plan-details__summary strong {
  color: #14343c;
  font-size: .86rem;
}

.pgm-owner-plan-details__summary em {
  margin-top: .15rem;
  color: #607176;
  font-size: .8rem;
  font-style: normal;
  line-height: 1.35;
}

.pgm-owner-plan-details__toggle {
  flex: 0 0 auto;
  padding: .25rem .6rem;
  border: 1px solid rgba(29, 121, 137, .2);
  border-radius: 999px;
  color: #1d7989;
  background: #fff;
  font-size: .74rem;
  font-weight: 700;
}

.pgm-owner-plan-details[open] .pgm-owner-plan-details__summary {
  margin-bottom: .85rem;
  padding-bottom: .8rem;
  border-bottom: 1px solid rgba(29, 121, 137, .12);
}

@media (max-width: 767.98px) {
  .pgm-owner-list-toolbar,
  .pgm-owner-plan-details__summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .pgm-owner-list-toolbar__pagination {
    width: 100%;
  }
}

/* v1.3.43 - Native-style Joomla pagination consistency */
.pgm-pagination-navigation {
  clear: both;
}

.pgm-pagination-navigation::after {
  content: "";
  display: block;
  clear: both;
}

.pgm-pagination-counter {
  color: #6c757d;
  font-size: .9rem;
}

.pgm-pagination .pagination__wrapper,
.pgm-pagination .pagination {
  margin-bottom: 1.5rem;
}

/* v1.3.44 - Frontend limit selector consistency */
.pgm-pagination-limit .form-select {
  min-width: 6rem;
}

/* v1.3.46 - Mis empresas compact header/summary */
.pgm-mycompanies-header {
  padding: .95rem 1.1rem;
  margin-bottom: 1rem !important;
}

.pgm-mycompanies-header .pgm-directory-kicker {
  margin-bottom: .25rem !important;
}

.pgm-mycompanies-header h1 {
  margin-bottom: .35rem;
}

.pgm-mycompanies-header .text-muted {
  max-width: 62rem;
  line-height: 1.45;
}

.pgm-owner-panel-summary--compact {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
  align-items: center;
  padding: .75rem .85rem;
  margin-bottom: 1rem !important;
}

.pgm-owner-panel-summary--compact .pgm-owner-panel-summary__main {
  display: flex;
  align-items: center;
  min-height: 2.6rem;
}

.pgm-owner-panel-summary--compact .pgm-owner-panel-summary__stats {
  gap: .5rem;
}

.pgm-owner-panel-summary--compact .pgm-owner-stat {
  min-height: 56px;
  padding: .55rem .65rem;
}

.pgm-owner-panel-summary--compact .pgm-owner-stat strong {
  font-size: 1.12rem;
}

.pgm-owner-panel-summary--compact .pgm-owner-stat span {
  font-size: .74rem;
}

@media (max-width: 767.98px) {
  .pgm-owner-panel-summary--compact {
    grid-template-columns: 1fr;
  }
}

/* v1.3.51 - Frontend owner logo upload */
.pgm-mycompanyedit-logo-box {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.pgm-mycompanyedit-logo-box__preview {
  width: 86px;
  height: 86px;
  flex: 0 0 86px;
  border: 1px solid rgba(0, 0, 0, .1);
  border-radius: 1rem;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.pgm-mycompanyedit-logo-box__preview img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.pgm-mycompanyedit-logo-box__field {
  flex: 1 1 auto;
  min-width: 0;
}

@media (max-width: 575.98px) {
  .pgm-mycompanyedit-logo-box {
    align-items: stretch;
    flex-direction: column;
  }
}


/* v1.3.71 - Edición frontend: organización visual adaptativa en escritorio estrecho */
.pgm-mycompanyedit-section {
  position: relative;
}

.pgm-mycompanyedit-section h2 {
  margin-bottom: .35rem;
}

.pgm-mycompanyedit-section > .text-muted.small {
  max-width: 70ch;
  margin-bottom: 1rem !important;
}

.pgm-mycompanyedit-field-grid {
  display: grid;
  gap: 1rem;
  align-items: start;
}

.pgm-mycompanyedit-field-grid--two,
.pgm-mycompanyedit-field-grid--location,
.pgm-mycompanyedit-field-grid--contact {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
}

.pgm-mycompanyedit-field {
  min-width: 0;
  padding: .85rem;
  border: 1px solid rgba(29, 121, 137, .10);
  border-radius: 14px;
  background: rgba(248, 250, 252, .72);
}

.pgm-mycompanyedit-field .form-label {
  display: flex;
  align-items: center;
  min-height: 2.1rem;
  margin-bottom: .35rem;
  font-weight: 700;
  line-height: 1.2;
}

.pgm-mycompanyedit-field .form-text {
  margin-top: .45rem;
  line-height: 1.35;
}

.pgm-mycompanyedit-field--category,
.pgm-mycompanyedit-field--contact-person {
  grid-column: span 2;
}

@media (min-width: 1200px) {
  .pgm-mycompanyedit-view .pgm-mycompanyedit-card > .card-body {
    padding: 1.5rem;
  }
}

@media (max-width: 1199.98px) {
  .pgm-mycompanyedit-field--category,
  .pgm-mycompanyedit-field--contact-person {
    grid-column: auto;
  }
}

@media (max-width: 575.98px) {
  .pgm-mycompanyedit-section {
    padding: .85rem;
  }

  .pgm-mycompanyedit-field {
    padding: 0;
    border: 0;
    background: transparent;
  }

  .pgm-mycompanyedit-field .form-label {
    min-height: 0;
  }
}

/* v1.3.72 - Public company profile layout polish */
.pgm-company-layout {
  align-items: flex-start;
}

.pgm-company-main-stack,
.pgm-company-sidebar-stack {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.pgm-company-main-stack .pgm-company-header,
.pgm-company-main-stack .pgm-company-summary-panel,
.pgm-company-main-stack .pgm-company-section,
.pgm-company-main-stack .pgm-related-resources,
.pgm-company-main-stack .pgm-related-companies,
.pgm-company-main-stack .pgm-company-jobs,
.pgm-company-info-card,
.pgm-company-contact-card {
  border: 1px solid var(--pgm-border-strong);
  border-radius: .95rem;
  box-shadow: var(--pgm-card-shadow);
}

.pgm-company-summary-panel,
.pgm-company-section,
.pgm-related-companies,
.pgm-company-jobs {
  padding: 1.15rem;
  background: #fff;
}

.pgm-company-summary-panel {
  background: linear-gradient(135deg, #ffffff, var(--pgm-brand-soft));
}

.pgm-company-summary-panel .lead {
  color: #2f3c42;
  font-size: clamp(1.02rem, .98rem + .18vw, 1.18rem);
  line-height: 1.65;
}

.pgm-company-section h2,
.pgm-related-resources h2,
.pgm-related-companies h2,
.pgm-company-jobs h2,
.pgm-company-info-card h2,
.pgm-company-contact-card h2,
.pgm-lead-card h2 {
  letter-spacing: -.01em;
}

.pgm-company-section h2,
.pgm-related-resources h2,
.pgm-related-companies h2,
.pgm-company-jobs h2 {
  margin-bottom: .8rem;
  padding-bottom: .45rem;
  border-bottom: 1px solid rgba(196, 213, 220, .72);
}

.pgm-company-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.pgm-company-detail-grid .pgm-company-section {
  min-width: 0;
}

.pgm-company-definition-list {
  display: grid;
  gap: .75rem;
  margin: 0;
}

.pgm-company-definition-list > div,
.pgm-company-sidebar .pgm-contact-list li {
  padding: .85rem;
  border: 1px solid var(--pgm-border);
  border-radius: .8rem;
  background: #f5f8f9;
}

.pgm-company-definition-list dt,
.pgm-company-sidebar .pgm-contact-list strong {
  margin-bottom: .22rem;
  color: #6c757d;
  font-size: .82rem;
  font-weight: 700;
}

.pgm-company-definition-list dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.pgm-company-definition-list a {
  text-decoration: none;
}

.pgm-company-definition-list a:hover {
  text-decoration: underline;
}

.pgm-company-sidebar .pgm-contact-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: .65rem;
}

.pgm-company-info-card,
.pgm-company-contact-card,
.pgm-lead-card {
  overflow: hidden;
}

.pgm-company-info-card .card-body,
.pgm-company-contact-card .card-body,
.pgm-lead-card .card-body {
  padding: 1rem;
}

@media (min-width: 1200px) {
  .pgm-company-sidebar-stack {
    position: sticky;
    top: 1rem;
  }

  .pgm-company-sidebar-stack .pgm-lead-card {
    position: static;
    top: auto;
  }
}

@media (max-width: 1399.98px) {
  .pgm-company-detail-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .pgm-company-summary-panel,
  .pgm-company-section,
  .pgm-related-companies,
  .pgm-company-jobs {
    padding: 1rem;
  }

  .pgm-company-info-card .card-body,
  .pgm-company-contact-card .card-body,
  .pgm-lead-card .card-body {
    padding: .95rem;
  }
}

/* v1.3.74 - Compact public company status badges */
@media (min-width: 576px) {
  .pgm-company-header .pgm-company-badges--status {
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: .35rem;
    width: max-content;
    max-width: 100%;
  }

  .pgm-company-header .pgm-company-badges--status .pgm-badge {
    flex: 0 0 auto;
    padding: .24rem .56rem;
    font-size: .74rem;
  }
}

/* v1.3.90 - Public jobs logo placement polish */
.pgm-jobs-view,
.pgm-job-view {
  --pgm-border: #d8e2e7;
  --pgm-border-strong: #c4d5dc;
  --pgm-soft-bg: #f6f9fa;
  --pgm-panel-bg: #fbfcfd;
  --pgm-muted-bg: #f0f5f6;
  --pgm-card-shadow: 0 .45rem 1.15rem rgba(20, 52, 60, .055);
}

.pgm-jobs-filter-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .85rem 1rem;
  align-items: end;
}

.pgm-jobs-filter-actions {
  display: flex;
  flex-wrap: nowrap;
  gap: .5rem;
  align-items: center;
}

.pgm-jobs-filter-actions .btn {
  flex: 1 1 0;
  min-width: 0;
  white-space: nowrap;
}

.pgm-jobs-list {
  display: grid;
  gap: 1rem;
}

.pgm-job-card {
  border-color: var(--pgm-border-strong);
  border-top: 3px solid rgba(29, 121, 137, .24);
  border-radius: .9rem;
  background: #fff;
  box-shadow: var(--pgm-card-shadow);
}

.pgm-job-card--featured {
  border-top-color: rgba(222, 113, 13, .72);
}

.pgm-job-card__body--with-logo {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
}

.pgm-job-card__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 96px;
  min-height: 78px;
  padding: .55rem;
  border: 1px solid var(--pgm-border-strong);
  border-radius: .8rem;
  background: #fff;
  text-decoration: none;
}

.pgm-job-card__logo img {
  max-width: 100%;
  max-height: 60px;
  object-fit: contain;
}

.pgm-job-card__logo-placeholder {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  border: 1px solid var(--pgm-border);
  background: var(--pgm-muted-bg);
  color: #6c757d;
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1;
}

.pgm-job-card__content {
  min-width: 0;
}

.pgm-job-card__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: .55rem;
  align-items: start;
}

.pgm-job-card__title-block h2 a {
  color: inherit;
  text-decoration: none;
}

.pgm-job-card__title-block h2 a:hover {
  text-decoration: underline;
}

.pgm-job-card__title-block {
  min-width: 0;
}

.pgm-job-card__title-block h2 {
  max-width: none;
}


.pgm-job-card__meta,
.pgm-job-header__meta {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem .65rem;
  align-items: center;
}

.pgm-job-card__meta a,
.pgm-job-header__meta a {
  color: inherit;
  text-decoration: none;
}

.pgm-job-card__meta a:hover,
.pgm-job-header__meta a:hover {
  text-decoration: underline;
}

.pgm-job-card__meta > * + *::before,
.pgm-job-header__meta > * + *::before {
  content: "·";
  margin-right: .65rem;
  color: #adb5bd;
}

.pgm-job-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  justify-content: flex-start;
}

.pgm-job-tag {
  display: inline-flex;
  align-items: center;
  padding: .25rem .55rem;
  border: 1px solid rgba(29, 121, 137, .2);
  border-radius: 999px;
  background: #f3f8f9;
  color: #2c5962;
  font-size: .78rem;
  font-weight: 700;
  white-space: nowrap;
}

.pgm-job-card__summary {
  margin: .9rem 0 1rem;
  color: #4f5963;
}

.pgm-job-card__footer {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  align-items: center;
  justify-content: space-between;
}

.pgm-job-header,
.pgm-job-section,
.pgm-job-side-card,
.pgm-job-apply-card {
  border-color: var(--pgm-border-strong);
  border-radius: .9rem;
  box-shadow: var(--pgm-card-shadow);
}

.pgm-job-section {
  padding: 1.15rem;
  background: #fff;
  border: 1px solid var(--pgm-border-strong);
}

.pgm-job-description {
  color: #343a40;
}

.pgm-job-header__brand--with-logo {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 1rem;
  align-items: center;
}

.pgm-job-header__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  min-height: 96px;
  padding: .75rem;
  border: 1px solid var(--pgm-border-strong);
  border-radius: .9rem;
  background: #fff;
  text-decoration: none;
}

.pgm-job-header__logo img {
  max-width: 100%;
  max-height: 74px;
  object-fit: contain;
}

.pgm-job-header__content {
  min-width: 0;
}

.pgm-job-detail-list {
  grid-template-columns: 1fr;
}

.pgm-job-company-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 96px;
  padding: .75rem;
  border: 1px solid var(--pgm-border-strong);
  border-radius: .85rem;
  background: #fff;
}

.pgm-job-company-logo img {
  max-width: 100%;
  max-height: 72px;
  object-fit: contain;
}

.pgm-job-company-logo-placeholder {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 62px;
  height: 62px;
  border-radius: 50%;
  border: 1px solid var(--pgm-border);
  background: var(--pgm-muted-bg);
  color: #6c757d;
  font-size: 1.65rem;
  font-weight: 700;
  line-height: 1;
}

.pgm-job-company-card {
  border-top: 3px solid rgba(29, 121, 137, .24);
}

.pgm-job-company-card .pgm-job-company-logo {
  min-height: 88px;
}

@media (max-width: 1199.98px) {
  .pgm-job-view > .row > .col-lg-8,
  .pgm-job-view > .row > .col-lg-4 {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
  }
}

@media (max-width: 991.98px) {
  .pgm-jobs-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pgm-job-card__body--with-logo {
    grid-template-columns: 76px minmax(0, 1fr);
    gap: .85rem;
  }

  .pgm-job-card__logo {
    width: 76px;
    min-height: 66px;
  }

  .pgm-job-card__logo img {
    max-height: 48px;
  }

  .pgm-job-card__logo-placeholder {
    width: 48px;
    height: 48px;
    font-size: 1.35rem;
  }

  .pgm-job-header__brand--with-logo {
    grid-template-columns: 92px minmax(0, 1fr);
    align-items: start;
  }

  .pgm-job-header__logo {
    width: 92px;
    min-height: 78px;
  }

  .pgm-job-header__logo img {
    max-height: 58px;
  }

  .pgm-job-card__header {
    grid-template-columns: 1fr;
  }

  .pgm-job-card__tags {
    justify-content: flex-start;
  }
}

@media (max-width: 575.98px) {
  .pgm-jobs-filter-grid {
    grid-template-columns: 1fr;
  }

  .pgm-jobs-filter-actions {
    flex-wrap: wrap;
  }

  .pgm-jobs-filter-actions .btn {
    flex: 1 1 96px;
  }

  .pgm-job-card__body--with-logo,
  .pgm-job-header__brand--with-logo {
    grid-template-columns: 1fr;
  }

  .pgm-job-card__logo,
  .pgm-job-header__logo {
    width: 100%;
    min-height: 72px;
  }

  .pgm-job-card__logo img,
  .pgm-job-header__logo img {
    max-height: 54px;
  }

  .pgm-job-card__logo-placeholder {
    width: 54px;
    height: 54px;
    font-size: 1.45rem;
  }

  .pgm-job-card__footer {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* v1.3.87 - Active jobs block inside public company profile */
.pgm-company-jobs__header {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: .75rem 1rem;
  margin-bottom: 1rem;
}

.pgm-company-jobs__header h2 {
  margin-bottom: .35rem;
}

.pgm-company-jobs__header .btn {
  flex: 0 0 auto;
}

.pgm-company-jobs__list {
  gap: .85rem;
}

.pgm-company-jobs .pgm-job-card__title-block h3 a {
  color: inherit;
  text-decoration: none;
}

.pgm-company-jobs .pgm-job-card__title-block h3 a:hover {
  text-decoration: underline;
}

@media (max-width: 575.98px) {
  .pgm-company-jobs__header {
    flex-direction: column;
  }

  .pgm-company-jobs__header .btn {
    width: 100%;
  }
}

/* v1.3.88 - Public company active jobs block spacing polish */
.pgm-company-jobs .pgm-job-card .card-body {
  padding: 1rem 1.1rem;
}

.pgm-company-jobs .pgm-job-card__header {
  grid-template-columns: minmax(0, 1fr);
  gap: .65rem;
}

.pgm-company-jobs .pgm-job-card__title-block {
  min-width: 0;
}

.pgm-company-jobs .pgm-company-card__badges {
  margin-bottom: .55rem !important;
}

.pgm-company-jobs .pgm-job-card__title-block h3 {
  margin-bottom: .45rem !important;
  line-height: 1.28;
}

.pgm-company-jobs .pgm-job-card__tags {
  justify-content: flex-start;
}

.pgm-company-jobs .pgm-job-card__meta {
  margin-top: .15rem;
}

.pgm-company-jobs .pgm-job-card__summary {
  margin: .85rem 0 1rem;
  line-height: 1.55;
}

.pgm-company-jobs .pgm-job-card__footer {
  padding-top: .25rem;
}

/* PortalGraf Market v1.3.93 - datos bajo oferta y candidatura bajo empresa */
.pgm-job-details-card--main {
  margin-top: 0;
}

.pgm-job-details-card--main .card-body,
.pgm-job-apply-card--sidebar .card-body {
  padding: 1.15rem;
}

.pgm-job-details-card--main .pgm-job-detail-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem 1rem;
}

.pgm-job-details-card--main .pgm-job-detail-list li {
  min-width: 0;
}

.pgm-job-apply-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  align-items: center;
}

.pgm-job-apply-card--sidebar .pgm-job-apply-actions {
  align-items: stretch;
  flex-direction: column;
}

.pgm-job-apply-card--sidebar .pgm-job-apply-actions .btn {
  width: 100%;
}

@media (max-width: 767.98px) {
  .pgm-job-details-card--main .pgm-job-detail-list {
    grid-template-columns: 1fr;
  }

  .pgm-job-apply-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .pgm-job-apply-actions .btn {
    width: 100%;
  }
}

/* PortalGraf Market v1.3.122 - Private jobs visual unification inside owner area */
.pgm-myjobs-view {
  --pgm-owner-card-shadow: 0 .28rem .8rem rgba(20, 52, 60, .055);
}

.pgm-myjobs-header {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
}

.pgm-myjobs-header__content {
  min-width: 0;
}

.pgm-myjobs-header__actions {
  flex: 0 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  align-items: center;
  justify-content: flex-end;
}

.pgm-myjobs-view .pgm-btn-soon {
  opacity: .8;
}

.pgm-myjobs-companies-panel {
  border-color: var(--pgm-border-strong);
  border-top: 4px solid rgba(29, 121, 137, .46);
  border-radius: 1rem;
  background: #fff;
  box-shadow: var(--pgm-owner-card-shadow);
}

.pgm-myjobs-companies-panel .card-body {
  padding: 1rem;
}

.pgm-myjobs-companies-panel__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: start;
  margin-bottom: 1rem;
  padding-bottom: .9rem;
  border-bottom: 1px solid rgba(29, 121, 137, .12);
}

.pgm-myjobs-companies-panel__header h2 {
  color: #14343c;
}

.pgm-myjobs-company-usage-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: .75rem;
}

.pgm-myjobs-company-usage {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .75rem;
  align-items: center;
  padding: .85rem;
  border: 1px solid rgba(29, 121, 137, .16);
  border-radius: .85rem;
  background: #f8fafb;
}

.pgm-myjobs-company-usage--disabled {
  opacity: .72;
}

.pgm-myjobs-company-usage__body {
  min-width: 0;
}

.pgm-myjobs-company-usage__identity {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  align-items: center;
  margin-bottom: .35rem;
}

.pgm-myjobs-company-usage strong {
  display: block;
  color: #14343c;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.pgm-myjobs-company-usage__quota {
  display: block;
  color: #607176;
  font-size: .875rem;
  font-weight: 600;
}

.pgm-myjobs-company-usage__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  justify-content: flex-end;
}

.pgm-myjobs-list {
  display: grid;
  gap: 1rem;
}

.pgm-myjobs-card {
  border-color: var(--pgm-border-strong);
  border-top: 4px solid rgba(29, 121, 137, .28);
  border-radius: 1rem;
  background: #fff;
  box-shadow: var(--pgm-owner-card-shadow);
}

.pgm-myjobs-card--published {
  border-top-color: rgba(29, 121, 137, .72);
}

.pgm-myjobs-card--pending {
  border-top-color: rgba(222, 113, 13, .72);
}

.pgm-myjobs-card--unpublished,
.pgm-myjobs-card--draft,
.pgm-myjobs-card--archived,
.pgm-myjobs-card--other {
  border-top-color: rgba(108, 117, 125, .55);
}

.pgm-myjobs-card .card-body {
  padding: 1rem;
}

.pgm-myjobs-card__header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: flex-start;
  padding-bottom: .85rem;
  border-bottom: 1px solid rgba(29, 121, 137, .12);
}

.pgm-myjobs-card__title-block {
  min-width: 0;
}

.pgm-myjobs-card__title-block h2 {
  margin-top: .5rem;
  color: #14343c;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.pgm-myjobs-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  justify-content: flex-end;
}

.pgm-myjobs-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem .9rem;
  margin: .85rem 0;
  color: #607176;
  font-size: .9rem;
}

.pgm-myjobs-card__meta span {
  display: inline-flex;
  align-items: center;
  gap: .2rem;
}

.pgm-myjobs-card__meta strong {
  color: #14343c;
}

.pgm-myjobs-card__summary {
  padding: .8rem .9rem;
  border: 1px solid rgba(29, 121, 137, .12);
  border-radius: .85rem;
  background: #f8fafb;
  color: #506367;
  line-height: 1.55;
}

.pgm-myjobs-card__footer {
  margin-top: .85rem;
}

.pgm-myjobs-card__company-link {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  color: #1d7989;
  font-size: .875rem;
  font-weight: 700;
  text-decoration: none;
}

.pgm-myjobs-card__company-link:hover,
.pgm-myjobs-card__company-link:focus {
  color: #de710d;
  text-decoration: underline;
}

.pgm-owner-publication-badge--published,
.pgm-owner-publication-badge--pending,
.pgm-owner-publication-badge--unpublished,
.pgm-owner-publication-badge--draft,
.pgm-owner-publication-badge--archived,
.pgm-owner-publication-badge--other {
  display: inline-flex;
  align-items: center;
  border: 1px solid transparent;
  border-radius: 999px;
  padding: .22rem .55rem;
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.2;
}

.pgm-owner-publication-badge--published {
  background: rgba(25, 135, 84, .12);
  border-color: rgba(25, 135, 84, .22);
  color: #146c43;
}

.pgm-owner-publication-badge--pending {
  background: rgba(222, 113, 13, .13);
  border-color: rgba(222, 113, 13, .26);
  color: #7a3d05;
}

.pgm-owner-publication-badge--unpublished,
.pgm-owner-publication-badge--draft,
.pgm-owner-publication-badge--other {
  background: rgba(108, 117, 125, .12);
  border-color: rgba(108, 117, 125, .22);
  color: #495057;
}

.pgm-owner-publication-badge--archived {
  background: rgba(33, 37, 41, .12);
  border-color: rgba(33, 37, 41, .22);
  color: #343a40;
}

@media (max-width: 1199.98px) {
  .pgm-myjobs-header,
  .pgm-myjobs-companies-panel__header,
  .pgm-myjobs-company-usage,
  .pgm-myjobs-card__header {
    grid-template-columns: 1fr;
  }

  .pgm-myjobs-header {
    display: block;
  }

  .pgm-myjobs-header__actions {
    justify-content: flex-start;
    margin-top: .85rem;
  }

  .pgm-myjobs-card__actions,
  .pgm-myjobs-company-usage__actions {
    justify-content: flex-start;
  }
}

@media (max-width: 767.98px) {
  .pgm-myjobs-header__actions,
  .pgm-myjobs-company-usage__actions,
  .pgm-myjobs-card__actions {
    width: 100%;
    justify-content: stretch;
  }

  .pgm-myjobs-header__actions .btn,
  .pgm-myjobs-company-usage__actions .btn,
  .pgm-myjobs-card__actions .btn {
    width: 100%;
  }
}

/* PortalGraf Market v1.3.123 - My jobs company usage actions width fix */
.pgm-myjobs-company-usage {
  grid-template-columns: minmax(18rem, 1fr) minmax(11rem, max-content);
}

.pgm-myjobs-company-usage__actions {
  flex-direction: column;
  align-items: flex-end;
  min-width: 11rem;
}

.pgm-myjobs-company-usage__actions .btn {
  width: 100%;
  max-width: 13.5rem;
  white-space: normal;
  text-align: center;
}

@media (max-width: 1199.98px) {
  .pgm-myjobs-company-usage {
    grid-template-columns: 1fr;
  }

  .pgm-myjobs-company-usage__actions {
    align-items: flex-start;
    min-width: 0;
  }

  .pgm-myjobs-company-usage__actions .btn {
    width: auto;
    max-width: none;
  }
}

@media (max-width: 767.98px) {
  .pgm-myjobs-company-usage__actions .btn {
    width: 100%;
  }
}

/* PortalGraf Market v1.3.124 - My jobs main header actions no-squeeze fix */
.pgm-myjobs-header {
  display: block;
}

.pgm-myjobs-header__content {
  max-width: none;
}

.pgm-myjobs-header__actions {
  margin-top: .85rem;
  justify-content: flex-start;
}

.pgm-myjobs-header__actions .btn {
  white-space: normal;
}



/* PortalGraf Market v1.3.125 - Unified page headers for directory and owner views */
.pgm-page-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  padding: .95rem 1.1rem;
  margin-bottom: 1rem !important;
  border: 1px solid var(--pgm-border-strong, #c4d5dc);
  border-radius: 1rem;
  background: linear-gradient(135deg, #ffffff 0%, #f6fbfc 100%);
}

.pgm-page-header__content {
  flex: 1 1 32rem;
  min-width: min(100%, 18rem);
  max-width: 64rem;
}

.pgm-page-header__content .pgm-directory-kicker {
  margin-bottom: .25rem !important;
}

.pgm-page-header__content h1 {
  margin-bottom: .35rem;
}

.pgm-page-header__content .text-muted {
  max-width: 62rem;
  line-height: 1.45;
}

.pgm-page-header__actions {
  flex: 0 1 auto;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  align-items: center;
  justify-content: flex-end;
  max-width: 28rem;
  margin-top: 0;
}

.pgm-page-header__actions .btn {
  white-space: normal;
}

.pgm-page-header.pgm-myjobs-header,
.pgm-page-header.pgm-mycompanies-header {
  display: flex;
}

.pgm-page-header.pgm-myjobs-header .pgm-myjobs-header__actions,
.pgm-page-header.pgm-mycompanies-header .pgm-mycompanies-header__actions {
  margin-top: 0;
}

@media (max-width: 991.98px) {
  .pgm-page-header__actions {
    width: 100%;
    max-width: none;
    justify-content: flex-start;
  }
}

@media (max-width: 575.98px) {
  .pgm-page-header__actions .btn {
    width: 100%;
  }
}


/* PortalGraf Market v1.3.126 - Public company/job header unification */
.pgm-public-company-header,
.pgm-public-job-header,
.pgm-jobs-header.pgm-page-header {
  box-shadow: var(--pgm-card-shadow);
}

.pgm-public-company-header__identity {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

.pgm-public-company-header__logo {
  width: 112px;
  height: 112px;
  flex-basis: 112px;
}

.pgm-public-company-header__main {
  min-width: 0;
}

.pgm-public-company-header__main h1,
.pgm-public-job-header__content h1 {
  margin-bottom: .35rem;
}

.pgm-public-company-header .pgm-company-badges--status {
  margin: .55rem 0 0;
  padding-top: 0;
  align-self: flex-start;
  justify-content: flex-start;
}

.pgm-public-job-header .pgm-job-header__meta {
  margin-top: .2rem;
}

.pgm-public-company-header .pgm-page-header__actions,
.pgm-public-job-header .pgm-page-header__actions {
  align-self: flex-start;
}

@media (max-width: 575.98px) {
  .pgm-public-company-header__identity {
    flex-direction: column;
  }

  .pgm-public-company-header__logo {
    width: 100%;
    height: auto;
    min-height: 96px;
    flex-basis: auto;
  }
}

/* PortalGraf Market v1.3.127 - Market kicker outside unified header boxes */
.pgm-market-kicker {
  display: block;
  margin: 0 0 .45rem .1rem !important;
}

.pgm-page-header__content .pgm-directory-kicker {
  margin-bottom: 0 !important;
}

/* PortalGraf Market v1.3.128 - Public company header actions bottom alignment */
.pgm-public-company-header {
  align-items: stretch;
}

.pgm-public-company-header > .pgm-page-header__content {
  flex: 1 1 100%;
  max-width: none;
}

.pgm-public-company-header .pgm-page-header__actions {
  flex: 1 1 100%;
  width: 100%;
  max-width: none;
  align-self: stretch;
  justify-content: flex-start;
  margin-top: .85rem;
  padding-top: .85rem;
  border-top: 1px solid rgba(196, 213, 220, .72);
}

.pgm-public-company-header .pgm-page-header__actions .btn {
  width: auto;
  max-width: 100%;
}

@media (max-width: 575.98px) {
  .pgm-public-company-header .pgm-page-header__actions .btn {
    width: 100%;
  }
}

/* PortalGraf Market v1.3.129 - Unified bottom-separated header actions */
.pgm-page-header--actions-bottom {
  align-items: stretch;
}

.pgm-page-header--actions-bottom > .pgm-page-header__content {
  flex: 1 1 100%;
  max-width: none;
}

.pgm-page-header--actions-bottom > .pgm-page-header__actions {
  flex: 1 1 100%;
  width: 100%;
  max-width: none;
  align-self: stretch;
  justify-content: flex-start;
  margin-top: .85rem !important;
  padding-top: .85rem;
  border-top: 1px solid rgba(196, 213, 220, .72);
}

.pgm-page-header--actions-bottom > .pgm-page-header__actions .btn {
  width: auto;
  max-width: 100%;
}

@media (max-width: 575.98px) {
  .pgm-page-header--actions-bottom > .pgm-page-header__actions .btn {
    width: 100%;
  }
}


/* PortalGraf Market v1.3.141 - My jobs card actions no-squeeze fix */
.pgm-myjobs-card__header {
  grid-template-columns: 1fr;
}

.pgm-myjobs-card__actions {
  justify-content: flex-start;
  margin-top: .75rem;
  padding-top: .75rem;
  border-top: 1px solid rgba(29, 121, 137, .10);
}

.pgm-myjobs-card__actions form {
  margin: 0;
}

.pgm-myjobs-card__actions .btn {
  white-space: normal;
}

@media (min-width: 768px) {
  .pgm-myjobs-card__actions .btn {
    min-width: 8.5rem;
  }
}

/* v1.3.146 - My companies owner workflow actions */
.pgm-owner-company-card__actions--workflow {
  justify-content: flex-start;
  margin: .85rem 0 1rem;
  padding-top: .75rem;
  border-top: 1px solid var(--pgm-border-strong);
}

.pgm-owner-company-card__actions--workflow .d-inline {
  display: inline-flex !important;
}

.pgm-job-company-logo,
.pgm-owner-company-card__logo {
  text-decoration: none;
}


/* v1.3.178 - Public classifieds filter and image placeholder polish */
.pgm-classifieds-view .pgm-directory-filter {
  margin-bottom: 1rem;
}

.pgm-classified-card__image-placeholder {
  width: 100%;
  min-width: 58px;
  max-width: 72px;
  height: 58px;
  border-radius: .65rem;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-align: center;
  padding: .25rem;
}

@media (max-width: 575.98px) {
  .pgm-classified-card__image-placeholder {
    max-width: 100%;
    width: 100%;
  }
}

/* v1.3.181 - Compact company related jobs/classifieds blocks */
.pgm-company-relations-summary {
  padding: 1rem 1.15rem;
}

.pgm-company-relations-summary .pgm-company-jobs__header {
  margin-bottom: 0;
}

.pgm-company-relations-summary h2 {
  margin-bottom: .35rem;
  padding-bottom: 0;
  border-bottom: 0;
}

.pgm-company-relations-summary .text-muted {
  line-height: 1.5;
}

@media (max-width: 575.98px) {
  .pgm-company-relations-summary .pgm-company-jobs__header .btn {
    width: 100%;
  }
}

/* v1.3.184 - Unified soft PortalGraf gradient headers */
.pgm-page-header {
  border: 1px solid rgba(0, 0, 0, .10);
  border-radius: 1rem;
  background: linear-gradient(135deg, rgba(29, 121, 137, .08), rgba(222, 113, 13, .08));
  box-shadow: 0 8px 22px rgba(15, 23, 42, .04);
}

.pgm-page-header__content h1,
.pgm-public-company-header__main h1,
.pgm-public-job-header__content h1 {
  color: #172033;
}

.pgm-page-header__content .text-muted,
.pgm-public-company-header .pgm-company-meta,
.pgm-public-job-header .pgm-job-header__meta {
  color: #667085 !important;
}

.pgm-page-header--actions-bottom > .pgm-page-header__actions,
.pgm-public-company-header .pgm-page-header__actions {
  border-top-color: rgba(0, 0, 0, .10);
}

.pgm-market-kicker {
  font-size: .84rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .045em;
  color: var(--link-color, #1d7989);
}

/* PortalGraf Market v1.3.189 - Section headers aligned with global PortalGraf pattern */
.pgm-section {
  margin: 0 0 1.5rem;
}

.pgm-section .pg-section-context {
  margin-top: 0;
  margin-bottom: .45rem;
}

.pgm-section .pg-section-hero {
  margin-bottom: 0;
}

.pgm-section .pg-section-hero__text {
  margin-bottom: 0;
}

.pgm-section-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: .5rem;
  margin-top: .9rem;
  padding-top: .9rem;
  border-top: 1px solid rgba(29, 121, 137, .16);
}

.pgm-section-actions .btn {
  white-space: normal;
}

.pgm-section .pgm-job-header__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem .65rem;
}

.pgm-section .pgm-job-header__meta > span + span::before,
.pgm-section .pgm-job-header__meta > a + span::before,
.pgm-section .pgm-job-header__meta > span + a::before {
  content: "·";
  margin-right: .65rem;
  color: rgba(102, 112, 133, .85);
}

@media (max-width: 575.98px) {
  .pgm-section-actions .btn {
    width: 100%;
  }
}


/* PortalGraf Market v1.3.192 - Cabeceras limpias y acciones separadas */
.pgm-view-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: .5rem;
  margin: -.55rem 0 1.35rem;
  padding: .75rem 0 0;
  border-top: 1px solid rgba(29, 121, 137, .14);
}

.pgm-view-toolbar--navigation .btn,
.pgm-btn-navigation {
  border-color: rgba(29, 121, 137, .28);
  color: var(--link-color, #1d7989);
  background: #fff;
}

.pgm-view-toolbar--navigation .btn:hover,
.pgm-btn-navigation:hover {
  color: var(--link-hover-color, #de710d);
  border-color: rgba(222, 113, 13, .42);
  background: rgba(222, 113, 13, .06);
}

.pgm-content-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: .5rem;
  margin-top: 1.25rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(29, 121, 137, .12);
}

.pgm-content-actions--navigation {
  justify-content: flex-start;
}

.pgm-content-actions--primary .btn-primary {
  min-width: 9rem;
}

.pgm-owner-limit-state .pgm-owner-limit-list {
  display: grid;
  gap: .5rem;
  margin: 1rem 0 0;
}

.pgm-owner-limit-state .pgm-owner-limit-item {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .5rem 1rem;
  padding: .65rem .75rem;
  border: 1px solid rgba(29, 121, 137, .14);
  border-radius: .75rem;
  background: rgba(29, 121, 137, .035);
}

.pgm-header-actions.pgm-view-toolbar {
  margin-top: -.55rem;
}

@media (max-width: 575.98px) {
  .pgm-view-toolbar .btn,
  .pgm-content-actions .btn {
    width: 100%;
  }

  .pgm-content-actions {
    justify-content: stretch;
  }
}

/* PortalGraf Market v1.3.194 - Navegación pública/privada coherente */
.pgm-view-toolbar--navigation .pgm-btn-navigation--current,
.pgm-view-toolbar--navigation .pgm-btn-navigation--current:hover {
  color: var(--btncolor, #fff);
  border-color: var(--link-color, #1d7989);
  background: var(--link-color, #1d7989);
}

.pgm-market-main-navigation,
.pgm-owner-main-navigation {
  margin-bottom: 1.35rem;
}


/* v1.3.197 - Dashboard privado PortalGraf Market */
.pgm-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
    gap: 1rem;
}

.pgm-dashboard-card .card-body {
    min-height: 100%;
}

.pgm-ownerdashboard-status__header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.pgm-ownerdashboard-company-list {
    display: grid;
    gap: .65rem;
}

.pgm-ownerdashboard-company {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: .75rem .9rem;
    border: 1px solid rgba(29, 121, 137, .16);
    border-radius: .75rem;
    background: rgba(29, 121, 137, .035);
}

@media (max-width: 575.98px) {
    .pgm-ownerdashboard-company {
        display: block;
    }
}

/* v1.3.203 - Registro único PortalGraf */
.pgm-registration-form {
  border-radius: 1rem;
  overflow: hidden;
}

.pgm-registration-fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

.pgm-registration-profile-grid {
  display: grid;
  gap: .85rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pgm-registration-profile-option {
  align-items: flex-start;
  border: 1px solid rgba(29, 121, 137, .18);
  border-radius: .85rem;
  cursor: pointer;
  display: flex;
  gap: .75rem;
  min-height: 100%;
  padding: .9rem;
}

.pgm-registration-profile-option input {
  margin-top: .2rem;
}

.pgm-registration-profile-option span {
  display: grid;
  gap: .15rem;
}

.pgm-registration-profile-option small {
  color: #6c757d;
  line-height: 1.35;
}

@media (max-width: 767.98px) {
  .pgm-registration-profile-grid {
    grid-template-columns: 1fr;
  }
}


/* PortalGraf Market unified registration captcha */
.pgm-registration-captcha-wrapper {
    max-width: 100%;
}

.pgm-registration-fieldset--captcha .alert {
    margin-bottom: 0;
}

/* v1.3.219 - media previews without inline style attributes */
.pgm-myclassifieds-card__thumbnail {
  width: auto;
  max-width: 180px;
  height: auto;
  border-radius: .75rem;
}

.pgm-myclassifiededit__current-image {
  width: auto;
  max-width: 220px;
  height: auto;
  border-radius: .75rem;
}
