.flush { margin-top: 0; }
.hidden { display: none !important; }

/* ---- steps list ---- */
.steps { list-style: none; padding: 0; margin: 0 0 20px; }
.steps > li { background: var(--surface); border: 1px solid var(--line); border-radius: 10px; padding: 12px; margin-bottom: 10px; }
.steps .step-head { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.steps .step-head .step-num { font-size: 13px; color: var(--muted); min-width: 3.5em; }
.steps .step-head .acts { display: flex; gap: 4px; margin-left: auto; }
.steps .step-head .acts button { min-height: 32px; padding: 2px 8px; font-size: 13px; }

.step-fields { display: grid; grid-template-columns: 1fr; gap: 10px; }
@media (min-width: 640px) { .step-fields { grid-template-columns: 1fr 1fr; } .step-fields .wide { grid-column: 1 / -1; } }
.field { display: block; }
.field > span { display: block; margin-bottom: 4px; }

.warn-text { color: var(--warn); margin: 4px 0 8px; }

/* ---- demo dashboard (fake, for testing selectors only) ---- */
.demo { border: 2px dashed var(--line); border-radius: var(--radius); padding: 12px; margin-top: 12px; background: var(--bg); }
.demo-nav { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; background: var(--surface); border: 1px solid var(--line); border-radius: 8px; padding: 8px 10px; margin-bottom: 10px; }
.demo-nav .demo-brand { font-weight: 700; }
.demo-nav input[type="search"] { flex: 1 1 140px; min-width: 0; }
.demo-body { display: grid; grid-template-columns: 1fr; gap: 10px; }
@media (min-width: 640px) { .demo-body { grid-template-columns: 130px 1fr; } .demo-sidebar { flex-direction: column; } }
.demo-sidebar { display: flex; gap: 6px; flex-wrap: wrap; }
.demo-sidebar .demo-link { text-align: left; }
.demo-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 8px; margin-bottom: 10px; }
.demo-card { background: var(--surface); border: 1px solid var(--line); border-radius: 8px; padding: 8px 10px; }
.demo-table-wrap { overflow-x: auto; }
#demo-table { background: var(--surface); border: 1px solid var(--line); border-radius: 8px; }
#demo-table th, #demo-table td { padding: 6px 8px; }
