#content.gp-page {
  --gp-ink: #172b44;
  --gp-muted: #506681;
  --gp-paper: #fff;
  --gp-tint: #f2f6fc;
  --gp-line: #d2dfef;
  --gp-brand: #2458a0;
  --gp-focus: #275cb0;
  --gp-error: #a83237;
  color: var(--gp-ink);
  overflow-anchor: none;
}
@media (prefers-color-scheme: dark) {
  #content.gp-page {
    --gp-ink: #edf4ff;
    --gp-muted: #b8c9de;
    --gp-paper: #162639;
    --gp-tint: #203449;
    --gp-line: #3d5874;
    --gp-brand: #2a59a2;
    --gp-focus: #9cc8ff;
    --gp-error: #ffafb1;
    background: #112032;
    border-color: var(--gp-line);
    color-scheme: dark;
  }
}
#content.gp-page [hidden] { display: none !important; }
#content.gp-page .gp-crumb { display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: .75rem; color: var(--gp-muted); font-size: .84rem; }
#content.gp-page a { color: var(--gp-focus); text-decoration: underline; text-underline-offset: .15em; }
#content.gp-page .gp-hero {
  padding: clamp(1.1rem, 3vw, 2rem);
  margin: 0;
  border-radius: .9rem;
  background: linear-gradient(120deg,#183356,#274e7b);
  color: #e8f1ff;
}
#content.gp-page .gp-hero h1 { color: #fff; font-size: clamp(1.9rem,5vw,3.15rem); margin: 0 0 .5rem; line-height: 1.12; word-break: keep-all; }
#content.gp-page .gp-hero p { margin: 0; padding: 0; max-width: 47ch; font-size: 1rem; color: inherit; word-break: keep-all; }
#content.gp-page .site-title-ad { min-height: 100px; }
#content.gp-page .gp-panel {
  min-width: 0;
  background: var(--gp-paper);
  border: 1px solid var(--gp-line);
  border-radius: .8rem;
  padding: clamp(.95rem, 3vw, 1.55rem);
  margin: 1rem 0;
  overflow-wrap: anywhere;
  scroll-margin-top: 5rem;
}
#content.gp-page :is(h2, h3, legend, strong, dt) { color: var(--gp-ink); font-weight: 760; }
#content.gp-page h2 { font-size: clamp(1.22rem,3vw,1.65rem); line-height: 1.32; margin: 0 0 .65rem; }
#content.gp-page h2:not(:first-child) { margin-top: 1.45rem; }
#content.gp-page h3 { font-size: 1.12rem; margin: .85rem 0 .45rem; }
#content.gp-page .gp-panel p { margin: .45rem 0 .8rem; }
#content.gp-page .gp-note { color: var(--gp-muted); font-size: .88rem; }
#content.gp-page fieldset { min-width: 0; }
#content.gp-page form { margin: 0; }
#content.gp-page legend { padding: 0 .25rem; }
#content.gp-page .gp-modes { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .45rem; margin-bottom: .85rem; }
#content.gp-page .gp-modes label, #content.gp-page .gp-check { display: flex; gap: .4rem; align-items: center; }
#content.gp-page .gp-modes label {
  min-height: 44px;
  padding: .45rem .55rem;
  border: 1px solid var(--gp-line);
  border-radius: .45rem;
  background: var(--gp-tint);
  color: var(--gp-ink);
  font-weight: 700;
  font-size: .89rem;
  margin: 0;
  cursor: pointer;
}
#content.gp-page .gp-modes label:has(:checked) { outline: 2px solid var(--gp-focus); outline-offset: -2px; }
#content.gp-page .gp-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .58rem .75rem; }
#content.gp-page label:not(.gp-check) { color: var(--gp-ink); }
#content.gp-page .gp-fields label, #content.gp-page #gp-basis-field, #content.gp-page #gp-table-field {
  display: grid;
  gap: .25rem;
  margin: 0;
  min-width: 0;
}
#content.gp-page #gp-basis-field { margin: 0 0 .7rem; }
#content.gp-page :is(input[type=text], select, textarea) {
  appearance: auto;
  width: 100%;
  min-height: 44px;
  color: var(--gp-ink);
  background: var(--gp-tint);
  border: 1px solid var(--gp-line);
  border-radius: .42rem;
  padding: .45rem .6rem;
  font: inherit;
  font-size: 1rem;
}
#content.gp-page textarea { resize: vertical; }
#content.gp-page :is(input[type=radio], input[type=checkbox], input[type=range]) { appearance: auto; accent-color: var(--gp-focus); }
#content.gp-page :is(input[type=radio], input[type=checkbox]) { width: 1rem; height: 1rem; flex: none; }
#content.gp-page input[type=range] { width: 100%; min-height: 38px; }
#content.gp-page .gp-check { min-height: 40px; color: var(--gp-ink); margin: .2rem 0; }
#content.gp-page .gp-subpanel { margin-top: .8rem; padding: .65rem .75rem; border: 1px solid var(--gp-line); border-radius: .52rem; }
#content.gp-page .gp-subpanel[open] > summary { margin-bottom: .6rem; }
#content.gp-page .gp-actions, #content.gp-page .gp-chips { display: flex; gap: .4rem; flex-wrap: wrap; margin-top: .65rem; }
#content.gp-page button {
  width: auto;
  height: auto;
  min-height: 44px;
  white-space: normal;
  line-height: 1.35;
  padding: .48rem .65rem;
  font: inherit;
  font-weight: 720;
  color: var(--gp-ink) !important;
  background: var(--gp-tint);
  border: 1px solid var(--gp-line);
  border-radius: .48rem;
  box-shadow: none;
}
#content.gp-page button.gp-primary { background: var(--gp-brand); border-color: transparent; color: #fff !important; }
#content.gp-page button:not(:disabled):hover { border-color: var(--gp-focus); }
#content.gp-page button:disabled { cursor: default; opacity: .55; }
#content.gp-page :focus-visible { outline: 2px solid var(--gp-focus); outline-offset: 3px; }
#content.gp-page .gp-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .5rem; }
#content.gp-page .gp-summary > div { display: grid; align-content: center; background: var(--gp-tint); border: 1px solid var(--gp-line); border-radius: .55rem; padding: .65rem .75rem; }
#content.gp-page .gp-summary .gp-main-result { grid-column: 1/-1; color: #e9f2ff; background: #1a3b67; padding: .75rem .9rem; }
#content.gp-page .gp-main-result strong { color: #fff; font-size: clamp(1.9rem,6vw,3rem); line-height: 1.2; }
#content.gp-page .gp-stat { margin: .8rem 0 .55rem; display: grid; gap: .3rem .75rem; grid-template-columns: repeat(2,minmax(0,1fr)); }
#content.gp-page .gp-stat > div { display: flex; flex-direction: column; border-top: 1px solid var(--gp-line); padding: .45rem 0; }
#content.gp-page .gp-stat dt { font-size: .88rem; }
#content.gp-page .gp-stat dd { margin: .1rem 0 0; color: var(--gp-muted); }
#content.gp-page #gp-error { color: var(--gp-error); font-weight: 700; }
#content.gp-page :is([role=status], [role=alert]):empty { display: none; }
#content.gp-page canvas { display: block; width: 100%; max-width: 100%; height: 235px; margin: .3rem 0; background: var(--gp-paper); }
#content.gp-page #gp-first-chart { height: 160px; }
#content.gp-page #gp-chart-point { display: block; color: var(--gp-muted); }
#content.gp-page details > summary { min-height: 40px; padding: .35rem 0; font-weight: 740; cursor: pointer; }
#content.gp-page .gp-article details { border-top: 1px solid var(--gp-line); }
#content.gp-page :is(ul, ol) { padding-inline-start: 1.2rem; }
#content.gp-page .gp-table { margin: .65rem 0; }
#content.gp-page table { width: 100%; table-layout: fixed; color: var(--gp-ink); margin: 0; }
#content.gp-page :is(th, td) { padding: .42rem .4rem; border-bottom: 1px solid var(--gp-line); text-align: left; font-size: .87rem; }
#content.gp-page th { background: var(--gp-tint); font-weight: 750; }
#content.gp-page meter { width: 100%; accent-color: var(--gp-focus); }
@media (max-width: 470px) {
  #content.gp-page { padding: 14px; }
  #content.gp-page .gp-modes { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #content.gp-page .gp-modes label { font-size: .8rem; padding-inline: .4rem; gap: .3rem; }
  #content.gp-page .gp-modes label span { word-break: keep-all; overflow-wrap: anywhere; }
  #content.gp-page .gp-fields label { font-size: .9rem; }
  #content.gp-page .gp-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #content.gp-page .gp-summary > :last-child { grid-column: 1/-1; }
  .gp-body #sidebar .modern-sidebar-toggle { position: static; }
}
@media (prefers-reduced-motion: reduce) {
  #content.gp-page * { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
