@charset "UTF-8";

 
* {
    font-family: MiSans VF, system-ui, sans-serif;
}

/*登录 注册 找回*/
.login-form .has-feedback {
    position: relative;
}

.login-form .has-feedback .form-control {
    padding-left: 36px;
}

.login-form .has-feedback .mdi {
    position: absolute;
    top: 0;
    left: 0;
    right: auto;
    width: 36px;
    height: 36px;
    line-height: 36px;
    z-index: 4;
    color: #dcdcdc;
    display: block;
    text-align: center;
    pointer-events: none;
}

.login-form .has-feedback.row .mdi {
    left: 15px;
}

/* 兼容PB分页 */
.pagebar .page-status,
.pagebar .page-index,
.pagebar .page-pre,
.pagebar .page-next,
.pagebar .page-last,
.pagebar .page-numbar a {
    position: relative;
    padding: .5rem .75rem;
    margin: 0 3px;
    line-height: 1.25;
    border-radius: 2px;
    color: #4d5259;
    background-color: #fff;
    border: 1px solid #dee2e6;
}

.pagebar span a {
    color: #4d5259;
}

.pagebar .page-numbar a.page-num-current {
    background-color: #33cabb;
    border-color: #33cabb;
    color: #fff;
}

/*layui*/
.layui-layer-btn .layui-layer-btn0:hover {
    opacity: .8 !important;
    color: #fff !important;
}

.layui-laypage .layui-laypage-curr .layui-laypage-em {
    background-color: #33cabb !important;
}

/*资料修改*/
.user-img-box .user-img {
    position: relative;
    border-radius: 50px;
    overflow: hidden;
    width: 50px;
    height: 50px;
}

.user-img-box .user-img span {
    cursor: pointer;
    position: absolute;
    bottom: 0;
    text-align: center;
    width: 100%;
    z-index: 2;
    color: #fff;
    font-size: 12px;
    background: rgba(0, 0, 0, 0.4);
}

/* 页面loading */
#lyear-preloader {
    display: none;
}

/* 底部波浪 */
.card-img-top {
    height: 168px;
    position: relative;
    overflow: hidden;
    background: linear-gradient(-45deg, #dc3545, #fd7e14, #fcc525, #33cabb);
    background-size: 500% 500%;
    -webkit-animation: Gradient 10s ease infinite;
    -moz-animation: Gradient 10s ease infinite;
    animation: Gradient 10s ease infinite;
}

@-webkit-keyframes Gradient {
    0% {
        background-position: 0 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    to {
        background-position: 0 50%;
    }
}

@-moz-keyframes Gradient {
    0% {
        background-position: 0 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    to {
        background-position: 0 50%;
    }
}

@keyframes Gradient {
    0% {
        background-position: 0 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    to {
        background-position: 0 50%;
    }
}

.card-img-top .shape {
    bottom: -10px;
}

.card-img-top img:not(#shape) {
    position: absolute;
    left: 0;
}

.card-img-top img:nth-child(1) {
    opacity: 0.4;
    bottom: -0.1vw;
    animation: move-1 5s infinite;
}

@keyframes move-1 {
    50% {
        transform: translateY(15px);
    }
}

.card-img-top img:nth-child(2) {
    opacity: 0.3;
    bottom: 0.5vw;
    animation: move-2 4s infinite;
}

@keyframes move-2 {
    50% {
        transform: translateY(35px);
    }
}

.card-img-top img:nth-child(3) {
    bottom: 0.3vw;
    opacity: 0.2;
    animation: move-3 3.5s infinite;
}

@keyframes move-3 {
    50% {
        transform: translateY(25px);
    }
}

.card-img-top img:nth-child(4) {
    bottom: 0.1vw;
    opacity: 0.3;
    animation: move-4 3s infinite;
}

@keyframes move-4 {
    50% {
        transform: translateY(20px);
    }
}

.card-img-top .card-title {
    line-height: 168px;
    font-size: 26px;
    color: #fff;
    text-shadow: 2px 2px 2px #000000;
}

/* HMCMS HF21 member UI bridge */
.hm-member-alert { margin-top: 1rem; }
.hm-member-profile-field { margin-bottom: 1rem; }
.header-drag { cursor: pointer; transition: border-color .2s, background-color .2s; }
.header-drag.is-dragover { border-color: #33cabb; background: rgba(51,202,187,.08); }
.member-table td { vertical-align: middle; }
@media (max-width: 768px) {
    .lyear-layout-content { padding-left: 0 !important; }
}

/* HF21.8 - Bootstrap Icons in member navigation.
   Keep icon width stable so new member menu items align without custom SVG. */
.nav-drawer > li > a > .bi {
    width: 1.25em;
    text-align: center;
    line-height: 1;
}

.dropdown-menu .bi {
    display: inline-block;
    width: 1.2em;
    text-align: center;
}

/* HF22 - member submission */
.hm-member-post-drop {
    min-width: 230px;
    min-height: 120px;
    padding: 18px 22px;
    border: 1px dashed #c9ced6;
    border-radius: 6px;
    background: #fafbfc;
    color: #65717c;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    cursor: pointer;
    transition: border-color .2s ease, background-color .2s ease;
}
.hm-member-post-drop:hover,
.hm-member-post-drop.is-dragover {
    border-color: #24b7a5;
    background: #f0fbf9;
}
.hm-member-post-drop:disabled {
    cursor: wait;
    opacity: .65;
}
.hm-member-post-preview {
    display: flex;
    align-items: center;
    min-height: 120px;
}
.member-table .badge {
    font-weight: 500;
}

/* HF22.1 - member submission form/editor fixes */
.hm-member-post-summary.form-control {
    height: calc(4.5em + .75rem + 3px);
    min-height: calc(4.5em + .75rem + 3px);
    resize: vertical;
}
.hm-member-post-editor-wrap {
    width: 100%;
    min-width: 0;
}
.hm-member-editor-toolbar {
    display: flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 8px 11px;
    margin-bottom: 8px;
    border: 1px solid #e6e8eb;
    border-radius: 5px;
    background: #f8f9fa;
    color: #6c757d;
    font-size: 13px;
}
.hm-member-post-content-fallback {
    min-height: 420px;
    resize: vertical;
}
.hm-member-post-editor-wrap .edui-editor {
    max-width: 100%;
}

/* HF29.4.1 Commerce member center */
.hm-member-order-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;border-bottom:1px solid #eef0f3;padding-bottom:12px}
.hm-member-order-tabs a{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border:1px solid #e2e6ea;border-radius:4px;color:#4d5259;text-decoration:none;background:#fff}
.hm-member-order-tabs a:hover,.hm-member-order-tabs a.active{border-color:#16baaa;color:#16baaa;background:#f1fffc}
.hm-member-order-tabs span{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#f1f3f5;font-size:12px}
.hm-member-order-search{display:flex;align-items:stretch;gap:8px;max-width:520px;margin:0 0 18px}
.hm-member-order-search .form-control{flex:1 1 auto;width:auto;min-width:0}
.hm-member-order-search .btn{flex:0 0 auto;min-width:72px;white-space:nowrap}
.hm-member-order-list{display:grid;gap:12px}
.hm-member-order-card{border:1px solid #e6e9ed;border-radius:5px;background:#fff;padding:16px}
.hm-member-order-card-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid #eef0f3}
.hm-member-order-card-head small{display:block;color:#8a94a3;margin-top:5px}
.hm-member-order-total{font-size:17px;color:#111;white-space:nowrap}
.hm-member-order-statuses{display:flex;flex-wrap:wrap;gap:8px 18px;padding:12px 0;color:#666}
.hm-member-order-card-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}.hm-member-order-review-btn{white-space:nowrap}
.hm-member-empty{padding:48px 20px;text-align:center;color:#8a94a3;border:1px dashed #dfe3e8;border-radius:5px;background:#fafbfc}
.hm-member-empty i{font-size:38px;display:block;margin-bottom:10px;color:#bcc3cb}
.hm-member-empty p{margin:0}
.hm-member-wallet-summary{display:flex;align-items:baseline;gap:10px;padding:24px;margin-bottom:18px;background:#f5fffd;border:1px solid #d7f2ed;border-radius:6px}
.hm-member-wallet-summary small{color:#74808d}
.hm-member-wallet-summary strong{font-size:32px;color:#16baaa}
.hm-member-wallet-summary span{font-weight:600;color:#687480}
.hm-member-wallet-table th{white-space:nowrap}
.hm-member-address-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.hm-member-address-card{position:relative;border:1px solid #e1e5e9;border-radius:5px;padding:16px;background:#fff}
.hm-member-address-card.is-default{border-color:#16baaa;box-shadow:inset 3px 0 0 #16baaa}
.hm-member-address-card header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.hm-member-address-card p{margin:6px 0;color:#59636e;line-height:1.65}
.hm-member-address-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:13px}
.hm-member-address-actions form{display:inline-flex;margin:0}
.hm-member-address-form{max-width:980px}
@media (max-width:767px){.hm-member-address-grid{grid-template-columns:1fr}.hm-member-order-card-head{flex-direction:column}.hm-member-order-total{font-size:16px}.hm-member-order-search{max-width:none}}
.hm-member-order-items{display:grid;gap:8px;padding:12px 0;border-bottom:1px solid #eef0f3}
.hm-member-order-item{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:center}
.hm-member-order-item img,.hm-member-order-item-placeholder{width:48px;height:54px;object-fit:cover;background:#f4f6f8;border:1px solid #edf0f2;display:flex;align-items:center;justify-content:center;color:#aab2bc}
.hm-member-order-item small{display:block;color:#8a94a3;margin-top:3px}
.hm-member-order-more{font-size:12px;color:#8a94a3;padding-left:58px}


/* HF29.5.2 member product reviews */
.hm-member-review-list{display:grid;gap:14px}.hm-member-review-card{border:1px solid #e7eaf0;background:#fff;padding:16px}.hm-member-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.hm-member-review-head strong{display:block}.hm-member-review-head small{display:block;color:#8a919f;margin-top:4px}.hm-member-review-stars{color:#f59e0b;letter-spacing:2px;margin:9px 0 6px}.hm-member-review-title{display:block;margin-bottom:4px}.hm-member-review-card>p{white-space:normal;line-height:1.75;margin:4px 0 7px}.hm-member-review-reply{margin-top:10px;padding:9px 11px;background:#f7f9fb;border-left:3px solid #31af91}.hm-member-review-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}@media(max-width:680px){.hm-member-review-head{display:grid;gap:7px}}

/* HF29.5.3.1 Commerce product wishlist layout fix
   Critical dimensions use !important because some legacy member themes contain
   broad .card img / img width rules. */
.hm-member-wishlist-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fill,minmax(360px,1fr))!important;
    gap:16px!important;
    width:100%;
}
.hm-member-wishlist-card{
    display:grid!important;
    grid-template-columns:112px minmax(0,1fr)!important;
    align-items:stretch!important;
    gap:14px!important;
    min-width:0;
    min-height:142px;
    margin:0!important;
    padding:14px!important;
    overflow:hidden;
    border:1px solid #e5e9ed;
    border-radius:6px;
    background:#fff;
}
.hm-member-wishlist-image{
    width:112px!important;
    height:112px!important;
    min-width:112px!important;
    max-width:112px!important;
    min-height:112px!important;
    max-height:112px!important;
    overflow:hidden!important;
    border-radius:5px;
    background:#f5f7f9;
}
.hm-member-wishlist-image>a,
.hm-member-wishlist-image>span{
    display:flex!important;
    align-items:center;
    justify-content:center;
    width:112px!important;
    height:112px!important;
    overflow:hidden!important;
}
.hm-member-wishlist-image img{
    display:block!important;
    width:112px!important;
    height:112px!important;
    min-width:112px!important;
    max-width:112px!important;
    min-height:112px!important;
    max-height:112px!important;
    object-fit:cover!important;
    object-position:center!important;
}
.hm-member-wishlist-image span{font-size:30px;color:#adb5bd}
.hm-member-wishlist-body{
    display:flex!important;
    flex-direction:column;
    align-items:flex-start;
    min-width:0;
    overflow:hidden;
}
.hm-member-wishlist-title{
    display:block;
    width:100%;
    margin-bottom:5px;
    overflow:hidden;
    color:#252a31;
    font-size:15px;
    font-weight:600;
    line-height:1.5;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.hm-member-wishlist-title a{color:#252a31;text-decoration:none}
.hm-member-wishlist-title a:hover{color:#16baaa}
.hm-member-wishlist-body>small{
    display:block;
    max-width:100%;
    overflow:hidden;
    color:#8a919f;
    line-height:1.5;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.hm-member-wishlist-price{margin:7px 0 2px;color:#111;font-size:16px}
.hm-member-wishlist-stock{margin-bottom:3px;color:#31af91;font-size:12px}
.hm-member-wishlist-actions{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    margin-top:auto;
    padding-top:9px;
}
.hm-member-wishlist-actions form{display:inline-flex;margin:0}
@media(max-width:900px){
    .hm-member-wishlist-grid{grid-template-columns:1fr!important}
}
@media(max-width:520px){
    .hm-member-wishlist-card{
        grid-template-columns:88px minmax(0,1fr)!important;
        gap:11px!important;
        padding:12px!important;
    }
    .hm-member-wishlist-image,
    .hm-member-wishlist-image>a,
    .hm-member-wishlist-image>span,
    .hm-member-wishlist-image img{
        width:88px!important;
        height:88px!important;
        min-width:88px!important;
        max-width:88px!important;
        min-height:88px!important;
        max-height:88px!important;
    }
}
