@charset "UTF-8";
/* SOULBREWS — COFFEE · WINE · AROMA
 * Compiled theme bundle.
 * 源文件: resources/beike/shop/soulbrews/css/
 * 由 plugins/Soulbrews/build.sh 手工合并产出；若已装 node_modules 可改用 npm run dev。
 */
@font-face{font-family:iconfont;src:url(/fonts/iconfont/iconfont.woff) format("woff"),url(/fonts/iconfont/iconfont.ttf) format("truetype")}.iconfont{-webkit-font-smoothing:antialiased;-webkit-text-stroke-width:.2px;-moz-osx-font-smoothing:grayscale;font-family:iconfont;font-size:1rem;font-style:normal}[v-cloak]{display:none}:root{--bs-border-radius:0.5rem}.btn{--bs-btn-border-radius:10rem}textarea.form-control{border-radius:var(--bs-border-radius)}.bk-page-loading{align-items:center;background:#fff;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000000000000000}body[class^=page-account]{background-color:#f7f7f7}body[class^=page-account] .breadcrumb-wrap{background-color:#eee}body{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:none;font-style:normal;overflow-x:hidden}body.app .breadcrumb-wrap{height:10px}body.app .breadcrumb-wrap .container,body.app .col-lg-3.col-12{display:none}@font-face{font-display:swap;font-family:Jost;font-style:normal;font-weight:400;src:url(/fonts/jost/Jost-Regular.ttf) format("truetype")}@font-face{font-display:swap;font-family:Jost;font-style:normal;font-weight:600;src:url(/fonts/jost/Jost-Medium.ttf) format("truetype")}@font-face{font-display:swap;font-family:Jost;font-style:normal;font-weight:700;src:url(/fonts/jost/Jost-SemiBold.ttf) format("truetype")}b,h1,h2,h3,h4,h5,h6,strong{color:#282828;font-weight:700}.min-h1{min-height:100px}.min-h2{min-height:200px}.min-h3{min-height:300px}.min-h4{min-height:400px}.min-h5{min-height:500px}.min-h6{min-height:600px}.wp-100{width:100px}.wp-200{width:200px}.wp-300{width:300px}.wp-400{width:400px}.wp-500{width:500px}.wp-600{width:600px}.wp-700{width:700px}.wp-800{width:800px}.wp-900{width:900px}.wp-1000{width:1000px}.wp-100-{width:calc(100% - 100px)}.wp-200-{width:calc(100% - 200px)}.wp-300-{width:calc(100% - 300px)}.wp-400-{width:calc(100% - 400px)}.wp-500-{width:calc(100% - 500px)}.wp-600-{width:calc(100% - 600px)}.wp-700-{width:calc(100% - 700px)}.wp-800-{width:calc(100% - 800px)}.wp-900-{width:calc(100% - 900px)}.wp-1000-{width:calc(100% - 1000px)}.h-min-100{min-height:100px}.h-min-200{min-height:200px}.h-min-300{min-height:300px}.h-min-400{min-height:400px}.h-min-500{min-height:500px}.h-min-600{min-height:600px}.h-min-700{min-height:700px}.h-min-800{min-height:800px}.h-min-900{min-height:900px}.h-min-1000{min-height:1000px}.w-min-100{min-width:100px}.w-min-200{min-width:200px}.w-min-300{min-width:300px}.w-min-400{min-width:400px}.w-min-500{min-width:500px}.w-min-600{min-width:600px}.w-min-700{min-width:700px}.w-min-800{min-width:800px}.w-min-900{min-width:900px}.w-min-1000{min-width:1000px}.w-max-100{max-width:100px}.w-max-200{max-width:200px}.w-max-300{max-width:300px}.w-max-400{max-width:400px}.w-max-500{max-width:500px}.w-max-600{max-width:600px}.w-max-700{max-width:700px}.w-max-800{max-width:800px}.w-max-900{max-width:900px}.w-max-1000{max-width:1000px}.hp-100{height:100px}.hp-200{height:200px}.hp-300{height:300px}.hp-400{height:400px}.hp-500{height:500px}.hp-600{height:600px}.hp-700{height:700px}.hp-800{height:800px}.hp-900{height:900px}.hp-1000{height:1000px}.wh-10{flex:0 0 10px;height:10px;width:10px}.wh-20{flex:0 0 20px;height:20px;width:20px}.wh-30{flex:0 0 30px;height:30px;width:30px}.wh-40{flex:0 0 40px;height:40px;width:40px}.wh-50{flex:0 0 50px;height:50px;width:50px}.wh-60{flex:0 0 60px;height:60px;width:60px}.wh-70{flex:0 0 70px;height:70px;width:70px}.wh-80{flex:0 0 80px;height:80px;width:80px}.wh-90{flex:0 0 90px;height:90px;width:90px}.wh-100{flex:0 0 100px;height:100px;width:100px}.wh-110{flex:0 0 110px;height:110px;width:110px}.wh-120{flex:0 0 120px;height:120px;width:120px}.wh-130{flex:0 0 130px;height:130px;width:130px}.wh-140{flex:0 0 140px;height:140px;width:140px}.wh-150{flex:0 0 150px;height:150px;width:150px}.wh-160{flex:0 0 160px;height:160px;width:160px}.wh-170{flex:0 0 170px;height:170px;width:170px}.wh-180{flex:0 0 180px;height:180px;width:180px}.wh-190{flex:0 0 190px;height:190px;width:190px}.wh-200{flex:0 0 200px;height:200px;width:200px}.rich-text-editor-content table{word-wrap:break-word;table-layout:fixed;width:100%}.rich-text-editor-content table td,.rich-text-editor-content table th{width:auto!important}.rich-text-editor-content *{box-sizing:border-box;max-width:100%!important}img{height:auto;max-height:100%;max-width:100%}.col-form-label.required:before{color:#f56c6c;content:"*";font-size:12px;font-weight:700;margin-right:5px}.login-pop-box{overflow:initial}@media (max-width:768px){.login-pop-box{height:80%!important;width:90%!important}}.module-title{color:#333;font-size:2rem;font-weight:700;margin-bottom:2rem;overflow:hidden;position:relative;text-align:center}@media (max-width:992px){.module-title{font-size:1rem}}@media (min-width:992px){.module-title{padding-bottom:10px}}.module-title .wave-line{height:18px;margin:0 auto;overflow:hidden;position:relative;width:54px}.module-title .wave-line:after{animation:wave 5s linear infinite;color:transparent;content:"xxxxxxxxxxxxxxxxxxxxxxxxxxxx";font-size:20px;left:0;position:absolute;text-decoration-color:#000;text-decoration-line:underline;text-decoration-style:wavy;top:-15px}@keyframes wave{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.module-division{display:flex;justify-content:center}.module-division img{width:130px}.module-sub-title{color:#564a4a;margin:-1.5rem auto 1.4rem;max-width:800px;text-align:center}@media (min-width:992px){.module-sub-title{font-size:1rem;margin-bottom:2.4rem}}.tinymce-format-p p{margin-bottom:.5rem}.steps-wrap{display:flex;justify-content:space-around;position:relative}.steps-wrap:before{border-bottom:3px solid #d7d7d7;content:"";left:0;position:absolute;top:14px;width:100%}.steps-wrap>div{align-items:center;display:flex;flex-direction:column;position:relative}.steps-wrap>div.active .number{background-color:#3c3d41;border-color:#3c3d41;color:#eee}.steps-wrap>div.active .title{color:#111}.steps-wrap>div .number-wrap{margin-bottom:.5rem;padding:0 4px}.steps-wrap>div .number{align-items:center;background-color:#fff;border:2px solid #ddd;border-radius:50%;display:flex;height:30px;justify-content:center;width:30px}.steps-wrap>div .title{color:#848484}.quantity-wrap{width:120px}@media (min-width:768px){.quantity-wrap{height:37px}}.quantity-wrap .btn{border-color:var(--bs-border-color)}.quantity-wrap .btn:active{background-color:#eee}.quantity-wrap input{background-color:transparent!important;padding:.5rem;text-align:center}.fixed-top-line-fixed{position:fixed;top:0}@media (max-width:768px){.account-sides-wrap{background:rgba(0,0,0,.4);bottom:0;cursor:pointer;left:0;opacity:0;position:fixed;right:0;top:0;transition:all .3s ease-out;visibility:hidden;z-index:9999}.account-sides-wrap.active{opacity:1;visibility:visible}.account-sides-wrap.active .account-sides-info{transform:translateX(0)}}.account-sides-info{border-radius:var(--bs-border-radius);overflow:hidden}@media (max-width:768px){.account-sides-info{background-color:#fff;height:100%;left:0;position:fixed;top:0;transform:translateX(-100%);transition:all .3s ease-out;width:80%;z-index:1046}}.account-sides-info .mb-header{justify-content:space-between;padding:10px}.account-sides-info .head,.account-sides-info .mb-header{align-items:center;border-bottom:1px solid #eee;display:flex}.account-sides-info .head{background-color:#fff;border-top-left-radius:.275rem;border-top-right-radius:.275rem;padding:1.4rem 1rem}@media (max-width:768px){.account-sides-info .head{border-bottom:1px solid #eee;padding:1rem}}.account-sides-info .head .portrait{border:2px solid #fff;border-radius:50%;box-shadow:0 3px 6px 0 rgba(0,0,0,.14);flex-shrink:0;height:70px;margin-right:10px;overflow:hidden;width:70px}@media (max-width:768px){.account-sides-info .head .portrait{height:60px;margin-right:14px;width:60px}}.account-sides-info .head .account-name{font-size:1rem;font-weight:700;margin-bottom:.4rem}.account-sides-info .head .account-email{color:#666}.account-sides-info .account-links{border-radius:0}.account-sides-info .account-links>a{border:none;border-bottom:1px solid #eee;font-weight:700;padding:.8rem 1rem;text-decoration:none!important;transition:all .2s ease-in-out}.account-sides-info .account-links>a>span.icon{line-height:1;margin-right:8px}.account-sides-info .account-links>a:last-of-type{border-bottom:none}.account-sides-info .account-links>a:hover{background-color:#e9ecef}.account-sides-info .account-links>a.active{background-color:#e9ecef;color:#111}.account-sides-info .account-links>a .badge{color:#fff}.text-size-min{font-size:12px}.text-truncate-2{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}@media (max-width:992px){.breadcrumb-filter{align-items:center;background-color:#f6f6f6;display:flex;justify-content:space-between;padding-right:10px}.breadcrumb-filter .mb-filter{font-size:18px;text-align:center;width:20px}.breadcrumb-filter i{line-height:1}}@media (min-width:992px){.breadcrumb-filter .mb-filter{display:none}}@media (max-width:992px){.breadcrumb-filter{margin-bottom:10px}.breadcrumb-filter .breadcrumb-wrap{margin-bottom:0}}.breadcrumb-wrap{background-color:#f6f6f6;margin-bottom:20px}@media (max-width:992px){.breadcrumb-wrap{margin-bottom:10px}.breadcrumb-wrap .breadcrumb{padding-bottom:.4rem;padding-top:.4rem}}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis.line-2{-webkit-line-clamp:2}.text-ellipsis.line-2,.text-ellipsis.line-3{-webkit-box-orient:vertical;display:-webkit-box;white-space:normal}.text-ellipsis.line-3{-webkit-line-clamp:3}.mobile-paginator{align-items:center;display:flex;justify-content:center}.mobile-paginator .input-group{margin:0 10px;max-width:60px}.mobile-paginator .input-group .input-group-text{padding:.46rem .56rem}.mobile-paginator .input-group #mb-page-input{padding:.46rem .26rem;text-align:center}.mobile-paginator .btn{border:1px solid var(--bs-border-color)}.mobile-paginator .btn:active{background-color:#eee}.address-dialog .el-form-item__label{line-height:normal}.iframe-modules-sortable-ghost{background-color:#f7f7f7;border:1px dashed #8B5E3C;border-radius:4px;font-size:20px;margin-bottom:10px;padding:10px;text-align:center}.iframe-modules-sortable-ghost .icon{display:none}#product-description td,.page-content table td{border-width:1px}header{background:#fff}header .top-wrap{background:#f7f8fa;display:flex;height:36px}@media (max-width:768px){header .top-wrap .container-fluid,header .top-wrap>.container{padding:0 10px}}header .top-wrap .dropdown:hover{background-color:#fff}header .top-wrap .dropdown:hover .dropdown-menu{border:none;box-shadow:0 0 15px rgba(0,0,0,.1);display:block}header .top-wrap .dropdown:hover .dropdown-menu.dropdown-menu-end{right:0}header .header-content .nav-item:hover>a{color:#8B5E3C}header .header-content .dropdown .dropdown-menu{border:none;box-shadow:0 0 15px rgba(0,0,0,.1);display:block;left:50%;max-height:80vh;opacity:0;overflow-y:auto;transform:translate(-50%,.5rem);transform-origin:top center;transition:all .2s ease-in-out;visibility:hidden}header .header-content .dropdown:hover .dropdown-menu{opacity:1;transform:translate(-50%);visibility:visible}header .header-content{background-color:#fff;padding:1rem 0;position:relative;transition:all .2s ease-in-out}body:not(.page-home) header .header-content{border-bottom:1px solid #eee}header .header-content.fixed{border-color:transparent;box-shadow:0 6px 12px 0 rgba(0,0,0,.06);left:0;padding:.4rem 0;position:fixed;right:0;top:0;z-index:999}header .header-content .container-fluid,header .header-content>.container{align-items:center;display:flex;justify-content:space-between}header .header-content .menu-wrap .container{max-width:1140px}header .header-content .menu-wrap>.navbar-nav>.nav-item{background-color:transparent}header .header-content .menu-wrap>.navbar-nav>.nav-item:hover>.nav-link>svg{transform:rotate(180deg)}header .header-content .menu-wrap>.navbar-nav>.nav-item>.nav-link{font-size:16px;padding:1rem;position:relative}@media (max-width:1200px){header .header-content .menu-wrap>.navbar-nav>.nav-item>.nav-link{padding:1rem .5rem}}header .header-content .menu-wrap>.navbar-nav>.nav-item>.nav-link>svg{margin-left:-3px;transition:all .2s ease-in-out}header .header-content .menu-wrap>.navbar-nav>.nav-item>.nav-link.dropdown-toggle:after{counter:"";display:none}header .header-content .menu-wrap>.navbar-nav>.nav-item>.nav-link .badge{bottom:80%;font-weight:400;left:50%;margin-left:0;padding:2px 4px;position:absolute}header .header-content .menu-wrap>.navbar-nav>.nav-item>.nav-link .badge:before{border:4px solid;border-color:inherit;border-bottom-color:transparent!important;border-left-width:0;border-right-color:transparent!important;border-right-width:7px;content:"";left:10px;position:absolute;top:100%}header .header-content .menu-wrap>.navbar-nav .group-name{font-size:15px}header .header-content .menu-wrap>.navbar-nav .ul-children a{color:#7a7a7a}header .header-content .menu-wrap>.navbar-nav .ul-children a:hover{color:#8B5E3C}header .header-content .logo img{max-height:50px;max-width:200px}@media (max-width:1200px){header .header-content .logo img{max-width:160px}}header .header-content .right-btn .nav-link{color:#333;padding-left:.7rem;padding-right:.7rem;position:relative}@media (max-width:1200px){header .header-content .right-btn .nav-link{padding-left:.3rem;padding-right:.3rem}}header .header-content .right-btn .nav-link i{font-size:1.1rem}header .header-content .right-btn .nav-link img{width:24px}header .cart-badge-quantity{zoom:.9;background-color:#8B5E3C;border-radius:50%;color:#fff;display:none;font-size:12px;height:23px;left:27px;line-height:24px;position:absolute;text-align:center;top:-3px;width:23px}header .header-mobile{border-bottom:1px solid #eee}header .header-mobile.fixed{background:#fff;border-color:transparent;box-shadow:0 8px 14px 0 rgba(0,0,0,.1);left:0;position:fixed;right:0;top:0;z-index:999}header .header-mobile .mobile-content{align-items:center;display:flex;justify-content:space-between;padding:10px}header .header-mobile .mobile-content>div{width:33.33%}header .header-mobile .mobile-content>div.center a{align-items:center;display:flex;height:30px;justify-content:center}header .header-mobile .mobile-content>div.center a img{max-height:100%}header .header-mobile .mobile-content .left{align-items:center;display:flex}header .header-mobile .mobile-content .left>div{cursor:pointer}header .header-mobile .mobile-content .left>div>i{font-size:1.5rem;line-height:1}header .header-mobile .mobile-content .left .mobile-open-search{margin-left:12px}header .header-mobile .mobile-content .left .mobile-open-search>i{font-size:1.1rem}header .header-mobile .mobile-content .right{display:flex;justify-content:flex-end}header .header-mobile .mobile-content .right .m-cart .cart-badge-quantity{height:20px;left:11px;line-height:20px;top:-9px;width:20px}header .header-mobile .mobile-content .right .mb-account-icon span{border-bottom:0;border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:.3em solid;display:inline-block;margin-right:-2px;vertical-align:.255em}header .header-mobile .mobile-content .right .nav-link{padding:0}header .header-mobile .mobile-content .right .nav-link i{font-size:1.2rem}#offcanvas-search-top{display:block;height:100vh;justify-content:center}@media (min-width:992px){#offcanvas-search-top{height:520px}}@media (min-width:1200px){#offcanvas-search-top{height:580px}}@media (min-width:1400px){#offcanvas-search-top{height:620px}}@media (max-width:992px){#offcanvas-search-top{overflow-y:auto;padding-bottom:40px}}@media (max-width:768px){#offcanvas-search-top.offcanvas-start{width:100%}}#offcanvas-search-top .offcanvas-header{padding-left:0;padding-right:0;width:100%}#offcanvas-search-top .search-input-wrap{margin-bottom:10px;margin-right:6px;position:relative}#offcanvas-search-top .search-input-wrap input{border-color:#222;border-radius:100px}#offcanvas-search-top .search-input-wrap input:focus{border-color:#8B5E3C;box-shadow:none}#offcanvas-search-top .search-input-wrap .input-group-text{background-color:transparent;border:none;bottom:0;color:#222;font-size:17px;position:absolute;right:0;text-align:center;top:0;width:50px;z-index:9}#offcanvas-search-top .btn-close{opacity:1;padding:1rem}#offcanvas-search-top .btn-close:hover{background-color:#eee}#offcanvas-search-top .hot-search-wrap .hot-search-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0}#offcanvas-search-top .search-pop-products-wrap .spinner-border{display:none}#offcanvas-search-top .search-pop-products-wrap.loading{align-items:center;background-color:#f5f5f5;display:flex;justify-content:center;min-height:300px}#offcanvas-search-top .search-pop-products-wrap.loading .hot-products-title,#offcanvas-search-top .search-pop-products-wrap.loading .sp-products{display:none}#offcanvas-search-top .search-pop-products-wrap.loading .spinner-border{display:block}#offcanvas-search-top .search-pop-products-show-all .btn{background-color:#222;border-radius:60px;color:#fff;min-width:120px}#offcanvas-right-cart .select-wrap{cursor:pointer;margin-right:10px}#offcanvas-right-cart .select-wrap i{color:#aaa;font-size:20px}#offcanvas-right-cart .select-wrap i.bi-check-circle-fill{color:#8B5E3C}#offcanvas-right-cart .offcanvas-right-products .product-list{border-top:1px solid #eee;padding:1rem 0}#offcanvas-right-cart .offcanvas-right-products .product-list .left{border:1px solid #eee;flex:0 0 80px;height:80px;margin-right:10px;width:80px}#offcanvas-right-cart .offcanvas-right-products .product-list .left img{max-height:80px}#offcanvas-right-cart .offcanvas-right-products .product-list .right .name{word-break:break-all}#offcanvas-right-cart .offcanvas-right-products .product-list .right .price input{height:24px;margin-left:10px;width:50px}#offcanvas-right-cart .offcanvas-right-products .product-list .right .offcanvas-products-delete{color:#999;cursor:pointer}#offcanvas-mobile-menu{width:80%}#offcanvas-mobile-menu .offcanvas-header{padding:10px 20px 10px 10px}#offcanvas-mobile-menu .mobile-menu-wrap{padding:0}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion{border-top:1px solid #e5e5e5}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item{border-bottom:1px solid #e5e5e5}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text{align-items:center;display:flex;justify-content:space-between}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text>a{align-items:center;display:flex;flex:1;height:44px;padding-left:10px}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text>a .badge{font-weight:400;margin-left:13px;position:relative}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text>a .badge:before{border:5px solid transparent;border-right-color:inherit;content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%)}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text>span{align-items:center;border-left:1px solid #e5e5e5;display:flex;height:44px;justify-content:center;width:44px}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text>span:active,#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text>span[aria-expanded=true]{background-color:#eee}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text>span[aria-expanded=true] i{transform:rotate(180deg)}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item>.accordion-collapse{border-top:1px solid #e5e5e5;padding:0 10px}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item>.accordion-collapse .children-group .children-title{height:44px}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item>.accordion-collapse .children-group .children-title span{align-items:center;display:flex;height:42px;justify-content:center;margin-right:-10px;width:44px}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item>.accordion-collapse .children-group .children-title span:active{background-color:#eee}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item>.accordion-collapse .children-group .children-title span[aria-expanded=true] i:before{content:"\f63b"}#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item>.accordion-collapse .children-group .nav a{color:#777}footer{background:#f4f4f4;margin-top:1rem;overflow:hidden;position:relative}@media (max-width:768px){footer{border-top:1px solid #eee}}footer .footer-wrapper{position:relative;z-index:1}@media (min-width:768px){footer{margin-top:5rem}}footer .footer-active{outline:2px dashed #4bb1f0!important}footer .services-wrap{border-bottom:1px solid #e7e7e7;padding:2.2rem 0}@media (max-width:768px){footer .services-wrap{padding:.5rem 0}}footer .services-wrap .service-item{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}footer .services-wrap .service-item .icon{flex:0 0 40px;margin-bottom:16px;width:40px}@media (max-width:768px){footer .services-wrap .service-item .icon{display:none}}footer .services-wrap .service-item p{margin-bottom:0}footer .services-wrap .service-item .title{color:#333;font-size:1rem;font-weight:700;margin-bottom:4px}footer .services-wrap .service-item .sub-title{color:#75797f;font-size:.8rem}@media (min-width:768px){footer .footer-content{padding:3rem 0}}@media (max-width:768px){footer .footer-content>.row{margin:0}footer .footer-content>.row>.col-12{padding-left:0;padding-right:0}}footer .footer-content a{color:#333}footer .footer-content a:hover{color:#8B5E3C}footer .footer-content .logo{margin-bottom:10px;max-width:240px}footer .footer-content .text{color:#010000}footer .footer-content h6{align-items:center;display:flex;font-size:15px;justify-content:space-between}@media (min-width:768px){footer .footer-content h6{margin-bottom:20px}}@media (max-width:768px){footer .footer-content h6{margin-bottom:0;padding:12px 0}}footer .footer-content h6 .icon-open{cursor:pointer;display:none;font-size:18px;font-weight:700;height:20px;line-height:20px;text-align:center;width:20px}@media (max-width:768px){footer .footer-content h6 .icon-open{display:block}}footer .footer-content .social-network{display:flex;margin-top:10px}footer .footer-content .social-network>a{align-items:center;display:flex;height:30px;justify-content:center;margin-right:10px;transition:all .3s ease;width:30px}footer .footer-content .social-network>a:hover{transform:translateY(-5px)}@media (min-width:768px){footer .footer-content .intro-title{display:none}}@media (max-width:768px){footer .footer-content .footer-link-wrap{border-bottom:1px solid #eee}}footer .footer-content .footer-link-wrap.active .icon-open i:before{content:"\f63b"}footer .footer-content .footer-link-wrap.active .intro-wrap,footer .footer-content .footer-link-wrap.active ul.list-unstyled{max-height:1666px}footer .footer-content .footer-link-wrap .intro-wrap,footer .footer-content .footer-link-wrap ul.list-unstyled{margin-bottom:0}footer .footer-content .footer-link-wrap .intro-wrap li,footer .footer-content .footer-link-wrap ul.list-unstyled li{font-size:14px;margin-bottom:10px}@media (max-width:768px){footer .footer-content .footer-link-wrap .intro-wrap,footer .footer-content .footer-link-wrap ul.list-unstyled{max-height:0;overflow:hidden;transition:all .35s;width:100%}}footer .footer-bottom{align-items:center;border-top:1px solid #e6e3dc;color:#666;display:flex}@media (min-width:768px){footer .footer-bottom{min-height:60px}}@media (max-width:768px){footer .footer-bottom{padding:10px 0}footer .footer-bottom .d-flex,footer .footer-bottom .row.align-items-center{justify-content:center}}footer .footer-bottom .copyright-content p{margin-bottom:0}.product-list-wrap .col-12:not(:last-of-type) .product-wrap{border-bottom:1px solid #e6e6e6;padding-bottom:1.4rem}.product-list-wrap .col-12:not(:last-of-type) .product-wrap:hover .button-wrap{bottom:10px;opacity:1}.product-wrap{background-color:#fff;padding-bottom:.7rem;text-align:center;transition:all .3s ease-in-out}.product-wrap .product-bottom-info{padding:0 5px}.product-wrap.list{display:flex;padding-bottom:0}.product-wrap.list .image{flex:0 0 100px;margin-bottom:0;transition:all .3s ease-in-out}@media (min-width:768px){.product-wrap.list .image{flex:0 0 200px}}.product-wrap.list .image .image-old{height:auto!important}.product-wrap.list .product-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;height:42px;margin-bottom:10px;overflow:hidden;text-overflow:ellipsis;white-space:normal}.product-wrap.list .product-bottom-info{flex:1;padding-left:10px;padding-top:10px;text-align:left}@media (min-width:768px){.product-wrap.list .product-bottom-info{padding-left:20px}}.product-wrap.list .product-bottom-info .product-name{font-size:14px}@media (max-width:768px){.product-wrap.list .product-bottom-info .button-wrap,.product-wrap.list .product-bottom-info .quick-view-wish{display:none}}.product-wrap .image{border-radius:12px;margin-bottom:10px;overflow:hidden;position:relative}.product-wrap .image>a{align-items:center;display:block;justify-content:center;opacity:1;position:relative}.product-wrap .image .image-after{height:100%;left:0;opacity:0;position:absolute;top:0;transform:scale(1);transition:all .4s ease-out;width:100%}.product-wrap .image .button-wrap{bottom:-30px;display:flex;justify-content:center;opacity:0;position:absolute;transition:all .2s ease-in-out;width:100%;z-index:40}@media (max-width:992px){.product-wrap .image .button-wrap{display:none}}.product-wrap .image .button-wrap .btn-add-cart{flex:1}.product-wrap .image .button-wrap .btn-quick-view i{font-size:16px}.product-wrap .image .button-wrap .btn-quick-view,.product-wrap .image .button-wrap .btn-wishlist{flex:0 0 46px}.product-wrap .image .button-wrap button{background-color:#111;border:none;border-radius:0;border-right:1px solid #333;font-weight:700}.product-wrap .image .button-wrap button:last-child{border-right:none}.product-wrap .image .button-wrap button i{line-height:1}@media (min-width:768px){.product-wrap:hover .image>a .image-after{opacity:1;transform:scale(1.1);z-index:9}.product-wrap:hover .button-wrap{bottom:0;opacity:1}}.product-wrap .product-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:14px;font-weight:700;height:40px;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:normal}.product-wrap .product-price .price-new{color:#8B5E3C;font-size:1rem;font-weight:700}@media (max-width:768px){.product-wrap .product-price .price-new{font-size:.8rem}}.product-wrap .product-price .price-old{color:#aaa;margin-left:4px;text-decoration:line-through}.page-categories-home,.page-pages{background-color:#f6f6f6}.page-categories-home .post-item,.page-pages .post-item{display:flex}.page-categories-home .post-item .image,.page-pages .post-item .image{align-items:center;border:1px solid #eee;display:flex;flex:0 0 150px;justify-content:center;margin-right:20px}@media (max-width:768px){.page-categories-home .post-item .image,.page-pages .post-item .image{flex:0 0 100px;margin-right:10px}.page-categories-home .post-item .text-summary,.page-pages .post-item .text-summary{display:none}body.page-forgotten,body.page-login{overflow-x:hidden}}body.page-forgotten .el-form-item__error--inline,body.page-login .el-form-item__error--inline{margin-left:0}body.page-forgotten .login-alert .layui-layer-btn0,body.page-login .login-alert .layui-layer-btn0{background-color:#222;border-color:#222}body.page-forgotten .forgotten-link,body.page-login .forgotten-link{display:block;margin-top:-14px}body.page-forgotten .el-form-item,body.page-login .el-form-item{margin-bottom:18px}body.page-forgotten .el-form-item .el-form-item__content,body.page-login .el-form-item .el-form-item__content{line-height:1}body.page-forgotten .login-item-header,body.page-login .login-item-header{background:#f3f4f6;border-bottom:none;border-radius:100px;padding:1.2rem 1.5rem}body.page-forgotten .login-item-header h6,body.page-login .login-item-header h6{font-size:1rem;font-weight:700}body.page-forgotten .vr-wrap,body.page-login .vr-wrap{margin:0 80px}@media (min-width:768px){body.page-forgotten .login-wrap,body.page-login .login-wrap{display:flex;justify-content:center}}body.page-forgotten .login-wrap .card,body.page-login .login-wrap .card{border:none}@media (min-width:768px){body.page-forgotten .login-wrap .card,body.page-login .login-wrap .card{width:340px}}body.page-forgotten .form-iframe,body.page-login .form-iframe{margin-bottom:30px}@media (max-width:768px){body.page-forgotten .form-iframe,body.page-login .form-iframe{margin-top:0!important;padding:0}}body.page-forgotten .form-iframe .vr-wrap,body.page-login .form-iframe .vr-wrap{margin:0 60px}body.page-forgotten .form-iframe .card,body.page-login .form-iframe .card{border:none}body.page-forgotten .social-wrap .title,body.page-login .social-wrap .title{color:#999;position:relative;text-align:center}body.page-forgotten .social-wrap .title:before,body.page-login .social-wrap .title:before{background:#e5e5e5;content:"";height:1px;left:0;position:absolute;top:47%;width:100%}body.page-forgotten .social-wrap .title span,body.page-login .social-wrap .title span{background-color:#fff;padding:0 5px;position:relative;z-index:1}body.page-forgotten .social-wrap .btn,body.page-login .social-wrap .btn{color:#666}body.page-forgotten .social-wrap .btn img,body.page-login .social-wrap .btn img{left:40px;position:absolute}body.page-forgotten .social-wrap .btn:hover,body.page-login .social-wrap .btn:hover{background-color:#eee}body.page-account .account-card{border:none}body.page-account .account-card .card-items>a{color:#222;text-decoration:none!important;width:25%}body.page-account .account-card .card-items>a i{font-size:2rem}body.page-account .account-card .card-items>a span{display:flex}@media (min-width:992px){body.page-account .account-card .card-body{min-height:509px}}body.page-account .account-card .order-wrap{background-color:#f6f8f9}@media (min-width:768px){body.page-account .account-card .order-wrap{padding:2rem 1rem}}body.page-account .account-card .order-wrap .icon i{color:#777;font-size:4.5rem}body.page-account .account-card .order-wrap .text{font-size:1rem}@media (max-width:768px){.account-sides-info{margin-bottom:14px}body.page-product{background-color:#f2f2f3;padding-bottom:64px}body.page-product .breadcrumb-wrap{display:none}body.page-product .product-container{overflow-x:hidden;padding:0}body.page-product .product-mb-block{background-color:#fff;margin-bottom:10px;padding:10px}}body.page-product #product-description img{height:auto;max-width:100%}body.page-product .product-image{align-items:stretch;display:flex;position:relative}body.page-product .product-image #swiper{height:100%}body.page-product .product-image #swiper .swiper-wrapper{flex-direction:column}@media (max-width:768px){body.page-product .product-image #swiper:hover .swiper-pager>div{display:none}}body.page-product .product-image #swiper:hover .swiper-pager>div{background-color:hsla(0,0%,100%,.548);opacity:1}body.page-product .product-image #swiper:hover .swiper-pager>div:hover{background-color:#fff}body.page-product .product-image #swiper-mobile{border-right:1px solid #eee;width:100%}body.page-product .product-image #swiper-mobile .swiper-pagination{--swiper-theme-color:#f60;--swiper-navigation-color:#f60;--swiper-navigation-size:30px}body.page-product .product-image .left{margin-right:1rem}@media (min-width:992px){body.page-product .product-image .left{max-height:360px}}@media (min-width:1200px){body.page-product .product-image .left{max-height:450px}}@media (min-width:1400px){body.page-product .product-image .left{max-height:512px}}body.page-product .product-image .left .swiper>div>div{border:1px solid #eee;border-radius:4px;cursor:pointer;height:80px;margin-bottom:10px;min-height:80px;padding:2px;width:80px}body.page-product .product-image .left .swiper>div>div>a{align-items:center;display:flex;height:100%;justify-content:center}body.page-product .product-image .left .swiper>div>div>a img{max-height:100%}body.page-product .product-image .left .swiper>div>div.active,body.page-product .product-image .left .swiper>div>div:hover{border:1px solid #3a3a3a}body.page-product .product-image .left .swiper-pager>div{background-color:hsla(0,0%,100%,0);opacity:0;transition:all .3s}body.page-product .product-image .left .swiper-pager .swiper-button-next{border:0;height:55px;left:calc(50% + 5px);top:calc(100% - 36px);transform:rotate(90deg) translateY(25%);transform-origin:center;width:30px}body.page-product .product-image .left .swiper-pager .swiper-button-next.active,body.page-product .product-image .left .swiper-pager .swiper-button-next:hover{border:0!important}body.page-product .product-image .left .swiper-pager .swiper-button-next:after{font-size:18px}body.page-product .product-image .left .swiper-pager .swiper-button-prev{border:0;height:55px;left:calc(50% + 5px);top:0;transform:rotate(90deg) translateY(25%);transform-origin:center;width:30px}body.page-product .product-image .left .swiper-pager .swiper-button-prev.active,body.page-product .product-image .left .swiper-pager .swiper-button-prev:hover{border:0!important}body.page-product .product-image .left .swiper-pager .swiper-button-prev:after{font-size:18px}body.page-product .product-image .right{border:1px solid #eee;border-radius:4px;position:relative}body.page-product .product-image .right .product-img{align-items:center;display:flex;justify-content:center;max-width:510px}body.page-product .product-image #product-video{display:none;height:100%;left:0;position:absolute;top:0;width:100%;z-index:99}body.page-product .product-image .open-video{cursor:pointer;left:50%;line-height:1;position:absolute;top:50%;transform:translateY(-50%);transform:translateX(-50%);z-index:99}body.page-product .product-image .open-video:hover i{background-color:rgba(0,0,0,.648);color:#fff}body.page-product .product-image .open-video i{background-color:rgba(0,0,0,.348);border-radius:50%;color:hsla(0,0%,100%,.948);display:inline-block;font-size:4rem;font-weight:400;line-height:1}@media (max-width:768px){body.page-product .product-image .open-video i{font-size:3rem}}body.page-product .product-image .close-video{color:#aaa;cursor:pointer;font-size:30px;position:absolute;right:10px;top:6px;z-index:9999}body.page-product .product-image .close-video:hover{color:#fff}@media (max-width:768px){body.page-product .stock-and-sku{background:#fafafa;line-height:1.6;padding:8px}}@media (min-width:768px){body.page-product .stock-and-sku>div{font-size:14px;margin-bottom:10px}}@media (max-width:768px){body.page-product .stock-and-sku>div{display:inline-block;margin-right:10px}}@media (min-width:768px){body.page-product .stock-and-sku>div .title{width:80px}}body.page-product .variables-wrap.error{background-color:hsla(8,100%,97%,.591);border:1px dashed #f60;border-radius:6px;transition:all .3s}body.page-product .variables-wrap .variable-group{margin-bottom:10px}body.page-product .variables-wrap .variable-group:last-of-type{margin-bottom:0}body.page-product .variables-wrap .variable-info>div{align-items:center;border:1px solid #ddd;border-radius:100px;cursor:pointer;display:inline-flex;flex-direction:column;font-weight:700;justify-content:center;margin-bottom:.5rem;margin-left:0;margin-right:.5rem;min-width:3rem;text-align:center;transition:all .1s ease-in-out}body.page-product .variables-wrap .variable-info>div.selected,body.page-product .variables-wrap .variable-info>div:hover{border-color:#222}body.page-product .variables-wrap .variable-info>div.selected.disabled,body.page-product .variables-wrap .variable-info>div:hover.disabled{border-style:dashed;opacity:.7}body.page-product .variables-wrap .variable-info>div:not(.is-v-image){padding:.4rem 1rem}body.page-product .variables-wrap .variable-info>div>span.image{width:50px}body.page-product .variables-wrap .variable-info>div:not(.selected).disabled{border:1px dashed #2e2929;color:#999}body.page-product .quantity-wrap button,body.page-product .quantity-wrap input{border-color:#ddd;border-width:1px}body.page-product .quantity-wrap button:first-child{border-right:none}body.page-product .quantity-wrap button:last-child{border-left:none}body.page-product .quantity-wrap input{border-left:none;border-right:none}body.page-product .product-btns .add-cart-btns{display:flex;flex:1}body.page-product .product-btns .add-cart-btns .add-cart,body.page-product .product-btns .add-cart-btns .btn-buy-now{flex:1}@media (min-width:768px){body.page-product .product-btns .add-cart-btns .add-cart,body.page-product .product-btns .add-cart-btns .btn-buy-now{font-size:1rem;padding-bottom:10px;padding-top:10px}}@media (max-width:768px){body.page-product .product-btns{align-items:center;background:#fff;bottom:0;box-shadow:0 -8px 12px 0 rgba(0,0,0,.102);display:flex;flex-wrap:wrap;left:0;max-height:102px;padding:10px 10px calc(10px + env(safe-area-inset-bottom));position:fixed;right:0;width:100%;z-index:100}body.page-product .product-btns .quantity-btns{align-items:center;display:flex}body.page-product .product-btns .btn-buy-now{margin:0 10px}body.page-product .product-btns .add-wishlist .btn{color:#333!important;padding:0}body.page-product .product-btns .add-wishlist span{display:none}body.page-product .product-btns .add-wishlist i{font-size:20px}}body.page-product .product-info .product-name{font-size:1.7rem;font-weight:600;line-height:1.3}@media (max-width:768px){body.page-product .product-info .product-name{font-size:1rem;font-weight:400}}body.page-product .product-info .rating-wrap{margin-bottom:2rem}body.page-product .product-info .rating-wrap .rating{margin-right:.5rem}body.page-product .product-info .rating-wrap .rating i{color:#8B5E3C}body.page-product .product-info .price-wrap{margin-bottom:2.4rem}@media (max-width:768px){body.page-product .product-info .price-wrap{margin-bottom:1rem}}@media (min-width:768px){body.page-product .product-info .quantity-btns{display:flex}}body.page-product .product-info .quantity-btns .quantity-input{max-width:5rem;text-align:center}@media (min-width:768px){body.page-product .product-info .add-wishlist button{margin-top:10px;padding:0!important}}body.page-product .product-description .nav-tabs .nav-link{border:none}body.page-product .product-description .nav-tabs .nav-link.active{background-color:transparent;color:#8B5E3C;position:relative}body.page-product .product-description .nav-tabs .nav-link.active:before{border-top:1px solid #8B5E3C;bottom:0;content:"";left:0;position:absolute;right:0}@media (min-width:768px){body.page-product .attribute-table tr td:first-of-type{width:20%}}@media (max-width:768px){body.page-product .attribute-table tr td:first-of-type{width:40%}body.page-product .relations-wrap .container{padding:0 0 10px}}body.page-product .relations-wrap .title{font-size:20px;margin-bottom:22px}@media (max-width:768px){body.page-product .relations-wrap .title{font-size:14px;font-weight:700;margin-bottom:10px}}body.page-product .relations-wrap .swiper-pagination{bottom:-10px}body.page-product .relations-wrap .swiper-pagination .swiper-pagination-bullet{border-radius:0;height:3px}body.page-cart,body.page-checkout{background-color:#f6f8fa}body.page-cart .breadcrumb-wrap,body.page-checkout .breadcrumb-wrap{background-color:transparent;margin-bottom:0}@media (max-width:768px){body.page-cart,body.page-checkout{padding-bottom:64px}}@media (min-width:992px){body.page-cart .left-column,body.page-checkout .left-column{width:70%}body.page-cart .right-column,body.page-checkout .right-column{width:30%}}@media (max-width:768px){body.page-cart .right-column,body.page-checkout .right-column{margin-top:1.4rem}}body.page-cart #app-cart{min-height:200px}body.page-cart .cart-products-wrap .table tbody{border-top:none}body.page-cart .cart-products-wrap .table tbody td{border-color:#f0f2f4;vertical-align:middle}body.page-cart .cart-products-wrap .table thead{background-color:#f8f9fa}body.page-cart .cart-products-wrap .table thead th{border-bottom:none;box-shadow:none;padding:.7rem .5rem;white-space:nowrap}body.page-cart .cart-products-wrap .table .p-image input{flex:0 0 1}body.page-cart .total-wrap.total-wrap-fixed{position:fixed;right:0;top:0}body.page-cart .total-wrap .card-header{background-color:transparent;border-bottom:none;padding-top:1rem}body.page-cart .total-wrap .list-group li{background-color:transparent;border-color:#eee;padding:.7rem 0}body.page-cart .total-wrap .list-group li:not(.d-grid){align-items:center;display:flex;justify-content:space-between}body.page-cart .total-wrap .list-group li .total-price{color:#222;font-size:1.2rem;font-weight:700}body.page-cart .mb-product-wrap{margin-left:-12px;margin-right:-12px}body.page-cart .mb-product-wrap .mb-product-list{background-color:#fff;display:flex;margin-bottom:10px;padding:10px}body.page-cart .cart-mb-total{align-items:center;background:#fff;bottom:0;box-shadow:0 -8px 12px 0 rgba(0,0,0,.102);display:flex;justify-content:space-between;left:0;padding:8px 12px calc(8px + env(safe-area-inset-bottom));position:fixed;right:0;transition:transform .3s ease-in-out;z-index:100}body.page-cart .cart-mb-total .right{flex:1;text-align:right}body.page-cart .cart-mb-total .right .total-price{font-size:.9rem}body.page-cart .cart-mb-total .btn-checkout{margin-left:4px;width:50%}body.page-checkout{background-color:#f6f8fa}@media (max-width:992px){body.page-checkout .submit-checkout-wrap{align-items:center;background:#fff;bottom:0;box-shadow:0 -8px 12px 0 rgba(0,0,0,.102);display:flex!important;justify-content:space-between;left:0;padding:8px 12px calc(8px + env(safe-area-inset-bottom));position:fixed;right:0;transition:transform .3s ease-in-out;z-index:100}body.page-checkout .submit-checkout-wrap #submit-checkout{width:50%}body.page-checkout .submit-checkout-wrap .text-total{font-size:.9rem}}body.page-checkout .radio-line-wrap .radio-line-item{align-items:center;border:1px solid transparent;border-radius:8px;cursor:pointer;display:flex;padding:20px}@media (max-width:768px){body.page-checkout .radio-line-wrap .radio-line-item{padding:10px}}body.page-checkout .radio-line-wrap .radio-line-item:not(:last-of-type){margin-bottom:1rem}body.page-checkout .radio-line-wrap .radio-line-item:hover{border-color:#e5e5e5}body.page-checkout .radio-line-wrap .radio-line-item:active{background-color:#f7f7f7}body.page-checkout .radio-line-wrap .radio-line-item.active{border-color:#e5e5e5}body.page-checkout .radio-line-wrap .radio-line-item.active .radio{border-color:#8B5E3C}body.page-checkout .radio-line-wrap .radio-line-item.active .radio:before{background-color:#8B5E3C;border-radius:50%;content:"";height:12px;left:2px;position:absolute;top:2px;width:12px}body.page-checkout .radio-line-wrap .radio-line-item .radio{border:1px solid #d4d4d4;border-radius:50%;flex:0 0 18px;height:18px;position:relative;width:18px}body.page-checkout .radio-line-wrap .radio-line-item .left{align-items:center;display:flex;margin-right:10px}body.page-checkout .radio-line-wrap .radio-line-item .left img{margin-left:10px;max-height:60px}body.page-checkout .radio-line-wrap .radio-line-item .right .title{font-weight:700}@media (min-width:768px){body.page-checkout .addresses-wrap .item.address-right{padding:0 2.6rem}}@media (max-width:768px){body.page-checkout .addresses-wrap .item.address-right{padding:0}body.page-checkout .addresses-wrap .item.address-right button:first-of-type{margin-right:10px}}body.page-checkout .addresses-wrap .item.address-right{align-items:center;border:none;cursor:auto;display:flex;justify-content:center}@media (min-width:768px){body.page-checkout .addresses-wrap .item.address-right{flex-direction:column}}body.page-checkout .comment-wrap .commentTxt{border-color:#e5e5e5}body.page-checkout .comment-wrap .commentTxt:focus-visible{border-color:#8B5E3C;outline:0}body.page-bk-stripe .checkout-black,body.page-checkout .checkout-black{margin-bottom:2.6rem}@media (max-width:768px){body.page-bk-stripe .checkout-black,body.page-checkout .checkout-black{margin-bottom:1rem}}body.page-bk-stripe .checkout-title,body.page-checkout .checkout-title{align-items:center;border-bottom:1px solid #f1f1f1;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px;position:relative}@media (max-width:768px){body.page-bk-stripe .checkout-title,body.page-checkout .checkout-title{margin-bottom:10px;padding-bottom:10px}}body.page-bk-stripe .checkout-title .btn,body.page-checkout .checkout-title .btn{margin-bottom:-10px}body.page-bk-stripe .checkout-title .btn.icon,body.page-checkout .checkout-title .btn.icon{font-size:1rem}@media (min-width:768px){body.page-bk-stripe .total-wrap .card-body,body.page-checkout .total-wrap .card-body{padding:0}}body.page-bk-stripe .total-wrap .card-header,body.page-checkout .total-wrap .card-header{background-color:#fff;border-bottom:1px solid #e6e6e6;margin-bottom:1rem}@media (min-width:768px){body.page-bk-stripe .total-wrap .card-header,body.page-checkout .total-wrap .card-header{padding:0 0 .8rem}}body.page-bk-stripe .total-wrap .card-header h5,body.page-checkout .total-wrap .card-header h5{font-weight:700}body.page-bk-stripe .total-wrap .card-header span,body.page-checkout .total-wrap .card-header span{color:#fff;line-height:24px;min-width:24px;text-align:center}body.page-bk-stripe .total-wrap .products-wrap,body.page-checkout .total-wrap .products-wrap{border-bottom:1px solid #e6e6e6;margin-bottom:1.3rem;padding-bottom:.3rem}@media (min-width:768px){body.page-bk-stripe .total-wrap .products-wrap,body.page-checkout .total-wrap .products-wrap{max-height:380px;overflow-y:auto}}body.page-bk-stripe .total-wrap .products-wrap .item,body.page-checkout .total-wrap .products-wrap .item{align-items:center;display:flex;justify-content:space-between;margin-bottom:.8rem}body.page-bk-stripe .total-wrap .products-wrap .item .image,body.page-checkout .total-wrap .products-wrap .item .image{align-items:center;display:flex;padding-right:4px}body.page-bk-stripe .total-wrap .products-wrap .item .image .quantity,body.page-checkout .total-wrap .products-wrap .item .image .quantity{color:#7a7a7a;margin-left:3px}body.page-bk-stripe .total-wrap .products-wrap .item .price,body.page-checkout .total-wrap .products-wrap .item .price{color:#7a7a7a}body.page-bk-stripe .total-wrap .totals,body.page-checkout .total-wrap .totals{list-style:none;margin-bottom:0;padding-left:0}@media (min-width:768px){body.page-bk-stripe .total-wrap .totals,body.page-checkout .total-wrap .totals{border-bottom:1px solid #e6e6e6;margin-bottom:1.5rem;padding-bottom:.3rem}}body.page-bk-stripe .total-wrap .totals>li,body.page-checkout .total-wrap .totals>li{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}body.page-bk-stripe .total-wrap .totals>li:last-of-type,body.page-checkout .total-wrap .totals>li:last-of-type{font-weight:700}@media (max-width:768px){body.page-bk-stripe .total-wrap .totals>li:last-of-type,body.page-checkout .total-wrap .totals>li:last-of-type{margin-bottom:0}}body.page-bk-stripe .total-wrap .totals>li:last-of-type>span:last-of-type,body.page-checkout .total-wrap .totals>li:last-of-type>span:last-of-type{color:#dc3545}body.page-bk-stripe .total-wrap .totals>li>span:first-of-type,body.page-checkout .total-wrap .totals>li>span:first-of-type{font-size:.8rem}@media (min-width:992px){body.page-categories .col-lg-9.right-column{flex:1}body.page-categories .col-lg-3.left-column{max-width:290px}}@media (min-width:1500px){body.page-categories .col-lg-3.left-column{max-width:340px}}body.page-categories .col-lg-3.left-column .card:not(:last-of-type){border-bottom:1px solid #e6e6e6;margin-bottom:1.4rem;padding-bottom:1.4rem}@media (max-width:992px){body.page-categories .left-column{background:rgba(0,0,0,.4);bottom:0;cursor:pointer;display:none;left:0;position:fixed;right:0;top:0;z-index:999}body.page-categories .left-column .x-fixed-top{background-color:#fff;height:100%;overflow-y:auto;padding:20px;position:absolute;right:0;text-align:left;top:0;transform:translateX(100%);transition:all .3s ease-out;width:80%}body.page-categories .left-column .x-fixed-top.active{transform:translateX(0)}body.page-categories .children-wrap{display:none}}body.page-categories .children-wrap a{color:#333;margin-right:4px}body.page-categories .children-wrap a:hover{color:#8B5E3C}body.page-categories .style-wrap label{cursor:pointer}body.page-categories .style-wrap label.active svg{fill:#8B5E3C}body.page-categories .style-wrap label svg{fill:#999}body.page-categories .filter-value-wrap .list-group{display:block}body.page-categories .filter-value-wrap .list-group .list-group-item{background:#f3f3f3;border:none;color:#666;cursor:pointer;display:inline-block;font-size:12px;padding:4px 12px}body.page-categories .filter-value-wrap .list-group .list-group-item.delete-all,body.page-categories .filter-value-wrap .list-group .list-group-item:hover{background:#8B5E3C;color:#fff}@media (min-width:992px){body.page-categories .product-tool .order-select{min-width:170px}}@media (max-width:768px){body.page-categories .product-tool .right-per-page{flex:1;justify-content:space-between}body.page-categories .product-tool .right-per-page .perpage-select{max-width:60px;padding-right:8px}body.page-categories .product-tool .right-per-page .form-select{font-size:.7rem;padding-bottom:.25rem;padding-left:.5rem;padding-top:.25rem}}body.page-categories .ui-widget-content{background:none;border:none;border-radius:0;cursor:pointer;margin-bottom:0;margin-right:4px;position:relative}body.page-categories .ui-widget-content .ui-widget-header{background:#8B5E3C;border-radius:0;height:3px;margin-top:-3px;position:absolute;top:50%}body.page-categories .ui-widget-content .slider-bg{background:#e3e3e3;height:3px;margin-top:-3px;position:absolute;top:50%;width:100%}body.page-categories .ui-widget-content .ui-slider-handle{background:#8B5E3C;border:none!important;border-radius:0;cursor:ew-resize;margin-left:0;outline:none!important;width:4px}.sidebar-widget{border-bottom:1px solid #e6e6e6;list-style:none;padding:0 0 1.4rem}.sidebar-widget li{line-height:24px;overflow:hidden;padding-bottom:.3rem;padding-top:.3rem;width:100%}.sidebar-widget li:last-of-type{border-bottom:none}.sidebar-widget li .category-href{color:#333;overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:calc(100% - 36px)}.sidebar-widget li.active>a{color:#8B5E3C;font-weight:700}.sidebar-widget ul{list-style:none;padding-left:12px}.sidebar-widget .toggle-icon{float:right;font-size:16px;height:24px;padding:0;text-align:center;width:24px}.sidebar-widget .toggle-icon i{color:#aaa}.sidebar-widget .toggle-icon.collapsed{transform:rotate(-180deg)}.filter-box .attribute-item .form-check-label{cursor:pointer}.filter-box .attribute-item .form-check-label:hover .form-check-input{border-color:#8B5E3C}.el-input__inner{border-radius:100px!important}@media (max-width:768px){.el-message-box{max-width:90%}}.el-dialog{border-radius:10px!important}.el-button{border-radius:10rem!important}body.page-order-success .order-wrap .card-body.main-body,body.page-payment .order-wrap .card-body.main-body{padding:3rem 3rem 3rem 7rem}@media (max-width:768px){body.page-order-success .order-wrap .card-body.main-body,body.page-payment .order-wrap .card-body.main-body{padding:1rem}}body.page-order-success .order-wrap .card-body .order-top,body.page-payment .order-wrap .card-body .order-top{display:flex;justify-content:center;margin-bottom:2.7rem;padding-bottom:2.7rem}body.page-order-success .order-wrap .card-body .order-top .left,body.page-payment .order-wrap .card-body .order-top .left{margin-top:-6px}@media (max-width:768px){body.page-order-success .order-wrap .card-body .order-top .left,body.page-payment .order-wrap .card-body .order-top .left{display:none}}body.page-order-success .order-wrap .card-body .order-top .left i,body.page-payment .order-wrap .card-body .order-top .left i{color:#4caf50;font-size:80px;line-height:1}body.page-order-success .order-wrap .card-body .order-top .right,body.page-payment .order-wrap .card-body .order-top .right{flex:1;margin-left:2rem}@media (max-width:768px){body.page-order-success .order-wrap .card-body .order-top .right,body.page-payment .order-wrap .card-body .order-top .right{margin:0}}body.page-order-success .order-wrap .card-body .order-top .right .table,body.page-payment .order-wrap .card-body .order-top .right .table{margin-bottom:0}body.page-order-success .order-wrap .card-body .order-top .right .order-title,body.page-payment .order-wrap .card-body .order-top .right .order-title{font-weight:400;margin-bottom:1.2rem}body.page-order-success .order-wrap .card-body .order-top .right .order-info,body.page-payment .order-wrap .card-body .order-top .right .order-info{background-color:#fffaf0;border:1px solid #ffe1ad;padding:.7rem}body.page-order-success .order-wrap .card-body .order-bottom,body.page-payment .order-wrap .card-body .order-bottom{line-height:2;margin-left:calc(2rem + 80px)}@media (max-width:768px){body.page-order-success .order-wrap .card-body .order-bottom,body.page-payment .order-wrap .card-body .order-bottom{margin:0}body.page-account-order-list .order-status-wrap li{flex:1;text-align:center}body.page-account-order-list .order-status-wrap{margin-bottom:14px}body.page-account-order-list .order-status-wrap .nav-link{padding-left:2px;padding-right:2px}}body.page-account-order-list .order-wrap .table .sep-row{height:20px}body.page-account-order-list .order-wrap .table .sep-row td{border:0}body.page-account-order-list .order-wrap .table .head-tr{background:#f5f5f5}body.page-account-order-list .order-wrap .table .head-tr td{border-bottom-color:#f5f5f5}body.page-account-order-list .order-wrap .table thead{background:#f5f5f5}body.page-account-order-list .order-wrap .table thead th{border:0;font-weight:500}body.page-account-order-list .order-wrap .table tbody td{border:1px solid #e5e5e5}body.page-account-order-list .order-wrap .table .product-info{align-items:center;display:flex}body.page-account-order-list .order-wrap .table .product-info .img{flex:0 0 60px;margin-right:10px}@media (max-width:768px){body.page-account-order-list .order-wrap .table .product-info .img{flex:0 0 50px;width:50px}body.page-account-order-list .order-wrap .table .product-info .name a{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;font-size:12px;overflow:hidden;text-overflow:ellipsis}}body.page-account-order-list .order-mb-wrap .order-mb-list{border-radius:4px}body.page-account-order-list .order-mb-wrap .header-wrapper{border-bottom:1px solid #eee;margin-bottom:12px;padding-bottom:10px}body.page-account-order-list .order-mb-wrap .footer-wrapper{border-top:1px solid #eee;margin-top:12px;padding-top:10px}body.page-account-order-info{background-color:#f7f8fa}body.page-account-order-info .product-list{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}body.page-account-order-info .product-list .left{flex:0 0 80px;margin-right:10px}body.page-account-order-info .product-list .right{color:#767676}@media (min-width:768px){body.page-account-order-info .product-list .right{font-size:.9375rem}}body.page-account-order-info .product-list .right .name{color:#1a1a1a;margin-bottom:.4rem}body.page-account-order-info .nowrap{white-space:nowrap}body.page-account-address .addresses-wrap .item,body.page-checkout .addresses-wrap .item{border:1px solid #e5e5e5;cursor:pointer;height:140px;margin-bottom:1.3rem;padding:14px;position:relative}@media (max-width:768px){body.page-account-address .addresses-wrap .item,body.page-checkout .addresses-wrap .item{height:auto;margin-bottom:.9rem;padding:10px}body.page-account-address .addresses-wrap .item.address-right,body.page-checkout .addresses-wrap .item.address-right{margin-bottom:0}}body.page-account-address .addresses-wrap .item:hover,body.page-checkout .addresses-wrap .item:hover{border-color:#222}body.page-account-address .addresses-wrap .item.active,body.page-checkout .addresses-wrap .item.active{border-left:none}body.page-account-address .addresses-wrap .item.active:before,body.page-checkout .addresses-wrap .item.active:before{background-color:#4991f4;background:repeating-linear-gradient(-45deg,#d60404,#d60404 10px,#fff 0,#fff 20px,#4991f4 0,#4991f4 30px,#fff 0,#fff 40px);content:"";height:calc(100% + 2px);left:0;position:absolute;top:-1px;width:4px}body.page-account-address .addresses-wrap .item .name-wrap,body.page-checkout .addresses-wrap .item .name-wrap{line-height:1;margin-bottom:.6rem}body.page-account-address .addresses-wrap .item .name-wrap .name,body.page-checkout .addresses-wrap .item .name-wrap .name{font-size:1rem;font-weight:700}body.page-account-address .addresses-wrap .item .name-wrap .phone,body.page-checkout .addresses-wrap .item .name-wrap .phone{color:#666;font-size:.8rem}body.page-account-address .addresses-wrap .item .zipcode,body.page-checkout .addresses-wrap .item .zipcode{margin-bottom:.3rem;min-height:20px}body.page-account-address .addresses-wrap .item .address-info,body.page-checkout .addresses-wrap .item .address-info{height:32px;line-height:1.3}body.page-account-address .addresses-wrap .item .address-bottom,body.page-checkout .addresses-wrap .item .address-bottom{align-items:center;display:flex;justify-content:space-between;min-height:28px}body.page-account-address .mobileWidth,body.page-checkout .mobileWidth{width:600px}@media (max-width:768px){body.page-account-address .mobileWidth,body.page-checkout .mobileWidth{width:95%}}body.page-account-address .dialog-address,body.page-checkout .dialog-address{display:block}@media (max-width:768px){body.page-account-address .dialog-address>div,body.page-checkout .dialog-address>div{width:100%}}@media (min-width:768px){body.page-account-address .dialog-address,body.page-checkout .dialog-address{display:flex}}body.page-brands .brand-item{align-items:center;box-shadow:0 6px 18px rgba(0,0,0,.07);display:flex;height:133px;justify-content:center;margin-bottom:10px;width:100%}body.page-brands .brand-item>img{max-height:100%}body.page-brands .brand-list li{list-style:none}body.page-brands .brand-list li a{color:#242424;text-decoration:none}body.page-brands .curser-list{cursor:pointer}@media (max-width:768px){body.page-brands .curser-list{display:block}body.page-brands .curser-list li{display:inline-block;margin-bottom:6px}body.page-brands .curser-list li+.list-group-item{border-left:1px solid #e4e4e4}}body.page-brands .curser-list>li>a{color:#242424;text-decoration:none;transition:all .3s}body.page-brands .curser-list>li>a:hover{background-color:#eee}body.page-brands .curser-list>li>a:active{background-color:#aaa}.modules-box .module-item{padding-bottom:12px;padding-top:12px;position:relative}@media (min-width:768px){.modules-box .module-item{padding-bottom:32px;padding-top:32px}}.modules-box .module-item:first-of-type{padding-top:0}.modules-box .module-item:last-of-type{padding-bottom:0}.modules-box .module-item.module-item-design.currently-editing:after{display:block;outline:2px solid #0072ff}.modules-box .module-item.module-item-design:hover:not(.currently-editing):after{display:block;outline:1px dashed #0072ff}.modules-box .module-item:after{border-radius:var(--bs-border-radius);bottom:2px;content:"";display:none;left:2px;position:absolute;right:2px;top:2px;z-index:9}.module-image-plus .module-image-plus-top{display:flex}.module-image-plus .module-image-plus-top .right{margin-left:20px}.module-image-plus .module-image-plus-bottom{margin-top:24px}.banner-magnify-hover .image-wrap{display:block;overflow:hidden}.banner-magnify-hover .image-wrap img{transition:.3s ease-in-out}.banner-magnify-hover .image-wrap:hover img{transform:rotate(6deg) scale(1.3)}.module-img-text-slideshow{--swiper-theme-color:#fff;--swiper-navigation-color:#fff;--swiper-pagination-bullet-width:60px;--swiper-pagination-bullet-height:4px;--swiper-pagination-bullet-inactive-opacity:1;overflow:hidden;position:relative}.module-img-text-slideshow .swiper-pagination-bullet{background-color:hsla(0,0%,100%,.4);border-radius:2px;overflow:hidden;position:relative}.module-img-text-slideshow .swiper-pagination-bullet span{background-color:#fff;height:100%;left:0;position:absolute;top:0;width:0}@media (min-width:992px){.module-img-text-slideshow .swiper-pagination{bottom:20px!important}}.module-img-text-slideshow .swiper-slide-active .image-wrap{transform:scale(1)}.module-img-text-slideshow .autoplay-progress{align-items:center;bottom:16px;color:var(--swiper-theme-color);display:flex;font-weight:700;height:48px;justify-content:center;position:absolute;right:16px;width:48px;z-index:10}.module-img-text-slideshow .autoplay-progress svg{--progress:0;stroke-width:4px;stroke:var(--swiper-theme-color);fill:none;stroke-dashoffset:calc(125.6px*(1 - var(--progress)));stroke-dasharray:125.6;height:100%;left:0;position:absolute;top:0;transform:rotate(-90deg);width:100%;z-index:10}.module-img-text-slideshow .content-wrap{display:flex}.module-img-text-slideshow .content-wrap.start{justify-content:flex-start}.module-img-text-slideshow .content-wrap.center{justify-content:center;text-align:center}.module-img-text-slideshow .content-wrap.center .text-wrap{max-width:800px}.module-img-text-slideshow .content-wrap.end{justify-content:flex-end;text-align:right}.module-img-text-slideshow .image-wrap{align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;height:330px;transform:scale(1.1732);transform-origin:center center;transition:transform 3s cubic-bezier(.23,1,.32,1)}@media (min-width:768px){.module-img-text-slideshow .image-wrap{height:600px}}@media (min-width:1200px){.module-img-text-slideshow .image-wrap{height:700px}}.module-img-text-slideshow .text-wrap{color:#fff;max-width:600px}@media (min-width:992px){.module-img-text-slideshow .text-wrap{margin-top:30px}}@media (max-width:992px){.module-img-text-slideshow .text-wrap{padding:30px 0}}.module-img-text-slideshow .text-wrap .sub-title{font-size:.8rem;margin-bottom:.8rem}@media (min-width:992px){.module-img-text-slideshow .text-wrap .sub-title{font-size:2rem}}.module-img-text-slideshow .text-wrap .title{color:#fff;font-size:1rem;margin-bottom:.7rem}@media (min-width:992px){.module-img-text-slideshow .text-wrap .title{font-size:3rem}}@media (min-width:1200px){.module-img-text-slideshow .text-wrap .title{font-size:4rem}}.module-img-text-slideshow .text-wrap .description{font-size:1rem}@media (min-width:992px){.module-img-text-slideshow .text-wrap .description{font-size:1.2rem;margin-bottom:2rem}}.module-img-text-slideshow .text-wrap a.btn{background-color:#fff;border:1px solid #222;font-size:.8rem;font-weight:700}.module-img-text-slideshow .text-wrap a.btn:hover{background-color:#222}@media (min-width:992px){.module-img-text-slideshow .text-wrap a.btn{margin-top:1.5rem;padding:1rem 2rem}}.module-swiper-img-scroll-text{font-size:20px;overflow:hidden;padding:36px 0;position:relative;width:100%}@media (max-width:768px){.module-swiper-img-scroll-text{font-size:14px!important;padding:16px 0!important}}.module-swiper-img-scroll-text .scroll-info{white-space:nowrap}.module-swiper-img-scroll-text .scroll-info .scroll-text{animation:marquee-animation2 3s linear infinite;display:inline-block;font-weight:700;padding:0 15px}@keyframes marquee-animation2{0%{transform:translate(0)}to{transform:translate(-100%)}}.module-img-text-slideshow-2{--swiper-theme-color:#fff;--swiper-navigation-color:#fff;--swiper-pagination-bullet-width:5px;--swiper-pagination-bullet-height:5px;--swiper-pagination-bullet-inactive-opacity:1;--swiper-pagination-bullet-horizontal-gap:12px;overflow:hidden;position:relative}.module-img-text-slideshow-2.w-container,.module-img-text-slideshow-2.w-container-fluid{border-radius:16px;overflow:hidden}.module-img-text-slideshow-2 .swiper-pagination-bullet{background-color:hsla(0,0%,100%,.6);position:relative}.module-img-text-slideshow-2 .swiper-pagination-bullet:after{border:1px solid #fff;border-radius:50%;content:"";height:24px;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);width:24px}.module-img-text-slideshow-2 .swiper-pagination-bullet-active{background-color:#fff}.module-img-text-slideshow-2 .swiper-pagination-bullet-active:after{opacity:1}@media (min-width:992px){.module-img-text-slideshow-2 .swiper-pagination{bottom:20px!important}}.module-img-text-slideshow-2 .swiper-slide-active .image-wrap{transform:scale(1)}.module-img-text-slideshow-2 .autoplay-progress{align-items:center;bottom:16px;color:var(--swiper-theme-color);display:flex;font-weight:700;height:48px;justify-content:center;position:absolute;right:16px;width:48px;z-index:10}.module-img-text-slideshow-2 .autoplay-progress svg{--progress:0;stroke-width:4px;stroke:var(--swiper-theme-color);fill:none;stroke-dashoffset:calc(125.6px*(1 - var(--progress)));stroke-dasharray:125.6;height:100%;left:0;position:absolute;top:0;transform:rotate(-90deg);width:100%;z-index:10}.module-img-text-slideshow-2 .content-wrap{display:flex}.module-img-text-slideshow-2 .content-wrap.start{justify-content:flex-start}.module-img-text-slideshow-2 .content-wrap.center{justify-content:center;text-align:center}.module-img-text-slideshow-2 .content-wrap.center .text-wrap{max-width:800px}.module-img-text-slideshow-2 .content-wrap.end{justify-content:flex-end;text-align:right}.module-img-text-slideshow-2 .image-text-wrap{align-items:center;display:flex;height:100%;left:0;position:absolute;top:0;width:100%}.module-img-text-slideshow-2 .image-wrap{transform:scale(1.1732);transition:transform 3s cubic-bezier(.23,1,.32,1)}.module-img-text-slideshow-2 .text-wrap{color:#fff;max-width:800px}@media (max-width:992px){.module-img-text-slideshow-2 .text-wrap{padding:30px 0}}.module-img-text-slideshow-2 .text-wrap .sub-title{font-size:.8rem;margin-bottom:.4rem}@media (min-width:992px){.module-img-text-slideshow-2 .text-wrap .sub-title{font-size:2rem;margin-bottom:.8rem}}.module-img-text-slideshow-2 .text-wrap .title{color:#fff;font-size:.9rem;margin-bottom:0}@media (min-width:992px){.module-img-text-slideshow-2 .text-wrap .title{font-size:3rem;margin-bottom:1.2rem}}.module-img-text-slideshow-2 .text-wrap .description{font-size:.8rem;margin-bottom:.8rem}@media (min-width:992px){.module-img-text-slideshow-2 .text-wrap .description{font-size:1.2rem;margin-bottom:2rem}}.module-img-text-slideshow-2 .text-wrap a.btn{background-color:#fff;font-size:.7rem;padding:.3rem .8rem}.module-img-text-slideshow-2 .text-wrap a.btn:hover{background-color:#222}@media (min-width:992px){.module-img-text-slideshow-2 .text-wrap a.btn{font-size:.8rem;font-weight:700;margin-top:1.5rem;padding:1rem 2rem}}.module-swiper-img-scroll-text-2{font-size:20px;overflow:hidden;padding:36px 0;position:relative;width:100%}@media (min-width:992px){.module-swiper-img-scroll-text-2{border-top:1px solid #e4e4e4}}@media (max-width:768px){.module-swiper-img-scroll-text-2{font-size:14px!important;padding:16px 0!important}}.module-swiper-img-scroll-text-2 .scroll-info{white-space:nowrap}.module-swiper-img-scroll-text-2 .scroll-info .scroll-text{animation:marquee-animation 3s linear infinite;display:inline-block;padding:0 35px;position:relative}.module-swiper-img-scroll-text-2 .scroll-info .scroll-text:after{background-color:#fff;content:"\f2ef";display:block;font-family:bootstrap-icons;font-size:8px;position:absolute;right:-5px;top:50%;transform:translateY(-50%)}@keyframes marquee-animation{0%{transform:translate(0)}to{transform:translate(-100%)}}@media (max-width:992px){.img-text-banner-wrap .img-wrap{margin:10px 0}}.img-text-banner-wrap .text-wrap{align-items:flex-start;display:flex;flex-direction:column;height:100%;justify-content:center}@media (min-width:1200px){.img-text-banner-wrap .text-wrap{padding:0 50px}}@media (max-width:992px){.img-text-banner-wrap .text-wrap{align-items:center}}.img-text-banner-wrap .text-wrap .title{margin-bottom:20px}@media (min-width:992px){.img-text-banner-wrap .text-wrap .title{font-size:34px}}.img-text-banner-wrap .text-wrap .description{line-height:1.7;margin-bottom:20px}@media (min-width:992px){.img-text-banner-wrap .text-wrap .description{font-size:15px;margin-bottom:30px}}.module-brand{font-size:15px}.module-brand .brand-item{align-items:center;border:1px solid #e2e2e2;border-radius:15px;display:flex;height:120px;justify-content:center;margin-bottom:10px;overflow:hidden;transition:all .3s ease-in-out}.module-brand .brand-item:hover{border:1px solid #8B5E3C;box-shadow:0 6px 18px rgba(0,0,0,.1)}.module-brand .brand-item>img{max-height:100%}.module-tab-product .module-title{margin-bottom:1rem}.module-tab-product .nav{margin-bottom:28px;margin-top:-10px}.module-tab-product .nav .nav-link{border-bottom:2px solid transparent;color:#969a9e;font-size:1.2rem;font-weight:700;margin:0 17px;padding:.3rem .2rem}@media (max-width:768px){.module-tab-product .nav .nav-link{font-size:13px;margin:0;padding:.2rem .7rem}}.module-tab-product .nav .nav-link{box-shadow:none}.module-tab-product .nav .nav-link:hover{border-color:#ddd}.module-tab-product .nav .nav-link.active{border-color:#111;color:#111}.swiper.module-slideshow{--swiper-theme-color:#f60;--swiper-navigation-color:#f60;--swiper-navigation-size:30px}.swiper.module-slideshow .swiper-button-next,.swiper.module-slideshow .swiper-button-prev{display:none}.swiper.module-slideshow:hover .swiper-button-next,.swiper.module-slideshow:hover .swiper-button-prev{display:block}.swiper-style-plus{position:relative}.swiper-style-plus .swiper-button-next,.swiper-style-plus .swiper-button-prev{color:#999;height:37px;width:34px}@media (max-width:768px){.swiper-style-plus .swiper-button-next,.swiper-style-plus .swiper-button-prev{display:none}}.swiper-style-plus .swiper-button-next:hover,.swiper-style-plus .swiper-button-prev:hover{color:#8B5E3C}.swiper-style-plus .swiper-button-next:after,.swiper-style-plus .swiper-button-prev:after{font-size:26px}.swiper-style-plus .swiper-button-prev{left:-40px}.swiper-style-plus .swiper-button-next{right:-40px}.swiper-style-plus .swiper-pagination .swiper-pagination-bullet-active{background:#8B5E3C}.swiper-style-plus .swiper-pagination.rectangle span{border-radius:0;height:3px}.pages-wrap{transition:all .3s ease-in-out}.pages-wrap:hover{box-shadow:0 10px 25px rgba(0,0,0,.15)}.pages-wrap:hover .page-info .pages-title a{color:#8B5E3C}.pages-wrap .image{border-radius:10px;margin-bottom:10px;overflow:hidden}.pages-wrap .image a{display:block}.pages-wrap .page-info{padding:0 5px 10px;transition:all .3s ease-in-out}.pages-wrap .pages-title{font-size:14px;font-weight:700;margin-bottom:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pages-wrap .pages-title a{color:#222;transition:all .3s ease-in-out}.pages-wrap .pages-summary{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#888;display:-webkit-box;height:40px;margin-bottom:10px;overflow:hidden;text-overflow:ellipsis}.design-image-301{clear:both;height:auto;overflow:hidden;position:relative;text-align:left;width:100%}.design-image-301>a{display:block;line-height:100%;position:relative;transition:all .2s ease-in-out 0s}.design-image-301>a:hover:before{background-color:rgba(0,0,0,.1);border:15px solid hsla(0,0%,100%,.5);opacity:1}.design-image-301>a:before{border:0 solid rgba(0,0,0,.3);bottom:0;box-sizing:border-box;content:"";left:0;opacity:0;overflow:visible;position:absolute;right:0;top:0;transition:all .2s ease-in-out 0s;z-index:9}.design-image-301>a:first-of-type{width:49%}.design-image-301>a:nth-of-type(2),.design-image-301>a:nth-of-type(3){position:absolute;right:0;width:49%}.design-image-301>a:nth-of-type(2){top:0}.design-image-301>a:nth-of-type(3){bottom:0!important}.module-image-402 .image-402-title{font-size:1.5rem;font-weight:700;margin-bottom:14px;text-align:center}.module-image-402 .image-402-sub-title{font-size:.9rem;margin-bottom:30px;text-align:center}@media (max-width:768px){.module-image-402 .image-402-sub-title{margin-bottom:10px}}.module-image-402 .module-image-info{margin:0 -10px}@media (max-width:768px){.module-image-402 .module-image-info{margin:0 -5px}}.module-image-402 .module-image-info>div{padding:0 10px}@media (max-width:768px){.module-image-402 .module-image-info>div{padding:0 5px}}.module-image-402 .module-image-info .image-402-1{grid-area:1/1/3/2}@media (max-width:768px){.module-image-402 .module-image-info .image-402-1{margin-bottom:10px}}.module-image-402 .module-image-info .image-402-2{grid-area:1/2/2/3}@media (max-width:768px){.module-image-402 .module-image-info .image-402-2{grid-area:3/1/4/2}}.module-image-402 .module-image-info .image-402-3{grid-area:2/2/3/3}@media (min-width:768px){.module-image-402 .module-image-info .image-402-3{margin-top:20px}}@media (max-width:768px){.module-image-402 .module-image-info .image-402-3{grid-area:1/2/2/3;margin-bottom:10px}}.module-image-402 .module-image-info .image-402-4{grid-area:1/3/3/4}@media (max-width:768px){.module-image-402 .module-image-info .image-402-4{grid-area:2/2/4/3}}.module-image-402 .image-wrap{border-radius:10px;overflow:hidden;position:relative}.module-image-402 .image-wrap .img-name{bottom:28px;display:flex;justify-content:center;left:0;position:absolute;width:100%}@media (max-width:768px){.module-image-402 .image-wrap .img-name{bottom:18px}}.module-image-402 .image-wrap .img-name span{background-color:#fff;border-radius:40px;box-shadow:0 5px 30px rgba(0,0,0,.1);color:#111;font-size:1rem;font-weight:700;padding:6px 10px}@media (max-width:768px){.module-image-402 .image-wrap .img-name span{font-size:.7rem}}.module-image-400 .image-402-title{font-size:1.5rem;font-weight:700;margin-bottom:14px;text-align:center}.module-image-400 .image-402-sub-title{font-size:.9rem;margin-bottom:30px;text-align:center}@media (max-width:768px){.module-image-400 .image-402-sub-title{margin-bottom:10px}}.module-image-400 .module-image-info{margin:0 -10px}@media (max-width:768px){.module-image-400 .module-image-info{margin:0 -5px}}.module-image-400 .module-image-info>div{padding:0 10px}@media (max-width:768px){.module-image-400 .module-image-info>div{padding:0 5px}}.module-image-400 .module-image-info .image-402-1{grid-area:1/1/3/2}@media (max-width:768px){.module-image-400 .module-image-info .image-402-1{margin-bottom:10px}}.module-image-400 .module-image-info .image-402-2{grid-area:1/2/2/3}@media (max-width:768px){.module-image-400 .module-image-info .image-402-2{grid-area:3/1/4/2}}.module-image-400 .module-image-info .image-402-3{grid-area:2/2/3/3}@media (min-width:768px){.module-image-400 .module-image-info .image-402-3{margin-top:20px}}@media (max-width:768px){.module-image-400 .module-image-info .image-402-3{grid-area:1/2/2/3;margin-bottom:10px}}.module-image-400 .module-image-info .image-402-4{grid-area:1/3/3/4}@media (max-width:768px){.module-image-400 .module-image-info .image-402-4{grid-area:2/2/4/3}}.module-image-400 .image-wrap{border-radius:10px;overflow:hidden;position:relative}.module-image-400 .image-wrap .img-name{bottom:28px;display:flex;justify-content:center;left:0;position:absolute;width:100%}@media (max-width:768px){.module-image-400 .image-wrap .img-name{bottom:18px}}.module-image-400 .image-wrap .img-name span{background-color:#fff;border-radius:40px;box-shadow:0 5px 30px rgba(0,0,0,.1);color:#111;font-size:1rem;font-weight:700;padding:6px 10px}@media (max-width:768px){.module-image-400 .image-wrap .img-name span{font-size:.7rem}}.module-image-403 .image-wrap{border-radius:10px;color:#fff;position:relative}.module-image-403 .image-wrap:after{background:linear-gradient(180deg,transparent 70%,rgba(0,0,0,.2));bottom:0;content:"";height:100%;left:0;position:absolute;width:100%;z-index:8}.module-image-403 .image-wrap .title{bottom:13%;font-size:18px;font-weight:700;left:10%;position:absolute;white-space:nowrap;z-index:9}@media (min-width:1200px){.module-image-403 .image-wrap .title{font-size:28px}}.module-image-403 .image-wrap .sub-title{bottom:6%;left:10%;position:absolute;white-space:nowrap;z-index:9}@media (min-width:1200px){.module-image-403 .image-wrap .sub-title{font-size:16px}}.module-icons .image-item{border-radius:50%;overflow:hidden}@media (min-width:768px){.module-icons .title{font-size:1rem;font-weight:700}}.module-img-text-banner-multiple .image-wrap{position:relative}.module-img-text-banner-multiple .image-wrap .image-item{border-radius:14px;overflow:hidden}.module-img-text-banner-multiple .image-wrap .text-wrap{color:#fff;left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);width:100%}.module-img-text-banner-multiple .image-wrap .text-wrap .text-title{font-size:1rem;font-weight:700}@media (min-width:768px){.module-img-text-banner-multiple .image-wrap .text-wrap .text-title{font-size:2.4rem}}.module-img-text-banner-multiple .image-wrap .text-wrap .text-sub-title{font-size:.7rem;margin-bottom:6px}@media (min-width:768px){.module-img-text-banner-multiple .image-wrap .text-wrap .text-sub-title{font-size:1rem;font-weight:700;margin-bottom:16px}}.module-img-text-banner-multiple .image-wrap .text-wrap .btn{background-color:#fff;color:#111;font-weight:700}.module-img-text-banner-multiple .image-wrap .text-wrap .btn:hover{background-color:#222;color:#fff}@media (max-width:768px){.module-img-text-banner-multiple .image-wrap .text-wrap .btn{display:none}}@media (min-width:768px){.module-img-text-banner-multiple .image-wrap .text-wrap .btn{border-radius:100px;font-size:15px;margin-top:30px;padding:14px 30px}}

/**
 * SOULBREWS — Design Tokens
 * COFFEE · WINE · AROMA
 *
 * 本文件为品牌唯一变量源。
 * 观感约束：温暖、通透、克制留白；不使用渐变、玻璃拟态、发光或大投影。
 */

:root {
  /* ---------- Color ---------- */
  --surface-cream: #FAF8F4;
  --surface-raised: #FFFFFF;
  --ink: #101010;
  --ink-soft: #4A463F;
  --brand-brown: #8B5E3C;
  --brand-brown-hover: #744E30;
  --bronze-gold: #A9784F;
  --border-muted: #E4DED3;
  --success: #3E7A4E;
  --error: #C05B4F;
  --disabled: #C9C4BA;

  /* 派生色（仅由上述 token 派生，不引入新色相） */
  --brand-brown-soft: rgba(139, 94, 60, 0.08);
  --brand-brown-ring: rgba(139, 94, 60, 0.18);
  --bronze-gold-soft: rgba(169, 120, 79, 0.12);
  --ink-veil: rgba(16, 16, 16, 0.04);
  --overlay: rgba(16, 16, 16, 0.45);
  --surface-sunken: #F5F2EC;

  /* ---------- Typography ---------- */
  --font-heading: 'Playfair Display', Georgia, 'Times New Roman', serif;
  --font-body: Inter, -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;

  --fs-h1: 56px;    --lh-h1: 64px;
  --fs-h2: 40px;    --lh-h2: 48px;
  --fs-h3: 28px;    --lh-h3: 36px;
  --fs-body: 16px;  --lh-body: 26px;
  --fs-small: 14px; --lh-small: 20px;
  --fs-caption: 12px; --lh-caption: 16px;

  --ls-heading: -0.01em;
  --ls-label: 0.18em;

  --fw-bold: 700;
  --fw-semibold: 600;
  --fw-medium: 500;
  --fw-regular: 400;

  /* ---------- Spacing (4px base) ---------- */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --space-24: 96px;

  /* ---------- Layout ---------- */
  --container-max: 1200px;
  --gutter: 24px;
  --gutter-mobile: 16px;
  --section-pad-y: 96px;
  --section-pad-y-sm: 64px;

  /* ---------- Radius ---------- */
  --radius-control: 8px;
  --radius-image: 8px;
  --radius-card: 8px;
  --radius-pill: 999px;

  /* ---------- Border / Shadow ---------- */
  --border-default: 1px solid var(--border-muted);
  --border-focus: 2px solid var(--bronze-gold);
  --shadow-card: 0 4px 16px rgba(16, 16, 16, 0.06);
  --shadow-card-hover: 0 8px 24px rgba(16, 16, 16, 0.08);

  /* ---------- Motion ---------- */
  --ease: cubic-bezier(0.2, 0, 0.2, 1);
  --dur: 220ms;

  /* =========================================================
     Bootstrap 5 变量映射
     让默认主题的结构类自动继承品牌色，无需逐个覆盖
     ========================================================= */
  --bs-primary: #8B5E3C;
  --bs-primary-rgb: 139, 94, 60;
  --bs-body-color: #101010;
  --bs-body-color-rgb: 16, 16, 16;
  --bs-body-bg: #FFFFFF;
  --bs-body-font-family: var(--font-body);
  --bs-body-font-size: 16px;
  --bs-body-line-height: 1.6;
  --bs-border-color: #E4DED3;
  --bs-border-radius: 8px;
  --bs-border-radius-sm: 8px;
  --bs-border-radius-lg: 8px;
  --bs-border-radius-xl: 8px;
  --bs-link-color: #8B5E3C;
  --bs-link-color-rgb: 139, 94, 60;
  --bs-link-hover-color: #744E30;
  --bs-link-hover-color-rgb: 116, 78, 48;
  --bs-emphasis-color: #101010;
  --bs-secondary-color: #4A463F;
  --bs-secondary-color-rgb: 74, 70, 63;
  --bs-heading-color: #101010;
  --bs-font-sans-serif: var(--font-body);
  --bs-box-shadow-sm: 0 4px 16px rgba(16, 16, 16, 0.06);
  --bs-focus-ring-color: rgba(169, 120, 79, 0.35);
}

/* 品牌断点字号收敛（移动端不出现 56px 标题） */
@media (max-width: 992px) {
  :root {
    --fs-h1: 36px; --lh-h1: 44px;
    --fs-h2: 28px; --lh-h2: 36px;
    --fs-h3: 22px; --lh-h3: 30px;
    --section-pad-y: 64px;
    --section-pad-y-sm: 48px;
  }
}

/* 圆角变量补全：确保 .rounded-* 工具类统一收敛到 8px */
:root {
  --bs-border-radius-xxl: 8px;
  --bs-border-radius-2xl: 8px;
}

/**
 * SOULBREWS — Base Layer
 * 排版、容器、通用工具类、状态规范
 */

/* ---------- 字体 ---------- */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: local('Playfair Display');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: local('Inter');
}

* {
  -webkit-tap-highlight-color: transparent;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--font-body);
  font-size: var(--fs-body);
  line-height: 1.6;
  color: var(--ink);
  background-color: var(--surface-raised);
  font-weight: var(--fw-regular);
  letter-spacing: 0;
}

/* 页面默认底色改为米白，卡片用纯白 */
body:not(.page-home) {
  background-color: var(--surface-cream);
}

/* ---------- 标题 ---------- */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--font-heading);
  color: var(--ink);
  letter-spacing: var(--ls-heading);
  font-weight: var(--fw-semibold);
  margin-bottom: var(--space-4);
}

h1, .h1 { font-size: var(--fs-h1); line-height: var(--lh-h1); font-weight: var(--fw-bold); }
h2, .h2 { font-size: var(--fs-h2); line-height: var(--lh-h2); font-weight: var(--fw-semibold); }
h3, .h3 { font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: var(--fw-medium); }
h4, .h4 { font-size: 22px; line-height: 30px; font-weight: var(--fw-medium); }
h5, .h5 { font-size: 18px; line-height: 26px; font-weight: var(--fw-medium); }
h6, .h6 { font-size: 16px; line-height: 24px; font-weight: var(--fw-semibold); }

b, strong { font-weight: var(--fw-semibold); color: var(--ink); }

p { margin-bottom: var(--space-4); }

a {
  color: var(--brand-brown);
  text-decoration: none;
  transition: color var(--dur) var(--ease);
}

a:hover { color: var(--brand-brown-hover); }

/* ---------- 品牌标签（宽字距大写） ---------- */
.sb-eyebrow,
.sb-label {
  font-family: var(--font-body);
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--bronze-gold);
  font-weight: var(--fw-medium);
  display: inline-block;
}

.sb-label--ink { color: var(--ink-soft); }

/* 标题下的细分割线（古铜金，短） */
.sb-rule {
  width: 48px;
  height: 1px;
  background: var(--bronze-gold);
  border: none;
  opacity: 1;
  margin: var(--space-4) 0;
}

.sb-rule--center { margin-left: auto; margin-right: auto; }

/* ---------- 容器 ---------- */
.sb-container {
  width: 100%;
  max-width: var(--container-max);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}

@media (max-width: 768px) {
  .sb-container {
    padding-left: var(--gutter-mobile);
    padding-right: var(--gutter-mobile);
  }
}

/* 区块纵向节奏 64–96px */
.sb-section {
  padding-top: var(--section-pad-y);
  padding-bottom: var(--section-pad-y);
}

.sb-section--sm {
  padding-top: var(--section-pad-y-sm);
  padding-bottom: var(--section-pad-y-sm);
}

.sb-section--cream { background-color: var(--surface-cream); }
.sb-section--raised { background-color: var(--surface-raised); }

/* ---------- 文本工具 ---------- */
.text-muted,
.text-secondary { color: var(--ink-soft) !important; }

.text-ink { color: var(--ink) !important; }
.text-gold { color: var(--bronze-gold) !important; }
.text-brown { color: var(--brand-brown) !important; }
.text-success { color: var(--success) !important; }
.text-error,
.text-danger { color: var(--error) !important; }

.fs-caption { font-size: var(--fs-caption); line-height: var(--lh-caption); }
.fs-small { font-size: var(--fs-small); line-height: var(--lh-small); }
.font-heading { font-family: var(--font-heading); }

/* ---------- 页面主体留白 ---------- */
.sb-page {
  padding-top: var(--space-8);
  padding-bottom: var(--space-16);
}

/* ---------- 面包屑 ---------- */
.breadcrumb-wrap {
  background-color: var(--surface-cream);
  border-bottom: var(--border-default);
  margin-bottom: var(--space-8);
  padding: var(--space-4) 0;
}

body[class^="page-account"] .breadcrumb-wrap,
body.page-account .breadcrumb-wrap {
  background-color: var(--surface-cream);
}

.breadcrumb {
  margin-bottom: 0;
  font-size: var(--fs-small);
  line-height: var(--lh-small);
  background: transparent;
}

.breadcrumb .breadcrumb-item {
  color: var(--ink-soft);
}

.breadcrumb .breadcrumb-item a {
  color: var(--ink-soft);
}

.breadcrumb .breadcrumb-item a:hover {
  color: var(--brand-brown);
}

.breadcrumb .breadcrumb-item.active {
  color: var(--ink);
}

.breadcrumb-item + .breadcrumb-item::before {
  content: '/';
  color: var(--disabled);
  padding-right: var(--space-2);
}

/* ---------- 可见焦点环（可访问性） ---------- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.btn:focus-visible,
[tabindex]:focus-visible,
.form-control:focus-visible,
.form-select:focus-visible {
  outline: var(--border-focus);
  outline-offset: 2px;
  box-shadow: none;
}

/* ---------- 空状态 ---------- */
.sb-empty {
  text-align: center;
  padding: var(--space-16) var(--space-6);
  color: var(--ink-soft);
}

.sb-empty .sb-empty-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto var(--space-6);
  color: var(--bronze-gold);
  opacity: 0.7;
}

.sb-empty .sb-empty-icon svg {
  width: 100%;
  height: 100%;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.5;
}

.sb-empty .sb-empty-title {
  font-family: var(--font-heading);
  font-size: 22px;
  line-height: 30px;
  color: var(--ink);
  margin-bottom: var(--space-2);
}

.sb-empty .sb-empty-text {
  font-size: var(--fs-small);
  margin-bottom: var(--space-6);
  max-width: 420px;
  margin-left: auto;
  margin-right: auto;
}

/* ---------- 加载中（细环 spinner） ---------- */
.sb-spinner {
  width: 24px;
  height: 24px;
  border: 2px solid var(--border-muted);
  border-top-color: var(--brand-brown);
  border-radius: 50%;
  animation: sb-spin 700ms linear infinite;
  display: inline-block;
}

.sb-spinner--sm { width: 16px; height: 16px; border-width: 1.5px; }
.sb-spinner--lg { width: 36px; height: 36px; }

@keyframes sb-spin {
  to { transform: rotate(360deg); }
}

.sb-loading-veil {
  position: relative;
  min-height: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ---------- 通用工具 ---------- */
.rounded-control { border-radius: var(--radius-control) !important; }
.rounded-image { border-radius: var(--radius-image) !important; }
.rounded-pill-brand { border-radius: var(--radius-pill) !important; }

.border-muted { border-color: var(--border-muted) !important; }

.sb-divider {
  height: 1px;
  background: var(--border-muted);
  border: 0;
  opacity: 1;
  margin: var(--space-6) 0;
}

/* 图片统一 8px 圆角、无多余投影 */
img { border-radius: 0; }
.sb-img-rounded img,
.rounded-image img { border-radius: var(--radius-image); }

/* 滚动条（克制） */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--surface-cream); }
::-webkit-scrollbar-thumb {
  background: var(--disabled);
  border-radius: var(--radius-pill);
  border: 2px solid var(--surface-cream);
}
::-webkit-scrollbar-thumb:hover { background: var(--ink-soft); }

/* 选中文字 */
::selection {
  background: var(--bronze-gold-soft);
  color: var(--ink);
}

/* =========================================================
   容器收敛到 1200px（规范：容器最大宽 1200px，左右页边 24px / 移动 16px）
   本层位于 bootstrap.css 之后，等特异性即可覆盖其断点默认值
   ========================================================= */
.container,
.container-sm,
.container-md,
.container-lg,
.container-xl,
.container-xxl {
  max-width: var(--container-max) !important;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}

.container-fluid {
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}

@media (max-width: 768px) {
  .container,
  .container-sm,
  .container-md,
  .container-lg,
  .container-xl,
  .container-xxl,
  .container-fluid {
    padding-left: var(--gutter-mobile);
    padding-right: var(--gutter-mobile);
  }
}

/* 图片始终 8px 圆角（规范：图片 8px） */
.card img,
.sb-card img,
.module-item img,
.account-content img {
  border-radius: var(--radius-image);
}

/* 页面级语义标题（编辑风小标题） */
.sb-heading-sm {
  font-family: var(--font-heading);
  font-size: 22px;
  line-height: 30px;
  font-weight: var(--fw-medium);
  color: var(--ink);
  letter-spacing: var(--ls-heading);
}

.sb-heading-xs {
  font-family: var(--font-heading);
  font-size: 18px;
  line-height: 26px;
  font-weight: var(--fw-medium);
  color: var(--ink);
}

/**
 * SOULBREWS — Components Layer
 * 按钮 / 表单 / 卡片 / 标签 / 分页 / 提示 / 弹层 / 数量 / 步骤
 * 状态规范：Hover · Focus · Selected · Disabled · Loading · Empty · Error
 */

/* =========================================================
   按钮
   主按钮：暖棕底白字 · 8px 圆角 · 12px 24px
   副按钮：米白底 · 1px 暖棕描边 · 暖棕文字
   ========================================================= */
.btn {
  --bs-btn-border-radius: var(--radius-control);
  --bs-btn-padding-x: var(--space-6);
  --bs-btn-padding-y: var(--space-3);
  --bs-btn-font-family: var(--font-body);
  --bs-btn-font-size: var(--fs-small);
  --bs-btn-font-weight: var(--fw-medium);
  border-radius: var(--radius-control);
  padding: var(--space-3) var(--space-6);
  font-size: var(--fs-small);
  line-height: 20px;
  font-weight: var(--fw-medium);
  letter-spacing: 0.02em;
  transition: background-color var(--dur) var(--ease),
              border-color var(--dur) var(--ease),
              color var(--dur) var(--ease),
              transform var(--dur) var(--ease);
  box-shadow: none !important;
}

.btn:active,
.btn.active {
  transform: translateY(1px);
}

.btn-lg {
  padding: var(--space-4) var(--space-8);
  font-size: var(--fs-body);
  line-height: 24px;
}

.btn-sm {
  padding: var(--space-2) var(--space-4);
  font-size: var(--fs-caption);
  line-height: 16px;
}

/* 主按钮 */
.btn-primary,
.btn-dark,
.btn-success,
.btn-warning,
.btn-info,
.btn-danger {
  border-color: var(--brand-brown);
  background-color: var(--brand-brown);
  color: #FFFFFF;
}

.btn-primary:hover,
.btn-dark:hover,
.btn-success:hover,
.btn-warning:hover,
.btn-info:hover,
.btn-danger:hover,
.btn-primary:focus,
.btn-dark:focus {
  border-color: var(--brand-brown-hover);
  background-color: var(--brand-brown-hover);
  color: #FFFFFF;
}

.btn-primary:active,
.btn-dark:active,
.btn-success:active,
.btn-warning:active,
.btn-info:active,
.btn-danger:active {
  border-color: var(--brand-brown-hover) !important;
  background-color: var(--brand-brown-hover) !important;
  color: #FFFFFF !important;
}

.btn-success {
  border-color: var(--success);
  background-color: var(--success);
}

.btn-danger {
  border-color: var(--error);
  background-color: var(--error);
}

/* 副按钮（描边） */
.btn-outline-primary,
.btn-outline-dark,
.btn-outline-secondary,
.btn-secondary,
.btn-light {
  border: 1px solid var(--brand-brown);
  background-color: var(--surface-raised);
  color: var(--brand-brown);
}

.btn-outline-primary:hover,
.btn-outline-dark:hover,
.btn-outline-secondary:hover,
.btn-secondary:hover,
.btn-light:hover {
  border-color: var(--brand-brown);
  background-color: var(--brand-brown-soft);
  color: var(--brand-brown-hover);
}

.btn-light {
  border-color: var(--border-muted);
  color: var(--ink);
}

.btn-light:hover {
  border-color: var(--border-muted);
  background-color: var(--surface-cream);
  color: var(--ink);
}

/* 幽灵按钮（无描边） */
.btn-link,
.btn-ghost {
  color: var(--ink-soft);
  text-decoration: none;
  padding-left: var(--space-2);
  padding-right: var(--space-2);
}

.btn-link:hover,
.btn-ghost:hover {
  color: var(--brand-brown);
  text-decoration: none;
}

/* 禁用态 */
.btn:disabled,
.btn.disabled,
.btn[disabled] {
  border-color: var(--disabled) !important;
  background-color: var(--disabled) !important;
  color: #FFFFFF !important;
  opacity: 1;
  cursor: not-allowed;
  transform: none;
}

.btn-outline-primary:disabled,
.btn-outline-dark:disabled {
  border-color: var(--disabled) !important;
  background-color: transparent !important;
  color: var(--disabled) !important;
}

/* 加载态 */
.btn.is-loading {
  position: relative;
  color: transparent !important;
  pointer-events: none;
}

.btn.is-loading::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 16px;
  margin: -8px 0 0 -8px;
  border: 2px solid rgba(255, 255, 255, 0.4);
  border-top-color: #FFFFFF;
  border-radius: 50%;
  animation: sb-spin 700ms linear infinite;
}

/* 按钮组 */
.btn-group > .btn {
  border-radius: 0;
}

.btn-group > .btn:first-child { border-top-left-radius: var(--radius-control); border-bottom-left-radius: var(--radius-control); }
.btn-group > .btn:last-child { border-top-right-radius: var(--radius-control); border-bottom-right-radius: var(--radius-control); }

/* =========================================================
   表单
   输入框：白底 · --border-muted 描边 · Focus 2px 古铜金
   ========================================================= */
.form-control,
.form-select,
.input-group-text,
.el-input__inner,
.el-textarea__inner,
select.form-control {
  border: 1px solid var(--border-muted);
  border-radius: var(--radius-control);
  background-color: var(--surface-raised);
  color: var(--ink);
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: var(--lh-small);
  padding: 10px var(--space-4);
  box-shadow: none;
  transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}

.form-control::placeholder,
.el-input__inner::placeholder {
  color: var(--ink-soft);
  opacity: 0.6;
}

.form-control:focus,
.form-select:focus,
.el-input__inner:focus,
.el-textarea__inner:focus {
  border: 1px solid var(--bronze-gold);
  box-shadow: 0 0 0 1px var(--bronze-gold);
  background-color: var(--surface-raised);
  color: var(--ink);
}

.form-control:disabled,
.form-control[readonly],
.form-select:disabled,
.el-input.is-disabled .el-input__inner {
  background-color: var(--surface-cream);
  border-color: var(--border-muted);
  color: var(--disabled);
  cursor: not-allowed;
}

.form-control.is-invalid,
.form-select.is-invalid,
.el-form-item.is-error .el-input__inner {
  border-color: var(--error);
}

.form-control.is-invalid:focus,
.form-select.is-invalid:focus {
  box-shadow: 0 0 0 1px var(--error);
}

.invalid-feedback,
.el-form-item__error {
  color: var(--error);
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  margin-top: var(--space-1);
}

.form-label,
.col-form-label,
.el-form-item__label {
  font-size: var(--fs-small);
  line-height: var(--lh-small);
  color: var(--ink);
  font-weight: var(--fw-medium);
  margin-bottom: var(--space-2);
}

.form-text,
.el-form-item__label--desc {
  color: var(--ink-soft);
  font-size: var(--fs-caption);
}

/* 勾选 / 单选 */
.form-check-input {
  border-color: var(--border-muted);
  background-color: var(--surface-raised);
  width: 18px;
  height: 18px;
  margin-top: 3px;
}

.form-check-input:checked {
  background-color: var(--brand-brown);
  border-color: var(--brand-brown);
}

.form-check-input:focus {
  border-color: var(--bronze-gold);
  box-shadow: 0 0 0 2px var(--bronze-gold-soft);
}

.form-check-input:disabled {
  background-color: var(--surface-cream);
  border-color: var(--disabled);
}

.form-check-label {
  font-size: var(--fs-small);
  color: var(--ink-soft);
}

/* 输入框组 */
.input-group > .form-control:not(:first-child),
.input-group > .form-select:not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; }
.input-group > .form-control:not(:last-child),
.input-group > .form-select:not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.input-group-text {
  background-color: var(--surface-cream);
  color: var(--ink-soft);
}

/* =========================================================
   卡片
   白底 / 8px 圆角 / 细描边
   ========================================================= */
.card,
.sb-card {
  background-color: var(--surface-raised);
  border: var(--border-default);
  border-radius: var(--radius-card);
  box-shadow: none;
  transition: box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease);
}

.card:hover {
  box-shadow: var(--shadow-card);
}

.card-header,
.card-footer {
  background-color: var(--surface-raised);
  border-color: var(--border-muted);
  padding: var(--space-4) var(--space-6);
  font-weight: var(--fw-medium);
}

.card-body { padding: var(--space-6); }

.card-title {
  font-family: var(--font-heading);
  color: var(--ink);
  margin-bottom: var(--space-2);
}

/* =========================================================
   标签 / 徽章
   ========================================================= */
.badge {
  border-radius: var(--radius-pill);
  font-family: var(--font-body);
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  font-weight: var(--fw-medium);
  letter-spacing: 0.06em;
  padding: 3px 10px;
  text-transform: uppercase;
}

.badge.bg-primary,
.badge.bg-dark,
.badge.bg-danger,
.badge.bg-success {
  background-color: var(--brand-brown) !important;
  color: #FFFFFF;
}

.badge.bg-secondary {
  background-color: var(--surface-sunken) !important;
  color: var(--ink-soft);
}

.badge.bg-light {
  background-color: var(--surface-cream) !important;
  color: var(--ink-soft) !important;
  border: var(--border-default);
}

.badge.bg-success { background-color: var(--success) !important; }
.badge.bg-danger,
.badge.bg-warning { background-color: var(--error) !important; }

/* 品牌标签胶囊 */
.sb-tag {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  border-radius: var(--radius-pill);
  border: var(--border-default);
  background: var(--surface-raised);
  color: var(--ink-soft);
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 5px 12px;
}

.sb-tag--gold { border-color: var(--bronze-gold); color: var(--bronze-gold); }
.sb-tag--solid { background: var(--brand-brown); border-color: var(--brand-brown); color: #FFFFFF; }

/* =========================================================
   下拉菜单
   ========================================================= */
.dropdown-menu {
  border: var(--border-default);
  border-radius: var(--radius-control);
  box-shadow: var(--shadow-card);
  padding: var(--space-2) 0;
  font-size: var(--fs-small);
  min-width: 168px;
}

.dropdown-item {
  padding: var(--space-2) var(--space-4);
  color: var(--ink-soft);
  transition: background-color var(--dur) var(--ease), color var(--dur) var(--ease);
}

.dropdown-item:hover,
.dropdown-item:focus {
  background-color: var(--brand-brown-soft);
  color: var(--brand-brown);
}

.dropdown-item.active,
.dropdown-item:active {
  background-color: var(--brand-brown);
  color: #FFFFFF;
}

.dropdown-divider {
  border-color: var(--border-muted);
  opacity: 1;
  margin: var(--space-2) 0;
}

/* =========================================================
   分页
   ========================================================= */
.pagination {
  gap: var(--space-1);
  margin-bottom: 0;
}

.page-link {
  border: var(--border-default);
  border-radius: var(--radius-control);
  color: var(--ink-soft);
  background-color: var(--surface-raised);
  min-width: 40px;
  text-align: center;
  font-size: var(--fs-small);
  line-height: 24px;
  padding: var(--space-2) var(--space-3);
  transition: all var(--dur) var(--ease);
}

.page-link:hover {
  border-color: var(--brand-brown);
  background-color: var(--brand-brown-soft);
  color: var(--brand-brown);
}

.page-item.active .page-link {
  border-color: var(--brand-brown);
  background-color: var(--brand-brown);
  color: #FFFFFF;
}

.page-item.disabled .page-link {
  border-color: var(--border-muted);
  background-color: var(--surface-cream);
  color: var(--disabled);
}

/* =========================================================
   提示条
   ========================================================= */
.alert {
  border: var(--border-default);
  border-radius: var(--radius-control);
  background-color: var(--surface-raised);
  color: var(--ink);
  font-size: var(--fs-small);
  padding: var(--space-3) var(--space-4);
}

.alert-success { border-color: var(--success); color: var(--success); background: rgba(62, 122, 78, 0.06); }
.alert-danger,
.alert-error { border-color: var(--error); color: var(--error); background: rgba(192, 91, 79, 0.06); }
.alert-warning { border-color: var(--bronze-gold); color: var(--bronze-gold); background: var(--bronze-gold-soft); }
.alert-info { border-color: var(--border-muted); color: var(--ink-soft); background: var(--surface-cream); }

/* =========================================================
   Tabs
   ========================================================= */
.nav-tabs {
  border-bottom: var(--border-default);
  gap: var(--space-6);
}

.nav-tabs .nav-link {
  border: none;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  color: var(--ink-soft);
  font-size: var(--fs-small);
  font-weight: var(--fw-medium);
  padding: var(--space-3) 0;
  transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}

.nav-tabs .nav-link:hover {
  border-color: transparent;
  color: var(--brand-brown);
}

.nav-tabs .nav-link.active {
  background: transparent;
  border-color: var(--brand-brown);
  color: var(--ink);
  font-weight: var(--fw-semibold);
}

/* =========================================================
   弹层
   ========================================================= */
.modal-content {
  border: var(--border-default);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
  background-color: var(--surface-raised);
}

.modal-header,
.modal-footer {
  border-color: var(--border-muted);
  padding: var(--space-4) var(--space-6);
}

.modal-title {
  font-family: var(--font-heading);
  font-size: 20px;
  line-height: 28px;
}

.modal-backdrop.show { opacity: 0.35; background-color: var(--ink); }

/* Element UI 弹窗收敛到品牌观感 */
.el-dialog,
.el-message-box {
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
  border: var(--border-default);
}

.el-dialog__title,
.el-message-box__title {
  font-family: var(--font-heading);
  color: var(--ink);
  font-weight: var(--fw-medium);
}

.el-button--primary {
  background-color: var(--brand-brown);
  border-color: var(--brand-brown);
  border-radius: var(--radius-control);
}

.el-button--primary:hover,
.el-button--primary:focus {
  background-color: var(--brand-brown-hover);
  border-color: var(--brand-brown-hover);
}

.el-button {
  border-radius: var(--radius-control);
}

.el-select .el-input.is-focus .el-input__inner,
.el-select .el-input__inner:focus {
  border-color: var(--bronze-gold);
}

.el-select-dropdown__item.selected { color: var(--brand-brown); }
.el-select-dropdown { border-radius: var(--radius-control); border-color: var(--border-muted); }
.el-pager li.active { color: var(--brand-brown); }
.el-loading-spinner .path { stroke: var(--brand-brown); }

/* Layer 弹窗 */
.layui-layer {
  border-radius: var(--radius-card) !important;
  box-shadow: var(--shadow-card) !important;
  border: var(--border-default) !important;
}

.layui-layer-title {
  border-bottom: var(--border-default) !important;
  background-color: var(--surface-raised) !important;
  font-family: var(--font-heading);
  color: var(--ink) !important;
}

/* =========================================================
   数量选择器
   ========================================================= */
.quantity-wrap {
  width: 132px;
  height: 44px;
  border: var(--border-default);
  border-radius: var(--radius-control);
  overflow: hidden;
  background-color: var(--surface-raised);
}

.quantity-wrap .btn {
  border: none;
  border-radius: 0;
  background-color: transparent;
  color: var(--ink-soft);
  padding: 0;
  width: 42px;
  height: 100%;
  font-size: 16px;
  line-height: 1;
  flex: 0 0 42px;
}

.quantity-wrap .btn:hover {
  background-color: var(--surface-cream);
  color: var(--brand-brown);
}

.quantity-wrap .btn:active {
  background-color: var(--brand-brown-soft) !important;
}

.quantity-wrap input {
  border: none;
  border-left: var(--border-default);
  border-right: var(--border-default);
  border-radius: 0;
  background-color: transparent !important;
  color: var(--ink);
  font-weight: var(--fw-medium);
  padding: 0;
  height: 100%;
  text-align: center;
}

.quantity-wrap input:focus { box-shadow: none; }

/* =========================================================
   步骤条（结算流程）
   ========================================================= */
.steps-wrap::before {
  border-bottom: 1px solid var(--border-muted) !important;
}

.steps-wrap > div .number {
  border: 1px solid var(--border-muted) !important;
  background-color: var(--surface-raised) !important;
  color: var(--ink-soft);
  font-size: var(--fs-small);
  border-radius: 50% !important;
}

.steps-wrap > div.active .number {
  background-color: var(--brand-brown) !important;
  border-color: var(--brand-brown) !important;
  color: #FFFFFF !important;
}

.steps-wrap > div.active .title {
  color: var(--ink) !important;
  font-weight: var(--fw-medium);
}

.steps-wrap > div .title {
  color: var(--ink-soft) !important;
  font-size: var(--fs-small);
}

/* =========================================================
   Offcanvas
   ========================================================= */
.offcanvas {
  background-color: var(--surface-raised);
}

.offcanvas-header {
  border-bottom: var(--border-default);
  padding: var(--space-4) var(--space-6);
}

.offcanvas-title {
  font-family: var(--font-heading);
  font-size: 20px;
  line-height: 28px;
  color: var(--ink);
}

/* =========================================================
   分隔与表格
   ========================================================= */
.table {
  color: var(--ink);
  border-color: var(--border-muted);
  font-size: var(--fs-small);
}

.table > :not(caption) > * > * {
  border-bottom-color: var(--border-muted);
  padding: var(--space-3) var(--space-4);
}

.table > thead {
  color: var(--ink-soft);
  font-size: var(--fs-caption);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.table-hover > tbody > tr:hover > * {
  background-color: var(--surface-cream);
}

/**
 * SOULBREWS — Layout Layer
 * 页眉 / 导航 / 搜索面板 / 购物车侧栏 / 移动菜单 / 账户侧栏 / 页脚
 */

/* =========================================================
   页眉
   ========================================================= */
header {
  background: var(--surface-raised);
}

/* 顶部细信息条：米白底 + 下细线，弱化存在感 */
header .top-wrap {
  height: 40px;
  background: var(--surface-cream);
  border-bottom: var(--border-default);
  color: var(--ink-soft);
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  letter-spacing: 0.06em;
}

header .top-wrap .container,
header .top-wrap .container-fluid {
  max-width: var(--container-max);
}

header .top-wrap .dropdown:hover { background-color: transparent; }

header .top-wrap .dropdown-toggle,
header .top-wrap .btn {
  color: var(--ink-soft);
  font-size: var(--fs-caption);
  letter-spacing: 0.06em;
  padding: var(--space-1) var(--space-2);
  border-radius: var(--radius-control);
  text-transform: uppercase;
}

header .top-wrap .dropdown-toggle:hover {
  color: var(--brand-brown);
}

header .top-wrap .dropdown-menu {
  border: var(--border-default);
  box-shadow: var(--shadow-card);
  margin-top: 0;
}

header .top-wrap .right .nav,
header .top-wrap .right {
  color: var(--ink-soft);
  font-size: var(--fs-caption);
  letter-spacing: 0.06em;
}

/* 主导航区 */
header .header-content {
  background-color: var(--surface-raised);
  border-bottom: var(--border-default);
  padding: var(--space-6) 0;
  transition: padding var(--dur) var(--ease), background-color var(--dur) var(--ease);
}

body:not(.page-home) header .header-content {
  border-bottom: var(--border-default);
}

header .header-content.fixed {
  background-color: rgba(255, 255, 255, 0.96);
  backdrop-filter: none;
  border-bottom: var(--border-default);
  box-shadow: 0 1px 0 rgba(16, 16, 16, 0.04);
  padding: var(--space-3) 0;
}

header .header-content > .container,
header .header-content > .container-fluid {
  max-width: var(--container-max);
}

/* Logo：唯一身份锚点，不重绘不变形 */
header .logo img {
  max-width: 220px;
  max-height: 52px;
  object-fit: contain;
}

/* 导航项：宽字距大写，暖棕下划线 */
header .menu-wrap > .navbar-nav > .nav-item > .nav-link {
  font-family: var(--font-body);
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--ink);
  font-weight: var(--fw-medium);
  padding: var(--space-4) var(--space-4);
  position: relative;
}

header .menu-wrap > .navbar-nav > .nav-item > .nav-link::after {
  content: '';
  position: absolute;
  left: var(--space-4);
  right: var(--space-4);
  bottom: calc(var(--space-4) - 6px);
  height: 1px;
  background: var(--bronze-gold);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform var(--dur) var(--ease);
}

header .menu-wrap > .navbar-nav > .nav-item:hover > .nav-link,
header .menu-wrap > .navbar-nav > .nav-item > .nav-link.active {
  color: var(--brand-brown);
}

header .menu-wrap > .navbar-nav > .nav-item:hover > .nav-link::after,
header .menu-wrap > .navbar-nav > .nav-item > .nav-link.active::after {
  transform: scaleX(1);
}

header .header-content .nav-item:hover > a { color: var(--brand-brown); }

header .menu-wrap .group-name {
  font-size: var(--fs-caption);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink);
  font-weight: var(--fw-medium);
}

header .menu-wrap .ul-children a {
  color: var(--ink-soft);
  font-size: var(--fs-small);
}

header .menu-wrap .ul-children a:hover { color: var(--brand-brown); }

/* 导航下拉：细描边 + 极浅投影，不用大投影 */
header .header-content .dropdown .dropdown-menu {
  border: var(--border-default);
  border-radius: var(--radius-control);
  box-shadow: var(--shadow-card);
  padding: var(--space-4) 0;
}

/* 头部图标区 */
header .header-content .right-btn .nav-link {
  color: var(--ink);
  padding: 0 var(--space-2);
  display: inline-flex;
  align-items: center;
  height: 32px;
  transition: color var(--dur) var(--ease);
}

header .header-content .right-btn .nav-link:hover { color: var(--brand-brown); }

header .header-content .right-btn .nav-link img {
  width: 20px;
  height: 20px;
  opacity: 0.85;
  filter: none;
}

header .header-content .right-btn .nav-link:hover img { opacity: 1; }

header .header-content .right-btn .navbar-nav {
  gap: var(--space-2);
  align-items: center;
}

/* 购物车角标：古铜金，收敛尺寸 */
header .cart-badge-quantity {
  position: absolute;
  top: -4px;
  left: auto;
  right: -2px;
  width: 18px;
  height: 18px;
  line-height: 18px;
  font-size: 11px;
  zoom: 1;
  background-color: var(--bronze-gold);
  color: #FFFFFF;
  border-radius: var(--radius-pill);
  font-weight: var(--fw-medium);
  text-align: center;
}

/* 移动端页眉 */
header .header-mobile {
  background-color: var(--surface-raised);
  border-bottom: var(--border-default);
}

header .header-mobile.fixed {
  background-color: rgba(255, 255, 255, 0.97);
  border-bottom: var(--border-default);
  box-shadow: 0 1px 0 rgba(16, 16, 16, 0.04);
}

header .header-mobile .mobile-content {
  padding: var(--space-3) var(--gutter-mobile);
  min-height: 56px;
}

header .header-mobile .mobile-content .center a img {
  max-height: 32px;
}

header .header-mobile .mobile-content .left > div > i,
header .header-mobile .mobile-content .right .nav-link i {
  color: var(--ink);
}

header .header-mobile .mobile-content .right .m-cart .cart-badge-quantity {
  left: auto;
  right: -6px;
  top: -6px;
  width: 16px;
  height: 16px;
  line-height: 16px;
  font-size: 10px;
}

/* =========================================================
   搜索面板
   ========================================================= */
#offcanvas-search-top {
  background-color: var(--surface-raised);
}

#offcanvas-search-top .offcanvas-header {
  border-bottom: var(--border-default);
}

#offcanvas-search-top .search-input-wrap input {
  border: 1px solid var(--border-muted);
  border-radius: var(--radius-control);
  height: 52px;
  padding-left: var(--space-4);
  font-size: var(--fs-body);
}

#offcanvas-search-top .search-input-wrap input:focus {
  border-color: var(--bronze-gold);
  box-shadow: 0 0 0 1px var(--bronze-gold);
}

#offcanvas-search-top .search-input-wrap .input-group-text {
  color: var(--ink-soft);
  right: var(--space-2);
}

#offcanvas-search-top .search-input-wrap .input-group-text:hover { color: var(--brand-brown); }

#offcanvas-search-top .hot-search-wrap .hot-search-list { gap: var(--space-2); }

#offcanvas-search-top .hot-search-wrap .hot-search-list a,
#offcanvas-search-top .hot-search-wrap .hot-search-list .sb-tag {
  border: var(--border-default);
  border-radius: var(--radius-pill);
  background: var(--surface-cream);
  color: var(--ink-soft);
  font-size: var(--fs-caption);
  padding: 6px 14px;
  transition: all var(--dur) var(--ease);
}

#offcanvas-search-top .hot-search-wrap .hot-search-list a:hover,
#offcanvas-search-top .hot-search-wrap .hot-search-list .sb-tag:hover {
  border-color: var(--bronze-gold);
  color: var(--brand-brown);
  background: var(--bronze-gold-soft);
}

#offcanvas-search-top .search-pop-products-wrap.loading {
  background-color: var(--surface-cream);
  border-radius: var(--radius-card);
}

#offcanvas-search-top .search-pop-products-wrap .spinner-border {
  color: var(--brand-brown) !important;
  border-color: var(--border-muted);
  border-top-color: var(--brand-brown);
}

#offcanvas-search-top .search-pop-products-show-all .btn {
  border-radius: var(--radius-control);
  background-color: var(--brand-brown);
  border-color: var(--brand-brown);
  color: #FFFFFF;
  min-width: 140px;
}

#offcanvas-search-top .btn-close {
  opacity: 0.5;
  border-radius: var(--radius-control);
}

#offcanvas-search-top .btn-close:hover {
  opacity: 1;
  background-color: var(--surface-cream);
}

/* =========================================================
   购物车侧栏
   ========================================================= */
#offcanvas-right-cart .offcanvas-header { border-bottom: var(--border-default); }

#offcanvas-right-cart .select-wrap i { color: var(--disabled); font-size: 18px; }
#offcanvas-right-cart .select-wrap i.bi-check-circle-fill { color: var(--brand-brown); }

#offcanvas-right-cart .offcanvas-right-products .product-list {
  border-top: var(--border-default);
  padding: var(--space-4) 0;
  gap: var(--space-4);
}

#offcanvas-right-cart .offcanvas-right-products .product-list .left {
  border: var(--border-default);
  border-radius: var(--radius-image);
  overflow: hidden;
  width: 72px;
  flex: 0 0 72px;
  height: 72px;
}

#offcanvas-right-cart .offcanvas-right-products .product-list .left img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#offcanvas-right-cart .offcanvas-right-products .product-list .right .name {
  font-size: var(--fs-small);
  color: var(--ink);
  line-height: var(--lh-small);
}

#offcanvas-right-cart .offcanvas-right-products .product-list .right .price {
  color: var(--brand-brown);
  font-weight: var(--fw-medium);
}

#offcanvas-right-cart .offcanvas-right-products .product-list .right .offcanvas-products-delete {
  color: var(--disabled);
}

#offcanvas-right-cart .offcanvas-right-products .product-list .right .offcanvas-products-delete:hover {
  color: var(--error);
}

#offcanvas-right-cart .offcanvas-footer {
  border-top: var(--border-default);
  padding: var(--space-4) var(--space-6);
}

/* =========================================================
   移动端菜单
   ========================================================= */
#offcanvas-mobile-menu { background-color: var(--surface-raised); }

#offcanvas-mobile-menu .offcanvas-header { border-bottom: var(--border-default); }

#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion {
  border-top: var(--border-default);
}

#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item {
  border-bottom: var(--border-default);
}

#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text > a {
  color: var(--ink);
  font-size: var(--fs-small);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: var(--fw-medium);
}

#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text > span {
  border-left: var(--border-default);
  color: var(--ink-soft);
}

#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text > span[aria-expanded="true"],
#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item .nav-item-text > span:active {
  background-color: var(--brand-brown-soft);
  color: var(--brand-brown);
}

#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item > .accordion-collapse {
  border-top: var(--border-default);
  background-color: var(--surface-cream);
}

#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item > .accordion-collapse .nav a {
  color: var(--ink-soft);
}

#offcanvas-mobile-menu .mobile-menu-wrap #menu-accordion .accordion-item > .accordion-collapse .nav a:hover {
  color: var(--brand-brown);
}

/* =========================================================
   账户侧栏
   ========================================================= */
.account-sides-info {
  border: var(--border-default);
  border-radius: var(--radius-card);
  background-color: var(--surface-raised);
  overflow: hidden;
}

.account-sides-info .head {
  background-color: var(--surface-cream);
  border-bottom: var(--border-default);
  border-radius: 0;
}

.account-sides-info .head .portrait {
  border: 1px solid var(--border-muted);
  box-shadow: none;
  border-radius: 50%;
}

.account-sides-info .head .account-name {
  font-family: var(--font-heading);
  font-size: 18px;
  line-height: 26px;
  color: var(--ink);
  font-weight: var(--fw-medium);
}

.account-sides-info .head .account-email {
  color: var(--ink-soft);
  font-size: var(--fs-caption);
}

.account-sides-info .mb-header { border-bottom: var(--border-default); }

.account-sides-info .account-links > a {
  border: none;
  border-bottom: var(--border-default);
  border-left: 2px solid transparent;
  color: var(--ink-soft);
  font-weight: var(--fw-regular);
  font-size: var(--fs-small);
  padding: var(--space-3) var(--space-4);
  transition: all var(--dur) var(--ease);
}

.account-sides-info .account-links > a:hover {
  background-color: var(--surface-cream);
  color: var(--brand-brown);
}

.account-sides-info .account-links > a.active {
  background-color: var(--brand-brown-soft);
  border-left-color: var(--brand-brown);
  color: var(--brand-brown);
  font-weight: var(--fw-medium);
}

/* =========================================================
   页脚
   ========================================================= */
footer {
  background: var(--surface-cream);
  border-top: var(--border-default);
  margin-top: var(--space-16);
  color: var(--ink-soft);
}

@media (min-width: 768px) {
  footer { margin-top: var(--space-24); }
}

footer .container-fluid {
  max-width: var(--container-max);
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}

/* 服务承诺条 */
footer .services-wrap {
  border-bottom: var(--border-default);
  padding: var(--space-8) 0;
}

footer .services-wrap .service-item .icon img {
  width: 32px;
  height: 32px;
  object-fit: contain;
  opacity: 0.85;
}

footer .services-wrap .service-item .title {
  font-size: var(--fs-small);
  line-height: var(--lh-small);
  color: var(--ink);
  font-weight: var(--fw-medium);
  letter-spacing: 0.04em;
  margin-bottom: var(--space-1);
}

footer .services-wrap .service-item .sub-title {
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  color: var(--ink-soft);
}

/* 主体链接区 */
footer .footer-content { padding: var(--space-16) 0; }

footer .footer-content a {
  color: var(--ink-soft);
  font-size: var(--fs-small);
  transition: color var(--dur) var(--ease);
}

footer .footer-content a:hover { color: var(--brand-brown); }

footer .footer-content .logo img {
  max-width: 220px;
  margin-bottom: var(--space-4);
}

footer .footer-content .text {
  color: var(--ink-soft);
  font-size: var(--fs-small);
  line-height: 1.7;
  max-width: 320px;
}

footer .footer-content h6 {
  font-family: var(--font-body);
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--ink);
  font-weight: var(--fw-medium);
  margin-bottom: var(--space-6);
}

footer .footer-content h6 .icon-open {
  color: var(--bronze-gold);
  font-weight: var(--fw-regular);
}

footer .footer-content ul.list-unstyled li {
  font-size: var(--fs-small);
  margin-bottom: var(--space-3);
}

footer .footer-content .social-network {
  gap: var(--space-3);
  margin-top: var(--space-6);
}

footer .footer-content .social-network > a {
  width: 36px;
  height: 36px;
  border: var(--border-default);
  border-radius: var(--radius-pill);
  background-color: var(--surface-raised);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--dur) var(--ease);
  margin-right: 0;
}

footer .footer-content .social-network > a:hover {
  border-color: var(--bronze-gold);
  background-color: var(--bronze-gold-soft);
  transform: none;
}

footer .footer-content .social-network > a img {
  width: 16px;
  height: 16px;
  opacity: 0.75;
}

footer .footer-content .footer-link-wrap.active .icon-open i::before {
  content: "\F63B";
}

footer .footer-content .footer-link-wrap ul.list-unstyled,
footer .footer-content .footer-link-wrap .intro-wrap {
  color: var(--ink-soft);
}

/* 版权条 */
footer .footer-bottom {
  border-top: var(--border-default);
  padding: var(--space-6) 0;
  color: var(--ink-soft);
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  min-height: 64px;
}

footer .footer-bottom .copyright-content {
  color: var(--ink-soft);
  letter-spacing: 0.02em;
}

footer .footer-bottom .copyright-content p { margin-bottom: 0; }

footer .footer-bottom .right-img img {
  max-height: 32px;
  object-fit: contain;
  opacity: 0.85;
}

/* 移动端折叠态 */
@media (max-width: 768px) {
  footer .services-wrap { padding: var(--space-4) 0; }

  footer .footer-content { padding: var(--space-6) 0; }

  footer .footer-content h6 {
    padding: var(--space-3) 0;
    margin-bottom: 0;
    border-bottom: var(--border-default);
  }

  footer .footer-content .footer-link-wrap { border-bottom: none; }

  footer .footer-content .footer-link-wrap.active h6 {
    border-bottom-color: transparent;
  }

  footer .footer-bottom { text-align: center; }

  footer .footer-bottom .d-lg-flex { flex-direction: column; }
}

/* =========================================================
   品牌点缀
   ========================================================= */

/* 页眉品牌标语 */
.sb-brand-tagline {
  color: var(--bronze-gold);
  font-size: 11px;
  white-space: nowrap;
}

/* 页脚联系方式图标：线性化，古铜金 */
footer .footer-content-contact li i,
footer .footer-content-contact li .bi {
  color: var(--bronze-gold);
  font-size: 13px;
}

/* 账户侧栏图标：统一古铜金，未激活为墨色 */
.account-sides-info .account-links > a .icon,
.account-sides-info .account-links > a svg {
  color: var(--ink-soft);
  width: 16px;
  height: 16px;
  fill: currentColor;
  transition: color var(--dur) var(--ease);
}

.account-sides-info .account-links > a:hover .icon,
.account-sides-info .account-links > a:hover svg {
  color: var(--bronze-gold);
}

.account-sides-info .account-links > a.active .icon,
.account-sides-info .account-links > a.active svg {
  color: var(--brand-brown);
}

/* 线性图标基调：1.5px 描边，古铜金 */
.sb-icon {
  color: var(--bronze-gold);
  stroke: currentColor;
  fill: none;
  stroke-width: 1.5;
}

/* 页眉图标：墨色线性 */
header .right-btn .nav-link .bi {
  color: var(--ink);
  font-size: 18px;
  transition: color var(--dur) var(--ease);
}

header .right-btn .nav-link:hover .bi { color: var(--brand-brown); }

/* 顶部信息条链接 */
header .top-wrap a { color: var(--ink-soft); }
header .top-wrap a:hover { color: var(--brand-brown); }

@media (max-width: 768px) {
  footer .footer-content-contact li { font-size: var(--fs-small); }
}

/* =========================================================
   线性图标（规范：1.5px 描边，统一古铜金或墨色，不使用面性图标）
   ========================================================= */
.sb-line-icon {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  color: inherit;
  transition: color var(--dur) var(--ease);
}

.sb-line-icon--sm { width: 16px; height: 16px; flex: 0 0 16px; }
.sb-line-icon--lg { width: 28px; height: 28px; flex: 0 0 28px; }

/* 页眉功能图标：默认墨色，悬停暖棕 */
header .right-btn .nav-link .sb-line-icon {
  color: var(--ink);
}

header .right-btn .nav-link:hover .sb-line-icon {
  color: var(--brand-brown);
}

header .header-mobile .sb-line-icon {
  color: var(--ink);
}

header .header-mobile .mobile-open-menu:active .sb-line-icon,
header .header-mobile .mobile-open-search:active .sb-line-icon,
header .header-mobile .nav-link:active .sb-line-icon {
  color: var(--brand-brown);
}

/* 顶部信息条电话图标 */
header .top-wrap .sb-line-icon {
  color: var(--bronze-gold);
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
}

/* =========================================================
   线性图标（规范：1.5px 描边，统一古铜金或墨色，不使用面性图标）
   ========================================================= */
.sb-line-icon {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  color: inherit;
  transition: color var(--dur) var(--ease);
}

.sb-line-icon--sm { width: 16px; height: 16px; flex: 0 0 16px; }
.sb-line-icon--lg { width: 28px; height: 28px; flex: 0 0 28px; }

/* 页眉功能图标：默认墨色，悬停暖棕 */
header .right-btn .nav-link .sb-line-icon {
  color: var(--ink);
}

header .right-btn .nav-link:hover .sb-line-icon {
  color: var(--brand-brown);
}

header .header-mobile .sb-line-icon {
  color: var(--ink);
}

header .header-mobile .mobile-open-menu:active .sb-line-icon,
header .header-mobile .mobile-open-search:active .sb-line-icon,
header .header-mobile .nav-link:active .sb-line-icon {
  color: var(--brand-brown);
}

/* 顶部信息条电话图标 */
header .top-wrap .sb-line-icon {
  color: var(--bronze-gold);
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
}

/**
 * SOULBREWS — Pages Layer
 * 首页模块 / 商品列表与详情 / 购物车 / 结算 / 登录注册 / 会员中心 / 静态页 / 错误页
 */

/* =========================================================
   首页模块通用
   ========================================================= */
.modules-box {
  background-color: var(--surface-raised);
}

.module-item {
  position: relative;
}

.module-item .module-info {
  padding: var(--section-pad-y) 0;
}

.module-item .module-info > .container,
.module-item .module-info > .container-fluid {
  max-width: var(--container-max);
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}

@media (max-width: 768px) {
  .module-item .module-info {
    padding: var(--section-pad-y-sm) 0;
  }

  .module-item .module-info > .container-fluid {
    padding-left: var(--gutter-mobile);
    padding-right: var(--gutter-mobile);
  }
}

/* 模块标题：Playfair 居中 + 古铜金短分割线（替代波浪线） */
.module-title {
  font-family: var(--font-heading);
  font-size: var(--fs-h2);
  line-height: var(--lh-h2);
  font-weight: var(--fw-semibold);
  letter-spacing: var(--ls-heading);
  color: var(--ink);
  text-align: center;
  margin-bottom: var(--space-4);
  padding-bottom: 0;
  overflow: visible;
}

/* 波浪装饰线隐藏，改为 48px 古铜金细线 */
.module-title .wave-line {
  display: block;
  width: 48px;
  height: 1px;
  background: var(--bronze-gold);
  margin: var(--space-4) auto 0;
  overflow: visible;
  animation: none;
}

.module-title .wave-line::after {
  content: none;
  animation: none;
}

.module-sub-title {
  font-family: var(--font-body);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  color: var(--ink-soft);
  text-align: center;
  max-width: 620px;
  margin: var(--space-3) auto var(--space-12);
}

.module-division img {
  width: 96px;
  opacity: 0.9;
}

@media (max-width: 992px) {
  .module-title {
    font-size: var(--fs-h3);
    line-height: var(--lh-h3);
  }

  .module-sub-title {
    margin-bottom: var(--space-8);
  }
}

/* 首页首屏后的第一屏给足呼吸感 */
.page-home .modules-box > .module-item:first-child .module-info {
  padding-top: 0;
}

/* =========================================================
   轮播
   ========================================================= */
.module-slideshow img,
.module-slideshow video {
  width: 100%;
  height: auto;
  display: block;
}

.module-slideshow {
  border-radius: 0;
  overflow: hidden;
}

.module-slideshow .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: var(--surface-raised);
  opacity: 0.6;
  border: 1px solid rgba(16, 16, 16, 0.18);
}

.module-slideshow .swiper-pagination-bullet-active {
  background: var(--brand-brown);
  opacity: 1;
  border-color: var(--brand-brown);
}

.module-slideshow .swiper-button-prev,
.module-slideshow .swiper-button-next {
  width: 44px;
  height: 44px;
  background-color: rgba(255, 255, 255, 0.9);
  border: var(--border-default);
  border-radius: var(--radius-pill);
  color: var(--ink);
  transition: all var(--dur) var(--ease);
}

.module-slideshow .swiper-button-prev:hover,
.module-slideshow .swiper-button-next:hover {
  background-color: var(--surface-raised);
  border-color: var(--bronze-gold);
  color: var(--brand-brown);
}

.module-slideshow .swiper-button-prev::after,
.module-slideshow .swiper-button-next::after {
  font-size: 14px;
  font-weight: var(--fw-bold);
}

/* =========================================================
   商品卡片（全站通用）
   ========================================================= */
.product-wrap {
  background-color: var(--surface-raised);
  border: var(--border-default);
  border-radius: var(--radius-card);
  padding: var(--space-4);
  text-align: left;
  transition: box-shadow var(--dur) var(--ease), border-color var(--dur) var(--ease);
  height: 100%;
  display: flex;
  flex-direction: column;
}

.product-wrap:hover {
  border-color: var(--border-muted);
  box-shadow: var(--shadow-card);
}

.product-wrap .image {
  border-radius: var(--radius-image);
  overflow: hidden;
  margin-bottom: var(--space-4);
  background-color: var(--surface-cream);
  position: relative;
}

.product-wrap .image > a {
  display: block;
  aspect-ratio: 4 / 3;
}

.product-wrap .image > a img,
.product-wrap .image .image-after {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.product-wrap .image .image-after {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity var(--dur) var(--ease);
}

/* 悬浮遮罩按钮组：改为底部内联操作条，不用黑色浮层 */
.product-wrap .image .button-wrap {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  opacity: 0;
  transform: translateY(100%);
  display: flex;
  gap: 1px;
  background-color: transparent;
  transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease);
  z-index: 40;
}

.product-wrap .image .button-wrap button {
  background-color: rgba(255, 255, 255, 0.96);
  color: var(--ink);
  border: none;
  border-top: var(--border-default);
  border-radius: 0;
  font-weight: var(--fw-medium);
  font-size: var(--fs-caption);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: var(--space-3) var(--space-2);
  flex: 1;
  backdrop-filter: none;
  transition: all var(--dur) var(--ease);
}

.product-wrap .image .button-wrap button:hover {
  background-color: var(--brand-brown);
  color: #FFFFFF;
}

.product-wrap .image .button-wrap .btn-wishlist,
.product-wrap .image .button-wrap .btn-quick-view {
  flex: 0 0 44px;
}

.product-wrap .product-bottom-info { padding: 0; }

.product-wrap .product-name {
  font-family: var(--font-body);
  font-size: var(--fs-small);
  line-height: var(--lh-small);
  font-weight: var(--fw-medium);
  color: var(--ink);
  margin-bottom: var(--space-2);
  height: auto;
  min-height: 40px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.product-wrap .product-name a { color: var(--ink); }
.product-wrap .product-name a:hover { color: var(--brand-brown); }

.product-wrap .product-price {
  margin-top: auto;
  display: flex;
  align-items: baseline;
  gap: var(--space-2);
}

.product-wrap .product-price .price-new {
  font-family: var(--font-body);
  font-size: var(--fs-body);
  line-height: 24px;
  font-weight: var(--fw-semibold);
  color: var(--brand-brown);
}

.product-wrap .product-price .price-old {
  font-size: var(--fs-caption);
  color: var(--disabled);
  text-decoration: line-through;
  margin-left: 0;
}

@media (min-width: 768px) {
  .product-wrap:hover .image > a .image-after { opacity: 1; }
  .product-wrap:hover .image .button-wrap {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 992px) {
  .product-wrap { padding: var(--space-3); }
  .product-wrap .image .button-wrap { display: none; }
  .product-wrap .product-name { min-height: 38px; }
}

/* 列表视图（横向） */
.product-wrap.list {
  flex-direction: row;
  align-items: stretch;
  padding: var(--space-4);
}

.product-wrap.list .image {
  flex: 0 0 140px;
  margin-bottom: 0;
  margin-right: var(--space-4);
}

@media (min-width: 768px) {
  .product-wrap.list .image { flex: 0 0 220px; }
}

.product-wrap.list .product-bottom-info {
  padding: 0;
  text-align: left;
}

.product-list-wrap .col-12:not(:last-of-type) .product-wrap {
  border-bottom: var(--border-default);
  padding-bottom: var(--space-4);
  margin-bottom: var(--space-4);
}

/* =========================================================
   商品列表 / 分类 / 搜索页
   ========================================================= */
.page-categories .page-content,
.page-search .page-content {
  padding-top: var(--space-8);
  padding-bottom: var(--space-16);
}

/* 筛选栏 */
.filter-bar,
.filter_bar_block,
.breadcrumb-filter {
  background-color: var(--surface-raised);
  border: var(--border-default);
  border-radius: var(--radius-card);
  padding: var(--space-3) var(--space-4);
  margin-bottom: var(--space-6);
}

.filter-bar .nav-link,
.breadcrumb-filter .nav-link {
  color: var(--ink-soft);
  font-size: var(--fs-small);
  border-radius: var(--radius-control);
  padding: var(--space-2) var(--space-3);
  transition: all var(--dur) var(--ease);
}

.filter-bar .nav-link:hover,
.breadcrumb-filter .nav-link:hover { color: var(--brand-brown); background: var(--brand-brown-soft); }

.filter-bar .nav-link.active,
.breadcrumb-filter .nav-link.active {
  color: var(--brand-brown);
  background: var(--brand-brown-soft);
  font-weight: var(--fw-medium);
}

.breadcrumb-filter .mb-filter { color: var(--ink); }

/* 筛选侧栏 */
.filter-sidebar,
.filter_sidebar_block {
  background-color: var(--surface-raised);
  border: var(--border-default);
  border-radius: var(--radius-card);
  padding: var(--space-6);
}

.filter-sidebar .filter-group-title,
.filter_sidebar_block .filter-group-title {
  font-size: var(--fs-caption);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--ink);
  font-weight: var(--fw-medium);
  margin-bottom: var(--space-4);
  padding-bottom: var(--space-3);
  border-bottom: var(--border-default);
}

.filter-sidebar .form-check-label,
.filter_sidebar_block .form-check-label {
  color: var(--ink-soft);
  cursor: pointer;
}

.filter-sidebar .form-check-label:hover,
.filter_sidebar_block .form-check-label:hover { color: var(--brand-brown); }

/* 排序下拉 */
.sort-select .form-select,
.page-content .form-select {
  border: var(--border-default);
  border-radius: var(--radius-control);
  font-size: var(--fs-small);
  color: var(--ink-soft);
  padding: var(--space-2) var(--space-6) var(--space-2) var(--space-3);
}

/* =========================================================
   商品详情页
   ========================================================= */
.page-product .page-content {
  padding-top: var(--space-8);
  padding-bottom: var(--space-16);
}

.product-detail-wrap .product-images,
.product-images-wrap {
  border-radius: var(--radius-image);
  overflow: hidden;
  background-color: var(--surface-cream);
}

.product-images-wrap img,
.product-images img {
  border-radius: var(--radius-image);
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* 缩略图 */
.product-images-thumbs,
.thumbs-wrap {
  display: flex;
  gap: var(--space-2);
  margin-top: var(--space-3);
  flex-wrap: wrap;
}

.product-images-thumbs .thumb,
.thumbs-wrap .thumb {
  width: 72px;
  height: 72px;
  border: var(--border-default);
  border-radius: var(--radius-image);
  overflow: hidden;
  cursor: pointer;
  transition: border-color var(--dur) var(--ease);
  background-color: var(--surface-raised);
}

.product-images-thumbs .thumb:hover,
.thumbs-wrap .thumb:hover { border-color: var(--bronze-gold); }

.product-images-thumbs .thumb.active,
.thumbs-wrap .thumb.active { border: 2px solid var(--bronze-gold); }

.product-images-thumbs .thumb img,
.thumbs-wrap .thumb img { width: 100%; height: 100%; object-fit: cover; }

/* 详情信息区 */
.product-info-wrap .product-title,
.product-detail-wrap h1 {
  font-family: var(--font-heading);
  font-size: var(--fs-h3);
  line-height: var(--lh-h3);
  font-weight: var(--fw-medium);
  color: var(--ink);
  letter-spacing: var(--ls-heading);
  margin-bottom: var(--space-4);
}

.product-info-wrap .product-price,
.product-detail-price {
  display: flex;
  align-items: baseline;
  gap: var(--space-3);
  padding: var(--space-4) 0;
  border-top: var(--border-default);
  border-bottom: var(--border-default);
  margin-bottom: var(--space-6);
}

.product-info-wrap .product-price .price-new,
.product-detail-price .price-new {
  font-family: var(--font-heading);
  font-size: var(--fs-h3);
  line-height: var(--lh-h3);
  font-weight: var(--fw-semibold);
  color: var(--brand-brown);
}

.product-info-wrap .product-price .price-old,
.product-detail-price .price-old {
  font-size: var(--fs-small);
  color: var(--disabled);
  text-decoration: line-through;
}

/* 规格选择：选中态暖棕填充 */
.product-variants .variant-label,
.product-options .option-name {
  font-size: var(--fs-caption);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ink-soft);
  margin-bottom: var(--space-2);
}

.product-variants .variant-item,
.product-options .option-item {
  border: var(--border-default);
  border-radius: var(--radius-control);
  background-color: var(--surface-raised);
  color: var(--ink);
  font-size: var(--fs-small);
  padding: var(--space-2) var(--space-4);
  transition: all var(--dur) var(--ease);
  cursor: pointer;
}

.product-variants .variant-item:hover,
.product-options .option-item:hover {
  border-color: var(--bronze-gold);
  color: var(--brand-brown);
}

.product-variants .variant-item.active,
.product-variants .variant-item.selected,
.product-options .option-item.active,
.product-options .option-item.selected {
  border-color: var(--brand-brown);
  background-color: var(--brand-brown);
  color: #FFFFFF;
}

.product-variants .variant-item.disabled,
.product-options .option-item.disabled {
  border-color: var(--border-muted);
  background-color: var(--surface-cream);
  color: var(--disabled);
  cursor: not-allowed;
}

/* 加购区 */
.product-buttons-wrap,
.add-cart-wrap {
  display: flex;
  gap: var(--space-3);
  align-items: center;
  margin-top: var(--space-8);
  flex-wrap: wrap;
}

.product-buttons-wrap .btn-add-cart,
.add-cart-wrap .btn-add-cart {
  flex: 1;
  min-width: 200px;
  height: 48px;
  font-size: var(--fs-small);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* 详情富文本 */
.product-description,
.product-tab-content,
.rich-text-editor-content {
  color: var(--ink-soft);
  font-size: var(--fs-body);
  line-height: 1.75;
}

.product-description h1,
.product-description h2,
.product-description h3,
.product-description h4 {
  font-family: var(--font-heading);
  color: var(--ink);
  margin-top: var(--space-8);
  margin-bottom: var(--space-4);
}

.product-description img { border-radius: var(--radius-image); }

#product-description td { border-color: var(--border-muted); }

/* =========================================================
   购物车
   ========================================================= */
.page-cart .page-content,
.page-checkout .page-content {
  padding-top: var(--space-8);
  padding-bottom: var(--space-16);
}

.cart-table-wrap,
.cart-list-wrap {
  background-color: var(--surface-raised);
  border: var(--border-default);
  border-radius: var(--radius-card);
  padding: var(--space-6);
}

.cart-item,
.cart-list .item {
  padding: var(--space-4) 0;
  border-bottom: var(--border-default);
}

.cart-item:last-child,
.cart-list .item:last-child { border-bottom: none; padding-bottom: 0; }

.cart-item .image,
.cart-list .item .image {
  border: var(--border-default);
  border-radius: var(--radius-image);
  overflow: hidden;
  width: 88px;
  flex: 0 0 88px;
  height: 88px;
  background-color: var(--surface-cream);
}

.cart-item .image img,
.cart-list .item .image img { width: 100%; height: 100%; object-fit: cover; }

.cart-item .name,
.cart-list .item .name {
  font-size: var(--fs-small);
  line-height: var(--lh-small);
  color: var(--ink);
}

.cart-item .name a,
.cart-list .item .name a { color: var(--ink); }
.cart-item .name a:hover,
.cart-list .item .name a:hover { color: var(--brand-brown); }

.cart-item .price,
.cart-list .item .price {
  font-weight: var(--fw-medium);
  color: var(--brand-brown);
}

/* 结算摘要卡 */
.cart-total-wrap,
.order-summary,
.checkout-summary {
  background-color: var(--surface-cream);
  border: var(--border-default);
  border-radius: var(--radius-card);
  padding: var(--space-6);
  position: sticky;
  top: var(--space-6);
}

.cart-total-wrap .total-row,
.order-summary .total-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: var(--space-2) 0;
  font-size: var(--fs-small);
  color: var(--ink-soft);
}

.cart-total-wrap .total-row.grand-total,
.order-summary .total-row.grand-total {
  border-top: var(--border-default);
  margin-top: var(--space-3);
  padding-top: var(--space-4);
  font-family: var(--font-heading);
  font-size: 22px;
  line-height: 30px;
  color: var(--ink);
  font-weight: var(--fw-semibold);
}

.cart-total-wrap .total-row.grand-total .amount,
.order-summary .total-row.grand-total .amount { color: var(--brand-brown); }

/* =========================================================
   结算流程
   ========================================================= */
.checkout-form-wrap,
.checkout-wrap {
  background-color: var(--surface-raised);
  border: var(--border-default);
  border-radius: var(--radius-card);
  padding: var(--space-8);
}

.checkout-section-title,
.checkout-form-wrap h3 {
  font-family: var(--font-heading);
  font-size: 22px;
  line-height: 30px;
  color: var(--ink);
  font-weight: var(--fw-medium);
  margin-bottom: var(--space-6);
}

/* 配送/支付方式选择卡：选中暖棕描边 */
.shipping-method-item,
.payment-method-item {
  border: var(--border-default);
  border-radius: var(--radius-control);
  background-color: var(--surface-raised);
  padding: var(--space-4);
  margin-bottom: var(--space-3);
  cursor: pointer;
  transition: all var(--dur) var(--ease);
}

.shipping-method-item:hover,
.payment-method-item:hover { border-color: var(--bronze-gold); }

.shipping-method-item.active,
.payment-method-item.active,
.shipping-method-item.selected,
.payment-method-item.selected {
  border: 1px solid var(--brand-brown);
  background-color: var(--brand-brown-soft);
}

/* 地址卡 */
.address-item,
.address-card {
  border: var(--border-default);
  border-radius: var(--radius-control);
  background-color: var(--surface-raised);
  padding: var(--space-4);
  transition: all var(--dur) var(--ease);
}

.address-item:hover,
.address-card:hover { border-color: var(--bronze-gold); }

.address-item.active,
.address-item.selected,
.address-card.active {
  border: 1px solid var(--brand-brown);
  background-color: var(--brand-brown-soft);
}

/* 订单成功页 */
.order-success-wrap {
  text-align: center;
  padding: var(--space-16) var(--space-6);
}

.order-success-wrap .success-icon {
  color: var(--success);
  width: 64px;
  height: 64px;
  margin: 0 auto var(--space-6);
}

.order-success-wrap .success-icon svg {
  width: 100%;
  height: 100%;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.5;
}

.order-success-wrap h1,
.order-success-wrap h2 {
  font-family: var(--font-heading);
  color: var(--ink);
  margin-bottom: var(--space-3);
}

/* =========================================================
   登录 / 注册（默认模板为「登录 + 注册」双卡片并排结构）
   ========================================================= */
body.page-login,
body.page-forgotten {
  background-color: var(--surface-cream);
}

/* 覆盖默认主题的胶囊灰底标题，改为一枚细描边小标签 */
body.page-login .login-item-header {
  background: var(--surface-raised);
  border-bottom: var(--border-default);
  border-radius: var(--radius-control) var(--radius-control) 0 0;
  padding: var(--space-4) var(--space-6);
}

body.page-login .login-item-header h6 {
  font-family: var(--font-body);
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--ink);
  font-weight: var(--fw-medium);
}

body.page-login .login-wrap {
  margin-top: var(--space-8);
  margin-bottom: var(--space-16);
}

body.page-login .login-wrap .card {
  border: var(--border-default);
  border-radius: var(--radius-card);
  background-color: var(--surface-raised);
  box-shadow: none;
  overflow: hidden;
  width: 380px;
}

body.page-login .login-wrap .card .card-body {
  padding: var(--space-6);
}

body.page-login .login-wrap .vr-wrap .vr {
  background-color: var(--border-muted) !important;
  opacity: 1;
  width: 1px;
}

body.page-login .login-wrap .btn-dark {
  background-color: var(--brand-brown);
  border-color: var(--brand-brown);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: var(--fw-medium) !important;
  height: 48px;
  border-radius: var(--radius-control);
}

body.page-login .login-wrap .btn-dark:hover {
  background-color: var(--brand-brown-hover);
  border-color: var(--brand-brown-hover);
}

body.page-login .forgotten-link {
  color: var(--ink-soft);
  font-size: var(--fs-small);
}

body.page-login .forgotten-link:hover { color: var(--brand-brown); }

body.page-login .social-wrap .title {
  color: var(--ink-soft);
  font-size: var(--fs-caption);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.page-login .social-wrap .title::before { background: var(--border-muted); }

body.page-login .social-wrap .title span { background-color: var(--surface-raised); }

body.page-login .social-wrap .btn {
  border: var(--border-default);
  background-color: var(--surface-raised);
  color: var(--ink-soft);
  border-radius: var(--radius-control);
}

body.page-login .social-wrap .btn:hover {
  border-color: var(--bronze-gold);
  background-color: var(--brand-brown-soft);
  color: var(--brand-brown);
}

/* iframe 弹窗内的登录表单 */
.page-login .form-iframe .card { width: 100%; }

/* =========================================================
   购物车 / 结算 背景
   ========================================================= */
body.page-cart,
body.page-checkout {
  background-color: var(--surface-cream);
}

body.page-cart .cart-products-wrap .table thead,
body.page-checkout .cart-products-wrap .table thead {
  background-color: var(--surface-cream);
}

body.page-cart .cart-products-wrap .table tbody td,
body.page-checkout .cart-products-wrap .table tbody td {
  border-color: var(--border-muted);
}

body.page-cart .total-wrap .list-group li {
  border-color: var(--border-muted);
  background-color: transparent;
}

body.page-cart .total-wrap .list-group li .total-price {
  color: var(--brand-brown);
  font-family: var(--font-heading);
  font-weight: var(--fw-semibold);
}

body.page-cart .mb-product-list { background-color: var(--surface-raised); }

body.page-cart .cart-mb-total {
  background: var(--surface-raised);
  border-top: var(--border-default);
  box-shadow: none;
}

/* =========================================================
   会员中心
   ========================================================= */
body[class^="page-account"],
body.page-account {
  background-color: var(--surface-cream);
}

.account-content,
.account-right-content {
  background-color: var(--surface-raised);
  border: var(--border-default);
  border-radius: var(--radius-card);
  padding: var(--space-8);
}

.account-content h1,
.account-content h2,
.account-content h3 {
  font-family: var(--font-heading);
  color: var(--ink);
}

/* 订单卡 */
.order-item,
.order-card {
  border: var(--border-default);
  border-radius: var(--radius-card);
  background-color: var(--surface-raised);
  margin-bottom: var(--space-4);
  overflow: hidden;
}

.order-item .order-header,
.order-card .order-header {
  background-color: var(--surface-cream);
  padding: var(--space-3) var(--space-4);
  border-bottom: var(--border-default);
  font-size: var(--fs-caption);
  color: var(--ink-soft);
}

.order-item .order-body,
.order-card .order-body { padding: var(--space-4); }

.order-item .order-footer,
.order-card .order-footer {
  border-top: var(--border-default);
  padding: var(--space-3) var(--space-4);
  display: flex;
  justify-content: flex-end;
  gap: var(--space-3);
}

/* =========================================================
   静态页 / 文章
   ========================================================= */
.page-content-wrap,
.pages-content {
  background-color: var(--surface-raised);
  border: var(--border-default);
  border-radius: var(--radius-card);
  padding: var(--space-12) var(--space-8);
}

.pages-content h1,
.page-content h1 {
  font-family: var(--font-heading);
  color: var(--ink);
  margin-bottom: var(--space-6);
}

/* 文章卡片（module-page） */
.pages-wrap {
  background-color: var(--surface-raised);
  border: var(--border-default);
  border-radius: var(--radius-card);
  overflow: hidden;
  height: 100%;
  transition: box-shadow var(--dur) var(--ease);
}

.pages-wrap:hover { box-shadow: var(--shadow-card); }

.pages-wrap .image {
  border-radius: 0;
  overflow: hidden;
  aspect-ratio: 3 / 2;
  background-color: var(--surface-cream);
}

.pages-wrap .image img { width: 100%; height: 100%; object-fit: cover; }

.pages-wrap .page-info { padding: var(--space-6); }

.pages-wrap .pages-title {
  font-family: var(--font-heading);
  font-size: 20px;
  line-height: 28px;
  color: var(--ink);
  margin-bottom: var(--space-2);
}

.pages-wrap .pages-title a { color: var(--ink); }
.pages-wrap .pages-title a:hover { color: var(--brand-brown); }

.pages-wrap .pages-summary {
  color: var(--ink-soft);
  font-size: var(--fs-small);
  line-height: var(--lh-small);
  margin-bottom: var(--space-4);
}

.pages-wrap .pages-view a {
  font-size: var(--fs-caption);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bronze-gold);
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
}

.pages-wrap .pages-view a:hover { color: var(--brand-brown); }

/* =========================================================
   图片文案条（img_text_banner）
   ========================================================= */
.img-text-banner-wrap .text-wrap {
  padding: var(--space-16) var(--space-12);
  min-height: 380px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.img-text-banner-wrap .text-wrap .title {
  font-family: var(--font-heading) !important;
  font-size: var(--fs-h2) !important;
  line-height: var(--lh-h2) !important;
  font-weight: var(--fw-semibold) !important;
  letter-spacing: var(--ls-heading);
  margin-bottom: var(--space-3);
}

.img-text-banner-wrap .text-wrap .sub-title {
  font-family: var(--font-body) !important;
  font-size: var(--fs-body) !important;
  line-height: var(--lh-body) !important;
  font-weight: var(--fw-regular) !important;
  letter-spacing: 0.04em;
  opacity: 0.85;
}

.img-text-banner-wrap .text-wrap .description {
  font-size: var(--fs-small);
  line-height: 1.75;
  max-width: 460px;
  opacity: 0.9;
}

.img-text-banner-wrap .text-wrap .btn {
  border-radius: var(--radius-control);
  padding: var(--space-3) var(--space-8);
  font-size: var(--fs-caption);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.img-text-banner-wrap .img-wrap {
  height: 100%;
  min-height: 380px;
  overflow: hidden;
  background-color: var(--surface-cream);
}

.img-text-banner-wrap .img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 992px) {
  .img-text-banner-wrap .text-wrap {
    padding: var(--space-12) var(--space-6);
    min-height: auto;
  }

  .img-text-banner-wrap .img-wrap { min-height: 260px; }
}

/* =========================================================
   图标模块 / 品牌模块
   ========================================================= */
.module-icons .image-item img {
  width: 44px;
  height: 44px;
  object-fit: contain;
}

.module-icons .title {
  font-size: var(--fs-small);
  line-height: var(--lh-small);
  color: var(--ink) !important;
  font-weight: var(--fw-medium);
  letter-spacing: 0.04em;
  margin-top: var(--space-3) !important;
}

.module-icons .sub-title {
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  color: var(--ink-soft) !important;
}

.module-brand .brand-item {
  border: var(--border-default);
  border-radius: var(--radius-card);
  background-color: var(--surface-raised);
  padding: var(--space-6);
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 5 / 3;
  margin-bottom: var(--space-3);
  transition: border-color var(--dur) var(--ease);
}

.module-brand .brand-item:hover { border-color: var(--bronze-gold); }

.module-brand .brand-item img {
  max-height: 64px;
  object-fit: contain;
  opacity: 0.75;
  transition: opacity var(--dur) var(--ease);
}

.module-brand a:hover .brand-item img { opacity: 1; }

/* =========================================================
   图片组合模块
   ========================================================= */
.module-image-banner img {
  border-radius: 0;
  width: 100%;
  height: auto;
  display: block;
}

.module-image-banner .image-wrap {
  display: block;
  border-radius: var(--radius-image);
  overflow: hidden;
}

.banner-magnify-hover .image-wrap img {
  transition: transform 400ms var(--ease);
}

.banner-magnify-hover .image-wrap:hover img { transform: scale(1.03); }

/* =========================================================
   Tab 商品模块
   ========================================================= */
.module-tab-product .nav {
  gap: var(--space-8);
  border-bottom: var(--border-default);
  justify-content: center;
  margin-bottom: var(--space-12);
}

.module-tab-product .nav .nav-link {
  border: none;
  border-bottom: 1px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--ink-soft);
  font-family: var(--font-body);
  font-size: var(--fs-caption);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  font-weight: var(--fw-medium);
  padding: var(--space-3) 0;
  margin-bottom: -1px;
}

.module-tab-product .nav .nav-link:hover { color: var(--brand-brown); }

.module-tab-product .nav .nav-link.active {
  color: var(--ink);
  border-bottom-color: var(--brand-brown);
  background: transparent;
}

/* =========================================================
   错误页
   ========================================================= */
.error-page-wrap {
  text-align: center;
  padding: var(--space-24) var(--space-6);
}

.error-page-wrap .error-code {
  font-family: var(--font-heading);
  font-size: 96px;
  line-height: 1;
  color: var(--bronze-gold);
  margin-bottom: var(--space-6);
}

.error-page-wrap h1 {
  font-family: var(--font-heading);
  color: var(--ink);
  margin-bottom: var(--space-4);
}

.error-page-wrap p {
  color: var(--ink-soft);
  max-width: 460px;
  margin: 0 auto var(--space-8);
}

/* =========================================================
   维护页
   ========================================================= */
.page-maintenance {
  background-color: var(--surface-cream);
}

.maintenance-wrap {
  text-align: center;
  padding: var(--space-24) var(--space-6);
}

.maintenance-wrap h1 {
  font-family: var(--font-heading);
  color: var(--ink);
}

/* =========================================================
   页面加载层
   ========================================================= */
.bk-page-loading {
  background: var(--surface-raised);
}

.bk-page-loading .sb-spinner,
.bk-page-loading .spinner-border {
  width: 32px;
  height: 32px;
  border: 2px solid var(--border-muted) !important;
  border-top-color: var(--brand-brown) !important;
  border-radius: 50%;
  animation: sb-spin 700ms linear infinite;
  color: transparent;
}

/* =========================================================
   图文模块的文字排版（编辑风）
   ========================================================= */
.module-img-text-banner-multiple .image-item img {
  border-radius: var(--radius-image);
  transition: transform 400ms var(--ease);
}

.module-img-text-banner-multiple .image-wrap:hover .image-item img {
  transform: scale(1.03);
}

.module-img-text-banner-multiple .text-wrap {
  padding: var(--space-6) var(--space-4) var(--space-4);
  text-align: center;
}

.module-img-text-banner-multiple .text-sub-title {
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--bronze-gold);
  margin-bottom: var(--space-2);
}

.module-img-text-banner-multiple .text-title {
  font-family: var(--font-heading);
  font-size: 22px;
  line-height: 30px;
  color: var(--ink);
  margin-bottom: var(--space-4);
}

.module-img-text-banner-multiple .btn {
  padding: var(--space-2) var(--space-6);
  font-size: var(--fs-caption);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

/* 全屏图文轮播 */
.module-img-text-slideshow .image-wrap,
.module-img-text-slideshow-2 .image-wrap {
  min-height: 520px;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  position: relative;
}

.module-img-text-slideshow-2 .image-wrap img {
  width: 100%;
  height: auto;
  display: block;
}

.module-img-text-slideshow .content-wrap,
.module-img-text-slideshow-2 .image-text-wrap .content-wrap {
  padding-top: var(--space-16);
  padding-bottom: var(--space-16);
  position: relative;
  z-index: 2;
}

.module-img-text-slideshow .text-wrap,
.module-img-text-slideshow-2 .text-wrap {
  max-width: 560px;
}

.module-img-text-slideshow .text-wrap .sub-title,
.module-img-text-slideshow-2 .text-wrap .sub-title {
  font-size: var(--fs-caption);
  line-height: var(--lh-caption);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--bronze-gold);
  margin-bottom: var(--space-3);
}

.module-img-text-slideshow .text-wrap .title,
.module-img-text-slideshow-2 .text-wrap .title {
  font-family: var(--font-heading);
  font-size: var(--fs-h1);
  line-height: var(--lh-h1);
  font-weight: var(--fw-semibold);
  letter-spacing: var(--ls-heading);
  color: var(--ink);
  margin-bottom: var(--space-4);
}

.module-img-text-slideshow .text-wrap .description,
.module-img-text-slideshow-2 .text-wrap .description {
  font-size: var(--fs-body);
  line-height: 1.7;
  color: var(--ink-soft);
  margin-bottom: var(--space-8);
}

/* 深色背景上的文字（后台可选深底） */
.module-img-text-slideshow .text-wrap.text-light .title,
.module-img-text-slideshow .text-wrap.text-white .title {
  color: #FFFFFF;
}

/* 文字位置 */
.module-img-text-slideshow .content-wrap.text-center,
.module-img-text-slideshow-2 .content-wrap.text-center { justify-content: center; text-align: center; }
.module-img-text-slideshow .content-wrap.text-center .text-wrap,
.module-img-text-slideshow-2 .content-wrap.text-center .text-wrap { margin: 0 auto; }
.module-img-text-slideshow .content-wrap.text-end,
.module-img-text-slideshow-2 .content-wrap.text-end { justify-content: flex-end; text-align: right; }
.module-img-text-slideshow .content-wrap.text-end .text-wrap,
.module-img-text-slideshow-2 .content-wrap.text-end .text-wrap { margin-left: auto; }

@media (max-width: 992px) {
  .module-img-text-slideshow .image-wrap,
  .module-img-text-slideshow-2 .image-wrap { min-height: 380px; }

  .module-img-text-slideshow .content-wrap,
  .module-img-text-slideshow-2 .image-text-wrap .content-wrap {
    padding-top: var(--space-12);
    padding-bottom: var(--space-12);
  }
}

/* 跑马灯文字条 */
.module-swiper-img-scroll-text,
.module-swiper-img-scroll-text-2 {
  font-family: var(--font-heading);
  letter-spacing: 0.06em;
}

/* 首页模块通用留白微调 */
.page-home .module-item:last-child .module-info { padding-bottom: var(--space-24); }

/* =========================================================
   页面标题（hero）
   ========================================================= */
.hero-content {
  padding-top: var(--space-8);
}

.hero-heading {
  font-family: var(--font-heading);
  font-size: var(--fs-h3);
  line-height: var(--lh-h3);
  font-weight: var(--fw-medium);
  letter-spacing: var(--ls-heading);
  color: var(--ink);
  margin-top: var(--space-3);
  margin-bottom: 0;
}

/* =========================================================
   分类页 · 简介卡与筛选标签
   ========================================================= */
.category-intro {
  background-color: var(--surface-raised);
  border: var(--border-default) !important;
  border-radius: var(--radius-card) !important;
  padding: var(--space-6) !important;
  margin-bottom: var(--space-6) !important;
}

.category-intro .category-avatar img {
  border-radius: var(--radius-image);
  object-fit: cover;
}

.category-intro .category-desc p:first-child {
  font-family: var(--font-heading) !important;
  font-size: 22px !important;
  line-height: 30px !important;
  font-weight: var(--fw-medium) !important;
  color: var(--ink);
}

.category-intro .category-desc p:last-child {
  color: var(--ink-soft) !important;
  font-size: var(--fs-small);
  line-height: 1.75;
  opacity: 1 !important;
}

.filter-value-wrap .list-group-item {
  border: var(--border-default);
  border-radius: var(--radius-pill);
  background-color: var(--surface-raised);
  color: var(--ink-soft);
  font-size: var(--fs-caption);
  padding: 5px 12px;
  cursor: pointer;
  transition: all var(--dur) var(--ease);
}

.filter-value-wrap .list-group-item:hover {
  border-color: var(--bronze-gold);
  color: var(--brand-brown);
}

.filter-value-wrap .list-group-item.delete-all {
  border-color: var(--brand-brown);
  color: var(--brand-brown);
  background-color: var(--brand-brown-soft);
}

.children-wrap {
  font-size: var(--fs-small);
  color: var(--ink-soft);
  margin-top: var(--space-3) !important;
  margin-bottom: var(--space-6) !important;
}

.children-wrap a {
  color: var(--ink-soft);
  margin-right: var(--space-4);
}

.children-wrap a:hover { color: var(--brand-brown); }

/* =========================================================
   后台可视化编辑器（design 模式）中的占位提示
   ========================================================= */
.module-item-design {
  outline: 1px dashed var(--border-muted);
  outline-offset: -1px;
}

.module-item-design:hover {
  outline-color: var(--bronze-gold);
}

.footer-active { outline: 2px dashed var(--bronze-gold) !important; }

.iframe-modules-sortable-ghost {
  background-color: var(--surface-cream);
  border: 1px dashed var(--brand-brown);
  border-radius: var(--radius-control);
}

/* =========================================================
   邮件模板（内联样式的补充收敛）
   ========================================================= */
.mail-wrap,
.mail-content {
  font-family: var(--font-body);
}

/* =========================================================
   维护页 / 加载
   ========================================================= */
.bk-page-loading .spinner-border {
  border-width: 2px;
}
