.vgal{position:relative}.vgal__grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:12px;display:grid}.vtile{--tile-pad:4px;min-width:0;position:relative}.vtile[data-filtered-out]{display:none}.vtile .frame__line--inner{width:calc(100% - 4px);height:calc(100% - 4px);inset:2px}.vtile__in{position:relative}.frame.vtile__frame{--frame-pad:var(--tile-pad);width:100%;display:flow-root}.vtile__frame>.frame__inner{margin:var(--frame-pad);background:var(--ink-2);position:relative;inset:auto}.vtile .frame__corner{width:18px;height:18px}.vtile .frame__corner--tl{top:-2px;left:-2px}.vtile .frame__corner--tr{top:-2px;right:-2px}.vtile .frame__corner--bl{bottom:-2px;left:-2px}.vtile .frame__corner--br{bottom:-2px;right:-2px}.vtile .frame__corner .wingq{display:none}.vtile__media{aspect-ratio:16/9;background:radial-gradient(70% 60% at 50% 46%, var(--ink-3), var(--ink-deep));position:relative;container-type:inline-size}.vtile__img{object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.vtile__play{color:var(--ether);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.vtile__play svg{aspect-ratio:1;background:radial-gradient(closest-side, color-mix(in srgb, var(--ink-deep) 55%, transparent), transparent);width:clamp(44px,8cqi,68px);height:auto;transition:color var(--dur-micro) var(--ease-unfold), transform var(--dur-meso) var(--ease-unfold);border-radius:50%}.vtile__play path,.vtile__play circle{stroke:currentColor;stroke-width:1px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.vtile__play .vtile__faint{opacity:.4}@media (hover:hover){.vtile__in:hover .vtile__play svg{color:var(--star);transform:scale(1.06)}}.vtile__in:has(:focus-visible) .vtile__play svg{color:var(--star)}.js:not(.reduced) .vgal .vtile__in:not(.is-in){opacity:0}.reveal-failsafe .vgal .vtile__in{opacity:1!important}@media (width<=599px){.vgal__grid{gap:9px}}.vv{width:100%;max-width:none;height:100%;max-height:none;color:var(--text);background:0 0;border:0;margin:0;padding:16px;position:fixed;inset:0;overflow:hidden}.vv[open]{place-items:center;display:grid}.vv::backdrop{background:0 0}.vv__veil{background:var(--veil);position:absolute;inset:0}.vv__panel{width:min(1180px,100%);max-height:100%;position:relative}.frame.vv__frame{width:100%;display:block}.vv__frame>.frame__inner{background:linear-gradient(160deg, color-mix(in srgb, var(--ink-high) 97%, transparent), color-mix(in srgb, var(--ink) 98%, transparent) 45%, color-mix(in srgb, var(--ink-low) 99%, transparent));margin:0;position:relative;inset:auto}.vv__body{grid-template-columns:minmax(0,1fr) clamp(240px,26%,300px);align-items:stretch;display:grid}.vv__view{min-width:0;padding:clamp(14px,2vw,24px)}.vv__window{aspect-ratio:16/9;background:var(--ink-deep);width:min(100%,177.778svh - 170.667px);box-shadow:0 0 0 1px var(--line-soft);margin-inline:auto;position:relative}.vv__slot{position:absolute;inset:0}.vv__slot[hidden]{display:none}.vv__info{overscroll-behavior:contain;border-left:1px solid var(--line-faint);flex-direction:column;gap:10px;min-height:0;padding:64px clamp(20px,2.4vw,32px) 28px;display:flex;overflow-y:auto;container-type:inline-size}.vv__info>[hidden]{display:none}.vv__chip{color:var(--ether);font-size:1.125rem}.vv__title{text-wrap:balance;font-size:min(clamp(1.7rem,2.6vw,2.3rem),max(1.5rem,12cqi));line-height:1.12}:lang(vi) .vv__title{line-height:1.24}.vv__meta{color:var(--text-dim)}.vv__go{align-self:flex-start;margin-top:14px}.vv__close{z-index:2;width:44px;height:44px;color:var(--text-dim);transition:color var(--dur-micro) var(--ease-unfold);place-items:center;display:grid;position:absolute;top:10px;right:10px}.vv__close svg{width:40px;height:40px}.vv__close path,.vv__close circle{stroke:currentColor;stroke-width:1px;vector-effect:non-scaling-stroke}.vv__close circle{stroke:var(--line-soft);transition:stroke var(--dur-micro) var(--ease-unfold)}.vv__close:is(:hover,:focus-visible){color:var(--star)}.vv__close:is(:hover,:focus-visible) circle{stroke:var(--line)}@media (width<=760px){.vv{padding:8px}.vv__body{grid-template-columns:minmax(0,1fr)}.vv__view{padding:52px 10px 6px}.vv__window{width:100%}.vv__info{border-left:0;border-top:1px solid var(--line-faint);gap:6px;max-height:34svh;padding:14px 18px 20px}.vv__title{font-size:1.5rem}.vv__close{top:4px;right:4px}}.anim:has([data-filter-bar][data-filter-active]) .anim__soon-all{display:none}
