.header{background:var(--color-white);color:var(--color-text);padding:0;position:fixed;top:0;left:0;right:0;z-index:100;box-shadow:var(--shadow-sm);border-bottom:1px solid var(--color-border)}.header-content{max-width:1400px;margin:0 auto}.header-main{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;gap:24px}.logo{flex-shrink:0}.logo-container{display:flex;align-items:center;gap:12px}.logo-icon{width:40px;height:40px;object-fit:contain}.logo h1{margin:0;font-size:20px;font-weight:600;white-space:nowrap;color:var(--color-text);letter-spacing:-.3px}.hamburger-btn{display:none;flex-direction:column;justify-content:space-around;width:32px;height:32px;background:transparent;border:none;cursor:pointer;padding:0;z-index:101}.hamburger-btn span{width:24px;height:2px;background:var(--color-text);border-radius:2px;transition:var(--transition);transform-origin:center}.hamburger-btn span.open:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger-btn span.open:nth-child(2){opacity:0}.hamburger-btn span.open:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-tabs{display:flex;gap:4px;flex-wrap:wrap;flex:1;justify-content:flex-start;padding-left:24px;border-left:1px solid var(--color-border)}.nav-tab{background:transparent;border:none;color:var(--color-text-secondary);padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;border-radius:var(--border-radius);transition:var(--transition);min-height:40px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.nav-tab:hover{background:var(--color-bg);color:var(--color-text)}.nav-tab.active{background:var(--color-primary);color:#fff}.nav-tab:active{transform:scale(.98)}.header-user{display:flex;align-items:center;gap:12px;flex-shrink:0;margin-left:auto;position:relative}.user-menu-trigger{display:flex;align-items:center;gap:8px;padding:8px 14px;background:transparent;border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text);cursor:pointer;transition:var(--transition);min-height:40px}.user-menu-trigger:hover{background:var(--color-bg);border-color:var(--color-primary)}.user-menu-trigger .user-name{font-size:14px;font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chevron-icon{transition:transform .2s ease}.chevron-icon.open{transform:rotate(180deg)}.dropdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:99}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-md);min-width:200px;z-index:100;overflow:hidden;animation:dropdownFadeIn .2s cubic-bezier(.4,0,.2,1)}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-white);border:none;color:var(--color-text);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition);text-align:left}.dropdown-item:hover{background:var(--color-bg)}.dropdown-item svg{flex-shrink:0;color:var(--color-danger)}.mobile-user-section{display:none}.desktop-only{display:flex}@media (max-width: 968px){.header-main{padding:1rem 1.5rem}.hamburger-btn{display:flex;order:2}.logo{order:1}.desktop-only{display:none}.nav-tabs{position:fixed;top:60px;left:0;right:0;background:var(--color-white);flex-direction:column;gap:4px;max-height:calc(100vh - 60px);overflow-y:auto;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-md);border-left:none;border-bottom:1px solid var(--color-border);padding:16px;order:3}.nav-tabs.mobile-open{transform:translate(0)}.nav-tab{width:100%;text-align:left;padding:1rem 1.5rem;font-size:1.1rem;border-radius:8px}.mobile-user-section{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;margin-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.mobile-user-section .user-info{width:100%;justify-content:flex-start}.mobile-user-section .logout-btn{width:100%;justify-content:center;padding:1rem;font-size:1rem}.logo h1{font-size:1.25rem}}@media (max-width: 480px){.header-main{padding:.75rem 1rem}.logo h1{font-size:1.1rem}.hamburger-btn{width:28px;height:28px}.hamburger-btn span{width:24px}}.product-grid{padding:16px;background:var(--color-white);overflow-y:auto;flex:1;display:flex;flex-direction:column;min-height:0}.section-title{margin:0 0 12px;font-size:15px;font-weight:600;color:var(--color-text);letter-spacing:0}.products-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;flex:1;align-content:start}.product-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:12px;cursor:pointer;transition:var(--transition);text-align:center;min-height:100px;display:flex;flex-direction:column;justify-content:center;gap:6px}.product-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.product-card:active{transform:translateY(0)}.product-name{font-size:14px;font-weight:500;color:var(--color-text);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.product-price{font-size:20px;font-weight:600;color:var(--color-success);letter-spacing:-.5px}.stock-badge{font-size:11px;padding:4px 8px;border-radius:4px;font-weight:600;margin-top:4px}.stock-badge.low-stock{background-color:#fef7e0;color:var(--color-text);border:1px solid var(--color-warning)}.no-results{grid-column:1 / -1;text-align:center;color:var(--color-text-secondary);font-size:14px;padding:40px}@media (max-width: 968px){.product-grid{padding:12px}.section-title{font-size:16px;margin-bottom:10px}.products-container{grid-template-columns:repeat(2,1fr);gap:8px}.product-card{padding:10px;min-height:85px;gap:4px}.product-name{font-size:12px;line-height:1.3}.product-price{font-size:16px}.no-results{font-size:13px;padding:32px 16px}}@media (max-width: 480px){.product-card{padding:8px;min-height:75px}.product-name{font-size:11px}.product-price{font-size:15px}}.product-grid::-webkit-scrollbar{width:6px}.product-grid::-webkit-scrollbar-track{background:transparent}.product-grid::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.product-grid::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.cart{background:var(--color-white);display:flex;flex-direction:column;position:sticky;top:0;height:100%;max-height:100%;border-radius:0;box-shadow:var(--shadow-md);overflow:hidden}.cart-title{padding:16px 20px;margin:0;font-size:18px;font-weight:600;color:var(--color-text);border-bottom:1px solid var(--color-border);letter-spacing:-.3px;flex-shrink:0;background:var(--color-white)}.cart-items{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px;background:var(--color-bg);min-height:0;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.cart-items::-webkit-scrollbar{width:6px}.cart-items::-webkit-scrollbar-track{background:transparent}.cart-items::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.cart-items::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.cart-empty{text-align:center;color:var(--color-text-secondary);padding:48px 16px;font-size:14px;font-weight:500}.cart-item{background:var(--color-white);border-radius:var(--border-radius);padding:8px 8px 8px 10px;margin-bottom:6px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);display:flex;align-items:center;gap:10px;position:relative;transition:background-color .3s ease,border-color .3s ease}.cart-item.highlight{animation:highlightFlash .6s ease}@keyframes highlightFlash{0%{background-color:var(--color-primary-light);border-color:var(--color-primary);border-radius:var(--border-radius);padding:8px 8px 8px 10px;box-shadow:var(--shadow-sm)}50%{background-color:var(--color-primary-light);border-color:var(--color-primary);border-radius:var(--border-radius);padding:8px 8px 8px 10px;box-shadow:var(--shadow-sm)}to{background-color:var(--color-white);border-color:var(--color-border);border-radius:var(--border-radius);padding:8px 8px 8px 10px;box-shadow:var(--shadow-sm)}}.cart-item-quantity{display:flex;align-items:center;gap:6px;flex-shrink:0}.cart-item-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.cart-item-name{font-weight:500;color:var(--color-text);font-size:14px;line-height:1.3;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-item-price{font-weight:600;color:var(--color-success);font-size:14px;letter-spacing:-.3px;flex-shrink:0;min-width:80px;text-align:right}.quantity-btn{width:26px;height:26px;border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text);font-size:16px;font-weight:600;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0}.quantity-btn:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.quantity-btn:active{transform:scale(.95)}.quantity-display{min-width:28px;text-align:center;font-size:14px;font-weight:600;color:var(--color-text);cursor:pointer;padding:2px 6px;border-radius:4px;transition:var(--transition)}.quantity-display:hover{background:var(--color-bg)}.quantity-input{width:40px;height:26px;text-align:center;font-size:14px;font-weight:600;color:var(--color-text);border:2px solid var(--color-primary);border-radius:4px;background:var(--color-white);padding:2px}.quantity-input:focus{outline:none;box-shadow:0 0 0 3px var(--color-primary-light)}.quantity-input::-webkit-inner-spin-button,.quantity-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quantity-input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.cart-item-controls .action-btn{margin-left:auto}.cart-footer{background:var(--color-white);border-top:1px solid var(--color-border);padding:16px 20px 20px;flex-shrink:0;min-height:180px}.total-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.total-label{font-size:13px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.total-amount{font-size:28px;font-weight:700;color:var(--color-success);letter-spacing:-.5px}.cart-actions{display:flex;gap:12px}.mobile-payment-selector{display:none}.btn-checkout,.btn-cancel{flex:5;min-height:48px;padding:0 20px;font-size:15px;font-weight:600;border:none;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-sm)}.btn-checkout{background:var(--color-success);color:#fff}.btn-checkout:hover:not(:disabled){background:var(--color-success-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-checkout:active:not(:disabled){transform:translateY(0)}.btn-checkout:disabled{background:var(--color-border);cursor:not-allowed;color:var(--color-text-secondary)}.btn-cancel{background:var(--color-white);color:var(--color-text);border:1px solid var(--color-border);box-shadow:none}.btn-cancel:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-text)}.btn-cancel:active:not(:disabled){transform:scale(.98)}.btn-cancel:disabled{border-color:var(--color-border);color:var(--color-text-secondary);cursor:not-allowed}.session-sales-divider{height:1px;background:var(--color-border);margin:16px 0 12px}.link-view-session-sales{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;background:transparent;border:none;color:var(--color-primary);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition);border-radius:var(--border-radius);text-decoration:none}.link-view-session-sales:hover{background:var(--color-primary-light);color:var(--color-primary)}.link-view-session-sales svg{flex-shrink:0}@media (max-width: 968px){.mobile-back-to-products,.mobile-customer-section{display:block!important}.session-sales-divider,.link-view-session-sales{display:none!important}.cart{border-left:none;position:static;height:auto;max-height:none;box-shadow:none;border-bottom:none}.cart-title{display:none}.cart-items{padding:12px;max-height:calc(100vh - 320px);min-height:150px;overflow-y:auto}.cart-item{padding:10px;margin-bottom:8px}.cart-item-name{font-size:14px}.cart-item-price{font-size:14px;min-width:70px}.quantity-btn{width:36px;height:36px;font-size:18px}.quantity-display{min-width:32px;font-size:14px}.quantity-input{width:38px;height:36px;font-size:14px}.cart-footer{padding:8px 12px 12px}.total-section{display:none!important}.total-label{font-size:12px}.total-amount{font-size:28px}.desktop-cart-actions{display:none}.mobile-payment-selector{display:block;padding-bottom:70px}.payment-selector-title{font-size:14px;font-weight:600;color:var(--color-text);margin:0 0 12px;text-align:left;display:none}.payment-methods-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.payment-notes-section{margin-top:5px;padding:0;background:var(--color-bg);border-radius:var(--border-radius);display:flex;flex-direction:column;gap:12px}.payment-notes-section label{display:none}.payment-notes-input{width:100%;padding:12px;border:2px solid var(--color-border);border-radius:var(--border-radius);font-size:14px;font-family:inherit;transition:all .2s ease}.payment-notes-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.payment-method-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:var(--color-white);border:2px solid var(--color-border);border-radius:var(--border-radius);padding:8px 6px;min-height:55px;cursor:pointer;transition:all .2s ease;color:var(--color-text);font-size:12px;font-weight:600}.payment-method-btn.selected{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.payment-method-btn:active:not(:disabled){transform:scale(.97)}.payment-method-btn:disabled{opacity:.4;cursor:not-allowed}.payment-method-btn svg{width:18px;height:18px}.mobile-charge-btn{width:100%;padding:14px 20px;background:var(--color-success);color:#fff;border:none;border-radius:var(--border-radius);font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease;margin-top:16px;text-transform:uppercase;letter-spacing:.5px}.mobile-charge-btn:hover{background:var(--color-success-dark)}.mobile-charge-btn:active:not(:disabled){transform:scale(.98)}.mobile-charge-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--color-text-secondary)}}@media (max-width: 480px){.cart{max-height:none}.cart-title{padding:10px 12px;font-size:15px}.cart-items{padding:0 10px 10px;max-height:calc(100vh - 280px);min-height:150px;margin-top:0}.cart-item{padding:8px;margin-bottom:6px}.cart-empty{padding:30px 12px;font-size:14px}.quantity-btn{width:32px;height:32px;font-size:16px}.quantity-display{min-width:28px;font-size:13px}.quantity-input{width:36px;height:32px;font-size:13px}.cart-item-price{min-width:65px;font-size:13px}.total-amount{font-size:22px}.payment-method-btn{padding:5px;min-height:60px;font-size:10px;gap:3px}.payment-method-btn svg{width:18px;height:18px}}.footer{background:#fff;border-top:2px solid #e0e0e0;padding:1.5rem;position:fixed;bottom:0;left:0;right:0;z-index:100;box-shadow:0 -2px 8px #0000001a}.footer-content{max-width:100%;display:flex;justify-content:space-between;align-items:center;gap:2rem}.total-section{display:flex;flex-direction:column;gap:.25rem}.total-label{font-size:.9rem;font-weight:500;color:#7f8c8d;text-transform:uppercase;letter-spacing:.5px}.total-amount{font-size:2.5rem;font-weight:700;color:#27ae60}.footer-actions{display:flex;gap:1rem}.btn-primary,.btn-secondary{min-height:56px;min-width:140px;padding:0 2rem;font-size:1.1rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .2s}.btn-primary{background:#27ae60;color:#fff}.btn-primary:hover{background:#229954;transform:translateY(-2px);box-shadow:0 4px 12px #27ae604d}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{background:#95a5a6;cursor:not-allowed;transform:none}.btn-secondary{background:#fff;color:#e74c3c;border:2px solid #e74c3c}.btn-secondary:hover{background:#e74c3c;color:#fff}.btn-secondary:active{transform:scale(.98)}.btn-secondary:disabled{border-color:#bdc3c7;color:#bdc3c7;cursor:not-allowed}@media (max-width: 768px){.footer{padding:1rem}.footer-content{flex-direction:column;gap:1rem}.total-section{width:100%;text-align:center}.total-amount{font-size:2rem}.footer-actions{width:100%;flex-direction:column}.btn-primary,.btn-secondary{width:100%;min-width:unset}}.confirm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:99999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out;padding:20px}.confirm-modal-container{background:var(--color-white);border-radius:12px;width:100%;max-width:450px;box-shadow:0 8px 32px #0000001f;animation:slideUp .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden;display:flex;flex-direction:column}.confirm-modal-header{padding:20px 24px;border-bottom:1px solid var(--color-border)}.confirm-modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--color-text)}.confirm-modal-body{padding:24px}.confirm-modal-body p{margin:0;font-size:15px;line-height:1.6;color:var(--color-text-secondary);word-wrap:break-word}.confirm-modal-actions{display:flex;gap:12px;padding:20px 24px;background:var(--color-bg);justify-content:flex-end;border-top:1px solid var(--color-border);flex-shrink:0}.btn-modal-cancel,#confirm-modal-cancel-btn{padding:10px 20px;border:2px solid #d1d5db!important;background:#f3f4f6!important;color:#6b7280!important;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-modal-cancel:hover,#confirm-modal-cancel-btn:hover{background:#e5e7eb!important;border-color:#9ca3af!important;color:#6b7280!important}#confirm-modal-cancel-btn:active{transform:scale(.98)}.btn-modal-confirm{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);color:#fff}.btn-modal-confirm.danger{background:var(--color-danger)}.btn-modal-confirm.danger:hover{background:#c53030;transform:translateY(-1px);box-shadow:0 4px 12px #ea43354d}.btn-modal-confirm.warning{background:var(--color-warning);color:var(--color-text)}.btn-modal-confirm.warning:hover{background:#e0a000;transform:translateY(-1px);box-shadow:0 4px 12px #fbbc044d}.btn-modal-confirm.info{background:var(--color-primary)}.btn-modal-confirm.info:hover{background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #1a73e84d}.product-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;justify-content:center;align-items:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px;animation:fadeIn .2s ease-out}.product-form-container{background:var(--color-white);border-radius:12px;width:100%;max-width:600px;max-height:90vh;box-shadow:0 4px 24px #00000014;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--color-border);animation:slideUp .3s cubic-bezier(.34,1.56,.64,1)}.product-form-header{display:flex;align-items:center;gap:16px;padding:20px 16px 20px 24px;border-bottom:1px solid var(--color-border);justify-content:space-between}.product-form-header h2{margin:0;font-size:20px;color:var(--color-text);font-weight:600;letter-spacing:-.3px;flex:0 0 auto}.product-name-title-input{margin:0;font-size:20px;color:var(--color-text);font-weight:600;letter-spacing:-.3px;flex:1;border:2px solid transparent;background:transparent;padding:8px 12px;border-radius:6px;transition:all .2s ease;font-family:inherit;outline:none}.product-name-title-input:hover{background:var(--color-background);border-color:var(--color-border)}.product-name-title-input:focus{background:var(--color-white);border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.product-name-title-input:disabled{opacity:.6;cursor:not-allowed}.product-form-header .header-actions{display:flex;align-items:center;gap:8px;margin-left:auto;margin-right:-4px;padding-right:4px;justify-content:flex-end}.product-form-header .header-actions .close-btn{order:2}.product-form-header .header-actions .status-toggle-header{order:1}.status-toggle-header{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--color-background);border-radius:8px;border:1px solid var(--color-border)}.status-label-compact{font-size:13px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap}.close-btn{background:transparent;border:none;font-size:24px;color:var(--color-text-secondary);cursor:pointer;padding:0;border-radius:6px;transition:var(--transition);width:36px;height:36px;display:flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0}.close-btn:hover{background:var(--color-bg);color:var(--color-text)}.close-btn:active{transform:scale(.9)}.product-form{padding:24px 32px 0;overflow-y:auto;flex:1;background:transparent!important}.form-group{margin-bottom:10px!important;flex:1}.price-panel{border:2px solid var(--color-border);border-radius:12px;padding:16px 16px 8px;margin:16px 0;background:var(--color-bg)}.price-panel legend{padding:0 8px;font-weight:600;color:var(--color-text);font-size:14px}.price-panel .form-row{margin-bottom:8px}.stock-panel{border:2px solid var(--color-border);border-radius:12px;padding:16px 16px 8px;margin:16px 0;background:var(--color-bg)}.stock-panel legend{padding:0 8px;font-weight:600;color:var(--color-text);font-size:14px}.stock-panel .form-row{margin-bottom:8px}.stock-panel .form-group-checkbox{margin:10px 0 12px!important;padding:12px 14px;background:var(--color-white);border-radius:10px;border:1px dashed var(--color-border)}.stock-panel .checkbox-label{color:var(--color-text);font-weight:600;gap:10px}.stock-panel .checkbox-label input[type=checkbox]{accent-color:var(--color-primary);width:16px;height:16px}.form-group label{display:block;margin-bottom:0;font-weight:600;color:var(--color-text)!important;font-size:14px;text-transform:none!important;letter-spacing:normal!important;text-shadow:none!important}.required{color:var(--color-danger)}.form-group input{width:100%;padding:12px 14px;border:2px solid var(--color-border);border-radius:10px;font-size:15px;line-height:1.5;transition:var(--transition);font-family:inherit;box-sizing:border-box;color:var(--color-text)!important;background:var(--color-white)!important}.form-group select.select-field{width:100%;padding:12px 14px;border:2px solid var(--color-border);border-radius:10px;font-size:15px;line-height:1.5;transition:var(--transition);background:var(--color-white)!important;cursor:pointer;font-family:inherit;box-sizing:border-box;color:var(--color-text)!important}.form-group select.select-field:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px #1a73e814}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px #1a73e814}.form-group input:disabled{background:var(--color-bg);cursor:not-allowed;opacity:.6}.form-group-checkbox{margin:10px 0 18px!important;padding:16px;background:var(--color-bg);border-radius:8px;border:1px solid var(--color-border)}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-weight:500;color:#374151;margin-bottom:8px}.checkbox-label input[type=checkbox]{width:15px;height:15px;cursor:pointer;accent-color:#3b82f6}.checkbox-label span{font-size:15px}.form-row{display:flex;gap:16px;margin-bottom:10px}.input-with-prefix{position:relative;display:flex;align-items:center}.input-prefix{position:absolute;left:16px;font-size:15px;font-weight:600;color:#059669;pointer-events:none;z-index:1}.input-with-prefix-field{padding-left:32px!important}.input-with-suffix{position:relative;display:flex;align-items:center;gap:8px}.input-with-suffix input{flex:1}.input-suffix{color:#6b7280;font-weight:500;font-size:14px;white-space:nowrap}.margin-feedback{display:block;margin-top:6px;font-size:13px}.margin-feedback.positive{color:#059669;font-weight:500}.margin-feedback.negative{color:#dc2626;font-weight:600}.recalc-message{display:block;margin-top:6px;font-size:12px;color:#374151}.error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.form-hint{display:block;margin-top:6px;font-size:13px;color:#6b7280}.form-hint.success{color:#059669;font-weight:500}.form-group-checkbox{background:#f9fafb;padding:16px;border-radius:8px;border:2px solid #e5e7eb}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:600;color:#374151;margin-bottom:8px}.checkbox-label input[type=checkbox]{width:15px;height:15px;cursor:pointer}.checkbox-label span{-webkit-user-select:none;user-select:none;padding-left:3px}.delete-section{padding:24px 32px 20px;border-top:1px solid var(--color-border);margin-top:20px}.form-actions{display:flex;gap:16px;justify-content:space-between;align-items:flex-start;padding:20px 24px;background:var(--color-white);position:sticky;bottom:0;z-index:10;border-top:1px solid var(--color-border)}.product-form-overlay .form-actions{padding-left:0;padding-right:0}.product-form-overlay .btn-cancel{background:#f3f4f6!important;color:#6b7280!important;border-color:#d1d5db!important}.product-form-overlay .btn-cancel:hover:not(:disabled){background:#e5e7eb!important;border-color:#9ca3af!important}.form-actions-left{display:flex;flex-direction:column;align-items:flex-start;gap:8px;flex:1;min-width:0;max-height:70px;overflow-y:auto}.form-actions-right{display:flex;gap:12px;align-items:center;flex-shrink:0}.checkbox-continue-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:#374151;font-size:14px;font-weight:500;white-space:nowrap}.checkbox-continue-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#3b82f6;flex-shrink:0}.checkbox-continue-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.success-message-inline{color:#059669;font-size:13px;font-weight:500;animation:fadeIn .3s ease-in;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:5px}.delete-warning-inline{color:#dc2626;font-size:13px;font-weight:500;animation:fadeIn .3s ease-in;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:6px}@keyframes fadeIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.btn-cancel{text-transform:none!important;padding:12px 24px;border:2px solid #d1d5db!important;background:#f3f4f6!important;color:#6b7280!important;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:var(--transition);min-width:100px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;font-family:inherit}.btn-cancel:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af;transform:translateY(-1px);box-shadow:0 2px 8px #00000014}.btn-cancel:active:not(:disabled){transform:translateY(0)}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:12px 24px;border:2px solid #3b82f6;background:#fff;color:#3b82f6;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:#eff6ff;border-color:#2563eb;color:#2563eb}.btn-submit{padding:12px 24px;border:none;background:var(--color-primary);color:#fff;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:var(--transition);min-width:100px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;font-family:inherit}.btn-submit:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #1a73e840}.btn-submit:active:not(:disabled){transform:translateY(0)}.btn-submit:disabled{background:var(--color-text-secondary);cursor:not-allowed;opacity:.5}@media (max-width: 968px){.product-form-overlay{padding:0;align-items:flex-start}.product-form-container{max-width:100%;max-height:100vh;border-radius:0}.product-form-header{padding:20px}.product-form-header h2{font-size:20px}.product-form-header .header-actions{gap:12px}.status-toggle-header{padding:6px 10px}.status-label-compact{font-size:12px}.product-form{padding:20px}.form-row{flex-direction:column;gap:0}.price-panel{padding:12px 12px 4px;margin:12px 0;border-radius:10px}.price-panel legend{font-size:13px}.stock-panel{padding:12px 12px 4px;margin:12px 0;border-radius:10px}.stock-panel legend{font-size:13px}.stock-panel .form-group-checkbox{padding:12px}.form-group label{font-size:13px}.form-group input,.form-group select.select-field{padding:11px 14px;font-size:14px}.form-actions{flex-direction:column;gap:12px;align-items:stretch}.form-actions-left{order:2;flex-direction:column;align-items:flex-start;gap:8px}.form-actions-right{order:1;flex-direction:column-reverse;gap:10px}.form-actions button{width:100%;padding:14px;font-size:15px}.success-message-inline{font-size:12px;white-space:normal;word-break:break-word}.checkbox-continue-label{font-size:13px}.input-prefix{left:14px;font-size:14px}.input-with-prefix-field{padding-left:28px!important}}@media (max-width: 480px){.product-form-header{padding:16px}.product-form-header h2{font-size:18px}.product-form-header .header-actions{gap:8px}.status-toggle-header{padding:5px 8px}.status-label-compact{display:none}.product-form{padding:16px}.form-hint{font-size:11px}}.product-status-section{margin-top:24px;padding-top:24px}.divider{height:1px;background:var(--color-border);margin-bottom:20px}.status-control{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--color-bg);border-radius:var(--border-radius);margin-bottom:16px}.status-info{display:flex;flex-direction:column;gap:4px}.status-label{font-weight:600;font-size:14px;color:var(--color-text)}.status-description{font-size:13px;color:var(--color-text-secondary)}.toggle-switch{position:relative;display:inline-block;width:52px;height:28px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.3s;border-radius:28px}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-success)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.btn-delete-icon{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;padding:8px 10px;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;height:38px;min-width:38px}.btn-delete-icon:hover:not(:disabled){background:#fef2f2;border-color:#fecaca;color:#dc2626;transform:translateY(-1px);box-shadow:0 2px 4px #dc26261a}.btn-delete-icon:disabled{opacity:.4;cursor:help;border-color:var(--color-border)}.delete-confirmation-inline{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.delete-confirmation-text-inline{color:var(--color-text);font-size:12px;font-weight:500;line-height:1.3;max-width:200px}.delete-confirmation-buttons-inline{display:flex;gap:6px}.btn-delete-no,.btn-delete-yes{padding:5px 10px;border-radius:5px;font-size:12px;font-weight:600;cursor:pointer;border:none;transition:all .2s ease;white-space:nowrap;height:28px}.btn-delete-no{background:var(--color-background);color:var(--color-text);border:1px solid var(--color-border)}.btn-delete-no:hover:not(:disabled){background:#e5e7eb;border-color:#d1d5db}.btn-delete-no:disabled{opacity:.5;cursor:not-allowed}.btn-delete-yes{background:var(--color-danger);color:#fff}.btn-delete-yes:hover:not(:disabled){opacity:.9;box-shadow:0 2px 4px #dc262633}.btn-delete-yes:disabled{opacity:.5;cursor:not-allowed}.form-actions-left{min-height:38px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:var(--border-radius);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-sm)}.icon-btn-icon{display:flex;align-items:center;justify-content:center}.icon-btn-icon svg{width:18px;height:18px;display:block}.icon-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.icon-btn:active:not(:disabled){transform:translateY(0)}.icon-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.icon-btn-primary{background:var(--color-primary);color:#fff}.icon-btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.icon-btn-success{background:var(--color-success);color:#fff}.icon-btn-success:hover:not(:disabled){background:var(--color-success-dark)}.icon-btn-danger{background:var(--color-danger);color:#fff}.icon-btn-danger:hover:not(:disabled){background:#dc2626}.icon-btn-secondary{background:var(--color-white);color:var(--color-text);border:1px solid var(--color-border)}.icon-btn-secondary:hover:not(:disabled){background:var(--color-primary);border-color:var(--color-primary);color:#fff}.icon-btn-warning{background:var(--color-warning);color:#fff}.icon-btn-warning:hover:not(:disabled){background:#d97706}.barcode-not-found-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in}.barcode-not-found-modal{background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);max-width:480px;width:90%;animation:slideUp .3s ease-out;overflow:hidden}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.barcode-modal .modal-header{background:var(--color-white);color:var(--color-text);padding:20px;border-bottom:3px solid var(--color-warning)}.barcode-modal .modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--color-text)}.modal-body{padding:30px 20px;text-align:center}.modal-body p{margin:10px 0;color:var(--color-text);font-size:15px;line-height:1.6}.modal-body p:first-child{margin-top:0;font-weight:500;color:var(--color-text-secondary)}.barcode-display{display:inline-block;background:#fef7e0;border:2px solid var(--color-warning);padding:12px 20px;margin:15px 0;border-radius:var(--border-radius);font-family:Courier New,monospace;font-size:18px;font-weight:600;color:var(--color-warning);word-break:break-all;max-width:100%}.modal-question{margin-top:20px;font-weight:500;color:var(--color-text)}.modal-actions{display:flex;gap:12px;padding:20px;background:var(--color-white);border-top:1px solid var(--color-border)}.modal-actions button{flex:1;padding:12px 20px;border:none;border-radius:var(--border-radius);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-cancel{background:var(--color-white);color:var(--color-text);border:1px solid var(--color-border)}.btn-cancel:hover{background:var(--color-bg);border-color:var(--color-text-secondary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-cancel:active{transform:translateY(0)}@media (max-width: 480px){.barcode-not-found-modal{max-width:95vw;width:95vw}.modal-header h2{font-size:1.1rem}.barcode-display{font-size:.9rem}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}.upgrade-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.upgrade-modal{background:#fff;border-radius:16px;padding:32px;max-width:500px;width:100%;position:relative;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.upgrade-modal__close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:24px;color:#666;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:background-color .2s}.upgrade-modal__close:hover{background-color:#f0f0f0;color:#333}.upgrade-modal__icon{display:flex;justify-content:center;margin-bottom:20px;color:#ff6b35}.upgrade-modal__title{font-size:24px;font-weight:700;text-align:center;margin-bottom:16px;color:#1a1a1a}.upgrade-modal__description{text-align:center;font-size:16px;color:#555;line-height:1.6;margin-bottom:24px}.upgrade-modal__current-plan{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:24px;padding:12px;background-color:#f8f9fa;border-radius:8px}.upgrade-modal__label{font-size:14px;color:#666}.upgrade-modal__plan-badge{display:inline-block;padding:6px 12px;background-color:#e3e3e3;color:#555;border-radius:6px;font-weight:600;font-size:14px}.upgrade-modal__benefits{margin-bottom:28px}.upgrade-modal__benefits h3{font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:12px}.upgrade-modal__benefits ul{list-style:none;padding:0;margin:0}.upgrade-modal__benefits li{padding:8px 0;color:#555;font-size:14px;display:flex;align-items:center;gap:8px}.upgrade-modal__benefits li:before{content:"✓";color:#28a745;font-weight:700;font-size:16px}.upgrade-modal__actions{display:flex;flex-direction:column;gap:12px}.upgrade-modal__button{padding:14px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.upgrade-modal__button--primary{background-color:#ff6b35;color:#fff}.upgrade-modal__button--primary:hover{background-color:#e55a2b;transform:translateY(-1px);box-shadow:0 4px 12px #ff6b354d}.upgrade-modal__button--secondary{background-color:transparent;color:#666;border:2px solid #e0e0e0}.upgrade-modal__button--secondary:hover{background-color:#f8f9fa;border-color:#ccc}@media (max-width: 600px){.upgrade-modal{padding:24px}.upgrade-modal__title{font-size:20px}.upgrade-modal__description{font-size:14px}}.action-btn{background:none;border:2px solid var(--color-border);padding:8px;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-secondary)}.action-btn svg{width:18px;height:18px;display:block}.action-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-sm)}.action-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.action-btn-small{padding:6px;border-width:1.5px}.action-btn-small svg{width:14px;height:14px}.action-btn-medium{padding:8px;border-width:2px}.action-btn-medium svg{width:18px;height:18px}.action-btn-large{padding:10px;border-width:2px}.action-btn-large svg{width:20px;height:20px}.action-btn-edit:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.action-btn-delete:hover:not(:disabled),.action-btn-remove:hover:not(:disabled){border-color:var(--color-danger);background:#fef2f2;color:var(--color-danger)}.action-btn-view:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.action-btn-activate:hover:not(:disabled){border-color:var(--color-success);background:#d1fae5;color:var(--color-success)}.action-btn-deactivate:hover:not(:disabled){border-color:var(--color-warning);background:#fef7e0;color:var(--color-warning)}.notification-toast{position:fixed;top:20px;right:20px;background:var(--color-success);color:#fff;padding:12px 20px;border-radius:var(--border-radius);box-shadow:var(--shadow-md);z-index:9999;font-size:14px;font-weight:500;animation:slideInRight .3s cubic-bezier(.4,0,.2,1)}.btn-refresh{background:var(--color-white);color:var(--color-text);border:1px solid var(--color-border);padding:10px 18px;border-radius:var(--border-radius);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-sm)}.btn-refresh:hover:not(:disabled){background:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-refresh:disabled{opacity:.5;cursor:not-allowed;transform:none}.low-stock-section{border:1px solid var(--color-warning);border-radius:var(--border-radius);margin-bottom:20px;background:var(--color-white)}.low-stock-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:#fef7e0;color:var(--color-text);border:none;padding:12px 16px;cursor:pointer;font-size:15px;font-weight:600;border-radius:var(--border-radius)}.low-stock-toggle:hover{background:#fdeebb}.low-stock-icon svg{stroke:var(--color-warning)}.low-stock-title{flex:1;margin-left:10px;text-align:left}.low-stock-count{color:var(--color-text-secondary);margin-right:8px}.low-stock-badges{display:inline-flex;gap:8px;align-items:center;margin-right:8px}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:600;background:var(--color-white);border:1px solid var(--color-border)}.badge-critical{color:var(--color-danger);border-color:var(--color-danger);background:#fdecec}.badge-low{color:var(--color-warning);border-color:var(--color-warning);background:#fef7e0}.chevron{display:inline-flex;transition:transform .2s ease}.low-stock-section.open .chevron{transform:rotate(180deg)}.low-stock-content{overflow:hidden;max-height:0;transition:max-height .25s ease;border-top:1px solid var(--color-border);background:var(--color-white)}.low-stock-section.open .low-stock-content{max-height:1000px}.low-stock-grid{padding:16px}.low-stock-section h3{margin:0 0 14px;color:var(--color-text);font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px}.low-stock-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.low-stock-card{background:var(--color-white);padding:12px 14px;border-radius:var(--border-radius);display:flex;justify-content:space-between;align-items:center;border:1px solid var(--color-border)}.product-name-low{font-weight:600;color:var(--color-text);font-size:14px}.stock-info{color:var(--color-text-secondary);font-size:13px}.stock-info strong{color:var(--color-danger);font-size:15px}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;padding:40px 20px}.checkbox-cell{width:40px;text-align:center;padding:8px!important}.checkbox-cell input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary)}.clickable-row{cursor:pointer;transition:background-color .2s ease}.clickable-row:hover{background-color:#3b82f60d}.bulk-actions-bar{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 20px;border-radius:var(--border-radius);margin-bottom:15px;box-shadow:var(--shadow-md);animation:slideDown .3s ease}@keyframes slideDown{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.selected-count{font-weight:600;font-size:15px}.bulk-actions-buttons{display:flex;gap:10px}.bulk-action-btn{padding:8px 16px;border:none;border-radius:var(--border-radius);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:6px}.bulk-action-btn.activate{background:#fff;color:var(--color-success)}.bulk-action-btn.activate:hover{background:var(--color-success);color:#fff;transform:translateY(-1px);box-shadow:0 4px 8px #0003}.bulk-action-btn.deactivate{background:#fff;color:var(--color-danger)}.bulk-action-btn.deactivate:hover{background:var(--color-danger);color:#fff;transform:translateY(-1px);box-shadow:0 4px 8px #0003}.loading-state p{margin-top:16px;color:#6b7280;font-size:16px}.error-state-icon{font-size:64px;margin-bottom:20px;animation:bounce 1s ease-in-out}.error-state h3{color:#1f2937;margin:0 0 12px;font-size:24px;font-weight:700}.error-state-message{color:#6b7280;margin:0 0 28px;max-width:500px;font-size:16px;line-height:1.6}.error-state-actions{display:flex;gap:12px;justify-content:center}.error-permission{background:linear-gradient(135deg,#fef3c7,#fde68a)}.error-permission .error-state-icon{filter:hue-rotate(-10deg)}.error-permission h3{color:#92400e}.error-permission .error-state-message{color:#78350f}.products-list-section{background:var(--color-white);border-radius:var(--border-radius);padding:20px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.products-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.products-list-section h3{margin:0;color:var(--color-text);font-size:18px;font-weight:600}.pagination-info{color:var(--color-text-secondary);font-size:13px;font-weight:500}.products-table-container{overflow-x:auto;border-radius:var(--border-radius);border:1px solid var(--color-border)}.desktop-only{display:table-cell}.products-screen .products-table{width:100%;border-collapse:collapse;border-radius:var(--border-radius);overflow:hidden}.products-screen .products-table thead{background:var(--color-bg);border-bottom:1px solid var(--color-border)}.products-screen .products-table th{padding:12px 14px;text-align:left;font-weight:600;color:var(--color-text);font-size:13px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.products-screen .products-table tbody tr{border-bottom:1px solid var(--color-border);transition:var(--transition);background:var(--color-white)}.products-screen .products-table tbody tr:hover{background:var(--color-bg)}.products-screen .products-table tbody tr.expanded{background:var(--color-primary-light)}.mobile-actions-row,.mobile-actions-row:hover{background:var(--color-bg)!important}.mobile-actions{padding:16px;display:flex;flex-direction:column;gap:12px}.mobile-info{display:flex;flex-direction:column;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--color-border);font-size:13px}.mobile-info strong{color:var(--color-text)}.mobile-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.products-screen .products-table td{padding:12px 14px;color:var(--color-text);font-size:14px}.products-screen .product-name-cell{font-weight:500;color:var(--color-text)}.products-screen .price-cell{font-weight:600;color:var(--color-success);font-size:14px}.stock-low{color:var(--color-danger);font-weight:700}.inactive-row{opacity:.6;background:var(--color-bg)}.empty-state{text-align:center;padding:40px 20px;color:var(--color-text-secondary);font-size:14px}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap;text-transform:uppercase;letter-spacing:.3px}.status-badge.active{background:#d1fae5;color:#065f46;border:1px solid var(--color-success)}.status-badge.inactive{background:#fee2e2;color:#991b1b;border:1px solid var(--color-danger)}.actions-cell{display:flex;gap:8px;align-items:center}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #f3f4f6}.pagination-btn{padding:8px 16px;background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#374151;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#f9fafb;border-color:#3b82f6;color:#3b82f6}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-pages{display:flex;gap:4px;align-items:center}.pagination-page{min-width:36px;height:36px;padding:0 8px;background:#fff;border:2px solid #e5e7eb;border-radius:6px;color:#374151;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.pagination-page:hover{background:#f9fafb;border-color:#3b82f6;color:#3b82f6}.pagination-page.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.pagination-ellipsis{padding:0 8px;color:#9ca3af;font-weight:600}.products-screen .form-actions{padding-left:0;padding-right:0}@media (max-width: 968px){.products-screen{padding:16px;margin-top:70px;min-height:calc(100vh - 70px)}.products-header{flex-direction:column;align-items:stretch;gap:12px}.products-header h2{font-size:22px;text-align:center}.header-actions{flex-direction:row;width:100%}.low-stock-grid{grid-template-columns:1fr}.desktop-only{display:none!important}.mobile-only{display:table-row}.products-table-container{overflow-x:visible;margin:0;padding:0}.products-table{width:100%;font-size:14px}.products-table th,.products-table td{padding:12px 8px;font-size:14px}.product-name-cell{max-width:none}.products-table tbody tr{cursor:pointer}.products-table tbody tr:active{background:#e5e7eb}.pagination{flex-wrap:wrap;gap:8px}.pagination-btn{font-size:14px;padding:8px 14px}.pagination-page{min-width:36px;height:36px;font-size:14px}}@media (max-width: 640px){.products-screen{padding:12px}.products-header h2{font-size:20px}.header-actions{flex-direction:column}.search-input-products{padding:12px 16px;font-size:15px}.low-stock-section{padding:16px}.low-stock-section h3{font-size:16px}.low-stock-card{padding:12px}.products-list-header h3{font-size:18px}.products-table{font-size:13px}.products-table th,.products-table td{padding:8px 6px;font-size:12px}.btn-edit,.btn-deactivate,.btn-activate,.btn-delete{padding:5px 8px;font-size:14px}.status-badge{padding:3px 8px;font-size:11px}.pagination-btn{font-size:13px;padding:7px 12px}.pagination-info{font-size:13px}.bulk-actions-bar{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 15px}.bulk-actions-buttons{width:100%;justify-content:stretch}.bulk-action-btn{flex:1;justify-content:center}}@media (max-width: 480px){.products-screen{padding:10px}.products-header h2{font-size:18px}.search-input-products{padding:11px 14px;font-size:14px}.products-table-container{margin:0 -10px;padding:0 10px}.products-table th,.products-table td{padding:7px 4px;font-size:11px}.product-name-cell{max-width:140px;font-size:12px}.price-cell{font-size:12px}.actions-cell button{padding:4px 7px;font-size:14px}.pagination{gap:6px}.pagination-btn{font-size:12px;padding:6px 10px}.pagination-page{min-width:32px;height:32px;font-size:12px}.pagination-info{font-size:12px;width:100%;text-align:center}}.stock-cell{text-align:center;padding:12px 14px!important}.stock-indicator-container{display:flex;justify-content:center;align-items:center}.stock-indicator{width:14px;height:14px;border-radius:50%;position:relative;cursor:pointer;transition:transform .2s ease}.stock-indicator:hover{transform:scale(1.3)}.stock-indicator.stock-ok{background:#10b981;box-shadow:0 0 8px #10b98166}.stock-indicator.stock-warning{background:#f59e0b;box-shadow:0 0 8px #f59e0b66}.stock-indicator.stock-critical{background:#ef4444;box-shadow:0 0 8px #ef444466;animation:pulse-light 2s ease-in-out infinite}@keyframes pulse-light{0%,to{opacity:1;box-shadow:0 0 8px #ef444466}50%{opacity:.6;box-shadow:0 0 15px #ef4444b3}}.stock-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:8px 12px;border-radius:6px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;pointer-events:none;z-index:1000;box-shadow:0 4px 12px #00000026}.stock-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#1f2937}.stock-indicator:hover .stock-tooltip{opacity:1;visibility:visible}.stock-tooltip div{margin:2px 0;line-height:1.4}.stock-tooltip strong{font-weight:600;margin-right:4px}.version-footer{display:flex;flex-direction:column;align-items:center;gap:4px;padding:0 16px;background:transparent;font-size:9px;color:var(--color-text-secondary);text-align:center;-webkit-user-select:none;user-select:none}.version-footer span{display:block;line-height:1.4}.version-number{font-size:8px;color:#aaa;letter-spacing:.5px;font-weight:500}.login-wrapper{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg)}.login-screen{flex:1;display:flex;align-items:center;justify-content:center;padding:20px}.login-container{background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-md);width:100%;max-width:400px;padding:48px 40px;border:1px solid var(--color-border);animation:slideUp .4s cubic-bezier(.4,0,.2,1);margin:0 auto}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:32px}.login-logo{margin-bottom:24px}.login-logo img{width:320px;height:auto;object-fit:contain}.login-header h1{margin:0 0 8px;font-size:24px;color:var(--color-text);font-weight:600;letter-spacing:-.5px}.login-header p{margin:0;color:var(--color-text-secondary);font-size:14px}.login-form{display:flex;flex-direction:column;gap:20px}.login-error{background:#fef2f2;border:1px solid var(--color-danger);border-radius:var(--border-radius);padding:14px;display:flex;align-items:flex-start;gap:12px;animation:slideIn .3s cubic-bezier(.4,0,.2,1)}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.error-icon{font-size:20px;flex-shrink:0;margin-top:2px}.error-content{flex:1}.error-message{margin:0;color:var(--color-danger);font-size:13px;font-weight:500;line-height:1.5}.login-error.error-network{background:var(--color-primary-light);border-color:var(--color-primary)}.login-error.error-network .error-message{color:var(--color-primary-dark)}.login-error.error-auth{background:#fef7e0;border-color:var(--color-warning)}.login-error.error-auth .error-message{color:var(--color-text)}.login-error.error-validation{background:#fef7e0;border-color:var(--color-warning)}.login-error.error-validation .error-message{color:var(--color-text)}.login-error.error-server{background:#fef2f2;border-color:var(--color-danger)}.login-error.error-server .error-message{color:var(--color-danger)}.form-field{display:flex;flex-direction:column;gap:8px}.form-field label{font-weight:500;color:var(--color-text);font-size:14px}.form-field input{padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:15px;transition:var(--transition);font-family:inherit;color:var(--color-text);background:var(--color-white)}.form-field input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-field input:disabled{background:var(--color-bg);cursor:not-allowed;opacity:.6}.login-button{margin-top:8px;padding:14px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--border-radius);font-size:15px;font-weight:600;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:var(--shadow-sm)}.login-button:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.login-footer{margin-top:24px;text-align:center}.login-help{margin:0;color:var(--color-text-secondary);font-size:13px}@media (max-width: 480px){.login-container{padding:32px 24px}.login-header h1{font-size:22px}.login-logo{font-size:40px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background:#fff;border-radius:16px;max-width:560px;width:100%;box-shadow:0 20px 60px #0000004d;animation:modalSlideUp .3s cubic-bezier(.4,0,.2,1);overflow:hidden}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{text-align:center;padding:32px 32px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-icon{font-size:56px;margin-bottom:12px;display:inline-block;animation:bounce 1s ease-in-out}.modal-header h2{margin:0;font-size:24px;font-weight:700;letter-spacing:-.5px}.modal-body{padding:32px}.modal-text-primary{margin:0 0 24px;font-size:16px;line-height:1.6;color:var(--color-text);font-weight:500}.modal-steps{background:#f8f9fa;border-radius:12px;padding:24px;margin-bottom:24px;border-left:4px solid #667eea}.modal-steps h3{margin:0 0 16px;font-size:16px;color:var(--color-text);font-weight:600}.modal-steps ol{margin:0;padding-left:20px;counter-reset:step-counter;list-style:none}.modal-steps ol li{position:relative;padding-left:16px;margin-bottom:14px;font-size:14px;line-height:1.6;color:var(--color-text);counter-increment:step-counter}.modal-steps ol li:last-child{margin-bottom:0}.modal-steps ol li:before{content:counter(step-counter);position:absolute;left:-20px;top:0;width:24px;height:24px;background:#667eea;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.modal-steps ol li strong{color:#667eea;font-weight:600}.modal-hint{display:block;margin-top:4px;font-size:13px;color:var(--color-text-secondary);font-style:italic}.modal-info{background:#fff3cd;border:1px solid #ffc107;border-radius:12px;padding:16px;display:flex;gap:12px;align-items:flex-start}.info-icon{width:24px;height:24px;color:#ff9800;flex-shrink:0;margin-top:2px}.info-title{margin:0 0 4px;font-weight:600;font-size:14px;color:#856404}.info-text{margin:0;font-size:13px;line-height:1.5;color:#856404}.modal-footer{padding:0 32px 32px}.modal-button-primary{width:100%;padding:14px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #667eea66}.modal-button-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.modal-button-primary:active{transform:translateY(0)}@media (max-width: 600px){.modal-content{max-width:100%;margin:0}.modal-header{padding:24px 20px 20px}.modal-icon{font-size:48px}.modal-header h2{font-size:20px}.modal-body{padding:24px 20px}.modal-footer{padding:0 20px 24px}.modal-steps{padding:20px}}.layout-wrapper{display:flex;flex-direction:row;height:100vh;width:100%;overflow:hidden}.layout-content{flex:1;margin-left:280px;padding:0 16px;display:flex;flex-direction:column;transition:margin-left .3s cubic-bezier(.4,0,.2,1);background:var(--color-white);height:100vh;overflow-y:auto;overflow-x:hidden;position:relative}.layout-wrapper .sidebar.collapsed~.layout-content{margin-left:80px}@media (max-width: 968px){.layout-content{margin-left:0;padding:72px 16px 16px}.layout-wrapper .sidebar{position:fixed;left:auto;right:-280px;width:280px;transition:right .3s cubic-bezier(.4,0,.2,1)}.layout-wrapper .sidebar.mobile-open{right:0;z-index:999}}@media (max-width: 480px){.layout-content{padding:68px 12px 12px}.layout-wrapper .sidebar{right:-85vw;max-width:280px}.layout-wrapper .sidebar.mobile-open{right:0}}.sidebar{position:fixed;left:0;top:0;height:100vh;width:280px;background:var(--color-white);border-right:1px solid var(--color-border);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;z-index:99;transition:width .35s cubic-bezier(.4,0,.2,1);overflow-y:auto;overflow-x:hidden}.sidebar.collapsed{width:80px}.sidebar-logo{padding:20px 16px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;gap:8px;flex-shrink:0}.logo-container{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.logo-icon{width:40px;height:40px;object-fit:contain;flex-shrink:0}.sidebar-logo h1{margin:0;font-size:18px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-text)}.sidebar-collapse-section{padding:8px;border-bottom:1px solid var(--color-border);flex-shrink:0}.collapse-btn{width:100%;background:#f3f4f6;border:1px solid #e5e7eb;font-size:18px;cursor:pointer;padding:12px;color:#374151;transition:all .35s cubic-bezier(.4,0,.2,1);border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:600;position:relative;z-index:10;min-height:48px}.collapse-btn:hover{background:#e5e7eb;color:#111827;transform:scale(1.05)}.collapse-btn svg{stroke:currentColor}.sidebar-nav{flex:1;padding:12px 8px;overflow-y:auto}.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.nav-list li{overflow:visible}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;color:var(--color-text-secondary);text-decoration:none;border-radius:var(--border-radius);transition:all .35s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;white-space:nowrap;min-height:48px}.nav-item:hover{background:var(--color-bg);color:var(--color-text)}.sidebar.collapsed .nav-item:hover{background:transparent;color:var(--color-primary)}.sidebar.collapsed .nav-item:hover .nav-icon{width:48px;padding:0 14px;background:var(--color-bg);border-radius:8px}.nav-item.active{background:linear-gradient(90deg,var(--color-primary) 0%,rgba(59,130,246,.85) 100%);color:#fff;font-weight:600;box-shadow:0 2px 8px #3b82f64d;border-left:3px solid var(--color-primary-dark);padding-left:13px}.nav-item.active:hover{background:linear-gradient(90deg,var(--color-primary-dark) 0%,var(--color-primary) 100%)}.nav-icon{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:currentColor;transition:all .35s cubic-bezier(.4,0,.2,1)}.nav-label{font-size:14px;font-weight:500;flex:1}.sidebar.collapsed .nav-label{position:fixed;left:80px;background:var(--color-bg);color:var(--color-text);padding:12px 16px;border-radius:0 var(--border-radius) var(--border-radius) 0;font-size:14px;font-weight:500;white-space:nowrap;z-index:10000;border:1px solid var(--color-border);border-left:none;box-shadow:2px 0 8px #0000000d;opacity:0;visibility:hidden;transition:all .2s cubic-bezier(.4,0,.2,1);pointer-events:none;flex:none;min-height:48px;height:48px;display:flex;align-items:center}.sidebar.collapsed .nav-item:hover .nav-label{opacity:1;visibility:visible}.sidebar.collapsed .nav-item.active .nav-label{background:var(--color-primary);color:#fff;border-color:var(--color-primary-dark)}.tooltip{display:none!important}.sidebar-user{padding:12px 8px;border-top:1px solid var(--color-border);flex-shrink:0;position:relative}.sidebar-footer{flex-shrink:0;margin-top:auto}.user-profile-btn{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;transition:all .35s cubic-bezier(.4,0,.2,1);position:relative;min-height:48px}.user-profile-btn:hover{background:var(--color-white);border-color:var(--color-primary)}.sidebar.collapsed .user-profile-btn:hover{background:var(--color-bg);border-color:var(--color-border)}.user-avatar{font-size:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.user-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.user-name{font-size:13px;font-weight:600;color:var(--color-text);text-transform:capitalize;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{font-size:11px;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.user-tooltip{position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:8px;max-width:200px;word-wrap:break-word;white-space:normal;opacity:0;visibility:hidden}.user-menu{position:fixed;bottom:12px;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-md);z-index:1001;overflow:hidden;animation:slideRight .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;min-width:200px}.sidebar:not(.collapsed) .user-menu{left:288px}.sidebar.collapsed .user-menu{left:88px}@keyframes slideRight{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.user-menu-item{width:100%;padding:12px 16px;background:transparent;border:none;cursor:pointer;text-align:left;font-size:14px;color:var(--color-text);transition:var(--transition);display:flex;align-items:center;gap:8px;min-height:40px}.user-menu-item:hover{background:var(--color-bg)}.logout-btn{color:var(--color-danger)}.logout-btn:hover{background:#fef2f2}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:56px;background:var(--color-white);border-bottom:1px solid var(--color-border);z-index:101;align-items:center;justify-content:space-between;padding:0 16px;box-shadow:var(--shadow-sm)}.mobile-header-left{display:flex;align-items:center;gap:10px}.mobile-header-icon{width:32px;height:32px;object-fit:contain}.mobile-header-name{font-size:16px;font-weight:600;color:var(--color-text)}.mobile-hamburger{display:none;width:40px;height:40px;border:none;background:transparent;border-radius:var(--border-radius);cursor:pointer;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);padding:0}.mobile-hamburger:hover{background:var(--color-bg)}.mobile-hamburger:active{transform:scale(.95)}.mobile-hamburger svg{color:var(--color-text)}.mobile-only{display:none}.mobile-backdrop{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:98;cursor:pointer}@media (max-width: 968px){.mobile-header,.mobile-hamburger{display:flex}.mobile-backdrop{display:block;z-index:99}.mobile-only{display:block;margin-top:auto;padding-top:16px;border-top:1px solid var(--color-border)}.sidebar-logo,.sidebar-collapse-section,.sidebar-user{display:none!important}.sidebar{top:0;left:auto;right:0;padding-top:16px;z-index:100;transform:translate(100%)}.sidebar.mobile-open{transform:translate(0);transition:transform .3s cubic-bezier(.4,0,.2,1)}.sidebar-nav{margin-top:0;flex:1}.sidebar.collapsed.mobile-open{width:280px}.logout-nav-item{width:100%;text-align:left;color:var(--color-danger);border:none;background:transparent;cursor:pointer}.logout-nav-item:hover{background:#fef2f2}}@media (max-width: 480px){.sidebar{max-width:280px}.sidebar.mobile-open{width:85vw;max-width:280px}}.customer-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.customer-form-container{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;overflow:hidden}.customer-form-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:2px solid #f3f4f6}.customer-form-header h2{margin:0;font-size:24px;color:#1a1a1a}.customer-form{padding:24px 24px 0;overflow-y:auto;flex:1}.customer-form .form-group{margin-bottom:20px;flex:1}.customer-form .form-group label{display:block;margin-bottom:8px;font-weight:600;color:#374151;font-size:14px}.customer-form .form-group input,.customer-form .form-group textarea{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:15px;transition:all .2s;font-family:inherit}.customer-form .form-group textarea{resize:vertical}.customer-form .form-group input:focus,.customer-form .form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.customer-form .form-group input:disabled,.customer-form .form-group textarea:disabled{background:#f9fafb;cursor:not-allowed;opacity:.6}.customer-form .form-row{display:flex;gap:16px}.customer-form-actions{display:flex;gap:12px;justify-content:flex-end;align-items:center;padding:20px 24px;border-top:1px solid #f3f4f6;background:#fff;position:sticky;bottom:0;z-index:10;box-shadow:0 -2px 10px #0000000d}.customer-form-actions .btn-cancel{padding:12px 24px;border:2px solid #e5e7eb;background:#fff;color:#374151;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.customer-form-actions .btn-cancel:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.customer-form-actions .btn-cancel:disabled{opacity:.5;cursor:not-allowed}.customer-form-actions .btn-submit{padding:12px 24px;border:none;background:#3b82f6;color:#fff;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.customer-form-actions .btn-submit:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.customer-form-actions .btn-submit:disabled{opacity:.7;cursor:not-allowed;transform:none}@media (max-width: 968px){.customer-form-overlay{padding:0;align-items:flex-start}.customer-form-container{max-width:100%;max-height:100vh;border-radius:0}.customer-form .form-row{flex-direction:column;gap:0}.customer-form-actions{flex-direction:column-reverse;gap:10px}.customer-form-actions button{width:100%}}.debt-payment-modal{width:90%;max-width:550px;max-height:85vh;overflow-y:auto}.section-title{font-size:14px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:24px 0 12px;padding-bottom:8px;border-bottom:2px solid var(--color-border)}.section-title:first-child{margin-top:0}.current-debt-display{background:var(--color-bg);padding:16px;border-radius:var(--border-radius);display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.debt-label{color:var(--color-text-secondary);font-size:14px;font-weight:500}.debt-value{font-size:24px;font-weight:700;color:var(--color-success)}.debt-value.has-debt{color:var(--color-danger)}.transaction-type-selector{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.type-btn{padding:14px 16px;border:2px solid var(--color-border);background:#fff;border-radius:var(--border-radius);font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;color:var(--color-text)}.type-btn:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.type-btn.active{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--color-text);font-size:14px}.form-group input[type=text],.form-group input[type=tel]{width:100%;padding:12px;border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:15px;font-family:inherit;transition:all .2s ease}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-group input.error{border-color:var(--color-danger)}.amount-input-group{display:flex;gap:8px;align-items:stretch}.currency-symbol{display:flex;align-items:center;padding:0 12px;background:var(--color-bg);border:1px solid var(--color-border);border-right:none;border-radius:var(--border-radius) 0 0 var(--border-radius);color:var(--color-text-secondary);font-weight:600}.amount-input-group input{flex:1;padding:12px;border:1px solid var(--color-border);border-radius:0;font-size:18px;font-weight:600;font-family:inherit}.amount-input-group input.error{border-color:var(--color-danger)}.amount-input-group input:focus{outline:none;border-color:var(--color-primary);z-index:1}.btn-pay-full{padding:12px 16px;background:var(--color-primary);color:#fff;border:none;border-radius:0 var(--border-radius) var(--border-radius) 0;font-weight:600;cursor:pointer;transition:var(--transition);white-space:nowrap;font-size:13px}.btn-pay-full:hover:not(:disabled){background:var(--color-primary-dark)}.btn-pay-full:disabled{background:var(--color-border);cursor:not-allowed;opacity:.5}.error-message{display:block;margin-top:8px;color:var(--color-danger);font-size:13px;font-weight:500}.payment-summary{background:var(--color-bg);padding:16px;border-radius:var(--border-radius);margin-bottom:20px;border:1px solid var(--color-border)}.summary-item{display:flex;justify-content:space-between;padding:8px 0;color:var(--color-text);font-size:14px}.summary-item.total{border-top:2px solid var(--color-border);margin-top:8px;padding-top:12px;font-weight:700;font-size:16px}.summary-item .decrease{color:var(--color-success);font-weight:600}.summary-item .increase{color:var(--color-danger);font-weight:600}.summary-item .success{color:var(--color-success);font-weight:700}.success-badge{background:var(--color-success);color:#fff;padding:10px 12px;border-radius:var(--border-radius);text-align:center;margin-top:12px;font-weight:600;font-size:14px}.modal-actions{display:flex;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--color-border)}.btn-cancel,.btn-submit{flex:1;padding:14px;border:none;border-radius:var(--border-radius);font-weight:600;font-size:15px;cursor:pointer;transition:var(--transition)}.btn-cancel{background:#f3f4f6;color:#6b7280;border:1px solid #d1d5db}.btn-cancel:hover{background:#e5e7eb;border-color:#9ca3af}.btn-submit{background:var(--color-success);color:#fff}.btn-submit:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-submit:disabled{background:#d1d5db;color:#9ca3af;cursor:not-allowed;opacity:.6}@media (max-width: 768px){.debt-payment-modal{width:95%;max-height:90vh}.transaction-type-selector{grid-template-columns:1fr}.amount-input-group{flex-wrap:wrap}.currency-symbol{border-radius:var(--border-radius) 0 0 0}.amount-input-group input{flex:1;min-width:0}.btn-pay-full{flex-basis:100%;border-radius:0 0 var(--border-radius) var(--border-radius)}}.payment-confirmation-modal{width:90%;max-width:500px}.confirmation-message{text-align:center;font-size:16px;color:var(--color-text);margin-bottom:24px}.confirmation-details{background:var(--color-bg);padding:20px;border-radius:var(--border-radius);margin-bottom:20px}.detail-item{display:flex;justify-content:space-between;align-items:flex-start;padding:10px 0;gap:16px}.detail-label{color:var(--color-text-secondary);font-size:14px;flex-shrink:0}.detail-value{color:var(--color-text);font-size:14px;text-align:right;word-break:break-word}.amount-highlight{font-size:20px;font-weight:700;color:var(--color-primary)}.success-text{color:var(--color-success);font-weight:600}.divider{height:1px;background:var(--color-border);margin:16px 0}.full-payment-badge{background:var(--color-success);color:#fff;padding:10px 14px;border-radius:var(--border-radius);text-align:center;margin-top:16px;font-weight:600;font-size:14px}.warning-message{display:flex;gap:12px;padding:14px;background:#fef7e0;border:1px solid var(--color-warning);border-radius:var(--border-radius);margin-bottom:24px}.warning-icon{font-size:20px;flex-shrink:0}.warning-text{font-size:13px;line-height:1.5;color:var(--color-text)}.warning-text strong{display:block;margin-bottom:4px}.modal-actions{display:flex;gap:12px}.btn-cancel,.btn-confirm{flex:1;padding:14px;border:none;border-radius:var(--border-radius);font-weight:600;font-size:15px;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:8px}.btn-cancel{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border)}.btn-cancel:hover:not(:disabled){background:var(--color-border)}.btn-confirm{background:var(--color-success);color:#fff;box-shadow:var(--shadow-sm)}.btn-confirm:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-cancel:disabled,.btn-confirm:disabled{opacity:.6;cursor:not-allowed}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .6s linear infinite}@media (max-width: 768px){.payment-confirmation-modal{width:95%;max-height:90vh;overflow-y:auto}.confirmation-message{font-size:15px}.amount-highlight{font-size:18px}}.notification-toast{position:fixed;top:20px;right:20px;background:#059669;color:#fff;padding:14px 20px;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:9999;font-size:14px;font-weight:500;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.header-actions{display:flex;gap:10px;align-items:center;flex:1}.header-actions .search-input-products{flex:1;padding:12px 16px;font-size:15px;border:1px solid var(--color-border);border-radius:var(--border-radius);transition:var(--transition);color:var(--color-text)}.header-actions .search-input-products:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}@media (max-width: 968px){.header-actions{flex-direction:column;align-items:stretch}.header-actions .search-input-products{order:-1;margin-bottom:10px}}.btn-refresh{background:#6366f1;color:#fff;border:none;padding:12px 20px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-refresh:hover{background:#4f46e5}.empty-state{text-align:center;padding:80px 20px}.empty-state-icon{font-size:80px;margin-bottom:20px}.empty-state h3{font-size:24px;color:#1a1a1a;margin-bottom:12px}.empty-state p{font-size:16px;color:#6b7280;margin-bottom:24px}.customers-list-section{background:var(--color-white);border-radius:var(--border-radius);padding:20px;box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.customers-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.customers-list-section h3{margin:0;color:var(--color-text);font-size:18px;font-weight:600}.customers-table-container{overflow-x:auto}.customers-table{width:100%;border-collapse:collapse;border-radius:var(--border-radius);overflow:hidden}.customers-table thead{background:var(--color-bg);border-bottom:1px solid var(--color-border)}.customers-table th{padding:12px 14px;text-align:left;font-weight:600;color:var(--color-text);font-size:13px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.customers-table td{padding:12px 14px;border-top:1px solid var(--color-border)}.customers-table tbody tr{border-bottom:1px solid var(--color-border);transition:background-color .2s ease;background:var(--color-white)}.customers-table tbody tr:hover{background:var(--color-bg)}.customers-table tbody tr.clickable-row{cursor:pointer;transition:background-color .2s ease}.customers-table tbody tr.clickable-row:hover{background-color:#3b82f60d}.customer-name-cell strong{color:#1a1a1a;font-size:16px;display:block;padding:4px 0}.customer-details{margin-top:4px;display:flex;flex-direction:column;gap:2px}.customer-details span{font-size:13px;color:#6b7280}.debt-badge{display:inline-block;padding:8px 16px;border-radius:8px;font-weight:700;font-size:16px;background:#f3f4f6;color:#6b7280;min-width:100px;text-align:center}.debt-badge.has-debt{background:#fee2e2;color:#dc2626;box-shadow:0 1px 2px #dc26261a}.action-buttons{display:flex;gap:8px}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.spinner{width:50px;height:50px;border:4px solid #f3f4f6;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.error-state-icon{font-size:60px;margin-bottom:20px}.error-state h3{font-size:24px;color:#1a1a1a;margin-bottom:12px}.error-state-message{font-size:16px;color:#6b7280;margin-bottom:24px}.btn-retry{background:#3b82f6;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.btn-retry:hover{background:#2563eb;transform:translateY(-1px)}@media (max-width: 968px){.fiado-screen{padding:16px}.fiado-header{flex-direction:column;align-items:flex-start;gap:16px}.fiado-header h2{font-size:24px}.header-actions{width:100%}.header-actions button{flex:1}.desktop-only{display:none}.mobile-only{display:block}.customers-table th,.customers-table td{padding:12px 16px}}@media (min-width: 969px){.mobile-only{display:none}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0006;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container{background:var(--color-white);border-radius:12px;box-shadow:0 4px 24px #00000014;width:100%;max-width:440px;max-height:90vh;overflow-y:auto;animation:slideUp .3s cubic-bezier(.34,1.56,.64,1);border:1px solid var(--color-border)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{padding:20px 24px;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:20px;color:var(--color-text);font-weight:600;display:flex;align-items:center;gap:10px;letter-spacing:-.3px}.modal-close-btn{background:transparent;border:none;font-size:24px;color:var(--color-text-secondary);cursor:pointer;padding:0;line-height:1;transition:var(--transition);border-radius:6px;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{background-color:var(--color-bg);color:var(--color-text)}.modal-close-btn:active{transform:scale(.9)}.modal-body{padding:24px}.form-group{margin-bottom:0}.form-group label{display:block;margin-bottom:10px;font-weight:600;color:var(--color-text);font-size:14px}.input-wrapper{position:relative;display:flex;align-items:center;background:var(--color-white);border:2px solid var(--color-border);border-radius:10px;transition:var(--transition)}.input-wrapper:focus-within{border-color:var(--color-success);box-shadow:0 0 0 4px #34a85314}.input-prefix{position:absolute;left:16px;font-size:24px;font-weight:700;color:var(--color-success);pointer-events:none;z-index:1}.form-group .amount-input{width:100%;padding:16px 16px 16px 42px!important;font-size:24px;border:none;border-radius:10px;transition:none;font-weight:700;color:var(--color-text);background:transparent}.amount-input:focus{outline:none}.amount-input:disabled{opacity:.5;cursor:not-allowed}.input-hint{margin-top:10px;font-size:13px;color:var(--color-text-secondary)}.error-message{padding:12px 16px;background-color:#ea433514;border:1px solid rgba(234,67,53,.2);border-radius:8px;color:var(--color-danger);font-size:14px;margin-bottom:16px}.btn-primary{flex:1;padding:14px 24px;background-color:var(--color-success);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-primary:hover:not(:disabled){background-color:#2d9c4e;transform:translateY(-1px);box-shadow:0 4px 12px #34a85340}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{background-color:var(--color-text-secondary);cursor:not-allowed;opacity:.5}.modal-info{padding:12px 16px;background-color:#ffc10714;border:1px solid rgba(255,193,7,.2);border-radius:8px;font-size:13px;color:#856404;text-align:center;margin-top:16px}.modal-info p{margin:0}@media (max-width: 768px){.modal-container{width:95%;margin:0 16px}.modal-header h2{font-size:1.3rem}.amount-input{font-size:1.3rem;padding:14px 14px 14px 40px!important}.input-prefix{font-size:1.3rem;left:14px}}.close-cash-modal{max-width:500px;max-height:90vh;overflow-y:auto}.session-summary{background:var(--color-bg);border-radius:10px;padding:16px;margin-bottom:20px;border:1px solid var(--color-border)}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0}.summary-item:not(:last-child){border-bottom:1px solid var(--color-border)}.summary-item.highlight{background:#34a8530d;padding:10px 12px;margin:0 -12px;border-radius:6px;border:1px solid rgba(52,168,83,.2)}.summary-item label{font-weight:600;color:var(--color-text-secondary);font-size:14px;margin:0}.summary-item span{color:var(--color-text);font-size:14px;font-weight:500}.amount-value{font-weight:700!important;font-size:18px!important;color:var(--color-success)!important}.amount-value.positive{color:var(--color-success)!important}.amount-value.expected{color:var(--color-primary)!important;font-size:20px!important}.divider{height:1px;background:var(--color-border);margin:20px 0}.difference-display{margin:16px 0 0;padding:16px;border-radius:10px;display:flex;justify-content:space-between;align-items:center;font-weight:600;animation:slideIn .3s ease-out}.difference-display.positive{background:#34a85314;border:2px solid var(--color-success);color:var(--color-success)}.difference-display.negative{background:#ffc10714;border:2px solid #ffc107;color:#856404}.difference-label{font-size:14px;font-weight:600}.difference-amount{font-size:24px;font-weight:700}.modal-actions{display:flex;gap:12px;margin-top:24px}.btn-secondary{flex:1;padding:14px 24px;background-color:var(--color-bg);color:var(--color-text);border:2px solid var(--color-border);border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-secondary:hover:not(:disabled){background-color:var(--color-white);border-color:var(--color-text-secondary);transform:translateY(-1px);box-shadow:0 2px 8px #00000014}.btn-secondary:active:not(:disabled){transform:translateY(0)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{flex:1;padding:14px 24px;background-color:var(--color-danger);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-danger:hover:not(:disabled){background-color:#c82333;transform:translateY(-1px);box-shadow:0 4px 12px #dc354540}.btn-danger:active:not(:disabled){transform:translateY(0)}.btn-danger:disabled{background-color:var(--color-text-secondary);cursor:not-allowed;opacity:.5}.modal-warning{padding:12px 16px;background-color:#ffc10714;border:1px solid rgba(255,193,7,.2);border-radius:8px;font-size:13px;color:#856404;text-align:center;margin-top:16px}.modal-warning p{margin:0}.notes-textarea{width:100%;padding:12px;border:1px solid var(--color-border);border-radius:8px;font-family:inherit;font-size:14px;resize:vertical;transition:border-color .2s;background:var(--color-bg);color:var(--color-text)}.notes-textarea:focus{outline:none;border-color:var(--color-primary)}.notes-textarea:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.close-cash-modal{width:95%;margin:0}.modal-actions{flex-direction:column-reverse}.btn-secondary,.btn-danger{width:100%}.difference-amount{font-size:20px}}.cash-header{margin-bottom:1.5rem}.cash-status{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;font-weight:600;font-size:.9rem}.cash-status.open{background-color:#d4edda;color:#155724}.cash-status.closed{background-color:#f8d7da;color:#721c24}.status-indicator{width:10px;height:10px;border-radius:50%;animation:pulse 2s ease-in-out infinite}.cash-status.open .status-indicator{background-color:#28a745}.cash-status.closed .status-indicator{background-color:#dc3545}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.error-banner{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.error-banner p{margin:0;color:#721c24;font-weight:500}.current-session-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:1.5rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}.session-status-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.session-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}@media (max-width: 968px){.session-status-header{flex-direction:column;align-items:stretch;gap:1rem}.session-info-grid{grid-template-columns:1fr}}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-label{font-size:.85rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.info-value{font-size:1.1rem;font-weight:600;color:var(--color-text)}.sessions-section{font-weight:600}.sessions-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h3{margin:0;font-size:1.3rem;color:#2c3e50}.btn-primary{background-color:#27ae60;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:1rem}.btn-primary:hover{background-color:#229954;transform:translateY(-1px);box-shadow:0 4px 12px #27ae604d}.btn-danger{background-color:#dc3545;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:1rem}.btn-danger:hover{background-color:#c82333;transform:translateY(-1px);box-shadow:0 4px 12px #dc35454d}.btn-secondary{background-color:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.9rem}.btn-secondary:hover{background-color:#5a6268;transform:translateY(-1px)}.empty-state{text-align:center;padding:3rem;color:#7f8c8d}.empty-state p{margin-bottom:1.5rem;font-size:1.1rem}.sessions-table{display:flex;flex-direction:column;gap:.75rem}.sessions-table-row{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:#f8f9fa;border-radius:8px;border-left:4px solid #dee2e6;cursor:pointer;transition:all .2s ease;align-content:center;min-height:60px}.sessions-table-row:hover{background-color:#e9ecef;border-left-color:#007bff;box-shadow:0 2px 8px #0000001a;transform:translate(4px)}.sessions-table-row.session-open{border-left-color:#28a745;background-color:#d4edda15}.sessions-table-row.session-open:hover{background-color:#d4edda35}.session-row-content{display:grid;grid-template-columns:120px 1fr 1fr 140px auto;gap:1rem;flex:1;align-items:center}.session-row-status{display:flex;align-items:center;gap:.5rem}.session-row-info{display:flex;flex-direction:column;gap:.25rem}.session-row-user{font-weight:600;color:#2c3e50;font-size:.95rem}.session-row-date{font-size:.85rem;color:#6c757d}.session-row-duration{text-align:center;padding:.5rem .75rem;background-color:#fff;border-radius:6px;font-size:.9rem;font-weight:500;color:#495057}.session-row-amount{text-align:right;font-weight:600;font-family:Courier New,monospace}@media (max-width: 1024px){.session-row-content{grid-template-columns:100px 1fr 120px auto}}@media (max-width: 768px){.sessions-table-row{flex-direction:column;align-items:flex-start;gap:.75rem;padding:.75rem}.session-row-content{grid-template-columns:1fr;width:100%;gap:.5rem}.session-row-amount{text-align:left}.session-row-duration{width:100%}}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.85rem;font-weight:600}.badge-success{background-color:#d4edda;color:#155724}.badge-default{background-color:#e2e3e5;color:#383d41}.currency{font-family:Courier New,monospace;font-weight:600;text-align:right}.currency.positive{color:#28a745}.currency.negative{color:#dc3545}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:#7f8c8d}.session-detail{max-width:600px}.detail-grid{display:flex;flex-direction:column;gap:1rem}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0}.detail-row.amount{font-size:1.1rem;font-weight:600}.detail-label{color:#6c757d;font-weight:600}.detail-value{color:#2c3e50;font-weight:500}.detail-value.positive{color:#28a745}.detail-value.negative{color:#dc3545}.detail-divider{height:1px;background-color:#dee2e6;margin:.5rem 0}.detail-row.notes{grid-column:1 / -1}.detail-row.notes .detail-value{white-space:pre-wrap;word-break:break-word}.session-detail-modal{max-width:800px;max-height:85vh;width:90%;overflow-y:auto}.session-detail-modal .modal-body{max-height:calc(85vh - 80px);overflow-y:auto}.sales-section{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid #dee2e6}.sales-section h3{margin-bottom:1rem;color:#495057;font-size:1.1rem}.loading-sales{display:flex;align-items:center;gap:.5rem;padding:1rem;justify-content:center;color:#6c757d}.spinner-small{width:20px;height:20px;border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}.empty-sales{text-align:center;padding:2rem;color:#6c757d}.sale-item{border:1px solid #dee2e6;border-radius:8px;overflow:hidden;transition:box-shadow .2s}.sale-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background-color:#f8f9fa;cursor:pointer;transition:background-color .2s}.sale-info{display:flex;flex-direction:column;gap:.25rem}.sale-date{font-size:.85rem;color:#6c757d}.sale-customer{font-weight:600;color:#212529}.sale-summary{display:flex;align-items:center;gap:1rem}.sale-total{font-weight:700;font-size:1.1rem;color:#28a745}.expand-btn{background:none;border:none;cursor:pointer;font-size:1rem;color:#007bff;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:transform .2s}.sale-detail{padding:1rem;background-color:#fff;border-top:1px solid #dee2e6;animation:slideDown .2s ease-out}.sale-items,.sale-payments{margin-bottom:1rem}.sale-items h4,.sale-payments h4{margin-bottom:.5rem;color:#495057;font-size:.95rem;font-weight:600}.items-table{width:100%;border-collapse:collapse;font-size:.9rem}.items-table thead{background-color:#f8f9fa}.items-table th{padding:.5rem;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6}.items-table td{padding:.5rem;border-bottom:1px solid #f1f1f1}.items-table tbody tr:hover{background-color:#f8f9fa}.payment-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background-color:#f8f9fa;border-radius:6px}.payment-amount{font-weight:700;color:#28a745}@media (max-width: 968px){.cash-screen{padding:1rem}.cash-header{flex-direction:column;align-items:flex-start;gap:1rem}.cash-actions{width:100%;justify-content:space-between}.session-info-grid{grid-template-columns:1fr}.sessions-table{font-size:.85rem}.sessions-table th,.sessions-table td{padding:8px}}@media (max-width: 768px){.sessions-table table{display:block;overflow-x:auto;white-space:nowrap}}.payment-modal{max-width:500px;width:95%;max-height:90vh}.payment-modal .modal-header{padding:12px 16px;border-bottom:1px solid var(--color-border);background:var(--color-white)}.payment-modal .modal-header h2{margin:0;font-size:18px;color:var(--color-text);font-weight:600}.payment-modal .modal-body{padding:16px}.compact-info{background:var(--color-bg);border-radius:var(--border-radius);padding:10px 12px;margin-bottom:12px;font-size:13px}.info-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;gap:8px}.info-row strong{color:var(--color-text-secondary);font-weight:600;font-size:12px}.debt-row{border-top:1px dashed var(--color-border);margin-top:6px;padding-top:8px}.debt-input-inline{display:flex;gap:4px;align-items:center}.debt-input-compact{width:70px;padding:4px 6px;border:1px solid var(--color-border);border-radius:4px;font-size:12px;font-weight:600;text-align:right}.debt-input-compact:focus{outline:none;border-color:var(--color-primary)}.btn-full-compact{padding:4px 8px;background:var(--color-danger);color:#fff;border:none;border-radius:4px;font-size:11px;font-weight:600;cursor:pointer}.btn-full-compact:hover{opacity:.9}.total-row{border-top:2px solid var(--color-border);margin-top:6px;padding-top:8px}.total-row strong{color:var(--color-text);font-size:14px}.total-compact{font-size:24px;font-weight:700;color:var(--color-success)}.payment-methods-compact{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:12px}.method-btn-compact{background:var(--color-white);border:2px solid var(--color-border);border-radius:var(--border-radius);padding:8px 4px;cursor:pointer;transition:all .15s;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;font-weight:600}.method-btn-compact:hover:not(:disabled){border-color:var(--color-primary);transform:translateY(-1px)}.method-btn-compact.active{border-color:var(--color-success);background:var(--color-success);color:#fff;transform:translateY(-1px)}.method-btn-compact:disabled{opacity:.5;cursor:not-allowed}.method-btn-compact svg{width:18px;height:18px}.notes-section-compact{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:12px;margin-bottom:12px}.notes-section-compact label{display:block;font-size:12px;font-weight:600;color:var(--color-text-secondary);margin-bottom:6px}.notes-input-compact{width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:14px;font-family:inherit;transition:all .2s ease}.notes-input-compact:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.cash-section-compact{background:#f0f9ff;border:2px solid #bae6fd;border-radius:var(--border-radius);padding:10px;margin-bottom:12px}.cash-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.cash-row label{font-size:12px;font-weight:600;color:#075985;min-width:60px}.cash-input-compact{flex:1;padding:8px 10px;border:1px solid #bae6fd;border-radius:var(--border-radius);font-size:18px;font-weight:700;text-align:right;background:#fff}.cash-input-compact:focus{outline:none;border-color:#0284c7;box-shadow:0 0 0 2px #0284c71a}.suggested-compact{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:8px}.suggest-btn{padding:6px 4px;background:#fff;border:1px solid #bae6fd;border-radius:4px;font-size:11px;font-weight:600;color:#075985;cursor:pointer;transition:all .15s}.suggest-btn:hover{background:#0284c7;border-color:#0284c7;color:#fff}.change-compact{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:#fff;border-radius:var(--border-radius);border:2px solid #86efac}.change-compact.error{border-color:#fca5a5;background:#fef2f2}.change-compact span{font-size:12px;font-weight:600;color:#15803d}.change-compact strong{font-size:18px;color:#16a34a}.change-compact.error span,.change-compact.error strong{color:#dc2626}.error-text{font-size:11px;margin-left:4px}.actions-compact{display:grid;grid-template-columns:1fr 2fr;gap:8px;margin-top:12px}.btn-cancel-compact,.btn-confirm-compact{padding:10px 16px;border:none;border-radius:var(--border-radius);font-weight:600;font-size:14px;cursor:pointer;transition:all .15s}.btn-cancel-compact{background:#f3f4f6;color:#6b7280;border:1px solid #d1d5db}.btn-cancel-compact:hover:not(:disabled){background:#e5e7eb}.btn-confirm-compact{background:var(--color-success);color:#fff}.btn-confirm-compact:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 2px 8px #10b9814d}.btn-cancel-compact:disabled,.btn-confirm-compact:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.payment-modal{width:98%;max-height:95vh}.payment-methods-compact{grid-template-columns:repeat(3,1fr)}.method-btn-compact span{font-size:10px}.suggested-compact{grid-template-columns:repeat(2,1fr)}}.search-autocomplete{position:relative;display:flex;align-items:center;gap:12px;width:100%}.search-autocomplete .inline-label{font-weight:600;color:var(--color-text);font-size:15px;white-space:nowrap;flex-shrink:0;min-width:60px}.search-input-wrapper{position:relative;flex:1}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:16px;pointer-events:none;color:var(--color-text-secondary)}.search-autocomplete .search-input{width:100%;padding:12px 40px 12px 44px;border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:15px;line-height:1.5;height:47px;box-sizing:border-box;transition:var(--transition);background:var(--color-white);color:var(--color-text)}@media (max-width: 968px){.search-autocomplete .search-input{font-size:16px;height:52px;padding:14px 40px 14px 44px;-webkit-tap-highlight-color:transparent}}.search-autocomplete .search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.clear-button{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:transparent;border:none;border-radius:50%;width:28px;height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--color-text-secondary);transition:var(--transition)}.suggestions-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-md);max-height:360px;overflow-y:auto;z-index:2000;animation:slideDown .2s cubic-bezier(.4,0,.2,1)}.suggestion-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:none;background:var(--color-white);cursor:pointer;transition:var(--transition);text-align:left;width:100%;border-bottom:1px solid var(--color-border)}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover,.suggestion-item.selected{background-color:var(--color-primary-light)}.suggestion-content{flex:1;min-width:0}.suggestion-name{font-weight:500;color:var(--color-text);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.suggestion-code{font-size:13px;color:var(--color-text-secondary)}.suggestion-price{font-weight:600;color:var(--color-success);margin-left:12px;white-space:nowrap;font-size:15px}.highlight{background-color:var(--color-warning);font-weight:600;padding:0 2px;border-radius:2px;color:var(--color-text)}.no-suggestions{padding:20px;text-align:center;color:var(--color-text-secondary);font-size:14px}@media (max-width: 968px){.search-autocomplete{position:static}.search-input-wrapper{position:relative;z-index:3000}.suggestions-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;max-height:60vh;z-index:3001}.suggestion-item{padding:14px 12px}.suggestion-name,.suggestion-price{font-size:15px}}.customer-autocomplete{position:relative;display:flex;align-items:center;gap:12px;width:100%}.customer-autocomplete .inline-label{font-weight:600;color:var(--color-text);font-size:15px;white-space:nowrap;flex-shrink:0;min-width:60px}.customer-autocomplete label:not(.inline-label){display:block;margin-bottom:6px;font-weight:500;color:var(--color-text);font-size:14px}.customer-input-wrapper{position:relative;flex:1}.customer-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:16px;pointer-events:none;color:var(--color-text-secondary)}.customer-autocomplete .customer-input{width:100%;padding:12px 40px 12px 44px;border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:15px;line-height:1.5;height:47px;box-sizing:border-box;transition:var(--transition);background:var(--color-white);color:var(--color-text);cursor:pointer}@media (max-width: 968px){.customer-autocomplete .customer-input{font-size:16px;height:52px;padding:14px 40px 14px 44px;-webkit-tap-highlight-color:transparent}}.customer-debt-badge{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:var(--color-danger);color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap;pointer-events:none;z-index:5}.customer-autocomplete .customer-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);cursor:text}.customer-autocomplete .customer-input:disabled{background:var(--color-bg);cursor:not-allowed;opacity:.6}.clear-button{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:transparent;border:none;border-radius:50%;width:28px;height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--color-text-secondary);transition:var(--transition);z-index:10}.clear-button:hover{background:var(--color-bg);color:var(--color-text)}.customer-suggestions-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--shadow-md);max-height:400px;overflow-y:auto;z-index:2000;animation:slideDown .2s cubic-bezier(.4,0,.2,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.customer-suggestion-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:none;background:var(--color-white);cursor:pointer;transition:var(--transition);text-align:left;width:100%;border-bottom:1px solid var(--color-border)}.customer-suggestion-item:last-child{border-bottom:none}.customer-suggestion-item:hover,.customer-suggestion-item.selected{background:var(--color-bg)}.customer-suggestion-item.current{background:var(--color-primary-light)}.customer-suggestion-item.current:hover,.customer-suggestion-item.current.selected{background:var(--color-primary-light);opacity:.9}.customer-suggestion-item.create-new{background:var(--color-success-light);font-weight:500;color:var(--color-success)}.customer-suggestion-item.create-new:hover,.customer-suggestion-item.create-new.selected{background:var(--color-success);color:var(--color-white)}.customer-suggestion-content{display:flex;flex-direction:column;gap:4px;flex:1;align-items:flex-start;position:relative}.customer-suggestion-item.create-new .customer-suggestion-content{flex-direction:row;align-items:center;gap:8px}.create-icon{font-size:16px}.customer-suggestion-name{font-size:15px;font-weight:500;color:var(--color-text)}.customer-suggestion-item.create-new .customer-suggestion-name{color:inherit}.customer-suggestion-phone{font-size:13px;color:var(--color-text-secondary)}.customer-debt{font-size:13px;font-weight:600;color:var(--color-warning);white-space:nowrap;margin-left:12px}.current-badge{position:absolute;top:0;right:0;font-size:11px;font-weight:600;color:var(--color-primary);background:var(--color-white);padding:2px 8px;border-radius:10px;border:1px solid var(--color-primary)}.suggestions-separator{height:1px;background:var(--color-border);margin:4px 0}.no-suggestions{padding:16px;text-align:center;color:var(--color-text-secondary);font-size:14px}.loading-text{display:block;margin-top:4px;color:var(--color-text-secondary);font-size:12px}.highlight{background:var(--color-warning-light);font-weight:600;padding:1px 2px;border-radius:2px}@media (max-width: 968px){.customer-autocomplete{position:static}.customer-input-wrapper{position:relative;z-index:3000}.customer-suggestions-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;max-height:50vh;z-index:3001}.customer-suggestion-item{padding:12px 14px}}.tenant-validator-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.tenant-validator-loading .spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.tenant-validator-loading p{font-size:18px;font-weight:500}.tenant-validator-error{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.error-content{background:#fff;border-radius:16px;padding:60px 40px;max-width:500px;text-align:center;box-shadow:0 20px 60px #0000004d}.error-icon{margin-bottom:20px;animation:bounce 2s infinite}.error-icon img{width:120px;height:120px;object-fit:contain}.error-content h1{font-size:28px;color:#333;margin-bottom:16px;font-weight:700}.error-content p{font-size:16px;color:#666;margin-bottom:12px;line-height:1.6}.error-subdomain{background:#f5f5f5;padding:12px;border-radius:8px;margin:20px 0;font-size:14px;color:#555}.error-subdomain strong{color:#667eea;font-weight:600}.btn-back-home{display:inline-block;margin-top:24px;padding:14px 32px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:16px;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 12px #667eea66}.btn-back-home:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.session-sales-modal{max-width:700px;width:95%;max-height:85vh}.session-sales-modal .modal-body{padding:0;max-height:calc(85vh - 60px);overflow-y:auto}.session-info{background:var(--color-primary-light);border-bottom:2px solid var(--color-primary);padding:16px 20px;position:sticky;top:0;z-index:10}.session-info-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:14px}.session-info-row .label{color:var(--color-text-secondary);font-weight:600}.session-info-row .value{color:var(--color-text);font-weight:500}.session-info-row .value.highlight{font-size:18px;font-weight:700;color:var(--color-success)}.sales-list{padding:16px 20px}.sales-header{margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid var(--color-border)}.sales-header h3{margin:0;font-size:16px;color:var(--color-text);font-weight:600}.sale-item{background:var(--color-white);border:2px solid var(--color-border);border-radius:var(--border-radius);margin-bottom:12px;overflow:hidden;transition:var(--transition)}.sale-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.sale-summary{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;cursor:pointer;-webkit-user-select:none;user-select:none}.sale-info{display:flex;gap:12px;align-items:center;flex:1}.sale-id{font-family:Courier New,monospace;font-weight:600;color:var(--color-text-secondary);font-size:13px}.sale-time{font-size:13px;color:var(--color-text-secondary);font-weight:500}.sale-customer{font-size:12px;color:var(--color-primary);font-weight:600;padding:2px 8px;background:var(--color-primary-light);border-radius:12px}.sale-amount{display:flex;align-items:center;gap:12px}.sale-total{font-size:18px;font-weight:700;color:var(--color-success)}.expand-icon{font-size:12px;color:var(--color-text-secondary);transition:transform .2s}.expand-icon.expanded{transform:rotate(180deg)}.sale-detail{border-top:1px solid var(--color-border);padding:16px;background:var(--color-bg);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.detail-section{margin-bottom:16px}.detail-section h4{margin:0 0 12px;font-size:13px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.items-table{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--border-radius);overflow:hidden;font-size:13px}.items-table thead{background:var(--color-bg)}.items-table th{padding:8px 10px;text-align:left;font-weight:600;color:var(--color-text-secondary);font-size:12px}.items-table th:last-child,.items-table td:last-child{text-align:right}.items-table td{padding:8px 10px;border-top:1px solid var(--color-border);color:var(--color-text)}.items-table tbody tr:hover{background:var(--color-bg)}.payments-list{display:flex;flex-direction:column;gap:8px}.payment-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#fff;border-radius:var(--border-radius);border:1px solid var(--color-border);font-size:14px}.payment-item span:first-child{font-weight:600;color:var(--color-text)}.payment-item span:last-child{font-weight:700;color:var(--color-success)}.loading-state,.error-state,.empty-state{padding:40px 20px;text-align:center;color:var(--color-text-secondary)}.loading-state{display:flex;flex-direction:column;align-items:center;gap:16px}.spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:40px;height:40px;animation:spin .8s linear infinite}.error-state p,.empty-state p{margin:0;font-size:14px;font-weight:500}@media (max-width: 768px){.session-sales-modal{width:98%;max-height:92vh}.sale-info{flex-wrap:wrap;gap:8px}.sale-id,.sale-time{font-size:12px}.sale-total{font-size:16px}.items-table{font-size:12px}.items-table th,.items-table td{padding:6px 8px}}.metric-card{background:var(--color-white);border-radius:var(--border-radius);padding:20px;box-shadow:var(--shadow-sm);transition:var(--transition)}.metric-card:hover{box-shadow:var(--shadow-md)}.metric-card-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.metric-card-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:20px}.metric-card-icon.primary{background:var(--color-primary-light);color:var(--color-primary)}.metric-card-icon.success{background:#34a8531a;color:var(--color-success)}.metric-card-icon.warning{background:#fbbc041a;color:var(--color-warning)}.metric-card-icon.danger{background:#ea43351a;color:var(--color-danger)}.metric-card-title{font-size:14px;color:var(--color-text-secondary);font-weight:500;margin:0}.metric-card-value{font-size:32px;font-weight:700;color:var(--color-text);margin:0;line-height:1.2}.metric-card-subtitle{font-size:13px;color:var(--color-text-secondary);margin-top:8px}@media (max-width: 968px){.metric-card{padding:16px}.metric-card-value{font-size:28px}}.simple-bar-chart{background:var(--color-white);border-radius:var(--border-radius);padding:20px;box-shadow:var(--shadow-sm)}.simple-bar-chart-title{font-size:16px;font-weight:600;color:var(--color-text);margin:0 0 20px}.simple-bar-chart-container{display:flex;flex-direction:column;gap:12px}.bar-item{display:flex;align-items:center;gap:12px}.bar-label{min-width:100px;font-size:14px;color:var(--color-text);font-weight:500}.bar-container{flex:1;height:32px;background:var(--color-bg);border-radius:4px;overflow:hidden;position:relative}.bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-dark));border-radius:4px;transition:width .6s ease-out;display:flex;align-items:center;justify-content:flex-end;padding-right:8px;min-width:40px}.bar-value{font-size:13px;font-weight:600;color:var(--color-white);white-space:nowrap}.bar-value-outside{font-size:13px;font-weight:600;color:var(--color-text);margin-left:8px}.simple-bar-chart-empty{text-align:center;padding:40px 20px;color:var(--color-text-secondary);font-size:14px}@media (max-width: 968px){.simple-bar-chart{padding:16px}.bar-label{min-width:80px;font-size:13px}.bar-container{height:28px}.bar-value,.bar-value-outside{font-size:12px}}.simple-line-chart{background:var(--color-white);border-radius:var(--border-radius);padding:20px;box-shadow:var(--shadow-sm)}.simple-line-chart-title{font-size:16px;font-weight:600;color:var(--color-text);margin:0 0 20px}.chart-container{position:relative;height:200px;display:flex;align-items:flex-end;gap:8px;padding:10px 0;border-bottom:2px solid var(--color-border)}.chart-bar{flex:1;background:var(--color-primary);border-radius:4px 4px 0 0;position:relative;transition:all .3s ease;min-height:4px;cursor:pointer}.chart-bar:hover{background:var(--color-primary-dark);opacity:.9}.chart-bar-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-8px);background:var(--color-text);color:var(--color-white);padding:8px 12px;border-radius:6px;font-size:12px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s ease;z-index:10}.chart-bar-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--color-text)}.chart-bar:hover .chart-bar-tooltip{opacity:1}.chart-labels{display:flex;justify-content:space-between;margin-top:12px;gap:8px}.chart-label{flex:1;text-align:center;font-size:12px;color:var(--color-text-secondary);font-weight:500}.simple-line-chart-empty{text-align:center;padding:40px 20px;color:var(--color-text-secondary);font-size:14px}@media (max-width: 968px){.simple-line-chart{padding:16px}.chart-container{height:160px}.chart-label{font-size:11px}.chart-bar-tooltip{font-size:11px;padding:6px 10px}}.feature-preview{padding:24px;min-height:600px}.feature-preview__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.feature-preview__header h1{font-size:28px;font-weight:600;color:#1a1a1a;margin:0}.feature-preview__actions{display:flex;gap:12px;align-items:center}.btn-primary{padding:10px 20px;background-color:#007bff;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:not-allowed}.search-input,.date-selector{padding:10px 16px;border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:200px}.feature-preview__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.stat-label{font-size:14px;color:#6b7280;margin-bottom:8px}.stat-value{font-size:28px;font-weight:700;color:#1a1a1a}.feature-preview__table{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.feature-preview__table table{width:100%;border-collapse:collapse}.feature-preview__table th{background-color:#f9fafb;padding:12px 16px;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.feature-preview__table td{padding:16px;border-bottom:1px solid #f3f4f6;color:#1f2937}.debt-amount{font-weight:600;color:#dc2626}.btn-small{padding:6px 12px;margin-right:8px;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;font-size:13px;cursor:not-allowed}.feature-preview__charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.chart-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.chart-container h3{font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:16px}.chart-placeholder{display:flex;align-items:flex-end;gap:16px;height:200px;padding:20px 0}.bar{flex:1;background:linear-gradient(to top,#3b82f6,#60a5fa);border-radius:4px 4px 0 0;min-height:20px}.products-list{display:flex;flex-direction:column;gap:12px}.product-item{display:flex;justify-content:space-between;padding:12px;background-color:#f9fafb;border-radius:6px;font-size:14px}.product-item span{font-weight:600;color:#059669}.protected-route-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:400px;gap:16px}.protected-route-loading .spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #ff6b35;border-radius:50%;animation:spin 1s linear infinite}.protected-route-loading p{color:#666;font-size:14px}.protected-route-locked{position:relative;width:100%;height:100%;min-height:calc(100vh - 120px)}.protected-route-blur{filter:blur(8px);opacity:.4;pointer-events:none;-webkit-user-select:none;user-select:none;position:relative;width:100%;height:100%;overflow:hidden}.protected-route-blur *{pointer-events:none;-webkit-user-select:none;user-select:none}.dev-error-toggle{position:fixed;bottom:0;right:0;width:36px;height:33px;border-radius:0;background:linear-gradient(135deg,#667eea,#764ba299);color:#fff;border:none;font-size:18px;cursor:pointer;box-shadow:0 4px 12px #0000004d;z-index:999998;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.dev-error-toggle:hover{transform:scale(1.1);box-shadow:0 6px 16px #0006}.error-badge{position:absolute;top:-5px;right:-5px;background:#f44;color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;border:2px solid white}.dev-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:999999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px}.dev-modal-container{background:linear-gradient(180deg,#1e293b,#0f172a);border-radius:12px;border:2px solid rgba(59,130,246,.4);box-shadow:0 20px 60px #00000080;width:95%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.dev-modal-header{padding:18px 20px;background:linear-gradient(135deg,#3b82f6,#2563eb,#1d4ed8);color:#fff;display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid rgba(59,130,246,.5);box-shadow:0 4px 16px #0000004d;border-radius:10px 10px 0 0}.dev-modal-header h3{margin:0;font-size:18px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3);letter-spacing:.5px;text-transform:uppercase}.dev-modal-actions{display:flex;gap:8px}.dev-modal-body{overflow-y:auto;overflow-x:hidden;padding:20px;flex:1}.btn-clear,.btn-close{background:#ffffff26;border:2px solid rgba(255,255,255,.3);color:#fff;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease;text-transform:uppercase;letter-spacing:.3px;box-shadow:0 2px 8px #0003}.btn-clear:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.btn-close{padding:8px 12px;font-size:16px;font-weight:700}.btn-close:hover{background:#ef4444e6;border-color:#ef4444;transform:translateY(-2px);box-shadow:0 4px 12px #ef444480}.dev-modal-body::-webkit-scrollbar{width:10px}.dev-modal-body::-webkit-scrollbar-track{background:#0f172a80;border-radius:5px}.dev-modal-body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#3b82f6,#2563eb);border-radius:5px;border:2px solid rgba(59,130,246,.3)}.dev-modal-body::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#2563eb,#1d4ed8);box-shadow:0 0 10px #3b82f699}.no-errors{text-align:left;padding:0;color:#4caf50;font-size:16px}.error-list{display:flex;flex-direction:column;gap:12px}.error-item{background:#2a2a2a;border-left:4px solid #ff4444;border-radius:6px;padding:12px;font-family:Courier New,monospace;font-size:13px;color:#e0e0e0}.error-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #444}.error-status{color:#ff6b6b;font-weight:700}.error-time{color:#888;font-size:11px}.error-message{color:orange;margin-bottom:8px;font-weight:500}.error-url{color:#4a9eff;font-size:12px;margin-bottom:8px;word-break:break-all}.error-method{display:inline-block;background:#4a9eff;color:#fff;padding:2px 6px;border-radius:4px;font-weight:700;margin-right:8px;font-size:11px}.error-details{margin-top:8px;background:#1a1a1a;border-radius:4px;padding:8px}.error-details summary{cursor:pointer;color:#667eea;font-weight:600;-webkit-user-select:none;user-select:none;padding:4px}.error-details summary:hover{color:#8b9fe8}.error-details pre{margin:8px 0 0;padding:8px;background:#0a0a0a;border-radius:4px;overflow-x:auto;font-size:11px;line-height:1.5;color:#a8dadc}.dev-error-panel-body::-webkit-scrollbar{width:8px}.dev-error-panel-body::-webkit-scrollbar-track{background:#2a2a2a}.dev-error-panel-body::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.dev-error-panel-body::-webkit-scrollbar-thumb:hover{background:#764ba2}.data-management-section{background:linear-gradient(145deg,#1e293b,#0f172a);border:2px solid rgba(234,179,8,.3);border-bottom:3px solid #eab308;padding:18px;margin-bottom:16px;border-radius:10px;box-shadow:0 8px 16px #0006,inset 0 1px #eab3081a}.data-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid rgba(234,179,8,.4)}.data-management-header h4{margin:0;color:#fde047;font-size:15px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3);letter-spacing:.5px}.data-management-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-bottom:12px}.btn-seed{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:2px solid rgba(16,185,129,.5);padding:10px 14px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px #10b9814d}.btn-seed:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 6px 16px #10b98180}.btn-seed:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-seed.btn-clear-data{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#ef444480;box-shadow:0 4px 12px #ef44444d}.btn-seed.btn-clear-data:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 16px #ef444480}.seed-status{padding:10px;border-radius:6px;font-size:13px;font-weight:500;text-align:center;animation:slideIn .3s ease}.seed-status.success{background:#27a74533;color:#28a745;border:1px solid rgba(39,167,69,.3)}.seed-status.error{background:#dc354533;color:#dc3545;border:1px solid rgba(220,53,69,.3)}.seed-status.info{background:#667eea33;color:#667eea;border:1px solid rgba(102,126,234,.3)}.monitoring-section{background:linear-gradient(145deg,#1e293b,#0f172a);border:2px solid rgba(168,85,247,.3);border-bottom:3px solid #a855f7;padding:18px;margin-bottom:16px;border-radius:10px;box-shadow:0 8px 16px #0006,inset 0 1px #a855f71a}.monitoring-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid rgba(168,85,247,.4)}.monitoring-header h4{margin:0;color:#e9d5ff;font-size:15px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3);letter-spacing:.5px}.status-badge{padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700;background:#333;color:#fff;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #0000004d}.status-badge.running{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:2px solid rgba(239,68,68,.5);animation:pulse-running 2s infinite;box-shadow:0 0 20px #ef444499}.status-badge.stopped{background:#4755694d;color:#94a3b8;border:2px solid #475569}@keyframes pulse-running{0%,to{opacity:1}50%{opacity:.6}}.monitoring-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-bottom:12px}.btn-monitor{background:#667eea;color:#fff;border:none;padding:8px 12px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.btn-monitor:hover:not(:disabled){background:#764ba2;transform:translateY(-2px);box-shadow:0 4px 8px #667eea66}.btn-monitor:disabled{opacity:.5;cursor:not-allowed}.btn-monitor.btn-start{background:linear-gradient(135deg,#4caf50,#45a049)}.btn-monitor.btn-start:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#3d8b40)}.btn-monitor.btn-stop{background:linear-gradient(135deg,#f44336,#da190b)}.btn-monitor.btn-stop:hover:not(:disabled){background:linear-gradient(135deg,#da190b,#c41c00)}.btn-monitor.btn-status{background:linear-gradient(135deg,#2196f3,#0b7dda)}.btn-monitor.btn-status:hover:not(:disabled){background:linear-gradient(135deg,#0b7dda,#0056b3)}.btn-monitor.btn-report{background:linear-gradient(135deg,#ff9800,#e68900)}.btn-monitor.btn-report:hover:not(:disabled){background:linear-gradient(135deg,#e68900,#d67700)}.report-section{background:#1a1a1a;border:1px solid #667eea;border-radius:6px;padding:12px;margin-top:12px}.report-section h5{margin:0 0 8px;color:#667eea;font-size:13px;font-weight:600}.report-content{background:#0a0a0a;border:1px solid #333;border-radius:4px;padding:10px;margin-bottom:10px;max-height:200px;overflow-y:auto}.report-content pre{margin:0;color:#a8dadc;font-family:Courier New,monospace;font-size:12px;line-height:1.4;white-space:pre-wrap;word-wrap:break-word}.report-content::-webkit-scrollbar{width:6px}.report-content::-webkit-scrollbar-track{background:#1a1a1a}.report-content::-webkit-scrollbar-thumb{background:#667eea;border-radius:3px}.btn-close-report{background:#f443;border:1px solid #ff4444;color:#f44;padding:6px 12px;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s;width:100%;font-weight:600}.btn-close-report:hover{background:#f446}.products-crud-section{background:linear-gradient(145deg,#1e293b,#0f172a);border:2px solid rgba(59,130,246,.3);border-bottom:3px solid #3b82f6;padding:18px;margin-bottom:16px;border-radius:10px;box-shadow:0 8px 16px #0006,inset 0 1px #3b82f61a;max-height:none;overflow:visible}.products-crud-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid rgba(59,130,246,.4)}.products-crud-header h4{margin:0;color:#93c5fd;font-size:15px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3);letter-spacing:.5px}.btn-toggle-products{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:1px solid rgba(59,130,246,.5);padding:6px 14px;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;transition:all .3s ease;box-shadow:0 2px 8px #3b82f64d}.btn-toggle-products:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f680}.dev-error-panel .product-form{padding:16px;margin-bottom:0;background:#0f172a80;border-radius:8px;border:1px solid rgba(59,130,246,.2)}.dev-error-panel .form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.dev-error-panel .form-group label{color:#93c5fd!important;font-size:13px!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.5px!important;text-shadow:0 1px 2px rgba(0,0,0,.3)!important}.dev-error-panel .form-group input{background:#0f172acc!important;color:#e0e8f0!important;border:2px solid rgba(59,130,246,.3)!important;padding:10px 12px!important;border-radius:6px!important;font-size:13px!important;font-family:inherit!important;transition:all .3s ease!important;font-weight:500!important}.dev-error-panel .form-group input::placeholder{color:#64748b;opacity:.8}.dev-error-panel .form-group input:focus{outline:none;border-color:#3b82f6;background:#0f172af2;box-shadow:0 0 0 3px #3b82f633,0 4px 12px #3b82f626;transform:translateY(-1px)}.dev-error-panel .form-group input:disabled{opacity:.5;cursor:not-allowed}.dev-error-panel .form-actions{display:flex;gap:10px;margin-top:0;padding:0;background:transparent!important;border-top:none!important}.btn-save,.btn-cancel{flex:1;padding:12px 18px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;transition:all .3s ease;white-space:nowrap;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;gap:6px}.btn-save{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important;border:2px solid rgba(16,185,129,.5)!important;box-shadow:0 4px 12px #10b9814d}.btn-save:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857)!important;transform:translateY(-2px);box-shadow:0 6px 16px #10b98180}.btn-cancel{background:transparent!important;color:#ef4444!important;border:2px solid #ef4444!important}.btn-cancel:hover:not(:disabled){background:#ef444426!important;border-color:#dc2626!important;color:#dc2626!important;transform:translateY(-2px)}.btn-save:disabled,.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.products-list{background:#0f172a99;padding:0;border-radius:8px;border:2px solid rgba(59,130,246,.25);max-height:250px;overflow-y:scroll;overflow-x:hidden;box-shadow:inset 0 2px 8px #0000004d;margin-top:12px;display:block}.products-list .loading,.products-list .empty{text-align:center;padding:20px;color:#94a3b8;font-size:13px;font-weight:500}.products-list::-webkit-scrollbar{width:8px}.products-list::-webkit-scrollbar-track{background:#0f172a80;border-radius:4px}.products-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#3b82f6,#2563eb);border-radius:4px;border:1px solid rgba(59,130,246,.3)}.products-list::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#2563eb,#1d4ed8);box-shadow:0 0 8px #3b82f680}.devtools-products-table{width:100%;border-collapse:collapse;font-size:13px;background:#1e293b4d;border-radius:0;overflow:visible}.devtools-products-table thead{background:#0d5a8d4d;border-bottom:2px solid rgba(59,130,246,.4);position:sticky;top:0;z-index:10}.devtools-products-table th{padding:10px 12px;text-align:left;color:#93c5fd;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.devtools-products-table td{padding:10px 12px;color:#e0e8f0;border-bottom:1px solid rgba(13,90,141,.2);font-size:13px}.devtools-products-table tbody tr{transition:background-color .15s ease}.devtools-products-table tbody tr:hover{background:#3b82f626}.errors-section{background:linear-gradient(145deg,#1e293b,#0f172a);border:2px solid rgba(234,17,17,.3);border-bottom:3px solid #ba5050;padding:18px;margin-bottom:16px;border-radius:10px;box-shadow:0 8px 16px #0006,inset 0 1px #a855f71a;color:#eee}@media (max-width: 768px){.dev-error-panel{left:10px;right:10px;width:auto;max-height:500px}.dev-error-toggle{left:10px;bottom:10px}.monitoring-controls{grid-template-columns:repeat(2,1fr)}}.reportes-page{padding:24px;max-width:1400px;margin:0 auto;overflow-y:auto;height:calc(100vh - 84px)}.reportes-header{margin-bottom:24px}.reportes-page h1{font-size:28px;font-weight:700;color:var(--color-text);margin:0 0 8px}.reportes-subtitle{font-size:15px;color:var(--color-text-secondary);margin:0}.date-selector{display:flex;gap:12px;align-items:center;margin-bottom:24px;padding:16px;background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);flex-wrap:wrap}.date-selector label{font-size:14px;font-weight:600;color:var(--color-text);display:flex;gap:8px;align-items:center}.date-selector input[type=date]{padding:8px 12px;border:2px solid var(--color-border);border-radius:6px;font-size:14px;color:var(--color-text);background:var(--color-white);transition:var(--transition)}.date-selector input[type=date]:focus{outline:none;border-color:var(--color-primary)}.btn-apply-filter{padding:8px 20px;background:var(--color-primary);color:var(--color-white);border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-apply-filter:hover{background:var(--color-primary-dark)}.btn-apply-filter:active{transform:scale(.98)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:20px;margin-bottom:24px}.full-width-chart{grid-column:1 / -1}.loading-reports{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.loading-reports .spinner{width:40px;height:40px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.loading-reports p{color:var(--color-text-secondary);font-size:15px;font-weight:500}.error-message{background:#ea43351a;border:2px solid var(--color-danger);border-radius:var(--border-radius);padding:16px;color:var(--color-danger);text-align:center;margin:20px 0}.future-features{margin-top:40px;padding:24px;background:var(--color-bg);border-radius:var(--border-radius);border:2px dashed var(--color-border)}.future-features h2{font-size:20px;font-weight:700;color:var(--color-text);margin:0 0 16px;display:flex;align-items:center;gap:8px}.future-features-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}.future-features-list li{display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--color-white);border-radius:6px;font-size:14px;color:var(--color-text-secondary)}.future-features-list li:before{content:"🔮";font-size:18px;flex-shrink:0}@media (max-width: 968px){.reportes-page{padding:16px;height:auto}.reportes-page h1{font-size:24px}.date-selector{flex-direction:column;align-items:stretch}.date-selector label,.date-selector input[type=date],.btn-apply-filter{width:100%}.metrics-grid,.charts-grid{grid-template-columns:1fr}.future-features{padding:16px;margin-top:24px}}.ajustes-page{max-width:900px;margin:0 auto;padding:2rem 1rem}.ajustes-header{margin-bottom:2rem}.ajustes-header h1{margin:0 0 .5rem;font-size:2rem;color:#2c3e50}.ajustes-subtitle{margin:0;color:#6c757d;font-size:.95rem}.alert{padding:1rem;border-radius:8px;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.alert-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.ajustes-section{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a}.section-header{margin-bottom:1.5rem;border-bottom:2px solid #f0f0f0;padding-bottom:1rem}.section-header h2{margin:0 0 .5rem;font-size:1.3rem;color:#2c3e50}.section-description{margin:0;color:#6c757d;font-size:.9rem}.nombre-negocio-card{padding:1.5rem;background-color:#f8f9fa;border-radius:8px;border-left:4px solid #007bff}.nombre-view{display:flex;justify-content:space-between;align-items:center;gap:1rem}.nombre-display{flex:1;display:flex;flex-direction:column;gap:.5rem}.nombre-display .label{font-size:.85rem;font-weight:600;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.nombre-display .value{font-size:1.3rem;font-weight:700;color:#2c3e50}.btn-edit{padding:.75rem 1.5rem;background-color:#007bff;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-edit:hover{background-color:#0056b3;transform:translateY(-2px);box-shadow:0 2px 8px #0056b34d}.nombre-edit-form{display:flex;flex-direction:column;gap:1rem}.input-nombre{padding:.75rem 1rem;font-size:1rem;border:2px solid #007bff;border-radius:6px;font-weight:500;transition:border-color .2s}.input-nombre:focus{outline:none;border-color:#0056b3;box-shadow:0 0 0 3px #0056b31a}.form-actions{display:flex;gap:.75rem}.btn-save,.btn-cancel{flex:1;padding:.75rem 1rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.9rem}.btn-save{background-color:#28a745;color:#fff}.btn-save:hover:not(:disabled){background-color:#218838;transform:translateY(-2px);box-shadow:0 2px 8px #28a7454d}.btn-save:disabled{opacity:.6;cursor:not-allowed}.btn-cancel{background-color:#6c757d;color:#fff}.btn-cancel:hover:not(:disabled){background-color:#5a6268;transform:translateY(-2px);box-shadow:0 2px 8px #5a62684d}.business-rules-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.business-rule-card{padding:1.5rem;background-color:#f8f9fa;border-radius:8px;border:1px solid #dee2e6;transition:all .2s}.business-rule-card:hover{box-shadow:0 2px 12px #00000014}.rule-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.rule-info{flex:1}.rule-info h3{margin:0 0 .5rem;font-size:1rem;color:#2c3e50;font-weight:600}.rule-description{margin:0;color:#6c757d;font-size:.85rem;line-height:1.4}.toggle-switch{position:relative;display:inline-flex;width:50px;height:28px;background-color:#ccc;border-radius:14px;cursor:pointer;transition:background-color .3s;flex-shrink:0}.toggle-switch input{display:none}.toggle-switch input:checked+.slider:before{transform:translate(22px)}.toggle-switch input:disabled{cursor:not-allowed;opacity:.6}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.3s;border-radius:14px}.slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0003}.toggle-switch input:checked+.slider{background-color:#28a745}.info-card{padding:1.5rem;background-color:#f8f9fa;border-radius:8px;border-left:4px solid #17a2b8}.info-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #dee2e6}.info-row:last-child{border-bottom:none}.info-row .label{font-weight:600;color:#6c757d;font-size:.9rem}.info-row .value{color:#2c3e50;font-weight:500}.info-row .badge{display:inline-block;padding:.25rem .75rem;background-color:#007bff;color:#fff;border-radius:12px;font-size:.85rem;font-weight:600}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#6c757d}.access-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center;color:#6c757d}.access-denied h2{margin:0 0 1rem;color:#2c3e50}.access-denied p{margin:0;font-size:1rem}@media (max-width: 768px){.ajustes-page{padding:1rem}.ajustes-section{padding:1.5rem 1rem;margin-bottom:1.5rem}.nombre-view{flex-direction:column;align-items:flex-start}.btn-edit{width:100%}.business-rules-container{grid-template-columns:1fr}.rule-header{flex-direction:column}.toggle-switch{align-self:flex-start}.info-row{flex-direction:column;align-items:flex-start;gap:.5rem}}.session-detail-page{max-width:1000px;margin:0 auto;padding:2rem 1rem 6rem}.detail-page-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.btn-back-link{align-self:flex-start;background:none;border:none;color:#007bff;font-size:.9rem;font-weight:600;cursor:pointer;padding:0;text-decoration:none;transition:color .2s;display:flex;align-items:center;gap:.5rem}.btn-back-link:hover{color:#0056b3;text-decoration:underline}.detail-page-header h1{margin:0;font-size:1.8rem;color:#2c3e50}.session-summary-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.summary-top{margin-bottom:1.5rem;display:grid;grid-template-columns:auto 1fr;gap:2rem;align-items:flex-start}.summary-status{display:flex;align-items:flex-start}.summary-info{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.info-row{display:flex;flex-direction:column;gap:.25rem}.info-label{font-size:.8rem;font-weight:600;text-transform:uppercase;color:#6c757d;letter-spacing:.5px}.info-value{font-size:1rem;font-weight:500;color:#2c3e50}.summary-amounts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;padding:1.5rem;background-color:#f8f9fa;border-radius:8px;margin-bottom:1rem}.amount-card{text-align:center;padding:1rem;background:#fff;border-radius:8px;border-left:4px solid #dee2e6}.amount-card.positive{border-left-color:#28a745;background-color:#d4edda}.amount-card.negative{border-left-color:#dc3545;background-color:#f8d7da}.amount-label{font-size:.85rem;font-weight:600;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.amount-value{font-size:1.5rem;font-weight:700;color:#2c3e50;font-family:Courier New,monospace}.amount-card.positive .amount-value{color:#155724}.amount-card.negative .amount-value{color:#721c24}.summary-notes{padding-top:1rem;border-top:1px solid #dee2e6;margin-top:1rem}.notes-label{font-size:.85rem;font-weight:600;color:#6c757d;text-transform:uppercase;margin-bottom:.5rem}.notes-value{color:#2c3e50;line-height:1.6;white-space:pre-wrap;word-break:break-word;padding:.75rem;background-color:#f8f9fa;border-radius:6px}.sales-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.sales-section h2{margin-top:0;margin-bottom:1.5rem;font-size:1.3rem;color:#2c3e50}.sales-count{padding:.75rem 1rem;background-color:#f8f9fa;border-radius:6px;font-size:.9rem;color:#495057;margin-bottom:1rem}.empty-sales{text-align:center;padding:2rem;color:#6c757d;background-color:#f8f9fa;border-radius:8px}.sales-list{display:flex;flex-direction:column;gap:.75rem}.sale-item{border:1px solid #dee2e6;border-radius:8px;overflow:hidden;transition:all .2s}.sale-item:hover{box-shadow:0 2px 8px #0000001a}.sale-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:#f8f9fa;cursor:pointer;transition:background-color .2s}.sale-header:hover{background-color:#e9ecef}.sale-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.sale-date{font-size:.85rem;color:#6c757d;font-weight:500}.sale-customer{font-weight:600;color:#2c3e50;font-size:.95rem}.sale-summary{display:flex;align-items:center;gap:1.5rem}.sale-total{font-weight:700;font-size:1.1rem;color:#28a745;font-family:Courier New,monospace}.expand-indicator{color:#007bff;font-size:.8rem;font-weight:700;transition:transform .2s}.sale-detail{padding:1.5rem;background-color:#fff;border-top:1px solid #dee2e6;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.detail-section{margin-bottom:1.5rem}.detail-section:last-child{margin-bottom:0}.detail-section h4{margin:0 0 .75rem;font-size:.95rem;color:#495057;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.items-list{display:flex;flex-direction:column;gap:.5rem}.item-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:#f8f9fa;border-radius:6px;font-size:.9rem}.item-name{display:flex;align-items:center;gap:.5rem}.item-qty{font-size:.85rem;color:#6c757d;font-weight:400}.item-price{font-weight:600;color:#2c3e50;font-family:Courier New,monospace}.payments-list{display:flex;flex-direction:column;gap:.5rem}.payment-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:#f8f9fa;border-radius:6px;font-size:.9rem}.payment-method{font-weight:600;color:#495057}.payment-amount{font-weight:700;color:#28a745;font-family:Courier New,monospace}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;color:#6c757d}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #27ae60;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-container p{font-size:1.1rem;margin-bottom:1rem}.detail-footer{position:fixed;bottom:0;left:0;right:0;padding:1rem;background:#fff;border-top:1px solid #dee2e6;display:flex;justify-content:center;box-shadow:0 -2px 8px #0000001a}.btn-back-footer{padding:.75rem 1.5rem;background-color:#007bff;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.btn-back-footer:hover{background-color:#0056b3;transform:translateY(-2px);box-shadow:0 4px 12px #0056b34d}.btn-back{padding:.75rem 1.5rem;background-color:#007bff;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-back:hover{background-color:#0056b3}@media (max-width: 768px){.session-detail-page{padding:1rem 1rem 5rem}.summary-top{grid-template-columns:1fr;gap:1rem}.summary-info{grid-template-columns:1fr}.session-summary-card,.sales-section{padding:1.5rem 1rem}.summary-amounts{grid-template-columns:1fr}.detail-page-header h1{font-size:1.4rem}}html,body,#root{height:100%;width:100%}*{box-sizing:border-box}:root{--color-primary: #1a73e8;--color-primary-dark: #1557b0;--color-primary-light: #e8f0fe;--color-success: #34a853;--color-success-dark: #2d8e47;--color-warning: #fbbc04;--color-danger: #ea4335;--color-text: #202124;--color-text-secondary: #5f6368;--color-border: #dadce0;--color-bg: #f8f9fa;--color-white: #ffffff;--border-radius: 8px;--shadow-sm: 0 1px 2px 0 rgba(60, 64, 67, .3), 0 1px 3px 1px rgba(60, 64, 67, .15);--shadow-md: 0 1px 3px 0 rgba(60, 64, 67, .3), 0 4px 8px 3px rgba(60, 64, 67, .15);--transition: all .2s ease}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch}@media (max-width: 968px){button,a,input[type=button],input[type=submit],.clickable{min-height:44px;min-width:44px}input[type=text],input[type=number],input[type=email],input[type=tel],input[type=password],textarea,select{font-size:16px!important}}.app{min-height:100vh;display:flex;flex-direction:column}@media (max-width: 968px){body{overflow-x:hidden}}.app.loading-app{justify-content:center;align-items:center;background:var(--color-bg)}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:20px}.loading-spinner .spinner{width:48px;height:48px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s cubic-bezier(.4,0,.2,1) infinite}.loading-spinner p{color:var(--color-text-secondary);font-size:15px;font-weight:500;letter-spacing:.2px}@keyframes spin{to{transform:rotate(360deg)}}.loading-products{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:20px}.loading-products .spinner{width:36px;height:36px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s cubic-bezier(.4,0,.2,1) infinite}.loading-products p{color:var(--color-text-secondary);font-size:14px;font-weight:500}.main-content{flex:1;display:grid;grid-template-columns:1fr 400px;grid-template-rows:auto 1fr;margin:0 auto;max-width:1400px;width:100%;padding:12px 20px;gap:16px;overflow:hidden;height:100%}.mobile-cart-total,.mobile-back-to-products,.mobile-customer-section{display:none}.hidden{display:none!important}.left-column,.right-column{display:flex;flex-direction:column;gap:12px;height:100%}.left-column{min-height:0;overflow:hidden}.right-column{overflow:visible}.sale-info-section{flex-shrink:0}.products-section{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.product-search-wrapper{flex-shrink:0;margin-bottom:8px}.products-section>div:last-child{flex:1;overflow-y:auto;min-height:0}.cash-closed-warning{grid-column:1 / -1;grid-row:1;background:#fef7e0;border:1px solid var(--color-warning);border-radius:var(--border-radius);padding:12px 16px;text-align:center;box-shadow:var(--shadow-sm);max-height:60px;width:100%;margin:0 auto;align-self:start}.main-content>.left-column,.main-content>.right-column{grid-row:2}.cash-closed-warning p{margin:0;font-size:14px;font-weight:500;color:var(--color-text);display:flex;align-items:center;justify-content:center;gap:12px}.btn-open-cash{background-color:var(--color-success);color:#fff;border:none;padding:10px 20px;border-radius:var(--border-radius);font-weight:600;cursor:pointer;transition:var(--transition);font-size:14px;box-shadow:var(--shadow-sm)}.btn-open-cash:hover{background-color:var(--color-success-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-open-cash:active{transform:translateY(0)}.left-column{display:flex;flex-direction:column;background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow:hidden}.right-column{display:flex;flex-direction:column;background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);overflow:hidden;border:1px solid var(--color-border);height:100%}.sale-info-section{position:relative;background:var(--color-white);padding:20px;border-bottom:1px solid var(--color-border);flex-shrink:0}.products-section{flex:1;display:flex;flex-direction:column;overflow:hidden}.product-search-wrapper{position:relative;padding:10px 20px 20px;border-bottom:1px solid var(--color-border);background:var(--color-white);flex-shrink:0}.controls-section{background:var(--color-white);padding:20px;border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:12px}.customer-selector{display:flex;align-items:center;gap:12px}.customer-selector label{font-weight:500;color:var(--color-text);font-size:14px;min-width:60px}.customer-selector select{flex:1;padding:10px 12px;font-size:14px;border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-white);cursor:pointer;transition:var(--transition);min-height:44px;color:var(--color-text)}.customer-selector select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.search-box{width:100%}.search-input{width:100%;padding:12px 16px;font-size:15px;border:1px solid var(--color-border);border-radius:var(--border-radius);transition:var(--transition);min-height:48px;color:var(--color-text);background:var(--color-white)}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.search-input::placeholder{color:var(--color-text-secondary)}.products-section::-webkit-scrollbar{width:6px}.products-section::-webkit-scrollbar-track{background:transparent}.products-section::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.products-section::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}@media (max-width: 1200px){.main-content{max-width:100%;padding:0 1rem}}@media (max-width: 1024px){.main-content{grid-template-columns:65% 35%;gap:1rem}}@media (max-width: 968px){.main-content{display:flex;flex-direction:column;grid-template-columns:unset;grid-template-rows:unset;margin-top:70px;padding:0;gap:0;height:auto;min-height:calc(100vh - 70px);position:relative}.mobile-hidden,.desktop-only{display:none!important}.left-column{order:1;border-radius:0;max-height:none;min-height:calc(100vh - 140px);overflow-y:visible;padding:12px 12px 80px;gap:12px}.right-column{order:1;border-radius:0;min-height:calc(100vh - 70px);max-height:none;position:relative;top:auto;z-index:1;background:var(--color-white);box-shadow:none;padding:0;gap:6px}.mobile-cart-total{display:flex!important;position:fixed;bottom:0;left:0;right:0;background:var(--color-success);color:#fff;padding:16px 20px;justify-content:space-between;align-items:center;font-size:18px;font-weight:600;box-shadow:0 -2px 10px #0003;cursor:pointer;z-index:10001;transition:all .3s ease}.mobile-cart-total:active{background:var(--color-success-dark)}.mobile-cart-total-display{background:var(--color-white)!important;color:var(--color-text)!important;border-top:3px solid var(--color-success);box-shadow:0 -2px 8px #0000001a}.mobile-cart-total-display:active{background:var(--color-white)!important}.mobile-cart-total-amount{font-size:22px;font-weight:700;letter-spacing:-.5px}.mobile-back-to-products{display:flex!important;align-items:center;gap:6px;background:var(--color-white);border:none;border-bottom:1px solid var(--color-border);color:var(--color-primary);padding:10px 12px;font-size:14px;font-weight:600;cursor:pointer;width:100%;text-align:left;position:fixed;top:70px;left:0;right:0;z-index:200}.mobile-back-to-products:active{background:var(--color-bg)}.mobile-customer-section{display:block!important;padding:8px 12px;background:var(--color-white);border-bottom:1px solid var(--color-border);position:relative;z-index:150;margin-top:48px}.sale-info-section{padding:12px;background:var(--color-white);position:relative;z-index:150}.product-search-wrapper{padding:0 12px 12px;position:relative;z-index:150}.controls-section{padding:12px;gap:12px}.customer-selector{flex-direction:column;align-items:stretch;gap:8px}.customer-selector label{min-width:auto;font-size:14px}.customer-selector select{font-size:16px;padding:12px}.search-input{padding:12px;font-size:16px;min-height:48px}}@media (max-width: 480px){.main-content{padding:0;gap:0}.left-column,.controls-section{padding:10px}.search-input{padding:12px;font-size:16px;min-height:48px}.customer-selector label{min-width:unset}}.page-container{padding:24px;max-width:1400px;margin:0 auto}.page-container h1{color:var(--color-text);margin-bottom:12px;font-size:28px;font-weight:600;letter-spacing:-.5px}.page-container p{color:var(--color-text-secondary);font-size:15px;line-height:1.6}.products-screen,.fiado-screen,.cash-screen{padding:24px;max-width:1400px;margin:0 auto;min-height:calc(100vh - 80px);width:100%}.products-header,.fiado-header,.cash-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.products-header h2,.fiado-header h2,.cash-header h2{font-size:28px;color:var(--color-text);margin:0;font-weight:600;letter-spacing:-.5px}@media (max-width: 768px){.page-container,.products-screen,.fiado-screen,.cash-screen{padding:16px}.page-container h1,.products-header h2,.fiado-header h2,.cash-header h2{font-size:24px}}.barcode-feedback{position:fixed;top:80px;left:50%;transform:translate(-50%);background:var(--color-text);color:#fff;padding:12px 24px;border-radius:var(--border-radius);box-shadow:var(--shadow-md);z-index:1000;font-size:14px;font-weight:500;animation:slideDown .3s cubic-bezier(.4,0,.2,1);max-width:90%;text-align:center}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (max-width: 768px){.barcode-feedback{top:70px;padding:10px 20px;font-size:13px}}.mobile-only-title{display:none}@media (max-width: 968px){.mobile-only-title{display:block;font-size:20px;font-weight:600;margin:0 0 16px;color:var(--color-text)}}
