/* =========================================================
 * TypechoGlass · 视频播放器（玻璃风）
 * 由文章正文中的 [video]链接[/video] 短代码生成，宽度与正文同宽。
 * 支持 YouTube / Bilibili（点击封面再加载 iframe，16:9）与视频直链（原始比例）。
 * ========================================================= */
.ag-video{margin:1.4em 0;width:100%;}

/* 嵌入型（YouTube / Bilibili）：16:9 响应式，宽度随正文 */
.ag-video-embed{
  position:relative;width:100%;
  border-radius:var(--radius-lg);overflow:hidden;
  border:1px solid var(--line);box-shadow:var(--shadow-soft);
  background:#000;
}
.ag-video-embed::before{content:"";display:block;padding-top:56.25%;}
.ag-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

/* 点击加载前的封面 */
.ag-video-cover{
  position:absolute;inset:0;cursor:pointer;
  background-size:cover;background-position:center;
  display:flex;align-items:center;justify-content:center;
}
.ag-video-cover::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.28);transition:background .2s ease;}
.ag-video-cover:hover::after{background:rgba(0,0,0,.16);}
.ag-video-cover.is-placeholder{background:linear-gradient(135deg, var(--brand-soft), var(--bg-elevated));}
.ag-video-tag{
  position:absolute;top:12px;left:14px;z-index:2;
  font-size:.8rem;font-weight:700;color:var(--text-2);
  background:var(--bg-strong);padding:4px 10px;border-radius:var(--radius-pill);
  border:1px solid var(--line);
}
.ag-video-play{
  position:relative;z-index:2;
  width:64px;height:64px;padding:0;border:none;cursor:pointer;
  border-radius:var(--radius-pill);
  background:var(--brand);color:#fff;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 24px rgba(0,0,0,.28);
  transition:transform .15s ease, filter .15s ease;
}
.ag-video-cover:hover .ag-video-play{transform:scale(1.06);filter:brightness(1.05);}
.ag-video-play svg{width:28px;height:28px;fill:currentColor;margin-left:3px;}

/* 直链视频：按原始比例，宽度撑满 */
.ag-video-file video{
  display:block;width:100%;height:auto;
  border-radius:var(--radius-lg);
  border:1px solid var(--line);box-shadow:var(--shadow-soft);
  background:#000;
}

@media (max-width:560px){
  .ag-video-play{width:54px;height:54px;}
  .ag-video-play svg{width:24px;height:24px;}
}
