.scan-row {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 6px 10px 6px 0;
  cursor: default;
}
.scan-row-summary {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) 150px minmax(200px, 1fr) 100px 130px;
  gap: 18px;
  align-items: center;
  min-width: 0;
  padding: 10px 6px 10px 16px;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.scan-row-summary strong, .scan-row-summary small { display: block; }
.scan-row-summary small { margin-top: 5px; color: var(--muted); }
.scan-row-actions { display: flex; gap: 7px; align-items: center; padding-right: 2px; }
.scan-icon-button {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--blue);
  cursor: pointer;
}
.scan-icon-button:hover:not(:disabled) { border-color: #9fb8e7; background: var(--pale); transform: translateY(-1px); }
.scan-icon-button.danger { color: var(--danger); }
.scan-icon-button.danger:hover:not(:disabled) { border-color: #efb5ae; background: #fff5f3; }
.scan-icon-button:disabled { color: #a9b2c2; background: #f7f8fa; cursor: not-allowed; opacity: .6; }
.scan-icon-button svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.scan-copy-notice { grid-column: 1 / -1; margin: 0; }
.archived-scans-panel { margin-top: 20px; }
.archived-scan-list { display: grid; gap: 9px; margin-top: 18px; }
.archived-scan-row { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(180px, .55fr) 160px auto; gap: 16px; align-items: center; padding: 14px; border: 1px solid var(--line); border-radius: 12px; }
.archived-scan-row strong, .archived-scan-row small { display: block; }
.archived-scan-row small { margin-top: 4px; color: var(--muted); font-size: 10px; }
.scan-health-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;align-items:center;margin:18px 0;padding:16px;border:1px solid #f0c86c;border-radius:14px;background:#fffaf0}.scan-health-control.is-degraded{border-color:#c7d8f5;background:#f5f8ff}.scan-health-control.is-stopped,.scan-health-control.is-failed{border-color:#e6b4ad;background:#fff6f4}.scan-health-copy{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:start}.scan-health-copy>span{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:#fff0c9;color:#8d5c00;font-weight:900}.scan-health-copy h3{margin:0 0 4px;color:var(--navy);font-size:15px}.scan-health-copy p{font-size:11px;line-height:1.5}.scan-health-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.scan-health-actions .button{padding:8px 11px;font-size:10px}.scan-health-action-status{grid-column:1/-1;margin:0!important;font-size:10px!important}.scan-failure-drawer{position:fixed;inset:0 0 0 auto;width:min(620px,96vw);height:100vh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-left:1px solid var(--line);background:#f7f9fd;box-shadow:-18px 0 42px rgba(7,18,40,.26)}.scan-failure-drawer::backdrop{background:rgba(8,20,48,.5)}.scan-failure-drawer-shell{display:flex;height:100%;flex-direction:column}.scan-failure-drawer-heading{display:flex;justify-content:space-between;gap:18px;padding:22px 24px;border-bottom:1px solid var(--line);background:#fff}.scan-failure-drawer-heading .eyebrow{margin:0}.scan-failure-drawer-heading h2{margin:5px 0;color:var(--navy)}.scan-failure-drawer-heading p:last-child{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.scan-failure-report{display:grid;align-content:start;gap:10px;flex:1;min-height:0;padding:18px 24px;overflow:auto}.scan-failure-group{padding:16px;border:1px solid var(--line);border-radius:13px;background:#fff}.scan-failure-group header{display:flex;justify-content:space-between;gap:14px}.scan-failure-group header strong,.scan-failure-group header small{display:block}.scan-failure-group header strong{text-transform:capitalize;color:var(--navy)}.scan-failure-group header small{margin-top:4px;color:var(--muted);font-size:10px}.scan-failure-group header>span{align-self:start;padding:5px 8px;border-radius:999px;background:#eef4ff;color:var(--blue);font-size:9px;font-weight:800}.scan-failure-group>p{margin:12px 0;color:var(--muted);font-size:11px;line-height:1.5}.scan-failure-group dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0}.scan-failure-group dl div{padding:9px;border-radius:9px;background:var(--pale)}.scan-failure-group dt{color:var(--muted);font-size:9px}.scan-failure-group dd{margin:3px 0 0;color:var(--navy);font-weight:800}.scan-failure-group details{margin-top:10px;border-top:1px solid var(--line);padding-top:9px}.scan-failure-group summary{color:var(--blue);font-size:10px;font-weight:800;cursor:pointer}.scan-failure-group ul{display:grid;gap:5px;margin:8px 0 0;padding-left:18px;color:var(--muted);font-size:10px;overflow-wrap:anywhere}.scan-failure-codes{font:10px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace!important;overflow-wrap:anywhere}.scan-failure-drawer-actions{display:grid;grid-template-columns:auto auto;gap:9px;padding:16px 24px;border-top:1px solid var(--line);background:#fff}.scan-failure-drawer-actions p{grid-column:1/-1;margin:0;color:var(--muted);font-size:10px}.scan-failure-drawer-actions .primary{justify-self:end}
@media (max-width: 1050px) {
  .scan-row-summary { grid-template-columns: 1fr 120px; }
  .scan-row-summary > :nth-child(n+3) { grid-column: 1 / -1; }
  .archived-scan-row { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 650px) {
  .scan-row { grid-template-columns: minmax(0, 1fr) auto; }
  .scan-row-summary, .archived-scan-row { grid-template-columns: 1fr; }
  .scan-row-summary > :nth-child(n) { grid-column: 1; }
  .scan-row-actions { flex-direction: column; }
  .scan-health-control{grid-template-columns:1fr}.scan-health-actions{justify-content:flex-start}.scan-failure-drawer{width:100vw}.scan-failure-group dl{grid-template-columns:1fr}.scan-failure-drawer-actions{grid-template-columns:1fr}.scan-failure-drawer-actions .primary{justify-self:stretch}
}
