*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{align-items:center;background:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow-x:hidden;padding:280px 0 50px;position:relative;width:100%}.login-container:before{background:linear-gradient(180deg,#ff4545,#ff4040);border-radius:0 0 30px 30px;content:"";height:50%;left:0;position:absolute;right:0;top:0;z-index:1}.decoration{position:absolute;z-index:2}.decoration img{height:100%;object-fit:contain;width:100%}.decoration-strawberry-top-left{height:240px;left:-5px;top:5px;width:240px}.decoration-mint-top-right{height:350px;right:-5px;top:5px;transform:scaleX(-1) rotate(-174deg);width:350px}.login-card{background:#fff;border-radius:30px;box-shadow:0 10px 30px #00000026;display:flex;flex-direction:column;max-width:380px;padding:30px 30px 35px;position:relative;width:90%;z-index:10}.ice-cream-image{display:flex;justify-content:center;left:50%;max-width:450px;padding:0 20px;position:absolute;top:15vh;transform:translateX(-50%);width:100%;z-index:5}.ice-cream-image img{display:block;filter:drop-shadow(0 10px 25px rgba(0,0,0,.15));height:auto;max-width:400px;object-fit:contain;width:100%}.logo-section{display:flex;justify-content:center;margin-bottom:25px;padding:0}.logo-box{background:#ff3d3d;border:3px solid #000;border-radius:12px;padding:10px 24px}.logo-text{align-items:center;display:flex;flex-direction:column;text-align:center}.es-text{font-family:Arial Black,Arial,sans-serif;font-size:20px;font-weight:700;letter-spacing:2px}.es-text,.subtitle{color:#fff!important;line-height:1.2}.subtitle{font-family:Arial,sans-serif;font-size:11px;font-weight:600;letter-spacing:1px;margin-top:2px}.login-form{display:flex;flex-direction:column;padding:0}.form-group{margin-bottom:18px}.form-group label{color:#ff3838;display:block;font-family:Arial,sans-serif;font-size:14px;font-weight:600;margin-bottom:8px}.form-group input{background:#fff;border:2.5px solid #ff3838;border-radius:10px;box-sizing:border-box;font-family:Arial,sans-serif;font-size:15px;outline:none;padding:13px 16px;transition:all .3s ease;width:100%}.form-group input:focus{border-color:#ff2525;box-shadow:0 0 0 3px #ff38381a}.form-group input::placeholder{color:#d0d0d0}.table-input-wrapper{position:relative}.table-input-wrapper input{cursor:pointer}.table-list{background:#fff;border:2.5px solid #ff3838;border-radius:0 0 10px 10px;border-top:none;box-shadow:0 5px 15px #0000001a;left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.table-item{color:#333;cursor:pointer;font-family:Arial,sans-serif;font-size:15px;padding:12px 16px;transition:background .2s ease}.table-item:hover{background:#fff5f5;color:#ff3838}.table-item:last-child{border-radius:0 0 8px 8px}.submit-button{background:#ff3838;border:none;border-radius:10px;box-shadow:0 5px 15px #ff38384d;color:#fff;cursor:pointer;font-family:Arial,sans-serif;font-size:16px;font-weight:700;margin-top:10px;padding:15px 20px;text-transform:none;transition:all .3s ease;width:100%}.submit-button:hover{background:#ff2525;box-shadow:0 7px 20px #ff383866;transform:translateY(-2px)}.submit-button:active{box-shadow:0 3px 10px #ff38384d;transform:translateY(0)}@media (max-width:768px){.login-container:before{height:50%}.ice-cream-image{max-width:400px;top:12vh}.ice-cream-image img,.login-card{max-width:360px}.login-card{padding:28px}.decoration-strawberry-top-left{height:170px;left:-5px;top:8px;width:170px}.decoration-mint-top-right{height:160px;right:-5px;top:8px;width:160px}}@media (max-width:480px){.login-container:before{height:50%}.ice-cream-image{max-width:350px;top:10vh}.ice-cream-image img{max-width:320px}.login-card{max-width:340px;padding:25px}.es-text{font-size:20px}.subtitle{font-size:8.5px}.form-group label{font-size:13px}.form-group input{font-size:14px;padding:12px 15px}.submit-button{font-size:15px;padding:14px 18px}.decoration-strawberry-top-left{height:130px;left:-5px;top:6px;width:130px}.decoration-mint-top-right{height:120px;right:-5px;top:6px;width:120px}}@media (max-width:380px){.login-container:before{height:50%}.ice-cream-image{max-width:320px;top:8vh}.ice-cream-image img{max-width:290px}.login-card{border-radius:25px;max-width:310px;padding:22px}.es-text{font-size:19px}.logo-box{padding:9px 26px}.form-group{margin-bottom:16px}.form-group label{font-size:12px}.form-group input{font-size:13px;padding:11px 14px}.submit-button{font-size:14px;padding:13px 16px}.decoration-strawberry-top-left{height:105px;left:-3px;top:5px;width:105px}.decoration-mint-top-right{height:100px;right:-3px;top:5px;width:100px}}.catalog-footer.professional-footer{background:#f9585b;border-top:4px solid #e04548;box-shadow:0 -6px 30px #00000014;color:#fff;margin-top:auto;padding:24px 0 12px;position:relative;width:100%;z-index:1}.footer-content{flex-direction:row;gap:32px;justify-content:space-between;margin:0 auto;max-width:1100px;padding:0 24px}.footer-content,.footer-section{align-items:flex-start;display:flex}.footer-section{flex:1 1;flex-direction:column;min-width:180px}.footer-logo-section{align-items:flex-start}.footer-info-section{align-items:center}.footer-social-section{align-items:flex-end}.footer-logo-box{align-items:center;border-radius:10px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;margin-bottom:12px;padding:10px 24px}.footer-logo-text{color:#f9585b;font-size:22px}.footer-logo-tagline{color:#e04548;font-size:11px;margin-top:4px}.footer-links{color:#fff;font-size:14px;line-height:1.7;list-style:none;margin:0;padding:0}.footer-links li{margin-bottom:8px}.footer-social{gap:10px}.social-link{color:#fff;transition:color .2s}.social-link:hover{color:#e04548}.footer-bottom.professional-footer-bottom{border-top:1px solid #fff2;color:#fff;font-size:13px;font-weight:600;letter-spacing:1px;margin-top:24px;padding:12px 0 16px;text-align:center}@media (max-width:900px){.footer-content{align-items:center;flex-direction:column;gap:18px}.footer-section{min-width:0}.footer-info-section,.footer-logo-section,.footer-section,.footer-social-section{align-items:center!important}}.catalog-container{background-color:#fff;display:flex;flex-direction:column;min-height:100vh;padding-bottom:24px;padding-top:0}.catalog-navbar{align-items:center;background:linear-gradient(135deg,#ff4545,#e63939);box-shadow:0 2px 10px #0000001a;display:flex;justify-content:space-between;left:0;padding:15px 30px;position:fixed;right:0;top:0;width:100%;z-index:1000}.navbar-left{flex:0 0 auto}.esbar-logo,.logo-container{align-items:center;display:flex}.esbar-logo{background:#fff;border:3px solid #fff;border-radius:10px;box-shadow:0 4px 12px #0000001a;flex-direction:column;gap:2px;padding:8px 16px}.esbar-text{color:#ff4545;font-size:20px;font-weight:800;letter-spacing:1px;line-height:1}.esbar-tagline{color:#e63939;font-size:8px;font-weight:600;letter-spacing:.5px;opacity:.9}.logo-container svg{height:100%;width:100%}.navbar-center{display:flex;flex:1 1;justify-content:center;padding:0 20px}.search-container{max-width:500px;position:relative;width:100%}.search-container input{background-color:#fffffff2;border:none;border-radius:50px;box-shadow:0 2px 8px #0000001a;font-size:14px;outline:none;padding:12px 50px 12px 20px;width:100%}.search-container input::placeholder{color:#999}.search-icon{color:#666;position:absolute;right:20px;top:50%;transform:translateY(-50%)}.navbar-right{flex:0 0 auto}.cart-button{align-items:center;background-color:initial;border:none;cursor:pointer;display:flex;justify-content:center;padding:8px;position:relative;transition:all .3s ease}.cart-button:hover{transform:scale(1.1)}.cart-button svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.cart-badge{align-items:center;animation:badgePulse 2s ease-in-out infinite;background:linear-gradient(135deg,gold,#ffed4e);border-radius:50%;box-shadow:0 3px 8px #ffd70080,0 0 0 2px #ff4545;color:#d32f2f;display:flex;font-size:13px;font-weight:800;height:24px;justify-content:center;min-width:24px;padding:4px 7px;position:absolute;right:-4px;text-align:center;top:-4px}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.catalog-header{background:linear-gradient(135deg,#ff4545,#e63939);box-shadow:0 4px 6px #0000001a;color:#fff;margin-top:115px;padding:30px;text-align:center}.catalog-header h1{font-size:24px;font-weight:600;margin:0 0 8px}.catalog-header h2{font-size:36px;font-weight:800;letter-spacing:1px;margin:0 0 10px}.catalog-header p{font-size:16px;font-weight:400;margin:0;opacity:.95}.categories-section{background-color:#fff;border-bottom:2px solid #f0f0f0;box-shadow:0 2px 8px #0000000d;display:flex;flex-wrap:wrap;gap:15px;justify-content:center;padding:20px 30px}.category-item{align-items:center;cursor:pointer;display:flex;flex:0 0 auto;flex-direction:column;transition:transform .2s}.category-item:hover{transform:translateY(-5px)}.category-text{background:linear-gradient(135deg,#ff4545,#e63939);border-radius:25px;box-shadow:0 4px 10px #ff45454d;color:#fff;font-size:16px;font-weight:600;padding:15px 30px;text-align:center;transition:all .3s}.category-item:hover .category-text{box-shadow:0 6px 15px #ff454580}.category-item .category-icon{align-items:center;background:#ff3d3d;border:3px solid #fff;border-radius:12px;box-shadow:0 4px 10px #ff3d3d4d;color:#fff;display:flex;height:64px;justify-content:center;transition:all .3s ease;width:64px}.category-item .category-icon svg{stroke:currentColor;fill:currentColor;height:40px;width:40px}.category-item .category-label{color:#666;font-size:12px;font-weight:600;margin-top:8px}.category-item.active .category-icon{background:#c00;border:3px solid #fff;box-shadow:0 8px 22px #ff3d3d80;color:#fff;transform:translateY(-4px)}.category-item:hover .category-icon{background:#c00;box-shadow:0 6px 15px #ff3d3d66;transform:translateY(-4px)}.cart-summary-btn svg{height:22px;width:22px}.products-grid{grid-gap:20px;display:grid;flex:1 1 auto;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 auto;max-width:1400px;padding:20px 15px;width:100%}.product-card{background:linear-gradient(135deg,#ff4545,#e63939);border-radius:20px;box-shadow:0 8px 20px #ff45454d;display:flex;flex-direction:column;overflow:visible;position:relative;transition:transform .3s,box-shadow .3s}.product-card:hover{box-shadow:0 12px 30px #ff454580;transform:translateY(-5px)}.product-status-badge{background-color:#eaffea;border-radius:20px;box-shadow:0 3px 10px #0003;color:#2ecc71;font-size:12px;font-weight:700;padding:7px 14px;position:absolute;right:12px;top:12px;z-index:100}.product-card.soldout .product-status-badge{background-color:#bdbdbd;color:#616161}.product-image-container{min-height:150px;padding:20px 15px 10px;position:relative}.product-image,.product-image-container{align-items:center;display:flex;justify-content:center}.product-image{background-color:#fff;border:6px solid #fff;border-radius:50%;box-shadow:0 4px 15px #0000001a;height:160px;overflow:hidden;width:160px}.product-image img{border-radius:50%;height:100%;object-fit:cover;width:100%}.ice-cream-placeholder{background:linear-gradient(135deg,#ffe4e4,#ffd1d1);border-radius:50%;height:80px;width:80px}.favorite-btn{align-items:center;background-color:#fff;border:none;border-radius:50%;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:flex;height:35px;justify-content:center;left:10px;position:absolute;top:10px;transition:transform .2s;width:35px}.favorite-btn:hover{transform:scale(1.1)}.product-info{background-color:#fff;border-radius:20px 20px 0 0;display:flex;flex:1 1;flex-direction:column;margin-top:-10px;padding:15px}.product-name{color:#333;font-size:14px;font-weight:600;line-height:1.4;margin:0 0 5px}.product-description,.product-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.product-description{color:#666;font-size:11px;line-height:1.3;margin:0 0 3px}.product-category{color:#999;font-size:10px;margin:0 0 10px}.product-footer{align-items:center;border-top:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-top:auto;padding-top:10px;.product-card.soldout{background:linear-gradient(135deg,#bdbdbd,#9e9e9e);opacity:.75}.product-card.soldout .product-image{filter:grayscale(100%);opacity:.6}.product-card.soldout .product-info{background-color:#f5f5f5}.product-card.soldout .product-category,.product-card.soldout .product-description,.product-card.soldout .product-name{color:#9e9e9e}.product-card.soldout .product-price{color:#757575}.product-card.soldout{cursor:not-allowed}.product-card.soldout .product-image,.product-card.soldout .product-image img{filter:grayscale(100%);opacity:.6;pointer-events:none}.product-card.soldout .add-btn,.product-card.soldout .qty-btn{cursor:not-allowed;pointer-events:none}.product-card.soldout:hover{box-shadow:none;transform:none}.soldout-overlay{align-items:center;background:#fff9;border-radius:50%;display:flex;height:160px;justify-content:center;left:50%;pointer-events:none;position:absolute;top:15px;transform:translateX(-50%);width:160px;z-index:20}.soldout-overlay .soldout-label{background:#ffffffd9;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 8px #0000000f;color:#7a7a7a;font-weight:800;padding:6px 12px}.product-card.soldout .product-image-container{pointer-events:none}}.product-price{align-items:baseline;color:#ff4545;display:flex;font-size:14px;font-weight:700;gap:3px}.add-btn{align-items:center;background:linear-gradient(135deg,#ff4545,#e63939);border:none;border-radius:50%;box-shadow:0 2px 8px #ff45454d;color:#fff;cursor:pointer;display:flex;font-size:20px;font-weight:300;height:35px;justify-content:center;pointer-events:auto;position:relative;transition:transform .2s;width:35px;z-index:10}.add-btn:disabled{background:#9ca3af;box-shadow:none;cursor:not-allowed;opacity:.5}.add-btn:hover:not(:disabled){transform:scale(1.1)}.quantity-controls{background-color:#fff5f5;border-radius:20px;gap:10px;padding:5px 10px}.qty-btn,.quantity-controls{align-items:center;display:flex}.qty-btn{background:linear-gradient(135deg,#ff4545,#e63939);border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:18px;height:30px;justify-content:center;pointer-events:auto;position:relative;transition:transform .2s;width:30px;z-index:10}.qty-btn:disabled{background:#9ca3af;cursor:not-allowed;opacity:.5}.qty-btn:hover:not(:disabled){transform:scale(1.1)}.qty-display{color:#ff4545;font-weight:600;min-width:30px;text-align:center}.soldout-badge{background:#f5f5f5;border:2px solid #e0e0e0;border-radius:15px;color:#757575;display:inline-block;font-size:13px;font-weight:700;padding:8px 16px;text-align:center}.cart-summary{align-items:center;background:linear-gradient(135deg,#ff4545,#e63939);border-radius:50px;bottom:20px;box-shadow:0 8px 25px #ff454580;color:#fff;display:flex;gap:20px;justify-content:space-between;left:50%;min-width:300px;padding:15px 30px;position:fixed;transform:translateX(-50%);z-index:999}.cart-summary-text{font-size:16px;font-weight:600}.cart-summary-btn{align-items:center;background-color:#fff;border:none;border-radius:50%;box-shadow:0 4px 12px #00000026;color:#ff4545;cursor:pointer;display:flex;height:50px;justify-content:center;position:relative;transition:all .3s ease;width:50px}.cart-summary-btn:hover{box-shadow:0 6px 20px #00000040;transform:scale(1.1)}.cart-summary-btn svg{height:24px;width:24px}.cart-arrow{color:#fff;font-size:20px;font-weight:700;position:absolute;right:-8px;top:50%;transform:translateY(-50%)}.catalog-footer{background:linear-gradient(135deg,#2c3e50,#34495e);border-top:4px solid #ff4545;color:#fff;margin-top:80px;padding:60px 30px 20px}.footer-content{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto 40px;max-width:1200px}.footer-section h3{color:#ff4545;font-size:18px;font-weight:700;letter-spacing:1px;margin-bottom:20px;text-transform:uppercase}.footer-logo-box{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0003;display:inline-block;margin-bottom:20px;padding:15px 25px}.footer-logo-text{color:#ff4545;font-size:24px;font-weight:800;letter-spacing:2px;line-height:1}.footer-logo-tagline{color:#e63939;font-size:10px;font-weight:600;letter-spacing:1px;margin-top:5px}.footer-description{color:#bdc3c7;font-size:14px;line-height:1.6;margin:0}.footer-hours,.footer-links{list-style:none;margin:0;padding:0}.footer-hours li,.footer-links li{color:#bdc3c7;font-size:14px;line-height:1.5;margin-bottom:12px}.footer-highlight{color:#ff4545!important;font-weight:600;margin-top:10px}.footer-social{display:flex;flex-direction:column;gap:12px}.social-link{color:#bdc3c7;display:inline-block;font-size:14px;text-decoration:none;transition:all .3s ease}.social-link:hover{color:#ff4545;transform:translateX(5px)}.footer-bottom.minimal-footer-bottom{color:#fff;font-size:13px;font-weight:600;letter-spacing:1px;margin-top:8px;text-align:center}@media (max-width:768px){.catalog-footer{margin-top:60px;padding:40px 20px 20px}.footer-content{gap:30px;grid-template-columns:1fr}.footer-section{text-align:center}.footer-logo-box{display:inline-block}.footer-social{align-items:center}.social-link:hover{transform:translateX(0) scale(1.05)}.catalog-navbar{padding:8px 12px}.esbar-logo{border:2px solid #fff;padding:6px 12px}.esbar-text{font-size:16px}.esbar-tagline{font-size:7px}.navbar-center{padding:0 8px}.search-container{max-width:100%}.search-container input{font-size:12px;padding:8px 35px 8px 12px}.search-icon{font-size:14px;right:12px}.catalog-header{padding:20px 12px}.catalog-header h1{font-size:13px}.catalog-header h2{font-size:18px}.categories-section{gap:10px;padding:12px}.category-item .category-icon{height:50px;width:50px}.category-item .category-icon svg{height:28px;width:28px}.category-item .category-label{font-size:10px}.products-grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;width:100%}.product-card{border-radius:12px}.product-image-container{min-height:110px;padding:8px}.product-image{border:3px solid #fff;height:90px;width:90px}.product-info{padding:8px}.product-name{font-size:12px}.product-category,.product-description{font-size:10px}.product-price{font-size:14px}.add-btn{font-size:18px;height:32px;width:32px}.quantity-controls{gap:6px}.qty-btn{font-size:16px;height:28px;width:28px}.qty-display{font-size:13px;min-width:25px}.product-status-badge{font-size:10px;padding:4px 8px;right:8px;top:8px}.cart-summary{bottom:10px;min-width:90%;padding:12px 20px}.cart-summary-text{font-size:14px}.cart-summary-btn{height:40px;width:40px}.cart-badge{font-size:10px;min-width:18px;padding:2px 5px}}@media (min-width:769px){.products-grid{gap:20px;grid-template-columns:repeat(4,1fr);padding:30px}.product-image-container{min-height:180px;padding:20px}.product-image{height:160px;width:160px}.ice-cream-placeholder{height:90px;width:90px}.product-info{padding:18px}.product-name{font-size:15px}.product-description{font-size:12px}.product-category{font-size:11px}}@media (max-width:480px){.products-grid{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;width:100%}.catalog-navbar{flex-wrap:wrap;gap:10px}.navbar-center{flex:1 1 100%;order:3}.category-text{font-size:13px;padding:10px 20px}.product-card{border-radius:15px}.product-image-container{min-height:120px;padding:10px}.product-image{height:100px;width:100px}.ice-cream-placeholder{height:70px;width:70px}.product-info{padding:12px}.product-name{font-size:13px}.product-description{font-size:10px}.product-category{font-size:9px}.product-price{font-size:13px}.soldout-badge{background:#f1f1f1;border-radius:12px;color:#555;display:inline-block;font-size:12px;font-weight:700;padding:8px 12px;text-align:center}.add-btn{font-size:18px;height:32px;width:32px}.qty-btn{font-size:16px;height:28px;width:28px}.favorite-btn{height:32px;width:32px}}.cart-bottom-bar-vertical{align-items:center;flex-direction:column;gap:10px;padding:18px 12px}.cart-bottom-total-center{-webkit-margin-after:2px;align-items:center;display:flex;gap:6px;justify-content:center;margin-block-end:2px}.cart-bottom-bar-vertical .cart-bottom-checkout-btn{margin:0 auto;max-inline-size:340px;width:100%}.cart-bottom-bar{align-items:center;background:#fff;border-top:1.5px solid #f2f2f2;bottom:0;box-shadow:0 -2px 16px #00000012;display:flex;justify-content:space-between;left:0;margin:0 auto;max-width:700px;padding:18px 24px;position:fixed;right:0;z-index:100}.cart-bottom-total{align-items:baseline;display:flex;gap:6px}.cart-bottom-label{color:#1a1a2e;font-size:18px;font-weight:700;letter-spacing:.5px}.cart-bottom-currency,.cart-bottom-value{color:#f9585b;font-size:18px;font-weight:700;letter-spacing:.5px}.cart-bottom-checkout-btn{background:#f9585b;border:none;border-radius:8px;box-shadow:0 2px 8px #f9585b14;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 28px;transition:background .2s}.cart-bottom-checkout-btn:disabled{background:#f5b3b4;color:#fff;cursor:not-allowed}.cart-bottom-checkout-btn:not(:disabled):hover{background:#e04548}.cart-page{background:#f8f9fa;box-sizing:border-box;min-height:100vh;padding:8px 12px 110px}.cart-header-wrapper{margin:0 auto 12px;max-width:700px}.back-btn-top{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 1px 3px #00000014;color:#333;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:4px;padding:8px 16px;transition:all .2s ease}.back-btn-top:hover{background:#f8f8f8;border-color:#d0d0d0;box-shadow:0 2px 6px #0000001f;transform:translateY(-1px)}.cart-header{align-items:center;display:flex;justify-content:center;margin:0 auto 20px;max-width:700px;position:relative}.cart-title{color:#1a1a2e;font-size:16px;font-weight:700;margin:0 0 12px;text-align:center}.brand-logo{border-radius:8px;padding:6px 12px}.brand-name{font-size:12px;letter-spacing:.5px}.brand-sub{font-size:5px;letter-spacing:.5px;margin-top:1px}.cart-top{align-items:center;display:flex;gap:10px;justify-content:center;margin-bottom:20px;position:relative}.cart-top h1{color:#333;font-size:18px;font-weight:700;letter-spacing:-.3px;margin:0;padding:0 40px;text-align:center}.cart-top .back-btn{left:0;position:absolute;top:50%;transform:translateY(-50%)}.back-btn{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:50%;box-shadow:0 1px 3px #00000014;color:#333;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;font-weight:400;height:32px!important;justify-content:center;line-height:1;max-width:32px;min-width:32px;padding:0;transition:all .2s ease;width:32px!important;z-index:10}.back-btn:hover{background:#f8f8f8;border-color:#d0d0d0;box-shadow:0 2px 6px #0000001f}.cart-list{margin:0 auto;max-width:700px}.cart-item{align-items:center;background:#fff;border:1px solid #f0f0f0;border-radius:8px!important;box-shadow:0 1px 3px #00000014!important;display:flex;gap:10px!important;margin-bottom:8px!important;padding:10px!important}.cart-thumb{background:#f8f9fa;border:1px solid #eee!important;border-radius:8px;flex-shrink:0;height:70px!important;overflow:hidden;width:70px!important}.cart-item-body{flex:1 1;min-width:0}.cart-item-title{color:#333;font-size:14px!important;font-weight:600;line-height:1.3}.cart-item-desc{color:#666;font-size:11px!important;line-height:1.4;margin-top:3px}.cart-item-price{color:#f9585b;font-size:14px!important;font-weight:700;margin-top:3px}.cart-item-actions{align-items:flex-end;display:flex;flex-direction:column;gap:8px!important;margin-left:auto}.remove-btn{align-items:center;background:#f9585b;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px!important;font-weight:700;height:32px!important;justify-content:center;position:relative;top:-4px;transition:all .2s ease;width:32px!important}.remove-btn:hover{background:#e04548;transform:scale(1.05)}.qty-controls{align-items:center;display:flex;gap:6px!important}.qty-controls button{align-items:center;background:#fff;border:1.5px solid #f9585b;border-radius:6px!important;color:#f9585b;cursor:pointer;display:flex;font-size:16px!important;font-weight:700;justify-content:center;min-height:32px;min-width:32px;padding:6px 10px!important;transition:all .2s ease}.qty-controls button:hover{background:#fff5f5}.qty-controls span{color:#333;display:inline-block;font-size:16px!important;font-weight:700;min-width:28px!important;padding:0 4px;text-align:center}.cart-footer{align-items:center;background:#f9585b;border-top:4px solid #e04548;bottom:0;box-shadow:0 -4px 20px #00000014;color:#fff;display:flex;left:0;padding:0;position:fixed;right:0;z-index:100}.cart-footer-content{align-items:center;display:flex;justify-content:space-between;max-width:600px;padding:12px 24px 8px;width:100%}.cart-footer-brand{align-items:center;display:flex;margin-right:16px}.cart-footer-logo{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;color:#f9585b;font-size:18px;font-weight:800;letter-spacing:2px;margin-right:8px;padding:6px 16px}.cart-footer .total{background:#fff5f5;border:1.5px solid #f9585b;border-radius:10px;box-shadow:0 1px 4px #f9585b0a;color:#f9585b;font-size:16px;font-weight:700;margin:16px 0 8px;padding:10px 22px}.checkout-btn{background:#f9585b;border:none;border-radius:10px;box-shadow:0 2px 8px #f9585b14;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-bottom:18px;padding:13px 32px;transition:background .18s,color .18s}.checkout-btn:hover:not(:disabled){background:#e04548;color:#fff}.checkout-btn:disabled{cursor:not-allowed;opacity:.6}.empty{color:#666;font-size:15px;padding:40px 20px}@media (max-width:768px){.cart-page{padding:12px 12px 110px}.cart-bottom-bar{padding:12px 14px}.cart-bottom-currency,.cart-bottom-label,.cart-bottom-value{font-size:16px}.cart-bottom-checkout-btn{font-size:13px;padding:10px 24px}.cart-top{gap:8px;margin-bottom:14px}.cart-top h1{font-size:18px;font-weight:700}.back-btn{font-size:13px;height:30px!important;width:30px!important}.cart-list{max-width:100%}.cart-item{gap:10px!important;margin-bottom:10px!important;padding:10px!important}.cart-thumb{border-radius:8px;height:70px!important;width:70px!important}.cart-item-title{font-size:14px!important;line-height:1.3}.cart-item-desc{font-size:11px!important;line-height:1.3;margin-top:3px}.cart-item-price{font-size:14px!important;margin-top:4px}.cart-item-actions{gap:10px!important}.remove-btn{font-size:14px!important;height:28px!important;width:28px!important}.qty-controls{gap:8px!important}.qty-controls button{border-radius:6px!important;font-size:14px!important;min-height:28px;min-width:28px;padding:4px 8px!important}.qty-controls span{font-size:14px!important;min-width:24px!important}}.cart-footer{flex-direction:column;gap:8px;padding:10px 12px}.cart-footer .total{font-size:14px;height:55px;padding:10px;text-align:center;width:100%}@media (max-width:480px){.cart-page{padding:8px 8px 100px}.cart-bottom-bar{padding:10px}.cart-bottom-currency,.cart-bottom-label,.cart-bottom-value{font-size:14px}.cart-bottom-checkout-btn{font-size:12px;padding:10px 18px}.cart-title{font-size:14px}.brand-logo{padding:4px 10px}.brand-name{font-size:10px}.brand-sub{font-size:4px}.back-btn{font-size:14px;height:28px!important;max-width:28px;min-width:28px;width:28px!important}.cart-header{padding:0 40px!important}.cart-item{gap:8px!important;padding:8px!important}.cart-thumb{border-radius:6px;height:55px!important;width:55px!important}.cart-item-title{font-size:12px!important}.cart-item-desc{font-size:10px!important}.cart-item-price{font-size:12px!important}.cart-item-actions{gap:6px!important}.remove-btn{font-size:12px!important;height:24px!important;width:24px!important}.qty-controls{gap:4px!important}.qty-controls button{font-size:12px!important;min-height:24px;min-width:24px;padding:2px 6px!important}.qty-controls span{font-size:12px!important;min-width:18px!important}.checkout-btn{font-size:12px;padding:10px}.cart-item-title{font-size:11px}.cart-item-desc{font-size:9px}.cart-item-price{font-size:11px}.qty-controls button{font-size:13px;padding:3px 7px}}.loading-container{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:60vh}.spinner{border:4px solid #ffe3e3;border-top-color:#ff4545}.loading-text{animation:pulse 1.5s ease-in-out infinite;color:#666;font-size:16px;font-weight:500;margin:0}.alert{background:#ffecec;border:1px solid #ffd1d1;border-radius:10px;color:#c23232;margin-bottom:12px;padding:10px 12px}.payment-panel{background:#fff;border:1px solid #ffe3e3;border-radius:14px;bottom:110px;box-shadow:0 10px 28px #0000001f;padding:16px;position:fixed;right:16px;width:320px}.payment-panel h3{color:#e63939;margin:0 0 8px}.payment-panel p{color:#555;font-size:14px;margin:0 0 12px}.payment-panel img{border-radius:12px;box-shadow:0 6px 18px #00000014;display:block;margin:0 auto 12px;max-width:220px;width:100%}.payment-actions{display:flex;gap:10px;justify-content:center}.admin-main::-webkit-scrollbar,.admin-sidebar::-webkit-scrollbar{width:8px}.admin-sidebar::-webkit-scrollbar-track{background:#ffffff0d;border-radius:10px}.admin-sidebar::-webkit-scrollbar-thumb{background:#ff3d3d99;border-radius:10px}.admin-sidebar::-webkit-scrollbar-thumb:hover{background:#ff3d3dcc}.admin-main::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.admin-main::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:10px}.admin-main::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.brand-pill{align-items:center;background:#ff3d3d;border-radius:10px;color:#fff;display:inline-flex;flex-direction:column;font-weight:800;justify-content:center;letter-spacing:.5px;padding:10px 16px}.brand-pill.small{font-size:12px;padding:8px 12px}.brand-pill .brand-sub{display:block;font-size:10px;font-weight:700}.admin-login-page{align-items:center;background:#f9fbff;box-sizing:border-box;display:flex;flex-direction:column;min-height:100vh;padding:30px}.admin-login-header{margin-bottom:30px;margin-top:10px}.admin-login-card{background:#fff;border-radius:12px;box-shadow:0 8px 30px #00000014;max-width:92vw;padding:28px;text-align:left;width:520px}.admin-login-card .title{letter-spacing:.5px;margin:8px 0 16px;text-align:center}.label{color:#222;font-size:12px;margin:6px 0}.input-wrap{position:relative}.input-wrap input{border:1px solid #cfcfcf;border-radius:6px;outline:none;padding:10px 36px 10px 12px;width:100%}.input-wrap .input-icon{color:#999;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.primary-btn{background:#ff3d3d;border:none;border-radius:20px;color:#fff;cursor:pointer;display:block;font-weight:700;margin:18px auto 6px;padding:10px;width:120px}.error-msg{color:#e33;font-size:12px;margin-top:8px}.admin-layout{background:#f6f7fb;display:flex;min-height:100vh}.admin-sidebar{background:linear-gradient(180deg,#1f1f2c,#2b2b3c);box-shadow:8px 0 30px #00000014;color:#fff;display:flex;flex-direction:column;gap:18px;height:100vh;overflow-y:auto;padding:24px 18px;position:-webkit-sticky;position:sticky;top:0;width:240px}.brand-pill.big{align-items:flex-start;width:100%}.admin-meta{border-radius:8px;color:#fff9;cursor:pointer;font-size:13px;font-weight:700;letter-spacing:.3px;padding:10px 12px;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none}.admin-meta:hover{background:#ffffff1a;color:#ffffffe6}.admin-meta:after{content:"▼";font-size:10px;opacity:.6;position:absolute;right:12px}.admin-dropdown{animation:dropdownSlide .2s ease;background:#2b2b3c;border:1px solid #ffffff1a;border-radius:8px;box-shadow:0 4px 12px #0000004d;left:0;margin-top:4px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.admin-dropdown-item{align-items:center;background:#0000;border:none;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;padding:10px 12px;text-align:left;transition:all .15s ease;width:100%}.admin-dropdown-item:hover{background:#ff3d3d33;color:#ff3d3d}.admin-meta-wrapper{position:relative}.side-nav{display:flex;flex-direction:column;gap:10px}.side-btn{background:#ffffff0d;border:1px solid #ffffff14;border-radius:10px;color:#fff;cursor:pointer;font-weight:700;padding:10px 12px;text-align:left;transition:all .15s ease}.side-btn.active,.side-btn:hover{background:#ff3d3d;border-color:#ff3d3d}.admin-main{flex:1 1;max-height:100vh;overflow-y:auto;padding:24px}.page-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:18px}.page-header h2{color:#2c3e50;font-size:24px;margin:0}.muted{color:#7f8c8d;font-size:13px;margin:4px 0 0}.header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.new-order-badge{animation:pulse 1.5s infinite;background:linear-gradient(135deg,#ff4545,#e63939);border-radius:20px;box-shadow:0 4px 15px #ff454566;color:#fff;font-size:14px;font-weight:700;padding:10px 18px}.chip{background:#fff;border:1px solid #ddd;border-radius:12px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 14px;transition:all .2s ease}.chip:hover{background:#f8f9fa;border-color:#bbb}.filter-inline{align-items:center;display:inline-flex;gap:8px}.filter-inline input{border:2px solid #e0e0e0;border-radius:12px;font-size:14px;min-width:200px;padding:10px 14px;transition:all .2s ease}.filter-inline input:focus{border-color:#ff4545;box-shadow:0 0 0 3px #ff45451a;outline:none}.alert.error{background:#ffe8e8;border:1px solid #f5c6c6;border-radius:12px;color:#c0392b;font-weight:500;margin-bottom:16px;padding:12px 16px}.empty-state{border:2px dashed #dee2e6;margin:20px 0}.empty-icon{font-size:64px;margin-bottom:16px}.empty-title{color:#495057;font-size:20px;font-weight:700;margin-bottom:8px}.empty-desc{color:#6c757d;font-size:14px}.empty{background:#fff;border:1px solid #eee;border-radius:12px;color:#888;padding:20px;text-align:center}.hello{font-weight:700;margin-left:12px}.hello .red{color:#e64343}.spacer{flex:1 1}.actions{display:flex;gap:10px}.tab-btn{background:#f05454;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:700;padding:8px 12px}.tab-btn.active{background:#ff8c8c}.form-row{grid-gap:10px;align-items:flex-start;gap:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.form-col input{border:1px solid #ccc;border-radius:6px;box-sizing:border-box;padding:10px;width:100%}.input-label{color:#333;display:block;font-weight:700;margin-bottom:6px}.orders-wrap{padding:10px 0}.section-header{align-items:center;display:flex;gap:10px;justify-content:space-between}.section-title{font-weight:800;margin:10px 0}.history-filters,.section-actions{display:flex;gap:10px}.history-filters{align-items:center;margin:10px 0 16px}.history-filters input{background:#fff;border:2px solid #dee2e6;border-radius:8px;font-size:14px;min-width:180px;padding:10px 12px;transition:border-color .2s ease}.history-filters input:focus{border-color:#495057;outline:none}.history-filters .btn{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:all .2s ease}.history-filters .btn:hover{background:#0056b3;box-shadow:0 4px 8px #007bff4d;transform:translateY(-1px)}.btn{background:#495057;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:all .2s ease}.btn:hover{background:#343a40;box-shadow:0 4px 8px #0000001a;transform:translateY(-1px)}.history-group{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 1px 3px #0000000d;margin-bottom:16px;overflow:hidden}.history-group .date-title{background:#f8f9fa;border-bottom:1px solid #dee2e6;color:#495057;font-size:14px;font-weight:600;padding:12px 16px}.history-row{background:#fff;border:1px solid #e8e8e8;border-radius:16px;box-shadow:0 4px 20px #00000014;margin-bottom:20px;overflow:hidden;padding:0;transition:all .2s ease}.history-row:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-2px)}.history-main{display:flex;flex-direction:column}.history-header{background:linear-gradient(135deg,#f8f9fa,#fff);border-bottom:2px solid #f1f3f5;justify-content:space-between;padding:20px}.history-header,.history-left{align-items:center;display:flex}.history-left{flex-wrap:wrap;gap:10px}.inv-badge-primary{align-items:center;background:linear-gradient(135deg,#ff4545,#e63939);border-radius:10px;box-shadow:0 3px 10px #ff45454d;color:#fff;display:inline-flex;font-size:14px;font-weight:700;gap:6px;padding:8px 16px}.customer-badge{background:#e8f5e9;color:#2c3e50;font-weight:600}.customer-badge,.table-badge-history{align-items:center;border-radius:10px;display:inline-flex;font-size:13px;gap:6px;padding:8px 14px}.table-badge-history{background:linear-gradient(135deg,#4a90e2,#357abd);box-shadow:0 3px 10px #4a90e24d;color:#fff;font-weight:700}.time-badge{align-items:center;background:#f1f3f5;border-radius:10px;color:#495057;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:8px 14px}.order-time-badge{background:#e3f2fd;color:#1565c0}.confirm-time-badge,.order-time-badge{border-radius:10px;font-weight:700;gap:6px;padding:8px 14px}.confirm-time-badge{align-items:center;background:#e8f5e9;color:#2e7d32;display:inline-flex;font-size:13px}.inv-badge{background:#e9ecef;border-radius:6px;color:#495057;font-size:12px;font-weight:600;padding:4px 10px}.customer-name{color:#6c757d;font-size:13px}.customer-name b{color:#212529}.table-badge{background:#e9ecef;border-radius:6px;color:#495057;font-size:12px;font-weight:600;padding:4px 10px}.history-right{align-items:center;display:flex;gap:12px}.order-total{color:#212529;font-size:16px;font-weight:700}.order-total-history{color:#ff4545;font-size:24px;font-weight:900;letter-spacing:-.5px}.history-items{grid-gap:16px;background:linear-gradient(135deg,#fafbfc,#f5f6f8);display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));padding:24px}.history-item{align-items:center;background:linear-gradient(135deg,#fff,#fafbfc);border:2px solid #f0f0f0;border-radius:14px;box-shadow:0 2px 8px #0000000d;display:flex;gap:14px;padding:14px;transition:all .3s cubic-bezier(.4,0,.2,1)}.history-item:hover{background:#fff;border-color:#ff4545;box-shadow:0 8px 24px #ff3d3d33;transform:translateY(-4px)}.history-item-image{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:3px solid #fff;border-radius:50%;box-shadow:0 4px 12px #0000001a;flex-shrink:0;height:75px;object-fit:cover;object-position:center;transition:transform .3s ease;width:75px}.history-item-image:hover{transform:scale(1.15)}.history-no-image{align-items:center;background:linear-gradient(135deg,#ff4545,#e63939);border:3px solid #fff;border-radius:50%;box-shadow:0 4px 12px #ff3d3d4d;color:#fff;display:flex;flex-shrink:0;font-size:32px;height:75px;justify-content:center;width:75px}.history-item-details{flex:1 1;min-width:0}.history-item-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#2c3e50;display:-webkit-box;font-size:14px;font-weight:700;line-height:1.4;margin-bottom:6px;overflow:hidden}.history-item-qty{background:linear-gradient(135deg,#ff4545,#e63939);border-radius:8px;box-shadow:0 2px 8px #ff3d3d4d;color:#fff;display:inline-block;font-size:12px;font-weight:700;letter-spacing:.3px;padding:6px 12px}.history-footer{background:linear-gradient(135deg,#f8f9fa,#fff);border-top:2px solid #f1f3f5;display:flex;justify-content:flex-end;padding:20px}.invoice-btn{background:linear-gradient(135deg,#28a745,#218838);border:none;border-radius:10px;box-shadow:0 4px 12px #28a7454d;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:10px 24px;transition:all .2s ease}.invoice-btn:hover{box-shadow:0 6px 16px #28a74566;transform:translateY(-2px)}.history-row .left{align-items:center;display:flex;gap:12px;margin-bottom:8px}.history-row .time{color:#212529;font-size:13px;font-weight:600}.history-row .inv{background:#e9ecef;border-radius:6px;color:#495057;font-size:12px;font-weight:600;padding:4px 10px}.history-row .name{color:#6c757d;font-size:13px}.history-row .right{color:#212529;font-size:15px;font-weight:600;margin-bottom:8px}.history-row .items{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;padding:6px 0}.history-row .item{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#495057;font-size:12px;padding:5px 10px}.history-row .status{align-items:center;display:inline-flex;gap:4px;margin-top:8px}.history-row .status .ok{color:#28a745;font-size:13px;font-weight:600}.history-row .status .proc{color:#6c757d;font-size:13px;font-weight:600}.history-row .status .cancel{color:#dc3545;font-size:13px;font-weight:600}.history-row .status .warn{color:#6c757d;font-size:13px;font-weight:600}.history-row .actions{display:flex;gap:8px;margin-top:10px}.view-invoice-btn{background:#495057;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.view-invoice-btn:hover{background:#343a40;transform:translateY(-1px)}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}@page{size:A4;margin:1.5cm 2cm}body{background:#fff!important;margin:0;padding:0}.admin-sidebar,.history-filters,.invoice-btn,.no-print,.page-header,.view-invoice-btn,button{display:none!important}.admin-main{margin:0!important;max-width:100%!important;padding:0!important;position:relative!important}.admin-main>div:first-of-type{display:none!important}body:before{content:"LAPORAN RIWAYAT PESANAN"!important;font-size:14pt!important;font-weight:700!important;margin-bottom:3px!important;padding-top:10px!important}body:after,body:before{color:#000!important;display:block!important;text-align:center!important}body:after{content:"ES BAR 79 - ICE CREAM & COFFEE"!important;font-size:11pt!important;font-weight:600!important;margin-bottom:2px!important}.admin-main:before{border-bottom:3px double #000!important;color:#000!important;content:"Jl. Kapten Halim, Lebakanyar, Purwakarta"!important;display:block!important;font-size:10pt!important;margin-bottom:20px!important;padding-bottom:15px!important;text-align:center!important}.history-row{background:#fff!important;border:2px solid #000!important;border-radius:0!important;box-shadow:none!important;margin-bottom:15px!important;padding:0!important;page-break-inside:avoid!important}.history-main{display:block!important}.history-header{background:#f5f5f5!important;border-bottom:2px solid #000!important;border-radius:0!important;font-size:10pt!important;padding:10px 12px!important}.history-left{margin-bottom:8px!important}.history-left,.history-right{display:block!important;float:none!important}.history-right{text-align:left!important}.customer-badge,.inv-badge-primary,.status-badge,.table-badge-history,.time-badge{background:none!important;border:none!important;border-radius:0!important;box-shadow:none!important;color:#000!important;display:inline-block!important;font-size:10pt!important;font-weight:400!important;margin:0 4px 0 0!important;padding:0!important}.inv-badge-primary:before{content:"No. Invoice: "!important;font-weight:700!important}.customer-badge:before{content:"Pemesan: "!important;font-weight:700!important}.table-badge-history:before{content:"Meja: "!important;font-weight:700!important}.time-badge:before{content:"Waktu: "!important;font-weight:700!important}.status-badge:before{content:"Status: "!important;font-weight:700!important}.customer-badge svg,.inv-badge-primary svg,.status-badge svg,.table-badge-history svg,.time-badge svg{display:none!important}.history-items{background:#fff!important;border-collapse:collapse!important;display:table!important;margin:0!important;padding:0!important;width:100%!important}.history-items:before{background:#e8e8e8!important;border-bottom:2px solid #000!important;color:#000!important;content:"No.     Nama Produk                         Jumlah"!important;display:block!important;font-family:Courier New,monospace!important;font-size:9pt!important;font-weight:700!important;padding:8px 12px!important;white-space:pre!important}.history-item{background:#fff!important;border:none!important;border-radius:0!important;box-shadow:none!important;counter-increment:item-counter!important;display:table-row!important;margin:0!important;padding:0!important;transform:none!important}.history-items{counter-reset:item-counter!important}.history-item:nth-child(odd){background:#fafafa!important}.history-item-image{display:none!important}.history-item-details{background:#0000!important;border-bottom:1px solid #ddd!important;color:#000!important;display:table-cell!important;padding:8px 12px!important;vertical-align:middle!important;width:70%!important}.history-item-details:before{content:counter(item-counter) ". "!important;font-weight:700!important;margin-right:8px!important}.history-item-name{display:inline!important;font-weight:400!important;margin:0!important}.history-item-name,.history-item-qty{color:#000!important;font-size:10pt!important}.history-item-qty{background:none!important;border:none!important;border-bottom:1px solid #ddd!important;border-radius:0!important;display:table-cell!important;font-weight:700!important;padding:8px 12px!important;text-align:center!important;vertical-align:middle!important;width:100px!important}.history-footer{background:#f5f5f5!important;border-top:2px solid #000!important;padding:10px 12px!important}.order-total-history{color:#000!important;font-size:11pt!important;font-weight:700!important}.order-total-history:before{content:"TOTAL PEMBAYARAN: "!important;font-weight:700!important}.history-row+.history-row{margin-top:15px!important}.history-header,h1,h2,h3{page-break-after:avoid!important}}.menu-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));padding:4px}.menu-card{background:#fff;border:1px solid #e8e8e8;border-radius:16px;box-shadow:0 4px 12px #0000000f;display:flex;flex-direction:column;padding:20px;transition:all .3s ease}.menu-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.menu-card .badge{border-radius:8px;display:inline-block;font-size:12px;font-weight:700;letter-spacing:.5px;margin-bottom:16px;padding:6px 12px;text-transform:uppercase;width:-webkit-fit-content;width:fit-content}.menu-card .badge.green{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:1px solid #c3e6cb;color:#155724}.menu-card .badge.grey{background:linear-gradient(135deg,#e2e3e5,#d6d8db);border:1px solid #d6d8db;color:#6c757d}.menu-card.soldout .badge.grey{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:1px solid #f5c6cb;color:#721c24}.menu-thumb{background:#f8f9fa;border:4px solid #fff;border-radius:50%;box-shadow:0 4px 12px #00000014;height:140px;margin:0 auto 16px;overflow:hidden;position:relative;width:140px}.menu-name{color:#2c3e50;font-size:16px;font-weight:800;line-height:1.4;margin-bottom:8px;margin-top:8px;text-align:center}.menu-price{color:#ff4545;font-size:18px;font-weight:900;letter-spacing:-.5px;margin-bottom:16px;margin-top:4px;text-align:center}.menu-actions{display:flex;gap:10px;margin-top:auto}.edit-btn{background:linear-gradient(135deg,#38d66f,#2ecc71);border:none;border-radius:10px;box-shadow:0 2px 8px #38d66f4d;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;padding:10px 16px;transition:all .2s ease}.edit-btn:hover{box-shadow:0 4px 12px #38d66f66;transform:translateY(-2px)}.edit-btn:disabled{background:#9ca3af;box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.delete-btn{background:linear-gradient(135deg,#ff6a6a,#e74c3c);border:none;border-radius:10px;box-shadow:0 2px 8px #ff6a6a4d;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;padding:10px 16px;transition:all .2s ease}.delete-btn:hover{box-shadow:0 4px 12px #ff6a6a66;transform:translateY(-2px)}.delete-btn:disabled{background:#9ca3af;box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.menu-card.add{align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff);border:2px dashed #ddd;cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:320px;transition:all .3s ease}.menu-card.add:hover{background:linear-gradient(135deg,#fff5f5,#fff);border-color:#ff4545}.menu-card.add .add-box{align-items:center;background:linear-gradient(135deg,#f1f3f5,#e9ecef);border-radius:50%;display:flex;height:140px;justify-content:center;margin:0 auto 16px;width:140px}.menu-card.add .plus{color:#555;font-size:36px;font-weight:800}.menu-add-text{font-weight:700;margin-top:10px;text-align:center}.panel{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;margin-bottom:24px;padding:24px}.panel h4{color:#2c3e50;font-size:18px;font-weight:700;margin:0 0 20px}.form-input{border:1px solid #dcdcdc;border-radius:8px;box-sizing:border-box;font-size:14px;outline:none;padding:12px 14px;transition:border-color .2s;width:100%}.form-input:focus{border-color:#38d66f}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-col{display:flex;flex-direction:column;gap:8px}.input-label{color:#495057;font-size:13px;font-weight:600}.form-actions{display:flex;gap:12px;margin-top:8px}.form-actions button{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-weight:700;padding:12px;transition:opacity .2s}.form-actions button:hover{opacity:.9}.image-upload-section{display:flex;flex-direction:column;gap:10px}.image-upload-label{color:#495057;font-size:14px;font-weight:600}.image-preview{display:flex;justify-content:center;margin-top:10px}.image-preview img{border:2px solid #e9ecef;border-radius:12px;max-height:250px;max-width:250px;object-fit:cover}@media (max-width:900px){.menu-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.menu-grid{grid-template-columns:1fr}}.order-card{background:#fff;border:1px solid #e8e8e8;border-radius:16px;box-shadow:0 4px 20px #00000014;margin-bottom:20px;overflow:hidden;padding:0;transition:transform .2s ease,box-shadow .2s ease}.order-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-2px)}.order-head{background:linear-gradient(135deg,#fff,#fff5f5);border-bottom:2px solid #ffe0e0;padding:20px}.order-head-horizontal{align-items:center;background:#fff;border-radius:12px;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px;padding:12px 16px}.invoice-badge-large{background:linear-gradient(135deg,#ff3d3d,#e63939);border-radius:10px;box-shadow:0 3px 12px #ff3d3d4d;color:#fff;font-size:16px;font-weight:800;padding:10px 20px;white-space:nowrap}.order-info-center{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:10px}.customer-name-badge{background:#f0f0f0;color:#333}.customer-name-badge,.table-number-badge{align-items:center;border-radius:8px;display:inline-flex;font-size:14px;font-weight:600;padding:6px 14px;white-space:nowrap}.table-number-badge{background:#4a90e2;color:#fff}.order-time-badge{border:1px solid #e8f2ff;border-radius:6px;color:#4a90e2}.order-complete-badge,.order-time-badge{align-items:center;background:#fff;display:inline-flex;font-size:13px;font-weight:500;padding:4px 10px;white-space:nowrap}.order-complete-badge{border:1px solid #e8fff5;border-radius:6px;color:#10b981}.order-summary-right{align-items:center;display:flex;flex-shrink:0;gap:12px}.order-total-large{color:#e63939;font-size:20px;font-weight:800;white-space:nowrap}.order-primary-info{align-items:center;display:flex;flex-wrap:nowrap;gap:10px;margin-bottom:12px}.customer-name-display{background:linear-gradient(135deg,#ff4545,#e63939);box-shadow:0 3px 12px #ff45454d}.customer-name-display,.table-number-display{align-items:center;border-radius:10px;color:#fff;display:inline-flex;font-size:15px;font-weight:700;gap:6px;letter-spacing:.2px;padding:8px 16px;white-space:nowrap}.table-number-display{background:linear-gradient(135deg,#ff6b9d,#ee5a88);box-shadow:0 3px 12px #ff6b9d4d}.order-secondary-info{align-items:center;display:flex;flex-wrap:nowrap;gap:10px;margin-bottom:14px}.order-date-small,.order-id-small,.order-time-small{align-items:center;background:#fff0f5;border:1px solid #ffe0e8;border-radius:8px;color:#666;display:inline-flex;font-size:12px;font-weight:600;gap:5px;padding:6px 12px}.order-id-small{color:#ff4545;font-weight:700}.order-status-row{align-items:center;display:flex;gap:10px}.order-id-info{background:#fff3cd;color:#495057}.order-date,.order-id-info{align-items:center;border-radius:8px;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:6px 12px}.order-date{background:#e3f2fd;color:#2c3e50}.order-head .meta{color:#333;font-size:14px}.status-btn{border:none;border-radius:10px;cursor:pointer;font-size:14px;font-weight:700;padding:10px 20px;transition:all .2s ease}.status-btn.primary{background:linear-gradient(135deg,#2ecc71,#27ae60);box-shadow:0 4px 12px #2ecc714d;color:#fff}.status-btn.primary:hover{box-shadow:0 6px 16px #2ecc7166;transform:translateY(-2px)}.status-btn.done{background:#e9ecef;color:#6c757d;cursor:not-allowed}.order-items{grid-gap:16px;background:linear-gradient(135deg,#fafbfc,#f5f6f8);border-radius:14px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));padding:20px}.item-pill{align-items:center;background:linear-gradient(135deg,#fff,#fafbfc);border:2px solid #f0f0f0;border-radius:16px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;gap:12px;min-height:180px;padding:16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.item-pill:hover{background:#fff;border-color:#ff3d3d;box-shadow:0 8px 24px #ff3d3d26;transform:translateY(-4px)}.item-pill .item-thumb,.item-pill .thumb{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:3px solid #fff;border-radius:50%;box-shadow:0 4px 16px #0000001f;flex-shrink:0;height:90px;margin:0 auto;object-fit:cover;object-position:center;transition:transform .3s ease;width:90px}.item-pill .item-thumb:hover,.item-pill .thumb:hover{transform:scale(1.05)}.item-pill .thumb{background:#ff5050;box-shadow:inset 0 0 0 8px #ffdede}.item-pill .info{flex:1 1;min-width:0;text-align:center;width:100%}.item-pill .info .name{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#2c3e50;display:-webkit-box;font-size:14px;font-weight:700;line-height:1.4;margin-bottom:8px;overflow:hidden;text-align:center}.item-pill .info .qty{color:#6c757d;font-size:12px;margin-top:2px}.item-pill .info .qty-badge{border-radius:20px;box-shadow:0 3px 10px #ff3d3d66;display:inline-block;font-size:13px;font-weight:800;letter-spacing:.5px;padding:6px 14px}.item-pill .info .qty-badge,.item-pill .no-image-placeholder{background:linear-gradient(135deg,#ff4545,#e63939);color:#fff}.item-pill .no-image-placeholder{align-items:center;border:3px solid #fff;border-radius:50%;box-shadow:0 4px 16px #ff3d3d4d;display:flex;font-size:48px;height:90px;justify-content:center;margin:0 auto;width:90px}.order-footer{align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff);border-top:2px solid #f1f3f5;display:flex;justify-content:space-between;padding:20px}.order-total-section{display:flex;flex-direction:column;gap:4px}.order-total-section .total-label{color:#6c757d;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.order-total-section .total-value{color:#ff4545;font-size:24px;font-weight:900;letter-spacing:-.5px}.item-with-image{align-items:center;display:flex;gap:12px;margin-bottom:8px}.item-image{background:#e9ecef;border-radius:8px;flex-shrink:0;height:120px;object-fit:cover;width:120px}.item-details{flex:1 1}.item-name{font-weight:600;margin-bottom:4px}.item-qty{color:#666;font-size:13px}.order-total{margin-top:10px}.order-total .label{font-weight:700}.order-total .value.red{color:#e64343;font-weight:800}.pill{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;letter-spacing:.1px;padding:6px 10px}.pill.ok{background:#e7f7ef;color:#168f4d}.pill.proc{background:#fff4e0;color:#c77000}.pill.warn{background:#fff0f0;color:#c91f3b}.pill.muted{background:#eef2f6;color:#6b7280}@media (max-width:768px){.admin-layout{flex-direction:column}.admin-sidebar{height:auto;max-height:50vh;padding:16px;position:relative;width:100%}.admin-main{max-height:none;padding:16px}.page-header{align-items:flex-start;flex-direction:column}.header-actions{flex-direction:column;gap:12px;width:100%}.filter-inline,.filter-inline input{width:100%}.order-card{margin-bottom:16px}.order-items{gap:12px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));padding:16px}.item-pill{min-height:150px;padding:12px}.item-pill .item-thumb,.item-pill .thumb,.no-image-placeholder{height:100px}.history-items{gap:12px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));padding:16px}.order-head{flex-wrap:wrap}.order-primary-info,.order-secondary-info,.order-status-row{flex-wrap:wrap;gap:8px}.customer-name-display,.table-number-display{font-size:16px;padding:10px 16px}.order-total-section{align-items:flex-start;flex-direction:column;gap:4px}.order-footer{flex-direction:column;gap:12px}.status-btn{width:100%}.admin-login-page{padding:20px 15px}.admin-login-header{margin-bottom:20px}.admin-login-card{max-width:100%;padding:24px 20px;width:100%}.brand-pill{font-size:14px;padding:8px 14px}.brand-pill .brand-sub{font-size:9px}.input-wrap input{font-size:16px}.primary-btn{max-width:200px;width:100%}}.cashier-content{background:#f8f9fa;border-radius:16px;min-height:calc(100vh - 100px);padding:20px}.empty-state{background:#fff;border:1px solid #e0e0e0;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:60px 20px;text-align:center}.empty-icon{color:#22c55e;font-size:60px;margin-bottom:20px}.empty-state h2{color:#333;margin:0 0 10px}.empty-state p{color:#666;margin:0}.unpaid-orders-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.unpaid-order-card{background:#fff;border:2px solid #f9585b;border-radius:16px;box-shadow:0 2px 8px #00000014;padding:24px;transition:all .3s ease}.unpaid-order-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.order-header-cashier{border-bottom:1px solid #e0e0e0;margin-bottom:20px;padding-bottom:15px}.order-code-big{color:#f9585b;font-size:32px;font-weight:900;margin-bottom:10px}.order-meta{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.order-table{background:#f9585b;border-radius:8px;color:#fff;font-size:16px;font-weight:600;padding:6px 12px}.order-time{color:#666;font-size:13px}.customer-info{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:10px;font-size:16px;margin-bottom:16px;padding:12px 16px}.customer-info strong{color:#333}.order-items-cashier{margin-bottom:16px}.order-items-cashier h4{color:#1a1a2e;font-size:17px;font-weight:600;margin:0 0 12px}.order-items-cashier ul{list-style:none;margin:0;padding:0}.order-items-cashier li{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;gap:10px;padding:10px 0}.order-items-cashier li:last-child{border-bottom:none}.item-qty{background:#f9585b;border-radius:6px;color:#fff;font-size:14px;font-weight:700;min-width:35px;padding:4px 8px;text-align:center}.item-name{flex:1 1}.item-name,.item-price{color:#333;font-size:16px}.item-price{font-weight:600}.order-total-cashier{align-items:center;background:#f9585b;border-radius:12px;color:#fff;display:flex;justify-content:space-between;margin-bottom:16px;padding:16px 20px}.order-total-cashier span{font-size:16px;font-weight:500}.order-total-cashier strong{font-size:24px;font-weight:900}.order-actions-cashier{margin-bottom:12px}.btn-mark-paid{background:#22c55e;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:14px 20px;transition:all .3s ease;width:100%}.btn-mark-paid:hover:not(:disabled){background:#16a34a;transform:translateY(-2px)}.btn-mark-paid:disabled{background:#ccc;cursor:not-allowed}.payment-instructions{background:#f8f9fa;border-left:3px solid #f9585b;border-radius:6px;display:none;padding:10px 12px}.payment-instructions small{color:#555;font-size:12px;line-height:1.5}.payment-instructions strong{color:#f9585b;font-weight:600}@media (max-width:768px){.unpaid-orders-grid{grid-template-columns:1fr}.order-code-big{font-size:28px}.order-meta{flex-direction:column;gap:8px}.order-total-cashier strong{font-size:20px}}.settings-container{margin:0 auto;max-width:800px;padding:20px}.settings-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:30px}.settings-section-title{border-bottom:2px solid #f0f0f0;color:#1a1a2e;font-size:24px;font-weight:700;margin-bottom:25px;padding-bottom:15px}.setting-item{margin-bottom:20px}.setting-label{align-items:center;color:#333;cursor:pointer;display:flex;font-size:16px;font-weight:500;margin-bottom:10px}.setting-label input[type=checkbox]{accent-color:#f9585b;cursor:pointer;height:20px;margin-right:12px;width:20px}.setting-label span{-webkit-user-select:none;user-select:none}.setting-input,.setting-select{background:#fff;border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:15px;padding:12px 15px;transition:border-color .3s ease;width:100%}.setting-input:focus,.setting-select:focus{border-color:#f9585b;box-shadow:0 0 0 3px #f9585b1a;outline:none}.setting-actions{display:flex;gap:12px;margin-top:25px}.save-settings-btn,.test-sound-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:12px 24px;transition:all .3s ease}.test-sound-btn{background:#fff;border:2px solid #f9585b;color:#f9585b}.test-sound-btn:hover{background:#f9585b;transform:translateY(-2px)}.save-settings-btn,.test-sound-btn:hover{box-shadow:0 4px 12px #f9585b4d;color:#fff}.save-settings-btn{background:linear-gradient(135deg,#f9585b,#ff3d3d)}.save-settings-btn:hover{box-shadow:0 6px 16px #f9585b66;transform:translateY(-2px)}.save-settings-btn:active,.test-sound-btn:active{transform:translateY(0)}.settings-info{background:#f8f9fa;border-left:4px solid #f9585b;border-radius:8px;margin-top:20px;padding:20px}.settings-info h3{color:#1a1a2e;font-size:18px;font-weight:700;margin-bottom:15px}.settings-info p{color:#555;font-size:14px;line-height:1.6;margin-bottom:12px}.settings-info p:last-child{margin-bottom:0}@media (max-width:768px){.settings-container{padding:15px}.settings-card{padding:20px}.settings-section-title{font-size:20px}.setting-actions{flex-direction:column}.save-settings-btn,.test-sound-btn{width:100%}}.image-cropper-modal{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.cropper-container{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0006;max-width:380px;padding:16px;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.cropper-container h3{color:#2c3e50;font-size:18px;font-weight:700;margin:0 0 14px;text-align:center}.preview-meta{color:#6c757d;font-size:12px;margin-bottom:10px}.crop-area{aspect-ratio:1;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;box-shadow:inset 0 0 20px #0000001a;cursor:grab;margin:0 auto 16px;max-width:320px;overflow:hidden;position:relative;touch-action:none;width:100%}.crop-area:active{cursor:grabbing}.crop-area img{-webkit-user-drag:none;max-width:none;transform-origin:center;-webkit-user-select:none;user-select:none;will-change:transform}.crop-area img,.image-loading{left:50%;position:absolute;top:50%}.image-loading{text-align:center;transform:translate(-50%,-50%);z-index:10}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#28a745;height:50px;margin:0 auto 16px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.image-loading p{color:#495057;font-size:14px;font-weight:600;margin:0}.crop-circle{animation:pulse 2s ease-in-out infinite;aspect-ratio:1;border:4px solid #fff;border-radius:50%;box-shadow:0 0 0 9999px #00000080,0 0 20px #ffffff4d,inset 0 0 20px #fff3;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:70%}@keyframes pulse{0%,to{box-shadow:0 0 0 9999px #00000080,0 0 20px #ffffff4d,inset 0 0 20px #fff3}50%{box-shadow:0 0 0 9999px #00000080,0 0 25px #fff6,inset 0 0 25px #ffffff4d}}.grid-line{background:#fff6;pointer-events:none;position:absolute;z-index:1}.grid-h{height:1px;left:0;width:100%}.grid-v{height:100%;top:0;width:1px}.crop-controls{background:#f8f9fa;border-radius:12px;margin-bottom:18px;padding:14px}.control-row{margin-bottom:12px}.control-row:last-child{margin-bottom:0}.control-label{color:#495057;display:block;font-size:14px;font-weight:600;margin-bottom:10px}.zoom-slider{-webkit-appearance:none;background:linear-gradient(90deg,#e9ecef 0,#28a745);border-radius:3px;cursor:pointer;height:6px;margin-top:8px;outline:none;width:100%}.zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#28a745;border-radius:50%;box-shadow:0 2px 8px #28a74566;cursor:pointer;height:20px;-webkit-transition:all .2s;transition:all .2s;width:20px}.zoom-slider::-webkit-slider-thumb:hover{box-shadow:0 3px 12px #28a74599;transform:scale(1.2)}.zoom-slider::-moz-range-thumb{background:#28a745;border:none;border-radius:50%;box-shadow:0 2px 8px #28a74566;cursor:pointer;height:20px;-moz-transition:all .2s;transition:all .2s;width:20px}.zoom-slider::-moz-range-thumb:hover{box-shadow:0 3px 12px #28a74599;transform:scale(1.2)}.control-buttons{display:flex;gap:8px}.control-btn{background:#fff;border:2px solid #dee2e6;border-radius:8px;color:#495057;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:10px 16px;transition:all .2s}.control-btn:hover{background:#e9ecef;border-color:#adb5bd;transform:translateY(-1px)}.control-btn.active{background:#28a745;border-color:#28a745;color:#fff}.crop-tips{background:linear-gradient(135deg,#fff3cd,#fff9e6);border-left:4px solid #ffc107;border-radius:6px;color:#856404;font-size:12px;line-height:1.5;margin-top:12px;padding:10px}.crop-actions{display:flex;gap:12px;justify-content:center}.cancel-btn,.crop-btn{border:none;border-radius:10px;box-shadow:0 4px 12px #00000026;cursor:pointer;flex:1 1;font-size:15px;font-weight:700;padding:14px 28px;transition:all .2s}.cropper-container:focus{outline:none}.cancel-btn{background:linear-gradient(135deg,#6c757d,#5a6268);color:#fff}.cancel-btn:hover{background:linear-gradient(135deg,#5a6268,#495057);box-shadow:0 6px 16px #00000040;transform:translateY(-2px)}.crop-btn{background:linear-gradient(135deg,#28a745,#218838);color:#fff}.crop-btn:hover{background:linear-gradient(135deg,#218838,#1e7e34);box-shadow:0 6px 16px #28a74566;transform:translateY(-2px)}.cancel-btn:active,.crop-btn:active{transform:translateY(0)}@media (max-width:600px){.cropper-container{padding:20px;width:95%}.crop-area{margin-bottom:20px;width:100%}.crop-circle{width:75%}.control-btn{font-size:12px;padding:8px 12px}.crop-tips{font-size:11px}.cancel-btn,.crop-btn{font-size:14px;padding:12px 20px}}.pay-success{align-items:center;background:#f5f5f5;display:flex;justify-content:center;min-height:100vh;padding:20px}.pay-success .card{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;max-width:450px;padding:40px 30px;text-align:center;width:100%}.pay-success .success-logo{display:flex;justify-content:center;margin-bottom:20px}.pay-success .brand-logo-rect{align-items:center;background:linear-gradient(135deg,#f9585b,#dc3545);border-radius:8px;box-shadow:0 4px 12px #f9585b4d;display:flex;flex-direction:column;justify-content:center;padding:10px 24px}.pay-success .brand-name-main{color:#fff;font-size:18px;font-weight:800;letter-spacing:1px;line-height:1.2}.pay-success .brand-subtitle{color:#fff;font-size:8px;font-weight:600;letter-spacing:1.5px;line-height:1;margin-top:2px;text-transform:uppercase}.pay-success .success-icon{align-items:center;background:#f9585b;border-radius:50%;display:flex;height:70px;justify-content:center;margin:0 auto 20px;width:70px}.pay-success .success-icon svg{color:#fff;height:35px;width:35px}.pay-success h1{color:#1a1a2e;font-size:24px;font-weight:700;margin:0 0 25px}.pay-success .detail{background:#f8f9fa;border-radius:10px;margin-bottom:25px;padding:15px 20px;text-align:left}.pay-success .detail-row{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:10px 0}.pay-success .detail-row:last-child{border-bottom:none}.pay-success .detail-row.total{border-bottom:none;border-top:1px solid #e0e0e0;margin-top:5px;padding-top:12px}.pay-success .detail-row span{color:#666;font-size:13px}.pay-success .detail-row strong{color:#1a1a2e;font-size:14px}.pay-success .detail-row.total strong{color:#f9585b;font-size:18px;font-weight:700}.pay-success .actions{display:flex;flex-direction:column;gap:12px}.pay-success .btn-primary{background:#f9585b;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px 24px;transition:background .2s ease;width:100%}.pay-success .btn-primary:hover{background:#e04548}@media (max-width:600px){.pay-success .card{padding:30px 20px}.pay-success h1{font-size:22px}.pay-success .success-icon{height:60px;width:60px}.pay-success .success-icon svg{height:30px;width:30px}}.payment-page{align-items:center;background:#f5f5f5;display:flex;justify-content:center;min-height:100vh;padding:20px}.payment-page .card{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;max-width:480px;padding:35px 30px;text-align:center;width:100%}.payment-header{border-bottom:1px solid #e0e0e0;margin-bottom:25px;padding-bottom:20px}.payment-page .brand-logo{align-items:center;background:#f9585b;border-radius:10px;display:inline-flex;flex-direction:column;justify-content:center;padding:12px 24px}.payment-page .brand-name{color:#fff;font-size:18px;font-weight:800;letter-spacing:1px}.payment-page .brand-sub{color:#fff;font-size:8px;letter-spacing:1px;margin-top:2px;text-transform:uppercase}.store-brand{color:#f9585b;font-size:28px;font-weight:900;letter-spacing:2px;margin-bottom:5px}.store-sub{color:#999;font-size:11px;letter-spacing:3px;text-transform:uppercase}.payment-page .label{background:#f9585b;border-radius:999px;color:#fff;display:inline-block;font-size:12px;font-weight:700;letter-spacing:1px;margin-bottom:12px;padding:8px 16px;text-transform:uppercase}.payment-page h1{color:#1a1a2e;font-size:24px;font-weight:700;margin:0 0 8px}.payment-page p{color:#666;font-size:14px;margin:0 0 20px}.payment-page .subtitle{color:#888;font-size:14px}.payment-page img{border-radius:14px;box-shadow:0 8px 22px #0000001a;display:block;margin:0 auto 14px;max-width:240px;width:100%}.payment-page .info{display:flex;flex-direction:column;gap:8px;margin:10px 0 16px;text-align:left}.payment-page .info-detail{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;margin:20px 0;padding:16px}.payment-page .info-row{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:10px 0}.payment-page .info-row:last-child{border-bottom:none}.payment-page .info-label{color:#6c757d;font-size:13px;font-weight:500}.payment-page .info-value{color:#212529;font-size:14px;font-weight:600;text-align:right}.payment-page .total-row{border-bottom:none!important;border-top:2px solid #dc3545!important;margin-top:8px;padding-top:16px!important}.payment-page .total-value{color:#dc3545;font-size:18px}.payment-page .brand-header{border-bottom:2px solid #dc3545;margin-bottom:20px;padding-bottom:16px;text-align:center}.payment-header{margin-bottom:24px;text-align:center}.payment-logo{margin-bottom:16px}.brand-logo-rect,.payment-logo{display:flex;justify-content:center}.brand-logo-rect{align-items:center;background:linear-gradient(135deg,#f9585b,#dc3545);border-radius:8px;box-shadow:0 4px 12px #f9585b4d;flex-direction:column;padding:10px 24px}.brand-name-main{color:#fff;font-size:18px;font-weight:800;letter-spacing:1px;line-height:1.2}.brand-subtitle{color:#fff;font-size:8px;font-weight:600;letter-spacing:1.5px;line-height:1;margin-top:2px;text-transform:uppercase}.payment-title{color:#1a1a2e;font-size:20px;font-weight:700;margin:0}.payment-subtitle{color:#6c757d;font-size:13px;margin:8px 0 0}.order-summary-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;margin-bottom:20px;padding:16px}.summary-title{color:#1a1a2e;font-size:14px;font-weight:700;margin:0 0 12px;text-align:center}.summary-content{display:flex;flex-direction:column;gap:10px}.summary-item{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:8px 0}.summary-item:last-child{border-bottom:none}.summary-item span{color:#6c757d;font-size:13px;font-weight:500}.summary-item b{color:#212529;font-size:14px;font-weight:600}.summary-total{border-bottom:none!important;border-top:2px solid #dc3545!important;margin-top:8px;padding-top:12px!important}.total-amount{color:#dc3545!important;font-size:18px!important}.order-code-display{background:#fff;border:2px dashed #dc3545;border-radius:8px;margin-bottom:16px;padding:12px;text-align:center}.order-code-display .code-label{color:#6c757d;display:block;font-size:11px;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.order-code-display .code-value{color:#dc3545;display:block;font-size:24px;font-weight:800;letter-spacing:1px}.payment-note{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-top:16px;padding:12px}.payment-note p{color:#856404;font-size:12px;margin:0;text-align:center}.sandbox-dropdown{margin-top:20px}.sandbox-toggle{align-items:center;background:#9e9e9e;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;justify-content:space-between;padding:14px 20px;transition:background .3s ease;width:100%}.sandbox-toggle:hover{background:#757575}.dropdown-icon{font-size:12px;margin-left:8px}.sandbox-info-dropdown{animation:slideDown .3s ease;background:#e8f4fd;border:2px solid #2196f3;border-radius:8px;margin-top:8px;padding:16px;text-align:left}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.sandbox-info-dropdown p{color:#0d47a1;font-size:13px;margin-bottom:8px;text-align:left}.sandbox-info-dropdown p strong{color:#1565c0;font-weight:700}.sandbox-info-dropdown ol{color:#0d47a1;margin:10px 0;padding-left:20px}.sandbox-info-dropdown li{font-size:12px;line-height:1.6;margin-bottom:8px}.sandbox-info-dropdown li strong{background:#fff;border-radius:4px;color:#f9585b;padding:2px 6px}.sandbox-info-dropdown em{color:#1976d2;font-style:normal;font-weight:600}.payment-note.sandbox-info{background:#e8f4fd;border:2px solid #2196f3;padding:16px;text-align:left}.payment-note.sandbox-info p{color:#0d47a1;font-size:13px;margin-bottom:8px;text-align:left}.payment-note.sandbox-info p strong{color:#1565c0;font-weight:700}.payment-note.sandbox-info ol{color:#0d47a1;margin:10px 0;padding-left:20px}.payment-note.sandbox-info li{font-size:12px;line-height:1.6;margin-bottom:8px}.payment-note.sandbox-info li strong{background:#fff;border-radius:4px;color:#f9585b;padding:2px 6px}.payment-note.sandbox-info em{color:#1976d2;font-style:normal;font-weight:600}.payment-page .brand-logo-payment{align-items:center;display:flex;flex-direction:column}.payment-page .brand-name-payment{color:#dc3545;font-size:28px;font-weight:800;letter-spacing:1px}.payment-page .brand-sub-payment{color:#6c757d;font-size:11px;font-weight:600;letter-spacing:2px;margin-top:2px}.payment-page .info span{color:#777;font-size:13px}.payment-page .info b{display:block;font-size:16px}.payment-page .actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.payment-page button{background:#f9585b;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:all .2s ease}.payment-page button:hover:not(:disabled){background:#e04548;transform:translateY(-1px)}.payment-page button:disabled{cursor:not-allowed;opacity:.6;transform:none}.payment-page button.ghost{background:#f0f0f0;color:#333}.payment-page button.ghost:hover:not(:disabled){background:#e5e5e5}.payment-page .alert{background:#ffecec;border:1px solid #ffd1d1;border-radius:10px;color:#c23232;font-size:13px;line-height:1.5;margin-bottom:0;margin-top:16px;padding:12px 16px;text-align:center}.payment-page .error-alert{background:#ffecec;border:1px solid #ffd1d1;color:#c23232}.payment-methods{display:flex;flex-direction:column;gap:12px;margin:25px 0}.payment-method-btn{align-items:center;background:#fff;border:2px solid #e8e8e8;border-radius:12px;cursor:pointer;display:flex;padding:18px 20px;text-align:left;transition:all .2s ease}.payment-method-btn:hover:not(:disabled){background:#fef7f7;border-color:#f9585b;box-shadow:0 2px 8px #f9585b26}.payment-method-btn:disabled{cursor:not-allowed;opacity:.5}.payment-method-btn.check-status{background:#f0fff4;border-color:#28a745}.payment-method-btn.check-status:hover:not(:disabled){background:#d4f4dd;border-color:#28a745;box-shadow:0 2px 8px #28a74526}.payment-method-btn.check-status h3{color:#28a745}.payment-method-btn.check-status p{color:#6c757d}.payment-method-btn .method-info{flex:1 1}.payment-method-btn h3{color:#1a1a2e;font-size:16px;font-weight:600;margin:0 0 4px}.payment-method-btn p{color:#fff;font-size:13px;margin:0}.payment-method-btn.qris{border-left:4px solid #f9585b}.payment-method-btn.qris:hover:not(:disabled){border-color:#f9585b}.payment-method-btn.cash{border-left:4px solid #f9585b}.payment-method-btn.cash:hover:not(:disabled){border-color:#f9585b}.back-btn-full{background:#f5f5f5!important;color:#666!important;font-weight:500!important;margin-top:15px;padding:12px!important;width:100%}.back-btn-full:hover:not(:disabled){background:#eee!important;color:#333!important}.cash-info{background:#f8f9fa;border:1px solid #e0e0e0;border-left:4px solid #f9585b;border-radius:8px;margin:20px 0;padding:20px;text-align:left}.cash-info h3{color:#333;font-size:15px;font-weight:600;margin:0 0 15px}.cash-info ol{margin:0;padding-left:20px}.cash-info li{color:#555;font-size:14px;line-height:1.8;margin-bottom:8px}.cash-info li strong{color:#f9585b;font-weight:600}.payment-page button.primary{background:#f9585b!important}.payment-page button.primary:hover:not(:disabled){background:#e04548!important}.waiting-cashier-page{align-items:center;background:#f5f5f5;display:flex;justify-content:center;min-height:100vh;padding:20px}.waiting-card{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;max-width:450px;padding:40px 30px;text-align:center;width:100%}.order-header{margin-bottom:25px}.brand-logo{align-items:center;border-radius:10px;display:inline-flex;flex-direction:column;justify-content:center;margin-bottom:20px;padding:12px 24px}.brand-logo,.brand-logo.success{background:#f9585b}.brand-name{font-size:18px;font-weight:800}.brand-name,.brand-sub{color:#fff;letter-spacing:1px}.brand-sub{font-size:8px;margin-top:2px;text-transform:uppercase}.waiting-card h1{color:#1a1a2e;font-size:22px;font-weight:700;margin:15px 0 8px}.subtitle{color:#666;font-size:14px;margin-bottom:0}.order-code{border-radius:12px;margin:25px 0;padding:25px 20px}.order-code,.order-code.success{background:#f9585b}.code-label{font-size:12px;font-weight:600;margin-bottom:10px;text-transform:uppercase}.code-label,.code-value{color:#fff;letter-spacing:2px}.code-value{font-size:42px;font-weight:900}.payment-info{background:#f8f9fa;border-radius:10px;margin-bottom:20px;padding:15px 20px;text-align:left}.info-row{align-items:center;border-bottom:1px solid #e0e0e0;padding:10px 0}.info-row.total,.info-row:last-child{border-bottom:none}.info-row.total{border-top:1px solid #e0e0e0;font-size:18px;margin-top:5px;padding-top:12px}.info-row span{color:#666;font-size:13px}.info-row strong{color:#1a1a2e;font-size:14px}.info-row.total strong{color:#f9585b;font-size:18px;font-weight:700}.status-indicator{background:#f8f9fa;border-radius:10px;margin:25px 0;padding:20px}.loading-dots{display:flex;gap:8px;justify-content:center;margin-bottom:15px}.loading-dots span{animation:bounce 1.4s ease-in-out infinite;background:#f9585b;border-radius:50%;height:10px;width:10px}.loading-dots span:first-child{animation-delay:0s}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,to{opacity:.5;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.status-indicator p{color:#666;font-size:14px;margin:0}.actions{margin-top:30px}.check-btn{background:#f9585b;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px 24px;transition:background .2s ease;width:100%}.check-btn:hover:not(:disabled){background:#e04548}.check-btn:disabled{background:#ccc;cursor:not-allowed}.back-button{background:#0000;border:2px solid #e0e0e0;border-radius:10px;color:#666;cursor:pointer;display:block;font-size:14px;font-weight:600;margin:20px auto 0;max-width:300px;padding:12px 24px;transition:all .2s ease;width:100%}.back-button:hover{background:#f5f5f5;border-color:#d0d0d0;color:#333}.cancel-confirm{background:#fff8f8;border:2px solid #ffe0e0;border-radius:12px;margin-top:20px;padding:20px}.cancel-warning{color:#d32f2f;font-size:15px;font-weight:600;margin-bottom:15px}.cancel-actions{display:flex;gap:12px;justify-content:center}.cancel-no,.cancel-yes{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;min-width:100px;padding:10px 24px;transition:all .2s ease}.cancel-no{background:#f5f5f5;color:#666}.cancel-no:hover{background:#e0e0e0;color:#333}.cancel-yes{background:#d32f2f;color:#fff}.cancel-yes:hover{background:#b71c1c}.success-check{align-items:center;background:#f9585b;border-radius:50%;display:flex;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.success-check svg{color:#fff;height:30px;width:30px}.redirect-text{color:#666;font-size:14px;margin-top:15px}@media (max-width:600px){.waiting-card{padding:30px 20px}.waiting-card h1{font-size:22px}.code-value{font-size:36px}.success-check{height:50px;width:50px}.success-check svg{height:25px;width:25px}.back-button{max-width:100%}.cancel-actions{flex-direction:column}.cancel-no,.cancel-yes{width:100%}}.invoice-wrapper{background:#f5f5f5;min-height:100vh;padding:30px 20px}.invoice-actions{align-items:stretch;background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;display:flex;flex-wrap:nowrap;gap:10px;justify-content:center;margin:0 auto 20px;max-width:500px;padding:12px;position:relative;z-index:10}.invoices-container{display:flex;flex-direction:column;gap:30px;margin:0 auto;max-width:500px;padding-bottom:40px}.invoice-card-wrapper{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;overflow:hidden;position:relative}.invoice-card-wrapper:hover{box-shadow:0 4px 16px #0000001f}.invoice-badge{font-size:12px;font-weight:600;letter-spacing:.5px;padding:10px 20px;text-align:center;text-transform:uppercase}.invoice-badge.newest{background:#f9585b;color:#fff}.invoice-badge.old{background:#888;color:#fff}.back-btn,.logout-btn,.order-again-btn,.print-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:5px;justify-content:center;padding:8px 14px;transition:all .2s ease;white-space:nowrap}.back-btn{background:#f0f0f0;color:#666;flex:1 1;padding:8px 14px}.back-btn:hover{background:#e5e5e5;color:#333;transform:translateY(-1px)}.order-again-btn{background:#f9585b;color:#fff;flex:1 1}.order-again-btn:hover{background:#e04548}.print-btn{background:#f9585b;border:2px solid #f9585b;color:#fff;flex:1 1}.print-btn:hover{background:#e04548;border-color:#e04548;transform:translateY(-1px)}.logout-btn{background:#f0f0f0;color:#666;flex:1 1}.logout-btn:hover{background:#e5e5e5;color:#333}.invoice-container{display:flex;justify-content:center;padding:20px}.invoice-paper{background:#fff;border:2px solid #1a1a2e;border-radius:8px;font-family:Courier New,monospace;margin:0;max-width:320px;padding:20px;width:100%}.invoice-header{margin-bottom:15px;text-align:center}.store-logo{margin-bottom:10px}.logo-box{background:#f9585b;border:2px solid #1a1a2e;border-radius:10px;display:inline-block;padding:10px 20px;text-align:center}.logo-title{font-size:16px;font-weight:700;margin-bottom:2px}.logo-subtitle,.logo-title{color:#fff;letter-spacing:1px;line-height:1.2}.logo-subtitle{font-size:8px;font-weight:600}.store-name{font-size:18px;font-weight:700;margin-bottom:4px}.store-tagline{font-size:12px;margin-bottom:8px}.store-address,.store-phone{color:#666;font-size:10px;margin-bottom:2px}.invoice-divider{border-top:1px dashed #ccc;margin:12px 0}.invoice-info{color:#333;font-size:11px;margin-bottom:10px}.info-row{display:flex;justify-content:space-between;margin-bottom:4px}.info-row .right{color:#666;text-align:right}.invoice-items{font-size:11px;margin:15px 0}.items-title{color:#f9585b;font-size:12px;font-weight:700}.item-group,.items-title{margin-bottom:10px}.item-line{color:#333;line-height:1.4;margin-bottom:2px}.item-line.indent{color:#666;padding-left:15px}.item-line.right-align{color:#1a1a2e;font-weight:600;margin-top:2px;text-align:right}.invoice-totals{font-size:11px}.total-row{color:#333;display:flex;font-weight:600;justify-content:space-between;margin-bottom:6px}.total-row:first-child{color:#f9585b;font-size:13px}.invoice-footer{background:#f9585b;border-radius:10px;box-shadow:0 2px 8px #0000000f;color:#fff;margin-top:18px;padding:10px 0 0;text-align:center}.invoice-footer-brand{margin-bottom:2px}.invoice-footer-logo{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;color:#f9585b;display:inline-block;font-size:18px;font-weight:800;letter-spacing:2px;padding:6px 16px}.invoice-footer-bottom{color:#fff;font-size:13px;letter-spacing:1px;margin-top:6px;padding-bottom:6px}@media print{@page{size:80mm auto;margin:0}body{margin:0;padding:0}.no-print{display:none!important}.invoice-wrapper{background:#fff}.invoice-container,.invoice-wrapper{padding:0;width:80mm}.invoice-paper{border:none;box-shadow:none;margin:0;max-width:80mm;padding:10mm;width:80mm}}@media (max-width:768px){.invoice-wrapper{padding:10px 8px}.invoice-actions{flex-wrap:wrap;gap:8px;margin-bottom:15px;max-width:100%;padding:10px}.back-btn,.logout-btn,.order-again-btn,.print-btn{font-size:12px;min-width:calc(50% - 4px);padding:10px 14px}.back-btn,.print-btn{flex-basis:calc(50% - 4px);flex-grow:1;flex-shrink:1}.invoice-paper{max-width:100%;padding:12px}.invoices-container{gap:20px}}@media (min-width:769px) and (max-width:1024px){.invoice-actions{max-width:90%;padding:20px}.back-btn,.logout-btn,.order-again-btn,.print-btn{font-size:15px;padding:14px 24px}.invoice-paper{max-width:380px}}@media (min-width:1025px) and (max-width:1366px){.invoice-actions{max-width:650px;padding:22px}.back-btn,.logout-btn,.order-again-btn,.print-btn{font-size:15px;padding:14px 28px}.invoice-paper{max-width:400px}}.App{min-height:100vh;width:100%}
/*# sourceMappingURL=main.b3ba07ef.css.map*/