/* DreamCode / Thành Vinh Legal News: single current layout, isolated from legacy News widgets. */
.dc-tv-legal, .dc-tv-legal * {box-sizing:border-box}
.dc-tv-legal{width:100%; max-width:100%; padding:52px 24px 100px; background:#fff; color:#051a53; isolation:isolate}
.dc-tv-legal__inner{width:100%; max-width:1320px; min-width:0; margin:0 auto}
.dc-tv-legal__header{display:flex; align-items:center; justify-content:space-between; gap:24px; min-width:0; margin-bottom:44px}
.dc-tv-legal__heading{min-width:0; margin:0; padding:0; color:#051a53; font-size:44px; line-height:1.2; font-weight:750; letter-spacing:-.015em; overflow-wrap:anywhere}
.dc-tv-legal__screen-reader{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* Tìm kiếm.svg: 320×48 outline pill; separate 40×40 action. Scoped to prevent Elementor button/input globals. */
.dc-tv-legal .dc-tv-legal__search{width:320px;max-width:100%;min-width:0;flex:0 1 auto;height:48px;padding:3px 3px 3px 16px;margin:0;display:flex;align-items:center;gap:8px;border:1px solid #e1e6ef;border-radius:24px;background-color:#fff;box-shadow:none;transition:border-color .22s ease}
.dc-tv-legal .dc-tv-legal__search:focus-within{border-color:#080977}
.dc-tv-legal .dc-tv-legal__search-input,.dc-tv-legal .dc-tv-legal__search-input:focus{display:block;flex:1 1 0;min-width:0;max-width:100%;height:100%;min-height:0!important;margin:0;padding:0;border:0!important;outline:0;border-radius:0;background:transparent!important;box-shadow:none!important;font-family:inherit;font-size:14px;font-weight:400;line-height:1.4;color:#051a53;-webkit-appearance:none;appearance:none;text-overflow:ellipsis}
.dc-tv-legal .dc-tv-legal__search-input::placeholder{color:#728098;opacity:1}
.dc-tv-legal .dc-tv-legal__search-input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}
.dc-tv-legal .dc-tv-legal__search-button,.dc-tv-legal .dc-tv-legal__search-button:hover,.dc-tv-legal .dc-tv-legal__search-button:active,.dc-tv-legal .dc-tv-legal__search-button:focus{flex:0 0 var(--dc-tv-search-action-size,40px);width:var(--dc-tv-search-action-size,40px);height:var(--dc-tv-search-action-size,40px);min-width:var(--dc-tv-search-action-size,40px);min-height:var(--dc-tv-search-action-size,40px);max-width:none;padding:0;margin:0;display:grid;place-items:center;position:relative;appearance:none;-webkit-appearance:none;cursor:pointer;border:0;border-radius:50%;color:var(--dc-tv-search-button-color,#fff);background:var(--dc-tv-search-button-bg,#080977);box-shadow:none;line-height:1;transform:none;transition:background-color .24s ease,color .24s ease}
.dc-tv-legal .dc-tv-legal__search-button::before{content:"";position:absolute;inset:-2px;border-radius:50%;background:transparent}
.dc-tv-legal .dc-tv-legal__search-button:hover,.dc-tv-legal .dc-tv-legal__search-button:focus-visible{background:var(--dc-tv-search-button-hover-bg,#051a53);color:var(--dc-tv-search-button-hover-color,#fff)}
.dc-tv-legal .dc-tv-legal__search-button:focus-visible{outline:2px solid #080977;outline-offset:3px}
.dc-tv-legal__search-icon,.dc-tv-legal__date-icon,.dc-tv-legal__page-icon,.dc-tv-legal__feature-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;line-height:1}
.dc-tv-legal__search-icon svg{display:block;width:24px;height:24px;max-width:100%;flex:0 0 auto}
.dc-tv-legal__search-icon .dc-tv-legal__search-svg{fill:none;stroke:none}
.dc-tv-legal__search-icon i{font-size:24px;line-height:1}
.dc-tv-legal__feature{display:grid; grid-template-columns:var(--dc-tv-legal-photo,48.5%) minmax(0,1fr); align-items:stretch; min-width:0; min-height:429px; margin-bottom:48px; border-radius:24px; background:#f4f7fa; overflow:hidden}
.dc-tv-legal__feature-media{position:relative; min-width:0; min-height:0; background:#e8edf4}
/* Extra 640×493 featured image variant from Thông tin pháp lý.svg. Image stays a content image, never a blurred background. */
.dc-tv-legal__feature--portrait .dc-tv-legal__feature-media{aspect-ratio:640 / 493;min-height:0}
.dc-tv-legal__feature--portrait .dc-tv-legal__feature-image{object-fit:cover}

.dc-tv-legal__feature-image,.elementor .dc-tv-legal__feature-image{position:absolute; inset:0; display:block; width:100%; height:100%; max-width:none; object-fit:cover; object-position:center; margin:0; padding:0}
.dc-tv-legal__feature-content{display:flex; flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:42px 42px 42px 48px}
.dc-tv-legal__feature-kicker{max-width:100%;margin:0 0 26px;color:#c8010a;font-size:16px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.dc-tv-legal__feature-title{width:100%;margin:0 0 18px;padding:0;color:#051a53;font-size:34px;line-height:1.18;font-weight:750;overflow-wrap:anywhere}
.dc-tv-legal__feature-description{min-width:0;width:100%;color:#202738;font-size:17px;line-height:1.55;overflow-wrap:anywhere}
.dc-tv-legal__feature-description p{margin:0 0 15px;padding:0}
.dc-tv-legal__feature-description p:last-child{margin-bottom:0}
.dc-tv-legal__feature-description a{color:inherit;text-decoration:underline}
.dc-tv-legal .dc-tv-legal__feature-link,.dc-tv-legal .dc-tv-legal__feature-link:hover,.dc-tv-legal .dc-tv-legal__feature-link:focus,.dc-tv-legal .dc-tv-legal__feature-link:active{display:inline-flex;align-items:center;gap:12px;min-height:48px;max-width:100%;min-width:0;margin:24px 0 0;padding:3px 3px 3px 19px;border:1px solid var(--dc-tv-feature-btn-border,#080977);border-radius:999px;box-shadow:none;text-decoration:none;font-family:inherit;font-size:15px;line-height:1.2;font-weight:600;letter-spacing:normal;white-space:normal;overflow-wrap:anywhere;color:var(--dc-tv-feature-btn-text,#fff);background-color:var(--dc-tv-feature-btn-bg,#080977);transition:background-color .28s ease,color .28s ease,border-color .28s ease}
.dc-tv-legal .dc-tv-legal__feature-link:hover,.dc-tv-legal .dc-tv-legal__feature-link:focus-visible{color:var(--dc-tv-feature-btn-hover-text,#080977);background-color:var(--dc-tv-feature-btn-hover-bg,#fff);border-color:var(--dc-tv-feature-btn-hover-border,#080977)}
.dc-tv-legal__feature-link-text{min-width:0;max-width:100%;overflow-wrap:anywhere}
.dc-tv-legal__feature-icon-wrap{position:relative;display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:50%;color:var(--dc-tv-feature-circle-color,#080977);background:var(--dc-tv-feature-circle-bg,#fff);transition:background-color .28s ease,color .28s ease}
.dc-tv-legal .dc-tv-legal__feature-link:hover .dc-tv-legal__feature-icon-wrap,.dc-tv-legal .dc-tv-legal__feature-link:focus-visible .dc-tv-legal__feature-icon-wrap{color:var(--dc-tv-feature-circle-hover-color,#fff);background:var(--dc-tv-feature-circle-hover-bg,#080977)}
.dc-tv-legal__feature-icon{grid-area:1/1;transition:opacity .24s ease,transform .24s ease}
.dc-tv-legal__feature-icon--normal{opacity:1;transform:translateX(0)}
.dc-tv-legal__feature-icon--hover{opacity:0;transform:translateX(-4px)}
.dc-tv-legal__feature-link:hover .dc-tv-legal__feature-icon--normal,.dc-tv-legal__feature-link:focus-visible .dc-tv-legal__feature-icon--normal{opacity:0;transform:translateX(4px)}
.dc-tv-legal__feature-link:hover .dc-tv-legal__feature-icon--hover,.dc-tv-legal__feature-link:focus-visible .dc-tv-legal__feature-icon--hover{opacity:1;transform:translateX(0)}
.dc-tv-legal__feature-icon svg{width:16px;height:16px;display:block;fill:currentColor}
.dc-tv-legal__feature-icon i{font-size:16px;line-height:1}
.dc-tv-legal__results{min-width:0;position:relative;transition:opacity .2s ease}
.dc-tv-legal__results.is-loading{opacity:.65;pointer-events:none}
.dc-tv-legal__items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:36px;row-gap:48px;min-width:0;max-width:100%}
.dc-tv-legal__card{min-width:0;max-width:100%}
.dc-tv-legal__media{display:block;position:relative;width:100%;height:283px;margin-bottom:16px;overflow:hidden;border-radius:16px;background:#edf1f7;isolation:isolate}
.dc-tv-legal__image,.elementor .dc-tv-legal__image{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;transform:none;transition:none}
.dc-tv-legal__placeholder{display:block;width:100%;height:100%;background:linear-gradient(135deg,#edf1f7,#dbe5f2)}
/* Bài viết pháp lý (2).svg: 1px horizontal rule at y=336, full card width. Kept on date node so PHP and AJAX results share identical presentation. */
.dc-tv-legal__date{display:flex;align-items:center;gap:8px;width:100%;min-width:0;margin-bottom:18px;color:#667085;font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.dc-tv-legal .dc-tv-legal__card .dc-tv-legal__date{padding-bottom:var(--dc-tv-date-divider-padding,16px);border:0;border-bottom:var(--dc-tv-date-divider-width,1px) solid var(--dc-tv-date-divider-color,rgba(0,0,0,.08))}
.dc-tv-legal__date time{min-width:0}
.dc-tv-legal__date-icon{color:#080977}
.dc-tv-legal__date-icon svg{display:block;width:15px;height:15px;fill:currentColor}
.dc-tv-legal__date-icon i{font-size:15px;line-height:1}
.dc-tv-legal__card-excerpt{min-width:0;max-width:100%;margin:12px 0 0;padding:0;color:#202738;font-size:16px;line-height:1.5;font-weight:400;overflow-wrap:anywhere;white-space:normal}
.dc-tv-legal__card-title{width:100%;max-width:100%;min-width:0;margin:0;padding:0;font-size:20px;line-height:1.35;font-weight:700;overflow-wrap:anywhere}
.dc-tv-legal .dc-tv-legal__card-title a,.dc-tv-legal .dc-tv-legal__card-title a:visited{display:inline;color:var(--dc-tv-title-color,#051a53);text-decoration:none;overflow-wrap:anywhere;transition:color .24s ease}
.dc-tv-legal .dc-tv-legal__card-title a:hover,.dc-tv-legal .dc-tv-legal__card-title a:focus-visible{color:var(--dc-tv-title-hover,#c8010a)}
.dc-tv-legal__status{margin:10px 0;padding:8px 0;color:#c8010a;font-size:15px}
.dc-tv-legal__status[hidden]{display:none}
.dc-tv-legal__empty{margin:0;padding:32px 0;color:#475467;font-size:16px}
.dc-tv-legal__empty[hidden]{display:none}
.dc-tv-legal__pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;min-width:0;max-width:100%;margin-top:48px}
.dc-tv-legal .dc-tv-legal__page,.dc-tv-legal .dc-tv-legal__page:visited{display:inline-flex;align-items:center;justify-content:center; flex:0 0 auto;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;margin:0; border:1px solid #e6eaf3;border-radius:12px;color:var(--dc-tv-page-color,#051a53);background-color:var(--dc-tv-page-bg,#f8f9ff);text-decoration:none;box-shadow:none;font-size:15px;line-height:1;font-weight:600;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.dc-tv-legal .dc-tv-legal__page:hover,.dc-tv-legal .dc-tv-legal__page:focus-visible{color:var(--dc-tv-page-hover-color,#fff);background-color:var(--dc-tv-page-hover-bg,#080977);border-color:transparent}
.dc-tv-legal .dc-tv-legal__page.is-active,.dc-tv-legal .dc-tv-legal__page.is-active:hover,.dc-tv-legal .dc-tv-legal__page.is-active:focus-visible{color:var(--dc-tv-page-active-color,#fff);background-color:var(--dc-tv-page-active-bg,#c8010a);border-color:transparent}
.dc-tv-legal .dc-tv-legal__page.is-disabled{opacity:.4;pointer-events:none}
.dc-tv-legal__page-icon svg{display:block;width:14px;height:14px;fill:currentColor}
.dc-tv-legal__page-icon i{font-size:14px;line-height:1}
.dc-tv-legal__ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:20px;font-weight:600;color:#051a53}
.dc-tv-legal a:focus-visible,.dc-tv-legal input:focus-visible{outline:2px solid #080977;outline-offset:3px}
/* Visual entrance only: content is in normal layout and always accessible without JS. */
@media (prefers-reduced-motion: no-preference){
 .dc-tv-legal--animate .dc-tv-legal__card{animation:dc-tv-legal-rise var(--dc-tv-legal-duration,550ms) cubic-bezier(.18,.6,.18,1) both; animation-delay:calc(var(--dc-tv-card-index,0)*55ms)}
 @keyframes dc-tv-legal-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
}
@media (max-width:1199px){
 .dc-tv-legal__heading{font-size:38px}
 .dc-tv-legal__feature-title{font-size:29px}
 .dc-tv-legal__feature-description{font-size:16px}
 .dc-tv-legal__feature-content{padding:32px}
 .dc-tv-legal__items{column-gap:24px}
}
@media (max-width:1024px){
 .dc-tv-legal__feature{min-height:380px}
 .dc-tv-legal__feature-title{font-size:26px}
 .dc-tv-legal__items{grid-template-columns:repeat(2,minmax(0,1fr))}
 .dc-tv-legal__media{height:255px}
}
@media (max-width:767px){
 .dc-tv-legal{padding:42px 20px 72px}
 .dc-tv-legal__header{flex-direction:column;align-items:stretch;gap:20px;margin-bottom:28px}
 .dc-tv-legal__heading{font-size:30px}
 .dc-tv-legal .dc-tv-legal__search{width:100%;flex:0 1 auto}
 .dc-tv-legal__feature{grid-template-columns:minmax(0,1fr);min-height:0;margin-bottom:34px}
 .dc-tv-legal__feature-media{height:auto;aspect-ratio:1.55;min-height:180px}
 .dc-tv-legal__feature-content{padding:26px 24px 30px}
 .dc-tv-legal__feature-title{font-size:24px}
 .dc-tv-legal__feature-description{font-size:15px}
 .dc-tv-legal__items{grid-template-columns:minmax(0,1fr);row-gap:34px}
 .dc-tv-legal__media{height:auto;aspect-ratio:416/283}
 .dc-tv-legal__card-title{font-size:19px}
 .dc-tv-legal__pagination{margin-top:36px;gap:8px}
}
@media (max-width:375px){.dc-tv-legal{padding-inline:16px}.dc-tv-legal__heading{font-size:27px}.dc-tv-legal__feature-title{font-size:22px}.dc-tv-legal__feature-content{padding:22px 20px 24px}.dc-tv-legal__pagination{gap:6px}}
@media (prefers-reduced-motion: reduce){.dc-tv-legal *{animation-duration:.01ms!important;transition-duration:.01ms!important}}

@media (max-width:767px){.dc-tv-legal__feature--portrait .dc-tv-legal__feature-media{aspect-ratio:640 / 493;min-height:0}}

/* v1.8.6 — Hover affects the whole editorial card, including date and divider. */
.dc-tv-legal .dc-tv-legal__card .dc-tv-legal__media { isolation:isolate; overflow:hidden; }
.dc-tv-legal .dc-tv-legal__card .dc-tv-legal__image,
.elementor .dc-tv-legal .dc-tv-legal__card .dc-tv-legal__image { transform:scale(1); transition:transform .48s cubic-bezier(.2,.65,.25,1); }
.dc-tv-legal .dc-tv-legal__card .dc-tv-legal__media::after { content:""; display:block; position:absolute;inset:0; z-index:2; background:var(--dc-tv-card-overlay,rgba(0,0,0,.4)); opacity:0;pointer-events:none;transition:opacity .34s ease;border-radius:inherit; }
.dc-tv-legal .dc-tv-legal__card:is(:hover,:focus-within) .dc-tv-legal__image {transform:scale(var(--dc-tv-card-zoom,1.065));}
.dc-tv-legal .dc-tv-legal__card:is(:hover,:focus-within) .dc-tv-legal__media::after{opacity:1;}
.dc-tv-legal .dc-tv-legal__card .dc-tv-legal__date { transition:color .24s ease,border-color .24s ease; }
.dc-tv-legal .dc-tv-legal__card .dc-tv-legal__date-icon {transition:color .24s ease;}
.dc-tv-legal .dc-tv-legal__card:is(:hover,:focus-within) .dc-tv-legal__date,
.dc-tv-legal .dc-tv-legal__card:is(:hover,:focus-within) .dc-tv-legal__date-icon{color:var(--dc-tv-card-hover-accent,#c8010a);}
.dc-tv-legal .dc-tv-legal__card:is(:hover,:focus-within) .dc-tv-legal__date{border-bottom-color:var(--dc-tv-card-hover-accent,#c8010a);}
.dc-tv-legal .dc-tv-legal__card:is(:hover,:focus-within) .dc-tv-legal__card-title a,
.dc-tv-legal .dc-tv-legal__card:is(:hover,:focus-within) .dc-tv-legal__card-title a:visited{color:var(--dc-tv-card-hover-title,#c8010a);}
@media (prefers-reduced-motion:reduce){.dc-tv-legal .dc-tv-legal__card .dc-tv-legal__image,.dc-tv-legal .dc-tv-legal__card .dc-tv-legal__media::after{transition:none;}}

/* v1.8.7 – Unified aligned calendar state across every editorial card. */
.dc-tv-calendar-stack {
  display: inline-grid !important;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr);
  place-items: center;
  position: relative;
  flex: 0 0 auto;
  vertical-align: middle;
  line-height: 1;
  margin: 0;
  padding: 0;
  text-align: center;
}
.dc-tv-calendar-stack > .dc-tv-calendar-state {
  grid-area: 1 / 1;
  width: 100%; height: 100%;
  min-width: 0; min-height: 0;
  display: inline-flex; align-items: center; justify-content: center;
  line-height: 1;
  transition: opacity .22s ease;
}
.dc-tv-calendar-stack .dc-tv-calendar-glyph {
  display: inline-flex; align-items: center; justify-content: center;
  width: 100%; height: 100%;
  font-size: inherit; line-height: 1;
}
.dc-tv-calendar-stack :is(i,svg,img) { display:block; flex:0 0 auto; max-width:100%; max-height:100%; vertical-align:middle; }
.dc-tv-calendar-stack svg, .dc-tv-calendar-stack img { width:100%; height:100%; object-fit:contain; }
.dc-tv-calendar-stack .dc-tv-calendar-state--hover {opacity:0;}
:is(.dc-tv-news__card,.dc-tv-legal__card,.dc-tv-related-card,.dc-hhn-card,.dc-hhn-list-card):is(:hover,:focus-within) .dc-tv-calendar-state--normal {opacity:0;}
:is(.dc-tv-news__card,.dc-tv-legal__card,.dc-tv-related-card,.dc-hhn-card,.dc-hhn-list-card):is(:hover,:focus-within) .dc-tv-calendar-state--hover {opacity:1;}
.dc-hhn--tv .dc-tv-news__date-icon {align-self:center;}
.dc-tv-legal .dc-tv-legal__date-icon {align-self:center; width:15px; height:15px;}
.dc-tv-related-card__date-icon {align-self:center; width:1em; height:1em;}
.dc-hhn-list-card__date-icon {align-self:center; width:1em; height:1em;}
.dc-hhn-card__date-icon {align-self:center; width:1em; height:1em;}
@media(prefers-reduced-motion:reduce){.dc-tv-calendar-stack .dc-tv-calendar-state{transition:none;}}
