@charset "UTF-8";
/* Nền chung, nút, nhãn, đầu trang, chân trang, hộp thoại tìm kiếm. */

*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--tv-bg);color:var(--tv-ink);font-family:var(--tv-font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.tv-lock{overflow:hidden}
h1,h2,h3,p,ul,ol,fieldset,figure{margin:0}
ul,ol{padding:0;list-style:none}
fieldset{border:0;padding:0;min-width:0}
legend{padding:0}
img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a{color:var(--tv-primary);text-decoration:none}
a:hover{color:var(--tv-primary-dark)}
:focus-visible{outline:3px solid var(--tv-focus);outline-offset:3px}
/* Thanh đầu trang dính (cao ~69px): mọi lần cuộn tới một phần tử, kể cả khi Tab tới phần tử ngoài màn, chừa chỗ để nó không nằm dưới thanh. */
html{scroll-padding-top:80px}
html:has(body.admin-bar){scroll-padding-top:112px}
@media (max-width:782px){html:has(body.admin-bar){scroll-padding-top:126px}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;scroll-behavior:auto!important}
}

.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tv-skip{position:absolute;left:12px;top:-60px;z-index:200;padding:10px 16px;border-radius:8px;background:var(--tv-gold-100);color:var(--tv-plum-900);font-weight:700}
.tv-skip:focus{top:12px;color:var(--tv-plum-900)}
.tv-icon{flex-shrink:0;display:block}
.tv-container{max-width:var(--tv-container);margin:0 auto;padding:0 var(--tv-gutter)}
.tv-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Nhãn */
.tv-badge,.tv-soon{display:inline-block;font-size:13px;font-weight:700;line-height:1.55;padding:3px 10px;border-radius:999px;background:var(--tv-primary);color:#fff;white-space:nowrap}
[aria-disabled="true"]{cursor:default}
.tv-foot .tv-soon,.tv-drawer .tv-soon{border:1px solid rgba(233,187,105,.45)}

/* Nút */
.tv-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border:0;border-radius:999px;font-weight:700;font-size:15px;line-height:1.3;text-align:center}
.tv-btn--lg{min-height:52px;padding:0 26px;font-size:16px}
.tv-btn--gold{background:var(--tv-grad-gold);color:var(--tv-plum-900)}
a.tv-btn--gold:hover{background:#ffe9b8;color:var(--tv-plum-900)}
.tv-btn--plum{background:var(--tv-grad-plum);color:#fff;box-shadow:0 10px 24px -12px rgba(94,44,104,.8)}
.tv-btn--plum:hover{background:var(--tv-primary-dark);color:#fff}
.tv-btn--outline{gap:8px;border:1.5px solid var(--tv-primary);background:transparent;color:var(--tv-primary-dark)}
a.tv-btn--outline:hover{background:var(--tv-primary);color:#fff}
.tv-btn--wide{gap:10px;padding:0 28px}
.tv-btn--ghost-light{padding:0 24px;border:1.5px solid rgba(255,240,220,.7);color:#fff6e8;font-weight:600}
.tv-btn--ghost-light:hover{background:rgba(255,255,255,.1);color:#fff}

/* Tiêu đề khối có hoa văn hai bên */
.tv-sec-head{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;margin-bottom:clamp(28px,3vw,40px)}
.tv-sec-head__row{display:flex;align-items:center;justify-content:center;gap:14px;width:100%}
.tv-sec-head__title{flex:0 1 auto;min-width:0;font-family:var(--tv-font-heading);font-weight:700;font-size:var(--tv-fs-h2);line-height:1.2;color:var(--tv-heading);text-wrap:balance}
.tv-sec-head__sub{color:var(--tv-text-3);font-size:16px;max-width:620px}
.tv-orn{flex:0 1 110px;min-width:20px;display:flex;align-items:center;gap:6px}
.tv-orn__line{flex:1;height:1px}
.tv-orn--left .tv-orn__line{background:linear-gradient(90deg,transparent,var(--tv-gold-500))}
.tv-orn--right .tv-orn__line{background:linear-gradient(270deg,transparent,var(--tv-gold-500))}
.tv-orn__gem{width:9px;height:9px;flex-shrink:0;border:1.5px solid var(--tv-gold-500);transform:rotate(45deg)}

/* Lỗi form */
.tv-form-error{display:flex;gap:8px;align-items:flex-start;color:#a3261e;font-size:14px;font-weight:600;line-height:1.45}

/* ───── Đầu trang ───── */
.tv-header{position:sticky;top:0;z-index:60;background:var(--tv-plum-900);border-bottom:1px solid rgba(233,187,105,.22)}
.admin-bar .tv-header{top:32px}
@media (max-width:782px){.admin-bar .tv-header{top:46px}}
@media (max-width:600px){.admin-bar .tv-header{top:0}}
.tv-header__bar{max-width:var(--tv-container);margin:0 auto;padding:0 var(--tv-gutter);height:68px;display:flex;align-items:center;gap:clamp(8px,2vw,16px)}
.tv-logo{display:flex;align-items:center;gap:10px;flex-shrink:0;min-height:44px}
.tv-logo__mark{display:block;color:var(--tv-gold-300);width:clamp(30px,8vw,36px);height:clamp(30px,8vw,36px)}
.tv-logo__text{display:flex;flex-direction:column;line-height:1.15}
.tv-logo__name{font-family:var(--tv-font-heading);font-weight:700;font-size:clamp(16px,4.4vw,19px);color:var(--tv-gold-100);white-space:nowrap}
.tv-logo__tagline{display:none;font-size:12px;color:var(--tv-on-dark-2);letter-spacing:.02em;white-space:nowrap}
@media (min-width:1320px){.tv-logo__tagline{display:block}}

.tv-nav{display:none;margin-left:4px}
@media (min-width:1024px){.tv-nav{display:block}}
.tv-nav__list{display:flex;align-items:center}
.tv-nav__item{position:relative}
.tv-nav__top{position:relative;display:flex;align-items:center;gap:4px;height:44px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:var(--tv-cream);font-size:15px;font-weight:600;white-space:nowrap}
a.tv-nav__top:hover,button.tv-nav__top:hover{background:rgba(255,255,255,.08);color:var(--tv-gold-100)}
.tv-nav__top.is-current::after{content:"";position:absolute;left:10px;right:10px;bottom:4px;height:2px;border-radius:2px;background:var(--tv-gold-300)}
.tv-nav__top.is-soon{gap:8px}
.tv-nav__chev{display:block;opacity:.8;transition:transform .2s}
.tv-nav__top[aria-expanded="true"] .tv-nav__chev{transform:rotate(180deg)}
.tv-nav__sub{position:absolute;top:calc(100% + 8px);left:0;min-width:236px;background:var(--tv-surface);border:1px solid var(--tv-border);border-radius:12px;box-shadow:0 20px 40px -16px rgba(35,20,48,.45);padding:8px;display:flex;flex-direction:column}
.tv-nav__sublink{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:8px 12px;border-radius:8px;color:var(--tv-heading);font-size:15px;white-space:nowrap}
a.tv-nav__sublink:hover{background:#f4e6ef;color:var(--tv-primary-dark)}

.tv-header__actions{margin-left:auto;display:flex;align-items:center;gap:clamp(6px,1.6vw,10px)}
.tv-header__search{width:44px;height:44px;display:grid;place-items:center;padding:0;border-radius:999px;border:1px solid rgba(244,234,217,.32);background:transparent;color:var(--tv-cream);font-size:14px;white-space:nowrap}
.tv-header__search-long,.tv-header__search-short{display:none}
.tv-header__search:hover{border-color:var(--tv-gold-300);background:rgba(255,255,255,.1)}
/* Dạng viên thuốc có chữ: 720–1023px (menu thu gọn) và từ 1240px. */
@media (min-width:720px) and (max-width:1023.98px),(min-width:1240px){
  .tv-header__search{width:auto;display:flex;align-items:center;gap:10px;padding:0 16px 0 14px;background:rgba(255,255,255,.06);color:var(--tv-on-dark)}
}
@media (min-width:720px) and (max-width:1023.98px){.tv-header__search-short{display:inline}}
@media (min-width:1240px){.tv-header__search-long{display:inline}}

.tv-header__cta{display:none;align-items:center;justify-content:center;gap:8px;width:44px;height:44px;border-radius:999px;background:var(--tv-grad-gold);color:var(--tv-plum-900);font-weight:700;font-size:15px;white-space:nowrap}
.tv-header__cta:hover{background:#ffe9b8;color:var(--tv-plum-900)}
.tv-header__cta-text{display:none}
@media (min-width:1024px){.tv-header__cta{display:flex}}
@media (min-width:1100px){
  .tv-header__cta{width:auto;padding:0 18px}
  .tv-header__cta-text{display:inline}
}

.tv-header__burger{width:44px;height:44px;display:grid;place-items:center;padding:0;border-radius:999px;border:1px solid rgba(244,234,217,.32);background:transparent;color:var(--tv-cream)}
.tv-header__burger-close{display:none}
.tv-header__burger[aria-expanded="true"] .tv-header__burger-open{display:none}
.tv-header__burger[aria-expanded="true"] .tv-header__burger-close{display:block}
@media (min-width:1024px){.tv-header__burger{display:none}}

/* Ngăn kéo di động */
.tv-drawer{position:fixed;top:68px;left:0;right:0;bottom:0;background:var(--tv-plum-900);overflow-y:auto;padding:12px var(--tv-gutter) 32px;border-top:1px solid rgba(233,187,105,.22)}
.admin-bar .tv-drawer{top:calc(68px + 46px)}
@media (max-width:600px){.admin-bar .tv-drawer{top:68px}}
@media (min-width:1024px){.tv-drawer{display:none!important}}
.tv-drawer__nav{display:flex;flex-direction:column;max-width:640px;margin:0 auto}
.tv-drawer__group{border-bottom:1px solid rgba(244,234,217,.12)}
.tv-drawer__top{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:0 4px;border:0;background:transparent;color:var(--tv-cream);font-size:17px;font-weight:600;text-align:left}
a.tv-drawer__top:hover{color:var(--tv-gold-100)}
.tv-drawer__chev{display:block;transition:transform .2s}
.tv-drawer__top[aria-expanded="true"] .tv-drawer__chev{transform:rotate(180deg)}
.tv-drawer__sub{display:flex;flex-direction:column;padding:0 0 12px 12px}
.tv-drawer__sublink{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:0 12px;border-radius:8px;color:var(--tv-on-dark);font-size:16px}
a.tv-drawer__sublink:hover{background:rgba(255,255,255,.06);color:var(--tv-gold-100)}
.tv-drawer__actions{display:flex;flex-direction:column;gap:12px;margin-top:24px}
.tv-drawer__cta{min-height:52px;font-size:16px}

/* ───── Chân trang ───── */
.tv-foot{position:relative;overflow:hidden;background-color:var(--tv-plum-footer);background-image:url('../img/footer-bg.webp');background-repeat:no-repeat;background-size:max(100%,1100px) auto;background-position:top right;color:var(--tv-on-dark)}
.tv-foot__mask{position:absolute;inset:0;background:linear-gradient(180deg,rgba(45,19,66,.35),rgba(45,19,66,.75) 60%)}
/* Dưới 1024px các cột xuống hàng và nằm đè lên hình trăng, cần lớp phủ đậm hơn để chữ đủ tương phản. */
@media (max-width:1023.98px){.tv-foot__mask{background:linear-gradient(180deg,rgba(45,19,66,.72),rgba(45,19,66,.86) 60%)}}
@media (min-width:1200px){.tv-foot__mask{display:none}}
.tv-foot__inner{position:relative;max-width:var(--tv-container);margin:0 auto;padding:clamp(48px,5vw,72px) var(--tv-gutter) 0}
.tv-foot__cols{display:flex;flex-wrap:wrap;gap:28px clamp(24px,2.6vw,40px);justify-content:space-between;max-width:max(min(100%,880px),min(calc(79vw - 12px),calc(29vw + 608px)));padding-bottom:clamp(20px,2.4vw,28px)}
/* Nhãn "Sắp ra mắt" làm các cột rộng hơn bản thiết kế: dưới 1280px bốn cột không còn vừa một hàng,
   nên phần thương hiệu chiếm trọn hàng đầu và ba cột liên kết xếp hàng dưới. */
@media (min-width:720px) and (max-width:1279.98px){
  .tv-foot__cols{justify-content:flex-start;column-gap:clamp(32px,6vw,72px)}
  .tv-foot__cols>.tv-foot__brand{flex-basis:100%}
  .tv-foot__about{max-width:440px}
}
.tv-foot__brand{flex:0 1 min(100%,300px);display:flex;flex-direction:column;gap:12px}
.tv-foot__logo{display:flex;align-items:center;gap:14px}
.tv-foot__mark{display:block;flex-shrink:0;width:48px;height:48px;color:var(--tv-gold-300)}
.tv-foot__logo-text{display:flex;flex-direction:column;gap:2px;line-height:1.2}
.tv-foot__name{font-family:var(--tv-font-heading);font-weight:700;font-size:clamp(22px,2vw,26px);color:var(--tv-gold-100)}
.tv-foot__tagline{font-size:13px;color:#f3d79c;white-space:nowrap}
.tv-foot__about{font-size:14px;line-height:1.65;color:var(--tv-on-dark);text-wrap:pretty}
.tv-foot__social{display:flex;gap:12px}
.tv-foot__social-link{width:44px;height:44px;border-radius:50%;border:1px solid rgba(233,187,105,.4);background:rgba(122,58,134,.35);color:var(--tv-gold-100);display:grid;place-items:center;transition:background .15s,border-color .15s}
.tv-foot__social-link:hover{background:var(--tv-gold-300);border-color:var(--tv-gold-300);color:#2d1540}
.tv-foot__col{flex:0 1 auto;display:flex;flex-direction:column}
.tv-foot__title{font-family:var(--tv-font-heading);font-weight:700;font-size:clamp(20px,1.9vw,24px);line-height:1.3;color:var(--tv-gold-100);margin-bottom:6px;white-space:nowrap}
.tv-foot__link{display:flex;align-items:center;gap:12px;min-height:34px;color:var(--tv-on-dark);font-size:15px;transition:color .15s}
.tv-foot__link::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--tv-gold-300);flex-shrink:0}
a.tv-foot__link:hover{color:var(--tv-gold-100)}
.tv-foot__link.is-soon{gap:8px}
.tv-foot__link.is-soon::before{margin-right:4px}
.tv-foot__col-soon{display:flex;margin:0 0 6px}
.tv-foot__bottom{position:relative;border-top:1px solid rgba(233,187,105,.55)}
.tv-foot__bottom-inner{max-width:var(--tv-container);margin:0 auto;padding:10px var(--tv-gutter);display:flex;align-items:center;justify-content:space-between;gap:16px}
.tv-foot__copy{font-size:13px;color:var(--tv-on-dark-2)}
.tv-foot__top{width:40px;height:40px;flex-shrink:0;border-radius:50%;border:1px solid rgba(233,187,105,.5);background:var(--tv-primary);color:#fff;display:grid;place-items:center;box-shadow:0 8px 20px -8px rgba(0,0,0,.5)}
.tv-foot__top:hover{background:var(--tv-primary-light);color:#fff}

/* ───── Hộp thoại tìm kiếm ───── */
.tv-overlay{position:fixed;inset:0;z-index:100;background:rgba(27,15,36,.62);display:flex;align-items:center;justify-content:center;padding:24px}
.tv-dialog{width:100%;max-width:620px;max-height:88vh;display:flex;flex-direction:column;background:var(--tv-surface);border-radius:20px;box-shadow:0 30px 60px -20px rgba(20,10,30,.6);overflow:hidden}
@media (max-width:719.98px){
  .tv-overlay{align-items:flex-end;padding:0}
  .tv-dialog{max-height:92vh;border-radius:20px 20px 0 0}
}
.tv-dialog__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 16px 14px 24px;border-bottom:1px solid #eadccd}
.tv-dialog__title{font-family:var(--tv-font-heading);font-weight:700;font-size:21px;line-height:1.3;color:var(--tv-heading)}
.tv-dialog__close{width:44px;height:44px;flex-shrink:0;padding:0;border-radius:50%;border:1px solid #e0cfc0;background:#fff;color:var(--tv-heading);display:grid;place-items:center}
.tv-dialog__close:hover{background:#f4e6ef}
.tv-dialog__body{overflow-y:auto;padding:20px 24px 24px;display:flex;flex-direction:column;gap:16px}
.tv-dialog__label{font-weight:600;font-size:15px;color:var(--tv-heading)}
.tv-dialog__field{display:flex;align-items:center;gap:10px;height:52px;padding:0 16px;border:1.5px solid #cdb5c8;border-radius:12px;background:#fff;color:var(--tv-primary)}
.tv-dialog__field:focus-within{outline:3px solid var(--tv-focus);outline-offset:3px}
.tv-dialog__field input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:16px;color:var(--tv-ink)}
.tv-dialog__status{font-size:14px;color:var(--tv-text-3)}
.tv-dialog__chips{display:flex;flex-wrap:wrap;gap:8px}
.tv-chip{min-height:44px;padding:0 14px;border-radius:999px;border:1px solid #e3cfd9;background:#fff;color:var(--tv-primary);font-weight:600;font-size:14px}
.tv-chip:hover{background:#f4e6ef}

/* ───── Trang thường (khuôn dự phòng) ───── */
.tv-page__inner{padding-top:var(--tv-section-y);padding-bottom:var(--tv-section-y);max-width:calc(760px + 2 * var(--tv-gutter))}
.tv-page__title{font-family:var(--tv-font-heading);font-weight:700;font-size:var(--tv-fs-h1-post);line-height:1.2;color:var(--tv-heading);text-wrap:balance;margin-bottom:24px}
.tv-entry__content{font-size:17px;line-height:1.8;color:#2f2433}
.tv-entry__content>*+*{margin-top:1em}
.tv-page__list{display:flex;flex-direction:column;gap:12px}
.tv-empty{color:var(--tv-text-3)}
