/* User Provided Stylesheet */

.attribute-meta {
    margin-top: -.75rem;
    margin-bottom: .75em;
    font-size: .75rem;
}

/* «Open in vLab» (_plugins/open-in-vlab.mjs): vLabs lablogo foran teksten og en
   stripe i vLabs farge (indigo, lys indigo i mørkt tema). Logoene er
   uendrede kopier fra portals (site/assets/ikoner/) i _static/labs/, her som
   data-URL-er så stilarket ikke er avhengig av hvor MyST legger filene;
   tests/test_vlab_logo.py sjekker at de er like. */
a.button.vlab-open{display:inline-flex;align-items:center;gap:.45em;padding:.35em .8em .35em .6em;background:transparent;color:inherit;font-weight:600;border:1px solid #d3dee7;border-left:4px solid #4a55c9;border-radius:4px 8px 8px 4px;text-decoration:none}
a.button.vlab-open:hover{background:#e8eafa}
a.button.vlab-open::before{content:"";display:inline-block;flex:none;width:1.05em;height:1.23em;background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA5MS43OCAxMDcuNTMiIHJvbGU9ImltZyIgYXJpYS1sYWJlbD0idkxhYiI+CiAgPCEtLSBMYWJsb2dvIGZvciB2TGFiOiBzaXJrZWxlbiBvZyBkaWFnb25hbGVuIGZyYSBtb2RlbGxvZ29lbmUsIHRvIGZlbHQgbWVkIHNwYWx0ZS4gU0lOVEVGLWJsw6Ugb2cgaW5kaWdvICh2TGFicyBmYXJnZSwgbWVsbG9tIHNpbnRlZi5lbmVyZ3ktYmzDpXR0IG9nIHhMYWJzIGxpbGxhIG9nIGlra2UgaSBwcm9maWxtYW51YWxlbjsgcmVzdGVuIGZyYSBTSU5URUZzIHByb2ZpbG1hbnVhbCkuIE1vdGl2ZXQgKG5vdGVib29rY2VsbGUgc29tIGtqw7hyZXM6IEp1cHl0ZXIpIGVyIGh1bGwgaSBmZWx0ZXQuIC0tPgogIDxkZWZzPjxtYXNrIGlkPSJ2bGFiLW0iIG1hc2tVbml0cz0idXNlclNwYWNlT25Vc2UiIHg9IjAiIHk9IjAiIHdpZHRoPSI5MiIgaGVpZ2h0PSIxMDgiPjxyZWN0IHdpZHRoPSI5MiIgaGVpZ2h0PSIxMDgiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNNTkgMTdoLTV2MjVoNU04MCAxN2g1djI1aC01IiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iNC41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiLz48cGF0aCBkPSJNNjMuNSAyMWwxNC41IDguNS0xNC41IDguNXoiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L21hc2s+PC9kZWZzPgogIDxwYXRoIGQ9Ik0xNC4zNiAxNy4xOUE1My43NyA1My43NyAwIDAgMCA5MC4zNSA5My4xOFoiIGZpbGw9IiMwMDNjNjUiLz4KICA8cGF0aCBkPSJNMTcuMTkgMTQuMzZBNTMuNzcgNTMuNzcgMCAwIDEgOTEuNzggMTUuNzRWODguOTVaIiBmaWxsPSIjNGE1NWM5IiBtYXNrPSJ1cmwoI3ZsYWItbSkiLz4KPC9zdmc+Cg==") center/contain no-repeat}
html.dark a.button.vlab-open{border-color:#1d4566;border-left-color:#a3aaf2}
html.dark a.button.vlab-open:hover{background:#1b2a5c}
html.dark a.button.vlab-open::before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA5MS43OCAxMDcuNTMiIHJvbGU9ImltZyIgYXJpYS1sYWJlbD0idkxhYiI+CiAgPCEtLSBMYWJsb2dvIGZvciB2TGFiIChtw7hyayBiYWtncnVubik6IHNpcmtlbGVuIG9nIGRpYWdvbmFsZW4gZnJhIG1vZGVsbG9nb2VuZSwgdG8gZmVsdCBtZWQgc3BhbHRlLiBWYXJtIGdyw6Ugb2cgbHlzIGluZGlnbyAodkxhYnMgZmFyZ2UsIG1lbGxvbSBzaW50ZWYuZW5lcmd5LWJsw6V0dCBvZyB4TGFicyBsaWxsYSBvZyBpa2tlIGkgcHJvZmlsbWFudWFsZW47IHJlc3RlbiBmcmEgU0lOVEVGcyBwcm9maWxtYW51YWwpLiBNb3RpdmV0IChub3RlYm9va2NlbGxlIHNvbSBrasO4cmVzOiBKdXB5dGVyKSBlciBodWxsIGkgZmVsdGV0LiAtLT4KICA8ZGVmcz48bWFzayBpZD0idmxhYi1tIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSIwIiB5PSIwIiB3aWR0aD0iOTIiIGhlaWdodD0iMTA4Ij48cmVjdCB3aWR0aD0iOTIiIGhlaWdodD0iMTA4IiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTU5IDE3aC01djI1aDVNODAgMTdoNXYyNWgtNSIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9IjQuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIi8+PHBhdGggZD0iTTYzLjUgMjFsMTQuNSA4LjUtMTQuNSA4LjV6IiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9tYXNrPjwvZGVmcz4KICA8cGF0aCBkPSJNMTQuMzYgMTcuMTlBNTMuNzcgNTMuNzcgMCAwIDAgOTAuMzUgOTMuMThaIiBmaWxsPSIjZWJlYmU2Ii8+CiAgPHBhdGggZD0iTTE3LjE5IDE0LjM2QTUzLjc3IDUzLjc3IDAgMCAxIDkxLjc4IDE1Ljc0Vjg4Ljk1WiIgZmlsbD0iI2EzYWFmMiIgbWFzaz0idXJsKCN2bGFiLW0pIi8+Cjwvc3ZnPgo=")}

/* «iLab Assistant» (_plugins/ask-ilab-assistant.mjs, åpner sidepanelet): samme knapp som «Open in vLab», med
   logoen til iLab Assistant og iLab-grønt (alt som er iLab er iLab-grønt på sintef.energy). */
a.button.ilab-ask{display:inline-flex;align-items:center;gap:.45em;padding:.35em .8em .35em .6em;background:transparent;color:inherit;font-weight:600;border:1px solid #d3dee7;border-left:4px solid #14b978;border-radius:4px 8px 8px 4px;text-decoration:none}
a.button.ilab-ask:hover{background:rgba(20,185,120,.12)}
a.button.ilab-ask .link-icon{display:none}
a.button.ilab-ask::before{content:"";display:inline-block;flex:none;width:1.2em;height:1.2em;background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHJvbGU9ImltZyIgYXJpYS1sYWJlbD0iU0lOVEVGIGlMYWIgQXNzaXN0YW50IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgdmlld0JveD0iMCAwIDEwMCAxMDAiPgogIDwhLS0gaUxhYiBBc3Npc3RhbnQ6IGlMYWItbG9nb2VuIG1lZCBlbiBzdmlydmVsIHJ1bmR0LCBpIGlMYWJzIG1lbGxvbWdyw7hubi4gS2xhc3NlbmUgKGhhbG8sIGJvYiwgc3BpbiwgZ3lybywgcmluZywgbWFyaykgZXIgZGUgc2FtbWUgc29tIGkgZGFnZW5zIEFzc2lzdGFudC1sb2dvLCBzw6UgdUxhYnMgQXNzaXN0TG9nbyBrYW4gYW5pbWVyZSBkZW4uIERlciByaW5nZW4gc2V0dGVzIGF2IENTUywgc2V0dGVzIGRldCBibMOlL2dyw6UgZmVsdGV0IGF2IENTUy12YXJpYWJlbGVuIGlsYWItYmFzZS4gLS0+CiAgPGNpcmNsZSBjbGFzcz0iaGFsbyIgY3g9IjUwIiBjeT0iNTAiIHI9IjQ2IiBmaWxsPSIjMTRiOTc4IiBvcGFjaXR5PSIwLjE2Ii8+CiAgPGcgY2xhc3M9ImJvYiI+CiAgICA8ZyBjbGFzcz0ic3BpbiI+CiAgICAgIDxjaXJjbGUgY2xhc3M9InJpbmciIGN4PSI1MCIgY3k9IjUwIiByPSIzOCIgcGF0aExlbmd0aD0iMTAwIiBmaWxsPSJub25lIiBzdHJva2U9IiMxNGI5NzgiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtZGFzaGFycmF5PSI0NiA4IDI0IDIyIi8+CiAgICA8L2c+CiAgICA8ZyBjbGFzcz0iZ3lybyI+CiAgICAgIDxlbGxpcHNlIGNsYXNzPSJyaW5nIGFjcm9zcyIgY3g9IjUwIiBjeT0iNTAiIHJ4PSIzOCIgcnk9IjEyIiBmaWxsPSJub25lIiBzdHJva2U9IiMxNGI5NzgiIHN0cm9rZS13aWR0aD0iMS42IiBvcGFjaXR5PSIwLjU1IiB0cmFuc2Zvcm09InJvdGF0ZSgtMjAgNTAgNTApIi8+CiAgICA8L2c+CiAgICA8ZyBjbGFzcz0ibWFyayIgdHJhbnNmb3JtPSJtYXRyaXgoMC41NCAwIDAgMC41NCAyMC45NiAyMC45NikiPgogICAgICA8ZGVmcz48bWFzayBpZD0iaWxhYi1hLW0iIG1hc2tVbml0cz0idXNlclNwYWNlT25Vc2UiIHg9IjAiIHk9IjAiIHdpZHRoPSI5MiIgaGVpZ2h0PSIxMDgiPjxyZWN0IHdpZHRoPSI5MiIgaGVpZ2h0PSIxMDgiIGZpbGw9IiNmZmYiLz48ZyB0cmFuc2Zvcm09Im1hdHJpeCgxLjIyIDAgMCAxLjIyIC0xNS4wNyAtNy4xNSkiPjxwYXRoIGQ9Ik02OC41IDE0LjVRNzEuNyAyOS4zIDg2LjUgMzIuNSA3MS43IDM1LjcgNjguNSA1MC41IDY1LjMgMzUuNyA1MC41IDMyLjUgNjUuMyAyOS4zIDY4LjUgMTQuNVoiLz48L2c+PC9tYXNrPjwvZGVmcz4KICAgICAgPHBhdGggZD0iTTE0LjM2IDE3LjE5QTUzLjc3IDUzLjc3IDAgMCAwIDkwLjM1IDkzLjE4WiIgZmlsbD0iIzAwM2M2NSIgc3R5bGU9ImZpbGw6dmFyKC0taWxhYi1iYXNlLCMwMDNjNjUpIi8+CiAgICAgIDxwYXRoIGQ9Ik0xNy4xOSAxNC4zNkE1My43NyA1My43NyAwIDAgMSA5MS43OCAxNS43NFY4OC45NVoiIGZpbGw9IiMxNGI5NzgiIG1hc2s9InVybCgjaWxhYi1hLW0pIi8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4K") center/contain no-repeat}
html.dark a.button.ilab-ask{border-color:#1d4566;border-left-color:#14b978}
html.dark a.button.ilab-ask::before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHJvbGU9ImltZyIgYXJpYS1sYWJlbD0iU0lOVEVGIGlMYWIgQXNzaXN0YW50IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgdmlld0JveD0iMCAwIDEwMCAxMDAiPgogIDwhLS0gaUxhYiBBc3Npc3RhbnQgKG3DuHJrIGJha2dydW5uKTogaUxhYi1sb2dvZW4gbWVkIGVuIHN2aXJ2ZWwgcnVuZHQsIGkgaUxhYnMgbWVsbG9tZ3LDuG5uLiBLbGFzc2VuZSAoaGFsbywgYm9iLCBzcGluLCBneXJvLCByaW5nLCBtYXJrKSBlciBkZSBzYW1tZSBzb20gaSBkYWdlbnMgQXNzaXN0YW50LWxvZ28sIHPDpSB1TGFicyBBc3Npc3RMb2dvIGthbiBhbmltZXJlIGRlbi4gRGVyIHJpbmdlbiBzZXR0ZXMgYXYgQ1NTLCBzZXR0ZXMgZGV0IGJsw6UvZ3LDpSBmZWx0ZXQgYXYgQ1NTLXZhcmlhYmVsZW4gaWxhYi1iYXNlLiAtLT4KICA8Y2lyY2xlIGNsYXNzPSJoYWxvIiBjeD0iNTAiIGN5PSI1MCIgcj0iNDYiIGZpbGw9IiMxNGI5NzgiIG9wYWNpdHk9IjAuMTYiLz4KICA8ZyBjbGFzcz0iYm9iIj4KICAgIDxnIGNsYXNzPSJzcGluIj4KICAgICAgPGNpcmNsZSBjbGFzcz0icmluZyIgY3g9IjUwIiBjeT0iNTAiIHI9IjM4IiBwYXRoTGVuZ3RoPSIxMDAiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzE0Yjk3OCIgc3Ryb2tlLXdpZHRoPSIzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1kYXNoYXJyYXk9IjQ2IDggMjQgMjIiLz4KICAgIDwvZz4KICAgIDxnIGNsYXNzPSJneXJvIj4KICAgICAgPGVsbGlwc2UgY2xhc3M9InJpbmcgYWNyb3NzIiBjeD0iNTAiIGN5PSI1MCIgcng9IjM4IiByeT0iMTIiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzE0Yjk3OCIgc3Ryb2tlLXdpZHRoPSIxLjYiIG9wYWNpdHk9IjAuNTUiIHRyYW5zZm9ybT0icm90YXRlKC0yMCA1MCA1MCkiLz4KICAgIDwvZz4KICAgIDxnIGNsYXNzPSJtYXJrIiB0cmFuc2Zvcm09Im1hdHJpeCgwLjU0IDAgMCAwLjU0IDIwLjk2IDIwLjk2KSI+CiAgICAgIDxkZWZzPjxtYXNrIGlkPSJpbGFiLWEtbSIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeD0iMCIgeT0iMCIgd2lkdGg9IjkyIiBoZWlnaHQ9IjEwOCI+PHJlY3Qgd2lkdGg9IjkyIiBoZWlnaHQ9IjEwOCIgZmlsbD0iI2ZmZiIvPjxnIHRyYW5zZm9ybT0ibWF0cml4KDEuMjIgMCAwIDEuMjIgLTE1LjA3IC03LjE1KSI+PHBhdGggZD0iTTY4LjUgMTQuNVE3MS43IDI5LjMgODYuNSAzMi41IDcxLjcgMzUuNyA2OC41IDUwLjUgNjUuMyAzNS43IDUwLjUgMzIuNSA2NS4zIDI5LjMgNjguNSAxNC41WiIvPjwvZz48L21hc2s+PC9kZWZzPgogICAgICA8cGF0aCBkPSJNMTQuMzYgMTcuMTlBNTMuNzcgNTMuNzcgMCAwIDAgOTAuMzUgOTMuMThaIiBmaWxsPSIjZWJlYmU2IiBzdHlsZT0iZmlsbDp2YXIoLS1pbGFiLWJhc2UsI2ViZWJlNikiLz4KICAgICAgPHBhdGggZD0iTTE3LjE5IDE0LjM2QTUzLjc3IDUzLjc3IDAgMCAxIDkxLjc4IDE1Ljc0Vjg4Ljk1WiIgZmlsbD0iIzE0Yjk3OCIgbWFzaz0idXJsKCNpbGFiLWEtbSkiLz4KICAgIDwvZz4KICA8L2c+Cjwvc3ZnPgo=")}

/* Bredere innholdskolonne på store skjermer. book-theme låser brødteksten til
   seks kolonner à maks 10ch (~60 tegn), så tabeller og plott blir smale med
   store tomme marger. Fra 1536px (temaets største brekkpunkt) får kolonnene
   vokse til 20ch; margene er faste, så sidemenyen (som bruker samme grid via
   xl:article-grid) og innholdsfortegnelsen til høyre ikke overlapper. Ellers
   samme linjer som temaets 1536px-regel (myst-theme.css, book-theme 1.4.1). */
@media (min-width: 1536px) {
  .article-grid,
  .xl\:article-grid {
    grid-template-columns:
      [screen-start] 0.5rem [screen-inset-start] 1fr [page-start] 3rem [page-inset-start] 9rem
      [body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(10ch, 20ch)
      [middle-start] minmax(10ch, 20ch) [gutter-left-end] minmax(10ch, 20ch) minmax(10ch, 20ch)
      [gutter-right-start] minmax(10ch, 20ch) [middle-end] minmax(10ch, 20ch) [body-inset-end] 1rem
      [body-end gutter-right-end] 3rem [body-outset-end] 13rem [page-inset-end] 3rem [page-end] 1fr
      [screen-inset-end] 0.5rem [screen-end];
  }
}

/* ---------- sintef.energy-palett ----------
   Samme tokens som landingssiden (landing/site/assets/enkel.css) og de andre
   tjenestene på sintef.energy: SINTEF-blå #003c65 som profilfarge, #4b96d1
   (blåfargen i sintef.energy-logoen) på linjer, kanter og fokus, navy
   bakgrunn i mørkt tema. Indigo er vLabs farge og brukes bare på vLab-knappen. Temaet (book-theme)
   setter `html.light`/`html.dark` og leser farger fra --myst-color-*, så de
   overstyres her. Stilarket lastes etter temaets, og `html:root`/`html.dark`
   gir høyere spesifisitet enn temaets `:root`/`.dark`. */
html:root {
  --se-bg: #ffffff;
  --se-surface: #f2f6f9;
  --se-surface-2: #e7f0f7;
  --se-line: #d5e0e9;
  --se-line-strong: #a9bccb;
  --se-fg: #10222f;
  --se-heading: #003c65;
  --se-dim: #4a6072;
  --se-link: #003c65;
  --se-brand: #003c65;
  --se-brand-fg: #ffffff;
  --se-accent: #4b96d1;
  --se-accent-soft: #e7f0f7;
  --se-code-bg: #f2f6f9;
  /* Modellfargen: SHOP-logoens grønne (--m-shop i vLab). ProdRisk-docs kan
     bruke sin rosa #ee3288 her, så nettstedene skilles fra hverandre. */
  --se-model: #77c043;
  --se-font: Calibri, Carlito, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  --myst-color-bg: var(--se-bg);
  --myst-color-bg-secondary: var(--se-surface);
  --myst-color-surface: var(--se-surface);
  --myst-color-surface-hover: var(--se-surface-2);
  --myst-color-text: var(--se-fg);
  --myst-color-text-secondary: var(--se-dim);
  --myst-color-text-tertiary: var(--se-dim);
  --myst-color-prose-body: var(--se-fg);
  --myst-color-border: var(--se-line);
  --myst-color-border-strong: var(--se-line-strong);
  --myst-color-link: var(--se-link);
  --myst-color-link-hover: #1f6aa5;
  --myst-color-link-underline: #4b96d1;
  --myst-color-active: #003c65;
  --myst-color-active-bg: rgba(0, 60, 101, .10);
  --myst-color-active-surface: #e6eef4;
  --myst-color-primary: #003c65;
  --myst-color-primary-hover: #002a48;
  --myst-color-focus-ring: #4b96d1;
  --myst-color-focus-outline: #9cc8ee;
  --myst-color-accent-text: #003c65;
  --myst-color-accent-surface: #e6eef4;
  --myst-color-accent-surface-border: #a9bccb;
  --myst-color-accent-surface-text: #003c65;
  --myst-color-inverse-bg: #003c65;
  --myst-color-inverse-text: #ffffff;
  --myst-color-code: #780050;
  --myst-color-info-bg: #e6eef4;
  --myst-color-info-text: #003c65;
  --myst-color-success-bg: #cdfae1;
  --myst-color-success-text: #004628;
  --myst-color-warning-bg: #f3ead0;
  --myst-color-warning-text: #5c4709;
  --myst-color-danger-bg: #efcecd;
  --myst-color-danger-text: #8a2a26;
  --myst-color-error-bg: #efcecd;
  --myst-color-error-text: #8a2a26;
}
html.dark {
  --se-bg: #001a2c;
  --se-surface: #032740;
  --se-surface-2: #04304e;
  --se-line: #1b4463;
  --se-line-strong: #3a6688;
  --se-fg: #e8f0f6;
  --se-heading: #ffffff;
  --se-dim: #a6bccc;
  --se-link: #64cbe6;
  --se-brand: #003c65;
  --se-brand-fg: #ffffff;
  --se-accent: #4b96d1;
  --se-accent-soft: #0b3a5c;
  --se-code-bg: #021f33;

  --myst-color-link-hover: #9cc8ee;
  --myst-color-link-underline: #4b96d1;
  --myst-color-active: #64cbe6;
  --myst-color-active-bg: rgba(75, 150, 209, .18);
  --myst-color-active-surface: #04304e;
  --myst-color-primary: #4b96d1;
  --myst-color-primary-hover: #9cc8ee;
  --myst-color-focus-ring: #4b96d1;
  --myst-color-focus-outline: #9cc8ee;
  --myst-color-accent-text: #e8f0f6;
  --myst-color-accent-surface: #04304e;
  --myst-color-accent-surface-border: #1b4463;
  --myst-color-accent-surface-text: #e8f0f6;
  --myst-color-inverse-bg: #e8f0f6;
  --myst-color-inverse-text: #001a2e;
  --myst-color-code: #ddbfd3;
  --myst-color-info-bg: #04304e;
  --myst-color-info-text: #9cc8ee;
  --myst-color-success-bg: #06444b;
  --myst-color-success-text: #8ae8bd;
  --myst-color-warning-bg: #3a3a22;
  --myst-color-warning-text: #e9d7a1;
  --myst-color-danger-bg: #4a1f2a;
  --myst-color-danger-text: #efcecd;
  --myst-color-error-bg: #4a1f2a;
  --myst-color-error-text: #efcecd;
}
body { font-family: var(--se-font); }
/* html:root må med: temaet setter fargen med klasser (.myst-fm-block-title, .prose h2), som ellers vinner. */
html:root article :is(h1, h2, h3, h4) { color: var(--se-heading); }

/* ---------- Tabeller: tydelige celler i begge temaer ----------
   Temaet gir tabellene bare tynne linjer i tekstfargen. Her: ramme rundt,
   overskriftsrad på flate med understrek, stripete rader og linjer mellom
   cellene, så cellene skiller seg fra brødteksten. */
article table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  margin: .75rem 0 1rem;
  font-size: .875rem;
  line-height: 1.35;
  border: 1px solid var(--se-line-strong);
  border-radius: 6px;
  overflow: hidden;
}
article table th,
article table td {
  padding: .4rem .6rem;
  vertical-align: top;
  text-align: left;
  border-right: 1px solid var(--se-line);
  border-bottom: 1px solid var(--se-line);
}
article table th:last-child,
article table td:last-child { border-right: 0; }
article table tr:last-child td { border-bottom: 0; }
article table th {
  background: var(--se-brand);
  color: var(--se-brand-fg);
  font-weight: 700;
  border-right-color: rgba(255, 255, 255, .18);
  border-bottom: 2px solid var(--se-brand);
  white-space: nowrap;
}
article table th a { color: inherit; }
article table tr:nth-child(even) td { background: var(--se-surface); }
article table tr:hover td { background: var(--se-accent-soft); }
article table td code,
article table th code { font-size: .85em; }
/* Tabeller med verktøyet (table-filter.mjs): stripene følger de synlige
   radene, ikke plassen i DOM-en, så filter og sidedeling ikke gir hull. */
article table.shop-tools tr:nth-child(even) td { background: transparent; }
article table.shop-tools tr.shop-stripe td { background: var(--se-surface); }
article table.shop-tools tr:hover td { background: var(--se-accent-soft); }
article table.shop-tools tr.shop-filters th { background: var(--se-surface-2); color: var(--se-fg); border-right-color: var(--se-line); border-bottom: 1px solid var(--se-line-strong); }
article table.shop-tools tr.shop-expanded td { background: var(--se-accent-soft); color: inherit; }
/* Beskrivelser og lister brytes, så tabellen ikke blir unødig bred. */
article table td { max-width: 36rem; }

/* ---------- Overskrifter: tydeligere seksjoner (bl.a. C++ API) ---------- */
article h2 {
  border-bottom: 2px solid var(--se-accent);
  padding-bottom: .2em;
  margin-top: 2.2em;
}
article h3 { margin-top: 1.8em; }
/* Funksjonssignaturene i C++ API-et er overskrifter med kode: en flate med
   stripe i profilfargen, så hver funksjon står tydelig fra forrige. */
article h3 > .heading-text > code:only-child,
article h3 > code:only-child {
  display: block;
  padding: .35em .6em;
  background: var(--se-code-bg);
  border-left: 4px solid var(--se-accent);
  border-radius: 0 4px 4px 0;
  font-size: .8em;
  font-weight: 600;
  white-space: pre-wrap;
  word-break: break-word;
}

/* Referansetabellene (verktøyet foran) får bruke høyremargen når siden ikke
   har innholdsfortegnelse til høyre (kommando-, objekt- og attributtabellen),
   så flere kolonner (f.eks. «Version added») synes uten å rulle. */
main:not(:has(nav.myst-outline)) article > .overflow-auto:has(table[class*="shop-page-"]) {
  grid-column: body-start / page-end;
}
article table[class*="shop-page-"] th,
article table[class*="shop-page-"] td { padding-left: .45rem; padding-right: .45rem; }
article table[class*="shop-page-"] td:first-child { white-space: nowrap; }
/* Overskriftene i tabellene med verktøy kan brytes («Default value», «Version
   added»), så attributtabellens ti kolonner får plass på vanlige skjermer. */
article table[class*="shop-page-"] tr:first-child th { white-space: normal; vertical-align: bottom; }

/* Tabellen i ferdig form fra første opptegning. Hele tabellen ligger i HTML-en
   (søk, docs-mcp), og table-filter.mjs deler den opp først etter hydreringen:
   Attributes var 150 000 px høy i 0,75 s før den falt sammen til ti rader.
   Her skjules radene etter første side og den utvidbare kolonnen, og plassen
   til verktøyet og filterraden holdes av, til skriptet setter .shop-tools.
   Klassene settes ved bygg (_plugins/shop-table-classes.mjs). Uten JavaScript
   vises hele tabellen. */
@media (scripting: enabled) {
  article table.shop-page-10:not(.shop-tools) tr:nth-child(n+12),
  article table.shop-page-25:not(.shop-tools) tr:nth-child(n+27),
  article table.shop-expand-last:not(.shop-tools) :is(th, td):last-child { display: none; }
  article div:has(+ .overflow-auto table[class*="shop-page-"]:not(.shop-tools)) { min-height: 6.6rem; }
  article .overflow-auto:has(table[class*="shop-page-"]:not(.shop-tools)) { padding-bottom: 2.6rem; }
}

/* iLab Assistant i sidepanel (_static/ask-panel.mjs). Innholdet er assistenten selv i en iframe. */
.ilab-panel-loader { display: none; }
.ilab-panel {
  position: fixed; top: 0; right: 0; bottom: 0; z-index: 60;
  width: min(380px, 100vw);
  background: var(--se-bg);
  border-left: 1px solid var(--se-line-strong);
  box-shadow: -4px 0 24px rgba(0, 40, 70, .16);
  transform: translateX(100%);
  visibility: hidden;
  transition: transform .2s ease, visibility .2s;
}
.ilab-panel.open { transform: none; visibility: visible; }
.ilab-panel iframe { display: block; width: 100%; height: 100%; border: 0; }
@media (prefers-reduced-motion: reduce) { .ilab-panel { transition: none; } }

/* Skjermbilder i brødteksten (getting_started.md): mindre, med ramme, og
   lenket til bildet i full størrelse. `.shot-half` er halv bredde; tre
   `.shot` i et `{grid}` blir små miniatyrer side om side. */
article .shot { margin: 1rem 0 1.25rem; }
article .shot img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--se-line-strong);
  border-radius: 6px;
  box-shadow: 0 1px 2px rgba(0, 40, 70, .06), 0 4px 16px rgba(0, 40, 70, .08);
  transition: border-color .15s;
}
article .shot a:hover img { border-color: var(--se-accent); }
article .shot p { margin: .4rem 0 0; font-size: .85rem; line-height: 1.4; color: var(--se-dim); }
article .shot-half { max-width: 50%; }
@media (max-width: 640px) { article .shot-half { max-width: 100%; } }


/* ---------- Notebookceller og kodeblokker ----------
   Kodecellene (og kodeblokker i teksten) på flate med ramme og en stripe i
   modellfargen; utdataene under med en nøytral stripe og innrykk, så det er
   tydelig hva som er kode og hva som er resultat. */
article .myst-code {
  background: var(--se-code-bg);
  border: 1px solid var(--se-line);
  border-left: 4px solid var(--se-model);
  border-radius: 2px 6px 6px 2px;
  box-shadow: none;
}
article .myst-code:hover { box-shadow: none; border-color: var(--se-line-strong); border-left-color: var(--se-model); }
/* Syntaksfargingen setter bakgrunnen som inline-stil (mørk grå i mørkt
   tema), så bare !important virker her. Flaten skal komme fra cellen. */
article .myst-code pre,
article .myst-code .myst-code-body { background: transparent !important; }
article .myst-code + .not-prose:has(*) {
  margin-top: -.5rem;
  padding: .5rem 0 .25rem .9rem;
  border-left: 4px solid var(--se-line);
}
article .myst-code + .not-prose .myst-jp-safe-output-text { color: var(--se-fg); }

/* Toppen: SINTEF-blå som båndet på de andre tjenestene, med sintef.energy-linja under. Fargene i temaet settes om
   bare her, så søkefeltet og knappene følger med. I begge temaer står logoen for mørk bakgrunn. */
html .myst-top-nav {
  background: #003c65;
  border-bottom: 2px solid #4b96d1;
  box-shadow: none;
  backdrop-filter: none;
  --myst-color-bg: transparent;
  --myst-color-text: #ffffff;
  --myst-color-text-secondary: #cfe0ec;
  --myst-color-text-tertiary: #cfe0ec;
  --myst-color-border: rgba(255, 255, 255, .35);
  --myst-color-border-strong: rgba(255, 255, 255, .35);
  --myst-color-surface: rgba(255, 255, 255, .08);
  --myst-color-surface-hover: rgba(255, 255, 255, .16);
  --myst-color-focus-outline: #9cc8ee;
}
html .myst-top-nav .myst-search-bar, html .myst-top-nav .myst-search-bar:hover { background: rgba(255, 255, 255, .08); color: #ffffff; }
html .myst-top-nav .myst-search-bar * { color: inherit; }
html .myst-top-nav .myst-home-link-logo img:first-child { display: none; }
html .myst-top-nav .myst-home-link-logo img:last-child { display: block; }

/* Menyen til venstre: valgt side med stripe i sintef.energy-blått. */
nav a[aria-current="page"] { box-shadow: inset 3px 0 0 var(--se-accent); color: var(--se-heading); font-weight: 600; }
