@charset "UTF-8";
:root{
  --ink:#17322a; --green:#073b2f; --green2:#0d5a46; --jade:#138f74;
  --cream:#f8f2e6; --paper:#fffdf7; --gold:#c79a45; --red:#a72d26;
  --muted:#6e756f; --line:rgba(23,50,42,.14); --shadow:0 24px 70px rgba(6,48,38,.12);
  --radius:26px;
  --font-sans:"Be Vietnam Pro","Segoe UI",Arial,Helvetica,sans-serif;
  --font-serif:"Noto Serif","Times New Roman",Times,serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font-sans);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-kerning:normal}
img{display:block;max-width:100%} button,input,select,textarea{font:inherit} button,a{transition:.2s ease}
a{color:inherit;text-decoration:none}.announcement{background:var(--green);color:#fff;text-align:center;padding:8px 16px;font-size:13px;letter-spacing:.02em}
.site-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px clamp(18px,4vw,64px);background:rgba(255,253,247,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;min-width:max-content}.brand-mark{width:38px;height:38px;border-radius:12px;background:var(--green);color:#fff;display:grid;place-items:center;font-family:var(--font-serif);font-size:27px;font-weight:700}.brand strong{font-family:var(--font-serif);font-size:24px;display:block;line-height:1}.brand small{font-size:10px;color:var(--muted)}
.nav{display:flex;gap:28px;font-size:14px}.nav a:hover{color:var(--jade)}.cart-button{border:1px solid var(--green);background:transparent;color:var(--green);border-radius:999px;padding:9px 14px;cursor:pointer}.cart-button span{background:var(--green);color:#fff;border-radius:999px;padding:2px 7px;margin-left:6px}
.hero{min-height:78vh;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:56px;padding:68px clamp(22px,6vw,92px);background:radial-gradient(circle at 12% 20%,#fff8dd 0,transparent 34%),linear-gradient(120deg,#fbf4e5,#f4ead3)}.hero-copy{max-width:690px}.eyebrow{text-transform:uppercase;font-weight:800;font-size:12px;letter-spacing:.2em;color:var(--jade);margin:0 0 12px}.hero h1{font-family:var(--font-serif);font-size:clamp(46px,7vw,88px);line-height:.98;font-weight:500;margin:0 0 24px;letter-spacing:-.035em}.hero h1 em{color:var(--red);font-weight:500}.hero-text{font-size:18px;color:#4d5d57;max-width:620px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.btn{border:0;border-radius:999px;padding:13px 20px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.btn-primary{background:var(--green);color:white}.btn-primary:hover{background:var(--green2);transform:translateY(-1px)}.btn-ghost{background:transparent;border:1px solid var(--green);color:var(--green)}.btn-light{background:#fff;color:var(--green)}
.hero-stats{display:flex;gap:32px;margin-top:42px}.hero-stats div{display:grid}.hero-stats strong{font-size:23px}.hero-stats span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.hero-visual{position:relative}.hero-visual img{width:100%;height:min(67vh,700px);object-fit:cover;border-radius:40px;box-shadow:var(--shadow)}.hero-card{position:absolute;left:-30px;bottom:28px;background:rgba(255,253,247,.95);padding:18px 22px;border-radius:20px;box-shadow:0 14px 40px rgba(0,0,0,.14);display:grid}.hero-card span{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:var(--jade)}.hero-card strong{font-family:var(--font-serif);font-size:23px}.hero-card small{color:var(--muted)}
.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:24px clamp(22px,6vw,92px);background:#fff;border-bottom:1px solid var(--line)}.trust-strip>div{display:flex;gap:14px;align-items:center}.trust-strip b{color:var(--gold);font-size:22px}.trust-strip span{display:grid}.trust-strip small{color:var(--muted)}
.section{padding:86px clamp(22px,6vw,92px)}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:34px}.section-heading.compact{margin-bottom:24px}.section h2,.editorial h2,.premium-band h2,.order-card h2{font-family:var(--font-serif);font-weight:500;font-size:clamp(36px,5vw,60px);line-height:1.05;margin:0}.filters{display:flex;flex-wrap:wrap;gap:8px}.filter{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;color:var(--ink);cursor:pointer}.filter.active,.filter:hover{background:var(--green);color:#fff;border-color:var(--green)}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;display:flex;flex-direction:column;min-width:0}.product-media{overflow:hidden;background:#f3efe7;display:flex;align-items:flex-start;justify-content:center}.product-media img{width:100%;height:auto;display:block;object-fit:contain;object-position:center top;transition:filter .25s ease}.product-card:hover .product-media img{filter:brightness(1.02)}.product-body{padding:22px;display:flex;flex-direction:column;flex:1}.product-tags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}.tag{font-size:10px;text-transform:uppercase;letter-spacing:.08em;background:#eef6f2;color:var(--green);border-radius:999px;padding:5px 8px}.product-body h3{font-family:var(--font-serif);font-size:25px;font-weight:500;margin:2px 0 7px}.product-desc{font-size:14px;color:var(--muted);margin:0 0 18px}.product-bottom{margin-top:auto;display:flex;align-items:end;justify-content:space-between;gap:14px}.price{display:grid}.price small{color:var(--muted)}.price strong{font-size:22px}.add-btn{border:0;background:var(--cream);color:var(--green);width:42px;height:42px;border-radius:50%;font-size:23px;cursor:pointer}.add-btn:hover{background:var(--green);color:#fff}
.editorial{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;background:#eef3e9}.editorial-image img{border-radius:36px;max-height:720px;width:100%;object-fit:cover}.editorial-copy p{color:#52605b}.check-list{padding:0;list-style:none;display:grid;gap:12px;margin:24px 0}.check-list li:before{content:"✓";color:var(--jade);font-weight:900;margin-right:10px}.text-link{font-weight:800;color:var(--green);border-bottom:1px solid var(--green)}
.flavor-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:44px;align-items:start}.flavor-image img{border-radius:30px;box-shadow:var(--shadow)}.flavor-copy{position:sticky;top:110px}.pill{display:inline-block;border:1px solid #c8d9d1;border-radius:999px;padding:7px 11px;margin:0 6px 8px 0;font-size:12px}.flavor-copy h3{font-family:var(--font-serif);font-size:34px;margin:20px 0}.flavor-list{display:grid;gap:0;border-top:1px solid var(--line)}.flavor-list span{padding:13px 0;border-bottom:1px solid var(--line)}.note{font-size:12px;color:var(--muted)}
.premium-band{margin:0 clamp(22px,4vw,60px);border-radius:38px;overflow:hidden;background:#0b3152;color:#fff;display:grid;grid-template-columns:.85fr 1.15fr;min-height:540px}.premium-band>div{padding:60px;align-self:center}.premium-band p{color:#d8e6ef;max-width:530px}.eyebrow.light{color:#f3cc7d}.premium-band img{width:100%;height:100%;object-fit:cover}
.order-section{background:linear-gradient(#fff,#f7f1e7)}.order-card{background:#fff;border:1px solid var(--line);border-radius:34px;padding:44px;display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;box-shadow:var(--shadow)}.order-card form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.order-card label{display:grid;gap:7px;font-size:13px;font-weight:700}.order-card input,.order-card select,.order-card textarea{width:100%;border:1px solid var(--line);border-radius:14px;padding:12px 13px;background:#fff}.order-card .full{grid-column:1/-1}
footer{padding:36px clamp(22px,6vw,92px);display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.footer-brand{display:flex;align-items:center;gap:9px;color:var(--ink)}
.cart-drawer{position:fixed;z-index:60;right:-440px;top:0;width:min(420px,92vw);height:100dvh;background:#fff;box-shadow:-24px 0 70px rgba(0,0,0,.18);display:flex;flex-direction:column;transition:right .28s ease}.cart-drawer.open{right:0}.drawer-head,.drawer-foot{padding:20px;border-bottom:1px solid var(--line)}.drawer-head{display:flex;justify-content:space-between;align-items:center}.drawer-head h3{font-family:var(--font-serif);font-size:28px;margin:0}.drawer-head button{border:0;background:transparent;font-size:30px;cursor:pointer}.cart-items{padding:16px 20px;overflow:auto;display:grid;gap:12px;flex:1}.cart-item{display:grid;grid-template-columns:62px 1fr auto;gap:10px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px}.cart-item img{width:62px;height:72px;object-fit:cover;border-radius:10px}.cart-item strong{display:block;font-size:14px}.cart-item small{color:var(--muted)}.cart-item button{border:0;background:transparent;color:#9e443d;cursor:pointer}.drawer-foot{border-top:1px solid var(--line);border-bottom:0;display:grid;gap:14px}.cart-total{display:flex;justify-content:space-between}.backdrop{position:fixed;z-index:50;inset:0;background:rgba(0,0,0,.35);opacity:0;pointer-events:none;transition:.2s}.backdrop.show{opacity:1;pointer-events:auto}
dialog{border:0;border-radius:24px;padding:28px;width:min(620px,92vw);box-shadow:0 30px 90px rgba(0,0,0,.3)}dialog::backdrop{background:rgba(0,0,0,.42)}.dialog-close{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:28px;cursor:pointer}dialog h3{font-family:var(--font-serif);font-size:32px;margin:0 0 16px}dialog textarea{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px;margin-bottom:12px}
@media(max-width:980px){.nav{display:none}.hero{grid-template-columns:1fr;padding-top:42px}.hero-visual img{height:60vh}.trust-strip{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(2,1fr)}.editorial,.flavor-layout,.premium-band,.order-card{grid-template-columns:1fr}.flavor-copy{position:static}.premium-band img{max-height:620px}.premium-band>div{padding:42px}.order-card form{grid-template-columns:1fr}.order-card .full{grid-column:auto}.section-heading{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.site-header{padding:11px 16px}.brand small{display:none}.hero{padding:38px 18px 54px}.hero h1{font-size:49px}.hero-text{font-size:16px}.hero-stats{gap:18px}.hero-visual img{height:52vh;border-radius:28px}.hero-card{left:12px;bottom:14px}.section{padding:62px 18px}.product-grid{grid-template-columns:1fr}.editorial{gap:32px}.premium-band{margin:0 12px}.premium-band>div{padding:32px 24px}.order-card{padding:26px 20px}.filters{width:100%;overflow:auto;flex-wrap:nowrap;padding-bottom:6px}.filter{white-space:nowrap}footer{align-items:flex-start;flex-direction:column}}


/* Fix hiển thị dấu tiếng Việt trên tiêu đề sản phẩm */
.product-body h3,.section h2,.editorial h2,.premium-band h2,.order-card h2,.hero h1,.hero-card strong,.brand strong,.drawer-head h3,dialog h3{
  font-family:var(--font-serif);
  font-synthesis:none;
  unicode-bidi:plaintext;
}
.product-body h3{line-height:1.28;overflow:visible;padding-top:.08em;}

/* ===== Baki v3: đặt hàng, liên hệ & quản trị ===== */
.header-actions{display:flex;align-items:center;gap:9px;min-width:max-content}
.admin-login-button{border:0;background:transparent;color:var(--green);font-weight:700;padding:9px 8px;cursor:pointer;border-radius:999px}
.admin-login-button:hover,.admin-login-button.signed-in{background:#edf5f1}
.btn:disabled,button:disabled{opacity:.58;cursor:not-allowed;transform:none!important}

.order-intro>p:not(.eyebrow){color:#52605b;max-width:620px}
.contact-card{margin-top:28px;padding:22px;border-radius:22px;background:linear-gradient(145deg,#073b2f,#0d5a46);color:#fff;display:grid;gap:6px;max-width:460px}
.contact-card .contact-kicker{text-transform:uppercase;letter-spacing:.15em;font-size:10px;color:#cfe9dd;font-weight:800}
.contact-card strong{font-family:var(--font-serif);font-size:28px;font-weight:600}
.contact-card a{width:max-content;max-width:100%;border-bottom:1px solid rgba(255,255,255,.28)}
.contact-card a:hover{border-color:#fff}
.order-card input:focus,.order-card select:focus,.order-card textarea:focus,.login-form input:focus,.admin-toolbar input:focus,.admin-toolbar select:focus,.status-picker select:focus{outline:2px solid rgba(19,143,116,.22);border-color:var(--jade)}
.order-cart-summary{border:1px solid var(--line);border-radius:18px;background:#f8faf7;padding:16px;display:grid;gap:10px}
.summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.summary-head span{font-size:11px;color:var(--muted);text-align:right;max-width:330px}
.summary-lines{display:grid;gap:7px;padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.summary-lines>div,.summary-total{display:flex;justify-content:space-between;gap:18px;align-items:center}
.summary-lines span{font-size:13px}.summary-lines strong{font-size:13px;white-space:nowrap}.summary-total strong{font-size:18px}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.form-status{margin:0;font-size:12px;color:var(--muted);min-height:18px}.form-status.success{color:#0b755c}.form-status.warning{color:#9a6500}.form-status.error,.error-text{color:#a72d26}
.dialog-actions{display:flex;gap:10px;flex-wrap:wrap}

.footer-contact{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.footer-contact strong{color:var(--ink)}.footer-contact a{color:var(--green);font-weight:700}

.qty-control{display:inline-flex;align-items:center;gap:8px;margin-top:8px;border:1px solid var(--line);border-radius:999px;padding:2px 5px}
.qty-control button{width:26px;height:26px;border:0;background:transparent;color:var(--green);cursor:pointer;font-size:17px;line-height:1}
.qty-control span{min-width:18px;text-align:center;font-size:12px;font-weight:800}
.cart-item .remove-item{align-self:start;margin-top:4px}.cart-item img{object-fit:contain;background:#f4f0e8}

.auth-dialog{width:min(460px,92vw)}
.login-form{display:grid;gap:15px}.login-form label{display:grid;gap:7px;font-size:13px;font-weight:700}.login-form input{width:100%;border:1px solid var(--line);border-radius:14px;padding:12px 13px}

.admin-dialog{width:min(1180px,96vw);max-width:1180px;height:min(88vh,900px);max-height:900px;padding:0;overflow:hidden;border-radius:28px}
.admin-dialog::backdrop{background:rgba(4,25,20,.55)}
.admin-head{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid var(--line);padding:24px 28px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.admin-head h3{font-size:32px;margin:0}.admin-head .eyebrow{margin-bottom:4px}.admin-head .note{margin:5px 0 0}
.admin-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.admin-close{border:0;background:#f2f3ef;width:40px;height:40px;border-radius:50%;font-size:26px;cursor:pointer;color:var(--ink)}
.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:22px 28px 0;background:#faf9f5}
.admin-stats>div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px 18px;display:grid;gap:4px}
.admin-stats span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.admin-stats strong{font-size:22px}
.admin-toolbar{display:grid;grid-template-columns:1fr 220px;gap:14px;padding:16px 28px;background:#faf9f5}
.admin-toolbar label,.status-picker{display:grid;gap:6px;font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.admin-toolbar input,.admin-toolbar select,.status-picker select{width:100%;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 11px;color:var(--ink);text-transform:none;letter-spacing:0;font-weight:600}
.admin-orders{height:calc(88vh - 268px);max-height:625px;overflow:auto;padding:10px 28px 30px;background:#faf9f5;display:grid;gap:14px;align-content:start}
.admin-empty{padding:28px;border:1px dashed var(--line);border-radius:18px;background:#fff;text-align:center;color:var(--muted)}
.admin-order-card{border:1px solid var(--line);border-radius:20px;background:#fff;padding:20px;display:grid;gap:16px}
.admin-order-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.admin-order-top>div{display:grid;gap:3px}.admin-order-top strong{font-family:var(--font-serif);font-size:23px;font-weight:600}.admin-order-top small{color:var(--muted)}
.order-code{width:max-content;background:#eef6f2;color:var(--green);border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800;letter-spacing:.08em}
.customer-grid{display:grid;grid-template-columns:220px 1fr;gap:14px}.customer-grid>div{display:grid;gap:3px;padding:12px 14px;border-radius:14px;background:#faf9f5}.customer-grid span,.order-note span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.customer-grid a,.customer-grid strong{font-size:13px}
.admin-cart-block{border:1px solid var(--line);border-radius:15px;overflow:hidden}.admin-cart-title,.admin-cart-line{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 13px}.admin-cart-title{background:#f0f5f1}.admin-cart-title span{font-weight:800}.admin-cart-line{border-top:1px solid var(--line);font-size:13px}.admin-cart-line strong{white-space:nowrap}.admin-cart-block>.note{padding:0 13px}
.order-note{padding:12px 14px;border-left:3px solid var(--gold);background:#fffaf0;border-radius:0 12px 12px 0}.order-note p{margin:4px 0 0;white-space:pre-wrap}

@media(max-width:1100px){
  .nav{gap:16px}.nav a:nth-child(3){display:none}
}
@media(max-width:980px){
  .header-actions{margin-left:auto}.admin-login-button{font-size:12px}
  .summary-head{flex-direction:column;gap:4px}.summary-head span{text-align:left}
  .admin-dialog{width:96vw;height:92vh;max-height:92vh}
  .admin-orders{height:calc(92vh - 320px);max-height:none}
}
@media(max-width:720px){
  .header-actions{gap:4px}.admin-login-button{padding:8px 5px}.cart-button{padding:8px 10px;font-size:12px}
  .footer-contact{display:grid;gap:2px}.footer-contact span{display:none}
  .admin-head{padding:18px;flex-direction:column}.admin-head-actions{width:100%;justify-content:flex-start}.admin-close{margin-left:auto}
  .admin-stats{grid-template-columns:1fr;padding:16px 18px 0}.admin-toolbar{grid-template-columns:1fr;padding:14px 18px}.admin-orders{padding:6px 18px 24px;height:auto;max-height:none}.admin-dialog{height:94vh;max-height:94vh;overflow:auto}
  .customer-grid{grid-template-columns:1fr}.admin-order-top{flex-direction:column}.status-picker{width:100%}
}
@media(max-width:430px){
  .admin-login-button{font-size:0}.admin-login-button::before{content:'Admin';font-size:11px}.admin-login-button.signed-in::before{content:'Quản trị'}
  .brand-mark{width:34px;height:34px}.brand strong{font-size:21px}
}


/* ===== Baki v4: chọn nhiều sản phẩm trong một đơn ===== */
.order-products{border:1px solid var(--line);border-radius:20px;padding:16px;background:#fbfcf9;display:grid;gap:13px}
.order-products-head{display:flex;align-items:center;justify-content:space-between;gap:18px}
.order-products-head>div{display:grid;gap:3px}.order-products-head strong{font-size:14px}.order-products-head span{font-size:11px;color:var(--muted)}
.add-order-product{padding:9px 14px;white-space:nowrap;background:#fff}
.order-product-rows{display:grid;gap:10px}
.order-products-empty{margin:0;padding:14px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);font-size:12px;text-align:center;background:#fff}
.order-product-row{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(150px,.7fr) minmax(120px,.55fr) auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fff}
.order-product-row label{gap:5px}.order-product-row label>span,.order-line-price>span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}
.order-product-row select{padding:10px 11px}
.order-qty-control{display:grid;grid-template-columns:36px minmax(52px,1fr) 36px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}
.order-card .order-qty-control input{border:0;border-radius:0;padding:9px 4px;text-align:center;min-width:0;-moz-appearance:textfield}
.order-card .order-qty-control input::-webkit-outer-spin-button,.order-card .order-qty-control input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.order-qty-control button{border:0;background:#f3f6f3;color:var(--green);font-size:18px;font-weight:800;cursor:pointer}
.order-line-price{display:grid;gap:6px;padding-bottom:9px}.order-line-price strong{font-size:14px;white-space:nowrap}
.order-remove{border:0;background:#fff1ee;color:#a23b31;font-weight:800;border-radius:12px;padding:10px 11px;cursor:pointer;margin-bottom:2px}
.order-remove:hover{background:#f9ded8}
@media(max-width:760px){.order-products-head{align-items:flex-start;flex-direction:column}.add-order-product{width:100%}.order-product-row{grid-template-columns:1fr 1fr}.order-product-select{grid-column:1/-1}.order-line-price{padding:4px 0}.order-remove{align-self:end}}
@media(max-width:430px){.order-product-row{grid-template-columns:1fr}.order-product-select{grid-column:auto}.order-remove{width:100%}}
