/* PetID247 — he thong thiet ke chung. Theme rieng (12 mau, buoc 3) doi bien
   --pet-brand* qua [data-pet-theme] trong themes.css, phan con lai giu nguyen. */
:root{
  --pet-bg:#f6f4f0; --pet-card:#ffffff; --pet-text:#1c1917; --pet-muted:#78716c;
  --pet-line:#eeebe5;
  --pet-brand:#0e9f6e; --pet-brand-dark:#0b7a55; --pet-brand-soft:#e3f6ee;
  --pet-danger:#dc2626; --pet-danger-soft:#fee2e2;
  --pet-radius:20px; --pet-radius-sm:12px;
  --pet-shadow:0 1px 2px rgba(28,25,23,.04), 0 10px 24px -8px rgba(28,25,23,.10);
  --pet-shadow-sm:0 1px 2px rgba(28,25,23,.06);
}
*{box-sizing:border-box}
html{-webkit-tap-highlight-color:transparent}
body{margin:0;background:var(--pet-bg);color:var(--pet-text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;line-height:1.45}
a{color:var(--pet-brand);text-decoration:none;font-weight:600}
a:hover{text-decoration:underline}
h1,h2,h3{line-height:1.25;letter-spacing:-.01em}
.wrap{max-width:480px;margin:0 auto;padding:0 0 48px}

/* ---- HERO: mot khoi gradient thong nhat (thay ivet-band+cover+avatar roi rac) ----
   Khop khuon icard: dai gradient tren cung chua ten iVet, anh KHUNG VIEN TRANG
   noi len giao giua phan mau va phan trang ben duoi (khong phai cover full-bleed). */
.hero{background:linear-gradient(160deg,var(--hero-brand,var(--pet-brand)),
  var(--hero-brand-dark,var(--pet-brand-dark)));
  padding:22px 20px 0;text-align:center;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;opacity:.12;
  background-image:radial-gradient(#fff 1.5px, transparent 1.5px);background-size:22px 22px}
.hero .ivet-ten{position:relative;color:#fff;font-weight:800;
  font-size:clamp(14px,4vw,17px);letter-spacing:.1px}
.hero .ivet-ten::after{content:"";display:block;width:34px;height:2.5px;background:rgba(255,255,255,.6);
  margin:7px auto 0;border-radius:2px}
.hero .ivet-tagline{position:relative;color:rgba(255,255,255,.85);font-size:12px;margin-top:4px}
.hero-photo-wrap{position:relative;margin-top:16px;padding-bottom:30px}
.hero-photo{width:58%;max-width:220px;aspect-ratio:4/5;margin:0 auto;border-radius:20px;
  border:5px solid #fff;box-shadow:0 14px 30px -10px rgba(0,0,0,.35);overflow:hidden;
  background:var(--pet-brand-soft);position:relative}
.hero-photo img{width:100%;height:100%;object-fit:cover;display:block}
.hero-photo .paw-mark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-size:56px;background:linear-gradient(160deg,color-mix(in srgb, var(--pet-brand) 18%, #fff),#fff)}

.ten-be{text-align:center;font-size:clamp(20px,5.6vw,26px);font-weight:800;margin:14px 0 2px}
.meta-be{text-align:center;color:var(--pet-brand);font-weight:700;font-size:13.5px;
  margin-bottom:4px;display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}
.meta-be .dot{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.5;display:inline-block}
.meta-underline{width:30px;height:2.5px;background:color-mix(in srgb, var(--pet-brand) 60%, transparent);
  border-radius:2px;margin:8px auto 18px}

/* ---- hang icon tron: hanh dong chinh (Goi/Chia se...) ---- */
.icon-actions{display:flex;justify-content:center;gap:26px;margin-bottom:18px;flex-wrap:wrap}
.icon-action{display:flex;flex-direction:column;align-items:center;gap:7px;text-decoration:none;
  color:var(--pet-text);border:none;background:none;font-family:inherit;cursor:pointer}
.icon-action .ic{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;font-size:21px;box-shadow:var(--pet-shadow-sm);transition:transform .12s ease}
.icon-action:active .ic{transform:scale(.94)}
.icon-action.primary .ic{background:var(--pet-brand);color:#fff}
.icon-action.danger .ic{background:var(--pet-danger);color:#fff}
.icon-action.neutral .ic{background:#f1f0ec;color:var(--pet-text)}
.icon-action .lb{font-size:11.5px;font-weight:700;color:var(--pet-muted)}

/* ---- 25/09/2026 trang cong khai: gioi tinh, nhan, the ho so, sinh nhat, QR ---- */
.gt-ky{display:inline-block;margin-left:7px;font-size:.78em;font-weight:800;vertical-align:.08em}
.gt-duc{color:#2563eb} .gt-cai{color:#db2777}
.nhan-be{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin:-6px 16px 18px}
.nhan{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:999px;
  background:var(--pet-card);border:1px solid var(--pet-line);box-shadow:var(--pet-shadow-sm);
  font-size:12.5px;font-weight:700;color:var(--pet-text)}
.nhan.canh-bao{background:#fff7ed;border-color:#fdba74;color:#9a3412}
.sn-ribbon{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);white-space:nowrap;
  background:#fff;color:var(--pet-brand-dark);font-weight:800;font-size:13px;padding:7px 14px;
  border-radius:999px;box-shadow:0 8px 20px -8px rgba(0,0,0,.4)}
.gioi-thieu{white-space:pre-line;font-size:15px;line-height:1.6}
.ho-so{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.o-hs{display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center;
  padding:11px 12px;border-radius:var(--pet-radius-sm);background:var(--pet-bg);min-width:0}
.o-ic{grid-row:span 3;font-size:20px;line-height:1;width:26px;text-align:center}
.o-nhan{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--pet-muted)}
.o-gt{font-size:14.5px;font-weight:700;color:var(--pet-text);overflow-wrap:anywhere}
.o-phu{font-size:11.5px;font-weight:700;color:var(--pet-brand)}
.da-chep{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translateX(-50%);
  z-index:90;background:var(--pet-text);color:#fff;font-size:13px;font-weight:700;padding:9px 16px;
  border-radius:999px;box-shadow:var(--pet-shadow)}
.da-chep[hidden]{display:none}
@media (max-width:639px){ body[data-the="ao"] .da-chep{bottom:110px} }
.qr-hop{border:none;border-radius:var(--pet-radius);padding:22px 20px 16px;width:min(340px,calc(100% - 32px));
  text-align:center;box-shadow:0 24px 60px -12px rgba(0,0,0,.45)}
.qr-hop::backdrop{background:rgba(28,25,23,.55)}
.qr-hop h3{margin:0 0 12px;font-size:16px}
.qr-hop img{width:220px;max-width:100%;height:auto;background:#fff;border-radius:12px;padding:8px;
  border:1px solid var(--pet-line)}
.qr-ma{font-family:ui-monospace,Menlo,monospace;font-weight:800;letter-spacing:.14em;margin:8px 0 6px;
  color:var(--pet-muted)}
.qr-nut .btn{width:100%;margin:8px 0 0}

/* ---- canh bao dang lac ---- */
.lost-banner{background:repeating-linear-gradient(135deg,var(--pet-danger),var(--pet-danger) 14px,
  #b91c1c 14px,#b91c1c 28px);color:#fff;text-align:center;padding:14px 18px;font-weight:800;
  font-size:clamp(14.5px,4vw,18px);box-shadow:inset 0 -3px 0 rgba(0,0,0,.15)}
.lost-banner small{display:block;font-weight:600;font-size:12.5px;opacity:.95;margin-top:3px}

/* ---- nut ---- */
.btn{display:block;width:calc(100% - 32px);margin:9px auto;padding:14px 18px;
  border-radius:999px;border:none;text-align:center;font-weight:700;font-size:15px;
  text-decoration:none;cursor:pointer;transition:transform .1s ease,box-shadow .15s ease;
  font-family:inherit}
.btn:hover{text-decoration:none}
.btn:active{transform:scale(.98)}
.btn-brand{background:var(--pet-brand);color:#fff;box-shadow:0 6px 16px -6px color-mix(in srgb, var(--pet-brand) 70%, transparent)}
.btn-danger{background:var(--pet-danger);color:#fff;box-shadow:0 6px 16px -6px rgba(220,38,38,.5)}
.btn-outline{background:var(--pet-card);color:var(--pet-text);border:1.5px solid var(--pet-line);
  box-shadow:var(--pet-shadow-sm)}
.btn-outline:hover{border-color:var(--pet-brand);color:var(--pet-brand)}

/* ---- the noi dung ---- */
.section{background:var(--pet-card);border-radius:var(--pet-radius);margin:14px 16px;
  padding:18px;box-shadow:var(--pet-shadow);border:1px solid var(--pet-line)}
.section h3{margin:0 0 12px;font-size:14.5px;font-weight:800;text-transform:uppercase;
  letter-spacing:.03em;color:var(--pet-muted);display:flex;align-items:center;gap:6px}

.status-item{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--pet-line)}
.status-item:first-child{border-top:none;padding-top:0}
.status-item:last-child{padding-bottom:0}
.status-item img{width:56px;height:56px;border-radius:14px;object-fit:cover;flex:none;
  box-shadow:var(--pet-shadow-sm)}
.status-item .noi-dung{font-size:14px;line-height:1.5;color:var(--pet-text)}
.status-item .ts{color:var(--pet-muted);font-size:11.5px;margin-top:4px;font-weight:600}

.badge{display:inline-block;background:var(--pet-danger-soft);color:#991b1b;border-radius:999px;
  padding:2px 10px;font-size:11px;font-weight:700;margin-left:6px}

.footer-ivet{background:linear-gradient(160deg,var(--pet-brand-dark),color-mix(in srgb, var(--pet-brand-dark) 70%, black));
  color:#fff;text-align:center;padding:28px 20px;margin-top:20px}
.footer-ivet img{max-width:120px;margin-bottom:10px;border-radius:12px}
.footer-ivet div{font-size:13px;opacity:.9;font-weight:600;letter-spacing:.02em}

.empty{color:var(--pet-muted);font-size:13.5px;text-align:center;padding:10px 0}
.err-page{max-width:420px;margin:0 auto;text-align:center;padding:80px 20px 20px;
  min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}
.err-page .icon{font-size:56px;margin-bottom:6px}

/* ---- widget doi ngon ngu — hien tren MOI trang (dat trong base.html, ngoai block body) ---- */
.lang-switch-float{position:fixed;top:12px;right:12px;z-index:80;
  background:rgba(255,255,255,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  border-radius:999px;padding:7px 13px;box-shadow:var(--pet-shadow-sm);
  display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800}
.lang-switch-float a{color:var(--pet-text);opacity:.4;text-decoration:none}
.lang-switch-float a.on{opacity:1;color:var(--pet-brand)}
.lang-switch-float span{opacity:.3;font-weight:400}


/* ---- thanh tab iVet (nut tu dat) — dat GAN CUOI trang, truoc footer, khong noi bat dau trang ---- */
.ivet-tabbar{background:var(--pet-card);border-top:1px solid var(--pet-line);
  display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.ivet-tabbar::-webkit-scrollbar{display:none}
.ivet-tab{flex:1 0 auto;min-width:76px;text-align:center;padding:12px 10px;text-decoration:none;
  color:var(--pet-muted);font-size:11.5px;font-weight:700;border:none;background:none;
  font-family:inherit;cursor:pointer;border-bottom:2.5px solid transparent}
.ivet-tab .ic{font-size:19px;display:block;margin-bottom:4px}
.ivet-tab.active{color:var(--hero-brand,var(--pet-brand));border-bottom-color:var(--hero-brand,var(--pet-brand))}

/* ---- luoi anh "khoanh khac" — noi bat hon danh sach text truoc day ---- */
.moment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:4px}
.moment-thumb{position:relative;aspect-ratio:1/1;border-radius:12px;overflow:hidden;
  display:block;text-decoration:none;box-shadow:var(--pet-shadow-sm)}
.moment-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s ease}
.moment-thumb:active img{transform:scale(1.05)}
.moment-thumb .cap{position:absolute;left:0;right:0;bottom:0;padding:14px 8px 6px;
  background:linear-gradient(0deg,rgba(0,0,0,.55),transparent);color:#fff;font-size:10.5px;
  font-weight:600;line-height:1.3;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ---- khoi "dac diem nhan dang" — thong tin AN TOAN, khong phai de khoe -> nhat hon ---- */
.id-note{background:transparent;box-shadow:none;border:1.5px dashed var(--pet-line);padding:14px 16px}
.id-note h3{color:var(--pet-muted);font-size:12px}
.id-note > div{font-size:13.5px;color:var(--pet-muted)}

/* ── 18/09/2026 (buoc 5) loi nhan tren trang cong khai ── */
.ln-item{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--pet-line)}
.ln-item:first-of-type{border-top:none;padding-top:0}
.ln-item img{width:56px;height:56px;border-radius:14px;object-fit:cover;flex:none;display:block}
.ln-ten{font-weight:800;font-size:13.5px}
.ln-chu{font-size:14.5px;line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}
.ln-item .ts{font-size:11.5px;color:var(--pet-muted);margin-top:3px}
.ln-flash{padding:11px 14px;border-radius:12px;font-size:13.5px;font-weight:600;margin-bottom:12px}
.ln-flash.ok{background:var(--pet-brand-soft);color:var(--pet-brand-dark)}
.ln-flash.err{background:var(--pet-danger-soft);color:#991b1b}
.ln-form{margin-top:14px;border-top:1px solid var(--pet-line);padding-top:12px}
.ln-form summary{cursor:pointer;font-weight:700;color:var(--pet-brand);font-size:14px;list-style:none}
.ln-form summary::-webkit-details-marker{display:none}
.ln-form[open] summary{margin-bottom:6px;color:var(--pet-muted)}
.ln-form label{display:block;font-size:12px;font-weight:700;color:var(--pet-muted);margin:12px 0 5px}
.ln-form input[type=text],.ln-form textarea{width:100%;padding:11px 13px;border:1.5px solid var(--pet-line);
  border-radius:12px;font:inherit;font-size:15px;background:#fff;color:var(--pet-text)}
.ln-form textarea{min-height:90px;resize:vertical}
.ln-form input:focus,.ln-form textarea:focus{outline:none;border-color:var(--pet-brand)}
.ln-form input[type=file]{font-size:13px;max-width:100%}
.ln-form .ln-dongy{display:flex;gap:9px;align-items:flex-start;font-weight:500;font-size:12.5px;
  line-height:1.5;color:var(--pet-text)}
.ln-form .ln-dongy input{margin-top:3px;flex:none}
.ln-mat{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ── 18/09/2026 the ao: khung quang cao co dinh + bao vi pham ── */
.ad-khung{margin:14px 16px}
.ad-khung:empty{display:none}
.bao-cao{margin:18px 16px 26px;font-size:12.5px;color:var(--pet-muted);text-align:center}
.bao-cao summary{cursor:pointer;list-style:none;display:inline-block;text-decoration:underline;
  text-underline-offset:3px}
.bao-cao summary::-webkit-details-marker{display:none}
.bao-cao form{display:grid;gap:8px;margin-top:10px;text-align:left}
.bao-cao select,.bao-cao textarea{width:100%;padding:10px 12px;border:1.5px solid var(--pet-line);
  border-radius:12px;font:inherit;font-size:14px;background:#fff;color:var(--pet-text)}
.bao-cao textarea{min-height:70px;resize:vertical}
.bao-cao button{justify-self:start;border:1.5px solid var(--pet-line);background:var(--pet-card);
  border-radius:999px;padding:8px 16px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;color:var(--pet-text)}
.bao-cao .bc-ok{margin:10px 0 0;color:var(--pet-brand-dark);font-weight:600}
/* the ao co thanh quang cao dinh day (mobile) -> chua cho de no khong de len dong cuoi trang */
@media (max-width:639px){ body[data-the="ao"]{padding-bottom:96px} }

/* 25/09/2026 — dong link phap ly cuoi trang cong khai / dang nhap */
.phap-ly{text-align:center;font-size:12.5px;color:var(--pet-muted);margin:18px 16px 24px}
.phap-ly a{color:var(--pet-muted);font-weight:600;text-decoration:underline}

/* 25/09/2026 — trang lien he */
.lh-dau{background:linear-gradient(160deg,var(--pet-brand),var(--pet-brand-dark));color:#fff;text-align:center;padding:56px 20px 46px}
.lh-dau h1{margin:14px 0 6px;font-size:clamp(24px,6.5vw,32px)}
.lh-dau p{margin:0 auto;max-width:42ch;opacity:.92;font-size:14.5px;text-wrap:balance}
.lh-logo{display:inline-flex;align-items:center;gap:8px;color:#fff;font-weight:800;text-decoration:none}
.lh-logo{font-size:17px}
.lh-logo img{border-radius:9px;background:#fff;width:38px;height:38px}
.lh-wrap{padding-top:4px}
/* 25/09 (anh): 2 o xep TREN–DUOI o moi co man — ngang hang thi o email hep, dia chi bi ngat giua chu */
.lh-kenh{display:grid;gap:10px;margin:-28px 16px 4px}
.lh-nut{display:flex;align-items:center;gap:12px;background:var(--pet-card);border:1px solid var(--pet-line);border-radius:var(--pet-radius);
  padding:14px 16px;box-shadow:var(--pet-shadow);color:var(--pet-text);text-decoration:none}
.lh-nut:hover{text-decoration:none;border-color:var(--pet-brand)}
.lh-nut .ic{font-size:22px;width:40px;height:40px;border-radius:12px;background:var(--pet-brand-soft);display:flex;align-items:center;justify-content:center;flex:none}
.lh-nut>span:last-child{min-width:0}
.lh-nut b{display:block;font-size:15.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lh-nut small{color:var(--pet-muted);font-weight:600;font-size:12.5px}
.lh-muc p{margin:0 0 8px;font-size:14.5px;line-height:1.6}
.lh-muc p:last-child{margin-bottom:0}
.lh-nho a{font-weight:700}
.lh-cty{margin:18px 16px 0;padding:14px 16px;border-radius:var(--pet-radius-sm);background:var(--pet-card);border:1px dashed var(--pet-line);
  font-size:13px;line-height:1.6;color:var(--pet-muted)}
.lh-cty b{color:var(--pet-text)}
