:root{--navy:#0D2B45;--navy2:#071d31;--gold:#D4AF37;--ivory:#F7F5EF;--cream:#fbfaf6;--ink:#1f2937;--muted:#6b7280}
*{box-sizing:border-box}body{background:var(--cream);color:var(--ink);font-family:'Segoe UI',Tahoma,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.bf-nav{background:rgba(13,43,69,.98);backdrop-filter:blur(10px)}.brand-text{letter-spacing:.08em}.brand-text span{font-size:10px;color:var(--gold);letter-spacing:.12em;margin-left:6px}.bf-footer{background:var(--navy);color:#fff}.hero-premium{background:radial-gradient(circle at 78% 18%,rgba(212,175,55,.23),transparent 30%),linear-gradient(135deg,var(--navy),var(--navy2));color:white}.min-vh-75{min-height:72vh}.hero-title{letter-spacing:-.05em;line-height:.94}.text-soft{color:#e6edf4}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.16em;color:var(--gold);font-weight:800}.eyebrow.dark{color:#8b6b10}.btn-gold{background:var(--gold);border-color:var(--gold);color:#111;font-weight:800}.btn-gold:hover{background:#c19b2f;border-color:#c19b2f;color:#111}.btn-outline-navy{border:1px solid var(--navy);color:var(--navy);font-weight:700}.btn-outline-navy:hover{background:var(--navy);color:white}.premium-panel{border:1px solid rgba(212,175,55,.35);border-radius:32px;background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02));padding:56px;box-shadow:0 28px 80px rgba(0,0,0,.28);min-height:420px;display:flex;flex-direction:column;justify-content:center}.premium-panel h2{font-size:52px;line-height:.96;font-weight:900;letter-spacing:-.04em}.premium-panel h2 span{color:var(--gold)}.premium-panel p{color:#dce8f2;font-size:18px}.panel-tag{color:var(--gold);font-weight:800;margin-bottom:24px;letter-spacing:.12em;text-transform:uppercase}.value-card{background:#fff;border-radius:24px;padding:30px;height:100%;box-shadow:0 10px 30px rgba(13,43,69,.06);border:1px solid rgba(13,43,69,.05)}.value-card h4{color:var(--navy);font-weight:800}.value-card p{color:var(--muted);margin-bottom:0}.icon-dot{width:46px;height:46px;border-radius:50%;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;font-weight:900;margin-bottom:18px}.cream-section{background:var(--ivory)}.section-title{color:var(--navy);font-size:42px}.text-gold{color:#a98218}.product-card{border:0;border-radius:22px;box-shadow:0 10px 30px rgba(13,43,69,.08);overflow:hidden;display:flex;flex-direction:column}.product-card h5{color:var(--navy);font-weight:800;min-height:48px}.product-card>a{display:flex;flex-direction:column;flex:1}.product-card .card-body{display:flex;flex-direction:column;flex:1}.product-card .card-body p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:72px;margin-bottom:14px}.product-card .card-footer{margin-top:auto}.product-img{height:240px;width:100%;object-fit:contain;background:#F8F5EC;padding:12px}.placeholder-img{height:240px;background:linear-gradient(135deg,#fff,var(--ivory));display:flex;align-items:center;justify-content:center;color:var(--navy);font-weight:900;font-size:28px}.placeholder-img span{border:1px solid rgba(212,175,55,.45);padding:18px 26px;border-radius:999px}.story-strip{background:var(--navy);color:white;border-radius:32px;padding:44px;display:flex;justify-content:space-between;align-items:center;gap:24px}.story-strip h2{font-weight:900;max-width:720px}.story-strip p{max-width:760px;color:#dbe7f2}.page-head{background:linear-gradient(135deg,var(--ivory),#fff);border-bottom:1px solid rgba(13,43,69,.08)}.page-head h1{color:var(--navy);font-size:48px}.detail-img,.detail-placeholder{width:100%;border-radius:28px;box-shadow:0 20px 60px rgba(13,43,69,.12)}.detail-img{height:520px;object-fit:contain;background:#F8F5EC;padding:18px}.detail-placeholder{height:520px;background:var(--ivory);display:flex;align-items:center;justify-content:center;color:var(--navy);font-size:44px;font-weight:900}.price-big{font-size:34px;color:#a98218;font-weight:900}.price-big span{font-size:16px;color:var(--muted)}.spec-box{background:white;border-radius:20px;padding:22px;box-shadow:0 8px 24px rgba(13,43,69,.06)}.story-content h2{color:var(--navy);font-weight:900}.story-content p{font-size:18px;line-height:1.8}.story-content blockquote{border-left:5px solid var(--gold);padding:22px;background:var(--ivory);font-size:24px;font-weight:800;color:var(--navy);border-radius:0 18px 18px 0}.contact-card{background:white;border-radius:24px;padding:32px;box-shadow:0 10px 30px rgba(13,43,69,.08);height:100%}.contact-card.navy{background:var(--navy);color:white}.admin-side{background:#0b2238;color:white}.admin-side a{display:block;color:#dbe7f2;text-decoration:none;padding:10px 18px}.admin-side a:hover{background:rgba(255,255,255,.08);color:white}.stat{background:white;border-radius:18px;padding:22px;box-shadow:0 8px 24px rgba(0,0,0,.05)}.stat b{font-size:32px;color:var(--navy)}.card{border:0;border-radius:18px;box-shadow:0 8px 24px rgba(0,0,0,.05)}
@media(max-width:768px){.hero-title{font-size:48px}.premium-panel{padding:32px;min-height:320px}.premium-panel h2{font-size:38px}.story-strip{display:block}.section-title{font-size:34px}}
.card-soft{background:#fff;border-radius:22px;box-shadow:0 10px 30px rgba(13,43,69,.08);border:1px solid rgba(13,43,69,.06)}
.total-box{background:#fff;border-radius:22px;padding:26px;box-shadow:0 10px 30px rgba(13,43,69,.08);border:1px solid rgba(212,175,55,.18)}
.empty-box,.success-box{background:#fff;border-radius:28px;box-shadow:0 10px 30px rgba(13,43,69,.08);max-width:720px}
.table thead th{background:var(--ivory);color:var(--navy);font-weight:800}
.blog-img{height:210px;object-fit:cover;background:#f7f5ef}.narrow{max-width:920px}.article-content{line-height:1.85}.bg-gold{background:#d4af37!important}.page-hero{background:linear-gradient(135deg,#f7f5ef,#fff)}

h1,h2,h3,h4,h5,h6,.brand-text{font-family:'Segoe UI',Tahoma,Arial,sans-serif;font-weight:800}
.cart-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:999px;background:var(--gold);color:#111;font-size:12px;font-weight:900;margin-left:4px;padding:0 6px}
.bar-chart{display:flex;gap:14px;align-items:end;height:230px;padding-top:20px}.bar-item{flex:1;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px}.bar-wrap{height:145px;width:32px;border-radius:20px;background:#f1eee6;display:flex;align-items:end;overflow:hidden}.bar-fill{width:100%;background:linear-gradient(180deg,#C89D3C,#0D2B45);min-height:4px}.bar-item small{color:#6c757d}.bar-item b{font-size:12px;color:#0D2B45}

.bf-loading{position:fixed;inset:0;background:rgba(13,43,69,.38);z-index:9999;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(2px)}
.bf-loading-box{background:#fff;border-radius:18px;padding:24px 32px;box-shadow:0 18px 50px rgba(0,0,0,.18);text-align:center;color:#0D2B45}
.alert{border-radius:14px}.btn:disabled{opacity:.75;cursor:not-allowed}

.image-guideline{background:#fff8df;border:1px solid #f0d27a;border-radius:14px;padding:14px;color:#5b4300}
.product-img-preview{max-width:180px;max-height:180px;object-fit:contain;background:#F8F5EC;border:1px solid #eee;border-radius:12px;padding:8px}
.payment-countdown{font-size:28px;font-weight:900;color:#b45309}

.admin-side .nav-group{margin:8px 10px 14px;border-radius:14px;background:rgba(255,255,255,.035);padding:8px 0}
.admin-side .nav-title{padding:8px 16px 6px;color:#f4c542;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.admin-side .nav-group a{padding:8px 18px 8px 28px;font-size:14px;border-radius:10px;margin:1px 8px}
.admin-side .nav-group a:hover{background:rgba(255,255,255,.10)}


/* v8.0 Enterprise Navigation */
.admin-shell{background:#f5f7fb}.admin-side{background:linear-gradient(180deg,#071d31,#0D2B45);color:white;position:sticky;top:0;height:100vh;overflow:auto;padding-bottom:20px}.admin-main{min-height:100vh;background:#f5f7fb}.brand-panel{border-bottom:1px solid rgba(255,255,255,.08)}.admin-topbar{height:66px;background:#fff;border-bottom:1px solid rgba(13,43,69,.08);display:flex;align-items:center;gap:12px;justify-content:space-between;padding:0 22px;position:sticky;top:0;z-index:50}.admin-search{display:flex;align-items:center;gap:10px;background:#f3f6f9;border:1px solid #e5eaf0;border-radius:999px;padding:9px 15px;min-width:420px}.admin-search input{border:0;background:transparent;outline:0;width:100%;font-size:14px}.admin-side details.nav-group{margin:10px 10px;border-radius:16px;background:rgba(255,255,255,.035);overflow:hidden;border:1px solid rgba(255,255,255,.045)}.admin-side details.nav-group[open]{background:rgba(255,255,255,.055)}.admin-side summary{list-style:none;cursor:pointer;padding:12px 16px;color:#f5cd51;font-size:13px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.admin-side summary::-webkit-details-marker{display:none}.admin-side summary:after{content:'▸';float:right;color:rgba(255,255,255,.6)}.admin-side details[open] summary:after{content:'▾'}.admin-side .nav-item-link{display:block;color:#dbe7f2;text-decoration:none;padding:9px 16px 9px 28px;font-size:14px;border-radius:12px;margin:2px 8px}.admin-side .nav-item-link:hover,.admin-side .nav-item-link.active{background:rgba(212,175,55,.18);color:#fff}.workspace-card{background:#fff;border:1px solid rgba(13,43,69,.06);border-radius:22px;padding:22px;box-shadow:0 8px 24px rgba(13,43,69,.06);height:100%}.workspace-card .workspace-icon{font-size:28px;margin-bottom:10px}.quick-action{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #e8edf3;border-radius:14px;background:#fff;text-decoration:none;color:#0D2B45;font-weight:700;margin-bottom:8px}.quick-action:hover{border-color:#D4AF37;background:#fffaf0}.search-result-card{border:0;border-radius:18px;box-shadow:0 8px 24px rgba(13,43,69,.06);overflow:hidden}.search-badge{font-size:12px;border-radius:999px;background:#eef2f7;color:#0D2B45;padding:3px 9px;font-weight:700}
@media(max-width:768px){.admin-side{position:relative;height:auto}.admin-search{min-width:0;width:100%}.admin-topbar{height:auto;flex-wrap:wrap;padding:12px}.admin-topbar .btn{margin-left:auto}}


/* v8.6.3 - toast báo thêm giỏ hàng, không làm nhảy trang */
.bf-toast{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9999;
  background:#10243f;
  color:#fff;
  padding:12px 16px;
  border-radius:12px;
  box-shadow:0 10px 30px rgba(0,0,0,.18);
  font-weight:700;
}
