/**
 * Shared Lab Notebook panel structure.
 *
 * Prefix-neutral CSS for app/views/partials/labs/notebook.php's
 * labs_notebook_panel() output. Owns LAYOUT/SPACING/TYPOGRAPHY only, via
 * the .labnb-* structural classes every lab's panel now carries in
 * addition to its own legacy class names. All COLOR comes from custom
 * properties, so each lab sets its own palette by defining these under
 * its own ".labnb--{idPrefix}" modifier in its own stylesheet - see
 * ".labnb--te" in thermal-energy.css for the reference example.
 *
 * Buttons and headings stay caller-owned (the $opts['classes'] map in
 * notebook.php) rather than styled here, because a lab may reuse its own
 * existing button/heading class (Thermal Energy's ".te-btn" and
 * ".te-panel-h" are also used elsewhere on that page) - this file must
 * never claim those names.
 *
 * Load this BEFORE a lab's own stylesheet, so the lab's rules win on
 * source order at equal specificity - this is what keeps Thermal Energy
 * pixel-identical: its existing .te-notebook/.te-panel-h/etc. rules still
 * apply and always win over anything defined here.
 */
.labnb-panel {
  --labnb-surface: #ffffff;
  --labnb-border: #d7e0ef;
  --labnb-ink: #15233c;
  --labnb-muted: #5c6b85;
  --labnb-accent: #2f6bff;

  margin-top: 16px;
  border-top: 1px solid var(--labnb-border);
  padding-top: 12px;
  color: var(--labnb-ink);
}

.labnb-label {
  font-weight: 600;
  color: var(--labnb-accent);
  letter-spacing: .09em;
  text-transform: uppercase;
  font-size: .74rem;
  margin-bottom: 6px;
}

.labnb-h {
  font-weight: 600;
  font-size: .95rem;
  margin: 12px 0 6px;
}

.labnb-props {
  font-size: .9rem;
  color: var(--labnb-ink);
}

.labnb-status {
  font-size: .8rem;
  color: var(--labnb-muted);
  margin-left: 8px;
}

.labnb-field { display: block; margin: 8px 0; }
.labnb-field label { display: block; font-weight: 600; font-size: .88rem; margin-bottom: 6px; }
.labnb-field textarea {
  width: 100%;
  min-height: 70px;
  border: 1px solid var(--labnb-border);
  border-radius: 10px;
  padding: 10px 12px;
  font-family: inherit;
  font-size: .92rem;
  background: var(--labnb-surface);
  color: var(--labnb-ink);
}

.labnb-log { list-style: none; padding: 0; margin: 0; }
.labnb-log li { padding: 6px 0; border-bottom: 1px dashed var(--labnb-border); font-size: .88rem; }

.labnb-list { list-style: none; display: flex; flex-direction: column; gap: 6px; margin-top: 8px; padding: 0; }
.labnb-list li { display: flex; align-items: center; gap: 8px; font-size: .86rem; }
