/* Public light palette. Loaded only by header_public.php, never by admin. */
body.ld-public{
  --bg:#faf8f4;--bg-soft:#f1eee8;--card:#fff;--text:#1c1a17;
  --muted:#6b6258;--line:#e7e1d7;--gold:#c89b2e;--gold-dark:#8a6412;
  background:#faf8f4;color:#1c1a17;
}
body.ld-public .top.premium-top{background:#fff;border-bottom-color:#e7e1d7;}
body.ld-public .hero.hero-v2{
  background:radial-gradient(circle at 12% 15%,rgba(200,155,46,.10),transparent 35%),#fffdfa;
  border-color:#e7e1d7;
}
/* The suggestions need overflow:visible. Remove only the overflowing ornament. */
body.ld-public .hero.hero-v2::after{content:none;}
body.ld-public :is(.home-premium-zone,.ld-city-premium-zone){
  background:linear-gradient(135deg,#fffaf0,#fff 65%);border-color:#e5d5ad;
}
body.ld-public .hero-badge{
  background:#f1eee8!important;color:#544c42!important;border-color:#e7e1d7!important;
}
body.ld-public .hero-badge::before{content:none;}
body.ld-public :is(.site-footer,.legal-strip){background:#24211d!important;}
body.ld-public .btn.secondary{background:#24211d;color:#fff;}
body.ld-public .btn.secondary:hover{background:#3b3630;color:#fff;}
body.ld-public :is(.hero,.page-title) .btn:not(.secondary):not(.danger),
body.ld-public .top.premium-top nav.nav-main a.nav-cta,
body.ld-public .searchbar button:not([type="button"]):not([type="reset"]){
  background:#c89b2e!important;color:#1a1408!important;text-shadow:none;
}
body.ld-public :is(.hero,.page-title) .btn:not(.secondary):not(.danger):hover,
body.ld-public .top.premium-top nav.nav-main a.nav-cta:hover,
body.ld-public .searchbar button:not([type="button"]):not([type="reset"]):hover{
  background:#dbb44d!important;color:#1a1408!important;
}
body.ld-public .nearby-locate-btn{background:#f5f1e7;color:#59451c;border-color:#d8caaa;}
body.ld-public .nearby-locate-btn:hover{background:#eadebe;color:#1a1408;}
body.ld-public .top.premium-top nav.nav-main a.nav-link{
  min-height:40px!important;display:inline-flex;align-items:center;justify-content:center;
}
body.ld-public .top.premium-top nav.nav-main .lang-switch{height:40px;}
body.ld-public .top.premium-top nav.nav-main .lang-switch select{min-height:40px;}
body.ld-public .top.premium-top .mobile-brand-saved{min-width:40px;min-height:40px;}
body.ld-public .searchbar :is(input,select,button){min-height:44px!important;}
body.ld-public :is(.searchbar,.location-autocomplete){min-width:0;}
body.ld-public .searchbar > *{min-width:0;max-width:100%;}
body.ld-public .location-suggestions{max-width:100%;box-sizing:border-box;}
body.ld-public .category-feature strong{white-space:normal;overflow-wrap:anywhere;}
body.ld-public .home-more-ads{display:flex;justify-content:center;margin:20px 0 0;}
body.ld-public .home-more-ads .btn{min-height:44px;background:#24211d;color:#fff;}
.home-hero-description-short{display:none;}
body.ld-public .hero .nearby-quick-copy{flex:0 1 auto;}
body.ld-public .hero .nearby-status{flex:1;}
@media(max-width:760px){
  body.ld-public .searchbar.big-search{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body.ld-public .big-search > select[name="province"]{grid-column:1;grid-row:1;}
  body.ld-public .big-search > .location-autocomplete{grid-column:2;grid-row:1;}
  body.ld-public .big-search > select[name="category"]{grid-column:1;grid-row:2;}
  body.ld-public .big-search > input[name="q"]{grid-column:2;grid-row:2;}
  body.ld-public .big-search > button{grid-column:1 / span 2!important;grid-row:3;}
  body.ld-public .searchbar :is(input,select,button){height:44px!important;}
  body.ld-public .top.premium-top nav.nav-main a.nav-link{
    font-size:12px!important;padding-left:8px!important;padding-right:8px!important;
  }
  body.ld-public .top.premium-top nav.nav-main .lang-switch{height:40px!important;flex-shrink:0;}
  body.ld-public .searchbar :is(input,select){font-size:16px!important;}
  body.ld-public .nearby-locate-btn{min-height:40px;}
}
/* Keep the first mobile screen focused on searching and reaching the cards. */
@media(max-width:620px){
  body.ld-public .hero.hero-v2{padding:12px 9px 10px!important;}
  body.ld-public .hero.hero-v2 h1{margin:5px auto!important;}
  body.ld-public .hero.hero-v2 .home-hero-description{margin:0 0 6px!important;}
  body.ld-public .home-hero-description-full{display:none;}
  body.ld-public .home-hero-description-short{display:inline;}
  body.ld-public .hero .big-search{margin:8px auto!important;}
  body.ld-public .hero .nearby-quick{padding:6px 8px;margin-bottom:6px;}
  body.ld-public .hero .nearby-quick-row{
    display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;
  }
  body.ld-public .hero .nearby-quick-copy{flex:1;}
  body.ld-public .hero .nearby-quick-copy strong{
    margin:0;font-size:12px;white-space:normal;
  }
  body.ld-public .hero .nearby-locate-btn{order:2;width:auto;min-height:44px;}
  body.ld-public .hero .nearby-status{order:3;flex:0 0 100%;white-space:normal;}
  body.ld-public .hero .nearby-status.is-idle{display:none;}
}

/* Accessible mobile form controls and visible keyboard navigation. */
body.ld-public :is(a,button,input,select,textarea):focus-visible{outline:3px solid #755815;outline-offset:3px}
.home-launch-notice .btn{margin-top:8px}
@media(max-width:760px){
 body.ld-public .form :is(input:not([type=checkbox]):not([type=radio]),select,textarea),
 body.ld-public .ad-wizard :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px!important;max-width:100%;box-sizing:border-box}
 body.ld-public .form button,body.ld-public .wizard-actions button{min-height:44px}
 body.ld-public .form{box-sizing:border-box;min-width:0}
}

/* Photo-corner treatment adapted from the owner's lindid.css reference.
   Existing server-rendered profile verification and active TOP tier stay authoritative. */
body.ld-public.ld-ribbon-enhanced .card.ad-card > .vip-badge.topvip,
body.ld-public.ld-ribbon-enhanced .card.ad-card .ld-card-title-row > .ld-card-verified,
body.ld-public.ld-ribbon-enhanced .ld-top-panel .img > .verified-badge,
body.ld-public.ld-ribbon-enhanced .gallery-badges > :is(.topvip,.vip,.verified-badge){
  visibility:hidden;
}
body.ld-public .ld-photo-ribbons{
  position:absolute;z-index:4;overflow:visible;pointer-events:none;
  visibility:hidden;box-sizing:border-box;
}
body.ld-public .ld-photo-ribbons.is-ready{visibility:visible;}
body.ld-public .ld-photo-verified-clip{
  position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none;
}
body.ld-public :is(#homeAdsTopSlot,#homeAdsVipSlot,#homeAdsLatestSlot,#homeNearbySection,.card.ad-card,.ld-ad-detail) .ld-photo-ribbons .ld-photo-ribbon{
  position:absolute;display:block;flex:none;box-sizing:border-box;
  min-width:0;max-width:none;margin:0!important;padding:0!important;
  border:0!important;border-radius:0;box-shadow:none!important;
  font-size:0!important;line-height:1!important;letter-spacing:0;
  text-shadow:none;visibility:inherit;pointer-events:none;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
body.ld-public .ld-photo-ribbon > svg{display:none;}

/* The folded gold band wraps around the photo's upper-right corner. */
body.ld-public :is(#homeAdsTopSlot,#homeAdsVipSlot,#homeAdsLatestSlot,#homeNearbySection,.card.ad-card,.ld-ad-detail) .ld-photo-ribbons :is(.ld-photo-ribbon--top,.ld-photo-ribbon--vip){
  top:calc(-7px * var(--ld-ribbon-scale,1))!important;
  right:calc(-7px * var(--ld-ribbon-scale,1))!important;bottom:auto!important;left:auto!important;
  width:104px;height:104px;overflow:hidden;background:transparent!important;color:#111!important;
  transform:scale(var(--ld-ribbon-scale,1));transform-origin:top right;z-index:2;
}
body.ld-public :is(.ld-photo-ribbon--top,.ld-photo-ribbon--vip)::before,
body.ld-public :is(.ld-photo-ribbon--top,.ld-photo-ribbon--vip)::after{
  content:"";position:absolute;z-index:-1;
  border:4px solid #7a5200;border-top-color:transparent;border-right-color:transparent;
}
body.ld-public :is(.ld-photo-ribbon--top,.ld-photo-ribbon--vip)::before{top:0;left:0;}
body.ld-public :is(.ld-photo-ribbon--top,.ld-photo-ribbon--vip)::after{bottom:0;right:0;}
body.ld-public .ld-photo-ribbons .ld-photo-top-text{
  position:absolute;top:22px;left:-14px;width:156px;padding:5px 0 4px;
  transform:rotate(45deg);text-align:center;color:#111;
  background:linear-gradient(180deg,#fff3b0 0%,#f6cf55 30%,#e0a91c 60%,#b98309 100%);
  box-shadow:0 3px 6px rgba(0,0,0,.35);
  text-shadow:0 0 1px rgba(255,255,255,.95),0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5);
  font:900 21px/.9 "Arial Black",Arial,sans-serif;letter-spacing:1px;text-transform:uppercase;
}
/* White under-shadow on TOP alone; original lettering and geometry stay intact. */
body.ld-public .ld-photo-ribbons :is(.ld-photo-top-main,.ld-photo-vip-main){
  font:inherit;
  text-shadow:0 1px 0 rgba(255,255,255,.9),
              0 2px 1px rgba(255,255,255,.75),
              0 0 4px rgba(255,255,255,.4);
}
body.ld-public .ld-photo-top-text small{
  display:block;font:800 8px/1 Arial,sans-serif;letter-spacing:1.5px;margin-bottom:1px;
}
/* VIP shares the TOP VIP gold ribbon; center its one-word label only. */
body.ld-public .ld-photo-ribbon--vip .ld-photo-top-text{
  padding-top:10px;padding-bottom:9px;
}
body.ld-public .ld-photo-vip-main{display:block;}

/* A separate star sits above the band so its rays are never cropped by it. */
body.ld-public .ld-photo-top-star{
  position:absolute;z-index:5;top:calc(-7px * var(--ld-ribbon-scale,1));
  right:calc(61px * var(--ld-ribbon-scale,1));width:34px;height:34px;
  transform:translate(50%,-50%) scale(var(--ld-ribbon-scale,1));pointer-events:none;
  background:radial-gradient(circle,#fff 0 2px,rgba(255,255,255,.85) 3px,rgba(255,240,190,.45) 7px,transparent 13px);
}
body.ld-public .ld-photo-top-star::before,
body.ld-public .ld-photo-top-star::after{
  content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
}
body.ld-public .ld-photo-top-star::before{
  width:2px;height:34px;background:linear-gradient(180deg,transparent,#fff 45%,#fff 55%,transparent);
}
body.ld-public .ld-photo-top-star::after{
  width:24px;height:2px;background:linear-gradient(90deg,transparent,#fff 45%,#fff 55%,transparent);
}

/* Keep the verification corner small, with the profile's purple accent. */
body.ld-public :is(#homeAdsTopSlot,#homeAdsVipSlot,#homeAdsLatestSlot,#homeNearbySection,.card.ad-card,.ld-ad-detail) .ld-photo-ribbons .ld-photo-ribbon--verified{
  top:auto!important;right:auto!important;bottom:0!important;left:0!important;
  width:64px;height:64px;background:#6f2b7b!important;color:#fff!important;
  clip-path:polygon(0 0,0 100%,100% 100%);
  transform:scale(calc((1 + var(--ld-ribbon-scale,1)) / 2));transform-origin:bottom left;z-index:1;
}
body.ld-public .ld-photo-ribbon--verified::after{
  content:attr(aria-label);position:absolute;display:block;left:-19px;top:32px;width:96px;
  transform:rotate(45deg);text-align:center;font:800 9px/1 Arial,sans-serif;
  letter-spacing:.25px;text-transform:uppercase;white-space:nowrap;
  text-shadow:0 1px 1px rgba(0,0,0,.3);
}
body.ld-public:lang(nl) .ld-photo-ribbon--verified::after{
  font-size:8px;letter-spacing:.15px;
}

/* Preserve rounded photos while allowing only the gold folds/star to protrude. */
:is(#homeAdsTopSlot,#homeAdsVipSlot,#homeAdsLatestSlot,#homeNearbySection,body.ld-public) .card.ad-card:is(.ld-has-top-photo-ribbon,.ld-has-gold-photo-ribbon),
:is(#homeAdsTopSlot,#homeAdsVipSlot,#homeAdsLatestSlot,#homeNearbySection,body.ld-public) .card.ad-card:is(.ld-has-top-photo-ribbon,.ld-has-gold-photo-ribbon) > a,
:is(#homeAdsTopSlot,#homeAdsVipSlot,#homeAdsLatestSlot,#homeNearbySection,body.ld-public) .card.ad-card .img:is(.ld-photo-has-top,.ld-photo-has-gold),
body.ld-public .ld-ad-detail [data-gallery-main]:is(.ld-photo-has-top,.ld-photo-has-gold){
  overflow:visible!important;
}
:is(#homeAdsTopSlot,body.ld-public) .card.ad-card.ld-top-panel .img.ld-photo-has-top,
:is(#homeAdsTopSlot,body.ld-public) .card.ad-card.ld-top-panel .img.ld-photo-has-top > img{
  border-radius:14px 14px 0 0!important;
}
body.ld-public .card.ad-card.ld-top-panel.ld-has-top-photo-ribbon .ld-top-info{
  border-radius:0 0 14px 14px;
}
body.ld-public #homeAdsTopSlot .top-carousel-wrap,
body.ld-public .ld-city-carousel-wrap{
  padding:26px 8px 8px;box-sizing:border-box;
}
:is(#homeAdsTopSlot,#homeAdsVipSlot,#homeAdsLatestSlot,#homeNearbySection,body.ld-public) .card.ad-card.ld-has-top-photo-ribbon .card-save-btn{
  top:8px!important;right:auto!important;left:7px!important;
}
body.ld-public .ld-top-panel .new-badge{
  top:8px!important;left:7px!important;right:auto!important;bottom:auto!important;
  transform:none!important;transform-origin:center;
}
body.ld-public .ld-top-panel .img:has(.ld-photo-ribbon--verified) .ld-top-photo-price{
  max-width:calc(100% - 32px * (1 + var(--ld-ribbon-scale,1)) - 14px);box-sizing:border-box;
}

/* Reserve room above scrollable VIP cards for the protruding gold fold/star. */
body.ld-public #homeAdsVipSlot :is(.vip-strip,.grid){
  padding-top:26px!important;padding-left:8px!important;padding-right:8px!important;
}
body.ld-public .ld-city-vip-strip{
  padding-top:26px!important;padding-left:8px!important;padding-right:8px!important;
}

/* Move every card-level save heart left. Header/profile controls are untouched. */
body.ld-public .card.ad-card .card-save-btn,
body.ld-public .card.ad-card.ld-ad-card .card-save-btn,
body.ld-public .card.ad-card.ld-top-panel .card-save-btn,
body.ld-public .saved-grid .card.ad-card .card-save-btn,
body.ld-public :is(#homeAdsTopSlot,#homeAdsVipSlot,#homeAdsLatestSlot,#homeNearbySection) .card.ad-card .card-save-btn{
  left:7px!important;right:auto!important;top:7px!important;
}
/* A legacy Nuevo marker in saved lists cannot overlap the moved heart. */
body.ld-public .saved-grid .card.ad-card .new-badge{
  left:auto!important;right:7px!important;top:7px!important;
}
