/* OPINI_IMAGE_LAYOUT_V1 — reversible, independent stylesheet.
   Preserve entire editorial cover image, regardless of its original ratio. */
.feature-visual img,
.thumb img,
.article-grid .thumb img,
.featured .feature-visual img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
  background: #f5f7f8;
}
.feature-visual,.thumb { background:#f5f7f8; }
.article-card:hover .thumb img { transform:none !important; }
/* Detail article cover: don't crop very wide or very tall source images. */
.story-cover img, .story-cover picture img {
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:680px;
  margin-left:auto !important;
  margin-right:auto !important;
  object-fit:contain !important;
  object-position:center !important;
}
/* Inline article image sizing. Default = medium even for older articles. */
#rich-editor img, .story-body img {
  display:block;
  box-sizing:border-box;
  width:min(100%, 460px);
  max-width:100%;
  height:auto !important;
  object-fit:contain;
  margin:18px auto;
  border-radius:8px;
}
#rich-editor img[data-opini-size="sm"],.story-body img[data-opini-size="sm"] {width:min(100%, 280px);}
#rich-editor img[data-opini-size="md"],.story-body img[data-opini-size="md"] {width:min(100%, 460px);}
#rich-editor img[data-opini-size="lg"],.story-body img[data-opini-size="lg"] {width:min(100%, 680px);}
#rich-editor img[data-opini-size="full"],.story-body img[data-opini-size="full"] {width:100%;}
/* Selected image is highlighted only while editing; CSS class isn't persisted. */
#rich-editor img.opini-image-selected {outline:3px solid #14b8a6;outline-offset:4px;}
#editor-toolbar .opini-image-size-control {display:inline-flex;align-items:center;gap:6px;padding:0 6px;margin:0;border-left:1px solid #d8e1e4;font:600 11px/1.3 Inter, sans-serif;color:#35474b;white-space:nowrap;}
#editor-toolbar .opini-image-size-control select {width:auto!important;min-width:105px;max-width:150px;min-height:34px;margin:0!important;padding:5px 7px;font-size:12px;}
#editor-toolbar .opini-image-size-control select:disabled {opacity:.65;cursor:not-allowed;}
@media(max-width:650px){
 #editor-toolbar .opini-image-size-control {padding:4px 3px;gap:5px;}
 #editor-toolbar .opini-image-size-control select {min-width:100px;max-width:125px;}
 .story-cover img {max-height:75vh;}
}
