/* v44 guided elementary row operation trainer */
.gauss-step-trainer { margin: 1.25rem 0 1.75rem; border: 1px solid #cfe0f3; border-radius: 18px; background: linear-gradient(180deg,#f8fbff,#ffffff); box-shadow: 0 12px 34px rgba(15,76,129,.08); overflow: hidden;
}
.gauss-step-trainer header { padding: .95rem 1.1rem; background: #edf5ff; border-bottom: 1px solid #cfe0f3;
}
.gauss-step-trainer header strong { display: inline-block; background: #237a2c; color: #fff; border-radius: 999px; padding: .25rem .75rem; margin-right: .55rem;
}
.gauss-step-trainer form,
.gauss-start-panel { padding: 1rem 1.1rem; display: grid; gap: .75rem;
}
.gauss-step-trainer textarea { width: 100%; min-height: 5.5rem; border: 1px solid #bdd3ea; border-radius: 12px; padding: .65rem .75rem; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.gauss-op-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: .65rem;
}
.gauss-step-trainer input,
.gauss-step-trainer select { border: 1px solid #bdd3ea; border-radius: 12px; padding: .55rem .65rem;
}
.gauss-step-trainer button { border: 0; border-radius: 999px; padding: .72rem 1rem; background: #0f4c81; color: #fff; font-weight: 950; cursor: pointer;
}
.gauss-step-trainer button[data-gauss-step] { background: #237a2c; }
.gauss-output { padding: .4rem 1.1rem 1.2rem; }
.gauss-matrix { border-collapse: collapse; margin: .5rem 0 1rem; background: #fff; border: 1px solid #d8e6f4; border-radius: 12px; overflow: hidden;
}
.gauss-matrix td { padding: .45rem .7rem; border: 1px solid #e3edf8; text-align: right; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.gauss-matrix td.rhs { border-left: 4px solid #0f4c81; font-weight: 900;
}
.gauss-ok { background: #dcfce7; color: #14532d; border-radius: 12px; padding: .7rem .85rem; font-weight: 900;
}
.gauss-bad { background: #fee2e2; color: #7f1d1d; border-radius: 12px; padding: .7rem .85rem; font-weight: 900;
}
.gauss-hint { background: #fff7c2; border-left: 5px solid #d17b00; border-radius: 10px; padding: .55rem .75rem; font-weight: 850;
}
.gauss-solution { background: #edf5ff; border-left: 5px solid #0f4c81; border-radius: 10px; padding: .55rem .75rem; font-weight: 900;
}
