/* =========================================================
   PAGES: TIN TỨC + DÀNH CHO BỆNH NHÂN
   ========================================================= */

/* ---------- News list (dùng chung style thẻ .news-card của trang chủ) ---------- */
.news-list{display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:var(--space-5)}
.news-card__media--img{background:#FFFFFF}
.news-card__media--img::before{display:none}
.news-card__media img{position:relative; width:100%; height:100%; object-fit:contain; padding:8%}
.news-card__meta{display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:12px; color:var(--c-text-muted)}
.draft-dot{font-size:10.5px; font-weight:var(--fw-semibold); letter-spacing:.06em; text-transform:uppercase; color:var(--c-text-muted); border:1px dashed var(--c-glass-border); border-radius:var(--radius-pill); padding:1px 8px}

/* ---------- Article ---------- */
.article{max-width:820px}
.article__head{display:flex; flex-direction:column; gap:12px; margin-bottom:var(--space-5)}
.article__head h1{margin:0; font-size:clamp(26px,3.2vw,40px); line-height:1.2; color:var(--c-heading); text-wrap:balance}
.article__lead{margin:0; font-size:17px; line-height:1.7; color:var(--c-text)}
.article__media{position:relative; aspect-ratio:16/8; border-radius:var(--radius-lg); overflow:hidden; display:grid; place-items:center; margin-bottom:var(--space-5); background:linear-gradient(135deg, var(--pd-blue-1), var(--pd-navy-800) 70%); color:var(--pd-blue-3)}
.article__media svg{width:56px; height:56px; opacity:.8}
.article__media .placeholder-tag{position:absolute; right:14px; bottom:14px; color:#D5E6F5; border-color:rgba(213,230,245,.35); background:rgba(8,18,39,.45)}
.article__media.has-img{background:#FFFFFF}
.article__media img{width:100%; height:100%; object-fit:contain; padding:6%}
.article__body{display:flex; flex-direction:column; gap:16px; margin-top:var(--space-5)}
.article__body p{margin:0; font-size:16px; line-height:1.85; color:var(--c-text); max-width:68ch}
.article__product{display:flex; align-items:center; gap:14px; margin-top:var(--space-6); padding:12px 16px; border-radius:var(--radius-md); border:1px solid var(--c-line); background:var(--c-surface); color:var(--c-heading); max-width:460px}
.article__product:hover{border-color:var(--pd-blue-2)}
.article__product-img{width:56px; height:56px; border-radius:10px; background:#FFF; overflow:hidden; flex-shrink:0}
.article__product-img img{width:100%; height:100%; object-fit:contain}
.article__product span:nth-child(2){flex:1; display:flex; flex-direction:column}
.article__product small{font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--c-text-muted)}
.article__product svg{width:16px; height:16px}
.article__share{display:flex; align-items:center; gap:12px; margin-top:var(--space-6); padding-top:var(--space-5); border-top:1px solid var(--c-line); font-size:13.5px; color:var(--c-text-muted)}
.article .note{margin-top:var(--space-4)}

/* ---------- Warranty (Dành cho bệnh nhân) ---------- */
.w-hero{position:relative; overflow:hidden; isolation:isolate; text-align:center; color:#FFFFFF;
  background:radial-gradient(90% 120% at 50% 0%, #2F5596 0%, #264682 45%, #1D3A70 100%);
  padding-block:clamp(48px,7vw,96px) clamp(96px,10vw,140px)}
.w-hero::before{content:""; position:absolute; inset:0; z-index:-1; background-image:linear-gradient(rgba(213,230,245,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(213,230,245,.07) 1px,transparent 1px); background-size:56px 56px; -webkit-mask-image:radial-gradient(ellipse 60% 80% at 50% 30%,#000 20%,transparent 75%); mask-image:radial-gradient(ellipse 60% 80% at 50% 30%,#000 20%,transparent 75%)}
.w-hero .crumbs{justify-content:center; color:rgba(213,230,245,.75)}
.w-hero h1{margin:0; font-size:clamp(32px,5.4vw,68px); line-height:1.08; font-weight:var(--fw-bold); letter-spacing:.03em; text-transform:uppercase; color:#FFFFFF}
.w-hero p{margin:16px auto 0; max-width:56ch; font-size:clamp(15px,1.4vw,18px); color:rgba(255,255,255,.88)}

.lookup{position:relative; z-index:2; max-width:1040px; margin:clamp(-72px,-6vw,-56px) auto 0; padding:18px; border-radius:var(--radius-lg); background:var(--c-surface-card,#FFFFFF); box-shadow:0 30px 60px -30px rgba(8,18,39,.55)}
.lookup__form{display:flex; gap:12px}
.lookup__field{position:relative; flex:1; min-width:0}
.lookup__field svg{position:absolute; left:18px; top:50%; transform:translateY(-50%); width:20px; height:20px; color:var(--pd-blue-2); pointer-events:none}
.lookup__input{width:100%; height:60px; font:inherit; font-size:16px; color:var(--pd-grey-1); padding:0 18px 0 50px; border-radius:12px; border:1px solid var(--pd-grey-3); background:#FFFFFF; transition:border-color .2s, box-shadow .2s}
.lookup__input::placeholder{color:var(--pd-grey-2)}
.lookup__input:focus{outline:none; border-color:var(--pd-blue-2); box-shadow:0 0 0 4px rgba(84,125,191,.18)}
.lookup__btn{height:60px; padding:0 28px; border:0; border-radius:12px; background:var(--pd-blue-1); color:#FFFFFF; font:inherit; font-size:15px; font-weight:var(--fw-bold); letter-spacing:.06em; text-transform:uppercase; display:inline-flex; align-items:center; gap:10px; cursor:pointer; transition:background-color .2s, transform .2s}
.lookup__btn:hover{background:#1E3A6E; transform:translateY(-1px)}
.lookup__btn:focus-visible{outline:2px solid var(--pd-blue-2); outline-offset:3px}
.lookup__btn svg{width:18px; height:18px}
.lookup__meta{display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:14px; font-size:12.5px; color:var(--pd-grey-2)}
.lookup__meta b{color:var(--pd-grey-1); font-weight:var(--fw-semibold)}
.lookup__chip{display:inline-flex; align-items:center; gap:6px; padding:4px 10px; border-radius:var(--radius-pill); background:var(--pd-blue-4); color:var(--pd-blue-1); font-weight:var(--fw-semibold); font-size:12px}
.lookup__result{margin-top:14px; display:flex; gap:12px; align-items:flex-start; padding:14px 16px; border-radius:12px; font-size:14px; line-height:1.6; background:#F3F7FC; color:var(--pd-grey-1); border:1px solid rgba(84,125,191,.25)}
.lookup__result[hidden]{display:none}
.lookup__result.is-error{background:#FDF1F0; border-color:rgba(234,69,53,.35)}
.lookup__result svg{width:20px; height:20px; flex-shrink:0; color:var(--pd-blue-2); margin-top:1px}
.lookup__result.is-error svg{color:#C0392B}
.lookup__result b{color:var(--pd-blue-1)}

.w-body{padding-block:var(--space-7) var(--space-9); background:linear-gradient(180deg, var(--sec-0) 0, var(--sec-1) 420px)}
.w-wrap{max-width:1040px; margin-inline:auto}
.w-rule{height:3px; border:0; margin:0 0 var(--space-7); background:linear-gradient(90deg, var(--pd-blue-1), var(--pd-blue-2) 60%, transparent)}
.w-sec{margin-bottom:var(--space-8)}
.w-sec h2{margin:0 0 var(--space-5); font-size:clamp(18px,1.8vw,22px); font-weight:var(--fw-bold); letter-spacing:.06em; text-transform:uppercase; color:var(--c-heading)}
.w-sec__sub{margin:-12px 0 var(--space-5); color:var(--c-text-muted); font-size:14px}
.deny{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-4); list-style:none; margin:0; padding:0}
.deny li{display:flex; flex-direction:column; gap:12px; padding:20px; border-radius:var(--radius-md); background:var(--c-surface); border:1px solid var(--c-line); font-size:14.5px; line-height:1.65; color:var(--c-text)}
.deny__icon{width:40px; height:40px; border-radius:12px; display:grid; place-items:center; background:rgba(234,69,53,.1); color:#C0392B}
.deny__icon svg{width:20px; height:20px}

.care__tabs{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:var(--space-5)}
.care__tab{all:unset; cursor:pointer; display:inline-flex; align-items:center; gap:10px; padding:10px 16px; border-radius:var(--radius-pill); border:1px solid var(--c-line); font-size:14px; font-weight:var(--fw-semibold); color:var(--c-text); background:var(--c-surface)}
.care__tab small{font-weight:var(--fw-regular); color:var(--c-text-muted)}
.care__tab[aria-selected="true"]{background:var(--c-on); color:#FFFFFF; border-color:var(--c-on)}
.care__tab[aria-selected="true"] small{color:rgba(255,255,255,.75)}
.care__tab:focus-visible{outline:2px solid var(--c-accent); outline-offset:2px}
.care__panel{display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:var(--space-6); align-items:start}
.care__panel[hidden]{display:none}
.care__list{list-style:none; counter-reset:c; margin:0; padding:0; display:flex; flex-direction:column; gap:12px}
.care__list li{counter-increment:c; display:flex; gap:16px; padding:16px 18px; border-radius:var(--radius-md); background:var(--c-surface); border:1px solid var(--c-line); font-size:15px; line-height:1.7; color:var(--c-text)}
.care__list li::before{content:counter(c,decimal-leading-zero); font-weight:var(--fw-bold); color:var(--c-accent); font-variant-numeric:tabular-nums; min-width:2ch}
.care__aside{display:flex; flex-direction:column; align-items:center; gap:10px; text-align:center; padding:18px; border-radius:var(--radius-md); background:#FFFFFF; border:1px solid var(--c-line)}
.care__aside img{width:100%; aspect-ratio:1; object-fit:contain}
.care__aside b{color:var(--pd-blue-1); font-size:14px}
.care__aside small{color:var(--pd-grey-2); font-size:12px}
.care .note{margin-top:var(--space-4)}

.faq{display:flex; flex-direction:column; gap:10px}
.faq details{border-radius:var(--radius-md); border:1px solid var(--c-line); background:var(--c-surface); overflow:hidden}
.faq summary{list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:16px; padding:18px 20px; font-size:15.5px; font-weight:var(--fw-semibold); color:var(--c-heading)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:""; width:10px; height:10px; border-right:2px solid var(--c-accent); border-bottom:2px solid var(--c-accent); transform:rotate(45deg) translateY(-3px); transition:transform .25s var(--ease); flex-shrink:0}
.faq details[open] summary::after{transform:rotate(-135deg) translateY(-3px)}
.faq summary:focus-visible{outline:2px solid var(--c-accent); outline-offset:-2px}
.faq__a{padding:0 20px 18px; display:flex; flex-direction:column; gap:12px; font-size:14.5px; color:var(--c-text)}
.faq__a p{margin:0; max-width:70ch}

.help{display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:var(--space-5); padding:clamp(24px,4vw,40px); border-radius:var(--radius-lg); background:linear-gradient(140deg,#16305F,#0A1838); color:var(--c-text); border:1px solid rgba(172,205,236,.16)}
.help h2{margin:0 0 6px; font-size:var(--fs-md); color:var(--c-heading)}
.help p{margin:0; color:var(--c-text-muted)}
.help__lines{display:flex; flex-wrap:wrap; gap:var(--space-5)}

@media (max-width:900px){
  .deny{grid-template-columns:1fr}
  .care__panel{grid-template-columns:1fr}
  .care__aside{flex-direction:row; text-align:left}
  .care__aside img{width:72px}
}
@media (max-width:560px){
  .lookup__form{flex-direction:column}
  .lookup__btn{justify-content:center}
}

/* Lookup in page-hero (cùng format trang Sản phẩm / Tin tức) */
.lookup-search .search__input{padding-right:150px}
.lookup-search__btn{position:absolute; right:6px; top:50%; transform:translateY(-50%); padding:12px 22px; text-transform:uppercase; letter-spacing:.06em}
.lookup-search__btn:hover{transform:translateY(-50%)}
.page-hero .lookup__result{max-width:680px; margin-top:12px}
.brand-pill.is-static{cursor:default}
.brand-pill.is-static:hover{background:rgba(255,255,255,.04)}
.page-hero .placeholder-tag{color:rgba(213,230,245,.7); border-color:rgba(213,230,245,.3); background:transparent}
@media (max-width:560px){
  .lookup-search .search__input{padding-right:18px}
  .lookup-search__btn{position:static; transform:none; width:100%; margin-top:10px}
  .lookup-search .search__icon{top:29px}
  .lookup-search .search__input{padding-right:18px; font-size:14px}
  .lookup-search__btn:hover{transform:none}
}

/* =========================================================
   DÀNH CHO BÁC SĨ — Chương trình đào tạo + Bằng chứng khoa học
   (dùng lại khung trang Tin tức: page-hero, catalog, news-card, article)
   ========================================================= */
.cat-btn[disabled],.month-btn[disabled]{opacity:.4; cursor:default}
.cat-btn[disabled]:hover{background:transparent}
.time-year{margin:10px 0 6px; padding:0 12px; font-size:11px; font-weight:var(--fw-bold); letter-spacing:.14em; text-transform:uppercase; color:var(--c-text-muted)}
.month-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:6px; padding:0 4px 8px}
.month-btn{all:unset; box-sizing:border-box; cursor:pointer; display:flex; flex-direction:column; align-items:center; gap:2px; padding:10px 4px; border-radius:12px; border:1px solid var(--c-line); background:var(--c-surface); color:var(--c-heading); transition:background-color .2s,border-color .2s}
.month-btn b{font-size:15px; font-weight:var(--fw-bold)}
.month-btn span{font-size:11px; color:var(--c-text-muted)}
.month-btn:not([disabled]):hover{border-color:var(--c-accent); background:var(--c-accent-soft)}
.month-btn[aria-pressed="true"]{background:var(--c-on); border-color:var(--c-on); color:#FFFFFF}
.month-btn[aria-pressed="true"] span{color:rgba(255,255,255,.75)}
.month-btn:focus-visible{outline:2px solid var(--c-accent); outline-offset:2px}

/* thẻ chương trình */
.ev-card__media,.bc-card__media{color:#FFFFFF}
.ev-date{position:relative; display:flex; flex-direction:column; align-items:center; gap:2px; text-align:center; line-height:1}
.ev-date b{font-size:clamp(40px,4vw,54px); font-weight:var(--fw-xbold); letter-spacing:-.02em; color:#FFFFFF}
.ev-date small{font-size:11.5px; font-weight:var(--fw-semibold); letter-spacing:.14em; text-transform:uppercase; color:var(--pd-blue-3)}
.ev-date--na b{color:rgba(255,255,255,.5)}
.ev-status{position:absolute; right:12px; top:12px; z-index:1; font-size:10.5px; font-weight:var(--fw-bold); letter-spacing:.08em; text-transform:uppercase; padding:4px 10px; border-radius:var(--radius-pill); color:#0C1B3D; background:#D5E6F5}
.ev-status--past{color:#D5E6F5; background:rgba(8,18,39,.55); border:1px solid rgba(213,230,245,.3)}
.ev-status--draft{color:#D5E6F5; background:transparent; border:1px dashed rgba(213,230,245,.55)}
.article__head .ev-status{position:static}
.article .news-card__meta .ev-status--past,.article .news-card__meta .ev-status--draft{color:var(--c-text-muted); border-color:var(--c-line); background:transparent}
.ev-card.is-past .ev-card__media{filter:saturate(.55)}
.ev-meta{display:flex; flex-wrap:wrap; gap:6px 14px; font-size:12.5px; color:var(--c-text-muted)}
.ev-meta span{display:inline-flex; align-items:center; gap:6px}
.ev-meta svg{width:14px; height:14px; color:var(--c-accent); flex-shrink:0}

/* chi tiết */
.ev-info{display:grid; grid-auto-flow:column; grid-auto-columns:1fr; gap:1px; margin:var(--space-5) 0; border:1px solid var(--c-line); border-radius:var(--radius-lg); overflow:hidden; background:var(--c-line)}
.ev-info > div{background:var(--c-surface); padding:16px 18px}
.ev-info dt{display:flex; align-items:center; gap:6px; font-size:11px; font-weight:var(--fw-bold); letter-spacing:.12em; text-transform:uppercase; color:var(--c-text-muted)}
.ev-info dt svg{width:14px; height:14px; color:var(--c-accent)}
.ev-info dd{margin:6px 0 0; font-size:14.5px; font-weight:var(--fw-semibold); color:var(--c-heading)}
.ev-info dd a{color:var(--c-accent)}
.ev-actions{display:flex; flex-wrap:wrap; gap:10px; margin:var(--space-5) 0}

/* thẻ bằng chứng */
.bc-card__doc{position:relative; display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center}
.bc-card__doc svg{width:40px; height:40px; color:var(--pd-blue-3)}
.bc-card__doc b{font-size:15px; letter-spacing:.04em; color:#FFFFFF}
.bc-card__doc small{font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--pd-blue-3)}
.ev-prods{display:flex; flex-wrap:wrap; gap:6px}
.ev-prod{font-size:12px; font-weight:var(--fw-semibold); color:var(--c-heading); background:var(--c-accent-soft); border-radius:var(--radius-pill); padding:4px 10px; transition:background-color .2s}
a.ev-prod:hover{background:var(--c-on); color:#FFFFFF}
.ev-prod--more{color:var(--c-text-muted)}
.bc-h{margin:var(--space-5) 0 var(--space-3); font-size:13px; letter-spacing:.14em; text-transform:uppercase; color:var(--c-text-muted)}
.check__txt{display:flex; flex-direction:column; line-height:1.3}
.check__txt small{font-size:11.5px; color:var(--c-text-muted)}
.fgroup__scroll{max-height:260px; overflow:auto; padding-right:4px}
.fgroup__empty{margin:0; font-size:13px; color:var(--c-text-muted); padding:4px}
@media (max-width:760px){ .ev-info{grid-auto-flow:row; grid-template-columns:1fr 1fr} }
.article--bc h1{font-size:clamp(24px,2.8vw,36px); line-height:1.25}

/* Kết quả tra cứu bảo hành (benh-nhan.html) — dữ liệu từ assets/warranty.js */
.wr-list{display:flex; flex-direction:column; gap:12px; max-width:820px; margin-top:12px}
.wr-list:empty{display:none}
.wr-card{border-radius:16px; background:#FFFFFF; color:var(--pd-grey-1); box-shadow:0 24px 50px -28px rgba(0,0,0,.6); overflow:hidden}
.wr-card header{display:flex; flex-wrap:wrap; gap:12px 28px; align-items:center; padding:16px 20px; background:#F3F7FC; border-bottom:1px solid rgba(84,125,191,.2)}
.wr-card header small,.wr-until small{display:block; font-size:10.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--pd-grey-2)}
.wr-card header > div:first-child b{font-size:22px; letter-spacing:.04em; color:var(--pd-blue-1)}
.wr-meta{display:flex; flex-wrap:wrap; gap:4px 20px; font-size:13px}
.wr-meta b{color:var(--pd-blue-1)}
.wr-card ul{list-style:none; margin:0; padding:4px 20px}
.wr-card li{display:grid; grid-template-columns:1fr auto auto; gap:16px; align-items:center; padding:12px 0; border-top:1px solid #EAEBEC}
.wr-card li:first-child{border-top:0}
.wr-card li b{color:var(--pd-blue-1)} .wr-card li small{display:block; font-size:12px; color:var(--pd-grey-2)}
.wr-until{text-align:right}
.wr-demo{margin:4px 0 0; font-size:12px; color:rgba(213,230,245,.75)}
.lookup-clinic{margin:16px 0 0; font-size:13px; color:rgba(213,230,245,.8)}
.lookup-clinic a{color:#FFFFFF; font-weight:600; text-decoration:underline; text-underline-offset:3px}
@media (max-width:560px){ .wr-card li{grid-template-columns:1fr auto} .wr-card li .pt-badge{grid-column:1/-1; justify-self:start} }
.pt-badge{display:inline-block; font-size:11px; font-weight:700; letter-spacing:.04em; padding:3px 9px; border-radius:999px; white-space:nowrap}
.pt-badge--ok{background:#E3F4E9; color:#1D5B33} .pt-badge--muted{background:#EAEBEC; color:#434747}
