/* One compact directory presentation at every width; original actions and profiles remain canonical. */
/* Partner labels share the mini card palette without changing their underlying status. */
body.rotezi-main .compact-partner-brand-badge{background:#edf5fd!important;border-color:#d6e6f8!important;color:#25649d!important;}
html[data-theme="dark"] body.rotezi-main .compact-partner-brand-badge{background:#112e49!important;border-color:#254968!important;color:#a7ceef!important;}
@media(prefers-color-scheme:dark){html:not([data-theme="light"]) body.rotezi-main .compact-partner-brand-badge{background:#112e49!important;border-color:#254968!important;color:#a7ceef!important;}}
body.rotezi-main.tourist-experience #passeios>.price-filter-control label{gap:0!important}
body.rotezi-main.tourist-experience #passeios>.price-filter-control select{min-height:48px}
@media(max-width:850px){
  body.rotezi-main.tourist-experience #passeios>.discovery-head{margin-bottom:8px!important}
  body.rotezi-main.tourist-experience #passeios>.price-filter-control{margin:0 0 10px!important}
}
.rotezi-main #directory-grid .directory-area-grid>.compact-card{
  display:block!important;padding:0;overflow:hidden;min-width:0;
}
.rotezi-main #directory-grid .directory-area-grid>.compact-card[hidden]{display:none!important}
.rotezi-main #directory-grid .compact-card>:not(.compact-place){display:none!important}
.rotezi-main :is(#directory-grid,.partner-benefit-list) .compact-place{
  display:grid;position:relative;grid-template-columns:112px minmax(0,1fr);gap:0 14px;
  min-width:0;padding:10px 12px 10px 10px;color:var(--adaptive-text,#132c45);
}
.compact-media{grid-column:1;grid-row:1/3;position:relative;min-width:0;align-self:stretch;border-radius:11px;background:var(--adaptive-soft,#eef7ff);overflow:hidden}
.compact-photo{display:block;width:100%;height:100%;min-height:104px;padding:0;border:0;border-radius:inherit;background:transparent;cursor:pointer;color:var(--adaptive-muted,#5d748b);font:inherit}
.compact-photo img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.compact-media.is-essential img{object-fit:contain}
.compact-placeholder{display:grid;place-items:center;height:100%;min-height:104px;padding:8px;font-size:11px;line-height:1.4;text-align:center}
.compact-photo img[hidden],.compact-placeholder[hidden]{display:none!important}
.compact-media .photo-credit-button{right:3px;bottom:3px}
.compact-summary{
  display:flex;grid-column:2;grid-row:1;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;min-height:0;padding:2px 0 0;
  border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;
}
.compact-place.has-badge .compact-summary{padding-top:18px}
.compact-meta{position:absolute;top:8px;right:12px;display:flex;justify-content:flex-end;align-items:center;max-width:calc(100% - 24px);pointer-events:none}
.compact-category{min-width:0;max-width:100%;margin:0 0 6px;font-size:10px;font-weight:650;line-height:1.4;color:var(--adaptive-muted,#5d748b);text-wrap:pretty}
.compact-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-width:100%;margin:0 0 5px;font-size:16px;line-height:1.25;font-weight:800;letter-spacing:-.02em;overflow-wrap:break-word;text-wrap:pretty;font-optical-sizing:auto}
.compact-area{display:flex;gap:4px;align-items:center;max-width:100%;min-width:0;font-size:10px;line-height:1.4;color:var(--adaptive-muted,#5d748b)}
.compact-area svg{width:9.6px;height:9.6px;flex:0 0 9.6px}
.compact-area>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.compact-badge{display:inline-flex;align-items:center;flex:0 1 auto;max-width:100%;margin:0;padding:0;color:var(--adaptive-muted,#5d748b);font-size:9px;line-height:1.4;font-weight:650;white-space:nowrap;text-align:right}
.compact-badge.is-verified{transform:scale(.8);transform-origin:top right;padding:3px 7px;border:1px solid #d6e6f8;border-radius:7px;background:#edf5fd;color:#25649d}
.compact-actions{display:flex;grid-column:2;grid-row:2;align-items:center;gap:4px;min-width:0;align-self:end}
.compact-invitation{flex:1;min-height:44px;min-width:0;margin:0;padding:6px 0;border:0;background:transparent;font-family:inherit;text-align:left;font-size:11px;line-height:1.3;font-weight:750;color:var(--adaptive-accent,#126bd5);cursor:pointer}
.compact-save{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;margin:0;padding:11px;border:0;border-radius:10px;background:transparent;color:var(--adaptive-muted,#5d748b);cursor:pointer}
.compact-save svg{width:21px;height:21px}
.compact-save[aria-pressed="true"]{color:var(--adaptive-accent,#126bd5)}
.compact-save[aria-pressed="true"] svg{fill:var(--adaptive-soft,#eef7ff)}
.compact-save:disabled{opacity:.5;cursor:wait}
.compact-logo{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;padding:3px;box-sizing:border-box;background:#fff;border:1px solid var(--adaptive-border,#d6e6f8);border-radius:7px}
.compact-logo img{display:block;width:100%;height:100%;object-fit:contain}
.compact-status{grid-column:1/-1;margin:0;padding:4px 0 0;color:var(--adaptive-muted,#5d748b);font-size:12px;line-height:1.4}
.compact-save[hidden],.compact-area[hidden],.compact-badge[hidden],.compact-logo[hidden],.compact-status[hidden]{display:none!important}
.compact-place button:focus-visible{outline:2px solid var(--adaptive-accent,#126bd5);outline-offset:-2px}
.compact-place button:active{background:var(--adaptive-soft,#eef7ff)}
html[data-theme="dark"] .compact-badge.is-verified{background:#112e49;border-color:#254968;color:#a7ceef}
@media(prefers-color-scheme:dark){html:not([data-theme="light"]) .compact-badge.is-verified{background:#112e49;border-color:#254968;color:#a7ceef}}
@media(max-width:850px){
  .rotezi-main :is(#directory-grid,.partner-benefit-list) .compact-place{grid-template-columns:83px minmax(0,1fr);gap:0 11px;padding:8px 10px 8px 8px}
  .compact-name{font-size:15px}
  .compact-meta{right:10px}
}
@media(max-width:360px){
  .rotezi-main :is(#directory-grid,.partner-benefit-list) .compact-place{grid-template-columns:78px minmax(0,1fr);gap:0 10px}
  .compact-name{font-size:14px}
}

/* Tours are compact experience cards; transfers are compact travel tickets. */
.compact-mini-product{display:none!important}
@media(max-width:850px){
  body.rotezi-main #tour-grid>.compact-mini-card,body.rotezi-main #transportes .transport-grid>.compact-mini-card{
    display:flex!important;flex-direction:column;gap:0!important;min-width:0;padding:12px!important;overflow:hidden;
  }
  body.rotezi-main #tour-grid>.compact-mini-card>:not(.compact-mini-product),
  body.rotezi-main #transportes .compact-mini-card:not(.compact-product-expanded)>:not(.compact-mini-product){display:none!important}
  body.rotezi-main #transportes .compact-product-expanded>:is(.transport-media,.transport-head,h3){display:none!important}
  body.rotezi-main #tour-grid>.compact-mini-card[hidden],body.rotezi-main #transportes .transport-grid>.compact-mini-card[hidden]{display:none!important}
  body.rotezi-main .compact-mini-product{display:flex!important;flex-direction:column;gap:10px;min-width:0;order:-10;color:var(--adaptive-text,#132c45)}
  .compact-product-hero{display:grid;grid-template-columns:104px minmax(0,1fr);gap:12px;align-items:center;min-width:0}
  .compact-product-media{position:relative;min-width:0;height:96px;overflow:hidden;border-radius:11px;background:var(--adaptive-soft,#eef7ff)}
  .compact-product-media img{display:block;width:100%;height:100%;object-fit:cover}
  .compact-product-placeholder{display:grid;place-items:center;height:100%;padding:8px;color:var(--adaptive-muted,#5d748b);font-size:11px;line-height:1.4;text-align:center}
  .compact-product-media .photo-credit-button{right:2px;bottom:2px}
  .compact-product-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
  .compact-product-type{color:var(--adaptive-accent,#126bd5);font-size:10px;line-height:1.4;font-weight:800}
  .compact-product-name{font-size:16px;line-height:1.25;font-weight:800;letter-spacing:-.015em;overflow-wrap:break-word}
  .compact-product-duration,.compact-product-context{color:var(--adaptive-muted,#5d748b);font-size:11px;line-height:1.4}
  .compact-product-price{display:flex;flex-direction:column;gap:4px;min-width:0;padding:9px 11px;border-radius:10px;background:var(--adaptive-soft,#eef7ff)}
  .compact-product-price-label{color:var(--adaptive-muted,#5d748b);font-size:10px;line-height:1.4;font-weight:650}
  .compact-product-price-line{display:flex;flex-wrap:wrap;gap:3px 7px;align-items:baseline;min-width:0}
  .compact-product-amount{color:var(--adaptive-accent,#126bd5);font-size:21px;line-height:1.15;font-weight:850;white-space:nowrap}
  .compact-product-unit{color:var(--adaptive-muted,#5d748b);font-size:11px;line-height:1.4}
  .compact-product-price-conditions{color:var(--adaptive-muted,#5d748b);font-size:10px;line-height:1.4;overflow-wrap:break-word}
  .compact-product-actions{display:flex;gap:6px;align-items:stretch;min-width:0}
  .compact-product-actions button,.compact-product-plan{min-height:48px;margin:0;padding:9px 10px;border-radius:10px;font-family:inherit;font-size:12px;line-height:1.3;font-weight:750;cursor:pointer}
  .compact-product-details{flex:1;min-width:0;border:1px solid var(--adaptive-border,#d6e4ef);background:var(--adaptive-control,#fff);color:var(--adaptive-accent,#126bd5)}
  .compact-product-reserve{flex:1;min-width:0;border:1px solid #0867d7;background:#0867d7;color:#fff}
  .compact-product-save{display:grid;place-items:center;flex:0 0 48px;width:48px;min-height:48px;padding:12px!important;border:1px solid var(--adaptive-border,#d6e4ef);background:var(--adaptive-control,#fff);color:var(--adaptive-muted,#5d748b)}
  .compact-product-save svg{width:20px;height:20px}
  .compact-product-save[aria-pressed="true"]{color:var(--adaptive-accent,#126bd5)}
  .compact-product-save[aria-pressed="true"] svg{fill:var(--adaptive-soft,#eef7ff)}
  .compact-product-plan{align-self:flex-start;min-height:48px;margin-top:-8px;padding:8px 2px;border:0;background:transparent;color:var(--adaptive-accent,#126bd5);font-size:11px;font-weight:650}
  .compact-product-secondary-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;margin-top:-8px}
  .compact-product-secondary-actions .compact-product-plan{flex:1;min-width:0;margin-top:0;text-align:left}
  .compact-product-secondary-actions .compact-product-save{margin-left:auto;border-radius:10px;cursor:pointer}
  .compact-product-status{margin:0;color:var(--adaptive-muted,#5d748b);font-size:12px;line-height:1.4}
  .compact-mini-product button:disabled{opacity:.55;cursor:wait}
  .compact-mini-product button:focus-visible{outline:2px solid var(--adaptive-accent,#126bd5);outline-offset:2px}
  body.rotezi-main #transportes .compact-transfer-card{border-left:3px solid var(--adaptive-accent,#126bd5)!important}
  .compact-mini-product.is-transfer .compact-product-hero{grid-template-columns:minmax(0,1fr) 82px}
  .compact-mini-product.is-transfer .compact-product-copy{grid-column:1;grid-row:1}
  .compact-mini-product.is-transfer .compact-product-media{grid-column:2;grid-row:1;height:82px}
  .compact-mini-product.is-transfer .compact-product-price{border-top:1px dashed var(--adaptive-border,#d6e4ef);border-radius:0;padding:9px 0 0;background:transparent}
  body.rotezi-main #transportes .compact-product-expanded{gap:12px!important}
  .compact-mini-product [hidden]{display:none!important}
}
@media(max-width:360px){
  .compact-product-hero{grid-template-columns:88px minmax(0,1fr);gap:10px}
  .compact-product-name{font-size:15px}
  .compact-product-actions button{padding-inline:7px;font-size:11px}
}

/* Preserve the approved removal of visible photo-reference captions and controls.
   Provenance metadata and mandatory map attribution remain unchanged. */
body.rotezi-main :is(.partner-photo-caption,.public-photo-credits,.photo-credit-button,button[data-photo-credit],button[aria-label="Fonte da foto"],.photo-credit-popover,#rotezi-photo-credit){display:none!important;}
