/* Tâm Linh Việt V83 — photograph presentation. Original pixel files are retained. */
body[data-tlv83] { --photo-paper:#f3eee6; --photo-line:#ded2bf; --photo-radius:12px; }
body[data-tlv83] img[data-tlv83-photo] {
  display:block; max-width:100%; object-fit:contain!important; object-position:center!important;
  transform:none!important; filter:none!important;
}
/* Product and category cards: one frame, a complete object, restrained background. */
body[data-tlv83] :is(.v31-card-image,.photo28-picture,.e53-image) {
  display:flex!important; align-items:center; justify-content:center; overflow:hidden;
  border-radius:var(--photo-radius); background:var(--photo-paper); border:1px solid var(--photo-line);
  box-sizing:border-box; padding:8px!important; position:relative;
}
body[data-tlv83] :is(.v31-card-image,.photo28-picture) { aspect-ratio:4/5!important; height:auto!important; }
body[data-tlv83] .e53-image { aspect-ratio:3/2!important; height:auto!important; }
body[data-tlv83] :is(.v31-card-image,.photo28-picture,.e53-image) > img {
  width:100%!important; height:100%!important; max-height:100%!important; aspect-ratio:auto!important;
  padding:0!important; margin:0!important; border:0!important; border-radius:7px;
}
body[data-tlv83] .v31-card-image > span { bottom:14px;left:14px;border-radius:4px; }
body[data-tlv83] :is(.photo28-card,.e53-card,.v35-idea-card) {
  overflow:hidden; border:1px solid var(--photo-line); border-radius:var(--photo-radius);
  background:#fffcf6; box-shadow:0 5px 18px #4c332009;
}
body[data-tlv83] .photo28-card .photo28-picture,
body[data-tlv83] .e53-card .e53-image { border-width:0 0 1px;border-radius:0; }
body[data-tlv83] .v31-need { min-width:0; }
body[data-tlv83] .v31-need > img {
  width:100%!important; height:auto!important; aspect-ratio:4/5!important;
  background:var(--photo-paper); padding:8px!important; box-sizing:border-box;
  border:1px solid var(--photo-line);border-radius:var(--photo-radius);
}
body[data-tlv83] :is(.grid,.integration-teasers) .card > a:first-child {
  display:block; aspect-ratio:4/5; padding:10px; background:var(--photo-paper);
  border-bottom:1px solid var(--photo-line);box-sizing:border-box;
}
body[data-tlv83] :is(.grid,.integration-teasers) .card > a:first-child > img {
  width:100%!important;height:100%!important;aspect-ratio:auto!important;padding:0!important;
  background:transparent!important;
}
body[data-tlv83] :is(.grid,.integration-teasers) .card { border-radius:var(--photo-radius);overflow:hidden; }
/* Long-form articles retain the actual camera frame; tall images no longer overwhelm the reading column. */
body[data-tlv83] :is(.tlv-reading,.tlv-article-body,.photo28-reading,article[class*="tlv"],.article-body) figure {
  border:1px solid var(--photo-line)!important; border-radius:var(--photo-radius)!important;
  background:var(--photo-paper)!important;overflow:hidden;
}
body[data-tlv83] :is(.tlv-reading,.tlv-article-body,.photo28-reading,article[class*="tlv"],.article-body) figure img[data-tlv83-photo] {
  width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;
  margin:0 auto!important;
}
body[data-tlv83] :is(.tlv-reading,.tlv-article-body,.photo28-reading,article[class*="tlv"],.article-body) figure img[data-tlv83-orientation="portrait"] {
  max-width:min(100%,600px)!important;
}
body[data-tlv83] :is(.tlv-reading,.tlv-article-body,.photo28-reading,article[class*="tlv"],.article-body) figure > :is(a,button) {
  display:block;width:100%;background:transparent;
}
body[data-tlv83] :is(.tlv-reading,.tlv-article-body,.photo28-reading,article[class*="tlv"],.article-body) figcaption {
  padding:14px 18px!important;margin:0!important;background:#fffcf7;color:#645747;
  font-size:14px;line-height:1.65;border-top:1px solid var(--photo-line);
}
body[data-tlv83] .tlv83-original {
  display:inline-flex!important;width:auto!important;min-height:44px;align-items:center;
  padding:2px 0;margin-top:8px;font-weight:600;color:#754638;text-decoration:underline;
  text-underline-offset:4px;
}
body[data-tlv83] .tlv83-original:focus-visible {outline:3px solid #754638;outline-offset:4px;}
body[data-tlv83] .v31-gallery-main {
  background:var(--photo-paper)!important;border:1px solid var(--photo-line);border-radius:var(--photo-radius);
  overflow:hidden;padding:10px!important;box-sizing:border-box;
}
body[data-tlv83] .v31-gallery-main > img {
  width:100%!important;height:auto!important;max-height:80vh!important;aspect-ratio:auto!important;
}
body[data-tlv83] .v31-thumb {border-radius:6px;overflow:hidden;background:var(--photo-paper);}
body[data-tlv83] .v31-thumb img {width:100%;height:100%;object-fit:contain!important;}
body[data-tlv83] :is(.s29-hero-frame,.v38-store-photo) {overflow:hidden;}
body[data-tlv83] :is(.s29-hero-frame,.v38-store-photo) img {width:100%!important;height:auto!important;aspect-ratio:auto!important;}
body[data-tlv83] :is(.v46-curated-card,.v35-idea-card) img {
  width:100%!important;aspect-ratio:4/5!important;height:auto!important;object-fit:contain!important;
  background:var(--photo-paper)!important;padding:8px;box-sizing:border-box;border-radius:8px;
}
@media(max-width:600px){
  body[data-tlv83] :is(.photo28-grid,.v35-idea-grid) {grid-template-columns:1fr!important;gap:24px!important;}
  body[data-tlv83] .photo28-picture {aspect-ratio:1/1!important;}
  body[data-tlv83] .v31-card-image {padding:6px!important;}
  body[data-tlv83] .v31-card-image > span {left:10px;bottom:10px;}
  body[data-tlv83] .e53-image {padding:6px!important;}
  body[data-tlv83] :is(.photo28-reading,.tlv-reading) figcaption {padding:12px 14px!important;}
}
@media(prefers-reduced-motion:reduce){body[data-tlv83] img[data-tlv83-photo]{transition:none!important;animation:none!important;}}
