/* Bổ sung của theme Mory trên CMS mới: thông báo, phân trang, trang của module không có view riêng (giỏ hàng, đặt hàng...). */
:root{--mory_muted:#666;--mory_soft:#888;--mory_line:#F1F1F1;--mory_tint:#fdf3dc;--mory_dark:#9a6a00}   /* sắc phụ dựng quanh bảng màu gốc (style.css): chữ phụ, chữ mờ, đường kẻ, nền vàng nhạt, vàng đậm */

.mory-cart-link { color: inherit; }
.mory-cart-link:hover { text-decoration: none !important; }

/* Thông báo (flash) */
.alert { border-radius:2px; padding: 8px 12px; margin-bottom: 10px; border-left: solid 5px var(--success_color); background: var(--mory_line); }
.alert-success { border-left-color: var(--success_color); }
.alert-error { border-left-color: var(--danger_color); }
.alert-warning { border-left-color: var(--warning_color); }

/* Phân trang của CMS */
.pagination { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin: 20px 0; }
.pagination a, .pagination span { display: inline-block; min-width: 36px; padding: 6px 10px; border: solid 1px #CCC; text-align: center; color: #000; background: #fff; }
.pagination .active, .pagination [aria-current] { background: var(--main_color); border-color: var(--main_color); color: #fff; }

/* Trang của module không có view theme (giỏ hàng, đặt hàng, tra cứu đơn) */
.mory-compat .page-head h1 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }   /* tiêu đề đã hiện ở breadcrumb; giữ h1 cho công cụ tìm kiếm, trình đọc màn hình */
.mory-compat .muted { color: var(--mory_muted); }
.mory-compat .table-wrap { overflow-x: auto; }
.mory-compat table { width: 100%; border-collapse: collapse; margin-bottom: 15px; }
.mory-compat th, .mory-compat td { padding: 10px 8px; border-bottom: solid 1px var(--mory_line); vertical-align: middle; }
.mory-compat th { font-family: var(--title_font); }
.mory-compat input[type="text"], .mory-compat input[type="tel"], .mory-compat input[type="email"], .mory-compat input[type="number"],
.mory-compat input[type="search"], .mory-compat select, .mory-compat textarea {
    display: block; width: 100%; padding: 6px 10px; border: solid 1px #ced4da; border-radius:2px; background: #fff;
}
.mory-compat input[type="number"] { max-width: 90px; }
.mory-compat label { display: block; margin-bottom: 10px; font-weight: 600; }
.mory-compat form .form, .mory-compat .form { max-width: 720px; }
.mory-compat .btn { display: inline-block; padding: 7px 16px; border: solid 1px #CCC; border-radius:4px; background: #fff; color: #000; cursor: pointer; }
.mory-compat .btn-primary { background: var(--red_color); border-color: var(--red_color); color: #fff; }
.mory-compat .btn-primary:hover { background: #8f1a1a; color: #fff; }
.mory-compat .link-btn { border: 0; background: none; color: var(--red_color); cursor: pointer; }
.mory-compat .cart-actions, .mory-compat .form-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; margin-top: 10px; }
.mory-compat .empty-state { text-align: center; padding: 40px 0; }
.mory-compat .hint { display: block; font-weight: 400; font-size: var(--font_sm); color: var(--mory_muted); }

/* Trang sản phẩm: form đặt hàng gọn trong khu vực nút cũ */
.product_detail form.product_buy { margin: 0; }
.product_detail .quantity input[name="qty"] { width: 80px; }

/* Danh sách yêu thích */
#wish_list .table img { width: 60px; height: 60px; object-fit: cover; }
#wish_list .modal-body.empty .table { display: none; }
#wish_list .modal-body.empty:after { content: "Chưa có sản phẩm yêu thích."; display: block; padding: 10px 0; color: var(--mory_muted); }

/* Nội dung Markdown (bài viết, mô tả) */
.fm_content img { height: auto; display: block; margin-left: auto; margin-right: auto; transform: none; }   /* style.css gốc: margin-left:50% + translateX(-50%) → tràn ngang trên điện thoại */
.mory-crumb { border-bottom: solid 1px #CCC; }
.pd-more-cat { display: inline-block; border: solid 1px; padding: 5px 12px; border-radius: 3px; }
.pd-rating.is-empty { color: var(--mory_soft); font-size: var(--font_sm); text-decoration: none; }
.mory-err-title { font-family: var(--text_font); font-size: var(--font_md); font-weight: 400; text-transform: none!important; margin: 0; }
.fm_content table { width: 100%; border-collapse: collapse; }
.fm_content th, .fm_content td { border: solid 1px #CCC; padding: 6px; }

/* Khung Zalo (khối <style> cuối FOOTER.php của giao diện cũ) */
#zalo_modal *{
     font-family: Inter, Roboto, sans-serif !important;
}
#zalo_modal img.avatar{
    width: 100px;
    height: 100px;
    object-fit: cover;
    border-radius: 50%;
}
#zalo_modal .left h5{
    font-size: 24px !important;
    color: #33485c;
}
#zalo_modal .left h5 span{
    background-color: #e0f4fe;
    border-radius: 4px;
    color: #1092bd;
    font-family: Inter, Roboto, sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: -.2px;
    line-height: 1.5;
    margin-left: 8px;
    padding: 0 8px;
    white-space: nowrap;
}
#zalo_modal .left a.zalo_mess{
    border-radius: 8px;
    background: #1092bd;
    height: 48px;
    width: 100%;
    max-width: 240px;
    display: inline-flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    color: #FFF;
    padding-left: 5px;
}
#zalo_modal .left svg path{
    fill: #667685;
}
#zalo_modal .left a svg path{
    fill: #FFF !important;
}
#zalo_modal .right .qr{
    width: 200px;
    height: 200px;
}

/* Chọn phiên bản ở trang sản phẩm (mory_product_options): nút ảnh nhỏ + tên phiên bản. */
.product_detail .variant_box{display:block}
.product_detail .variant_box .variant_name{font-weight:600;color:var(--main_color)}
.product_detail .inf .product_option{flex-wrap:wrap;gap:8px}
.product_detail .inf .product_option label.opt{display:flex;align-items:center;gap:8px;width:auto;height:auto;min-height:40px;margin:0;padding:4px 12px 4px 4px;border:1px solid #CCC;border-radius:4px;background:#fff;font-size:var(--font_sm);line-height:1.2;cursor:pointer;transition:border-color .2s}
.product_detail .inf .product_option label.opt:not(:has(img)){padding-left:12px}
.product_detail .inf .product_option label.opt img{width:32px;height:32px;object-fit:cover;border-radius:3px;flex:none}
.product_detail .inf .product_option label.opt:hover{border-color:var(--main_color)}
.product_detail .inf .product_option input:checked + label.opt{border-color:var(--main_color);box-shadow:0 0 0 1px var(--main_color);font-weight:600;padding:4px 12px 4px 4px;transform:none}
.product_detail .inf .product_option input:checked + label.opt:not(:has(img)){padding-left:12px}
.product_detail .inf .product_option input:disabled + label.opt{opacity:.5;cursor:not-allowed}
.product_detail .inf .product_option label.opt small{font-weight:400;color:var(--mory_soft)}
/* Thẻ sản phẩm ở danh mục: phiên bản không có icon hiện ô chữ tên phiên bản. */
.product_option span.label.text{width:auto;max-width:90px;height:18px;padding:0 5px;background:var(--mory_line);font-size:calc(var(--font_sm) - 2px);line-height:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.product_option span.label.text:after,.product_option span.label.text:before{display:none}

/* Nhận xét ở trang sản phẩm (#reviews): tóm tắt điểm, form viết nhận xét (ẩn tới khi bấm nút), danh sách. */
.product_detail .rv{--rv-line:var(--mory_line);--rv-star:var(--main_color)}
.product_detail .rv-summary{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;border:1px solid var(--rv-line);border-radius:4px;padding:16px 20px}
.product_detail .rv-score{text-align:center;min-width:120px}
.product_detail .rv-score b{font-size:calc(var(--font_xl) * 2);line-height:1;color:var(--red_color)}
.product_detail .rv-score span{font-size:var(--font_md);color:var(--mory_soft)}
.product_detail .rv-score .rating{justify-content:center;margin:6px 0 2px}
.product_detail .rv-score small{display:block;color:var(--mory_muted)}
.product_detail .rv-bars{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-width:340px;width:100%}
.product_detail .rv-bars li{display:grid;grid-template-columns:34px 1fr 24px;gap:8px;align-items:center;font-size:calc(var(--font_sm) - 1px);color:var(--mory_muted)}
.product_detail .rv-bars i{height:6px;border-radius:3px;background:var(--mory_line);overflow:hidden}
.product_detail .rv-bars b{display:block;height:100%;background:var(--rv-star);border-radius:3px}
.product_detail .rv-bars li span:last-child{text-align:right}
.product_detail .rv-cta{text-align:center}
.product_detail .rv-cta p{margin:0 0 8px;color:var(--mory_muted);font-size:var(--font_sm)}
.product_detail .rv-btn{background:var(--main_color);border-color:var(--main_color);color:var(--text_color);font-weight:600;padding:7px 18px}
.product_detail .rv-btn:hover,.product_detail .rv-btn:focus{background:var(--main_color);color:var(--text_color);filter:brightness(.95)}
.product_detail .rv-btn[aria-expanded="true"]{background:#fff;color:var(--text_color);border-color:#CCC}

.product_detail .rv-form{margin-top:12px;border:1px solid var(--rv-line);border-radius:4px;padding:16px 20px;display:grid;gap:10px;background:var(--gray_color)}
.product_detail .rv-form[hidden]{display:none}
.product_detail .rv-form-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.product_detail .rv-label{font-weight:600;font-size:var(--font_sm)}
.product_detail .rv-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.product_detail .rv-form .form-control{font-size:var(--font_sm)}
.product_detail .rv-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.product_detail .rv-hint{color:var(--mory_soft);font-size:calc(var(--font_sm) - 2px);flex:1;min-width:200px}
.product_detail .review_trap{position:fixed;top:0;left:-9999px;width:1px;height:1px;opacity:0}
.product_detail .star_pick{position:relative;display:inline-flex;flex-direction:row-reverse;gap:2px}
.product_detail .star_pick input{position:absolute;opacity:0;pointer-events:none}
.product_detail .star_pick label{font-size:calc(var(--font_xl) + 6px);line-height:1;color:#CCC;cursor:pointer;transition:color .15s}
.product_detail .star_pick label:hover,.product_detail .star_pick label:hover ~ label,
.product_detail .star_pick input:checked ~ label{color:var(--rv-star)}
.product_detail .star_pick input:focus-visible + label{outline:2px solid var(--main_color);outline-offset:2px;border-radius:2px}
.product_detail .review_msg{margin:0;font-size:var(--font_sm)}
.product_detail .review_msg:empty{display:none}
.product_detail .review_msg.is-error{color:var(--red_color)}
.product_detail .review_msg.is-ok{color:var(--success_color);font-weight:600}

.product_detail .rv-list{list-style:none;margin:12px 0 0;padding:0}
.product_detail .rv-item{display:flex;gap:12px;padding:14px 0;border-top:1px solid var(--rv-line)}
.product_detail .rv-item:first-child{border-top:0}
.product_detail .rv-avatar{flex:none;width:38px;height:38px;border-radius:50%;background:var(--mory_tint);color:var(--main_color);display:flex;align-items:center;justify-content:center;font-weight:700}
.product_detail .rv-body{flex:1;min-width:0}
.product_detail .rv-meta{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.product_detail .rv-meta time{font-size:calc(var(--font_sm) - 2px);color:var(--mory_soft)}
.product_detail .rv-line{display:flex;align-items:center;gap:8px;margin:3px 0 4px;flex-wrap:wrap}
.product_detail .rv-line > b{font-size:var(--font_sm)}
.product_detail .rv-body p{margin:0;font-size:var(--font_sm);line-height:1.55;color:var(--text_color);overflow-wrap:anywhere}
.product_detail .rv-reply{margin-top:8px;padding:8px 12px;background:var(--gray_color);border-left:3px solid var(--main_color);border-radius:0 3px 3px 0;font-size:calc(var(--font_sm) - 1px)}
.product_detail .rv-reply p{margin-top:2px;font-size:calc(var(--font_sm) - 1px)}
@media (max-width:767px){
    .product_detail .rv-summary{grid-template-columns:auto 1fr;gap:16px;padding:14px}
    .product_detail .rv-cta{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--rv-line);padding-top:12px}
    .product_detail .rv-cta p{margin:0}
    .product_detail .rv-grid{grid-template-columns:1fr}
    .product_detail .rv-form{padding:14px}
}

/* Khối thông tin & mua hàng ở trang sản phẩm (.inf): gọn, chia nhóm rõ (pd-*). */
.product_detail .inf .pd-title{font-size:calc(var(--font_xl) + 6px);line-height:1.3;margin:0 0 8px}
.product_detail .pd-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;font-size:var(--font_sm);color:var(--mory_muted)}
.product_detail .pd-meta > * + *{padding-left:14px;border-left:1px solid #CCC}
.product_detail .pd-rating{display:inline-flex;align-items:center;gap:6px;color:var(--text_color)!important;text-decoration:none}
.product_detail .pd-rating .rating .stars:last-child{margin-right:0}
.product_detail .pd-rating span{font-weight:600}
.product_detail .pd-rating small{color:var(--mory_soft);text-transform:none;font-size:inherit}
.product_detail .pd-stock{color:var(--success_color);font-weight:600}
.product_detail .pd-stock.is-out{color:var(--red_color)}
.product_detail .pd-specs{display:flex;flex-wrap:wrap;gap:4px 24px;margin:10px 0 0;font-size:var(--font_sm)}
.product_detail .pd-specs div{display:flex;gap:6px}
.product_detail .pd-specs dt{font-weight:400;color:var(--mory_muted)}
.product_detail .pd-specs dd{margin:0;font-weight:600}
.product_detail .pd-price{margin:14px 0 4px;padding:12px 16px;background:var(--mory_tint);border-radius:4px}
.product_detail .inf .pd-price .price{display:inline-block;font-size:calc(var(--font_xl) + 10px);line-height:1.2;color:var(--red_color);padding-right:16px;position:relative}
.product_detail .inf .pd-price .price:after{top:0}
.product_detail .pd-price small{display:block;margin-top:2px;font-size:calc(var(--font_sm) - 1px);font-style:italic;color:var(--mory_muted)}
.product_detail .pd-field{margin-top:14px}
.product_detail .pd-label{display:block;margin-bottom:8px;font-size:var(--font_sm);font-weight:600}
.product_detail .pd-label .variant_name{font-weight:600;color:var(--mory_dark)}
.product_detail .pd-buy{display:flex;align-items:stretch;flex-wrap:wrap;gap:10px;margin-top:16px}
.product_detail .pd-qty{display:inline-flex;align-items:stretch;border:1px solid #CCC;border-radius:3px;overflow:hidden;height:44px}
.product_detail .pd-qty button{width:36px;border:0;background:var(--gray_color);font-size:var(--font_lg);line-height:1;cursor:pointer}
.product_detail .pd-qty button:hover{background:var(--mory_line)}
.product_detail .inf .pd-qty input{width:52px;max-width:none;border:0;text-align:center;font-family:inherit;font-size:var(--font_md);font-weight:600;-moz-appearance:textfield}
.product_detail .pd-qty input::-webkit-outer-spin-button,.product_detail .pd-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.product_detail .pd-buy .act{display:flex;flex:1;gap:10px;flex-wrap:nowrap;min-width:0}
.product_detail .pd-buy .act button{height:44px;margin:0;padding:0 16px;justify-content:center;border-radius:3px;font-family:var(--text_font);font-size:var(--font_md);font-weight:600}
.product_detail .pd-buy .act .add_cart{flex:1;background:#fff;border:1px solid var(--main_color);color:var(--text_color)}
.product_detail .pd-buy .act .add_cart:hover{background:var(--mory_tint)}
.product_detail .pd-buy .act .add_cart svg{width:18px;height:18px;margin-right:8px}
.product_detail .pd-buy .act .order_now{flex:1;border:1px solid var(--main_color);color:var(--text_color)}
.product_detail .pd-buy .act .wish_list{flex:none;width:44px;padding:0;background:#fff;border:1px solid #CCC}
.product_detail .pd-buy .act .wish_list svg{margin:0;width:18px;height:18px}
.product_detail .pd-buy .act .wish_list:hover{border-color:var(--main_color);background:var(--mory_tint)}
.product_detail .pd-summary{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--mory_line);font-size:var(--font_md);line-height:1.6;color:var(--mory_muted)}
.product_detail .pd-foot{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.product_detail .pd-foot .hashtag{display:flex;flex-wrap:wrap;gap:6px}
.product_detail .pd-share{display:flex;align-items:center;gap:10px;font-size:calc(var(--font_sm) - 1px);color:var(--mory_muted)}
@media (max-width:575px){
    .product_detail .inf .pd-title{font-size:calc(var(--font_xl) + 4px)}
    .product_detail .pd-meta > * + *{padding-left:0;border-left:0}
    .product_detail .pd-buy .act{flex-basis:100%}
    .product_detail .pd-buy .act button{padding:0 10px;font-size:var(--font_sm)}
}

/* Chính sách bán hàng ở cột phải trang sản phẩm (sp-*): thẻ đổi hàng, lưới 2 cột cam kết, dải liên hệ. */
.product_detail .sp-box{display:grid;gap:12px}
.product_detail .sp-head{margin:0;font-size:var(--font_lg)}
.product_detail .sp-hero{display:flex;align-items:center;gap:12px;padding:12px;border-radius:4px;background:var(--mory_tint)}
.product_detail .sp-days{flex:none;width:58px;height:58px;border-radius:4px;background:var(--main_color);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;color:var(--text_color)}
.product_detail .sp-days b{font-size:calc(var(--font_xl) + 6px)}
.product_detail .sp-days span{font-size:calc(var(--font_sm) - 2px);margin-top:2px}
.product_detail .sp-hero strong{display:block;font-size:var(--font_md);color:var(--mory_dark)}
.product_detail .sp-hero div > span{display:block;font-size:calc(var(--font_sm) - 1px);color:var(--mory_dark)}
.product_detail .sp-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.product_detail .sp-grid li{display:flex;flex-direction:column;gap:2px;padding:10px;border:1px solid var(--mory_line);border-radius:4px;background:#fff}
.product_detail .sp-grid svg{color:var(--mory_dark);margin-bottom:4px;fill:none!important}
.product_detail .sp-grid svg *{fill:none!important;stroke:currentColor}
.product_detail .sp-grid b{font-size:var(--font_sm);line-height:1.3}
.product_detail .sp-grid span{font-size:calc(var(--font_sm) - 2px);line-height:1.4;color:var(--mory_muted)}
.product_detail .sp-contact{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid var(--mory_line)}
.product_detail .sp-contact > div:first-child span{display:block;font-size:calc(var(--font_sm) - 2px);color:var(--mory_muted)}
.product_detail .sp-contact > div:first-child a{font-weight:700;font-size:var(--font_md);color:var(--text_color)}
.product_detail .sp-actions{display:flex;gap:6px}
.product_detail .sp-actions a{padding:7px 12px;border-radius:3px;font-size:calc(var(--font_sm) - 1px);font-weight:600;white-space:nowrap}
.product_detail .sp-zalo{background:#0068ff;color:#fff!important}
.product_detail .sp-call{background:var(--main_color);color:var(--text_color)!important}

/* Ảnh sản phẩm phóng to (.media_frame.full): nền tối, ảnh vừa màn hình không cắt, nút đóng / chuyển ảnh luôn hiện, số thứ tự. */
.media_frame .owl_expand .zoom-close{display:none}
.media_frame .zoom-count{display:none}
.media_frame.full{background:rgba(12,12,12,.97);backdrop-filter:none;-webkit-backdrop-filter:none}
.media_frame.full .media_box{position:relative;top:0;transform:none;width:100%;height:100%;max-height:none;background:transparent}
.media_frame.full .owl-carousel,.media_frame.full .owl-stage-outer,.media_frame.full .owl-stage,.media_frame.full .owl-item{height:100%}
.media_frame.full .media_box .owl-item .item{height:100%;display:flex;align-items:center;justify-content:center;padding:64px 72px}
.media_frame.full .media_box .owl-item .item img{display:block;width:auto!important;height:auto!important;max-width:100%;max-height:100%;object-fit:contain;border-radius:4px}
.media_frame.full .media_box .owl_next,.media_frame.full .media_box .owl_prev,.media_frame.full .media_box .owl_expand{width:44px;height:44px;opacity:1;visibility:visible;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);backdrop-filter:none;-webkit-backdrop-filter:none}
.media_frame.full .media_box .owl_next:hover,.media_frame.full .media_box .owl_prev:hover,.media_frame.full .media_box .owl_expand:hover{background:rgba(255,255,255,.25)}
.media_frame.full .media_box .owl_next{right:16px}
.media_frame.full .media_box .owl_prev{left:16px}
.media_frame.full .media_box .owl_expand{top:16px;right:16px}
.media_frame.full .owl_expand > svg:not(.zoom-close){display:none}
.media_frame.full .owl_expand .zoom-close{display:block;fill:none!important;stroke:#fff;stroke-width:2;stroke-linecap:round}
.media_frame.full .zoom-count{display:block;position:absolute;top:26px;left:20px;color:#fff;font-size:var(--font_sm);font-weight:600;letter-spacing:.5px}
.media_frame.full .owl-dots{bottom:20px}
.media_frame.full .owl-dots button{border-color:rgba(255,255,255,.6);background:rgba(255,255,255,.2)}
.media_frame.full .owl-dots button.active{background:#fff}
@media (max-width:767px){
    .media_frame.full .media_box .owl-item .item{padding:64px 8px 56px}
    .media_frame.full .media_box .owl_next{right:8px}
    .media_frame.full .media_box .owl_prev{left:8px}
}

/* Trang tìm kiếm (.sr): ô tìm lớn, số kết quả, nút lọc, lưới thẻ, "Xem thêm", gợi ý khi trống. */
.sr-head{display:grid;gap:12px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--mory_line)}
.sr-title{margin:0;font-size:calc(var(--font_xl) + 6px);line-height:1.25}
.sr-form{display:flex;align-items:center;max-width:680px;height:50px;border:2px solid var(--main_color);border-radius:4px;background:#fff;overflow:hidden}
.sr-form svg{flex:none;margin:0 4px 0 14px;fill:none!important;stroke:var(--mory_soft);stroke-width:2;stroke-linecap:round}
.sr-form input{flex:1;min-width:0;height:100%;border:0;outline:0;padding:0 10px;font-size:var(--font_md);background:transparent}
.sr-form input::-webkit-search-cancel-button{cursor:pointer}
.sr-form button{flex:none;height:100%;padding:0 26px;border:0;background:var(--main_color);color:var(--text_color);font-weight:700;font-size:var(--font_md);cursor:pointer}
.sr-form button:hover{filter:brightness(.95)}
.sr-sum{margin:0;font-size:var(--font_md);color:var(--mory_muted)}
.sr-sum b{color:var(--text_color)}
.sr-sum mark{background:var(--mory_tint);color:var(--text_color);padding:0 4px;border-radius:3px;font-weight:600}
.sr-tabs{display:flex;flex-wrap:wrap;gap:8px}
.sr-tabs button{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid #CCC;border-radius:3px;background:#fff;font-size:var(--font_sm);cursor:pointer}
.sr-tabs button span{font-size:calc(var(--font_sm) - 2px);color:var(--mory_soft)}
.sr-tabs button.is-on{background:var(--text_color);border-color:var(--text_color);color:#fff}
.sr-tabs button.is-on span{color:#CCC}
.sr-group[hidden]{display:none}
.sr-group + .sr-group{margin-top:12px}
.sr-sub{font-size:var(--font_xl);margin:0 0 12px}
.sr-grid > .item[hidden]{display:none}
.sr-more{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:8px}
.sr-more small{color:var(--mory_soft);font-size:calc(var(--font_sm) - 1px)}
.sr-more-btn{padding:10px 28px;border:1px solid var(--main_color);border-radius:4px;background:#fff;font-weight:600;cursor:pointer}
.sr-more-btn:hover{background:var(--mory_tint)}
.sr-empty{padding:12px 0 20px;font-size:var(--font_md);color:var(--mory_muted)}
.sr-empty-label{margin:16px 0 8px;font-weight:600;color:var(--text_color)}
.sr-chips{display:flex;flex-wrap:wrap;gap:8px}
.sr-chips a{padding:7px 14px;border:1px solid var(--main_color);border-radius:3px;background:var(--mory_tint);color:var(--text_color);font-size:var(--font_sm);text-decoration:none}
.sr-chips a:hover{background:var(--main_color);border-color:var(--main_color)}
@media (max-width:575px){
    .sr-title{font-size:calc(var(--font_xl) + 4px)}
    .sr-form{height:46px}
    .sr-form button{padding:0 16px}
}

/* Ô tìm kiếm đầu trang (.hs-*): cao 44px, bo tròn, nền xám nhạt; khi gõ: nền trắng, viền vàng, quầng nhạt. */
.search_box.hs-box{align-items:center}
.search_box .hs-form{display:flex;align-items:center;width:100%;height:44px;padding:4px;outline:0;border:1.5px solid #CCC;border-radius:3px;background:var(--gray_color);transition:border-color .15s,background .15s,box-shadow .15s}
.search_box .hs-form:hover{border-color:#CCC}
.search_box .hs-form:focus-within{background:#fff;border-color:var(--main_color);box-shadow:0 0 0 4px rgba(242,173,9,.15)}
.search_box .hs-icon{flex:none;margin:0 2px 0 10px;fill:none!important;stroke:var(--mory_soft);stroke-width:2;stroke-linecap:round}
.search_box .hs-form:focus-within .hs-icon{stroke:var(--mory_dark)}
.search_box .hs-form input{flex:1;width:auto;min-width:0;height:100%;padding:0 8px;border:0;outline:0;background:transparent;font-size:var(--font_md);color:var(--text_color)}
.search_box .hs-form input::placeholder{color:var(--mory_soft)}
.search_box .hs-form input::-webkit-search-cancel-button{cursor:pointer}
.search_box .hs-form button{flex:none;width:auto;height:100%;padding:0 18px;border:0;outline:0;border-radius:3px;background:var(--main_color);color:var(--text_color);font-weight:700;font-size:var(--font_sm);cursor:pointer;transition:filter .15s}
.search_box .hs-form button:hover{filter:brightness(.94)}

/* Nút "Xem thêm" / "Thu gọn" của nội dung dài (.sm_content): nút viên thuốc trắng viền vàng + mũi tên, lớp mờ trắng dày hơn. */
.sm_content:after{height:160px;max-height:none;bottom:0;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.92) 60%,#fff);border-bottom:0;pointer-events:none}
.sm_content .show_more{bottom:18px;display:inline-flex;align-items:center;gap:8px;padding:10px 22px;border:1.5px solid var(--main_color);border-radius:3px;background:#fff;color:var(--text_color);font-family:var(--text_font);font-size:var(--font_md);font-weight:600;text-transform:none;box-shadow:0 4px 14px rgba(0,0,0,.08);transition:background .15s,box-shadow .15s}
.sm_content .show_more:after{content:none}
.sm_content .show_more:hover{background:var(--main_color);box-shadow:0 6px 18px rgba(242,173,9,.3)}
.sm_content .show_more svg{fill:none!important;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.sm_content.show{padding-bottom:84px!important}
.sm_content.show .show_more{display:inline-flex}
.sm_content.show .show_more svg{transform:rotate(180deg)}

/* Chân trang (ft-*): 4 cột Thương hiệu | Liên hệ | Thanh toán | Bài viết mới; dải đáy menu + pháp lý chữ nhỏ. */
.ft-main{display:grid;grid-template-columns:1.15fr 1.3fr 1fr 1.25fr;gap:28px;padding-top:36px;padding-bottom:28px}
.ft-brand p{margin:10px 0 14px;font-size:var(--font_sm);line-height:1.6;color:var(--mory_muted)}
.ft-social{display:flex;flex-wrap:wrap}
.ft-head{font-size:var(--font_md);font-weight:700;margin:4px 0 14px;padding-left:10px;border-left:3px solid var(--main_color);line-height:1.2}
.ft-contact{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:var(--font_sm)}
.ft-contact li{display:flex;align-items:flex-start;gap:10px;line-height:1.45}
.ft-contact svg{flex:none;margin-top:1px;fill:none!important;stroke:var(--mory_dark);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ft-contact svg *{fill:none!important}
.ft-contact address{margin:0}
.ft-contact a{color:var(--text_color);text-transform:none!important}
.ft-contact .ft-phone a{font-size:var(--font_xl);font-weight:700;color:var(--red_color);line-height:1.1}
.ft-bank{display:flex;gap:12px;align-items:center;padding:10px;border:1px solid #CCC;border-radius:4px;background:#fff}
.ft-bank img{flex:none;width:84px;height:84px;object-fit:contain}
.ft-bank div{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:calc(var(--font_sm) - 1px);color:var(--mory_muted)}
.ft-bank b{font-size:var(--font_lg);color:var(--text_color);letter-spacing:.3px;overflow-wrap:anywhere}
.ft-bank button{align-self:flex-start;margin-top:4px;padding:3px 10px;border:1px solid var(--main_color);border-radius:3px;background:#fff;font-size:calc(var(--font_sm) - 2px);font-weight:600;cursor:pointer}
.ft-bank button:hover,.ft-bank button.is-done{background:var(--main_color)}
.ft-posts{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ft-posts li{display:flex;gap:10px;align-items:center}
.ft-posts time{flex:none;width:44px;padding:4px 0;border-radius:4px;background:var(--mory_tint);color:var(--mory_dark);font-size:calc(var(--font_sm) - 2px);line-height:1.15;text-align:center}
.ft-posts time b{display:block;font-size:var(--font_lg)}
.ft-posts a{font-size:var(--font_sm);font-weight:600;line-height:1.35;color:var(--text_color);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ft-posts a:hover,.ft-contact a:hover{color:var(--red_color)}
.ft-bottom{padding-top:16px;padding-bottom:20px;border-top:1px solid #CCC}
.ft-links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 22px;font-size:var(--font_sm);font-weight:600}
.ft-links a{color:var(--text_color)}
.ft-links a:hover{color:var(--red_color)}
.ft-legal{margin:10px 0 0;font-size:calc(var(--font_sm) - 2px);line-height:1.6;color:var(--mory_muted)}
@media (max-width:991px){.ft-main{grid-template-columns:1fr 1fr}}
@media (max-width:575px){
    .ft-main{grid-template-columns:1fr;gap:22px;padding-top:24px}
    .ft-brand{order:4}
}

/* Danh mục bài viết (pc-*): đầu trang, chip danh mục, bài nổi bật, lưới 3 cột, cột sản phẩm đề xuất. */
.pc-head{margin-bottom:16px}
.pc-title{margin:0 0 6px;font-size:calc(var(--font_xl) + 6px);line-height:1.25}
.pc-desc{margin:0 0 6px;max-width:760px;font-size:var(--font_md);line-height:1.6;color:var(--mory_muted)}
.pc-count{font-size:calc(var(--font_sm) - 1px);color:var(--mory_soft)}
.pc-chips{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:18px;margin-bottom:22px;border-bottom:1px solid var(--mory_line)}
.pc-chips a{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid #CCC;border-radius:3px;background:#fff;color:var(--text_color);font-size:var(--font_sm);text-decoration:none;text-transform:none!important}
.pc-chips a span{font-size:calc(var(--font_sm) - 2px);color:var(--mory_soft)}
.pc-chips a:hover{border-color:var(--main_color);background:var(--mory_tint)}
.pc-chips a.is-on,.pc-chips a.is-on:hover{background:var(--text_color);border-color:var(--text_color);color:#fff}
.pc-chips a.is-on span{color:var(--mory_soft)}
.pc-img{display:block;overflow:hidden;border-radius:4px;background:var(--gray_color)}
.pc-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.pc-featured:hover .pc-img img,.pc-card:hover .pc-img img{transform:scale(1.04)}
.pc-featured{display:grid;grid-template-columns:1.25fr 1fr;gap:24px;align-items:center;margin-bottom:28px}
.pc-featured .pc-img{aspect-ratio:16/10}
.pc-badge{display:inline-block;padding:2px 10px;border-radius:3px;background:var(--main_color);font-size:calc(var(--font_sm) - 2px);font-weight:700;color:var(--text_color)}
.pc-featured h2{margin:10px 0 8px;font-size:calc(var(--font_xl) + 4px);line-height:1.3}
.pc-featured h2 a,.pc-card h3 a{color:var(--text_color)}
.pc-featured h2 a:hover,.pc-card h3 a:hover{color:var(--red_color)}
.pc-featured p{margin:0 0 10px;font-size:var(--font_md);line-height:1.6;color:var(--mory_muted)}
.pc-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:calc(var(--font_sm) - 2px);color:var(--mory_soft)}
.pc-meta span:first-child:not(:only-child){color:var(--mory_dark);font-weight:600}
.pc-more{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:8px 18px;border:1.5px solid var(--main_color);border-radius:3px;font-size:var(--font_sm);font-weight:600;color:var(--text_color)!important;text-transform:none!important}
.pc-more svg{fill:none!important;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pc-more:hover{background:var(--main_color)}
.pc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 22px}
.pc-card .pc-img{aspect-ratio:16/10}
.pc-card-body{padding-top:10px}
.pc-card h3{margin:6px 0 6px;font-size:var(--font_md);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pc-card p{margin:0;font-size:var(--font_sm);line-height:1.55;color:var(--mory_muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pc-empty{padding:30px 0;color:var(--mory_muted)}
.pc-pages{margin-top:24px}
.pc-side{padding:16px;border:1px solid var(--mory_line);border-radius:4px;top:80px}
.pc-side-head{margin:0 0 12px;font-size:var(--font_md);font-weight:700;padding-left:10px;border-left:3px solid var(--main_color);line-height:1.2}
/* "Sản phẩm đề xuất" (mory_picks()): lưới 2 cột thẻ sản phẩm giống trang danh mục (.product_list). Ô hẹp: 2 nhãn phân loại + "+N", chữ 12px. */
.pk-list .product_option span.label.text:nth-of-type(n+3){display:none}
.pk-list .product_option span.label.text{font-size:12px;max-width:72px}
.pk-list .product_option span.label.more{display:inline-block;height:18px;padding:0 5px;border-radius:2px;background:var(--mory_line);font-size:12px;line-height:18px;color:var(--mory_muted)}
@media (max-width:991px){
    .pc-side{margin-top:28px}
}
@media (min-width:576px) and (max-width:991.98px){
    .pk-list{--bs-gutter-x:1rem}
    .pk-list > .col{flex:0 0 auto;width:25%}
}
@media (max-width:767px){
    .pc-featured{grid-template-columns:1fr;gap:12px}
    .pc-featured h2{font-size:var(--font_xl)}
    .pc-grid{grid-template-columns:1fr 1fr;gap:20px 14px}
}
@media (max-width:575px){
    .pc-title{font-size:calc(var(--font_xl) + 4px)}
    .pc-chips{position:relative;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}
    .pc-chips a{flex:none}
    .pc-card p{display:none}
}

/* Chi tiết bài viết (ps-*): đầu bài, cột đọc, chia sẻ, khung tư vấn, bài liên quan, mục lục. */
.ps{min-width:0}
.ps-head{max-width:760px}
.ps-cat{display:inline-block;padding:3px 12px;border-radius:3px;background:var(--mory_tint);color:var(--mory_dark)!important;font-size:calc(var(--font_sm) - 1px);font-weight:600;text-transform:none!important}
.ps-cat:hover{background:var(--main_color)}
.ps-title{margin:12px 0 12px;font-size:calc(var(--font_xl) + 10px);line-height:1.25}
.ps-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:var(--font_sm);color:var(--mory_muted)}
.ps-meta b{color:var(--text_color);font-weight:600}
.ps-avatar{width:32px;height:32px;border-radius:50%;background:var(--main_color);color:var(--text_color);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--font_sm);margin-right:-4px}
.ps-meta time:before,.ps-meta span:not(.ps-avatar):before{content:"·";margin-right:14px;color:#CCC}
.ps-meta .ps-avatar + time:before{content:none}
.ps-lead{margin:18px 0 0;padding:4px 0 4px 16px;border-left:3px solid var(--main_color);font-size:var(--font_lg);line-height:1.6;color:var(--mory_muted)}
.ps-cover{display:block;width:100%;max-height:480px;object-fit:cover;border-radius:4px;margin-top:22px}
.ps-content{max-width:760px;margin-top:24px;font-size:var(--font_lg);line-height:1.8;color:var(--text_color)}
.ps-content p{margin:0 0 1.1em}
.ps-content h2{font-size:calc(var(--font_xl) + 4px);line-height:1.3;margin:1.6em 0 .6em;scroll-margin-top:90px}
.ps-content h3{font-size:var(--font_xl);line-height:1.35;margin:1.4em 0 .5em;scroll-margin-top:90px}
.ps-content img{display:block;max-width:100%;height:auto!important;margin:1.2em auto;border-radius:4px;transform:none}
.ps-content ul,.ps-content ol{padding-left:1.4em;margin:0 0 1.1em}
.ps-content li{margin-bottom:.35em}
.ps-content a{color:var(--mory_dark);text-decoration:underline;text-underline-offset:3px;text-transform:none!important}
.ps-content blockquote{margin:1.2em 0;padding:10px 16px;border-left:3px solid var(--main_color);background:var(--mory_tint);border-radius:0 4px 4px 0}
.ps-foot{max-width:760px;margin-top:28px;padding-top:18px;border-top:1px solid var(--mory_line);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}
.ps-tags{display:flex;flex-wrap:wrap;gap:8px}
.ps-tags a{padding:4px 12px;border-radius:3px;background:var(--gray_color);color:var(--mory_muted);font-size:calc(var(--font_sm) - 1px);text-transform:none!important}
.ps-tags a:hover{background:var(--mory_tint)}
.ps-share{display:flex;align-items:center;gap:8px;font-size:calc(var(--font_sm) - 1px);color:var(--mory_muted)}
.ps-share a,.ps-share button{padding:5px 12px;border:1px solid #CCC;border-radius:3px;background:#fff;color:var(--text_color);font-size:calc(var(--font_sm) - 1px);font-weight:600;cursor:pointer;text-transform:none!important}
.ps-share a:hover,.ps-share button:hover{border-color:var(--main_color);background:var(--mory_tint)}
.ps-cta{max-width:760px;margin-top:24px;padding:18px 20px;border-radius:4px;background:var(--mory_tint);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.ps-cta strong{display:block;font-size:var(--font_lg);color:var(--mory_dark)}
.ps-cta span{font-size:var(--font_sm);color:var(--mory_dark)}
.ps-cta-act{display:flex;gap:8px;flex-wrap:wrap}
.ps-cta-act a{padding:9px 16px;border-radius:4px;font-size:var(--font_sm);font-weight:700;white-space:nowrap;text-transform:none!important}
.ps-cta .sp-zalo{background:#0068ff;color:#fff!important}
.ps-cta .sp-call{background:var(--main_color);color:var(--text_color)!important}
.ps-related{margin-top:36px}
/* Bài viết cùng chủ đề (pr-*): đầu khối vạch vàng + "Xem tất cả"; thẻ viền, cả thẻ bấm được (link tiêu đề phủ thẻ). */
.pr-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}
.pr-head h2{margin:0;padding-left:12px;border-left:4px solid var(--main_color);font-size:var(--font_xl);line-height:1.2}
.pr-head a{display:inline-flex;align-items:center;gap:4px;font-size:var(--font_sm);font-weight:600;color:var(--text_color);white-space:nowrap;text-transform:none!important}
.pr-head svg,.pr-more svg{fill:none!important;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pr-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--mory_line);border-radius:6px;overflow:hidden;background:#fff;transition:border-color .2s,box-shadow .2s,transform .2s}
.pr-card:hover{border-color:var(--main_color);box-shadow:0 8px 20px rgba(0,0,0,.08);transform:translateY(-2px)}
.pr-img{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--gray_color)}
.pr-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.pr-card:hover .pr-img img{transform:scale(1.05)}
.pr-body{display:flex;flex-direction:column;flex:1;padding:12px 14px 14px}
.pr-meta{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:calc(var(--font_sm) - 2px);color:var(--mory_muted)}
.pr-meta span:before{content:"·";margin-right:10px}
.pr-card h3{margin:6px 0;font-size:var(--font_md);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-transform:none!important}
.pr-card h3 a{color:var(--text_color);text-transform:none!important}
.pr-card h3 a:after{content:"";position:absolute;inset:0}
.pr-card:hover h3 a{color:var(--red_color)}
.pr-card p{margin:0 0 10px;font-size:var(--font_sm);line-height:1.5;color:var(--mory_muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pr-more{margin-top:auto;display:inline-flex;align-items:center;gap:4px;font-size:var(--font_sm);font-weight:600;color:var(--red_color)}
.pr-card:hover .pr-more svg{transform:translateX(3px)}
.pr-more svg{transition:transform .2s}
@media (max-width:767.98px){
    .pr-grid{grid-template-columns:1fr;gap:12px}
    .pr-card{flex-direction:row}
    .pr-card:hover{transform:none}
    .pr-img{flex:none;width:120px;aspect-ratio:auto}
    .pr-body{padding:10px 12px}
    .pr-card h3{margin:4px 0 0;font-size:var(--font_sm)}
    .pr-card p,.pr-more{display:none}
}
.ps-side{display:grid;gap:18px;top:80px}
.ps-toc{padding:16px;border:1px solid var(--mory_line);border-radius:4px}
.ps-toc[hidden]{display:none}
.ps-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px;max-height:50vh;overflow:auto}
.ps-toc a{display:block;padding:5px 10px;border-left:2px solid transparent;font-size:var(--font_sm);line-height:1.4;color:var(--mory_muted);text-transform:none!important}
.ps-toc li.is-sub a{padding-left:22px;font-size:calc(var(--font_sm) - 1px)}
.ps-toc a:hover{color:var(--text_color)}
.ps-toc a.is-on{border-left-color:var(--main_color);color:var(--text_color);font-weight:600;background:var(--mory_tint)}
@media (max-width:991px){.ps-side{margin-top:32px}}
@media (max-width:575px){
    .ps-title{font-size:calc(var(--font_xl) + 6px)}
    .ps-lead{font-size:var(--font_md)}
    .ps-content{font-size:var(--font_md)}
    .ps-cta-act{width:100%}
    .ps-cta-act a{flex:1;text-align:center}
}
.ps-toc.is-inline{max-width:760px;margin-top:22px;background:var(--mory_tint)}
.ps-title,.ps-content h1,.ps-content h2,.ps-content h3,.ps-content h4,.ps-content h5,.ps-content h6,.ps-content strong,.ps-content b,.ps-toc a{text-transform:none!important} /* tiêu đề trong bài + mục lục: giữ chữ hoa/thường như khi soạn */

/* Giỏ hàng, đặt hàng, hoàn tất, tra cứu đơn (ct-*, co-*) — views/modules/orders/*.php của theme */
.ct { padding: 6px 0 20px; }
.ct-steps { display: flex; gap: 8px; list-style: none; padding: 0; margin: 4px 0 18px; }
.ct-step { flex: 1; display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-bottom: solid 3px var(--mory_line); color: var(--mory_soft); font-size: var(--font_sm); }
.ct-step b { flex: none; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--gray_color); color: var(--mory_muted); font-size: calc(var(--font_sm) - 1px); }
.ct-step.is-on { border-color: var(--main_color); color: var(--text_color); font-weight: 600; }
.ct-step.is-on b { background: var(--main_color); color: #fff; }
.ct-step.is-done { border-color: var(--main_color); color: var(--mory_muted); }
.ct-step.is-done b { background: var(--mory_tint); color: var(--mory_dark); }
.ct-title { font-size: calc(var(--font_xl) + 4px); margin: 0 0 14px; text-transform: none !important; }
.ct-title span { font-family: var(--text_font); font-size: var(--font_sm); font-weight: 400; color: var(--mory_muted); margin-left: 6px; }
.ct-muted { color: var(--mory_muted); }
.ct-default { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.ct-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 18px; border: solid 1px #CCC; border-radius: 3px; background: #fff; color: var(--text_color); font-weight: 600; text-decoration: none; text-transform: none !important; cursor: pointer; }
.ct-btn:hover { border-color: var(--main_color); color: var(--text_color); }
.ct-btn-main { background: var(--main_color); border-color: var(--main_color); color: #fff; }
.ct-btn-main:hover { background: var(--mory_dark); border-color: var(--mory_dark); color: #fff; }
.ct-btn-block { display: flex; width: 100%; margin: 14px 0 10px; font-size: var(--font_md); }

.ct-list { list-style: none; padding: 0; margin: 0; border-top: solid 1px var(--mory_line); }
.ct-item { display: grid; grid-template-columns: 84px 1fr auto 120px 40px; gap: 14px; align-items: center; padding: 14px 0; border-bottom: solid 1px var(--mory_line); }
.ct-img img { width: 84px; height: 84px; object-fit: cover; border: solid 1px var(--mory_line); border-radius: 3px; display: block; }
.ct-info { min-width: 0; }
.ct-name { display: block; font-family: var(--title_font); font-weight: 600; color: var(--text_color); line-height: 1.35; }
.ct-name:hover { color: var(--red_color); }
.ct-meta { display: flex; flex-wrap: wrap; gap: 4px 10px; margin: 4px 0; font-size: calc(var(--font_sm) - 1px); color: var(--mory_soft); }
.ct-variant { padding: 1px 8px; background: var(--mory_tint); color: var(--mory_dark); border-radius: 3px; }
.ct-unit { font-size: var(--font_sm); color: var(--mory_muted); }
.ct-qty { display: inline-flex; border: solid 1px #CCC; border-radius: 3px; overflow: hidden; }
.ct-qty button { width: 36px; height: 40px; border: 0; background: var(--gray_color); font-size: var(--font_lg); line-height: 1; cursor: pointer; }
.ct-qty button:hover { background: var(--mory_tint); }
.ct .ct-qty input[type="number"] { display: block; width: 46px; max-width: none; height: 40px; border: 0; border-left: solid 1px #CCC; border-right: solid 1px #CCC; border-radius: 0; padding: 0; text-align: center; -moz-appearance: textfield; }
.ct-qty input::-webkit-outer-spin-button, .ct-qty input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.ct-sub { text-align: right; color: var(--red_color); font-size: var(--font_md); }
.ct-remove { display: grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 3px; background: none; color: var(--mory_soft); cursor: pointer; }
.ct-remove svg, .ct-remove svg path, .ct-empty svg path, .ct-done svg path { fill: none; }
.ct-remove:hover { background: var(--gray_color); color: var(--red_color); }
.ct-list-foot { display: flex; flex-wrap: wrap; gap: 10px; justify-content: space-between; align-items: center; margin-top: 14px; }
.ct-list-foot a { color: var(--text_color); text-transform: none !important; }

.ct-sum { padding: 18px; border: solid 1px var(--mory_line); border-top: solid 3px var(--main_color); border-radius: 3px; background: #fff; }
.ct-sum h2, .co-box h2 { font-size: var(--font_lg); margin: 0 0 12px; text-transform: none !important; }
.ct-sum h2 small { font-family: var(--text_font); font-size: var(--font_sm); font-weight: 400; color: var(--mory_muted); }
.ct-line { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; font-size: var(--font_sm); }
.ct-line.ct-total, .ct-order .ct-total { margin-top: 6px; padding-top: 12px; border-top: solid 1px var(--mory_line); border-bottom: 0; font-size: var(--font_md); }
.ct-total b { color: var(--red_color); font-size: var(--font_xl); }
.ct-notes { list-style: none; padding: 0; margin: 0; font-size: calc(var(--font_sm) - 1px); color: var(--mory_muted); }
.ct-notes li { position: relative; padding-left: 14px; margin-bottom: 4px; }
.ct-notes li:before { content: ""; position: absolute; left: 2px; top: .6em; width: 5px; height: 5px; background: var(--main_color); }
.ct-help { margin-top: 12px; padding: 10px 12px; background: var(--mory_tint); border-radius: 3px; font-size: var(--font_sm); }
.ct-help a { font-weight: 700; color: var(--red_color); }

.ct-empty { text-align: center; padding: 40px 0 30px; color: var(--mory_soft); }
.ct-empty svg, .ct-done svg { fill: none; }
.ct-empty p { margin: 10px 0 16px; color: var(--text_color); font-size: var(--font_md); }
.ct-empty-act { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }

.co-box { padding: 18px; border: solid 1px var(--mory_line); border-radius: 3px; margin-bottom: 14px; }
.co-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 14px; }
.co-wide { grid-column: 1 / -1; }
.ct .co-field { display: grid; gap: 6px; margin: 0; font-weight: 600; font-size: var(--font_sm); }
.co-field i { color: var(--red_color); font-style: normal; }
.co-field small { font-weight: 400; color: var(--mory_soft); }
.ct .co-field input, .ct .co-field textarea { min-height: 44px; padding: 9px 12px; border: solid 1px #CCC; border-radius: 3px; font-weight: 400; font-size: var(--font_md); }
.ct .co-field input:focus, .ct .co-field textarea:focus { outline: none; border-color: var(--main_color); box-shadow: 0 0 0 3px var(--mory_tint); }
.co-pay { display: flex; align-items: center; gap: 10px; margin: 0; padding: 12px; border: solid 1px var(--main_color); border-radius: 3px; background: var(--mory_tint); font-weight: 600; }
.co-dot { flex: none; width: 16px; height: 16px; border-radius: 50%; border: solid 5px var(--main_color); background: #fff; }
.co-items, .ct-order { list-style: none; padding: 0; margin: 0 0 6px; }
.co-items li, .ct-order li { display: flex; align-items: center; gap: 10px; padding: 8px 0; border-bottom: solid 1px var(--mory_line); font-size: var(--font_sm); }
.co-thumb { position: relative; flex: none; }
.co-thumb img { width: 52px; height: 52px; object-fit: cover; border: solid 1px var(--mory_line); border-radius: 3px; display: block; }
.co-thumb b { position: absolute; top: -7px; right: -7px; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 10px; background: var(--mory_muted); color: #fff; font-size: calc(var(--font_sm) - 3px); display: grid; place-items: center; }
.co-name { flex: 1; min-width: 0; }
.co-price { white-space: nowrap; font-weight: 600; }
.co-back { display: block; text-align: center; color: var(--mory_muted); text-transform: none !important; font-size: var(--font_sm); }
.co-track { display: grid; grid-template-columns: 1fr 1fr auto; gap: 12px; align-items: end; max-width: 760px; }
.ct-done { text-align: center; padding: 10px 0 18px; color: var(--success_color); }
.ct-done .ct-title { margin: 8px 0; }
.ct-done p { color: var(--text_color); margin: 4px 0; }
.ct-code { font-size: var(--font_xl); color: var(--red_color); }
.ct .ct-order { max-width: 760px; margin: 0 auto 14px; }
.ct-status { padding: 2px 10px; border-radius: 3px; background: var(--gray_color); font-weight: 600; }
.ct-status-completed { color: var(--success_color); }
.ct-status-cancelled { color: var(--red_color); }

@media (max-width: 991px) {
    .ct-sum { margin-top: 16px; }
}
@media (max-width: 600px) {
    .ct-step span { display: none; }
    .ct-step.is-on span { display: inline; }
    .ct-item { grid-template-columns: 72px 1fr auto; grid-template-areas: "img info del" "img qty sub"; gap: 8px 12px; }
    .ct-img { grid-area: img; align-self: start; }
    .ct-img img { width: 72px; height: 72px; }
    .ct-info { grid-area: info; }
    .ct-qty { grid-area: qty; justify-self: start; }
    .ct-sub { grid-area: sub; white-space: nowrap; align-self: center; }
    .ct-remove { grid-area: del; align-self: start; }
    .co-grid, .co-track { grid-template-columns: 1fr; }
}

/* Điện thoại: nới vùng chạm của link / nút nhỏ (tối thiểu ~24px, giữ nguyên hình dáng). */
@media (max-width: 767px) {
    .breadcrumb a, .product_list .title a, .pc-card h3 a, .ft-links a, .ft-contact a, .ft-brand a, .ft-posts a, .ps-side a, footer li a { padding-top: 4px; padding-bottom: 4px; }
    .ps-tags a { display: inline-block; padding-top: 5px; padding-bottom: 5px; }
    .ct-name, .ct-list-foot a, .ct-help a, .co-back, .sp-contact a { padding-top: 4px; padding-bottom: 4px; }
    .co-back { padding-top: 8px; padding-bottom: 8px; }
    .pd-meta .pd-rating { padding: 3px 0; }
    .product_list .item .frame .btn_video { width: 28px; height: 28px; }
    /* chấm chuyển ảnh: giữ chấm nhỏ, vùng bấm lớn hơn */
    .product_detail .owl-dots button { position: relative; }
    .product_detail .owl-dots button:before { content: ""; position: absolute; inset: -9px -6px; }
}

/* Tiêu đề h1 dùng kiểu khung .topic (trang video): giữ cỡ và lề như h2 .topic */
h1.topic { font-size: var(--font_xl) !important; margin-left: 0; }

/* ===== Nhận báo giá (module quotes): form ở trang /quotes và cửa sổ trên trang sản phẩm ===== */
.qt-form { display: grid; gap: 14px; }
.qt-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 14px; }
.qt-grid .qt-wide { grid-column: 1 / -1; }
.qt-form .co-field { display: grid; gap: 6px; margin: 0; font-weight: 600; font-size: var(--font_sm); }
.qt-form .co-field input, .qt-form .co-field textarea { width: 100%; min-height: 44px; padding: 9px 12px; border: solid 1px #CCC; border-radius: 3px; font-weight: 400; font-size: var(--font_md); color: var(--text_color); background: #fff; }
.qt-form .co-field input[type="file"] { padding: 8px; font-size: var(--font_sm); }
.qt-form .co-field input:focus, .qt-form .co-field textarea:focus { outline: none; border-color: var(--main_color); box-shadow: 0 0 0 3px var(--mory_tint); }
.qt-form .qt-err { color: var(--red_color); font-weight: 400; }
.qt-form .qt-err-box { margin: 0; padding: 10px 12px; border: solid 1px var(--red_color); border-radius: 3px; background: #fff5f5; }
.qt-product { display: flex; align-items: center; gap: 12px; margin: 0; padding: 10px; border: solid 1px var(--mory_line); border-radius: 3px; background: var(--mory_tint); }
.qt-product img { width: 56px; height: 45px; object-fit: contain; background: #fff; border-radius: 3px; }
.qt-product span { display: grid; font-size: var(--font_sm); color: var(--mory_muted); }
.qt-product b { font-size: var(--font_md); color: var(--text_color); }
.qt-submit { justify-self: start; min-width: 220px; }
.qt-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.qt-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 16px; align-items: start; }
.qt-side h2 { font-size: var(--font_lg); margin: 0 0 10px; text-transform: none !important; }
.qt-side ul { margin: 0 0 12px; padding-left: 18px; }
.qt-side li { margin-bottom: 6px; }
.qt-done { max-width: 640px; margin: 0 auto; }
.qt-sum { display: grid; gap: 6px; margin: 12px 0; }
.qt-sum div { display: flex; gap: 12px; }
.qt-sum dt { min-width: 110px; font-weight: 400; color: var(--mory_muted); }
.qt-sum dd { margin: 0; font-weight: 600; }
.qt-link { margin: 10px 0 0; font-size: var(--font_sm); color: var(--mory_muted); }
.qt-link button { padding: 4px 0; border: 0; background: none; color: var(--text_color); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.qt-link button:hover { color: var(--red_color); }
.product_detail .pd-buy .act .qt-open { background: var(--main_color); color: #fff; }
.product_detail .pd-buy .act .qt-open:hover { background: var(--mory_dark); border-color: var(--mory_dark); }
.qt-modal .modal-content { border-radius: 4px; }
.qt-modal .modal-title { font-size: var(--font_lg); margin: 0; text-transform: none !important; }
@media (max-width: 767px) {
    .qt-grid, .qt-layout { grid-template-columns: 1fr; }
    .qt-submit { justify-self: stretch; }
}

/* ===== Đơn vị giá là chữ thật (.price-unit, mory_price_tag), thay ::after content:attr(unit) của style.css; giữ nguyên vị trí, cỡ chữ. ===== */
.price:after, .product_detail .inf .price:after { content: none; }
.price > .price-unit { font-size: calc(var(--font_xl) - 10px); position: absolute; }
.product_detail .inf .price > .price-unit { font-size: 14px; top: 0; }
/* Trình phát video: thời gian chưa có thì hiện "--:--" bằng CSS, không để chữ giữ chỗ trong HTML (máy đọc / AI lấy nhầm). */
.time_current:empty::before, .time_duration:empty::before { content: "--:--"; }
/* Bảng thông số ở đầu "Thông tin sản phẩm" (tên – giá trị). */
.pd-spec-table { width: 100%; max-width: 760px; border-collapse: collapse; font-size: var(--font_md); }
.pd-spec-table th, .pd-spec-table td { padding: 9px 12px; border-bottom: solid 1px var(--mory_line); vertical-align: top; text-align: left; }
.pd-spec-table th { width: 34%; font-weight: 400; color: var(--mory_muted); background: var(--mory_tint); }
.pd-spec-table td { font-weight: 600; color: var(--text_color); }
@media (max-width: 575px) { .pd-spec-table th { width: 40%; } }

/* Câu hỏi thường gặp trên trang sản phẩm (hỏi đáp chung của danh mục) */
.pd-faq { max-width: 760px; }
.pd-faq-item { border-bottom: solid 1px var(--mory_line); }
.pd-faq-item summary { position: relative; padding: 12px 32px 12px 0; font-weight: 600; font-size: var(--font_md); color: var(--text_color); cursor: pointer; list-style: none; }
.pd-faq-item summary::-webkit-details-marker { display: none; }
.pd-faq-item summary::after { content: "+"; position: absolute; right: 6px; top: 50%; transform: translateY(-50%); font-size: 20px; font-weight: 400; color: var(--main_color); }
.pd-faq-item[open] summary::after { content: "−"; }
.pd-faq-item summary:hover { color: var(--red_color); }
.pd-faq-item p { margin: 0 0 14px; font-size: var(--font_md); line-height: 1.6; }

/* Tab Mô tả / Thông số / Hỏi đáp ở trang sản phẩm (tab Bootstrap, kiểu gạch chân màu chính) */
.pd-tabs { display: flex; flex-wrap: nowrap; gap: 4px; margin-bottom: 0; padding: 0; list-style: none; border-bottom: solid 1px var(--mory_line); overflow-x: auto; scrollbar-width: none; }
.pd-tabs::-webkit-scrollbar { display: none; }
.pd-tabs li { flex: none; }
.pd-tabs button { position: relative; display: flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 16px; border: 0; background: none; font-weight: 600; font-size: var(--font_md); color: var(--mory_muted); white-space: nowrap; cursor: pointer; }
.pd-tabs button:hover { color: var(--text_color); }
.pd-tabs button.active { color: var(--text_color); }
.pd-tabs button.active::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: var(--main_color); }
.pd-tabs button:focus-visible { outline: 2px solid var(--main_color); outline-offset: -2px; }
.pd-tab-count { min-width: 20px; padding: 0 6px; border-radius: 10px; background: var(--mory_tint); font-size: 12px; line-height: 20px; text-align: center; color: var(--text_color); }
.pd-tab-content { padding-top: 16px; }
.pd-tab-content > .tab-pane:focus { outline: none; }
@media (max-width: 575px) { .pd-tabs button { padding: 0 12px; } }

/* Thẻ sản phẩm: chỉ ảnh đang chọn chiếm chỗ. Trong khối trượt (owl-carousel) luật ".owl-item img{display:block}" của thư viện
   ghi đè luật ẩn của theme → ảnh cũ chỉ "visibility:hidden" vẫn chiếm chỗ, khung cao gấp đôi, lộ nền xám khi bấm qua lại. */
.product_list .item .frame a img:not(.active) { display: none !important; }

/* Lọc theo chất liệu ở trang danh mục sản phẩm */
.pd-filter { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin: 0 0 16px; }
.pd-filter-label { margin-right: 4px; font-size: var(--font_sm); color: var(--mory_muted); }
.pd-filter a { text-transform: none !important; display: inline-flex; align-items: center; gap: 5px; min-height: 34px; padding: 0 12px; border: solid 1px var(--mory_line); border-radius: 999px; background: #fff; font-size: var(--font_sm); color: var(--text_color); text-decoration: none; }
.pd-filter a small { color: var(--mory_muted); font-size: 12px; }
.pd-filter a:hover { border-color: var(--main_color); }
.pd-filter a.active { border-color: var(--main_color); background: var(--mory_tint); font-weight: 600; }

/* Khối thanh toán (mory_bank(): chân trang + trang Liên hệ): xếp dọc QR → tên ngân hàng → STK, không nền / viền. Bấm STK để chép. */
.mory-bank{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.mory-bank img{width:120px;height:120px;object-fit:contain;border-radius:4px}
.mory-bank-name{font-size:var(--font_sm);font-weight:600;color:var(--text_color)}
.mory-bank-stk{display:flex;flex-direction:column;align-items:flex-start;padding:0;border:0;background:none;color:var(--text_color);text-align:left;cursor:pointer}
.mory-bank-stk b{font-size:var(--font_lg);letter-spacing:.3px;overflow-wrap:anywhere;border-bottom:1px dashed currentColor;line-height:1.25}
.mory-bank-stk small{font-size:calc(var(--font_sm) - 2px);color:var(--mory_muted)}
.mory-bank-stk:hover b,.mory-bank-stk:focus-visible b{color:var(--red_color)}
.mory-bank-stk.is-done small{color:var(--red_color);font-weight:600}

/* ===== Điện thoại: đầu trang gọn, tìm kiếm, thanh mua dính đáy, ô nhập 16px ===== */
/* Biểu tượng tìm / yêu thích / giỏ hàng trên thanh logo (thay hàng giỏ hàng riêng). */
.logo-box .mh-icons{display:flex;align-items:center;gap:2px}
.logo-box .mh-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:none;color:var(--text_color);cursor:pointer}
.logo-box .mh-btn svg{fill:var(--main_color)}
.logo-box .mh-btn[data-mh-search] svg{fill:none;stroke:var(--text_color);stroke-width:2.2;stroke-linecap:round}
.logo-box .mh-btn:active{background:var(--mory_tint)}
.logo-box .mh-badge{position:absolute;top:2px;right:0;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--red_color);color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center}
.logo-box .mh-badge[hidden]{display:none}
.nav-mobile-active .mh-icons,.nav-mobile-active .mh-search{display:none!important}
.mh-search{padding:0 0 8px}
.mh-search[hidden]{display:none!important}
.mh-search .hs-form{display:flex;height:44px;border:1.5px solid var(--main_color);border-radius:4px;background:#fff;overflow:hidden}
.mh-search .hs-form input{flex:1;min-width:0;padding:0 12px;border:0;outline:0;background:none;font-size:16px}
.mh-search .hs-form button{flex:none;padding:0 18px;border:0;background:var(--main_color);font-weight:700}

/* Trang sản phẩm: thanh mua dính đáy (chỉ điện thoại, JS hiện khi đã cuộn qua nút mua). */
.pd-bar{position:fixed;left:0;right:0;bottom:0;z-index:1030;display:flex;align-items:center;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -4px 16px rgba(0,0,0,.12)}
.pd-bar[hidden]{display:none!important}
.pd-bar-price{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}
.pd-bar-price b{color:var(--red_color);font-size:var(--font_lg)}
.pd-bar-price small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--mory_muted);font-size:12px}
.pd-bar a.pd-bar-zalo,.pd-bar .pd-bar-buy{flex:none;display:inline-flex;align-items:center;height:44px;padding:0 16px;border:0;border-radius:4px;font-weight:700;font-size:var(--font_sm);white-space:nowrap}
.pd-bar a.pd-bar-zalo{background:#0068ff;color:#fff!important;text-transform:none!important}
.pd-bar .pd-bar-buy{background:var(--main_color);color:var(--text_color)}
body.has-pd-bar{padding-bottom:64px}
body.has-pd-bar .zalo-container{bottom:84px}

@media (max-width:767.98px){
    /* Chính sách bán hàng (sau mô tả): ô cam kết gọn hơn. */
    .product_detail .sp-grid{gap:6px}
    .product_detail .sp-grid li{padding:8px}
    /* iPhone tự phóng to trang khi chạm ô nhập chữ dưới 16px. */
    input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px!important}
}

/* ===== Điện thoại (mức 2): giỏ hàng, vùng bấm, nhãn thẻ, menu khi đăng nhập, nút Zalo ===== */
/* Giỏ hàng: thanh tổng tiền dính đáy (JS trong orders/cart.php). */
.ct-bar{position:fixed;left:0;right:0;bottom:0;z-index:1030;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -4px 16px rgba(0,0,0,.12)}
.ct-bar[hidden]{display:none!important}
.ct-bar small{display:block;color:var(--mory_muted);font-size:12px;line-height:1.2}
.ct-bar b{color:var(--red_color);font-size:var(--font_lg)}
.ct-bar .ct-btn{flex:none;min-height:44px;padding:0 22px;display:inline-flex;align-items:center}
/* Nhãn "+N" phân loại trên thẻ: chỉ điện thoại. */
.product_option span.label.more{display:none}
/* Menu điện thoại nằm trên thanh quản trị (người đã đăng nhập). */
.nav-mobile-active .main_menu{z-index:100000}
.nav-mobile-active .close-mobile-menu{z-index:100001}

@media (max-width:767.98px){
    /* Menu điện thoại: mỗi dòng cao 44px. */
    .nav-mobile-active .main_menu nav ul li{padding:0 5px}
    .nav-mobile-active .main_menu nav ul li > a,.nav-mobile-active .main_menu nav > ul li.sub > span{display:flex;align-items:center;min-height:44px}
    .nav-mobile-active .main_menu nav > ul li.sub.active span{margin-bottom:0}
    /* Vùng bấm: breadcrumb, biểu tượng mạng xã hội. */
    .breadcrumb a{display:inline-block;padding-top:10px;padding-bottom:10px}
    .social .item a{width:40px!important;height:40px!important}
    /* Thẻ sản phẩm: 2 nhãn phân loại đầu + "+N", chữ 12px. */
    .product_list .product_option span.label.text:nth-of-type(n+3){display:none}
    .product_list .product_option span.label.text{font-size:12px;max-width:72px}
    .product_list .product_option span.label.more{display:inline-block;height:18px;padding:0 5px;border-radius:2px;background:var(--mory_line);font-size:12px;line-height:18px;color:var(--mory_muted)}
    /* Tiêu đề khối trang chủ: "xem thêm 50+" không bị tách dòng giữa chừng. */
    .topic a[more_text]:after{display:inline-block;white-space:nowrap;text-transform:none}
    /* Nút Zalo nổi: sát góc dưới, chân trang chừa chỗ để dòng cuối không bị che. */
    .zalo-container{right:12px;bottom:16px}
    body.has-pd-bar .zalo-container{bottom:76px}
    footer{padding-bottom:64px}
}

/* Khối kêu gọi "Cần sản phẩm ấn tượng?" (mory_cta()): cột "Chính sách bán hàng" trang sản phẩm + bên phải giới thiệu trang danh mục (cùng một khối). */
.sp-cta{padding:14px;border:1px solid var(--mory_line);border-radius:6px;background:var(--mory_tint)}
.sp-cta-title{text-transform:none!important;margin:0 0 2px;font-family:var(--title_font);font-size:var(--font_lg);font-weight:700!important;color:var(--text_color)}
.sp-cta-sub{margin:0 0 12px;font-size:var(--font_sm);font-weight:700;color:var(--red_color);line-height:1.45}
.sp-cta-steps{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:9px;counter-reset:spc}
.sp-cta-steps li{position:relative;padding-left:32px;min-height:22px;font-size:var(--font_sm);line-height:1.35;counter-increment:spc}
.sp-cta-steps li:before{content:counter(spc);position:absolute;left:0;top:-1px;width:22px;height:22px;border-radius:50%;background:var(--main_color);color:var(--text_color);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.sp-cta-steps li:not(:last-child):after{content:"";position:absolute;left:10.5px;top:23px;bottom:-9px;width:1px;background:var(--mory_line)}
.sp-cta-steps b{display:block;font-weight:600;color:var(--text_color)}
.sp-cta-steps span{display:block;font-size:calc(var(--font_sm) - 2px);color:var(--mory_muted)}
.sp-cta .sp-actions{display:flex;gap:8px;margin-top:14px}
.sp-cta .sp-actions a{text-transform:none!important;flex:1;display:flex;align-items:center;justify-content:center;min-height:36px;padding:0 10px;text-align:center;white-space:normal;font-size:calc(var(--font_sm) - 1px)}
.sp-cta .sp-actions .sp-zalo{flex:1.6}
.sp-cta .sp-actions a{border-radius:3px;font-weight:600}
.sp-cta .sp-zalo{background:#0068ff;color:#fff!important}
.sp-cta .sp-call{background:var(--main_color);color:var(--text_color)!important}
.sp-cta .sp-zalo:hover,.sp-cta .sp-call:hover{filter:brightness(.95)}
/* Trang danh mục (khung rộng hơn): các bước chia 2 cột từ 576px, bỏ đường nối dọc giữa các bước. */
@media (min-width:576px){
    .cat-intro .sp-cta-steps{grid-template-columns:1fr 1fr;column-gap:16px;row-gap:10px}
    .cat-intro .sp-cta-steps li:after{display:none}
}

/* Link khi rê chuột: màu đỏ thương hiệu thay màu xanh #0a58ca của style.css gốc (a:hover, menu cột trái .sb-nav). */
a:hover{color:var(--red_color)}
.sb-nav li h3 a:hover,.sb-nav li h3.active a{color:var(--red_color)}
