@import url('../../assets/project-pages.css?v=1');
@import url('../voldit/viewer.css?v=4');

/* Content-specific fit within the shared VolDiT design. */
.cardiodit-page .v-nav-sections { gap: 23px; }
.cardiodit-page .v-authors sup { font-size: .75em; line-height: 0; }
.v-project .c-author-note { margin-top: 4px; font-size: var(--v-meta); line-height: 1.4; color: var(--v-muted); }
.c-motion-player { grid-template-rows: 28px minmax(0,1fr) 36px; }
.c-depth { display: flex; align-items: center; gap: 12px; padding: 0 32px; background: #000; color: #edf3f5; font-size: .8125rem; }
.c-depth::before, .c-depth::after { content: ''; height: 1px; flex: 1; background: #bdc7cc; }
.c-depth i { order: 1; margin-left: -17px; font-size: 1rem; }
.c-function-results .v-dice-groups { width: min(100%,1100px); }
.c-function-results .v-dice-group dd { font-size: 1.75rem; white-space: nowrap; }
.c-development-layout { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(0,1fr); grid-template-rows: minmax(0,1fr); gap: 64px; flex: 1; min-height: 0; }
.v-project .c-development-media { min-height: 0; display: flex; flex-direction: column; align-items: center; gap: 12px; container-type: size; }
.c-development-media .v-cine-player { width: min(100%,440px,calc(100cqh - 106px)); height: auto; flex: none; grid-template-rows: auto 36px; }
.c-development-media .v-cine-viewport { aspect-ratio: 1; }
.c-development-media figcaption { text-align: center; font-size: var(--v-meta); color: var(--v-muted); padding: 0; }
.c-development-media figcaption span { display: block; margin-top: 6px; }
.c-development-layout .v-method-steps { padding-bottom: 20px; }
.c-weights-note { margin-top: 24px !important; padding-top: 22px; border-top: 1px solid var(--v-line); color: var(--v-muted); }
.cardiodit-page .v-citation pre { font-size: .9375rem; }
.cardiodit-page .v-resources-body { justify-content: flex-start; }
#cardiodit-viewer .volume-viewer-stage { grid-template-rows: 76px minmax(0,1fr) 54px 68px 30px; }
.volume-playback { display: flex; align-items: center; gap: 18px; padding: 8px 24px; border: 1px solid var(--v-line); border-bottom: 0; }
.volume-frame-control { display: flex; align-items: center; flex: 1; gap: 16px; font-size: var(--v-control); min-width: 0; }
.volume-frame-control output { min-width: 7ch; font-variant-numeric: tabular-nums; white-space: nowrap; }
.volume-frame-control input { flex: 1; }
.volume-viewer .volume-play { display: inline-flex; align-items: center; justify-content: center; width: 42px; color: var(--v-ink); background: transparent; border: 1px solid var(--v-line); border-radius: 3px; font-size: 1.25rem; }
.volume-viewer .volume-play:hover { background: var(--v-tint); }
.volume-viewer .volume-speed { min-width: 84px; width: 84px; }
.volume-controls { position: relative; }
#cardiodit-viewer .volume-controls::before { content: ''; position: absolute; top: 0; left: 24px; right: 24px; height: 1px; background: var(--v-line); }
@media (min-width: 1000px) and (min-height: 740px) and (max-height: 820px) {
  .cardiodit-page .v-citation pre { font-size: .8125rem; }
  .c-development-layout { gap: 48px; }
  .c-function-results .v-dice-group dd { font-size: 1.625rem; }
  #cardiodit-viewer .volume-viewer-stage { grid-template-rows: 68px minmax(0,1fr) 48px 60px 30px; }
}
@media (max-width: 999px), (max-height: 739px) {
  .c-motion-player { grid-template-rows: 28px auto 40px; }
  .c-development-layout { flex: none; gap: 30px; }
  .v-project .c-development-media { container-type: normal; }
  .c-development-media .v-cine-player { width: min(100%,440px); }
}
/* Ten authors and the additional motion controls need more room on narrow laptops. */
@media (min-width: 1000px) and (max-width: 1199px) and (min-height: 740px) {
  .cardiodit-page .v-section { height: auto; min-height: calc(100svh - var(--v-nav-height)); }
  .cardiodit-page .v-gallery,
  .cardiodit-page :is(.v-explorer-body,.v-method-layout,.v-results-body,.v-resources-body,.c-development-layout) { flex: none; }
  .cardiodit-page .v-cine-frame { height: auto; container-type: normal; }
  .c-motion-player { height: auto; grid-template-rows: 28px auto 36px; }
  .c-motion-player .v-cine-viewport { aspect-ratio: 3.125; }
  .cardiodit-page .v-next, .cardiodit-page .v-footer { margin-top: auto; }
  .cardiodit-page .v-figure-link { align-items: center; }
  .cardiodit-page .v-figure-link img { height: auto; }
  .v-project .c-development-media { container-type: normal; }
  .c-development-media .v-cine-player { width: min(100%,440px); }
  #cardiodit-viewer .volume-viewer-stage { height: 620px; }
  .c-function-results .v-dice-group { padding-inline: 20px; }
}
@media (max-width: 760px) {
  .cardiodit-page .v-nav-sections { gap: 2px; }
  .cardiodit-page .v-nav-sections a { font-size: clamp(.6875rem,3vw,.75rem); }
  .c-depth { padding-inline: 16px; font-size: .6875rem; }
  .c-development-layout { grid-template-columns: 1fr; }
  .c-function-results .v-dice-groups { grid-template-columns: 1fr; gap: 24px; }
  .c-function-results .v-dice-group + .v-dice-group { border-left: 0; }
  .cardiodit-page .v-citation pre { font-size: .8125rem; }
  #cardiodit-viewer .volume-viewer-stage { height: 720px; grid-template-rows: 140px minmax(0,1fr) 60px 104px 48px; }
  .volume-playback { padding-inline: 12px; gap: 8px; }
  .volume-frame-control { gap: 8px; font-size: .8125rem; }
  .volume-frame-control > span { display: none; }
  .volume-viewer .volume-speed { width: 64px; }
  .volume-viewer .volume-play { width: 32px; flex-shrink: 0; }
}
.c-motion-player:fullscreen { grid-template-rows: 28px minmax(0,1fr) 48px; }
.c-development-media .v-cine-player:fullscreen { width: 100%; height: 100%; grid-template-rows: minmax(0,1fr) 48px; }
.c-development-media .v-cine-player:fullscreen .v-cine-viewport { aspect-ratio: auto; }
#cardiodit-viewer .volume-viewer-stage:fullscreen { height: 100%; }
