/* SRRM P3 — only the local broken-image fallback for public listing cards. */
.srrm-ad-card .srrm-ad-card__image-fallback {
  display: grid; place-items: center; width: 100%; max-width: 180px;
  min-height: 125px; border-radius: 10px; background: #ebf3f4;
  color: #5e8189; font-size: 34px; line-height: 1;
}
@media(max-width:767px) {
  .srrm-ad-card .srrm-ad-card__image-fallback { max-width:none; min-height:145px; }
}
.srrm-ad-card .srrm-ad-card__image-fallback{
  font-size:14px;line-height:1.5;text-align:center;overflow-wrap:anywhere;padding:12px
}
/* P8: scoped public surface, design-token compliant; keeps all legacy URLs and ad widgets. */
.srrm-ad-card,.srrm-public-detail{--srrm-ui-ink:#172b3d;--srrm-ui-line:#d8e4ed;--srrm-ui-brand:#075987;box-sizing:border-box;color:var(--srrm-ui-ink);min-width:0;overflow-wrap:anywhere}
.srrm-ad-card *,.srrm-public-detail *{box-sizing:border-box}
.srrm-ad-card{max-width:100%!important;border:1px solid var(--srrm-ui-line);border-radius:14px;background:#fff;box-shadow:0 3px 14px rgba(20,45,66,.06);margin-block:12px}
.srrm-ad-card .row,.srrm-public-detail .row{min-width:0;max-width:100%;margin-inline:0}
.srrm-ad-card .srrm-ad-card__photo{display:block;width:100%;max-width:180px;height:auto;aspect-ratio:4/3;object-fit:contain;background:#f3f6f8}
.srrm-ad-card h4{font-size:clamp(16px,2vw,21px);font-weight:750;line-height:1.5;overflow-wrap:anywhere}
.srrm-ad-card .btn,.srrm-public-detail .btn{min-height:44px;white-space:normal;overflow-wrap:anywhere}
.srrm-ad-card a:focus-visible,.srrm-public-detail a:focus-visible,.srrm-public-detail button:focus-visible{outline:3px solid var(--srrm-ui-brand);outline-offset:3px}
.srrm-public-detail{width:100%;max-width:1100px;float:none!important;margin-inline:auto;padding:14px clamp(10px,2.5vw,24px) 55px}
.srrm-public-detail>.well,.srrm-public-detail .well{max-width:100%!important}
.srrm-public-detail .srrm-detail-title{font-size:clamp(23px,3vw,36px);font-weight:800;line-height:1.55;margin-block:10px 24px;overflow-wrap:anywhere}
.srrm-public-detail .srrm-gallery{max-width:100%;min-width:0;background:#fff;border-radius:16px;border:1px solid var(--srrm-ui-line);padding:12px}
.srrm-public-detail .srrm-gallery__main{cursor:zoom-in;touch-action:manipulation;display:block;width:100%;max-width:100%;height:auto;max-height:min(60vh,510px);object-fit:contain;margin-inline:auto;background:#f3f6f8}
.srrm-public-detail .srrm-gallery__rail{display:flex;gap:8px;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;padding:10px 2px;scrollbar-width:thin}
.srrm-public-detail .srrm-gallery__thumb{touch-action:manipulation;flex:0 0 96px;min-width:96px;min-height:82px;padding:4px;border:1px solid var(--srrm-ui-line);background:#fff;border-radius:10px;cursor:pointer}
.srrm-public-detail .srrm-gallery__thumb img{display:block;width:100%;height:70px;object-fit:contain}
.srrm-public-detail .js_job_data_location_title_r{max-width:100%;overflow-wrap:anywhere;line-height:1.7}
@media(max-width:767px){.srrm-ad-card{padding:10px!important}.srrm-ad-card .srrm-ad-card__photo{max-width:100%;max-height:210px;margin-inline:auto}.srrm-public-detail{padding-inline:10px;padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}.srrm-public-detail .srrm-gallery__thumb{flex-basis:82px;min-width:82px}.srrm-ad-card .left_right_brd_b1{min-width:0;float:none;max-width:100%}}
@media(prefers-reduced-motion:reduce){.srrm-ad-card *,.srrm-public-detail *{scroll-behavior:auto!important;transition:none!important}}

/* Missing legacy image assets are a normal public-detail state, not a broken tap target. */
.srrm-public-detail .srrm-gallery__thumb:disabled{opacity:.42;cursor:not-allowed;border-style:dashed}
.srrm-public-detail .srrm-gallery__load-error{display:grid;place-items:center;min-height:190px;
  padding:16px;border:1px dashed var(--srrm-ui-line,#d8e4ed);background:#f3f6f8;
  border-radius:12px;color:#44546a;font-size:16px;text-align:center}
.srrm-public-detail .srrm-gallery__main[hidden]{display:none!important}
