/* index.css — Nerfies template styles + FlowVLA page additions */
body { font-family: "Noto Sans", sans-serif; }

.footer .icon-link { font-size: 25px; color: #000; }
.link-block a { margin-top: 5px; margin-bottom: 5px; }
.link-block { display: inline-block; }

.publication-title, .publication-authors, .teaser { font-family: "Google Sans", "Noto Sans", sans-serif; }
.publication-title { line-height: 1.15; }
.publication-title .lead { display: block; font-size: 1.15em; letter-spacing: -0.01em; margin-bottom: 0.2em; }
.publication-authors { line-height: 1.6; }
.publication-authors a { color: hsl(204, 86%, 53%) !important; }
.publication-authors a:hover { text-decoration: underline; }
.publication-authors a[href="#"], .publication-authors a[href=""] { color: #4a4a4a !important; pointer-events: none; }
.author-block { display: inline-block; }
.publication-venue { color: #555; font-weight: bold; }
.publication-awards { color: #ff3860; font-weight: bolder; }
.publication-links { margin-top: 1rem; }
.publication-banner img { }
.publication-video { position: relative; width: 100%; height: 0; padding-bottom: 56.25%; overflow: hidden; border-radius: 10px !important; }
.publication-video iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.teaser .hero-body { padding-top: 0; padding-bottom: 3rem; }
.teaser video, .teaser img { width: 100%; border-radius: 8px; }
.teaser .subtitle { margin-top: 1.25rem; }

/* SpatialVLA-style prompt line above a video row, and inline method emphasis */
.text-prompt { font-family: Georgia, "Times New Roman", serif; color: gray; font-style: italic; font-size: 20px; font-weight: 400; margin: 0 0 0.75rem; }
.method-text { font-weight: bold; font-style: italic; }

/* video grids: caption above the clip (as on spatialvla.github.io) */
.video-grid { display: grid; grid-template-columns: repeat(var(--cols, 4), minmax(0, 1fr)); gap: 0.75rem 0.75rem; margin: 0 0 1.5rem; }
.video-grid.cols-2 { --cols: 2; } .video-grid.cols-3 { --cols: 3; } .video-grid.cols-4 { --cols: 4; } .video-grid.cols-5 { --cols: 5; }
@media (max-width: 768px) { .video-grid, .video-grid.cols-3, .video-grid.cols-5 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.video-item { min-width: 0; }
.video-item .video-caption { text-align: center; font-size: 0.95rem; color: #363636; margin: 0 0 0.35rem; line-height: 1.3; }
.video-item .video-caption .status { font-style: normal; }
.video-item video, .video-item img.video-fallback { width: 100%; border-radius: 6px; background: #f5f5f5; }
.video-item .video-note { text-align: center; font-size: 0.8rem; color: #7a7a7a; margin: 0.35rem 0 0; line-height: 1.35; }
.video-item.ours .video-caption { font-weight: 700; }

/* figures */
.figure-caption { text-align: center; color: #6b6b6b; font-size: 0.92rem; margin: 0.6rem auto 0; max-width: 760px; line-height: 1.45; }
.figure-block { margin-bottom: 2rem; }
.figure-block img { display: block; margin: 0 auto; }

/* result tables */
.table.results { font-variant-numeric: tabular-nums; font-size: 0.92rem; margin: 0 auto; }
.table.results th, .table.results td { text-align: center; white-space: nowrap; }
.table.results th:first-child, .table.results td:first-child { text-align: left; }
.table.results thead th { background: #fafafa; }
.table.results tr.ours td { background: #eef5ff; font-weight: 700; }
.table.results tr.sep td { border-top: 2px solid #dbdbdb; }
.table.results td.best { font-weight: 700; }
.table.results .venue { color: #8a8a8a; font-weight: 400; font-size: 0.82em; }
.table-caption { text-align: center; color: #6b6b6b; font-size: 0.88rem; margin: 0.4rem 0 1.6rem; }

/* "soon" state for links not yet available */
.button.is-soon { opacity: 0.55; cursor: not-allowed; }

/* BibTeX */
#BibTeX pre { font-size: 0.85rem; line-height: 1.6; }

/* misc */
.note-muted { color: #7a7a7a; font-size: 0.9rem; }
.hero.is-light .title, .hero.is-light strong { color: #363636; }

/* inline math (no MathJax dependency) */
.math { font-family: "Times New Roman", Times, "Noto Serif", serif; font-size: 1.06em; }
.math i { font-style: italic; }
.math sub, .math sup { font-size: 0.72em; }

/* uniform clip boxes so rows line up regardless of the exact source aspect ratio */
.video-grid.cols-4 video, .video-grid.cols-3 video, .video-grid.cols-4 img.video-fallback, .video-grid.cols-3 img.video-fallback { aspect-ratio: 1 / 1; object-fit: cover; }
.video-grid.cols-2 { max-width: 840px; margin-left: auto; margin-right: auto; }
.video-grid.cols-2 video, .video-grid.cols-2 img.video-fallback { aspect-ratio: 480 / 354; object-fit: cover; }
.video-item .video-note { min-height: 0; }
