/* Homepage field-class records: full-frame color photos, independent of cases. */
.fieldclass-section{border-top:1px solid var(--rule);padding:28px 0 32px}
.fieldclass-content{width:100%;max-width:none;margin:0}
.fieldclass-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}
.fieldclass-heading .eyebrow{margin-bottom:8px}
.fieldclass-heading h2{font-size:30px;font-weight:500}
.fieldclass-meta,.fieldclass-note,.fieldclass-lightbox{font-family:Roboto,Helvetica,Arial,"PingFang SC",sans-serif}
.fieldclass-meta{font-size:12px;line-height:1.7;color:var(--muted);text-align:right;margin:0}
.fieldclass-hero{margin-bottom:8px}
.fieldclass-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.fieldclass-photo{position:relative;display:block;aspect-ratio:3/2;background:var(--soft);cursor:zoom-in}
.fieldclass-photo img{display:block;width:100%;height:100%;object-fit:contain;filter:none}
.fieldclass-zoom{position:absolute;right:12px;bottom:12px;padding:7px 11px;background:#000b;color:#fff;font:12px/1.4 Roboto,Helvetica,Arial,"PingFang SC",sans-serif}
.fieldclass-photo:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.fieldclass-photo:hover{outline:1px solid var(--muted);outline-offset:2px}
.fieldclass-note{font-size:12px;color:var(--muted);line-height:1.7;margin:14px 0 0}
.fieldclass-caption{display:flex;align-items:center;justify-content:space-between;gap:16px}
.fieldclass-refresh{min-height:44px;border:1px solid var(--rule);background:transparent;padding:8px 12px;margin-top:10px;font-size:12px;flex-shrink:0}
html.fieldclass-viewing{overflow:hidden}
body.fieldclass-viewing{position:fixed;top:var(--fieldclass-scroll-top);left:0;right:0;width:100%;overflow:hidden}
#fieldclass-lightbox{width:min(1360px,calc(100vw - 32px));max-width:none;height:calc(100dvh - 32px);max-height:calc(100dvh - 32px);padding:16px;border:1px solid var(--rule);color:var(--ink);background:#080808;overflow:hidden;overscroll-behavior:contain}
#fieldclass-lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px}
#fieldclass-lightbox::backdrop{background:rgba(0,0,0,.94)}
.fieldclass-lightbox-top{display:flex;justify-content:space-between;align-items:center;gap:16px;min-width:0}
.fieldclass-lightbox-top h2{font-size:18px;line-height:1.35;font-weight:500}
.fieldclass-lightbox-top p{font-size:11px;color:var(--muted);margin:5px 0 0;line-height:1.5}
#fieldclass-lightbox button{border:1px solid var(--rule);color:var(--ink);background:transparent;min-width:76px;min-height:44px;padding:8px 12px;font-size:13px;flex-shrink:0}
.fieldclass-image-wrap{position:relative;display:flex;align-items:center;justify-content:center;min-height:0;min-width:0;touch-action:pan-y pinch-zoom;user-select:none}
#fieldclass-image{display:block;width:100%;height:100%;min-height:0;object-fit:contain;filter:none;pointer-events:auto;-webkit-user-drag:none}
.fieldclass-lightbox-bottom{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}
.fieldclass-progress{text-align:center;min-width:0}
#fieldclass-count{display:block;font-size:13px;line-height:1.5}
#fieldclass-status{font-size:11px;color:var(--muted);line-height:1.4;margin:3px 0 0;min-height:16px}
#fieldclass-lightbox #fieldclass-retry{min-height:32px;font-size:11px;margin-top:4px;padding:4px 10px}
.fieldclass-touch-tip{display:none}
@media(max-width:760px){
  .fieldclass-section{padding:24px 0 28px}
  .fieldclass-heading{display:block;margin-bottom:14px}
  .fieldclass-heading h2{font-size:25px}
  .fieldclass-meta{text-align:left;margin-top:10px}
  .fieldclass-hero{margin-bottom:6px}
  .fieldclass-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .fieldclass-zoom{right:8px;bottom:8px;font-size:11px;padding:6px 9px}
  .fieldclass-note{font-size:11px;margin-top:12px}
  .fieldclass-caption{flex-wrap:wrap;gap:0}
  #fieldclass-lightbox{position:fixed;top:calc(var(--tsf-viewport-top,0px) + env(safe-area-inset-top));bottom:auto;margin:0;width:100vw;height:calc(var(--tsf-viewport-height,100dvh) - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-height:none;padding:12px max(12px,env(safe-area-inset-right)) 12px max(12px,env(safe-area-inset-left));border:0}
  #fieldclass-lightbox[open]{gap:10px}
  .fieldclass-lightbox-top{gap:10px}
  .fieldclass-lightbox-top h2{font-size:16px}
  #fieldclass-lightbox button{min-width:64px;padding:8px;font-size:12px}
  .fieldclass-lightbox-bottom{gap:8px}
  .fieldclass-key-tip{display:none}
  .fieldclass-touch-tip{display:inline}
}
@media(max-height:500px){
  #fieldclass-lightbox{padding:8px 12px}
  #fieldclass-lightbox[open]{gap:6px}
  .fieldclass-lightbox-top p{display:none}
  .fieldclass-lightbox-top h2{font-size:15px}
  #fieldclass-lightbox button{padding:6px 10px}
}
