:root{--yellow: #e1ff00;--purple: #9d00ff;--black: #201b20;--oblack: #212121;--dgrey: #434343;--lgrey: #a8a8a8;--owhite: #eeeeee;--green: #4ade80;--amber: #facc15;--red: #f87171;--sidebar-width: 220px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--oblack);color:var(--owhite);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;min-height:100vh}#shell{display:flex;height:100vh}#sidebar{width:var(--sidebar-width);background:var(--black);border-right:1px solid var(--dgrey);display:flex;flex-direction:column;flex-shrink:0}.sidebar-header{padding:20px 20px 18px;border-bottom:1px solid var(--dgrey);display:flex;align-items:flex-end;gap:4px}.logo-img{height:28px;width:auto;display:block;margin-bottom:4px}.logo-accent{color:var(--yellow);font-size:20px;font-weight:700;line-height:1}.logo-sub{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--lgrey)}.integration-picker-wrap{padding:16px 20px;border-bottom:1px solid var(--dgrey)}.picker-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--lgrey);margin-bottom:6px}.integration-picker{width:100%;background:var(--oblack);color:var(--owhite);border:1px solid var(--dgrey);border-radius:4px;padding:6px 8px;font-size:13px;cursor:pointer}.integration-picker:focus{outline:none;border-color:var(--yellow)}#nav{flex:1;padding:12px 0}.nav-link{display:block;padding:10px 20px;color:var(--lgrey);text-decoration:none;font-size:13px;border-left:2px solid transparent;transition:color .1s,background .1s}.nav-link:hover{color:var(--owhite);background:#ffffff0a}.nav-link--active{color:var(--yellow);border-left-color:var(--yellow);background:#e1ff000d}.sidebar-footer{padding:16px 20px;border-top:1px solid var(--dgrey)}.logout-btn{width:100%;background:transparent;color:var(--lgrey);border:1px solid var(--dgrey);border-radius:4px;padding:7px 12px;font-size:12px;cursor:pointer;transition:color .1s,border-color .1s}.logout-btn:hover{color:var(--owhite);border-color:var(--lgrey)}#main{flex:1;overflow-y:auto;padding:36px 44px}.splash{display:flex;align-items:center;justify-content:center;height:100vh;font-size:15px;color:var(--lgrey)}.loading{color:var(--lgrey);padding:24px 0}.error{color:var(--red);padding:8px 0}.view h2{font-size:20px;font-weight:600;margin-bottom:28px;display:flex;align-items:center;gap:10px}.view h3{font-size:11px;font-weight:600;color:var(--lgrey);text-transform:uppercase;letter-spacing:.08em;margin:28px 0 12px}.view section{margin-top:32px}.cache-badge{font-size:11px;font-weight:400;background:var(--dgrey);color:var(--lgrey);border-radius:3px;padding:2px 7px}.view-meta{margin-top:20px;font-size:12px;color:var(--dgrey)}.row-count{font-size:12px;color:var(--lgrey);margin-bottom:12px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin-bottom:8px}.stat-card{background:var(--black);border:1px solid var(--dgrey);border-radius:6px;padding:20px}.stat-value{font-size:30px;font-weight:700;color:var(--yellow);line-height:1;margin-bottom:8px}.stat-label{font-size:11px;color:var(--lgrey);text-transform:uppercase;letter-spacing:.06em}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{text-align:left;padding:8px 14px;border-bottom:1px solid var(--dgrey);color:var(--lgrey);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em}.data-table td{padding:11px 14px;border-bottom:1px solid rgba(67,67,67,.4)}.data-table tr:last-child td{border-bottom:none}.data-table a{color:var(--yellow);text-decoration:none}.data-table a:hover{text-decoration:underline}.badge{display:inline-block;padding:2px 8px;border-radius:3px;font-size:11px;font-weight:500}.badge--offer-received{background:#e1ff001f;color:var(--yellow)}.badge--submitted{background:#9d00ff2e;color:#c068ff}.badge--pending{background:#a8a8a81f;color:var(--lgrey)}.filter-bar{display:flex;align-items:center;gap:28px;margin-bottom:24px;flex-wrap:wrap}.filter-bar h2{margin-bottom:0}.filters{display:flex;gap:16px;align-items:center}.filters label{font-size:12px;color:var(--lgrey);display:flex;align-items:center;gap:8px}.filters select{background:var(--black);color:var(--owhite);border:1px solid var(--dgrey);border-radius:4px;padding:5px 8px;font-size:13px;cursor:pointer}.filters select:focus{outline:none;border-color:var(--yellow)}.legend{display:flex;gap:20px;margin-bottom:16px}.legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--lgrey)}.legend-item:before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px}.legend-item--submissions:before{background:#9d00ffb3}.legend-item--offers:before{background:var(--yellow)}.bar-chart{display:flex;align-items:flex-end;gap:4px;height:220px;overflow-x:auto;padding-bottom:4px}.bar-col{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:30px;height:100%;justify-content:flex-end}.bar-stack{width:100%;display:flex;flex-direction:column-reverse;border-radius:2px 2px 0 0;overflow:hidden;background:#9d00ff99;flex-shrink:0}.bar-offer-fill{width:100%;background:var(--yellow);flex-shrink:0}.bar-label{font-size:9px;color:var(--lgrey);margin-top:4px;text-align:center;overflow:hidden;max-width:100%;white-space:nowrap;text-overflow:ellipsis}.health-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.health-card{background:var(--black);border:1px solid var(--dgrey);border-radius:6px;padding:22px;display:flex;gap:18px;align-items:flex-start}.health-indicator{font-size:30px;line-height:1;flex-shrink:0;margin-top:2px}.health-card--healthy .health-indicator{color:var(--green)}.health-card--degraded .health-indicator{color:var(--amber)}.health-card--down .health-indicator{color:var(--red)}.health-card--no-data .health-indicator{color:var(--dgrey)}.health-name{font-size:15px;font-weight:600;margin-bottom:4px}.health-status{font-size:13px;font-weight:500;text-transform:capitalize;margin-bottom:10px}.health-card--healthy .health-status{color:var(--green)}.health-card--degraded .health-status{color:var(--amber)}.health-card--down .health-status{color:var(--red)}.health-card--no-data .health-status{color:var(--lgrey)}.health-meta{font-size:12px;color:var(--lgrey);line-height:1.8}
