.c-flow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.c-st { display: grid; gap: 4px; align-content: start; min-height: 44px; padding: 12px; border: 2px solid var(--line); border-radius: 12px; background: var(--surface); color: var(--ink); font: inherit; text-align: left; cursor: pointer; }
.c-st b { font-size: .9375rem; }
.c-st .c-s { font-size: var(--t-s); font-weight: 700; color: var(--ink-2); }
.c-st.is-run { border-color: var(--sun); background: var(--sun-soft); }
.c-st.is-ok { border-color: var(--ok); }
.c-st.is-ok .c-s { color: var(--ok); }
.c-st.is-fail { border-color: var(--err); }
.c-st.is-fail .c-s { color: var(--err); }
.c-st.is-sel { outline: 3px solid var(--ink); outline-offset: 2px; }
.c-log { max-height: 260px; overflow: auto; padding: 12px; border-radius: 10px; background: var(--ink); color: var(--on-ink); font-family: ui-monospace, Menlo, Consolas, var(--font), monospace; font-size: .875rem; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }
.c-log .is-bad { font-weight: 800; }
.c-code { border: 1px solid var(--line); border-radius: 10px; overflow: hidden; font-family: ui-monospace, Menlo, Consolas, var(--font), monospace; font-size: .875rem; }
.c-code div { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 6px; padding: 4px 8px; white-space: pre-wrap; overflow-wrap: anywhere; }
.c-code div + div { border-top: 1px solid var(--line); }
.c-code .c-n { color: var(--ink-2); text-align: right; }
.c-code .is-hot { background: var(--paper-2); color: var(--err); font-weight: 700; }
.c-code .is-fixed { background: var(--sun-soft); font-weight: 700; }
.c-sim { font-weight: 700; }
@media (max-width: 600px) { .c-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.c-cols { align-items: start; }
