.math2-workbench { margin: 2rem 0; padding: 1.5rem; border: 1px solid var(--calc-border-default, #64748b); border-radius: var(--calc-radius-lg, 1rem); min-width: 0; background: var(--calc-bg-card, #161b22); color: var(--calc-text-primary, #f8fafc); font-family: var(--calc-font-body, 'Inter', sans-serif); line-height: 1.5; }
.math2-workbench > h2 { margin: 0 0 .75rem; }
.math2-editor { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: 1rem; margin-top: 1rem; }
.math2-editor fieldset { margin: 0; padding: .75rem; border: 1px solid var(--calc-border-default, #64748b); border-radius: .5rem; min-width: 0; }
.math2-field { min-width: 0; }
.math2-field label, .math2-saved label { display: block; margin: .5rem 0 .25rem; }
.math2-workbench input, .math2-workbench select, .math2-workbench textarea { width: 100%; max-width: 100%; box-sizing: border-box; border: 1px solid var(--calc-border-default, #64748b); border-radius: var(--calc-radius-md, .4rem); padding: .65rem; color: inherit; background: var(--calc-bg-input, #0d1117); font: inherit; }
.math2-workbench select option { color: #0f172a; background: #fff; }
.math2-workbench :focus-visible { outline: 3px solid var(--calc-cyan, #22d3ee); outline-offset: 3px; }
.math2-controls { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1.5rem 0 .5rem; }
.math2-controls .action-btn, .math2-editor .action-btn { border: 1px solid var(--calc-border-default, #64748b); border-radius: .5rem; padding: .6rem 1rem; color: inherit; background: transparent; cursor: pointer; }
.math2-editor .action-btn { margin: .5rem .5rem 0 0; }
.math2-status { min-height: 1.5rem; margin: .75rem 0; }
.math2-tables { overflow-x: auto; }
.math2-tables table { width: 100%; border-collapse: collapse; margin: 1rem 0; }
.math2-tables th, .math2-tables td { padding: .45rem .75rem; border-bottom: 1px solid var(--calc-border-default, #64748b); text-align: start; font-variant-numeric: tabular-nums; }
.math2-tables caption { text-align: start; font-weight: 600; margin-bottom: .5rem; }
.math2-saved, .math2-settings { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)); gap: .75rem; align-items: center; margin: 1rem 0; }
.math2-inspector { display: grid; grid-template-columns: minmax(8rem,1fr) minmax(10rem,2fr); gap: .75rem; align-items: center; margin: 1rem 0; }
.math2-inspector output { grid-column: 1 / -1; overflow-wrap: anywhere; }
.math2-matrix { overflow-x: auto; }
.math2-matrix-row { display: grid; gap: .5rem; }
.math2-matrix-row > legend, .math2-matrix-row > button { grid-column: 1 / -1; }
.math2-matrix-row .math2-field { min-width: 6rem; }
.math2-plot { max-width: 100%; overflow-x: auto; }
.math2-plot svg { display: block; width: 100%; min-width: 36rem; max-height: 20rem; color: var(--calc-cyan, #22d3ee); font-size: 13px; }
.math2-plot svg text { fill: var(--calc-text-primary, #f8fafc); }
.math2-workbench .result-card, .math2-workbench table { color: var(--calc-text-primary, #f8fafc); }
.math2-workbench [aria-invalid="true"] { border: 2px solid #e11d48; }
@media (max-width: 480px) { .math2-workbench { padding: .85rem; } .math2-editor { display: block; } .math2-field { margin: .5rem 0; } }
@media print { .math2-controls, .math2-editor .action-btn, .math2-saved { display: none; } .math2-tables { overflow: visible; } }
