Closes #2720 (partial — kept state + infra card layout). core.html doesn't load dashboard.css so the .container-row styles from the operator SPA weren't available. Add equivalent card rules directly in core.css: .containers flex column, .container-row with bg-elev background + border + border-radius, .tombstone dashed variant, .head flex row with badge + meta, .actions flex row for the action buttons. Matches the visual weight of agent cards on the main dashboard.
71 lines
2 KiB
CSS
71 lines
2 KiB
CSS
/* ─── /core.html — C0R3 page ───────────────────────────────────────
|
|
Kept state (tombstones) and container load. Section rules imported
|
|
from system-sections.css (shared with dashboard.css + builds.css). */
|
|
@import "./system-sections.css";
|
|
|
|
body.core-shell {
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
/* Fill the header row next to the ← home back-link, same as the logs
|
|
sub-tab strip. */
|
|
.core-tabbar {
|
|
flex: 1;
|
|
}
|
|
|
|
.core-main {
|
|
padding: 1.2em 1.5em 2em;
|
|
}
|
|
|
|
/* createTabStrip toggles the native `hidden` attribute on inactive
|
|
panes; ensure it wins over any inherited display. */
|
|
.core-pane[hidden] { display: none; }
|
|
|
|
/* ─── K3PT ST4T3 + 1NFR4 container cards ────────────────────────────
|
|
core.html doesn't load dashboard.css (that's the operator SPA),
|
|
so the .container-row card styles aren't inherited. Redefine them
|
|
here so tombstone and infra entries look like proper cards (similar
|
|
to agent cards on the main dashboard) rather than bare list items. */
|
|
.containers {
|
|
list-style: none;
|
|
padding: 0;
|
|
margin: 0.5em 0 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 0.5em;
|
|
}
|
|
.container-row {
|
|
background: var(--bg-elev);
|
|
border: 1px solid var(--border);
|
|
border-radius: 4px;
|
|
padding: 0.55em 0.8em 0.5em;
|
|
}
|
|
.container-row.tombstone {
|
|
border-style: dashed;
|
|
background: color-mix(in srgb, var(--bg-elev) 35%, transparent);
|
|
opacity: 0.85;
|
|
}
|
|
.container-row .head {
|
|
display: flex;
|
|
align-items: center;
|
|
flex-wrap: wrap;
|
|
gap: 0.5em;
|
|
margin-bottom: 0.4em;
|
|
}
|
|
.container-row .head .name {
|
|
font-size: 1.05em;
|
|
font-weight: bold;
|
|
}
|
|
.container-row.tombstone .head .name { color: var(--muted); }
|
|
.container-row .head .meta {
|
|
margin-left: auto;
|
|
font-size: 0.88em;
|
|
color: var(--muted);
|
|
}
|
|
.container-row .actions {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 0.4em;
|
|
}
|
|
.container-row .actions form.inline { display: inline-block; margin: 0; }
|