@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&display=swap";*{margin:0;padding:0}.container-login{width:100%;height:100vh;background-color:#fff;display:flex;justify-content:center;align-items:center;min-width:400px}.wrapper-login{width:100%;height:50%;display:flex;justify-content:center;align-items:center;gap:2%}.wrapper-login hr{width:1px;height:60%;background-color:#004a73;border:none;margin:0 20px}.left-login{width:20%;height:50%;display:flex;flex-direction:column;gap:20px}.left-login img{width:100%;object-fit:cover}.left-login h4{font-size:20px;color:#004a73;font-weight:400}.right-login{width:20%;height:50%;gap:5%;display:flex;flex-direction:column}.right-login .title-login h1{font-size:20px;color:#004a73;font-weight:500}@media (max-width: 900px){.wrapper-login{width:95%;flex-direction:column;gap:20px;padding:30px;height:100%;justify-content:flex-start;align-items:center;margin-top:50px}.wrapper-login hr{width:80%;height:1px}.left-login img{max-width:180px}.left-login,.right-login{width:100%;align-items:center;height:100px}.left-login h4{font-size:16px;font-weight:500}.input-login input,.button-login button{width:100%!important}}@media (max-width: 600px){.wrapper-login{padding:20px;border-radius:12px}.title-login h1{font-size:20px}.left-login img{max-width:180px}.input-login input,.button-login button{width:100%!important}}@media (max-width: 400px){.wrapper-login{padding:16px}.left-login img{max-width:150px}.title-login h1{font-size:16px;color:red}}.input-container{display:flex;flex-direction:column;gap:6px}.input-label{font-size:14px;font-weight:500;color:#333}.required{color:red}.input-field{border:1px solid #ccc;border-radius:6px;padding:8px 12px;font-size:14px;outline:none;transition:all .2s ease;width:100%;box-sizing:border-box}.input-field:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff33}.input-field:disabled{background-color:#f5f5f5;cursor:not-allowed}.input-error{border-color:red}.input-error-text{font-size:12px;color:red;margin-top:2px}.dashboard{max-width:1200px;margin:auto;padding:32px 16px 60px}.dashboard-header h1{font-size:28px;font-weight:900;margin-bottom:6px}.dashboard-header p{color:#666}.dashboard-stats{margin-top:24px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat-card{background:#fff;border:1px solid #eee;border-radius:16px;padding:18px}.stat-card h3{font-size:14px;font-weight:800;margin-bottom:10px}.stat-value{display:block;font-size:22px;font-weight:900}.stat-desc{font-size:12px;color:#777}.dashboard-grid{margin-top:28px;display:grid;grid-template-columns:2fr 1fr;gap:16px}.dashboard-card{background:#fff;border:1px solid #eee;border-radius:16px;padding:18px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card-header h3{font-size:16px;font-weight:900}.card-header a{font-size:13px;font-weight:700;text-decoration:none;color:#111}.dashboard-table{width:100%;border-collapse:collapse}.dashboard-table th,.dashboard-table td{padding:10px 8px;text-align:left;font-size:14px}.dashboard-table th{border-bottom:1px solid #eee;font-weight:800}.dashboard-table td{border-bottom:1px solid #f3f3f3}.status{font-weight:800}.status.success{color:#1a7f37}.status.pending{color:#c99700}.status.failed{color:#c0392b}.quick-actions{display:grid;gap:12px}.quick-btn{display:block;text-decoration:none;text-align:center;background:#111;color:#fff;padding:12px;border-radius:12px;font-weight:800}.quick-btn:hover{opacity:.9}@media (max-width: 900px){.dashboard-stats{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}}@media (max-width: 500px){.dashboard-stats{grid-template-columns:1fr}}.nav-wrap{background:#fff;border-bottom:1px solid #E5E7E9;position:sticky;top:0;z-index:1000;height:64px;display:flex;align-items:center}.nav-container{max-width:1200px;margin:0 auto;width:100%;padding:0 20px;display:flex;justify-content:space-between;align-items:center}.nav-left{display:flex;align-items:center;gap:32px}.nav-brand{display:flex;align-items:center;gap:10px;text-decoration:none}.nav-brand-img{height:32px;width:auto}.nav-brand-name{font-weight:800;font-size:18px;color:#00aa5b}.nav-desktop-menu{display:flex;gap:20px}.nav-link{text-decoration:none;color:#31353b;font-weight:600;font-size:14px;transition:color .2s}.nav-user-wrapper{position:relative}.nav-avatar-btn{background:none;border:1px solid #E5E7E9;padding:2px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s}.nav-avatar-btn:hover{border-color:#00aa5b}.nav-avatar-img{width:36px;height:36px;border-radius:50%;object-fit:cover}.nav-avatar-placeholder{width:36px;height:36px;border-radius:50%;background:#00aa5b;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.nav-dropdown{position:absolute;right:0;top:48px;background:#fff;min-width:200px;border-radius:8px;box-shadow:0 4px 16px #00000026;border:1px solid #E5E7E9;overflow:hidden;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.nav-dropdown-header{padding:12px 16px;background:#f8f9fa}.user-name{font-weight:700;font-size:14px;margin:0;color:#31353b}.user-email{font-size:11px;color:#6d7588;margin:2px 0 0}.nav-dropdown-sep{height:1px;background:#e5e7e9}.nav-dropdown-item{display:block;width:100%;padding:12px 16px;text-align:left;background:none;border:none;font-size:14px;color:#31353b;text-decoration:none;cursor:pointer;font-family:inherit}.nav-dropdown-item:hover{background:#f3f4f5}.nav-dropdown-item.danger{color:#ff5c5c;font-weight:700}.mobile-only{display:none}.nav-wrap{background:#fff;border-bottom:1px solid #E5E7E9;position:sticky;top:0;z-index:1000;height:64px;display:flex;align-items:center;font-family:Nunito,sans-serif}.nav-brand-name{font-weight:800;font-size:18px;color:#00aa5b;letter-spacing:-.5px}.nav-link{text-decoration:none;color:#31353b;font-weight:700;font-size:14px;transition:color .2s}.nav-link:hover{color:#00aa5b}.nav-avatar-placeholder{background:#00aa5b;font-family:Nunito,sans-serif;font-weight:800}.user-name{font-family:Nunito,sans-serif;font-weight:800;color:#31353b}.nav-dropdown-item{font-family:Nunito,sans-serif;font-weight:600;color:#31353b}.nav-dropdown-item.danger{color:#ef144a;font-weight:800}@media (max-width: 768px){.nav-desktop-menu{display:none}.mobile-only{display:block}}.footer{background:#0f0f0f;color:#e5e5e5;margin-top:60px}.footer-container{max-width:1200px;margin:auto;padding:50px 16px;display:grid;grid-template-columns:1.2fr 2fr;gap:40px}.footer-brand{max-width:360px}.footer-logo{display:flex;align-items:center;gap:10px;font-weight:900;font-size:18px;margin-bottom:12px}.footer-logo img{width:36px;height:36px;object-fit:contain}.footer-desc{font-size:14px;line-height:1.6;color:#bdbdbd}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.footer-col h4{font-size:14px;font-weight:800;margin-bottom:12px;color:#fff}.footer-col a{display:block;text-decoration:none;color:#bdbdbd;font-size:14px;margin-bottom:8px}.footer-col a:hover{color:#fff}.footer-bottom{border-top:1px solid #1f1f1f;text-align:center;padding:16px;font-size:13px;color:#9e9e9e}@media (max-width: 900px){.footer-container{grid-template-columns:1fr}.footer-links{grid-template-columns:1fr 1fr}}@media (max-width: 500px){.footer-links{grid-template-columns:1fr}}.app-skeleton{min-height:100vh;background:#f6f7f9;padding:12px}.sk-navbar{height:64px;background:#fff;border-radius:14px;display:flex;align-items:center;gap:14px;padding:0 16px;margin-bottom:16px}.sk-page{max-width:1200px;margin:auto}.sk-title{width:260px;height:24px;margin-bottom:14px}.sk-card{height:110px;border-radius:14px;margin-bottom:14px}.sk{background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 37%,#e5e7eb 63%);background-size:400% 100%;animation:shimmer 1.2s infinite;border-radius:999px}.sk-logo{width:120px;height:32px}.sk-nav-item{width:90px;height:16px}.sk-avatar{width:36px;height:36px;border-radius:50%;margin-left:auto}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}.home{background-color:#f3f4f5;min-height:100vh;font-family:Nunito,Open Sans,sans-serif;color:#31353b;padding-bottom:40px}.wraphome{max-width:1200px;margin:0 auto;padding:24px}.homeTop{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px;flex-wrap:wrap;gap:16px}.homeTitle h2{font-size:24px;font-weight:800;margin:0 0 4px;color:#31353b}.homeTitle p{font-size:14px;color:#6d7588;margin:0}.searchWrap input,.sideSearch input{width:85%;min-width:250px;padding:10px 16px;border:1px solid #E5E7E9;border-radius:8px;font-size:14px;outline:none;transition:border .2s ease}.searchWrap input:focus,.sideSearch input:focus{border-color:#00aa5b}.homeLayout{display:flex;gap:24px;align-items:flex-start}.homeMain{flex:1}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.card{background:#fff;border-radius:12px;box-shadow:0 1px 6px #31353b1f;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease;position:relative}.card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #31353b29}.cardMedia{position:relative;width:100%;aspect-ratio:1 / 1;overflow:hidden;background-color:#f8f8f8}.cardMedia img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;top:8px;left:8px;padding:4px 8px;font-size:10px;font-weight:700;border-radius:4px;text-transform:uppercase}.badgeOk{background:#00aa5be6;color:#fff}.badgeDanger{background:#ef144ae6;color:#fff}.cardBody{padding:12px;display:flex;flex-direction:column;flex:1;gap:8px}.cardName{font-size:14px;line-height:1.4;color:#212121;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:38px}.rows{margin-top:auto}.row{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#6d7588;margin-bottom:4px}.row b{font-size:15px;color:#31353b;font-weight:800}.btnPrimary{width:100%;background:#00aa5b;color:#fff;border:none;border-radius:8px;padding:10px 0;font-weight:700;font-size:14px;cursor:pointer;transition:background .2s;margin-top:8px}.btnPrimary:hover:not(:disabled){background:#008a4a}.btnPrimary:disabled{background:#e5e7e9;color:#b2b6bc;cursor:not-allowed}.meta{display:flex;justify-content:space-between;font-size:11px;color:#9fa6b0;margin-top:8px}.homeSide{width:320px;flex-shrink:0}.sideCard{background:#fff;border-radius:12px;box-shadow:0 1px 6px #31353b1f;padding:16px;position:sticky;top:80px;display:flex;flex-direction:column;max-height:calc(100vh - 100px)}.sideHead{border-bottom:1px solid #E5E7E9;padding-bottom:12px;margin-bottom:12px}.sideHead h3{font-size:16px;font-weight:800;margin:0;color:#31353b}.sideHead p{font-size:12px;color:#6d7588;margin:4px 0 0}.sideSearch{margin-bottom:16px}.cartList{overflow-y:auto;padding-right:4px}.cartList::-webkit-scrollbar{width:6px}.cartList::-webkit-scrollbar-thumb{background:#e5e7e9;border-radius:10px}.cartItem{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #F3F4F5}.cartThumb{width:56px;height:56px;border-radius:8px;object-fit:cover}.cartMid{flex:1;display:flex;flex-direction:column}.cartName{font-size:13px;font-weight:600;color:#31353b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:4px}.cartSub{font-size:12px;font-weight:700;color:#fa591d;margin-bottom:8px}.cartActions{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.qtyBox{display:flex;align-items:center;border:1px solid #E5E7E9;border-radius:4px;overflow:hidden}.qtyBtn{background:#fff;border:none;color:#00aa5b;font-size:16px;font-weight:700;width:24px;height:24px;display:flex;justify-content:center;align-items:center;cursor:pointer}.qtyBtn:disabled{color:#b2b6bc;cursor:not-allowed;background:#f3f4f5}.qtyInput{width:36px;text-align:center;border:none;font-size:12px;font-weight:600;color:#31353b;outline:none}.removeBtn{background:transparent;border:none;color:#9fa6b0;font-size:12px;font-weight:700;cursor:pointer;padding:4px}.removeBtn:hover:not(:disabled){color:#ef144a}.sideFooter{margin-top:16px;padding-top:16px;border-top:1px solid #E5E7E9}.totalRow{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:16px}.totalRow b{font-size:18px;font-weight:800;color:#31353b}.hint{font-size:11px;color:#9fa6b0;margin-top:12px;text-align:center}.pagination,.cartPagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:24px}.cartPagination{margin-top:12px;gap:8px}.btnGhost{background:#fff;border:1px solid #E5E7E9;padding:6px 12px;border-radius:8px;font-weight:600;font-size:12px;color:#31353b;cursor:pointer}.btnGhost:hover:not(:disabled){border-color:#00aa5b;color:#00aa5b}.btnGhost:disabled{background:#f3f4f5;color:#b2b6bc;cursor:not-allowed}.pageInfo{font-size:13px;color:#6d7588}.sk{background:#fff}@keyframes pulse{0%{background-color:#f3f4f5}50%{background-color:#e5e7e9}to{background-color:#f3f4f5}}.skImg,.skThumb,.skLine{animation:pulse 1.5s infinite ease-in-out;border-radius:4px}.skImg{width:100%;aspect-ratio:1;margin-bottom:12px}.skThumb{width:56px;height:56px}.skLine{height:12px;margin-bottom:8px}.w80{width:80%}.w60{width:60%}.w70{width:70%}.emptyState,.sideEmpty{text-align:center;padding:40px 20px;color:#6d7588;font-size:14px}@media (max-width: 900px){.homeLayout{flex-direction:column}.homeSide{width:100%}.sideCard{position:static;max-height:none}}.orders{background-color:#f8f9fa;min-height:100vh;padding:30px 15px;font-family:Nunito,sans-serif}.orders-wrap{max-width:800px;margin:0 auto}.ordersTop{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:25px;border-bottom:1px solid #E5E7E9;padding-bottom:15px}.ordersTitle h2{font-size:22px;font-weight:800;color:#31353b;margin:0}.ordersTitle p{font-size:14px;color:#6d7588;margin:4px 0 0}.ordersAction{display:flex;gap:10px}.sortSelect,.btnRefresh{padding:8px 12px;border:1px solid #E5E7E9;border-radius:8px;font-size:13px;background:#fff;font-weight:700;cursor:pointer}.ordersList{display:flex;flex-direction:column;gap:12px}.orderCard{background:#fff;border-radius:10px;border:1px solid #E5E7E9;overflow:hidden;transition:.2s}.orderCard.active{border-color:#00aa5b;box-shadow:0 4px 12px #00aa5b14}.orderHead{padding:16px;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.orderDate{font-size:12px;color:#6d7588;margin-bottom:4px}.orderIdText{font-size:14px;font-weight:800;color:#31353b}.orderSummaryRight{display:flex;align-items:center;gap:15px}.orderTotalInfo{text-align:right}.orderTotalInfo span{font-size:11px;color:#6d7588;display:block}.totalPrice{font-size:15px;font-weight:800;color:#fa591d}.arrowIcon{font-size:10px;color:#b2b6bc;transition:.3s}.arrowIcon.rotate{transform:rotate(180deg)}.orderBody{padding:16px;background:#fafafa;border-top:1px solid #F0F0F0}.itemRow{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #EEE}.itemRow:last-child{border-bottom:none}.itemImg{width:45px;height:45px;object-fit:cover;border-radius:6px}.itemText{flex:1}.itemName{font-size:14px;font-weight:700;color:#31353b}.itemSub{font-size:12px;color:#6d7588}.itemPrice{font-size:14px;font-weight:800;color:#31353b}.statusMsg{text-align:center;padding:40px;color:#6d7588}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:30px}.pagination button{padding:6px 16px;border:1px solid #E5E7E9;background:#fff;border-radius:6px;cursor:pointer;font-weight:700}.pagination button:disabled{opacity:.5;cursor:not-allowed}.ordersFilterBar{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:12px 16px;border-radius:8px;border:1px solid #E5E7E9;margin-bottom:20px;gap:15px;flex-wrap:wrap}.filterGroup{display:flex;gap:12px;align-items:center}.dateInput{display:flex;align-items:center;gap:8px}.dateInput label{font-size:12px;font-weight:700;color:#6d7588}.dateInput input[type=date]{padding:6px 10px;border:1px solid #E5E7E9;border-radius:6px;font-size:13px;color:#31353b;outline:none}.dateInput input[type=date]:focus{border-color:#00aa5b}.sortSelect{min-width:120px}@media (max-width: 650px){.ordersFilterBar{flex-direction:column;align-items:flex-start}.filterGroup{width:100%;justify-content:space-between}.sortSelect{width:100%}}@media (max-width: 500px){.orderHead{flex-direction:column;align-items:flex-start;gap:10px}.orderSummaryRight{width:100%;justify-content:space-between}}
