.batching-container{font-family:Courier New,Consolas,Monaco,monospace;background:#0a0a0a;color:#0f0;line-height:1.6;min-height:100vh;padding:2rem;text-shadow:0 0 5px rgba(0,255,0,.5)}.terminal-container{max-width:1400px;margin:0 auto;background:#000;border:2px solid #0f0;border-radius:4px;box-shadow:0 0 20px rgba(0,255,0,.3);padding:2rem}.batching-container .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #0f0}.batching-container .header h1{color:#0f0;font-size:1.5rem;font-weight:700;text-shadow:0 0 10px rgba(0,255,0,.8)}.batching-container .header .user-info{color:#0f0;font-size:.875rem}.batching-container .tabs{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:2px solid #0f0;padding-bottom:.5rem}.batching-container .tab{padding:.75rem 1.5rem;background:transparent;border:2px solid #0f0;color:#0f0;font-family:Courier New,monospace;font-size:.875rem;cursor:pointer;transition:all .2s;text-transform:uppercase}.batching-container .tab:hover{background:rgba(0,255,0,.1);box-shadow:0 0 10px rgba(0,255,0,.5)}.batching-container .tab.active{background:rgba(0,255,0,.2);box-shadow:0 0 15px rgba(0,255,0,.7)}.batching-container .batch-section{background:#000;border:2px solid #0f0;border-radius:4px;padding:1.5rem;margin-bottom:2rem}.batching-container .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.batching-container .section-header h2{color:#ff0;font-size:1.25rem;font-weight:700}.batching-container .btn{padding:.5rem 1rem;background:#000;border:2px solid;font-family:Courier New,monospace;font-size:.875rem;cursor:pointer;transition:all .2s;text-transform:uppercase;border-radius:2px}.batching-container .btn:hover:not(:disabled){box-shadow:0 0 10px}.batching-container .btn:disabled{opacity:.5;cursor:not-allowed}.batching-container .btn-cyan{border-color:#0ff;color:#0ff}.batching-container .btn-cyan:hover:not(:disabled){background:rgba(0,255,255,.1);box-shadow:0 0 15px rgba(0,255,255,.5)}.batching-container .btn-green{border-color:#0f0;color:#0f0}.batching-container .btn-green:hover:not(:disabled){background:rgba(0,255,0,.1);box-shadow:0 0 15px rgba(0,255,0,.5)}.batching-container .btn-yellow{border-color:#ff0;color:#ff0}.batching-container .btn-yellow:hover:not(:disabled){background:rgba(255,255,0,.1);box-shadow:0 0 15px rgba(255,255,0,.5)}.batching-container .btn-red{border-color:red;color:red}.batching-container .btn-red:hover:not(:disabled){background:rgba(255,0,0,.1);box-shadow:0 0 15px rgba(255,0,0,.5)}.batching-container .terminal-output{background:#000;border:2px solid #0f0;border-radius:4px;padding:1rem;height:24rem;overflow-y:auto;font-family:Courier New,monospace;font-size:.75rem;margin-bottom:1rem}.batching-container .terminal-output::-webkit-scrollbar{width:8px}.batching-container .terminal-output::-webkit-scrollbar-track{background:#000}.batching-container .terminal-output::-webkit-scrollbar-thumb{background:#0f0;border-radius:4px}.batching-container .terminal-line{margin-bottom:.25rem;word-wrap:break-word}.batching-container .terminal-line.error{color:#f44}.batching-container .terminal-line.success{color:#0f0}.batching-container .terminal-line.processing{color:#ff0}.batching-container .terminal-line.info,.batching-container .terminal-line.progress{color:#0ff}.batching-container .terminal-line.complete{color:#0f0}.batching-container .terminal-line.heartbeat{color:#f0f}.batching-container .terminal-cursor{display:inline-block;width:8px;height:14px;background:#0f0;animation:blink 1s infinite}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.batching-container .progress-container{margin-top:1rem}.batching-container .progress-bar{width:100%;height:12px;background:#000;border:1px solid #0f0;border-radius:2px;overflow:hidden}.batching-container .progress-fill{height:100%;background:#0f0;transition:width .3s;box-shadow:0 0 10px rgba(0,255,0,.8)}.batching-container .progress-text{color:#0f0;font-size:.75rem;margin-top:.5rem;text-align:center}.batching-container .batch-table{width:100%;border-collapse:collapse;font-family:Courier New,monospace;font-size:.875rem}.batching-container .batch-table thead{border-bottom:2px solid #0f0}.batching-container .batch-table th{text-align:left;padding:.75rem;color:#ff0;font-weight:700;text-transform:uppercase}.batching-container .batch-table td{padding:.75rem;color:#ccc;border-bottom:1px solid #0f0}.batching-container .batch-table tbody tr:hover{background:rgba(0,255,0,.05)}.batching-container .batch-name{color:#0ff;cursor:pointer}.batching-container .batch-name:hover{color:#0ff;text-shadow:0 0 5px rgba(0,255,255,.8)}.batching-container .batch-stats{text-align:right}.batching-container .batch-stats.processed{color:#0f0}.batching-container .batch-stats.failed{color:#f44}.batching-container .batch-progress{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.batching-container .batch-progress-bar{width:96px;height:8px;background:#000;border:1px solid #0f0;border-radius:2px;overflow:hidden}.batching-container .batch-progress-fill{height:100%;background:#0f0;transition:width .3s}.batching-container .batch-actions{display:flex;gap:.5rem;justify-content:center}.batching-container .btn-small{padding:.25rem .75rem;font-size:.75rem}.batching-container .results-section{background:#000;border:2px solid #0f0;border-radius:4px;padding:1.5rem}.batching-container .results-summary{background:#000;border:2px solid #0ff;border-radius:4px;padding:1rem;margin-bottom:1.5rem}.batching-container .results-summary h3{color:#0ff;font-size:1rem;margin-bottom:1rem;font-weight:700}.batching-container .summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:1rem;gap:1rem}.batching-container .summary-item{text-align:center}.batching-container .summary-label{color:#888;font-size:.75rem;margin-bottom:.25rem}.batching-container .summary-value{color:#0f0;font-size:1.25rem;font-weight:700}.batching-container .summary-value.avg{color:#f0f}.batching-container .summary-value.percent{color:#ff0}.batching-container .results-table{width:100%;border-collapse:collapse;font-family:Courier New,monospace;font-size:.75rem}.batching-container .results-table thead{border-bottom:2px solid #0f0}.batching-container .results-table th{text-align:left;padding:.5rem;color:#ff0;font-weight:700;text-transform:uppercase;font-size:.75rem}.batching-container .results-table td{padding:.5rem;color:#ccc;border-bottom:1px solid #0f0;font-size:.75rem}.batching-container .results-table tbody tr:hover{background:rgba(0,255,0,.05)}.batching-container .carrier-badge{padding:.25rem .5rem;border-radius:2px;font-size:.625rem;font-weight:700;text-transform:uppercase}.batching-container .carrier-badge.ups{background:rgba(255,200,0,.2);color:#ffc800;border:1px solid #ffc800}.batching-container .carrier-badge.fedex{background:rgba(128,0,128,.2);color:purple;border:1px solid purple}.batching-container .savings-positive{color:#0f0;font-weight:700}.batching-container .savings-negative{color:#f44;font-weight:700}.batching-container .error-indicator{color:#f44;font-size:.625rem}.batching-container .success-indicator{color:#0f0}.batching-container .expanded-details{background:#000;padding:1rem}.batching-container .details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:1rem;gap:1rem;margin-bottom:1rem}.batching-container .detail-item{text-align:left}.batching-container .detail-label{color:#888;font-size:.75rem;margin-bottom:.25rem}.batching-container .detail-value{color:#fff;font-weight:700}.batching-container .detail-value.green{color:#0f0}.batching-container .search-bar{display:flex;gap:.5rem;margin-bottom:1rem;align-items:center}.batching-container .search-input{padding:.5rem;background:#000;border:2px solid #0f0;color:#0f0;font-family:Courier New,monospace;font-size:.875rem;width:256px}.batching-container .search-input:focus{outline:none;box-shadow:0 0 10px rgba(0,255,0,.5)}.batching-container .search-input::placeholder{color:#666}.batching-container .pagination{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.batching-container .pagination-info{color:#888;font-size:.75rem}.batching-container .status-processing{color:#ff0;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width:768px){.batching-container .terminal-container{padding:1rem}.batching-container .tabs{flex-wrap:wrap}.batching-container .batch-table,.batching-container .results-table{font-size:.625rem}.batching-container .batch-table td,.batching-container .batch-table th,.batching-container .results-table td,.batching-container .results-table th{padding:.5rem .25rem}}