/* Calculator modes (plans/calculator.md step 1): mode switch + Standard / Scientific keypad. Tokens only. */
.calc-modes { display: flex; gap: 4px; padding: 3px; border: 1px solid var(--line); border-radius: var(--r-md); margin: 8px 0; }
.calc-mode { flex: 1; border: 0; background: none; color: inherit; padding: 6px 4px; border-radius: var(--r-md); font-size: var(--fs-small); cursor: pointer; }
.calc-mode[aria-selected="true"] { background: var(--blue); color: var(--card); }
.calc-pad[hidden], [data-calc-ind][hidden] { display: none; }
.calc-screen { border: 1px solid var(--line); border-radius: var(--r-md); padding: 8px 10px; text-align: right; margin-bottom: 8px; background: var(--card); }
.calc-expr { color: var(--text-muted); font-size: var(--fs-small); min-height: 1.2em; overflow-wrap: anywhere; }
.calc-val { font-size: var(--fs-h2); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.calc-keys { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; }
.calc-sci { display: none; grid-template-columns: repeat(5, 1fr); gap: 4px; margin-bottom: 4px; }
.calc-pad.calc-is-sci .calc-sci { display: grid; }
.calc-k { border: 1px solid var(--line); background: var(--card); color: inherit; border-radius: var(--r-md); padding: 10px 0; font-size: var(--fs-small); cursor: pointer; }
.calc-num { font-variant-numeric: tabular-nums; }
.calc-op, .calc-eq { color: var(--blue); }
.calc-eq { background: var(--blue); color: var(--card); }
@media (min-width: 900px) { .calc-pad.calc-is-sci { display: grid; grid-template-columns: 5fr 4fr; gap: 6px; } .calc-pad.calc-is-sci .calc-screen { grid-column: 1 / -1; } .calc-pad.calc-is-sci .calc-sci { margin: 0; } }
/* Industry calculators (plans/calculator.md steps 2-4): calc-ind.js. Tokens only. */
.ci-on .qc-in, .ci[hidden] { display: none; }
.ci-in { margin-top: 8px; }
.ci-shape { display: contents; }
.ci-len { display: flex; gap: 4px; }
.ci-len input { flex: 1; min-width: 0; }
.ci-len select { flex: 0 0 auto; width: auto; }
.qc:has(.ci-on) > .qc-out.qc-empty { display: none; }
.ci-est { gap: 6px; align-items: center; flex-wrap: wrap; margin-top: 6px; }
