.video-workspace {
  display: grid;
  grid-template-columns: minmax(420px, 510px) minmax(0, 1fr);
  min-height: calc(100vh - 72px);
  border-bottom: 1px solid var(--line);
}
.video-hero { display: flex; min-width: 0; flex-direction: column; gap: 34px; padding: clamp(34px, 4vw, 58px); border-right: 1px solid var(--line); background: rgba(8,8,8,.65); }
.video-hero h1 { max-width: 360px; font-size: clamp(46px, 5vw, 68px); }
.video-intro { max-width: 390px; margin-top: 20px; color: var(--muted); font-size: clamp(18px, 1.5vw, 22px); }
.video-form { width: 100%; padding: clamp(18px, 2.3vw, 28px); border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel); }
.video-form > label { display: flex; justify-content: space-between; margin-bottom: 9px; }
.video-form > label span { color: var(--muted); font-size: 13px; }
.video-form textarea { min-height: 180px; }
.video-form .submission-notice { margin: 14px 0 18px; }
.video-skill-row { margin-bottom: 18px; }
.video-skill-row label { display: block; margin-bottom: 8px; }
.video-reference { margin-top: 12px; }
.video-reference .secondary-button { width: 100%; }
.video-reference-preview { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 9px; padding: 10px 12px; border: 1px solid var(--line); border-radius: var(--radius-sm); color: var(--muted); font-size: 14px; }
.video-reference-preview span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.video-reference-preview button { border: 0; background: transparent; color: var(--white); cursor: pointer; text-decoration: underline; }
.cancel-video { display: block; margin: 10px auto 0; }
.video-output { min-width: 0; min-height: calc(100vh - 72px); padding: clamp(34px, 4vw, 58px); }
.video-status { display: flex; align-items: center; gap: 14px; margin-bottom: 24px; padding: 16px 18px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--panel); }
.video-status strong { font-weight: 400; }
.video-status p { margin-top: 2px; color: var(--muted); font-size: 15px; }
.video-status-copy { min-width: 0; flex: 1; }
.video-status-copy > div { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
#videoElapsed { flex: 0 0 auto; color: var(--muted); font-size: 14px; }
.status-pulse { width: 11px; height: 11px; flex: 0 0 auto; border-radius: 50%; background: var(--white); box-shadow: 0 0 0 0 rgba(255,255,255,.4); animation: pulse 1.5s infinite; }
@keyframes pulse { 70% { box-shadow: 0 0 0 10px transparent; } 100% { box-shadow: 0 0 0 0 transparent; } }
.video-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); align-content: start; gap: 20px; }
.video-grid .empty-state { min-height: min(65vh, 620px); }
.video-card, .video-shimmer { overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel); }
.video-player { display: block; width: 100%; aspect-ratio: 16 / 9; background: #000; object-fit: contain; }
.video-meta { padding: 15px; }
.video-meta strong { overflow: hidden; font-weight: 400; text-overflow: ellipsis; white-space: nowrap; }
.video-shimmer { position: relative; min-height: 300px; }
.video-shimmer::after { position: absolute; inset: 0; transform: translateX(-110%); background: linear-gradient(100deg, transparent 20%, rgba(255,255,255,.1) 48%, transparent 76%); animation: shimmer 1.25s infinite; content: ""; }
.header-nav a[aria-current="page"] { color: var(--white); }
.video-ad-section { padding-top: 42px; border-bottom: 1px solid var(--line); }
.video-ad-zone { min-height: 280px; display: flex; align-items: center; justify-content: center; flex-direction: column; }
.video-ad-zone .ad-native { width: 100%; min-height: 180px; }
.generation-sponsor { position: relative; margin-bottom: 24px; padding: 18px; border: 1px solid var(--line-strong); border-radius: var(--radius-sm); background: var(--raised); text-align: center; }
.generation-sponsor > button { position: absolute; top: 10px; right: 12px; border: 0; background: transparent; color: var(--muted); cursor: pointer; text-decoration: underline; }
.generation-sponsor p:not(.ad-label) { margin: 6px auto 10px; color: var(--muted); font-size: 15px; }
.generation-sponsor a { color: var(--white); text-underline-offset: 3px; }
@media (max-width: 980px) {
  .video-workspace { grid-template-columns: minmax(380px, 46%) minmax(0, 1fr); }
  .video-hero, .video-output { padding: 32px 26px; }
  .video-hero h1 { font-size: clamp(42px, 6vw, 60px); }
  .video-grid { grid-template-columns: 1fr; }
}
@media (max-width: 840px) {
  .video-workspace { display: block; min-height: calc(100vh - 60px); }
  .video-hero { border-right: 0; border-bottom: 1px solid var(--line); }
  .video-output { min-height: 520px; }
  .video-hero, .video-output { padding: 30px 18px; }
  .video-hero h1 { max-width: 420px; }
  .video-form textarea { min-height: 160px; }
  .video-grid { grid-template-columns: 1fr; }
  .video-status-copy > div { align-items: flex-start; flex-direction: column; gap: 2px; }
  .video-ad-section { padding-top: 30px; }
}
