body{margin:0}#root{width:100%}*{box-sizing:border-box;margin:0;padding:0}body{color:#1d1d1f;background:#f5f5f7;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}.app{min-height:100vh}header{color:#fff;background:#1d1d1f;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 2rem;display:flex}header h1{font-size:1.5rem;font-weight:600}.subtitle{color:#86868b;font-size:.875rem}.user-menu{color:#f5f5f7;align-items:center;gap:.75rem;font-size:.8125rem;display:flex}.user-menu button{color:#1d1d1f;cursor:pointer;background:#f5f5f7;border:none;border-radius:4px;padding:.375rem .625rem;font-size:.75rem}.user-menu button:hover{background:#e5e5e7}.error{color:#c00;background:#fee;border:1px solid #fcc;border-radius:6px;justify-content:space-between;align-items:center;margin:1rem;padding:.75rem 1rem;display:flex}.auth-screen{background:#f5f5f7;justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.auth-panel{background:#fff;border:1px solid #e5e5e7;border-radius:8px;width:min(100%,420px);padding:1.75rem;box-shadow:0 12px 40px #00000014}.auth-panel h1{margin-bottom:.5rem;font-size:1.375rem}.auth-panel p{color:#6e6e73;margin-bottom:1.25rem;font-size:.875rem}.auth-error{margin:0 0 1rem}.slack-signin{color:#fff;cursor:pointer;background:#4a154b;border:none;border-radius:4px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;font-size:.875rem;font-weight:600;display:flex}.slack-signin:hover{background:#3a103b}.slack-mark{color:#4a154b;background:#fff;border-radius:4px;justify-content:center;align-items:center;width:1.125rem;height:1.125rem;font-size:.9375rem;font-weight:700;line-height:1;display:inline-flex}.error button{color:#c00;cursor:pointer;background:0 0;border:none;text-decoration:underline}.layout{height:calc(100vh - 90px);display:flex}.dates-panel{background:#fff;border-right:1px solid #e5e5e7;flex-shrink:0;width:180px;padding:1rem 0;overflow-y:auto}.dates-panel h2{text-transform:uppercase;letter-spacing:.05em;color:#86868b;margin-bottom:.5rem;padding:0 1rem;font-size:.75rem}.dates-panel ul{list-style:none}.dates-panel li button{text-align:left;cursor:pointer;color:#1d1d1f;background:0 0;border:none;width:100%;padding:.5rem 1rem;font-size:.875rem;display:block}.dates-panel li button:hover{background:#f0f0f2}.dates-panel li button.active{background:#e8e8ed;font-weight:600}main{flex:1;padding:1.5rem;overflow-y:auto}main h2{margin-bottom:1rem;font-size:1.125rem}.count{color:#86868b;font-size:.875rem;font-weight:400}.placeholder,.loading{color:#86868b;font-size:.875rem}.loading-container{max-width:400px}.progress-bar{background:#e5e5e7;border-radius:3px;height:6px;margin-top:.5rem;overflow:hidden}.progress-bar-fill{background:#1d1d1f;border-radius:3px;height:100%;transition:width .2s linear}.table-wrapper{background:#fff;border:1px solid #e5e5e7;border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.8125rem}thead th{text-align:left;color:#6e6e73;white-space:nowrap;background:#fafafa;border-bottom:1px solid #e5e5e7;padding:.625rem .75rem;font-weight:600}tbody tr{cursor:pointer;transition:background .1s}tbody tr:hover{background:#f5f5f7}tbody tr.selected{background:#e3f2fd}tbody td{border-bottom:1px solid #f0f0f2;padding:.5rem .75rem}.detail-panel{background:#fff;border:1px solid #e5e5e7;border-radius:8px;margin-top:1.5rem;padding:1.5rem;position:relative}.detail-panel h3{margin-bottom:1rem;font-size:1rem}.close-btn{cursor:pointer;background:#f0f0f2;border:none;border-radius:4px;padding:.375rem .75rem;font-size:.75rem;position:absolute;top:1rem;right:1rem}.close-btn:hover{background:#e5e5e7}.detail-meta p{margin-bottom:.375rem;font-size:.8125rem}.detail-meta a{color:#06c}.inventory-comparison{gap:1.5rem;margin-top:1.25rem;display:flex}.inv-col{flex:1;min-width:0}.inv-col h4{color:#6e6e73;margin-bottom:.5rem;font-size:.8125rem}.inv-table{border:1px solid #e5e5e7;border-radius:6px;font-size:.75rem;overflow:hidden}.inv-table thead th{font-size:.6875rem}.inv-table tbody tr{cursor:default}.inv-table tbody tr.highlight{background:#fff3cd;font-weight:600}.inv-table tbody tr.highlight td{border-bottom-color:#ffe69c}@media (width<=720px){header{flex-direction:column;align-items:flex-start}.layout{height:auto;min-height:calc(100vh - 140px)}.inventory-comparison{flex-direction:column}}
