:root{--primary-color:#1565a8;--primary-dark:#0f4c87;--secondary-color:#16a6df;--accent-color:#8fc7e9;--text-color:#333;--background-color:#f5f5f5;--white:#fff;--border-color:#e0e0e0;--hover-color:#f0f8ff}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;background-color:var(--background-color);color:#333;color:var(--text-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.btn{border:none;border-radius:5px;cursor:pointer;display:inline-block;font-size:14px;font-weight:500;padding:8px 16px;text-align:center;text-decoration:none;transition:all .3s ease}.btn-primary{background-color:#1565a8;background-color:var(--primary-color);color:#fff;color:var(--white)}.btn-primary:hover{background-color:#0f4c87}.btn-secondary{background-color:#16a6df;background-color:var(--secondary-color);color:#fff;color:var(--white)}.btn-secondary:hover{background-color:#1287b8}.btn-outline{background-color:initial;border:1px solid #1565a8;border:1px solid var(--primary-color);color:#1565a8;color:var(--primary-color)}.btn-outline:hover{background-color:#1565a8;background-color:var(--primary-color);color:#fff;color:var(--white)}.form-label{display:block;font-weight:500;margin-bottom:5px}.form-input{background-color:#fff;background-color:var(--white);border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:.25em;font-size:.875em;padding:.5em;width:100%}.form-input:focus{border-color:#1565a8;border-color:var(--primary-color);box-shadow:0 0 0 2px #1565a833;outline:none}.form-select{background-color:#fff;background-color:var(--white);border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:.25em;font-size:.875em;padding:.5em;width:100%}.form-actions{display:flex;gap:.5em;justify-content:center}.form-input[type=date]{background-color:#fff;background-color:var(--white);border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:.25em;color:#333;color:var(--text-color);cursor:pointer;font-size:1.075em;padding:.5em;width:100%}.form-input[type=date]:focus{border-color:#1565a8;border-color:var(--primary-color);box-shadow:0 0 0 2px #1565a833;outline:none}.table{background-color:#fff;background-color:var(--white);border-collapse:collapse;box-shadow:0 2px 4px #0000001a;overflow-y:auto;width:100%}.table td,.table th{border-bottom:1px solid #f0f0f0;padding:.5em;text-align:left}.table td:first-of-type,.table th:first-of-type{padding-left:1em}.table td:last-of-type,.table th:last-of-type{padding-right:1em}.table th{background-color:#1565a8;background-color:var(--primary-color);color:#fff;color:var(--white);cursor:pointer;font-weight:600;-webkit-user-select:none;user-select:none}.table th:hover{background-color:#0f4c87}.table tr:hover{background-color:#f0f8ff;background-color:var(--hover-color)}.card{background-color:#fff;background-color:var(--white);border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.pagination{gap:10px}.pagination-info{color:#666;font-size:.875em}.filters{align-items:center;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px}.filters>div{display:flex;flex-direction:column;gap:5px}.filters label{color:#666;font-size:12px;font-weight:500}.filters input,.filters select{border:1px solid #e0e0e0;border:1px solid var(--border-color);border-radius:4px;font-size:14px;padding:8px}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1em}.page-title{color:#1565a8;color:var(--primary-color);font-size:24px;font-weight:600}.actions{display:flex;gap:10px}.loading{color:#666;font-size:16px;padding:40px;text-align:center}.error{background-color:#fee;color:#c33}.error,.success{border-radius:4px;margin-bottom:20px;padding:10px}.success{background-color:#efe;color:#363}.data-table{background-color:#fff;background-color:var(--white);border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}@media screen and (max-width:767px){.data-table{border-radius:0;margin:0 -1em}}.table-header{align-items:end;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:1em;justify-content:space-between;padding:1em}.table-controls{align-items:center;flex-wrap:wrap}.table-actions,.table-controls{display:flex;gap:.5em}.table-container{font-size:14px;overflow-x:auto}.th-content{align-items:center;display:flex;gap:8px;justify-content:space-between}.sortable{cursor:pointer}.sort-icon{font-size:12px;opacity:.7}.clickable{cursor:pointer}.empty-state{color:#666;padding:40px;text-align:center}.pagination{justify-content:space-between;padding:10px 20px}.pagination,.pagination-controls{align-items:center;display:flex;flex-wrap:wrap;gap:20px}.items-per-page{align-items:center;display:flex;font-size:14px;gap:8px}.items-per-page select{font-size:inherit;margin-right:.5em;padding:.4em;width:auto}.page-navigation{align-items:center;display:flex;gap:10px}.page-navigation button{border:1px solid #ccc;border-radius:100%;height:2.5em;line-height:2.5;padding:0;width:2.5em}.page-navigation button:hover{border:1px solid #1565a8;border:1px solid var(--primary-color)}.page-input-form{align-items:center;display:flex;font-size:14px;gap:8px}.page-input{padding:6px;text-align:center;width:60px}.file-upload{align-items:center;display:flex;gap:10px}.file-upload input[type=file]{display:none}.file-upload-label{background-color:#8fc7e9;background-color:var(--accent-color);border-radius:4px;color:#1565a8;color:var(--primary-color);cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .3s ease}.file-upload-label:hover{background-color:#7bb3e0}.file-name{color:#666;font-size:14px}.role-badge,.status-badge,.type-badge{border-radius:1em;font-size:.75em;font-weight:700;padding:.3em .6em;text-transform:uppercase;white-space:nowrap}.actions-cell{align-items:center}.expiry-tag{border-radius:4px;display:inline-block;font-size:11px}.expiry-tag.expired{background-color:#dc3545;color:#fff}.expiry-tag.expire-soon{background-color:#ffc107;color:#212529}.expiry-date-cell{align-items:center;gap:8px}.status-badge.active,.status-badge.in-stock{background-color:#e8f5e8;color:#2e7d32}.status-badge.inactive,.status-badge.out-of-stock{background-color:#ffebee;color:#c62828}.status-badge.low-stock{background-color:#fff3e0;color:#f57c00}.role-badge.admin{background-color:#e3f2fd;color:#1565c0}.role-badge.manager{background-color:#f3e5f5;color:#7b1fa2}.role-badge.staff{background-color:#e8f5e8;color:#388e3c}.type-badge.main{background-color:#e3f2fd;color:#1565c0}.type-badge.branch{background-color:#f3e5f5;color:#7b1fa2}.type-badge.emergency{background-color:#ffebee;color:#c62828}.text-muted{color:#999}.settings-section{margin-top:20px}.setting-item{align-items:center;display:flex;gap:15px;margin-bottom:15px}.setting-item label{font-weight:500;min-width:120px}.setting-item span{color:#666}.setting-item input[type=checkbox]{margin-right:8px}.bulk-actions{align-items:center;background-color:#8fc7e9;background-color:var(--accent-color);border-radius:4px;display:flex;gap:10px;margin-right:10px;padding:8px 12px}.bulk-actions .selected-count{color:#1565a8;color:var(--primary-color);font-size:12px;font-weight:500;margin-right:5px}.btn-danger{background-color:#dc3545;border:none;color:#fff;color:var(--white)}.btn-danger:hover{background-color:#c82333}.btn-warning{background-color:#fd7e14;border:none;color:#fff;color:var(--white)}.btn-warning:hover{background-color:#e96b00}input[type=checkbox]{cursor:pointer;height:16px;width:16px}.table th input[type=checkbox]{margin:0}.text-link{color:#1565a8;color:var(--primary-color);text-decoration:none;transition:color .2s ease}.text-link:hover{color:#16a6df;color:var(--secondary-color);text-decoration:underline}.radio-group{display:flex;gap:20px;margin-top:5px}.radio-label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:8px}.radio-label input[type=radio]{cursor:pointer;margin:0}.permissions-list{display:flex;flex-wrap:wrap;gap:5px}.permission-badge{background-color:#8fc7e9;background-color:var(--accent-color);border-radius:12px;color:#1565a8;color:var(--primary-color);font-size:11px;font-weight:500;padding:2px 6px}.permissions-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:10px}.permission-checkbox{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:8px}.permission-checkbox input[type=checkbox]{cursor:pointer;margin:0}.form-input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.7}.form-input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}.date-filter-label{color:#666;font-size:12px;font-weight:500;margin-bottom:4px}.login-container{align-items:center;background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:var(--white);border-radius:12px;box-shadow:0 10px 30px #0003;max-width:400px;padding:40px;width:100%}.login-header{margin-bottom:30px;text-align:center}.login-header h1{color:var(--primary-color);font-size:28px;font-weight:700;margin-bottom:5px}.login-header p{color:var(--secondary-color);font-size:16px;font-weight:500}.login-form{margin-bottom:30px}.login-btn{font-size:16px;font-weight:600;margin-top:10px;padding:12px;width:100%}.login-btn:disabled{cursor:not-allowed;opacity:.6}.login-footer{border-top:1px solid var(--border-color);padding-top:20px;text-align:center}.login-footer p{color:#666;font-size:12px;margin:2px 0}.login-footer p:first-child{font-weight:600;margin-bottom:8px}.demo-credentials{display:flex;flex-direction:column;gap:8px}.demo-cred{background-color:#f8f9fa;border-left:3px solid var(--primary-color);border-radius:4px;padding:8px}.demo-cred p{font-size:11px;margin:2px 0}.demo-cred p:first-child{color:var(--primary-color);font-weight:600}.layout{display:flex;min-height:100vh}.sidebar{background:var(--primary-color);color:var(--white);display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:250px;z-index:1000}.sidebar-header{border-bottom:1px solid #ffffff1a;padding:20px}.sidebar-header h2{font-size:18px;font-weight:700;margin-bottom:4px}.sidebar-header p{font-size:12px;opacity:.8}.nav-menu{flex:1 1;list-style:none;padding:20px 0}.nav-link{align-items:center;border-left:3px solid #0000;color:var(--white);cursor:pointer;display:flex;padding:12px 20px;text-decoration:none;transition:all .3s ease}.nav-link:hover{background-color:#ffffff1a}.nav-link.active,.nav-link:hover{border-left-color:var(--accent-color)}.nav-link.active{background-color:#ffffff26}.submenu-arrow{font-size:10px;margin-left:auto;transition:transform .3s ease}.submenu-arrow.expanded{transform:rotate(180deg)}.submenu{background-color:#0000001a;list-style:none;margin:0;padding:0}.submenu-link{border-left:3px solid #0000;font-size:13px;padding:10px 20px 10px 45px}.submenu-link:hover{background-color:#ffffff14;border-left-color:var(--accent-color)}.submenu-link.active{background-color:#ffffff1f;border-left-color:var(--accent-color)}.nav-icon{font-size:16px;margin-right:12px}.nav-label{font-size:14px;font-weight:500}.sidebar-footer{border-top:1px solid #ffffff1a;padding:20px}.mobile-logout{display:none;margin-top:15px}.mobile-logout-btn{align-items:center;background:none;border:none;border-radius:4px;color:var(--white);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px 0;transition:all .3s ease;width:100%}.mobile-logout-btn:hover{background-color:#ffffff1a}.logout-icon{font-size:16px}.logout-label{font-size:14px;font-weight:500}.user-info{gap:12px}.user-avatar,.user-info{align-items:center;display:flex}.user-avatar{background-color:var(--accent-color);border-radius:50%;color:var(--primary-color);font-weight:600;height:40px;justify-content:center;width:40px}.user-details{flex:1 1}.user-name{font-size:14px;font-weight:600;margin-bottom:2px}.user-role{font-size:12px;opacity:.8;text-transform:capitalize}.main-content{background-color:var(--background-color);flex:1 1;margin-left:250px;max-width:100%;min-height:100vh;padding:20px}.mobile-menu-toggle{-webkit-tap-highlight-color:transparent;background:var(--primary-color);border:none;border-radius:50%;bottom:1.5em;box-shadow:0 4px 20px #0000004d;cursor:pointer;display:none;height:50px;left:50%;position:fixed;transform:translateX(-50%);transition:all .3s ease;width:50px;z-index:1001}.mobile-menu-toggle:hover{background:var(--primary-dark);transform:translateX(-50%) scale(1.1)}.mobile-menu-toggle:active{transform:translateX(-50%) scale(.95)}.mobile-menu-toggle:focus{box-shadow:0 4px 20px #0000004d,0 0 0 3px #1565a84d;outline:none}.hamburger{align-items:center;display:flex;flex-direction:column;height:18px;justify-content:center;position:relative;width:24px}.hamburger span{background:var(--white);border-radius:1px;display:block;height:2px;transform-origin:center;transition:all .3s ease;width:20px}.hamburger span:nth-child(2){margin:4px 0}.hamburger.active span:first-child{transform:rotate(45deg) translate(5px,4px);width:20px}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px);width:21px}.mobile-menu-overlay{animation:fadeIn .3s ease forwards;background:#00000080;display:none;height:100%;left:0;opacity:0;position:fixed;top:0;width:100%;z-index:999}@keyframes fadeIn{to{opacity:1}}@media (max-width:767px){.sidebar{bottom:0;box-shadow:2px 0 10px #0000001a;height:auto;padding-bottom:3em;top:auto;transform:translateY(150%);transition:transform .3s ease;width:100%}.sidebar.mobile-open{transform:translateY(0)}.main-content{margin-left:0;padding:1em 1em 6em}.mobile-menu-toggle{align-items:center;display:flex;justify-content:center}.mobile-menu-overlay,.sidebar.mobile-open .nav-label,.sidebar.mobile-open .sidebar-header h2,.sidebar.mobile-open .sidebar-header p,.sidebar.mobile-open .user-details{display:block}.sidebar.mobile-open .nav-link{justify-content:flex-start;padding:12px 20px}.sidebar.mobile-open .nav-icon{margin-right:12px}.sidebar.mobile-open .user-info{justify-content:flex-start}.mobile-logout{display:block}.sidebar.mobile-open .nav-link{align-items:center;display:flex;min-height:48px}.sidebar.mobile-open .submenu-link{align-items:center;display:flex;min-height:44px;padding-left:45px}}.modal-backdrop{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1001}.modal-content{background:var(--white);border-radius:8px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:10px 20px}.modal-header h2{color:var(--primary-color);font-size:20px;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:all .3s ease;width:30px}.modal-close:hover{background-color:var(--hover-color);color:var(--primary-color)}.modal-body{padding:20px}.modal-form{display:flex;flex-direction:column;gap:1em}.modal-form label{font-size:14px}.modal-form .form-group{display:flex;flex-direction:column;gap:6px}@media (max-width:768px){.modal-content{margin:10px;width:95%}.modal-body,.modal-header{padding:15px}}.csv-import-modal{max-width:600px;width:100%}.csv-format-section{background-color:#f8f9fa;border-left:4px solid #1565a8;border-radius:8px;margin-bottom:30px;padding:20px}.csv-format-section h3{color:#1565a8;font-size:18px;margin:0 0 15px}.csv-format-section h4{color:#333;font-size:16px;margin:20px 0 10px}.format-info p{color:#666;margin:0 0 10px}.required-fields{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.required-field{background-color:#1565a8;border-radius:4px;color:#fff;font-size:12px;font-weight:500;padding:4px 8px}.sample-format{margin-top:20px}.csv-preview{border:1px solid #ddd;border-radius:4px;margin-bottom:10px;max-height:200px;overflow:auto}.csv-table{border-collapse:collapse;font-size:12px;width:100%}.csv-table td,.csv-table th{border-bottom:1px solid #eee;padding:8px 12px;text-align:left}.csv-table th{background-color:#f5f5f5;color:#333;font-weight:600;position:sticky;top:0}.csv-table td{color:#666}.download-sample{font-size:12px;padding:6px 12px}.file-upload-section{margin-bottom:30px}.file-upload-section h3{color:#333;font-size:18px;margin:0 0 15px}.file-drop-zone{background-color:#fafafa;border:2px dashed #ccc;border-radius:8px;cursor:pointer;padding:40px 20px;text-align:center;transition:all .3s ease}.file-drop-zone:hover{background-color:#f0f8ff;border-color:#1565a8}.file-drop-zone.drag-over{background-color:#e3f2fd;border-color:#1565a8;transform:scale(1.02)}.drop-zone-content{pointer-events:none}.upload-icon{font-size:48px;margin-bottom:15px;opacity:.6}.drop-text{color:#666;font-size:16px;margin:0 0 8px}.browse-link{background:none;border:none;color:#1565a8;cursor:pointer;font-size:inherit;padding:0;pointer-events:auto;text-decoration:underline}.browse-link:hover{color:#16a6df}.file-info{color:#999;font-size:12px;margin:0}.selected-file{align-items:center;background-color:#e8f5e8;border:1px solid #4caf50;border-radius:4px;display:flex;justify-content:space-between;margin-top:15px;padding:10px 15px}.file-name{color:#2e7d32;font-weight:500}.remove-file{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:18px;height:20px;justify-content:center;padding:0;width:20px}.remove-file:hover{color:#d32f2f}.modal-actions{border-top:1px solid #eee;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:20px}.btn:disabled:hover{background-color:inherit;color:inherit}.import-progress{background-color:#f0f8ff;border:1px solid #1565a8;border-radius:8px;margin:20px 0;padding:20px;text-align:center}.progress-content{align-items:center;display:flex;gap:15px;justify-content:center;margin-bottom:15px}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #e3f2fd;border-radius:50%;border-top-color:#1565a8;height:24px;width:24px}.progress-text{color:#1565a8;font-size:16px;font-weight:500}.progress-bar{background-color:#e3f2fd;border-radius:3px;height:6px;overflow:hidden;width:100%}.progress-fill{animation:progress 2s ease-in-out infinite;background:linear-gradient(90deg,#1565a8,#16a6df);border-radius:3px;height:100%}.button-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;margin-right:8px;width:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes progress{0%{transform:translateX(-100%)}50%{transform:translateX(0)}to{transform:translateX(100%)}}.csv-import-modal.importing{pointer-events:none}.csv-import-modal.importing .import-progress,.csv-import-modal.importing .modal-actions{pointer-events:auto}.stock-log-modal{margin:-20px;max-height:500px;overflow-y:auto}.loading-message,.no-logs-message{color:#666;padding:20px;text-align:center}.stock-logs-list{display:flex;flex-direction:column;gap:0}.stock-log-item{background-color:#f9f9f9;padding:15px}.stock-log-item:nth-child(n+2){border-top:1px solid #e0e0e0}.log-header{align-items:center;display:flex;font-weight:700;justify-content:space-between;margin-bottom:10px}.change-type{border-radius:4px;font-size:12px;font-weight:700;padding:4px 8px;text-transform:uppercase}.change-add{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.change-reduce{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.change-set{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.log-timestamp{color:#666;font-size:12px;font-weight:400}.log-details{display:flex;flex-direction:column;gap:5px}.quantity-change{font-size:16px;font-weight:700}.quantity-value{color:#333}.log-user{color:#555;font-size:13px}.log-expiry,.log-lot,.log-reason{color:#666;font-size:13px}.btn-group{display:flex;gap:8px;margin-top:8px}.btn-group .btn{flex:1 1;font-size:14px;padding:8px}.input-help{color:#666;font-size:12px;margin-top:4px}.form-group textarea{min-height:80px;resize:vertical}.form-actions .btn{min-width:120px}.btn:disabled{cursor:not-allowed;opacity:.6}.barcode-action-modal{padding:20px;text-align:center}.barcode-info{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:20px;padding:15px}.barcode-info h3{color:#495057;font-size:18px;margin:0 0 10px}.barcode-info p{color:#6c757d;margin:5px 0}.action-message{color:#495057;font-size:16px;margin-bottom:20px}.action-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:15px}.action-buttons button{border-radius:6px;cursor:pointer;font-size:14px;min-width:140px;padding:10px 15px;transition:all .2s ease}.action-buttons button:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.modal-footer{border-top:1px solid #dee2e6;padding-top:15px}@media (max-width:768px){.action-buttons{align-items:center;flex-direction:column}.action-buttons button{max-width:200px;width:100%}}.inventory-selection-modal{margin:0 auto;max-width:600px;padding:20px}.product-info{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:20px;padding:15px;text-align:center}.product-info h3{color:#495057;font-size:18px;margin:0 0 10px}.product-info p{color:#6c757d;margin:5px 0}.items-list{margin-bottom:20px;max-height:400px;overflow-y:auto}.item-card{background-color:#fff;border:2px solid #dee2e6;border-radius:8px;cursor:pointer;margin-bottom:10px;padding:15px;transition:all .2s ease}.item-card:hover{border-color:#007bff;box-shadow:0 2px 4px #0000001a}.item-card.selected{background-color:#f8f9ff;border-color:#007bff;box-shadow:0 2px 8px #007bff33}.item-header{align-items:center;display:flex;gap:10px;margin-bottom:10px}.item-title{color:#495057;flex-grow:1;font-weight:600}.status-badge{border-radius:12px;color:#fff;font-size:12px;font-weight:500;padding:4px 8px}.item-details{margin-left:25px}.detail-row{display:flex;font-size:14px;justify-content:space-between;margin-bottom:5px}.label{color:#6c757d;font-weight:500}.value{color:#495057;font-weight:600}.modal-actions{border-top:1px solid #dee2e6;display:flex;justify-content:center;padding-top:15px}.modal-actions button{border-radius:6px;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .2s ease}.modal-actions button:disabled{cursor:not-allowed;opacity:.6}.modal-actions button:not(:disabled):hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}@media (max-width:768px){.inventory-selection-modal{padding:15px}.detail-row{flex-direction:column;gap:2px}.item-header{flex-wrap:wrap}}.multi-select-dropdown{display:inline-block;min-width:200px;position:relative}.multi-select-trigger{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;min-height:38px;padding:8px 12px}.multi-select-trigger:hover{border-color:#bbb}.multi-select-trigger:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.multi-select-text{color:#333;flex:1 1;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.multi-select-arrow{color:#666;font-size:12px;margin-left:8px;transition:transform .2s ease}.multi-select-arrow.open{transform:rotate(180deg)}.multi-select-options{background-color:#fff;border:1px solid #ddd;border-radius:0 0 4px 4px;border-top:none;box-shadow:0 2px 8px #0000001a;left:0;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.multi-select-actions{border-bottom:1px solid #eee;display:flex;gap:8px;padding:8px}.multi-select-action-btn{background-color:#f8f9fa;border:1px solid #ddd;border-radius:3px;color:#666;cursor:pointer;flex:1 1;font-size:12px;padding:4px 8px;transition:all .2s ease}.multi-select-action-btn:hover{background-color:#e9ecef;border-color:#bbb}.multi-select-action-btn:active{background-color:#dee2e6}.multi-select-list{max-height:200px;overflow-y:auto}.multi-select-option{align-items:center;border-bottom:1px solid #f5f5f5;cursor:pointer;display:flex;font-size:14px;padding:8px 12px;transition:background-color .2s ease}.multi-select-option:hover{background-color:#f8f9fa}.multi-select-option:last-child{border-bottom:none}.multi-select-option input[type=checkbox]{cursor:pointer;margin-right:8px}.multi-select-option-text{color:#333;flex:1 1}.form-select.multi-select-dropdown .multi-select-trigger{border:1px solid #ced4da;border-radius:.375rem;font-size:1rem;line-height:1.5}.form-select.multi-select-dropdown .multi-select-trigger:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem #0d6efd40}@media (max-width:768px){.multi-select-dropdown{min-width:150px}.multi-select-option,.multi-select-trigger{font-size:13px;padding:6px 10px}.multi-select-action-btn{font-size:11px;padding:3px 6px}}.expiry-date-cell{display:flex;flex-direction:column;gap:4px}.expiry-tag{border-radius:3px;font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 6px;text-align:center;text-transform:uppercase}.expiry-tag.expired{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.expiry-tag.expire-soon{background-color:#fdb;border:1px solid #fb8;color:#856404}.status-badge.in-stock{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-badge.low-stock{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.status-badge.out-of-stock{background-color:#eee;border:1px solid #eee;color:#666}.actions-cell{display:flex;flex-wrap:wrap;gap:5px}.date-filter-label{color:#555;display:block;font-size:.875em;margin-bottom:0}.selected-count{color:#666;font-size:14px;font-weight:500;margin-right:10px}.dashboard-stats{grid-gap:.5em;display:grid;gap:.5em;grid-template-columns:repeat(4,1fr);margin:1em 0}.stat-card{background:#fff;border:2px solid #0000;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;padding:10px;text-align:center;transition:all .3s ease}.stat-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.stat-number{font-size:1.5em;font-weight:700;line-height:1;margin-bottom:.25em}.stat-label{font-size:.75em;font-weight:500;text-transform:uppercase}.stat-card.expired{border-color:#dc3545}.stat-card.expired .stat-number{color:#dc3545}.stat-card.expired .stat-label{color:#721c24}.stat-card.expired:hover{background-color:#f8d7da}.stat-card.low-stock{border-color:#ffc107}.stat-card.low-stock .stat-number{color:#ffc107}.stat-card.low-stock .stat-label{color:#856404}.stat-card.low-stock:hover{background-color:#fff3cd}.stat-card.expire-soon{border-color:#fd7e14}.stat-card.expire-soon .stat-number{color:#fd7e14}.stat-card.expire-soon .stat-label{color:#8a4a00}.stat-card.expire-soon:hover{background-color:#ffeaa7}.stat-card.out-of-stock{border-color:#6c757d}.stat-card.out-of-stock .stat-number{color:#6c757d}.stat-card.out-of-stock .stat-label{color:#495057}.stat-card.out-of-stock:hover{background-color:#f8f9fa}.stat-card.active{border-width:3px;box-shadow:0 6px 12px #0003;transform:translateY(-2px)}.stat-card.expired.active{background-color:#f8d7da}.stat-card.low-stock.active{background-color:#fff3cd}.stat-card.expire-soon.active{background-color:#fc8}.stat-card.out-of-stock.active{background-color:#ccc}.stat-card.clear-filters{background-color:#f8f9fa;border-color:#6c757d}.stat-card.clear-filters .stat-number{color:#6c757d;font-size:2rem}.stat-card.clear-filters .stat-label{color:#495057}.stat-card.clear-filters:hover{background-color:#e9ecef;transform:translateY(-2px)}@media (max-width:768px){.stat-card{padding:10px}.stat-number{font-size:2rem}}.barcode-input-container{align-items:center;display:flex;position:relative}.barcode-input{flex:1 1;padding-right:45px}.barcode-camera-btn{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:18px;padding:4px 8px;position:absolute;right:0;top:50%;transform:translateY(-50%);transition:background-color .2s ease}.barcode-camera-btn:hover{background-color:#f0f0f0;color:#333}.barcode-camera-btn:active{background-color:#e0e0e0}.barcode-camera-btn:focus{outline:2px solid #007bff;outline-offset:2px}@media (max-width:768px){.barcode-camera-btn{font-size:16px;padding:6px 10px;right:6px}.barcode-input{padding-right:50px}}.barcode-scanner-container,.camera-container,.camera-video{align-items:center;background:#fff;display:flex;flex-direction:column;gap:1em;margin:0;position:relative;width:100%}.barcode-scanner-btn{background-color:#6c757d;border-color:#6c757d;color:#fff}.barcode-scanner-btn:hover{background-color:#5a6268;border-color:#545b62}.scanner-overlay{align-items:center;background:#0000004d;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1}.scanner-frame{border:2px solid #ffffff80;border-radius:8px;height:150px;position:relative;width:250px}.scanner-corners{bottom:0;left:0;position:absolute;right:0;top:0}.scanner-status{align-items:center;bottom:1em;color:#fff;display:flex;flex-direction:column;gap:.5em;left:50%;position:absolute;text-align:center;transform:translateX(-50%);width:100%;z-index:1}.scanner-status p{font-size:14px;margin:0 0 .25em}.scanning-indicator{background:#ffffff4d;border-radius:1px;height:2px;overflow:hidden;position:relative;width:200px}.scanning-line{animation:scan 2s linear infinite;background:linear-gradient(90deg,#0000,#0f0,#0000);height:100%;left:-50px;position:absolute;top:0;width:50px}@keyframes scan{0%{left:-50px}to{left:200px}}.error-message{color:#dc3545;padding:40px 20px;text-align:center}.error-message p{font-size:16px;margin-bottom:20px}@media (max-width:767px){.camera-container{max-width:100%}.scanner-frame{height:120px;width:200px}.scanning-indicator{width:150px}.scanning-line{left:-40px;width:40px}@keyframes scan{0%{left:-40px}to{left:150px}}}
/*# sourceMappingURL=main.c596afc2.css.map*/