/* GeoTerva — the look of every module page (2026-09-28, user: "all modules to GeoTerva; no calculation changes,
   the interface only"). Loaded LAST on every module page by build/gen_pages.mjs, after the module's own stylesheet.
   Screen presentation only: no id, class, event, calculation, drawing or report code is touched. Everything is
   scoped to body.gt, so removing the class (or this file) gives back the GeoCalc look unchanged. The many
   !important are the answer to the ones already in tools/bearing/bearing.css.
   Palette and type are the GeoTerva home page's: Geo navy, Terva green, clay, loam on a light ground; the
   engineering drawings and the report paper keep their own faces (see "drawings and the report paper"). */

@media screen {
  :root{
    --gt-geo:#173f7c; --gt-geo-700:#12325f; --gt-geo-900:#0c2140; --gt-geo-50:#eaf0f8;
    --gt-terva:#4d7c1f; --gt-terva-600:#416b18; --gt-terva-50:#eef4e5;
    --gt-clay:#d68a2a; --gt-clay-700:#9c5c0e; --gt-clay-50:#fbf1e2; --gt-loam:#7b451c;
    --gt-ground:#f5f6f1; --gt-ink:#152033; --gt-ink-2:#34425a; --gt-muted:#5b6778; --gt-faint:#8b95a3;
    --gt-line:#e2e6dd; --gt-line-2:#eef1ea; --gt-field:#d3d9cc;
    --gt-display:"Lexend","Segoe UI",system-ui,sans-serif;
    --gt-body:"Source Sans 3","Segoe UI",system-ui,sans-serif;
    --gt-mono:"IBM Plex Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;
    --gt-shadow:0 18px 40px -30px rgba(12,33,64,.40);

    /* the studio's own tokens, re-pointed */
    --paper:#f5f6f1; --sheet:#ffffff; --rule:#e2e6dd; --rule-2:#eef1ea;
    --ink:#152033; --ink-2:#34425a; --ink-3:#5b6778; --ink-3-line:#8b95a3;
    --earth:#173f7c; --earth-soft:#eaf0f8; --hl:#eef4e5;
    --failure:#b3261e; --pass:#2f6b45; --caution:#8a5407;
    --font-text:"Source Sans 3","Segoe UI",system-ui,sans-serif;
    --font-mono:"IBM Plex Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;
    --radius-sm:8px; --radius-md:14px; --ctrl-h:38px; --head-h:64px;
    --shadow-sm:0 1px 2px rgba(12,33,64,.06); --shadow-md:0 18px 40px -30px rgba(12,33,64,.40);
    --ui-blue:#173f7c; --ui-blue-dark:#12325f; --ui-blue-soft:#eaf0f8; --ui-blue-line:#d9e0d2;
    --ui-panel:#ffffff; --ui-canvas:#f5f6f1; --ui-ink:#152033; --ui-muted:#5b6778;
  }

  html{background:var(--gt-ground) !important}
  html body.gt{background:var(--gt-ground) !important;color:var(--gt-ink);font-family:var(--gt-body);-webkit-font-smoothing:antialiased}
  body.gt :focus-visible{outline:3px solid var(--gt-clay) !important;outline-offset:2px}

  /* ================================================================ header */
  body.gt .run-head{position:sticky;top:0;height:var(--head-h);padding:0 18px 8px;gap:14px;background:#fff !important;
    border-bottom:0 !important;box-shadow:0 12px 26px -24px rgba(12,33,64,.45) !important;color:var(--gt-ink);font-family:var(--gt-body)}
  body.gt .gt-strata{position:absolute;left:0;right:0;bottom:0;width:100%;height:8px;display:block;pointer-events:none}
  body.gt .gt-brand{display:flex;align-items:center;gap:8px;flex:none;text-decoration:none}
  body.gt .gt-mark{height:34px;width:auto;display:block}
  body.gt .gt-word{height:19px;width:auto;display:block}
  body.gt .gt-div{width:1px;height:30px;background:var(--gt-line);flex:none}
  body.gt .gt-crumbs{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1 auto;overflow:hidden}
  body.gt .run-head .rh-section,body.gt .run-head .rh-section button{color:var(--gt-ink-2) !important;border-bottom:0 !important}
  body.gt .run-head .rh-section button{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 8px 0 4px;border-radius:12px;
    font:500 14px/1 var(--gt-display) !important;cursor:pointer !important;transition:background .12s ease}
  body.gt .run-head .rh-section button:hover,body.gt .run-head .rh-section button[aria-expanded="true"]{background:var(--gt-ground)}
  body.gt .gt-fam-ic{width:30px;height:30px;border-radius:8px;display:block;box-shadow:0 4px 10px -6px rgba(12,33,64,.5)}
  body.gt .gt-chev{width:16px;height:16px;color:var(--gt-faint)}
  body.gt .run-head .rh-sep{color:#c3cabc !important;font:300 22px/1 var(--gt-display)}
  body.gt .run-head .rh-tool{display:inline-flex;align-items:center;gap:10px;min-width:0;color:var(--gt-ink) !important;font-style:normal !important;overflow:hidden}
  body.gt .gt-mod-ic{width:38px;height:38px;border-radius:10px;flex:none;display:block;box-shadow:0 6px 14px -8px rgba(12,33,64,.55)}
  body.gt .gt-mod-t{display:flex;flex-direction:column;gap:3px;min-width:0}
  body.gt .gt-mod-t b{font:600 17px/1.1 var(--gt-display);color:var(--gt-geo);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body.gt .gt-mod-t small{font:400 12.5px/1.2 var(--gt-body);color:var(--gt-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body.gt .run-head .rh-right{gap:10px}
  body.gt .gt-pill{font:600 11px/1 var(--gt-display);letter-spacing:.08em;text-transform:uppercase;color:var(--gt-clay-700);
    background:var(--gt-clay-50);border:1px solid #f0d6ae;border-radius:999px;padding:6px 10px;white-space:nowrap}
  body.gt .rh-btn{height:38px !important;padding:0 12px !important;border-radius:10px !important;background:#fff !important;
    border:1.5px solid #c9d1c1 !important;color:var(--gt-geo) !important;font:600 13px/1 var(--gt-display) !important;box-shadow:none !important}
  body.gt .rh-btn:hover{border-color:var(--gt-geo) !important;background:#fff !important}
  body.gt select.rh-btn{padding-right:28px !important;appearance:none;-webkit-appearance:none;
    background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%23173f7c' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right 9px center/14px no-repeat !important}
  body.gt .gt-signin{font:600 14px/1 var(--gt-display);color:var(--gt-geo);text-decoration:none;white-space:nowrap;padding:0 4px}
  body.gt .gt-signin:hover{text-decoration:underline}

  /* the family menu */
  body.gt .gt-fam{position:fixed;inset:0;z-index:60;background:rgba(12,33,64,.10)}
  body.gt .gt-fam[hidden]{display:none}
  body.gt .gt-fam-card{position:absolute;top:calc(var(--head-h) - 2px);left:12px;width:min(440px,calc(100vw - 24px));background:#fff;
    border:1px solid var(--gt-line);border-radius:18px;box-shadow:0 30px 70px -32px rgba(12,33,64,.45);padding:10px;
    max-height:calc(100vh - var(--head-h) - 24px);max-height:calc(100dvh - var(--head-h) - 24px);overflow-y:auto;overscroll-behavior:contain}
  body.gt .gt-fam-h{display:flex;align-items:center;gap:12px;padding:8px 8px 12px;margin-bottom:6px;border-bottom:1px solid var(--gt-line-2)}
  body.gt .gt-fam-h img{width:44px;height:44px;border-radius:12px;flex:none}
  body.gt .gt-fam-h b{display:block;font:600 16px/1.2 var(--gt-display);color:var(--gt-geo)}
  body.gt .gt-fam-h span{font:400 13px/1.3 var(--gt-body);color:var(--gt-muted)}
  body.gt .gt-fam-it{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px;border-radius:12px;color:var(--gt-ink);text-decoration:none}
  body.gt .gt-fam-it:hover{background:var(--gt-ground)}
  body.gt .gt-fam-it.is-cur{background:var(--gt-geo-50)}
  body.gt .gt-fam-it img,body.gt .gt-fam-it .gt-ph,body.gt .gt-fam-h .gt-ph{width:40px;height:40px;border-radius:10px;display:grid;place-items:center}
  /* a family or a module without its icon yet: the home page's placeholder tile, coloured by group */
  body.gt .gt-ph{flex:none;display:grid;place-items:center;color:#fff;font:700 13px/1 var(--gt-display);font-style:normal;letter-spacing:.01em;
    background:linear-gradient(150deg,#a3683a,var(--gt-loam));box-shadow:0 1px 0 rgba(255,255,255,.4) inset,0 6px 14px -8px rgba(12,33,64,.45)}
  body.gt .gt-ph.g-ret{background:linear-gradient(150deg,#2f5f9f,var(--gt-geo))}
  body.gt .gt-ph.g-ground{background:linear-gradient(150deg,#6d9b3a,var(--gt-terva))}
  body.gt .gt-fam-ic.gt-ph{font-size:11px}
  body.gt .gt-mod-ic.gt-ph{font-size:14px}
  body.gt .gt-fam-h .gt-ph{width:44px;height:44px;border-radius:12px;font-size:15px}
  body.gt .gt-fam-it b{display:block;font:600 14.5px/1.25 var(--gt-display)}
  body.gt .gt-fam-it.is-cur b{color:var(--gt-geo)}
  body.gt .gt-fam-it small{display:block;font:400 13px/1.35 var(--gt-body);color:var(--gt-muted)}
  body.gt .gt-fam-it em{font:600 11px/1 var(--gt-display);letter-spacing:.08em;text-transform:uppercase;font-style:normal;color:var(--gt-terva)}
  body.gt .gt-fam-all{display:block;margin:6px 8px 4px;padding-top:10px;border-top:1px solid var(--gt-line-2);font:600 13.5px/1 var(--gt-display);color:var(--gt-terva);text-decoration:none}
  body.gt .gt-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:70;background:var(--gt-geo-900);color:#fff;
    font:500 14px/1.3 var(--gt-body);padding:11px 16px;border-radius:12px;box-shadow:0 16px 36px -18px rgba(12,33,64,.6)}
  body.gt .gt-toast[hidden]{display:none}

  /* ================================================================ the two panes */
  body.gt .studio{gap:16px !important}
  body.gt .studio-stage,body.gt .studio-panel{background:#fff !important;border:1px solid var(--gt-line) !important;border-radius:18px !important;
    box-shadow:var(--gt-shadow) !important}
  body.gt .studio-canvas{background:#fff !important;border:0 !important;box-shadow:none !important;border-radius:14px !important}

  /* the view switch above the drawing: a segmented control on the ground colour */
  body.gt .viewbar{background:var(--gt-ground) !important;border:1px solid var(--gt-line) !important;border-radius:14px !important;
    padding:4px !important;box-shadow:none !important;gap:2px !important;min-height:0 !important}
  body.gt .viewbar button{background:none !important;background-image:none !important;border:0 !important;box-shadow:none !important;
    height:36px;padding:0 16px !important;border-radius:10px !important;font:500 14px/1 var(--gt-display) !important;letter-spacing:0 !important;
    text-transform:none !important;color:var(--gt-muted) !important}
  body.gt .viewbar button:hover{color:var(--gt-geo) !important}
  body.gt .viewbar button.active{background:#fff !important;color:var(--gt-geo) !important;font-weight:600 !important;
    box-shadow:0 1px 2px rgba(12,33,64,.10),0 0 0 1px var(--gt-line) !important}
  body.gt .viewbar .view-hint{font:500 11px/1 var(--gt-mono) !important;letter-spacing:.12em;color:var(--gt-faint) !important;padding-right:8px}

  /* the "Show" / "Capacity" chip bar under it */
  body.gt .rw-pgrp{background:#fff !important;border:1px solid var(--gt-line) !important;border-radius:10px !important;box-shadow:none !important}
  body.gt .rw-pgrp-h{font:600 12px/14px var(--gt-display) !important;color:var(--gt-ink-2) !important}
  body.gt .rw-seg button{font:500 12px/1 var(--gt-body)}
  body.gt .rw-seg button[aria-pressed="true"]{background:var(--gt-geo) !important;color:#fff !important}
  body.gt .rw-seg button[aria-pressed="true"]+button{border-left-color:var(--gt-geo) !important}
  body.gt .rw-cb{border-color:#b9c2b0}
  body.gt .rw-lay[aria-pressed="true"] .rw-cb{background:var(--gt-terva) !important;border-color:var(--gt-terva) !important}
  body.gt .rw-ptip{background:var(--gt-geo-900) !important}

  /* ================================================================ tabs of the right pane: document tabs */
  body.gt .studio-tabs{display:flex !important;gap:2px !important;padding:0 12px !important;margin:0 !important;background:#fff !important;
    border:0 !important;border-bottom:1px solid var(--gt-line) !important;border-radius:18px 18px 0 0 !important;box-shadow:none !important}
  body.gt .studio-tabs button{flex:1 1 auto;background:none !important;background-image:none !important;box-shadow:none !important;
    border:0 !important;border-bottom:3px solid transparent !important;border-radius:0 !important;margin:0 0 -1px !important;
    height:auto !important;padding:17px 8px 13px !important;font:500 14.5px/1 var(--gt-display) !important;letter-spacing:0 !important;
    text-transform:none !important;color:var(--gt-muted) !important}
  body.gt .studio-tabs button:hover{color:var(--gt-geo) !important}
  body.gt .studio-tabs button[aria-selected="true"]{color:var(--gt-geo) !important;font-weight:600 !important;border-bottom-color:var(--gt-terva) !important}

  /* ================================================================ Model tab: the input sections */
  body.gt .tool-tabpage[data-tabpage="model"] .input-section{border:1px solid var(--gt-line) !important;border-radius:16px !important;
    background:#fff !important;box-shadow:0 1px 2px rgba(12,33,64,.04) !important}
  body.gt .tool-tabpage[data-tabpage="model"] .input-section:not(.is-collapsed){border-color:#cfd7c6 !important;box-shadow:0 14px 30px -26px rgba(12,33,64,.45) !important}
  body.gt .tool-tabpage[data-tabpage="model"] .input-section > .input-title{background:#fff !important;color:var(--gt-geo) !important;
    font:600 16px/1.2 var(--gt-display) !important;letter-spacing:-.005em !important;text-transform:none !important;
    padding:15px 42px 13px 16px !important;border-bottom:1px solid var(--gt-line-2) !important}
  body.gt .tool-tabpage[data-tabpage="model"] .input-section > .input-title::before{display:none !important}
  body.gt .tool-tabpage[data-tabpage="model"] .input-section > .input-title::after{color:var(--gt-faint) !important}
  body.gt .tool-tabpage[data-tabpage="model"] .input-section.is-collapsed{background:var(--gt-ground) !important;border-color:var(--gt-line) !important;box-shadow:none !important}
  body.gt .tool-tabpage[data-tabpage="model"] .input-section.is-collapsed > .input-title{background:transparent !important;color:var(--gt-ink-2) !important;font-weight:500 !important}

  /* sub-headings inside a section: the home page's eyebrow */
  body.gt .tool-tabpage[data-tabpage="model"] .input-section .gc-subhead{background:none !important;border:0 !important;padding:6px 0 0 !important;margin-top:12px !important}
  body.gt .gc-subhead b{font:600 11.5px/1.2 var(--gt-display) !important;letter-spacing:.12em !important;text-transform:uppercase;color:var(--gt-terva) !important}
  body.gt .gc-subhead small{font:400 12.5px/1.3 var(--gt-body) !important;color:var(--gt-faint) !important;letter-spacing:0}

  /* choices: a segmented control */
  body.gt .gc-method-row{gap:0 !important;padding:3px;background:var(--gt-ground);border:1px solid var(--gt-line);border-radius:12px}
  body.gt .gc-method-btn{border:0 !important;background:none !important;box-shadow:none !important;border-radius:9px !important;
    padding:9px 8px !important;font:500 13.5px/1.15 var(--gt-display) !important;color:var(--gt-muted) !important}
  body.gt .gc-method-btn:hover{color:var(--gt-geo) !important}
  body.gt .gc-method-btn.active{background:#fff !important;color:var(--gt-geo) !important;font-weight:600 !important;
    box-shadow:0 1px 2px rgba(12,33,64,.12),0 0 0 1.5px var(--gt-geo) !important}

  /* input rows */
  body.gt .gc-input-row{font-size:14px !important;color:var(--gt-ink)}
  body.gt .gc-input-row .sym{font:600 14.5px/1.2 var(--gt-body) !important;color:var(--gt-ink) !important}
  body.gt .gc-input-row .desc{font-size:14px !important;color:var(--gt-ink-2) !important}
  body.gt .gc-input-row .unit{font:400 13px/1 var(--gt-mono);color:var(--gt-muted)}
  body.gt .gc-input-row input,body.gt .rw-store input[type=text],body.gt .rw-store-sel,body.gt .rw-rep-f input,body.gt .rw-rep-f textarea{
    background:#fff !important;border:1.5px solid var(--gt-field) !important;border-radius:10px !important;box-shadow:none !important;color:var(--gt-ink) !important}
  body.gt .gc-input-row input{font:500 14px/1 var(--gt-mono) !important;padding:9px 10px !important}
  body.gt .gc-input-row input:focus,body.gt .rw-store input[type=text]:focus,body.gt .rw-rep-f input:focus,body.gt .rw-rep-f textarea:focus{
    border-color:var(--gt-clay) !important;box-shadow:0 0 0 3px rgba(214,138,42,.22) !important;outline:none !important}
  body.gt .lq-locked input:not([type=checkbox]):not(#lqModelName),body.gt .lq-locked select{background:var(--gt-ground) !important;color:var(--gt-faint) !important}
  body.gt .gc-section-note,body.gt .rw-store-note,body.gt .rw-rep-note{font-size:13.5px !important;line-height:1.5 !important;color:var(--gt-muted) !important}
  body.gt .gc-mini-field{background:var(--gt-ground) !important;border:1px solid var(--gt-line) !important;border-radius:10px !important}
  body.gt .gc-mini-field span{font-size:12px !important;color:var(--gt-muted) !important}
  body.gt .gc-mini-field b{font:600 13.5px var(--gt-mono) !important;color:var(--gt-geo) !important}
  body.gt .rw-store-row label{font:600 14px var(--gt-display);color:var(--gt-ink-2)}
  body.gt .gc-help-btn{border-color:var(--gt-geo) !important;color:var(--gt-geo) !important;background:#fff !important;box-shadow:none !important}
  /* the (?) of the retaining walls on every help and every note of the modules (2026-09-30, user: first sheet pile on
     sand, then "apply it to all modules"): a ring with a bold ?; inside an option button and in the view bars a little
     smaller. A note (span.rw-pinfo) keeps its tip on hover; only its drawn (i) gives way to the ? */
  body.gt .gc-help-q{border:1.6px solid var(--gt-geo) !important;font:800 12px/1 "Inter","Segoe UI",Arial,sans-serif !important;opacity:1 !important}
  body.gt .gc-help-q:hover{background:var(--gt-geo-50) !important}
  body.gt .gc-help-q.gc-help-inline{width:18px;height:18px;min-width:18px;border-width:1.4px !important;font-size:11px !important}
  body.gt span.rw-pinfo{width:18px !important;height:18px !important;min-width:18px;flex:none;box-sizing:border-box;align-items:center;justify-content:center;
    border:1.4px solid var(--gt-geo) !important;border-radius:50%;background:#fff;color:var(--gt-geo) !important;vertical-align:middle}
  body.gt span.rw-pinfo > svg{display:none !important}
  body.gt span.rw-pinfo::before{content:"?";content:"?" / "";font:800 11px/1 "Inter","Segoe UI",Arial,sans-serif}
  body.gt span.rw-pinfo:hover,body.gt span.rw-pinfo:focus-visible{background:var(--gt-geo-50)}

  /* ================================================================ buttons */
  body.gt .btn{background:#fff !important;background-image:none !important;border:1.5px solid #c9d1c1 !important;color:var(--gt-geo) !important;
    border-radius:11px !important;box-shadow:none !important;font:600 13.5px/1 var(--gt-display) !important;letter-spacing:0 !important;text-transform:none !important}
  body.gt .btn:hover:not(:disabled){border-color:var(--gt-geo) !important;background:#fff !important;transform:none}
  body.gt .btn-primary{background:var(--gt-terva) !important;border-color:var(--gt-terva) !important;color:#fff !important;
    box-shadow:0 10px 22px -14px rgba(77,124,31,.85) !important}
  body.gt .btn-primary:hover:not(:disabled){background:var(--gt-terva-600) !important;border-color:var(--gt-terva-600) !important}
  body.gt .btn:disabled{background:var(--gt-ground) !important;border-color:var(--gt-line) !important;color:var(--gt-faint) !important;box-shadow:none !important}
  body.gt .rw-store-quiet{color:var(--gt-muted) !important}

  /* ================================================================ the Analyze bar */
  body.gt .rw-analyze{border:0 !important;border-radius:16px !important;padding:12px 14px !important;background:var(--gt-geo) !important;
    background-image:none !important;box-shadow:0 18px 34px -22px rgba(12,33,64,.8) !important;overflow:hidden;position:sticky}
  body.gt .rw-analyze::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;
    background:linear-gradient(90deg,#6f9a3a 0 25%,#d68a2a 25% 50%,#9a5a26 50% 75%,#6e3a17 75% 100%);opacity:.95}
  body.gt .rw-analyze.is-ok{background:#2f5f19 !important}
  body.gt .rw-analyze.is-warn{background:#8f4f0c !important}
  body.gt .rw-analyze.is-info{background:#2b3d56 !important}
  body.gt .rw-analyze.is-fail{background:#9c211a !important}
  body.gt .rw-analyze .rw-analyze-txt b,body.gt .rw-analyze .rw-analyze-txt b.is-ok,body.gt .rw-analyze .rw-analyze-txt b.is-warn{
    font:600 14px/1.25 var(--gt-display) !important;letter-spacing:0 !important;text-transform:none !important;color:#fff !important}
  body.gt .rw-analyze .rw-analyze-txt span{font:400 13px/1.4 var(--gt-body) !important;color:rgba(255,255,255,.82) !important}
  body.gt .rw-analyze-txt::before{background-color:rgba(255,255,255,.14) !important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.45) !important}
  body.gt .rw-analyze .rw-analyze-btns .btn{background:#fff !important;border:0 !important;color:var(--gt-geo) !important;height:40px;padding:0 16px !important}
  body.gt .rw-analyze .rw-analyze-btns .btn-primary{background:var(--gt-terva) !important;color:#fff !important;box-shadow:0 0 0 2px rgba(255,255,255,.9) !important;padding:0 22px !important}
  body.gt .rw-analyze .rw-analyze-btns .btn-primary:hover:not(:disabled){background:var(--gt-terva-600) !important}
  body.gt .rw-analyze.is-ok #bcEditBtn{color:#2f5f19 !important}
  body.gt .rw-analyze.is-warn #bcWarnBtn{color:#8f4f0c !important}
  body.gt .rw-analyze-btns .btn:disabled{background:rgba(255,255,255,.2) !important;color:rgba(255,255,255,.7) !important;box-shadow:none !important}

  /* the warnings bar at the top of Results, Calculations and Report: in the look of the Analyze bar */
  body.gt .rw-wbar{background:#8f4f0c !important;background-image:none !important;border-radius:16px !important;box-shadow:0 14px 30px -22px rgba(12,33,64,.8) !important}
  body.gt .rw-wbar.is-stop{background:#9c211a !important}
  body.gt .rw-wbar-txt b{font:600 14px/1.25 var(--gt-display) !important;letter-spacing:0 !important;text-transform:none !important}
  body.gt .rw-wbar-txt span{font:400 13px/1.4 var(--gt-body) !important}
  body.gt .rw-wbar-btn{font:600 13px/1 var(--gt-display) !important;color:#8f4f0c !important;border-radius:10px !important}
  body.gt .rw-wbar.is-stop .rw-wbar-btn{color:#9c211a !important}

  /* ================================================================ Results tab */
  body.gt .rw-block{border:1px solid var(--gt-line) !important;border-radius:16px !important;background:#fff !important;padding:14px 16px !important;box-shadow:none !important}
  body.gt .rw-block-h{font:600 11.5px/1.2 var(--gt-display) !important;letter-spacing:.12em !important;color:var(--gt-terva) !important}
  body.gt .bc-gn-h{font:600 11px/1.2 var(--gt-display) !important;letter-spacing:.12em !important;color:var(--gt-faint) !important}
  body.gt .lq-cell{border-radius:12px !important}
  body.gt .lq-cell .v{font-family:var(--gt-mono) !important;font-weight:600 !important}
  body.gt .lq-cell .l{font-size:12px !important;color:var(--gt-muted) !important}
  body.gt .lq-cell.bc-g{background:var(--gt-geo-50) !important}
  body.gt .lq-cell.bc-g .v{color:var(--gt-geo) !important}
  body.gt .lq-cell.bc-n{background:#f1eff8 !important}
  body.gt .bc-badge{font:600 11px/1.4 var(--gt-display) !important;letter-spacing:.06em !important}
  body.gt table.rw-table th{font:600 12px/1.3 var(--gt-display) !important;color:var(--gt-muted) !important;letter-spacing:.02em}
  body.gt table.rw-table td{font-size:14px;color:var(--gt-ink)}
  body.gt table.rw-table td.txt{font-family:var(--gt-body);font-weight:600;color:var(--gt-ink-2)}
  body.gt .bc-v,body.gt .lq-rt .num{font-family:var(--gt-mono) !important}

  /* ================================================================ Calculations and Theory tabs */
  body.gt #rwCalc .rwc-ch,body.gt .tz-ch{border:1px solid var(--gt-line) !important;border-radius:16px !important;background:#fff !important;box-shadow:none !important}
  body.gt #rwCalc .rwc-ch-n,body.gt .tz-ch-n{border-radius:9px !important;background:var(--gt-ground) !important;color:var(--gt-geo) !important;
    font:600 13px/1 var(--gt-mono) !important;box-shadow:inset 0 0 0 1px var(--gt-line)}
  body.gt #rwCalc .rwc-ch.open .rwc-ch-n,body.gt .tz-ch.open .tz-ch-n{background:var(--gt-geo) !important;color:#fff !important;box-shadow:none}
  body.gt #rwCalc .rwc-ch-t,body.gt .tz-ch-t{font:600 15px/1.3 var(--gt-display) !important;color:var(--gt-ink) !important}
  body.gt #rwCalc .bc-given .gf-lab,body.gt .gf-lab{font:600 11px/1.2 var(--gt-display) !important;letter-spacing:.12em !important;color:var(--gt-terva) !important}
  body.gt .tool-panel .gf-answer,body.gt .studio-tabpage[data-tabpage="calc"] .gf-answer{border-color:var(--gt-line) !important;background:var(--gt-terva-50) !important}
  body.gt .n-src{color:var(--gt-loam) !important}
  body.gt .tz-h4,body.gt .th-table-cap{font-family:var(--gt-display) !important;color:var(--gt-geo) !important}
  body.gt .tz-eqn-row{border-color:var(--gt-line) !important;background:var(--gt-ground) !important}
  body.gt .tz-all{color:var(--gt-geo) !important;font-family:var(--gt-display) !important}

  /* ================================================================ Report tab (the tool around the paper, not the report) */
  body.gt .rw-rep-card{border:1px solid var(--gt-line) !important;border-radius:16px !important;background:#fff !important;box-shadow:none !important}
  body.gt .rw-rep-title{background:#fff !important;color:var(--gt-geo) !important;font:600 16px/1.2 var(--gt-display) !important;letter-spacing:0 !important;
    text-transform:none !important;border-bottom:1px solid var(--gt-line-2) !important}
  body.gt .rw-rep-title::before{display:none !important}
  body.gt .rw-rep-f > span{font:600 13px/1.3 var(--gt-display) !important;color:var(--gt-ink-2) !important}
  body.gt .rw-rep-bar{background:var(--gt-ground) !important;border:1px solid var(--gt-line) !important;border-radius:14px !important}
  body.gt .rw-rep-bar-t b{font-family:var(--gt-display) !important;color:var(--gt-geo) !important}
  body.gt .rw-report-preview{border-color:var(--gt-line) !important}

  /* ================================================================ dialogs, help, toasts */
  body.gt .lq-dlg,body.gt .gc-help-card{border-radius:18px !important;border:1px solid var(--gt-line) !important;box-shadow:0 30px 70px -32px rgba(12,33,64,.5) !important}
  body.gt .lq-dlg-h{background:#fff !important;border-bottom:1px solid var(--gt-line-2) !important}
  body.gt .lq-dlg-h b{font:600 16px/1.3 var(--gt-display) !important;letter-spacing:0 !important;text-transform:none !important;color:var(--gt-geo) !important}
  body.gt .gc-help-kicker{font:600 11.5px/1.2 var(--gt-display) !important;letter-spacing:.12em !important;color:var(--gt-terva) !important}
  body.gt #gcHelpTitle{font-family:var(--gt-display) !important;color:var(--gt-geo) !important}
  body.gt .lq-toast{background:var(--gt-geo-900) !important;border-radius:12px !important;font-family:var(--gt-body) !important}

  /* ================================================================ drawings and the report paper keep their own type
     The engineering figures and the report preview are measured for the studio's original faces (a thin "=" or
     "−" of the new body face fades at drawing sizes), so both keep them: the tokens are put back inside. */
  body.gt svg,body.gt .rw-report-preview{--font-text:Arial,Helvetica,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono",Consolas,"SF Mono",Menlo,monospace;
    --font-math:Arial,Helvetica,"Segoe UI",sans-serif}
  body.gt svg{font-family:Arial,Helvetica,"Segoe UI",sans-serif}
  body.gt .rw-report-preview{font-family:Arial,Helvetica,"Segoe UI",sans-serif}

  /* remaining tints of the old blue */
  body.gt .rw-pchips.rw-pbar{background:#fff !important;border-color:var(--gt-line-2) !important}
  body.gt .rw-lay{--lay-bd:var(--gt-line);background:#fff !important}
  body.gt .rw-pinfo{border-color:var(--gt-field) !important;color:var(--gt-muted) !important}
  body.gt .bc-badge.info{background:var(--gt-geo-50) !important;color:var(--gt-geo) !important;border-color:#cddaec !important}
  body.gt #rwCalc .rwc-fx,body.gt .tool-panel .gf-block{border-color:var(--gt-line) !important;background:#fff !important}
  body.gt #rwCalc .rwc-eq{background:var(--gt-ground) !important}
  body.gt #rwCalc .rwc-row.rwc-eq .rwc-m{color:var(--gt-geo) !important}
  body.gt #rwCalc .rwc-row.rwc-val{background:var(--gt-terva-50) !important;border-top-color:#d6e3c4 !important}
  body.gt #rwCalc .rwc-row.rwc-val .rwc-m{color:var(--gt-ink) !important}
  body.gt #rwCalc .rwc-step-b,body.gt #rwCalc .bc-given,body.gt #rwCalc .rwc-ch-body{border-color:var(--gt-line) !important}
  body.gt .tz-toc{background:var(--gt-ground) !important;border-color:var(--gt-line) !important;border-radius:14px !important}
  body.gt .tz-ch-btn{background:#fff !important;background-image:none !important}
  body.gt .tz-toc-h b{font:600 11px/1.2 var(--gt-display) !important;letter-spacing:.12em !important;color:var(--gt-terva) !important}
  body.gt .tz-toc-list button:hover{background:#fff !important}
  body.gt .tz-toc-list .t{font-size:13px !important;color:var(--gt-ink-2) !important}
  body.gt .tz-toc-list .is-open .n,body.gt .tz-th .tz-toc-list .is-open .t,body.gt .tz-toc-list .is-open .t{color:var(--gt-geo) !important}
  body.gt .tz-all{border-color:var(--gt-field) !important;color:var(--gt-geo) !important;border-radius:8px !important;font:600 12px var(--gt-display) !important}
  body.gt .gc-help-backdrop{background:rgba(12,33,64,.38) !important}
  body.gt .gc-help-close{background:var(--gt-ground) !important;border-color:var(--gt-line) !important;color:var(--gt-ink-2) !important}
  /* the help windows of the retaining walls (2026-09-30, user: "go over the pictures of the explanation boxes"):
     white panels, the sketches of draw/retaining_help_figs.js at their own size, the captions a size larger, the
     note in the Geo navy */
  body.gt .rwh .gc-help-lead{font:400 14px/1.55 var(--gt-body) !important;color:var(--gt-ink-2) !important}
  body.gt .rwh .gc-help-diagram-card,body.gt .rwh .gc-help-single-diagram{background:#fff !important;border:1px solid var(--gt-line) !important;border-radius:14px !important}
  body.gt .rwh .gc-help-single-diagram{padding:14px 16px 12px !important}
  body.gt .rwh .gc-help-diagram-card{padding:12px !important}
  body.gt .rwh .gc-help-diagram-title{font:600 13px/1.3 var(--gt-display) !important;color:var(--gt-geo) !important;margin:0 0 6px !important}
  body.gt .rwh .gc-help-diagram-card p{font:400 13px/1.55 var(--gt-body) !important;color:var(--gt-muted) !important;margin:8px 2px 0 !important}
  body.gt .rwh .gc-help-rule{border-left:3px solid var(--gt-geo) !important;background:var(--gt-ground) !important;color:var(--gt-ink-2) !important;font:400 13px/1.55 var(--gt-body) !important;border-radius:0 10px 10px 0 !important}
  body.gt .rwh .gc-help-rule b{color:var(--gt-geo) !important}
  body.gt .rwh .rwh-legend{display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:center;margin:8px 0 0;font:400 12.5px/1.3 var(--gt-body);color:var(--gt-muted)}
  body.gt .rwh .rwh-legend i{display:inline-block;width:18px;height:10px;margin-right:6px;vertical-align:-1px;border-radius:2px;box-sizing:border-box}
  .gc-help-fig{display:block;width:100%;height:auto;margin:0 auto}
  body.gt .rw-report-preview.rw-rep-paper{background:var(--gt-ground) !important;border:1px solid var(--gt-line) !important;border-radius:16px !important}
  body.gt .rw-rep-bar{padding:10px 12px !important;align-items:center}
  body.gt .rw-rep-bar-t span{font-size:12.5px !important;color:var(--gt-muted) !important}

  /* ================================================================ every module family (2026-09-28)
     The studios share most classes; these are the ones the other families add. */

  /* the input cards: their content keeps a gutter in every module, not only where bearing.css gives one */
  body.gt .tool-tabpage[data-tabpage="model"] .input-section{overflow:hidden;margin-bottom:16px}
  body.gt .tool-tabpage[data-tabpage="model"] .input-section > :not(.input-title){margin-left:14px !important;margin-right:14px !important;max-width:calc(100% - 28px);box-sizing:border-box}
  body.gt .tool-tabpage[data-tabpage="model"] .input-section > :last-child{margin-bottom:14px !important}

  /* the title card of the surcharge studios */
  body.gt .studio-title{background:#fff !important;border:1px solid var(--gt-line) !important;border-radius:18px !important;box-shadow:var(--gt-shadow) !important}
  body.gt .studio-title::before,body.gt .studio-title::after{display:none !important}
  body.gt .studio-title h1{font:600 22px/1.2 var(--gt-display) !important;color:var(--gt-geo) !important;letter-spacing:-.01em}
  body.gt .studio-title .method,body.gt .studio-title p{color:var(--gt-muted) !important}
  body.gt .readoutbar,body.gt .studio-readout{background:var(--gt-ground) !important;border-color:var(--gt-line) !important;border-radius:12px !important}
  body.gt .readoutbar .ro{background:#fff !important;border-color:var(--gt-line) !important}
  body.gt .readoutbar .ro-val,body.gt .ro-val{color:var(--gt-geo) !important;font-family:var(--gt-mono) !important}

  /* segmented controls of every kind */
  body.gt .seg,body.gt .calc-mode-toggle,body.gt .rw-calc-toggle{background:var(--gt-ground) !important;border:1px solid var(--gt-line) !important;border-radius:12px !important;padding:3px !important;box-shadow:none !important}
  body.gt .seg button,body.gt .calc-mode-toggle button{background:none !important;background-image:none !important;border:0 !important;box-shadow:none !important;border-radius:9px !important;
    color:var(--gt-muted) !important;font-family:var(--gt-display) !important;font-weight:500 !important;text-transform:none !important;letter-spacing:0 !important}
  body.gt .seg button:hover,body.gt .calc-mode-toggle button:hover{color:var(--gt-geo) !important}
  body.gt .seg button.active,body.gt .seg button.on,body.gt .seg button[aria-pressed="true"],body.gt .seg button[aria-selected="true"],
  body.gt .calc-mode-toggle button.active,body.gt .calc-mode-toggle button.on,body.gt .calc-mode-toggle button[aria-pressed="true"]{
    background:#fff !important;color:var(--gt-geo) !important;font-weight:600 !important;box-shadow:0 1px 2px rgba(12,33,64,.12),0 0 0 1.5px var(--gt-geo) !important}
  body.gt .rw-seg{border-color:var(--gt-field) !important}
  body.gt .gc-switch{background:var(--gt-terva) !important}
  body.gt input:not(:checked) + .gc-switch,body.gt .gc-switch.off{background:#c9d1c1 !important}

  /* forms */
  body.gt #app select,body.gt #app input[type=text],body.gt #app input[type=number]{border-color:var(--gt-field) !important}
  body.gt #app select:focus,body.gt #app input[type=text]:focus,body.gt #app input[type=number]:focus{border-color:var(--gt-clay) !important;box-shadow:0 0 0 3px rgba(214,138,42,.22) !important;outline:none !important}
  body.gt .lq-bh-add,body.gt .st-add{border-color:var(--gt-field) !important;color:var(--gt-geo) !important;font-family:var(--gt-display) !important}
  body.gt .st-item,body.gt .load-item,body.gt .lq-bhrow,body.gt .lq-grid-wrap{border-color:var(--gt-line) !important}
  body.gt .gc-draft{background:var(--gt-ground) !important;border-color:var(--gt-line) !important;border-radius:12px !important}
  body.gt .gc-draft-h,body.gt .gc-dt-title{font-family:var(--gt-display) !important;color:var(--gt-terva) !important;letter-spacing:.12em !important}
  body.gt .gc-dt-head{color:var(--gt-muted) !important}

  /* the slope-stability drawing toolbar */
  body.gt .sc-tools{background:var(--gt-ground) !important;border-color:var(--gt-line) !important;border-radius:12px !important}
  body.gt .sc-tb,body.gt .sc-bulb{border-color:var(--gt-field) !important;font-family:var(--gt-display) !important}
  body.gt .sc-tb.active{background:var(--gt-geo) !important;border-color:var(--gt-geo) !important;color:#fff !important}
  body.gt .sc-sep{background:var(--gt-line) !important}
  body.gt .sc-chip.is-on{background:var(--gt-geo-50) !important;border-color:var(--gt-geo) !important;color:var(--gt-geo) !important}
  body.gt .sc-dlg-h{background:#fff !important;background-image:none !important;border-bottom:1px solid var(--gt-line-2) !important}
  body.gt .sc-dlg-h b{font-family:var(--gt-display) !important;color:var(--gt-geo) !important;text-transform:none !important;letter-spacing:0 !important}
  body.gt .sc-dlg,body.gt .lq-dlg-f,body.gt .sc-dlg-f{border-color:var(--gt-line) !important}

  /* results */
  body.gt .result-card-pro{border-color:var(--gt-line) !important;border-radius:14px !important}
  body.gt .result-card-pro .val{color:var(--gt-geo) !important;font-family:var(--gt-mono) !important}
  body.gt .result-group-title,body.gt .rw-sub-h,body.gt .rwc-tbl-h{font-family:var(--gt-display) !important;color:var(--gt-terva) !important;letter-spacing:.1em}
  body.gt .rw-dc-row{border-color:var(--gt-line) !important}
  body.gt .lq-calc-pick{background:var(--gt-ground) !important;border-color:var(--gt-line) !important;border-radius:12px !important}
  body.gt .lq-cell.heave{background:var(--gt-geo-50) !important}
  body.gt td.fs,body.gt .lq-cell .v.fs{color:var(--gt-geo)}
  body.gt #app th,body.gt #app th.l{background:var(--gt-ground) !important;border-color:var(--gt-line) !important;color:var(--gt-ink-2) !important}
  body.gt #app td{border-color:var(--gt-line)}

  /* calculations: contents, chapters, steps, equations */
  body.gt .rwc-toc,body.gt .th-toc,body.gt .lq-th-toc{background:var(--gt-ground) !important;border-color:var(--gt-line) !important;border-radius:14px !important}
  body.gt .rwc-all,body.gt .th-all{border-color:var(--gt-field) !important;color:var(--gt-geo) !important;font-family:var(--gt-display) !important;border-radius:8px !important}
  body.gt .rwc-toc .n,body.gt .th-toc .n,body.gt .lq-th-toc .n{color:var(--gt-faint) !important}
  body.gt .rwc-toc .t,body.gt .th-toc .t,body.gt .lq-th-toc .t{color:var(--gt-ink-2) !important}
  body.gt .rwc-ch-btn,body.gt .th-ch-btn{background:#fff !important;background-image:none !important}
  body.gt .rwc-sn,body.gt .th-ch-n{background:var(--gt-ground) !important;color:var(--gt-geo) !important;box-shadow:inset 0 0 0 1px var(--gt-line);font-family:var(--gt-mono) !important;border-radius:8px !important}
  body.gt .th-ch.open .th-ch-n{background:var(--gt-geo) !important;color:#fff !important;box-shadow:none}
  body.gt .th-ch,body.gt .rwc-step,body.gt .rwc-row,body.gt .rwc-tbl-s,body.gt .blk,body.gt .figure,body.gt .manual-step{border-color:var(--gt-line) !important}
  body.gt .th-ch{border-radius:16px !important}
  body.gt .rwc-st,body.gt .th-ch-t{font-family:var(--gt-display) !important}
  body.gt .step-h,body.gt .sec-h{font-family:var(--gt-display) !important;color:var(--gt-geo) !important}
  body.gt .eq,body.gt .th-fx,body.gt .th-eqn-row,body.gt .formula-box,body.gt .case-head{background:var(--gt-ground) !important;border-color:var(--gt-line) !important}
  body.gt .eq-val,body.gt .th-fx-row,body.gt .th-fx-foot,body.gt .formula-subgrid{border-color:var(--gt-line) !important}
  body.gt #app mtext.u,body.gt .rwc-m .u{color:var(--gt-muted) !important}

  /* theory */
  body.gt .theory-kicker{font-family:var(--gt-display) !important;color:var(--gt-terva) !important;letter-spacing:.12em}
  body.gt .theory-callout,body.gt .wall-eq,body.gt .worked-eq{background:var(--gt-ground) !important;border-left-color:var(--gt-terva) !important}
  body.gt .wall-eq,body.gt .wall-eq math,body.gt .wall-eq math *{color:var(--gt-geo) !important}
  body.gt .wall-theory-card,body.gt .theory-figure,body.gt .theory-source-figure,body.gt .theory-case,body.gt .worked-example,body.gt .worked-row,
  body.gt .resultant-sketch,body.gt .placeholder-card,body.gt .theory-caption,body.gt .th-key{border-color:var(--gt-line) !important}
  body.gt .wall-theory-card h4,body.gt .theory-case h4,body.gt #rwTheory h4{font-family:var(--gt-display) !important;color:var(--gt-geo) !important}
  body.gt .worked-no,body.gt .case-tag{background:var(--gt-geo) !important}
  body.gt .theory-callout b{color:var(--gt-ink)}
  body.gt .wall3d-title{color:var(--gt-geo) !important;font-family:var(--gt-display) !important}
  body.gt #studioFig{border-color:var(--gt-line-2) !important}

  /* ================================================================ narrower screens */
  @media (max-width:1180px){
    body.gt .gt-mod-t small,body.gt .gt-pill{display:none}
  }
  @media (max-width:860px){
    body.gt .gt-word,body.gt .gt-div,body.gt .gt-fam-name,body.gt .rh-sep{display:none}
    body.gt .gt-fam-card{left:12px}
  }
  @media (max-width:640px){
    :root{--head-h:60px}
    body.gt .run-head{padding:0 12px 8px !important;gap:8px !important}
    body.gt .run-head .rh-tool{display:inline-flex !important}
    body.gt .gt-mark{height:30px}
    body.gt .gt-mod-ic{width:34px;height:34px}
    body.gt .gt-mod-t b{font-size:16px}
    body.gt .gt-signin{display:none}
    body.gt .studio-tabs{padding:0 4px !important;overflow-x:auto}
    body.gt .studio-tabs button{padding:15px 7px 12px !important;font-size:13.5px !important}
    body.gt .viewbar button{padding:0 11px !important}
  }
}
