*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;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}.App{background-color:#f5f5f5;min-height:100vh}.app-header{align-items:center;background:linear-gradient(135deg,#000,#343136);box-shadow:0 2px 4px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:1.5rem 2rem}.header-left{display:flex;flex-direction:column;gap:.5rem}.header-right{align-items:center;display:flex;gap:1rem}.user-info{font-size:.9rem;opacity:.9}.logout-button{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background .2s}.logout-button:hover{background:#ffffff4d}.app-header h1{font-size:1.75rem;font-weight:600}.header-status{align-items:center;display:flex;font-size:.9rem;gap:.5rem}.status-indicator{animation:pulse 2s infinite;border-radius:50%;height:10px;width:10px}.status-indicator,.status-indicator.status-ok{background-color:#4ade80}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.app-error,.app-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.app-error{background-color:#fee2e2;color:#991b1b;padding:2rem}.app-error h1{font-size:2rem;margin-bottom:1rem}.app-error p{font-size:1.1rem;margin:.5rem 0}.dashboard{margin:0 auto;max-width:1400px;padding:2rem}.dashboard-controls{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;justify-content:space-between;margin-bottom:2rem;padding:1rem 1.5rem}.controls-left,.controls-right,.dashboard-controls{align-items:center;display:flex;gap:1rem}.login-logs-toggle{background:#2686bb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background .2s}.login-logs-toggle:hover{background:#5a3a7a}.dashboard-controls label{color:#374151;font-weight:600}.store-filter{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:1rem;padding:.5rem 1rem}.store-filter:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.dashboard-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.dashboard-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;padding:1.5rem}.dashboard-card.full-width{grid-column:1/-1}.dashboard-card h2{border-bottom:2px solid #e5e7eb;color:#111827;font-size:1.5rem;margin-bottom:1rem;padding-bottom:.5rem}.dashboard-loading{color:#6b7280;padding:3rem;text-align:center}.current-stock{height:100%}.stock-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:1.5rem}.summary-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;padding:1rem;text-align:center}.summary-card.warning{background:linear-gradient(135deg,#f093fb,#f5576c)}.summary-card.success{background:linear-gradient(135deg,#4facfe,#00f2fe)}.summary-label{font-size:.875rem;margin-bottom:.5rem;opacity:.9}.summary-value{font-size:2rem;font-weight:700}.out-of-stock-list{margin-top:1.5rem}.out-of-stock-list h3{color:#dc2626;font-size:1.25rem;margin-bottom:1rem}.stock-table{max-height:400px;overflow-y:auto}.stock-table table{border-collapse:collapse;width:100%}.stock-table th{background:#f3f4f6;color:#374151;font-weight:600;padding:.75rem;position:-webkit-sticky;position:sticky;text-align:left;top:0;z-index:1}.stock-table td{border-bottom:1px solid #e5e7eb;padding:.75rem}.stock-table tr:hover{background:#f9fafb}.all-in-stock{background:#d1fae5;border-radius:8px;color:#065f46;font-size:1.25rem;font-weight:600;padding:2rem;text-align:center}.component-error,.component-loading{color:#6b7280;padding:2rem;text-align:center}.component-error{color:#dc2626}.daily-trends{height:100%}.trends-header{flex-wrap:wrap;justify-content:space-between;margin-bottom:1rem}.trends-controls,.trends-header{align-items:center;display:flex;gap:1rem}.trends-controls label{color:#374151;display:flex;flex-direction:column;font-size:.875rem;font-weight:600;gap:.25rem}.date-selector,.store-selector{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:.875rem;padding:.5rem}.date-selector:focus,.store-selector:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.time-window-table-container{max-height:600px;overflow-x:auto;overflow-y:auto}.time-window-table{border-collapse:collapse;font-size:.875rem;width:100%}.time-window-table thead{background:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:10}.time-window-table th{background:#f3f4f6;border:1px solid #e5e7eb;color:#374151;font-weight:600;padding:.75rem .5rem;text-align:center;white-space:nowrap}.time-window-table .item-name-col{background:#f3f4f6;left:0;min-width:150px;position:-webkit-sticky;position:sticky;text-align:left;z-index:5}.time-window-table .time-window-col{font-size:.75rem;min-width:70px}.time-window-table td{border:1px solid #e5e7eb;padding:.5rem;text-align:center}.time-window-table .item-name-cell{background:#fff;font-weight:500;left:0;position:-webkit-sticky;position:sticky;z-index:1}.time-window-table .time-window-cell{font-size:1.2rem;line-height:1}.time-window-table .status-in-stock{background-color:#d1fae5;color:#065f46}.time-window-table .status-out-of-stock{background-color:#fee2e2;color:#991b1b}.time-window-table .status-unknown{background-color:#f3f4f6;color:#9ca3af}.table-legend{background:#f9fafb;border-radius:6px;display:flex;font-size:.875rem;gap:1.5rem;margin-top:1rem;padding:.75rem}.legend-item{align-items:center;display:flex;gap:.5rem}.legend-color{font-size:1rem;line-height:1}.legend-color.status-in-stock{color:#065f46}.legend-color.status-out-of-stock{color:#991b1b}.no-data{color:#6b7280;padding:3rem;text-align:center}.out-of-stock-alerts{height:100%}.alerts-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.hours-selector{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:.875rem;padding:.5rem 1rem}.hours-selector:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.alerts-list{max-height:500px;overflow-y:auto}.alert-item{background:#fee2e2;border-left:4px solid #dc2626;border-radius:6px;margin-bottom:.75rem;padding:1rem}.alert-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.alert-store{color:#991b1b;font-weight:600}.alert-time{color:#6b7280;font-size:.875rem}.alert-item-name{color:#111827;font-size:1.1rem;font-weight:600;margin-bottom:.25rem}.alert-timestamp{color:#6b7280;font-size:.875rem}.no-alerts{background:#d1fae5;border-radius:8px;color:#065f46;font-weight:600;padding:2rem;text-align:center}.login-logs-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:20px;padding:20px}.login-logs-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.login-logs-header h2{color:#333;margin:0}.refresh-button{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.refresh-button:hover{background:#5568d3}.filters-section{background:#f5f5f5;border-radius:6px;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px;padding:15px}.filter-group{display:flex;flex-direction:column;gap:5px}.filter-group label{color:#666;font-size:12px;font-weight:500}.filter-group input,.filter-group select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px}.apply-filters-button{align-self:flex-end;background:#764ba2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;margin-top:20px;padding:8px 16px}.apply-filters-button:hover{background:#5a3a7a}.logs-table-container{overflow-x:auto}.logs-table{border-collapse:collapse;font-size:14px;width:100%}.logs-table thead{background:#f8f9fa}.logs-table th{border-bottom:2px solid #dee2e6;color:#333;font-weight:600;padding:12px;text-align:left}.logs-table td{border-bottom:1px solid #dee2e6;padding:12px}.logs-table tbody tr:hover{background:#f8f9fa}.badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.badge-success{background:#d4edda;color:#155724}.badge-failed{background:#f8d7da;color:#721c24}.user-agent{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loading,.no-logs{color:#666;padding:40px;text-align:center}.login-container{align-items:center;background:linear-gradient(135deg,#086941,#900130);background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;justify-content:center;min-height:100vh;padding:20px}.login-box{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:400px;opacity:.8;padding:40px;width:100%}.login-box h1{color:#333;font-size:24px;margin:0 0 10px;text-align:center}.login-box h2{color:#666;font-size:20px;font-weight:400;margin:0 0 30px;text-align:center}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-group input{border:2px solid #e0e0e0;border-radius:6px;box-sizing:border-box;font-size:16px;padding:12px;transition:border-color .3s;width:100%}.form-group input:focus{border-color:#667eea;outline:none}.form-group small{color:#666;display:block;font-size:12px;margin-top:5px}.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:10px;padding:12px;transition:transform .2s,box-shadow .2s;width:100%}.submit-button:hover:not(:disabled){box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.submit-button:disabled{cursor:not-allowed;opacity:.6}.error-message{background:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:14px;margin-bottom:20px;padding:12px}.login-note{border-top:1px solid #e0e0e0;margin-top:20px;padding-top:20px;text-align:center}.login-note p{color:#666;font-size:13px;margin:0}
/*# sourceMappingURL=main.84171f9e.css.map*/