#aegis-janus .jg-live{max-width:1000px;margin:20px auto 24px;padding:18px 20px;border:1px solid var(--jn-line);border-radius:18px;background:var(--jn-surface);color:var(--jn-text);box-shadow:0 8px 28px #00000008;text-align:left}
#aegis-janus .jg-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:12px}
#aegis-janus .jg-heading h2{font-size:19px;font-weight:650;letter-spacing:-.02em;margin:0 0 7px}
#aegis-janus .jg-status{margin:0;color:var(--jn-muted);font-size:12px;line-height:1.5;display:flex;gap:7px;align-items:center}
#aegis-janus .jg-status:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--jn-muted);flex:none}
#aegis-janus .jg-live[data-connection="connected"] .jg-status:before{background:#22c55e}
#aegis-janus .jg-live:is([data-connection="disconnected"],[data-connection="stale"]) .jg-status{font-weight:600}
#aegis-janus .jg-live:is([data-connection="disconnected"],[data-connection="stale"]) :is(.jg-charts,.jg-budgets){opacity:.65}
#aegis-janus .jg-body{display:grid;gap:10px;min-width:0}
#aegis-janus .jg-note{font-size:12px;line-height:1.55;color:var(--jn-muted);margin:0;overflow-wrap:anywhere}
#aegis-janus .jg-scope{padding:9px 12px;background:var(--jn-selected);border-radius:10px;font-size:12px;display:grid;gap:3px}
#aegis-janus :is(.jg-stats,.jg-stages){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#aegis-janus :is(.jg-stats,.jg-stages)>div{display:grid;gap:5px;min-width:0}
#aegis-janus .jg-stats>div{display:flex;align-items:baseline;gap:8px}
#aegis-janus .jg-stats strong{font-size:19px;line-height:1.2;font-variant-numeric:tabular-nums}
#aegis-janus .jg-select-label{display:grid;gap:7px;font-size:12px;font-weight:600}
#aegis-janus .jg-select-label select{width:100%;min-height:40px;background:var(--jn-bg);color:var(--jn-text);border:1px solid var(--jn-line);border-radius:8px;padding:8px 10px;font:inherit}
#aegis-janus .jg-task-head{display:flex;gap:12px;justify-content:space-between;align-items:baseline;font-size:13px;flex-wrap:wrap}
#aegis-janus :is(.jg-budgets,.jg-charts){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#aegis-janus .jg-budget-head{display:flex;justify-content:space-between;gap:12px;font-size:12px;line-height:1.4;margin-bottom:8px;flex-wrap:wrap}
#aegis-janus .jg-budget-head strong{font-variant-numeric:tabular-nums}
#aegis-janus .jg-meter{height:7px;background:var(--jn-line);border-radius:5px;overflow:hidden}
#aegis-janus .jg-meter>span{display:block;height:100%;background:var(--jn-accent);border-radius:5px}
#aegis-janus .jg-chart{margin:0;padding:10px 12px;border:1px solid var(--jn-line);border-radius:12px;background:var(--jn-bg);min-width:0}
#aegis-janus .jg-chart-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:14px;margin-bottom:6px}
#aegis-janus .jg-number{font-size:21px;font-weight:650;font-variant-numeric:tabular-nums}
#aegis-janus .jg-chart svg{display:block;width:100%;height:108px;overflow:visible}
#aegis-janus .jg-grid{stroke:var(--jn-line);stroke-width:1}
#aegis-janus .jg-axis{fill:var(--jn-muted);font-size:10px;font-family:inherit}
#aegis-janus .jg-line{stroke:var(--jn-accent);fill:none;stroke-width:2;stroke-linejoin:round}
#aegis-janus .jg-point{fill:var(--jn-accent);stroke:var(--jn-bg);stroke-width:1}
#aegis-janus .jg-stages{grid-template-columns:repeat(6,minmax(0,1fr));padding-top:4px}
#aegis-janus .jg-stages strong{font-size:20px;font-variant-numeric:tabular-nums}
#aegis-janus .jg-records{border-top:1px solid var(--jn-line);padding-top:13px;min-width:0}
#aegis-janus .jg-controls{min-width:0}
#aegis-janus .jg-controls>summary{cursor:pointer;color:var(--jn-accent);font-size:12px;font-weight:600;padding:6px 0}
#aegis-janus .jg-controls[open]>*:not(summary){margin-top:14px}
#aegis-janus .jg-records>summary{font-size:13px;font-weight:600;cursor:pointer;color:var(--jn-accent);padding:5px 0}
#aegis-janus .jg-records[open]>summary{margin-bottom:14px}
#aegis-janus .jg-records>.jg-note{margin:9px 0}
#aegis-janus .jg-row{display:flex;justify-content:space-between;align-items:baseline;gap:18px;font-size:12px;line-height:1.6;padding:6px 0}
#aegis-janus .jg-row strong{font-weight:500;text-align:right;overflow-wrap:anywhere;max-width:65%}
#aegis-janus .jg-table-wrap{max-height:360px;overflow:auto;margin-top:12px;border:1px solid var(--jn-line);border-radius:10px}
#aegis-janus .jg-table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.5;text-align:left}
#aegis-janus .jg-table caption{text-align:left;padding:11px;font-weight:600;background:var(--jn-bg)}
#aegis-janus .jg-table :is(th,td){padding:9px 11px;border-bottom:1px solid var(--jn-line);vertical-align:top;overflow-wrap:anywhere;max-width:280px}
#aegis-janus .jg-table th{font-weight:600;color:var(--jn-muted)}
#aegis-janus .jg-evidence{border-top:1px solid var(--jn-line);padding-top:13px;font-size:12px;display:grid;gap:5px}
#aegis-janus .jg-empty{padding:20px;border:1px dashed var(--jn-line);border-radius:12px;display:grid;gap:8px;font-size:14px}
#aegis-janus .jg-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:3px}
#aegis-janus .jg-actions .jn-button{font-size:12px}
#aegis-janus .jg-live :is(button,select,summary):focus-visible{outline:2px solid var(--jn-accent);outline-offset:3px}
@media(max-width:800px){#aegis-janus .jg-stages{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:550px){#aegis-janus .jg-live{padding:16px;margin-top:24px}#aegis-janus :is(.jg-budgets,.jg-charts){grid-template-columns:1fr}#aegis-janus .jg-select-label select{font-size:16px}#aegis-janus .jg-row{display:grid;gap:2px}#aegis-janus .jg-row strong{max-width:none;text-align:left}#aegis-janus .jg-heading{gap:8px}}

/* Runtime inspector: compact, theme-derived and flow-based on every screen. */
#aegis-janus .jn-inspector .jg-sidebar{width:100%;max-width:none;box-sizing:border-box;margin:14px 0;padding:12px;border-radius:13px;box-shadow:none}
#aegis-janus .jg-sidebar .jg-heading{gap:8px;align-items:flex-start}
#aegis-janus .jg-sidebar .jg-heading h2{font-size:15px;margin-bottom:5px}
#aegis-janus .jg-sidebar .jg-heading>.jn-button{width:auto;margin:0;padding:6px 8px;min-height:34px;font-size:11px;flex:none}
#aegis-janus .jg-sidebar .jg-activity-summary{display:grid;gap:7px;padding:0 0 11px;border-bottom:1px solid var(--jn-line);font-size:13px}
#aegis-janus .jg-sidebar .jg-activity-summary>.jg-note:first-of-type{font-size:13px;line-height:1.6;color:var(--jn-text)}
#aegis-janus .jg-sidebar .jg-scope{padding:8px;font-size:11px}
#aegis-janus .jg-sidebar .jg-stats{gap:8px}
#aegis-janus .jg-sidebar .jg-stats>div{display:grid;gap:3px}
#aegis-janus .jg-sidebar .jg-stats .jg-note{font-size:10px}
#aegis-janus .jg-sidebar .jg-task-head{display:grid;gap:4px;font-size:12px}
#aegis-janus .jg-sidebar :is(.jg-charts,.jg-budgets){grid-template-columns:1fr;gap:9px}
#aegis-janus .jg-sidebar .jg-chart{padding:8px}
#aegis-janus .jg-sidebar .jg-chart svg{height:86px}
#aegis-janus .jg-sidebar .jg-chart-head{font-size:13px;margin-bottom:0}
#aegis-janus .jg-sidebar .jg-number{font-size:18px}
#aegis-janus .jg-sidebar .jg-chart>.jg-note{font-size:10px}
#aegis-janus .jg-sidebar .jg-stages{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#aegis-janus .jg-sidebar .jg-row{display:grid;gap:2px;padding:5px 0}
#aegis-janus .jg-sidebar .jg-row strong{max-width:none;text-align:left}
#aegis-janus .jg-sidebar .jg-empty{padding:12px;font-size:12px}
#aegis-janus .jg-sidebar .jg-table{min-width:450px}
#aegis-janus .jg-sidebar .jg-actions{gap:4px}
#aegis-janus .jg-sidebar .jg-actions .jn-button{margin-top:0}

.jg-runtime {padding:14px;border:1px solid var(--jn-border,#34495e);border-radius:14px;background:color-mix(in srgb,var(--jn-accent,#8cbeff) 7%,transparent);margin-bottom:14px}
.jg-runtime-summary{font-weight:650;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.jg-timeline{padding-left:18px;max-height:320px;overflow:auto;font-size:12px}
.jg-timeline li{padding:5px 0;border-bottom:1px solid var(--jn-border,#34495e)}
.jg-live .jg-status{font-variant-numeric:tabular-nums}
.jg-live[data-connection="connected"] .jg-status:before{animation:janus-live-heartbeat .75s ease-in-out infinite}
@keyframes janus-live-heartbeat{50%{opacity:.45}}
@media(prefers-reduced-motion:reduce){.jg-live .jg-status:before{animation:none!important}}
