/* PetID247 — LOP VO (shell) cua hai khu co dang nhap.
   Tach rieng khoi base.css: base.css la phan CHUNG + trang cong khai /p/,
   file nay chi phuc vu khu CHU NUOI va khu iVET.

   BAY DA DINH (xem project_petid247): zone petid247.com BO QUA query string khi
   tinh cache key -> them file CSS moi thi PHAI them ten no vao
   config._tinh_asset_ver(), neu khong sua CSS xong Cloudflare van phuc vu ban cu 4h.

   Hai khu, hai bo cuc CO Y KHAC NHAU:
     * chu nuoi  = app dien thoai: top bar trang + THANH TAB DAY man hinh.
     * iVet      = ban lam viec doanh nghiep: SIDEBAR NAVY co dinh + top bar ☰
                   (chuan admin chung cua he sinh thai, xem feedback_admin_ui_standard).
*/

/* ==================================================================
   1. KHU CHU NUOI — top bar + thanh tab day
   ================================================================== */

.owner-top{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.88);
  backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--pet-line);
  display:flex;align-items:center;gap:10px;padding:0 12px;height:54px}
.owner-top .ot-back{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;color:var(--pet-text);text-decoration:none;font-size:21px;flex:none;
  background:#f4f2ee;font-weight:400;line-height:1}
.owner-top .ot-back:hover{text-decoration:none;background:var(--pet-brand-soft);color:var(--pet-brand)}
.owner-top .ot-brand{display:flex;align-items:center;gap:8px;text-decoration:none;
  color:var(--pet-text);font-weight:800;font-size:16px;flex:none}
.owner-top .ot-brand img{width:28px;height:28px;border-radius:50%}
.owner-top .ot-title{flex:1;min-width:0;font-weight:800;font-size:15.5px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.owner-top .ot-title.center{text-align:center}
.owner-top .ot-right{flex:none;display:flex;align-items:center;gap:6px}
.owner-top .ot-ghost{width:34px;flex:none}          /* can bang voi nut back de tieu de dung giua */

.owner-main{padding:0 0 calc(74px + env(safe-area-inset-bottom))}
.owner-wrap{max-width:520px;margin:0 auto;padding:18px 16px 8px}
.owner-wrap h1{font-size:clamp(21px,5.6vw,26px);margin:0 0 3px;font-weight:800}
.owner-wrap .sub{color:var(--pet-muted);font-size:13px;margin:0 0 16px}

/* --- thanh tab day man hinh (khuon app dien thoai) --- */
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;
  background:rgba(255,255,255,.94);backdrop-filter:saturate(180%) blur(14px);
  -webkit-backdrop-filter:saturate(180%) blur(14px);
  border-top:1px solid var(--pet-line);padding-bottom:env(safe-area-inset-bottom)}
.tabbar .tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:3px;padding:9px 4px 8px;text-decoration:none;color:var(--pet-muted);
  font-size:10.5px;font-weight:700;background:none;border:none;font-family:inherit;cursor:pointer;
  position:relative;min-width:0}
.tabbar .tab .ic{font-size:20px;line-height:1;filter:grayscale(1);opacity:.55;transition:all .15s ease}
.tabbar .tab .lb{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.tabbar .tab.on{color:var(--pet-brand)}
.tabbar .tab.on .ic{filter:none;opacity:1;transform:translateY(-1px)}
.tabbar .tab:hover{text-decoration:none}
.tabbar .tab.mo{opacity:.38;pointer-events:none}     /* chua co be nao -> tab mo di, khong bam duoc */
.tabbar .tab .cham{position:absolute;top:6px;left:50%;margin-left:6px;min-width:16px;height:16px;
  border-radius:999px;background:var(--pet-danger);color:#fff;font-size:10px;font-weight:800;
  display:flex;align-items:center;justify-content:center;padding:0 4px;
  box-shadow:0 0 0 2px #fff}

/* --- the "mot be" tren trang danh sach --- */
.pet-card{display:flex;gap:13px;align-items:center;background:var(--pet-card);
  border:1px solid var(--pet-line);border-radius:18px;padding:13px 14px;margin-bottom:11px;
  box-shadow:var(--pet-shadow-sm);text-decoration:none;color:var(--pet-text);
  transition:box-shadow .15s ease,transform .1s ease}
.pet-card:hover{box-shadow:var(--pet-shadow);text-decoration:none}
.pet-card:active{transform:scale(.99)}
.pet-card .anh{width:60px;height:60px;border-radius:50%;object-fit:cover;flex:none;
  background:var(--pet-brand-soft);display:flex;align-items:center;justify-content:center;
  font-size:26px;box-shadow:var(--pet-shadow-sm)}
.pet-card .noi{flex:1;min-width:0}
.pet-card .ten{font-weight:800;font-size:16px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.pet-card .sub{font-size:12.5px;color:var(--pet-muted);margin-top:2px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pet-card .ma{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;
  letter-spacing:.04em;color:var(--pet-muted);margin-top:3px}
.pet-card .chev{margin-left:auto;color:var(--pet-line);font-size:22px;flex:none}

.chip{display:inline-flex;align-items:center;gap:3px;border-radius:999px;padding:1px 8px;
  font-size:10.5px;font-weight:800;letter-spacing:.01em;white-space:nowrap}
.chip.on{background:var(--pet-brand-soft);color:var(--pet-brand-dark)}
.chip.off{background:#fef3c7;color:#92400e}
.chip.lost{background:var(--pet-danger-soft);color:#991b1b}
.chip.locked{background:#e7e5e4;color:#57534e}
.chip.info{background:#e0f2fe;color:#075985}

/* --- trang trong (chua co be nao) --- */
.trong{text-align:center;padding:34px 20px 26px;background:var(--pet-card);
  border:1.5px dashed var(--pet-line);border-radius:20px}
.trong .ic{font-size:44px;line-height:1;margin-bottom:10px}
.trong h3{margin:0 0 5px;font-size:16px}
.trong p{margin:0 0 16px;font-size:13.5px;color:var(--pet-muted);line-height:1.5}

/* --- vach han muc anh --- */
.quota{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--pet-muted);
  font-weight:700;margin-bottom:2px}
.quota .thanh{flex:1;height:6px;border-radius:999px;background:#eae7e1;overflow:hidden}
.quota .thanh i{display:block;height:100%;background:var(--pet-brand);border-radius:999px}
.quota.day .thanh i{background:var(--pet-danger)}
.quota.day{color:var(--pet-danger)}

/* --- o chon anh: thay nut "Choose File" mac dinh cua trinh duyet --- */
.anh-pick{display:flex;align-items:center;gap:11px;padding:11px 13px;border-radius:14px;
  border:1.5px dashed var(--pet-line);background:#fbfaf8;cursor:pointer;
  transition:border-color .15s ease,background .15s ease}
.anh-pick:hover{border-color:var(--pet-brand);background:var(--pet-brand-soft)}
.anh-pick .ic{width:40px;height:40px;border-radius:12px;background:var(--pet-brand-soft);
  color:var(--pet-brand);display:flex;align-items:center;justify-content:center;font-size:19px;flex:none;
  overflow:hidden}
.anh-pick .ic img{width:100%;height:100%;object-fit:cover}
.anh-pick .chu{display:block;font-size:13.5px;font-weight:700;line-height:1.35}
.anh-pick .chu small{display:block;font-weight:600;color:var(--pet-muted);font-size:11.5px;margin-top:1px}

/* --- luoi chon giao dien the (thay the <select> tho) --- */
.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}
.theme-opt{position:relative;display:block;cursor:pointer}
.theme-opt input{position:absolute;opacity:0;pointer-events:none}
.theme-opt .o{display:block;border:2px solid var(--pet-line);border-radius:14px;padding:11px 6px 8px;
  text-align:center;background:var(--pet-card);transition:border-color .15s ease,transform .1s ease}
.theme-opt .o .ic{font-size:21px;line-height:1;display:block;margin-bottom:5px}
.theme-opt .o .lb{font-size:10.5px;font-weight:700;color:var(--pet-muted);line-height:1.25;
  display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.theme-opt input:checked + .o{border-color:var(--pet-brand);background:var(--pet-brand-soft);
  transform:translateY(-1px)}
.theme-opt input:checked + .o .lb{color:var(--pet-brand-dark)}
.theme-nhom{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;
  color:var(--pet-muted);margin:14px 2px 7px}
.theme-nhom:first-child{margin-top:0}

/* --- dong status trong khu quan ly --- */
.sline{display:flex;gap:12px;align-items:flex-start;padding:13px 0;border-top:1px solid var(--pet-line)}
.sline:first-child{border-top:none;padding-top:2px}
.sline .anh{width:58px;height:58px;border-radius:14px;object-fit:cover;flex:none;
  box-shadow:var(--pet-shadow-sm)}
.sline .noi{flex:1;min-width:0}
.sline .chu{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.sline .ts{color:var(--pet-muted);font-size:11.5px;margin-top:4px;font-weight:600}
.sline .xoa{border:none;background:none;color:var(--pet-muted);font-size:16px;cursor:pointer;
  padding:4px 2px;flex:none;line-height:1}
.sline .xoa:hover{color:var(--pet-danger)}

/* --- hang thong tin kieu iOS Settings, dang LINK (khac .field la o nhap) --- */
.nav-row{display:flex;align-items:center;gap:11px;padding:13px 15px;border-top:1px solid var(--pet-line);
  text-decoration:none;color:var(--pet-text);font-size:14.5px;font-weight:600;background:none;
  border-left:none;border-right:none;border-bottom:none;width:100%;font-family:inherit;
  cursor:pointer;text-align:left}
.nav-row:first-child{border-top:none}
.nav-row:hover{text-decoration:none;background:#faf9f7}
.nav-row .ic{width:28px;text-align:center;font-size:17px;flex:none}
.nav-row .gt{margin-left:auto;color:var(--pet-muted);font-weight:600;font-size:13px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52%}
.nav-row .chev{color:var(--pet-line);font-size:19px;flex:none;margin-left:4px}
.nav-row.nguy{color:var(--pet-danger)}

/* --- nut chon ngon ngu trong trang Tai khoan (thay widget noi bi che) --- */
.lang-seg{display:inline-flex;border:1.5px solid var(--pet-line);border-radius:999px;overflow:hidden;
  margin-left:auto}
.lang-seg a{padding:4px 13px;font-size:12px;font-weight:800;color:var(--pet-muted);
  text-decoration:none;background:var(--pet-card)}
.lang-seg a.on{background:var(--pet-brand);color:#fff}
.lang-seg a:hover{text-decoration:none}


/* ==================================================================
   2. KHU iVET — sidebar navy co dinh + top bar ☰ (chuan admin cua he)
   ================================================================== */

.ashell{display:flex;min-height:100vh}

.aside{position:fixed;left:0;top:0;bottom:0;width:236px;z-index:60;
  background:linear-gradient(180deg,#0b1220 0%,#111d36 100%);color:#e2e8f0;
  display:flex;flex-direction:column;overflow-y:auto;
  transition:transform .22s ease}
.aside .abrand{display:flex;align-items:center;gap:9px;padding:16px 16px 14px;
  text-decoration:none;color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.aside .abrand img{width:32px;height:32px;border-radius:50%;flex:none}
.aside .abrand .ten{display:block;font-weight:800;font-size:15px;line-height:1.15}
.aside .abrand .vai{display:block;font-size:10.5px;font-weight:700;color:#7dd3b0;letter-spacing:.06em;
  text-transform:uppercase;margin-top:1px}
.aside .aco{padding:14px 16px 12px;border-bottom:1px solid rgba(255,255,255,.08)}
.aside .aco .nhan{font-size:10px;text-transform:uppercase;letter-spacing:.06em;
  color:#64748b;font-weight:800;margin-bottom:3px}
.aside .aco .ten{font-size:13.5px;font-weight:700;color:#fff;line-height:1.3;
  overflow-wrap:anywhere}
.aside .aco .ma{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;
  color:#7dd3b0;margin-top:2px;letter-spacing:.04em}

.aside nav{flex:1;padding:10px 10px 16px}
.aside .sep{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#64748b;
  font-weight:800;margin:14px 8px 6px}
.aside .sep:first-child{margin-top:2px}
.aside nav a{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:10px;
  color:#cbd5e1;text-decoration:none;font-size:13.5px;font-weight:600;margin-bottom:2px;
  transition:background .13s ease,color .13s ease}
.aside nav a .ic{width:19px;text-align:center;font-size:15px;flex:none}
.aside nav a:hover{background:rgba(255,255,255,.07);color:#fff;text-decoration:none}
.aside nav a.on{background:var(--pet-brand);color:#fff;
  box-shadow:0 6px 16px -8px var(--pet-brand)}
.aside nav a .dem{margin-left:auto;background:rgba(255,255,255,.12);border-radius:999px;
  padding:0 7px;font-size:11px;font-weight:800}
.aside nav a.on .dem{background:rgba(0,0,0,.22)}

.aside .afoot{padding:12px 14px calc(14px + env(safe-area-inset-bottom));
  border-top:1px solid rgba(255,255,255,.08);font-size:12px}
.aside .afoot .email{color:#94a3b8;overflow-wrap:anywhere;margin-bottom:9px;font-weight:600}
.aside .afoot .hang{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.aside .afoot a.out{color:#fca5a5;text-decoration:none;font-weight:700}
.aside .afoot a.out:hover{color:#fecaca;text-decoration:none}
.aside .afoot .lang a{color:#64748b;text-decoration:none;font-weight:800;padding:0 2px}
.aside .afoot .lang a.on{color:var(--pet-brand)}

.amain{flex:1;min-width:0;margin-left:236px;display:flex;flex-direction:column;
  transition:margin-left .22s ease}
/* 🔴 min-width:0 la BAT BUOC: flex item mac dinh min-width:auto, bang nhieu cot
   ben trong se thoi .amain rong ra va lam TRAN NGANG ca trang (da dinh o isign247). */

.atop{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.9);
  backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid var(--pet-line);height:56px;display:flex;align-items:center;
  gap:12px;padding:0 18px}
.burger{width:36px;height:36px;border-radius:10px;border:1px solid var(--pet-line);
  background:var(--pet-card);cursor:pointer;font-size:15px;line-height:1;flex:none;
  display:flex;align-items:center;justify-content:center;color:var(--pet-text)}
.burger:hover{border-color:var(--pet-brand);color:var(--pet-brand)}
.atop .tieu-de{font-weight:800;font-size:16px;flex:1;min-width:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.atop .actions{flex:none;display:flex;align-items:center;gap:8px}

.apage{padding:20px 18px 46px;max-width:1120px;width:100%}
.apage h2{font-size:19px;margin:0 0 14px}

.aoverlay{display:none;position:fixed;inset:0;z-index:55;background:rgba(15,23,42,.45);
  backdrop-filter:blur(2px)}

/* Desktop: ☰ THU/MO sidebar (burger luon hien, ke ca desktop — dung chuan chung) */
body.aside-collapsed .aside{transform:translateX(-236px)}
body.aside-collapsed .amain{margin-left:0}

/* Mobile: ☰ mo ngan keo + lop phu mo */
@media (max-width:900px){
  .aside{transform:translateX(-236px)}
  .amain{margin-left:0}
  body.aside-open .aside{transform:none;box-shadow:0 0 40px rgba(0,0,0,.4)}
  body.aside-open .aoverlay{display:block}
  body.aside-collapsed .aside{transform:translateX(-236px)}
  .apage{padding:16px 14px 40px}
  .atop{padding:0 14px}
}

/* --- the noi dung trong khu iVet --- */
.acard{background:var(--pet-card);border:1px solid var(--pet-line);border-radius:16px;
  padding:18px;box-shadow:var(--pet-shadow-sm);margin-bottom:16px}
.acard > h3{margin:0 0 13px;font-size:13px;font-weight:800;text-transform:uppercase;
  letter-spacing:.04em;color:var(--pet-muted);display:flex;align-items:center;gap:7px}
.acard > h3 .phai{margin-left:auto;text-transform:none;letter-spacing:0;font-size:12.5px}

/* --- hang o thong ke --- */
.astats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:13px;
  margin-bottom:18px}
.astat{background:var(--pet-card);border:1px solid var(--pet-line);border-radius:16px;
  padding:15px 16px;box-shadow:var(--pet-shadow-sm)}
.astat .so{font-size:27px;font-weight:800;line-height:1.1;letter-spacing:-.02em}
.astat .nhan{font-size:11.5px;color:var(--pet-muted);margin-top:3px;font-weight:700}
.astat .phu{font-size:11px;color:var(--pet-muted);margin-top:6px}
.astat.brand .so{color:var(--pet-brand)}
.astat.canh .so{color:#b45309}
.astat.nguy .so{color:var(--pet-danger)}
.astat .vach{height:5px;border-radius:999px;background:#eae7e1;overflow:hidden;margin-top:9px}
.astat .vach i{display:block;height:100%;background:var(--pet-brand);border-radius:999px}

/* --- bang --- */
.abang-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -4px;padding:0 4px}
table.abang{width:100%;border-collapse:collapse;font-size:13.5px}
table.abang th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;
  color:var(--pet-muted);font-weight:800;padding:0 12px 9px 0;border-bottom:1.5px solid var(--pet-line);
  white-space:nowrap}
table.abang td{padding:11px 12px 11px 0;border-bottom:1px solid var(--pet-line);vertical-align:middle}
table.abang tr:last-child td{border-bottom:none}
table.abang td.ma{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;
  letter-spacing:.04em;white-space:nowrap}
table.abang td.phai,table.abang th.phai{text-align:right;padding-right:0}
table.abang .be{display:flex;align-items:center;gap:9px;min-width:150px}
table.abang .be img{width:32px;height:32px;border-radius:50%;object-fit:cover;flex:none;
  background:var(--pet-brand-soft)}
table.abang .be .khong{width:32px;height:32px;border-radius:50%;background:#f1f0ec;flex:none;
  display:flex;align-items:center;justify-content:center;font-size:14px;opacity:.5}
@media (max-width:900px){
  table.abang{width:max-content;min-width:100%}
  /* ep width:100% se bop cot ten be con "mot chu mot dong" — da tra gia o admin hraqua */
}
/* Dien thoai: giau cot PHU (loai, gio kich hoat) de cot Trang thai + Thao tac
   len duoc man hinh. Do that o 390px: khong giau thi phai keo ngang moi bam duoc
   nut Khoa — cot quan trong nhat lai la cot khuat nhat. */
table.abang td.thaotac{white-space:nowrap}
@media (max-width:760px){
  table.abang .an-hep{display:none}
  table.abang{width:100%;min-width:0}
  table.abang .be{min-width:0}
  table.abang th,table.abang td{padding-right:7px;font-size:12.5px}
  /* Tieu de cot va ma the mac dinh nowrap — tren man hep chinh chung no thoi
     bang rong ra. Cho xuong dong het, bang moi vua man hinh. */
  table.abang th{white-space:normal}
  table.abang td.ma{white-space:normal;overflow-wrap:anywhere}
  /* Cho hai nut thao tac xuong dong thay vi day bang tran ra ngoai man hinh */
  table.abang td.thaotac{white-space:normal}
  table.abang td.thaotac .mini{padding:5px 10px;font-size:11.5px;margin-top:3px}
}

/* --- nut nho trong bang / thanh cong cu --- */
.mini{display:inline-flex;align-items:center;gap:5px;padding:6px 13px;border-radius:999px;
  border:1.5px solid var(--pet-line);background:var(--pet-card);color:var(--pet-text);
  font-size:12.5px;font-weight:700;cursor:pointer;text-decoration:none;font-family:inherit;
  white-space:nowrap;line-height:1.3}
.mini:hover{border-color:var(--pet-brand);color:var(--pet-brand);text-decoration:none}
.mini.brand{background:var(--pet-brand);border-color:var(--pet-brand);color:#fff}
.mini.brand:hover{background:var(--pet-brand-dark);border-color:var(--pet-brand-dark);color:#fff}
.mini.nguy{color:var(--pet-danger);border-color:#fecaca}
.mini.nguy:hover{background:var(--pet-danger);border-color:var(--pet-danger);color:#fff}
.mini[disabled]{opacity:.45;pointer-events:none}

.toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.toolbar input[type=search],.toolbar input[type=text]{flex:1;min-width:150px;padding:9px 13px;
  border:1.5px solid var(--pet-line);border-radius:999px;font-size:13.5px;font-family:inherit;
  background:var(--pet-card);color:var(--pet-text)}
.toolbar input:focus{outline:none;border-color:var(--pet-brand)}
.toolbar select{padding:9px 11px;border:1.5px solid var(--pet-line);border-radius:999px;
  font-size:13px;font-family:inherit;background:var(--pet-card);color:var(--pet-text)}

.trang-so{display:flex;gap:6px;align-items:center;justify-content:center;margin-top:16px;
  font-size:13px;color:var(--pet-muted);font-weight:700;flex-wrap:wrap}
.trang-so a{padding:5px 11px;border-radius:9px;border:1.5px solid var(--pet-line);
  text-decoration:none;color:var(--pet-text);background:var(--pet-card)}
.trang-so a:hover{border-color:var(--pet-brand);color:var(--pet-brand);text-decoration:none}
.trang-so a.on{background:var(--pet-brand);border-color:var(--pet-brand);color:#fff}

/* --- form trong khu iVet: dung lai .glabel/.group/.field cua khu chu nuoi --- */
.acard .glabel:first-of-type{margin-top:0}
.form-hai{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:0 16px;
  align-items:start}

/* --- hop canh bao PIN chi hien 1 lan --- */
.canh-do{background:var(--pet-danger-soft);border:1.5px solid #fecaca;color:#991b1b;
  border-radius:14px;padding:13px 15px;font-size:13.5px;line-height:1.5;margin-bottom:16px}
.canh-do b{display:block;margin-bottom:2px}
