/* image.css — scoped, no background, no horizontal scroll */

.srs-imageSlot{
  --text:#142339;
  --line:#e8ecf4;
  --surface:#fff;

  --shadow:0 10px 30px rgba(16,24,40,.10),0 2px 8px rgba(15,37,96,.06);

  --r-panel:18px;
  --r-card:14px;

  --gapY:28px;

  width:100%;
  max-width:100%;
  margin:0;

  position:relative;
  isolation:isolate;

  overflow:hidden;
  overflow-x:clip;

  overflow-wrap:anywhere;
  hyphens:none;

  color:var(--text);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

@supports not (overflow-x:clip){
  .srs-imageSlot{ overflow-x:hidden; }
}

.srs-imageSlot :where(*, *::before, *::after){ box-sizing:border-box; }
.srs-imageSlot :where(img, svg, video, canvas){ max-width:100%; height:auto; }

/* SAME width as request-demo-box (480px), centered */
.srs-imageSlot__container{
  width:100%;
  max-width:min(480px,100%);
  margin:var(--gapY) auto;
  padding:10px;

  border:1px solid var(--line);
  border-radius:var(--r-panel);
  box-shadow:var(--shadow);

  background:transparent;

  overflow:hidden;
  overflow-x:clip;

  min-width:0;
}

@supports not (overflow-x:clip){
  .srs-imageSlot__container{ overflow-x:hidden; }
}

.srs-imageSlot__frame{
  width:100%;
  min-width:0;

  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--r-card);
  box-shadow:var(--shadow);

  overflow:hidden;

  display:grid;
  place-items:center;

  padding:14px 16px;
}

.srs-imageSlot__img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  min-width:0;

  max-height:180px;
}

@media (max-width:600px){
  .srs-imageSlot{ --gapY:20px; }
  .srs-imageSlot__img{ max-height:160px; }
}

/* reduced motion: clean cascade, no !important */
@media (prefers-reduced-motion: reduce){
  .srs-imageSlot,
  .srs-imageSlot *{
    scroll-behavior:auto;
  }

  .srs-imageSlot *,
  .srs-imageSlot *::before,
  .srs-imageSlot *::after{
    animation:none;
    transition:none;
  }
}