:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%;min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem 2rem;box-shadow:0 2px 4px #0000001a}.app-header h1{font-size:1.8rem;margin-bottom:1rem}.main-nav{display:flex;gap:.5rem;flex-wrap:wrap}.nav-btn{padding:.5rem 1rem;background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.nav-btn:hover{background:#ffffff4d}.nav-btn.active{background:#fff;color:#667eea;font-weight:600}.app-main{flex:1;padding:2rem;max-width:1400px;margin:0 auto;width:100%}.card{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem}.card h2{color:#333;margin-bottom:1rem;font-size:1.5rem}.subtitle{color:#666;margin-bottom:1.5rem;font-size:.95rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-actions{display:flex;gap:1rem;margin-top:1.5rem}.btn-primary{background:#667eea;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#6c757d;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:#5a6268}.btn-link{background:none;border:none;color:#667eea;cursor:pointer;text-decoration:underline;font-size:.9rem;padding:.25rem .5rem}.btn-link:hover:not(:disabled){color:#5568d3}.btn-link:disabled{opacity:.5;cursor:not-allowed;text-decoration:none}.btn-receive{color:#28a745}.btn-ship{color:#dc3545}.btn-edit{color:#667eea}.btn-delete{color:#dc3545}.separator{margin:0 .5rem;color:#ccc}.product-image-container{text-align:center;margin-bottom:1rem}.product-image{max-width:200px;max-height:200px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.item-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #eee}.item-header-text h2{margin-bottom:.5rem}.item-name{color:#666;font-size:1.1rem;margin-bottom:.5rem}.location-info,.current-stock{margin-bottom:.5rem;color:#666}.inventory-table-container,.journal-table-container,.full-inventory-table-container,.locations-table-container{overflow-x:auto;margin-top:1rem}.inventory-table,.journal-table,.full-inventory-table,.locations-table{width:100%;border-collapse:collapse;margin-top:1rem}.inventory-table th,.journal-table th,.full-inventory-table th,.locations-table th{background:#f8f9fa;padding:.75rem;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #dee2e6}.inventory-table td,.journal-table td,.full-inventory-table td,.locations-table td{padding:.75rem;border-bottom:1px solid #eee}.inventory-table tr:hover,.journal-table tr:hover,.full-inventory-table tr:hover,.locations-table tr:hover{background:#f8f9fa}.quantity-cell{text-align:right;font-weight:500}.quantity-cell.zero-quantity{color:#999}.quantity-cell.negative-quantity{color:#dc3545;font-weight:600}.quantity-cell.total-cell{font-weight:700;background:#f0f0f0}.actions-cell{white-space:nowrap}.date-cell{white-space:nowrap;color:#666;font-size:.9rem}.item-id-cell{font-weight:600;font-family:Courier New,monospace}.item-id-link{background:none;border:none;color:#667eea;cursor:pointer;font-weight:600;font-family:Courier New,monospace;font-size:inherit;padding:0;text-decoration:underline;transition:color .2s}.item-id-link:hover{color:#5568d3}.item-name-cell{display:flex;align-items:center;gap:.75rem}.item-thumbnail{width:40px;height:40px;object-fit:contain;border-radius:4px}.location-name-cell{font-weight:500}.no-inventory{text-align:center;padding:3rem;color:#999}.loading{text-align:center;padding:3rem;color:#666}.alert{padding:1rem;border-radius:6px;margin-bottom:1rem}.alert-error{background:#fee;color:#c33;border:1px solid #fcc}.alert-success{background:#efe;color:#3c3;border:1px solid #cfc}.card-actions{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #eee}.journal-filters{margin-bottom:1.5rem;padding:1rem;background:#f8f9fa;border-radius:6px}.filter-group{display:flex;gap:1.5rem;margin-bottom:1rem;flex-wrap:wrap}.filter-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.inventory-controls{margin-bottom:1.5rem;padding:1rem;background:#f8f9fa;border-radius:6px}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.transaction-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.85rem;font-weight:600;text-transform:uppercase}.transaction-badge.receive{background-color:#d4edda;color:#155724}.transaction-badge.ship{background-color:#f8d7da;color:#721c24}.transaction-badge.transfer{background-color:#d1ecf1;color:#0c5460}.location-form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #eee}.location-form-section h3,.locations-list-section h3{margin-bottom:1rem;color:#333}.inventory-summary{margin-top:1rem;padding:.75rem;background:#f8f9fa;border-radius:6px;text-align:center;color:#666}.image-select-btn{margin-top:.5rem;display:block;width:100%;text-align:center}.image-carousel-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.image-carousel-modal{background:#fff;border-radius:12px;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0000004d}.image-carousel-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #eee}.image-carousel-header h3{margin:0;color:#333}.image-carousel-close{background:none;border:none;font-size:2rem;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.image-carousel-close:hover{background:#f0f0f0;color:#333}.image-carousel-content{display:flex;align-items:center;justify-content:center;padding:2rem;gap:1rem;flex:1;min-height:400px}.image-carousel-nav{background:#667eea;color:#fff;border:none;width:48px;height:48px;border-radius:50%;font-size:2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.image-carousel-nav:hover{background:#5568d3;transform:scale(1.1)}.image-carousel-nav:disabled{opacity:.5;cursor:not-allowed}.image-carousel-main{flex:1;display:flex;flex-direction:column;align-items:center;gap:1rem}.image-carousel-image{max-width:100%;max-height:500px;object-fit:contain;border-radius:8px;box-shadow:0 4px 12px #0000001a}.image-carousel-counter{color:#666;font-size:.9rem}.image-carousel-thumbnails{display:flex;gap:.5rem;padding:1rem 1.5rem;overflow-x:auto;border-top:1px solid #eee;border-bottom:1px solid #eee}.image-carousel-thumbnail{width:80px;height:80px;object-fit:contain;border:2px solid transparent;border-radius:6px;cursor:pointer;transition:all .2s;background:#f8f9fa;padding:4px}.image-carousel-thumbnail:hover{border-color:#667eea;transform:scale(1.05)}.image-carousel-thumbnail.active{border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.image-carousel-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem}@media(max-width:768px){.app-main,.card{padding:1rem}.item-header{flex-direction:column;align-items:flex-start}.main-nav{flex-direction:column}.nav-btn{width:100%}.inventory-table-container,.journal-table-container,.full-inventory-table-container{overflow-x:scroll}.image-carousel-modal{max-width:95vw;max-height:95vh}.image-carousel-content{padding:1rem;min-height:300px}.image-carousel-image{max-height:300px}.image-carousel-nav{width:40px;height:40px;font-size:1.5rem}.image-carousel-thumbnail{width:60px;height:60px}}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-card{background:#fff;border-radius:12px;padding:40px;box-shadow:0 10px 40px #0000001a;max-width:400px;width:100%;text-align:center}.login-card h1{margin:0 0 10px;color:#333;font-size:2.5em}.login-card .subtitle{color:#666;margin:0 0 20px;font-size:1.1em}.login-card .description{color:#888;margin:0 0 30px;font-size:.95em}.google-login-wrapper{display:flex;justify-content:center;margin-top:20px}.error-message{color:#d9534f;background:#f8d7da;padding:15px;border-radius:6px;margin-top:20px;border:1px solid #f5c6cb}
