/* SPDX-License-Identifier: Apache-2.0 */
.formula-library {
  margin-block: var(--fc-space-12);
  padding: var(--fc-space-8);
  border: 1px solid var(--fc-line-subtle);
  border-radius: var(--fc-radius-md);
  background: var(--fc-bg-surface);
}
.formula-library summary { cursor: pointer; font-weight: 600; padding-block: var(--fc-space-4); }
.formula-library input[type="search"] {
  width: 100%;
  min-width: 0;
  min-height: var(--fc-hit-min);
  margin-block: var(--fc-space-8);
}
.formula-categories { display: flex; flex-wrap: wrap; gap: var(--fc-space-4); }
.formula-categories button { font-size: 12px; padding: var(--fc-space-4) var(--fc-space-8); }
.formula-categories button[aria-pressed="true"] {
  background: var(--fc-bg-selected);
  border-color: var(--fc-focus-ring);
}
.formula-library-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(64px, 1fr));
  gap: var(--fc-space-4);
  max-height: 200px;
  overflow-y: auto;
  margin-block: var(--fc-space-8);
}
.formula-library-grid button {
  min-height: var(--fc-hit-min);
  overflow-wrap: anywhere;
  font: 19px var(--fc-font-math);
  padding: var(--fc-space-4);
}
.formula-library-grid p { grid-column: 1 / -1; font-size: 13px; }
.formula-library-help { font-size: 12px; line-height: 1.6; color: var(--fc-text-secondary); margin: 0; }
#history, #history li, [data-history="1"] {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
#latex-source { min-width: 0; max-width: 100%; }
.formula-template__mark { font: 23px var(--fc-font-math); }
.formula-template--function > .formula-template__mark { font-style: normal; }
.formula-template__fixed-power { align-self: flex-start; font: 17px var(--fc-font-math); }
.formula-template--exp > .formula-template__left,
.formula-template--tenpower > .formula-template__left { margin-top: -12px; }
.formula-template--exp > .formula-template__left input,
.formula-template--tenpower > .formula-template__left input { font-size: 17px; }
.formula-template--logbase { display: inline-grid; grid-template-columns: auto auto; align-items: center; }
.formula-template--logbase > .formula-template__mark { grid-column: 1; grid-row: 1; }
.formula-template--logbase > .formula-template__right { grid-column: 1; grid-row: 2; margin-top: -8px; }
.formula-template--logbase > .formula-template__right input { font-size: 15px; }
.formula-template--logbase > .formula-template__left { grid-column: 2; grid-row: 1 / 3; }
.formula-template--reciprocal { flex-direction: column; align-items: center; }
.formula-template--reciprocal > .formula-template__mark {
  width: 100%;
  text-align: center;
  border-bottom: 1.5px solid var(--fc-text-primary);
}
.formula-template--structured {
  display: inline-flex;
  align-items: center;
  padding: 5px;
  gap: 8px;
  border: 1px solid var(--fc-line-subtle);
  border-radius: var(--fc-radius-md);
}
.formula-structured-sign { font: 25px var(--fc-font-math); flex-shrink: 0; }
.formula-structured-fields { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.formula-structured-field { display: inline-flex; flex-direction: column; gap: 2px; align-items: center; }
.formula-field-caption { font: 10px var(--fc-font-ui); color: var(--fc-text-secondary); max-width: 130px; }
.formula-template--structured[data-layout="matrix"] > .formula-structured-fields {
  display: grid;
  grid-template-columns: repeat(var(--matrix-columns), minmax(0, auto));
  border-inline: 2px solid var(--fc-text-primary);
  padding-inline: 5px;
}
.formula-template--structured[data-layout="largeop"] > .formula-structured-sign { font-size: 42px; }
.formula-template--structured[data-layout="vector"] > .formula-structured-fields { border-inline: 2px solid var(--fc-text-primary); padding-inline: 5px; }
.formula-template--structured[data-layout="matrix"] > .formula-structured-sign,
.formula-template--structured[data-layout="vector"] > .formula-structured-sign { display: none; }
.formula-template--structured[data-layout="matrix"] .formula-field-caption,
.formula-template--structured[data-layout="vector"] .formula-field-caption,
.formula-natural .formula-field-caption { display: none; }
.formula-natural { border: 0; padding: 2px; }
.formula-natural > .formula-structured-fields { flex-wrap: nowrap; gap: 5px; }
.formula-op-stack, .formula-limit-stack { display: inline-flex; flex-direction: column; align-items: center; }
.formula-op-stack > .formula-structured-sign { font-size: 42px; line-height: 1.2; }
.formula-op-stack > .formula-structured-field input,
.formula-op-lower input { font-size: 14px; min-height: 28px; }
.formula-op-lower { display: inline-flex; align-items: center; gap: 2px; white-space: nowrap; }
.formula-notation { font: 22px var(--fc-font-math); white-space: nowrap; }
.formula-template--structured[data-layout="cases"] > .formula-structured-fields {
  display: grid;
  grid-template-columns: auto auto;
}
.formula-template--structured[data-layout="cases"] > .formula-structured-sign { font-size: 60px; }
.formula-template--structured[data-layout="matrix"] > .formula-structured-fields {
  border-block: 2px solid transparent;
  border-radius: 3px;
}
.formula-template--structured[data-layout="matrix"] input { max-width: 180px; }
.formula-template.formula-selected {
  outline: 2px solid var(--fc-focus-ring);
  outline-offset: 2px;
  background: var(--fc-bg-selected);
}
.formula-selection-all .formula-slot { background: var(--fc-bg-selected); }
.formula-template--structured[data-layout="matrix"] {
  display: inline-grid;
  grid-template-columns: auto;
}
.formula-matrix-controls { display: flex; flex-wrap: wrap; gap: 3px; }
.formula-matrix-controls button {
  min-height: 26px;
  padding: 2px 6px;
  font: 11px var(--fc-font-ui);
}
.formula-matrix-controls button:disabled { opacity: 0.5; }
#formula-editor { overflow-x: auto; max-width: 100%; }
@media (max-width: 600px) {
  .formula-template--structured { max-width: 100%; }
  .formula-template--structured[data-layout="matrix"] input { max-width: 70px; }
  .formula-template--structured[data-layout="matrix"] .formula-structured-fields { gap: 3px; }
}
