.user-header a { color: #000; font-weight: 500; }
.user-header a:hover { color: #fbff1b; }
.user-header a ~ a { margin-left: 15px; }
.box_login { flex-shrink: 0; position: relative; display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: flex-start; align-items: center; margin: 0 10px; }
.btn_login { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: flex-start; align-items: center; gap: 5px; color: #000; font-size: 15px; line-height: normal; }
.btn_login:hover { transition: all .2s ease; color: #000; }
.box_login:hover .header-user-content { transform: translateY(0); opacity: 1; visibility: visible; transition: all .2s ease; }
.name-user-info b { max-width: 200px; overflow: hidden !important; text-overflow: ellipsis !important; white-space: normal !important; -webkit-box-orient: vertical !important; display: -webkit-box !important; -webkit-line-clamp: 1 !important; text-transform: capitalize; }
.header-user-content { position: absolute; right: 0; top: 100%; transform: translateY(15px); opacity: 0; visibility: hidden; transition: all .2s ease; z-index: 9990; }
.header-user-content ul { line-height: normal; padding: 0; margin: 0; border-radius: 0.5rem; overflow: hidden; background: #fff; border: 1px solid #fe00001a; width: max-content; margin-top: 0.5rem; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; z-index: 999; }
.header-user-content ul li { display: block; padding: 0; }
.header-user-content ul li:last-of-type a { border: none; }
.header-user-content ul li a { display: flex; padding: 10px 20px 10px 8px; flex-direction: row; flex-wrap: nowrap; justify-content: flex-start; align-items: baseline; gap: 5px; font-size: 14px; color: #000; line-height: normal; border-bottom: 1px solid #33333314; width: 100%; }
.header-user-content ul li a i { width: 25px; text-align: center; font-size: 16px; transition: all .2s ease; margin-right: 3px; }
.header-user-content ul li a span { flex: 1; }
.header-user-content ul li a:hover { color: var(--c1); transition: all .2s ease; background: rgb(0 0 0 / 5%); }
.user-header { }
.user-header a { display: inline-block; margin: 0 4px; }
.user-header i { }
.user-header span { }
.wrap-user { width: 100%; max-width: 550px; margin: auto; border-radius: 0.5rem; box-shadow: 0 0 14px #e3e3e3; padding: 5px 25px 25px; background: #fff; }
.title-user-center { justify-content: center !important; }
.title-user { padding: 0; margin: 15px 0; border-radius: 0.5rem 0.5rem 0 0; display: flex; justify-content: space-between; align-items: center; }
.title-user span { color: var(--color-main); font-size: 25px; font-weight: 700; text-transform: uppercase; }
.title-user a { color: #606164; font-size: 14px; font-weight: 600; }
.form-user { padding: 0; border-top: none; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px }
.input-user { margin-bottom: 0.75rem }
.input-user select, .input-user input { font-size: 14px; border-color: #e5e5e5 !important; height: 40px; border-radius: 0.5rem !important; border-top-right-radius: 0.5rem !important; border-bottom-right-radius: 0.5rem !important; background: #fff !important; box-shadow: none !important; }
.input-user.input-group input { border-top-left-radius: 0px !important; border-bottom-left-radius: 0px !important; }
.input-user.input-group.border-radius-5rem input { border-top-left-radius: 0.5rem !important; border-bottom-left-radius: 0.5rem !important; }
.button-user { margin-bottom: 1rem; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: left; margin-top: 12px; }
.form-user-info label { display: block; margin-bottom: 6px; font-weight: 500; color: #5d596c; }
.form-user-info label.btn { display: inline-flex; font-size: 14px; font-weight: 500; background: var(--color-main); color: #fff; border-color: var(--color-main); padding: 8px 25px; }
.form-user-info .input-user.input-group input { border-radius: 5px !important; }
.input-user input[type=radio], .checkbox-user input[type=checkbox] { margin-right: 5px; height: 16px; width: 16px; border-radius: 50% !important; vertical-align: middle; }
.checkbox-user input[type=checkbox]:focus { outline: none !important; box-shadow: none !important; }
.center-botton-user { justify-content: space-between !important; }
.button-user input { font-size: 15px; }
.checkbox-user, .radio-user { cursor: pointer }
.checkbox-user input { top: calc(50% - 1.25rem / 2); height: auto }
.checkbox-user label { font-size: 14px; cursor: pointer }
.checkbox-user label::before, .checkbox-user label::after { top: calc(50% - 1rem / 2) }
.select-place.text-sm { font-size: 14px !important; height: 40px; }
.radio-user { margin-right: 1rem }
.radio-user:last-child { margin-right: 0px }
.radio-user label::before, .radio-user label::after { top: calc(50% - 1rem / 2) }
.note-user { font-size: 15px; border-top: 1px solid #dddddd80; padding-top: 1rem; margin-top: 1.5rem; }
.flex_info { display: flex; justify-content: space-between; flex-wrap: wrap; }
.left_info { width: 240px; height: fit-content; position: sticky; top: var(--sticky-top); border: 1px solid rgb(51 51 51 / 10%); background: #fff; border-radius: 0.5rem; box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 12px; overflow: hidden; }
.right_info { width: calc(100% - 240px - 20px); border: 1px solid rgb(51 51 51 / 10%); background: #fff; border-radius: 0.5rem; padding: 20px 25px; box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 12px; }
.right_info .title-user-info { border-bottom: none; }
.list_mananger { padding: 0; margin: 0; list-style: none; border-top: none; border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.sty_list1, .sty_list { padding: 20px 0; color: #6b7280; cursor: pointer; border-bottom: 1px solid #ccc5; font-weight: 600; padding-left: 25px; position: relative; }
.sty_list.active { font-weight: 700; color: #000; }
.sty_list.active:after { content: ''; position: absolute; width: 5px; height: 100%; top: 0; left: 0; background: var(--color-main); }
.list_mananger li a:hover { color: var(--c1); }
.list_mananger li:last-child { border: 0; }
.list_mananger i { w; width: 30px; text-align: center; margin-right: 6px; font-size: 20px; margin-top: -5px; color: #6b7280; }
.list_mananger li .act { text-decoration: underline; }
.left_info .title-user { padding: 10px; background: var(--c1); display: block; margin: 0; }
.left_info .title-user span { color: #000; font-weight: bold; font-size: 16px; text-align: center; display: block; }
.btn-login { background: var(--color-main) !important; color: #fff !important; border: 1px solid var(--color-main) !important; padding: 8.5px 23px; font-weight: 500; !i; !; border-radius: 5px; rem; }
.btn-login:hover { background: var(--color-hover) !important; border-color: var(--color-hover) !important; }
.wrap-user .input-group-text, .right_info .input-group-text { padding: 10px; }
.wrap-user .input-group-text i.fa-regular.fa-phone-volume { transform: rotate(-30deg); }
.right_info .input-group-text { height: 46px; border-color: #e5e5e5; border-top-right-radius: 0; border-bottom-right-radius: 0; background-color: transparent; color: #333; width: 45px; text-align: center; font-size: 18px; display: flex; align-items: center; justify-content: center; border: 1px solid #e5e5e5; width: 46px; text-align: center; align-items: center; justify-content: center; background: #e5e5e5; }
.wrap-user .input-group-text { display: flex; background: none; color: #333; height: 40px; border-top-right-radius: 0; border-bottom-right-radius: 0; border-right: 0; border-top-left-radius: 0.5rem; border-bottom-left-radius: 0.5rem; border: 1px solid #e5e5e5; width: 40px; text-align: center; align-items: center; justify-content: center; background: #e5e5e5; font-size: 16px; }
.thongbao-form { background: #fff2d9; margin-bottom: 10px; padding: 10px 15px; border-radius: 6px; color: red; }
.show-pass { position: absolute; right: 0; width: 41px; height: 100%; top: 0; background: none; z-index: 9999; text-align: center; }
.show-pass i { font-size: 16px; margin-top: 13px; }
.error-feedback { display: block; width: 100%; margin-top: .25rem; font-size: .875em; color: #dc3545; }
.th_info_order { font-weight: bold; padding-bottom: 10px; border-bottom: 1px solid #ccc; }
.th_info_order, .tr_info_order { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.tr_info_order { padding: 10px 0px; }
.table_info_order .td:not(:last-child) { width: calc((100% - 40px) / 5); }
.table_info_order .td:last-child { width: 40px; }
.combo-order-detail-content { padding-left: 10px; }
.combo-order-detail-name { font-style: italic; }
.title-compo-detail, .combo-order-detail { font-size: 13px; }
.title-user-info-order { text-transform: uppercase; font-weight: bold; font-size: 20px; color: var(--color-sec); }
.content-user-info-order { list-style: none; margin: 0px; padding: 0px; }
.content-user-info-order li:not(:last-child) { margin-bottom: 10px; }
.content-user-info-order i { display: inline-block; width: 170px; }
.title-user-level { display: flex; font-size: 14px; line-height: normal; margin-bottom: 1.2rem; font-weight: 500; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-items: center; gap: 10px; }
.title-user-level b { font-size: 14px; font-weight: 600; color: var(--c1); background: green; color: #fff; padding: 4px 12px 3px; border-radius: 100px; }
.title-user-level b.thuong { background: #136799; }
.title-user-level b.vip2 { background: red; color: yellow; }
.input-user:has(.text-danger) input, .input-user:has(.text-danger) .input-group-prepend .input-group-text { border-color: red !important; }
.table_info_order { display: block; border: 1px solid #33333324; border-radius: 0.5rem; overflow: hidden; }
.th_info_order { font-weight: bold; padding: 0; border-bottom: 1px solid #ccc; border-radius: 0.5rem 0.5rem 0 0; border: none; color: #fff; background: var(--MU-CHNH, linear-gradient(90deg, #08C1FA 0%, #7426C4 100%)); }
.th_info_order, .tr_info_order { display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: center; }
.tr_info_order { padding: 0; font-size: 13px; font-weight: 500; line-height: normal; border-bottom: 1px solid #33333312; }
.table_info_order .td:not(:last-child) { width: calc((100% - 40px) / 5); padding: 10px; }
.table_info_order .td:last-child { width: 40px; padding: 10px; color: #333; }
.combo-order-detail-content { padding-left: 10px; }
.combo-order-detail-name { font-style: italic; }
.title-compo-detail, .combo-order-detail { font-size: 13px; }
.title-user-info-order { text-transform: uppercase; font-weight: bold; font-size: 16px; color: var(--c1); margin-bottom: 0.65rem; }
.content-user-info-order { list-style: none; margin: 0px; padding: 0px; }
.content-user-info-order li:not(:last-child) { margin-bottom: 10px; }
.content-user-info-order i { display: inline-block; width: 150px; font-style: normal; color: #333; }
.title-user-info { font-weight: 700; font-size: 18px; padding-bottom: 5px; border-bottom: 1px solid #99999985; margin-bottom: 15px; color: #3e3e3e; }
.td.td_mobile.td_info { display: none; }
.th_info_order a { display: block; color: #333; }
.table-user-info-order-detail { border: 1px solid #33333342; }
.table-user-info-order-detail thead { background: var(--c1); border: none; border-radius: 0.5rem 0.5rem 0 0; overflow: hidden; color: #fff; background: var(--MU-CHNH, linear-gradient(90deg, #08C1FA 0%, #7426C4 100%)); }
.td-mobile { display: none; }
td.name_pro { width: 30%; }
td.name_pro a { display: block; color: #333; line-height: 1.6; font-weight: 500; }
td.img_pro { width: 10%; }
td.img_pro a { display: block; border: 1px solid #33333326; border-radius: 0.5rem; overflow: hidden; }
.fist_discount { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; background: #008700; border-radius: 0.5rem; line-height: normal; margin-bottom: 20px; padding: 10px 15px; }
.fist_discount__left { flex: 1; }
.fist_discount__title { font-size: 16px; color: #fff; font-weight: bold; line-height: normal; }
.fist_discount__detail { font-size: 14px; line-height: normal; font-weight: 400; color: #fafafa; margin-top: 5px; }
.fist_discount__right { display: block; flex-shrink: 0; color: #fff; background: #017001; padding: 10px 15px; border-radius: 0.5rem; font-weight: 400; transition: all .2s ease; }
.fist_discount__right:hover { background: darkred; color: #fff; transition: all .2s ease; }
.up-user-level { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: flex-start; align-items: center; margin-top: 0; background: var(--c3); width: max-content; border-radius: 0.5rem; padding: 5px 10px; color: #333; line-height: normal; font-size: 13px; user-select: none; transition: all .2s ease; margin-left: auto; }
.up-user-level:hover { background: var(--c1); color: #fff; transition: all .2s ease; }
.up-user-level.succes { background: #009500; color: #fff; }
.item-order .code { font-weight: 600; color: #686868; font-size: 16px; margin-bottom: 2px; }
.item-order .code span { color: #000; }
.item-order .code span.total-price { float: right; color: #f00; }
.item-order .code span.order_status { color: #fff; margin-left: 10px; padding: 2px 8px; font-size: 14px; border-radius: 25px; }
.navbar-order a { color: #000; font-size: 15px; display: inline-block; padding: 0 10px; padding-bottom: 5px; font-weight: 500; border-bottom: 2px solid transparent; }
.navbar-order a.active { border-color: var(--color-main); }
.navbar-order { margin-bottom: 20px; }
.item-order { padding: 15px; background: #fff; border-radius: 10px; margin-bottom: 15px; }
.date-order i { font-size: 15px; margin-right: 3px; }
.date-order { font-size: 13px; text-transform: uppercase; margin-bottom: 10px; font-weight: 500; color: #999999; }
.pic-product-order { width: 70px; }
.pic-product-order img { border-radius: 7px; }
.in4-product-order { width: calc(100% - 80px); }
.in4-product-order .name-product-order { font-weight: 700; font-size: 14px; }
.pic-avatar-member { width: 100px; }
.form-user-info .account-image-reset { color: #a8aaae; border-color: transparent; background: #f1f1f2; font-size: 14px; font-weight: 500; padding: 8px 25px; }
.flatpickr-calendar { background: #fff }
.flatpickr-prev-month, .flatpickr-next-month { background-color: #f1f0f2 }
.flatpickr-prev-month svg, .flatpickr-next-month svg { fill: #6f6b7d; stroke: #6f6b7d }
.flatpickr-calendar, .flatpickr-days { width: calc(16.625rem + 0px*2) !important }
.flatpickr-calendar.hasWeeks { width: calc(18.75rem + 0px*3) !important }
.flatpickr-calendar.open { z-index: 1091 }
.flatpickr-input[readonly], .flatpickr-input ~ .form-control[readonly] { background: #fff }
.flatpickr-days { background: #fff; padding: .75rem .875rem; border: 0px solid #dbdade; border-top: 0; background-clip: padding-box; border-bottom-right-radius: .375rem; border-bottom-left-radius: .375rem }
.light-style:not([dir=rtl]) .flatpickr-calendar.hasWeeks .flatpickr-days { border-left: 0; padding-left: calc(0.875rem + 0px); box-shadow: 0px 0 0 #dbdade inset }
.light-style[dir=rtl] .flatpickr-calendar.hasWeeks .flatpickr-days { border-right: 0; padding-right: calc(0.875rem + 0px); box-shadow: 0px 0 0 #dbdade inset }
.flatpickr-calendar { line-height: 1.47; box-shadow: 0 .25rem 1rem rgba(165, 163, 174, .45); border-radius: .375rem }
.flatpickr-calendar.hasTime:not(.noCalendar):not(.hasTime) .flatpickr-time { display: none !important }
.flatpickr-calendar.hasTime .flatpickr-time { box-shadow: 0 1px 0 #dbdade inset }
.flatpickr-month { border-top-left-radius: .375rem; border-top-right-radius: .375rem; border-bottom: 1px solid #dbdade }
.flatpickr-month option.flatpickr-monthDropdown-month { color: #6f6b7d; background: #fff }
span.flatpickr-weekday { font-weight: 500; font-size: .8125rem; background: #fff; color: #5d596c }
.flatpickr-day { color: #6f6b7d; border-radius: 50rem }
.flatpickr-day:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day.today:hover, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay:focus, .flatpickr-day.today:focus { background: #f1f0f2 }
.flatpickr-day:hover:not(.today), .flatpickr-day:focus:not(.today), .flatpickr-day.prevMonthDay:hover:not(.today), .flatpickr-day.nextMonthDay:hover:not(.today), .flatpickr-day.today:hover:not(.today), .flatpickr-day.prevMonthDay:focus:not(.today), .flatpickr-day.nextMonthDay:focus:not(.today), .flatpickr-day.today:focus:not(.today) { border-color: rgba(0, 0, 0, 0) }
.flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay, .flatpickr-day.flatpickr-disabled { color: #a5a3ae }
.flatpickr-day.prevMonthDay.today, .flatpickr-day.nextMonthDay.today, .flatpickr-day.flatpickr-disabled.today { border: none }
.flatpickr-day.disabled { color: #b7b5be !important }
.flatpickr-day.selected.startRange.endRange { border-radius: .375rem !important }
.flatpickr-day.selected { box-shadow: 0 .125rem .25rem rgba(165, 163, 174, .3); background: var(--color-main); color: #fff; }
.flatpickr-weeks { border-bottom: 0px solid #dbdade; border-left: 0px solid #dbdade; background: #fff; border-bottom-right-radius: .375rem; border-bottom-left-radius: .375rem; border-bottom-right-radius: 0 }
.light-style[dir=rtl] .flatpickr-weeks { border-right: 0px solid #dbdade; border-left: 0; border-bottom-right-radius: .375rem; border-bottom-left-radius: .375rem; border-bottom-left-radius: 0 }
.flatpickr-time { border: 0px solid #dbdade; background: #fff; border-radius: .375rem }
.flatpickr-time input { color: #6f6b7d; font-size: .9375rem }
.flatpickr-time input.flatpickr-hour { font-weight: 500 }
.flatpickr-time input.flatpickr-minute, .flatpickr-time input.flatpickr-second { font-weight: 500 }
.flatpickr-time .numInputWrapper span.arrowUp:after { border-bottom-color: #a5a3ae }
.flatpickr-time .numInputWrapper span.arrowDown:after { border-top-color: #a5a3ae }
.flatpickr-time .flatpickr-am-pm { color: #6f6b7d }
.flatpickr-time .flatpickr-time-separator { color: #6f6b7d; font-weight: 500; }
/* Order Detail */
.btn-header.btn-header-cart { position: relative; padding: 0 !important; }
span.line-user { color: #fff; display: inline; margin-left: 15px; }
.section-info-user { background: #f3f3f3; }
.item-product-order { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px; }
.in4-product-order p { margin-bottom: 5px; font-weight: 500; font-size: 13px; }
.timeline-container_new { border: 1px solid #ebeef0; border-radius: 3px; background-color: #fff; }
.timeline-container_new .timeline-container_new--position { position: relative; margin-left: 30px; word-break: break-all; }
.timeline-container_new .timeline-container_new--position:before { content: ''; width: 12px; height: 12px; border: 3px solid #ebeef0; border-radius: 50%; position: absolute; top: 17px; left: -3.9px; background-color: #ebeef0; z-index: 2; }
.timeline-container_new .timeline-container_new--position .timeline-new__date { font-weight: 500; display: inline-block; font-size: 14px; color: #6c798f; margin-left: 30px; }
.timeline-container_new .timeline-container_new--position .timeline-event-contentnew__icon { position: absolute; top: 21px; left: -14px; z-index: 2; }
.timeline-container_new .timeline-container_new--position .timeline-event-contentnew__icon .icon { position: relative; display: inline-block; vertical-align: middle; background-color: #c02026; color: #fff; width: 30px; height: 30px; line-height: 30px; text-align: center; border-radius: 50%; }
.timeline-container_new .timeline-container_new--position .timeline-event-contentnew__icon .icon.icon-add { background-color: #08cc74; }
.timeline-container_new .timeline-container_new--position .timeline-event-contentnew__icon .icon.icon-edit { background-color: #da363b; }
.timeline-container_new .timeline-container_new--position .timeline-event-contentnew__icon .icon.icon-delete { background-color: #ca2c2c; }
.timeline-container_new .timeline-container_new--position .timeline-new__infomation { margin-left: 30px; }
.timeline-container_new .timeline-container_new--position .timeline-new__infomation .timeline-new__infomation__name { font-weight: 600; font-size: 14px; color: #212121; }
.timeline-container_new .timeline-container_new--position .timeline-new__infomation .timeline-new__infomation__time { color: #6c798f; font-size: 14px; font-weight: 400; }
.timeline-container_new .timeline-container_new--position .timeline-new__infomation .timeline-new__infomation__message { margin-top: 5px; }
.timeline-container_new .timeline-item-new--border--padding { border-left: 3px solid #ebeef0; padding: 15px 15px 15px 0; }
.fw-medium { font-weight: 500 !important; }
.properties-item { line-height: normal !important; }
.item-cart-detail { padding: 15px; background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%); }
.numb-cart-detail { width: 28px; height: 28px; background: linear-gradient(135deg, #0d6efd 0%, #0a58ca 100%); display: flex !important; justify-content: center; align-items: center; }
.img-cart-detail { width: 100px; height: 100px; }
.quantity-cart-detail { width: 32px; height: 32px; background: linear-gradient(135deg, #6f42c1 0%, #d63384 100%); display: flex !important; justify-content: center; align-items: center; line-height: normal; }
.firstname-cart-detail { width: 40px; height: 40px; font-size: 18px; }
.header-profile-btn { display: flex; align-items: center; gap: 10px; }
.header-profile-btn img { max-width: 40px; border-radius: 50%; }
@media (max-width:992px) {
.wrap-user { width: calc(100% - 20px); }
.left_info { width: 100%; }
.right_info { width: 100%; margin-top: 10px; }
.form-user-info { padding: 0px; }
}
@media (max-width:575px) {
.item-cart-detail { padding: 10px; }
}
/* ==========================================================
MEMBER AREA — PREMIUM REDESIGN
========================================================== */
/* ---- Section Background ---- */
.member-section { background: #f0f2f5; min-height: 60vh; }
/* ---- Layout: sidebar + main ---- */
.member-layout { display: flex; align-items: flex-start; gap: 24px; }
.member-layout__sidebar { width: 260px; flex-shrink: 0; position: sticky; top: var(--sticky-top, 80px); }
.member-layout__main { flex: 1; min-width: 0; }
/* ---- Sidebar Card ---- */
.member-sidebar { background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08); border: 1px solid rgba(0, 0, 0, 0.06); }
.member-sidebar__avatar { display: flex; align-items: center; gap: 12px; padding: 20px 18px 18px; background: linear-gradient(135deg, var(--color-main, #e01) 0%, var(--c1, #a00) 100%); }
.member-sidebar__avatar-icon { font-size: 36px; color: rgba(255, 255, 255, 0.85); line-height: 1; flex-shrink: 0; }
.member-sidebar__name { display: block; color: #fff; font-weight: 700; font-size: 15px; line-height: 1.3; text-transform: capitalize; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 160px; }
.member-sidebar__role { display: block; color: rgba(255, 255, 255, 0.75); font-size: 12px; font-weight: 500; margin-top: 2px; }
/* ---- Sidebar Nav ---- */
.member-sidebar__nav { padding: 8px 0; }
.member-sidebar__link { display: flex; align-items: center; gap: 12px; padding: 13px 18px; color: #555; font-size: 14px; font-weight: 600; text-decoration: none; border-left: 3px solid transparent; transition: all .2s ease; position: relative; }
.member-sidebar__link:hover { color: var(--color-main, #e01); background: rgba(0, 0, 0, 0.03); }
.member-sidebar__link.is-active { color: var(--color-main, #e01); background: rgba(224, 0, 0, 0.05); border-left-color: var(--color-main, #e01); }
.member-sidebar__link-icon { width: 28px; text-align: center; font-size: 17px; flex-shrink: 0; }
.member-sidebar__link-text { flex: 1; }
.member-sidebar__link-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--color-main, #e01); flex-shrink: 0; }
.member-sidebar__link--logout { color: #e53e3e; border-top: 1px solid #f0f0f0; margin-top: 4px; }
.member-sidebar__link--logout:hover { color: #c53030; background: rgba(229, 62, 62, 0.06); }
/* ---- Page Header ---- */
.member-page-header { display: flex; align-items: flex-start; flex-wrap: wrap; gap: 12px; justify-content: space-between; margin-bottom: 20px; background: #fff; border-radius: 14px; padding: 18px 22px; box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.05); }
.member-page-header__title { display: flex; align-items: center; gap: 12px; }
.member-page-header__title i { font-size: 22px; color: var(--color-main, #e01); }
.member-page-header__title h1 { font-size: 20px; font-weight: 700; color: #1a1a2e; margin: 0; }
.member-page-header__code { color: var(--color-main, #e01); font-size: 18px; }
/* ---- Order Detail Header Meta ---- */
.order-detail-header-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.order-detail-code, .order-detail-date { display: flex; align-items: center; gap: 6px; font-size: 14px; color: #555; font-weight: 500; }
.order-detail-code i, .order-detail-date i { color: #aaa; }
.order-detail-code strong { color: #111; }
/* ---- Status Badge (shared) ---- */
.order-status-badge { display: inline-block; padding: 4px 14px; border-radius: 100px; font-size: 13px; font-weight: 600; line-height: 1.5; }
/* ---- Order Tabs ---- */
.order-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 20px; }
.order-tabs__item { display: inline-block; padding: 8px 18px; border-radius: 100px; font-size: 14px; font-weight: 600; color: #555; background: #fff; border: 1.5px solid #e0e0e0; text-decoration: none; transition: all .2s ease; }
.order-tabs__item:hover { border-color: var(--color-main, #e01); color: var(--color-main, #e01); }
.order-tabs__item.is-active { background: var(--color-main, #e01); color: #fff; border-color: var(--color-main, #e01); box-shadow: 0 4px 14px rgba(224, 0, 0, 0.25); }
/* ---- Order Card ---- */
.order-list { display: flex; flex-direction: column; gap: 16px; }
.order-card { background: #fff; border-radius: 14px; border: 1px solid rgba(0, 0, 0, 0.07); box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05); overflow: hidden; transition: box-shadow .2s, transform .2s; }
.order-card:hover { box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1); transform: translateY(-2px); }
.order-card__header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; padding: 14px 18px; border-bottom: 1px solid #f0f0f0; background: #fafafa; }
.order-card__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.order-card__id { display: flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; color: #444; }
.order-card__id i { color: var(--color-main, #e01); }
.order-card__code { color: var(--color-main, #e01); font-weight: 700; text-decoration: none; }
.order-card__code:hover { text-decoration: underline; }
.order-card__date { display: flex; align-items: center; gap: 5px; font-size: 13px; color: #888; font-weight: 500; }
.order-card__badges { display: flex; align-items: center; gap: 10px; }
.order-card__total { font-size: 16px; font-weight: 700; color: #e53e3e; }
.order-card__products { padding: 14px 18px; display: flex; flex-direction: column; gap: 12px; }
.order-product-item { display: flex; align-items: flex-start; gap: 12px; }
.order-product-item__thumb { width: 60px; height: 60px; flex-shrink: 0; border-radius: 10px; overflow: hidden; border: 1px solid #eee; }
.order-product-item__thumb img { width: 100%; height: 100%; object-fit: cover; }
.order-product-item__info { flex: 1; }
.order-product-item__name { font-weight: 600; font-size: 14px; color: #1a1a2e; margin: 0 0 3px; line-height: 1.4; }
.order-product-item__sku { font-size: 12px; color: #999; margin: 0 0 3px; }
.order-product-item__qty { font-size: 13px; color: #666; margin: 0; display: flex; align-items: center; gap: 5px; }
.order-product-item__qty i { color: var(--color-main, #e01); }
.order-card__footer { padding: 12px 18px; border-top: 1px solid #f0f0f0; display: flex; justify-content: flex-end; }
.order-card__detail-btn { display: inline-flex; align-items: center; gap: 8px; padding: 8px 20px; border-radius: 100px; background: var(--color-main, #e01); color: #fff; font-size: 13px; font-weight: 600; text-decoration: none; transition: all .2s ease; }
.order-card__detail-btn:hover { background: var(--color-hover, #c00); color: #fff; box-shadow: 0 4px 14px rgba(224, 0, 0, 0.3); }
.order-card__detail-btn i { font-size: 13px; }
/* ---- Empty Order ---- */
.order-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 60px 20px; background: #fff; border-radius: 14px; border: 1px solid rgba(0, 0, 0, 0.07); text-align: center; }
.order-empty__icon { font-size: 56px; color: #ddd; margin-bottom: 16px; }
.order-empty__text { font-size: 15px; color: #888; margin-bottom: 16px; }
.order-empty__btn { display: inline-block; padding: 10px 28px; border-radius: 100px; background: var(--color-main, #e01); color: #fff; font-weight: 600; font-size: 14px; text-decoration: none; transition: all .2s ease; }
.order-empty__btn:hover { background: var(--color-hover, #c00); color: #fff; }
/* ---- Pagination ---- */
.member-pagination { margin-top: 20px; display: flex; justify-content: center; }
/* ---- Order Detail Grid ---- */
.order-detail-grid { display: grid; grid-template-columns: 1fr 340px; gap: 20px; align-items: flex-start; }
.order-detail-grid__main { min-width: 0; }
.order-detail-grid__aside { display: flex; flex-direction: column; gap: 16px; }
/* ---- OD Card (shared) ---- */
.od-card { background: #fff; border-radius: 14px; border: 1px solid rgba(0, 0, 0, 0.07); box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05); overflow: hidden; }
.od-card__header { display: flex; align-items: center; gap: 10px; padding: 14px 18px; border-bottom: 1px solid #f0f0f0; font-size: 15px; font-weight: 700; color: #1a1a2e; background: #fafafa; }
.od-card__header i { color: var(--color-main, #e01); font-size: 16px; }
.od-card__count { margin-left: auto; background: var(--color-main, #e01); color: #fff; font-size: 12px; padding: 3px 10px; border-radius: 100px; font-weight: 600; }
.od-card__body { padding: 16px 18px; display: flex; flex-direction: column; gap: 16px; }
/* ---- OD Product Item ---- */
.od-product { display: flex; align-items: flex-start; gap: 14px; padding: 14px; border-radius: 10px; border: 1px solid #f0f0f0; background: #fafafa; position: relative; transition: box-shadow .2s; }
.od-product:hover { box-shadow: 0 4px 16px rgba(0, 0, 0, 0.07); }
.od-product__num { position: absolute; top: -10px; left: -6px; width: 26px; height: 26px; border-radius: 50%; background: linear-gradient(135deg, var(--color-main, #e01), #a00); color: #fff; font-size: 12px; font-weight: 700; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 8px rgba(224, 0, 0, 0.3); }
.od-product__thumb { position: relative; width: 90px; height: 90px; flex-shrink: 0; border-radius: 10px; overflow: hidden; border: 1px solid #eee; }
.od-product__thumb img { width: 100%; height: 100%; object-fit: cover; }
.od-product__qty { position: absolute; bottom: -4px; right: -4px; width: 30px; height: 30px; border-radius: 50%; background: linear-gradient(135deg, #6f42c1, #d63384); color: #fff; font-size: 11px; font-weight: 700; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 8px rgba(111, 66, 193, 0.35); }
.od-product__info { flex: 1; min-width: 0; }
.od-product__name { font-size: 14px; font-weight: 700; color: #1a1a2e; margin: 0 0 6px; line-height: 1.4; }
.od-product__props { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.od-prop-tag { display: inline-block; padding: 2px 10px; border-radius: 100px; background: #f0f0f0; color: #555; font-size: 12px; font-weight: 500; border: 1px solid #e0e0e0; }
.od-product__pricing { display: flex; flex-wrap: wrap; gap: 12px; }
.od-product__unit-price, .od-product__line-total { display: flex; align-items: center; gap: 5px; font-size: 13px; }
.od-product__unit-price small, .od-product__line-total small { color: #999; }
.od-product__unit-price strong { color: #444; font-weight: 600; }
.od-product__line-total-val { color: #e53e3e; font-weight: 700; font-size: 14px; }
.od-card__total-row { display: flex; align-items: center; justify-content: space-between; padding: 14px 18px; border-top: 1px solid #f0f0f0; background: #fafafa; }
.od-card__total-row span { font-size: 15px; font-weight: 600; color: #333; }
.od-card__total-val { font-size: 20px; font-weight: 800; color: #e53e3e; }
/* ---- OD Customer ---- */
.od-customer { gap: 14px !important; }
.od-customer__item { display: flex; align-items: flex-start; gap: 12px; }
.od-customer__avatar { width: 40px; height: 40px; border-radius: 50%; background: linear-gradient(135deg, var(--color-main, #e01), #a00); color: #fff; font-size: 18px; font-weight: 700; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.od-customer__icon { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: #aaa; font-size: 16px; background: #f5f5f5; border-radius: 50%; }
.od-customer__detail { flex: 1; }
.od-customer__detail small { display: block; font-size: 12px; color: #aaa; margin-bottom: 2px; font-weight: 500; }
.od-customer__detail p { margin: 0; font-size: 14px; font-weight: 600; color: #222; line-height: 1.4; }
/* ---- OD Payment ---- */
.od-payment { display: flex; flex-direction: column; gap: 10px; }
.od-payment__row { display: flex; align-items: center; justify-content: space-between; font-size: 14px; }
.od-payment__row span { color: #777; }
.od-payment__row strong { color: #222; font-weight: 600; }
.od-payment__ship { color: #22c55e !important; }
.od-payment__total { display: flex; align-items: center; justify-content: space-between; padding-top: 12px; border-top: 1.5px dashed #eee; margin-top: 4px; }
.od-payment__total span { font-size: 15px; font-weight: 700; color: #1a1a2e; }
.od-payment__total strong { font-size: 20px; font-weight: 800; color: #e53e3e; }
/* ---- Responsive ---- */
@media (max-width:1024px) {
.order-detail-grid { grid-template-columns: 1fr; }
.order-detail-grid__aside { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
}
@media (max-width:992px) {
.member-layout { flex-direction: column; }
.member-layout__sidebar { width: 100%; position: static; }
.member-sidebar__avatar { padding: 16px 14px; }
.member-layout__main { width: 100%; }
}
@media (max-width:768px) {
.member-page-header { flex-direction: column; align-items: flex-start; }
}
@media (max-width:640px) {
.order-detail-grid__aside { grid-template-columns: 1fr; }
.order-card__header { flex-direction: column; align-items: flex-start; }
.order-card__badges { width: 100%; justify-content: space-between; }
.od-product__thumb { width: 70px; height: 70px; }
}
/* ==========================================================
AUTH PAGES (Login, Register, Forgot, Reset)
========================================================== */
.auth-section { background: #f0f2f5; min-height: 60vh; }
.auth-card { width: 100%; max-width: 480px; margin: 0 auto; background: #fff; border-radius: 20px; box-shadow: 0 8px 40px rgba(0, 0, 0, 0.1); border: 1px solid rgba(0, 0, 0, 0.06); overflow: hidden; }
.auth-card--wide { max-width: 720px; }
.auth-card__header { text-align: center; padding: 36px 32px 24px; border-bottom: 1px solid #f0f0f0; }
.auth-card__icon { width: 64px; height: 64px; border-radius: 50%; background: linear-gradient(135deg, var(--color-main, #e01), var(--c1, #a00)); color: #fff; font-size: 26px; display: flex; align-items: center; justify-content: center; margin: 0 auto 14px; box-shadow: 0 6px 20px rgba(224, 0, 0, 0.3); }
.auth-card__title { font-size: 22px; font-weight: 800; color: #1a1a2e; margin: 0 0 6px; }
.auth-card__subtitle { font-size: 14px; color: #888; margin: 0; }
.auth-card__subtitle a { color: var(--color-main, #e01); font-weight: 600; text-decoration: none; }
.auth-card__subtitle a:hover { text-decoration: underline; }
.auth-card form { padding: 24px 32px 32px; }
.auth-card .member-form-grid { padding: 24px 32px 0; }
.auth-card .member-form-actions { padding: 0 32px 32px; }
.auth-card__options { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; padding: 0; }
.auth-remember { display: flex; align-items: center; gap: 8px; font-size: 14px; color: #555; cursor: pointer; user-select: none; }
.auth-remember input { width: 16px; height: 16px; accent-color: var(--color-main, #e01); cursor: pointer; }
.auth-forgot-link { font-size: 14px; color: var(--color-main, #e01); font-weight: 600; text-decoration: none; }
.auth-forgot-link:hover { text-decoration: underline; }
.auth-card__back { text-align: center; padding-top: 16px; border-top: 1px solid #f0f0f0; margin-top: 8px; }
.auth-card__back a { font-size: 14px; color: #555; font-weight: 600; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }
.auth-card__back a:hover { color: var(--color-main, #e01); }
/* Auth Alert */
.auth-alert { display: flex; align-items: center; gap: 8px; padding: 12px 14px; border-radius: 10px; margin-bottom: 16px; font-size: 14px; font-weight: 500; }
.auth-alert--error { background: #fff1f0; color: #e53e3e; border: 1px solid #ffd5d5; }
.auth-alert i { font-size: 16px; flex-shrink: 0; }
/* Member Alert (info page) */
.member-alert { display: flex; align-items: center; gap: 10px; padding: 14px 18px; border-radius: 12px; margin-bottom: 16px; font-size: 14px; font-weight: 500; }
.member-alert--success { background: #f0fdf4; color: #15803d; border: 1px solid #bbf7d0; }
.member-alert i { font-size: 18px; flex-shrink: 0; }
/* ==========================================================
MEMBER FORM COMPONENTS (used in info.blade)
========================================================== */
.member-form-card { background: #fff; border-radius: 14px; border: 1px solid rgba(0, 0, 0, 0.07); box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05); padding: 20px 22px; margin-bottom: 16px; }
.member-form-card__title { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 700; color: #1a1a2e; margin-bottom: 18px; padding-bottom: 12px; border-bottom: 1px solid #f0f0f0; }
.member-form-card__title i { color: var(--color-main, #e01); }
/* Form grid */
.member-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 18px; }
.member-form-group { display: flex; flex-direction: column; gap: 6px; margin-bottom: 15px; }
.member-form-group--full { grid-column: 1 / -1; }
/* Label */
.member-form-label { font-size: 13px; font-weight: 600; color: #444; }
/* Input wrapper */
.member-input-wrap { position: relative; display: flex; align-items: center; }
.member-input-icon { position: absolute; left: 13px; top: 50%; transform: translateY(-50%); font-size: 15px; color: #bbb; pointer-events: none; z-index: 1; }
.member-input { width: 100%; height: 44px; padding: 0 42px 0 40px; border: 1.5px solid #e5e5e5; border-radius: 10px; font-size: 14px; color: #333; background: #fafafa; outline: none; transition: border-color .2s, box-shadow .2s, background .2s; appearance: none; }
.member-input:focus { border-color: var(--color-main, #e01); box-shadow: 0 0 0 3px rgba(224, 0, 0, 0.08); background: #fff; }
.member-input[readonly] { background: #f5f5f5; color: #999; cursor: not-allowed; }
.member-select { padding-right: 14px; cursor: pointer; }
.member-input-wrap--select .member-input { padding-right: 14px; }
.member-show-pass { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); font-size: 15px; color: #aaa; cursor: pointer; z-index: 2; transition: color .2s; }
.member-show-pass:hover { color: var(--color-main, #e01); }
/* select-place override */
.member-form-group .select-place.form-control { height: 44px; padding: 0 14px 0 40px; border: 1.5px solid #e5e5e5; border-radius: 10px; font-size: 14px; background: #fafafa; }
.member-form-group .select-place:focus { border-color: var(--color-main, #e01); box-shadow: 0 0 0 3px rgba(224, 0, 0, 0.08); }
/* Error */
.member-form-error { display: flex; align-items: center; gap: 5px; font-size: 12px; color: #e53e3e; margin-top: 2px; }
.member-form-error i { font-size: 12px; flex-shrink: 0; }
/* Submit button */
.member-form-actions { margin-top: 20px; display: flex; align-items: center; gap: 12px; }
.member-btn-submit { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 28px; border-radius: 100px; background: var(--color-main, #e01); color: #fff; font-size: 15px; font-weight: 700; border: none; cursor: pointer; transition: all .2s ease; text-decoration: none; }
.member-btn-submit:hover { background: var(--color-hover, #c00); box-shadow: 0 6px 20px rgba(224, 0, 0, 0.3); transform: translateY(-1px); color: #fff; }
.member-btn-submit.w-100 { width: 100%; }
.member-btn-submit i { font-size: 15px; }
/* Avatar section */
.member-avatar-section { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.member-avatar-preview { width: 90px; height: 90px; border-radius: 50%; overflow: hidden; border: 3px solid #f0f0f0; flex-shrink: 0; }
.member-avatar-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.member-avatar-actions { flex: 1; }
.member-avatar-upload-btn { display: inline-flex !important; align-items: center; gap: 8px; padding: 9px 20px; border-radius: 100px; background: var(--color-main, #e01); color: #fff !important; font-size: 13px; font-weight: 600; cursor: pointer; transition: all .2s ease; margin-bottom: 8px; }
.member-avatar-upload-btn:hover { background: var(--color-hover, #c00); }
.member-avatar-hint { font-size: 12px; color: #aaa; margin: 0; }
/* Responsive auth + form */
@media (max-width:640px) {
.auth-card form { padding: 20px 20px 28px; }
.auth-card .member-form-grid { padding: 20px 20px 0; }
.auth-card .member-form-actions { padding: 0 20px 28px; }
.auth-card__header { padding: 28px 20px 18px; }
.member-form-grid { grid-template-columns: 1fr; }
.member-form-group--full { grid-column: auto; }
.member-form-card { padding: 16px; }
}