/* TRB STEP stiffness panel — matches trb-design.css (v1.9.0) palette */
.trb-v3 .trb-step-trigger{display:inline-flex;align-items:center;gap:7px;margin:7px 0 0;max-width:100%;white-space:nowrap;padding:6px 11px;min-height:32px;border:1px dashed #67968e;border-radius:7px;background:#f3faf7;color:#155f55;font:inherit;font-size:12px;font-weight:750;cursor:pointer}
.trb-v3 .trb-step-trigger:hover{background:#1a6a5f;border-style:solid;border-color:#1a6a5f;color:#fff}
.trb-v3 .trb-step-trigger:focus-visible{outline:2px solid #148d7c;outline-offset:2px}
.trb-v3 .trb-step-trigger-icon{font-size:14px;line-height:1}
.trb-v3 .trb-step-flash{animation:trb-step-flash 1.8s ease-out}
@keyframes trb-step-flash{0%,40%{box-shadow:0 0 0 4px #87dfcc;background:#eafff7}100%{box-shadow:0 0 0 0 #87dfcc00}}

.trb-step-modal{width:min(1040px,100% - 32px)}
.trb-step-inner{padding:28px 32px 32px}
.trb-step-inner h2{margin-bottom:12px}
.trb-step-eyebrow{margin:0 0 6px!important;font-size:11px!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#148d7c}
.trb-step-lead{max-width:760px}
.trb-step-steps{margin:0 0 18px;padding-left:20px;font-size:14px;line-height:1.75}
.trb-step-steps a{color:#155f55;font-weight:700}
.trb-step-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:150px;padding:20px;border:2px dashed #8fb8ae;border-radius:12px;background:#f5fbf9;text-align:center;cursor:pointer;transition:background .15s,border-color .15s}
.trb-step-drop strong{font-size:16px;color:#17353d}
.trb-step-drop span{font-size:12px;color:#546e76}
.trb-step-drop.is-over,.trb-step-drop:hover{background:#e3f6ef;border-color:#148d7c}
.trb-step-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.trb-step-drop:focus-within{outline:2px solid #148d7c;outline-offset:2px}

.trb-step-file-line{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:12px!important;color:#546e76;margin:0 0 14px!important}
.trb-step-file-line strong{color:#17353d}
.trb-step-link{border:0;background:none;padding:0;color:#155f55;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
.trb-step-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:24px;align-items:start}
.trb-step-col{min-width:0}
.trb-step-preview{position:relative;width:100%;min-height:260px;border:1px solid #d3e3df;border-radius:12px;background:radial-gradient(circle at 50% 40%,#ffffff,#e9f3f0);overflow:hidden;display:flex;align-items:center;justify-content:center}
.trb-step-preview canvas{display:block;cursor:grab}
.trb-step-preview canvas:active{cursor:grabbing}
.trb-step-viewbar[hidden]{display:none}
.trb-step-viewbar{display:flex;align-items:center;gap:6px;margin:8px 0 14px}
.trb-step-viewbar button{padding:5px 10px;border:1px solid #b9ceca;border-radius:6px;background:#fff;color:#17353d;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.trb-step-viewbar button.is-active{background:#0c2630;border-color:#0c2630;color:#b5efdf}
.trb-step-viewbar span{margin-left:auto;font-size:11px;color:#6b8389}
.trb-step-svg{width:100%;max-height:360px}
.trb-step-svg .ring{fill:none;stroke:#9fb4b0;stroke-width:1.2}
.trb-step-svg .roller{fill:#148d7c;fill-opacity:.85}
.trb-step-svg .label{font:700 5px system-ui,sans-serif;fill:#0c2630;text-anchor:middle;dominant-baseline:middle}

.trb-step-table{width:100%;border-collapse:collapse;font-size:12px;margin:4px 0 10px}
.trb-step-table th,.trb-step-table td{padding:6px 8px;border-bottom:1px solid #e1ebe8;text-align:right;font-variant-numeric:tabular-nums}
.trb-step-table th:first-child{text-align:left}
.trb-step-table thead th{font-size:11px;letter-spacing:.02em;color:#546e76;font-weight:800}
.trb-step-table tr.is-bad td,.trb-step-table tr.is-bad th{color:#a3312a;background:#fdf1ef}
.trb-step-table tr.is-current td{background:#e3f6ef;font-weight:800}

.trb-step-field{margin:0 0 14px}
.trb-step-field input{width:100%;min-height:39px;padding:8px 10px;border:1px solid #b9ceca;border-radius:6px;background:#fbfdfc;color:#17353d;font:inherit;font-size:14px;font-weight:700}
.trb-step-field input:focus{outline:2px solid #148d7c;outline-offset:2px;background:#fff}
.trb-step-field .trb-field-label{padding-right:0}
.trb-step-hint{margin:6px 0 0!important;font-size:12px!important;line-height:1.5!important;color:#546e76}

.trb-step-k{display:grid;gap:2px;padding:14px 16px;margin:4px 0 8px;border-radius:12px;background:#0c2630;color:#f5fffc}
.trb-step-k span{font-size:12px;color:#b7cfce}
.trb-step-k strong{font-size:34px;line-height:1.1;letter-spacing:-.03em;color:#87dfcc;font-variant-numeric:tabular-nums}
.trb-step-k strong small{font-size:14px;color:#d0dfdf;font-weight:700;letter-spacing:0}
.trb-step-k em{font-style:normal;font-size:12px;color:#d0dfdf}
.trb-step-sens{margin:6px 0 4px!important;font-size:12px!important;color:#35624d}
.trb-step-check,.trb-step-warn{margin:8px 0!important;padding:9px 12px;border-radius:8px;font-size:12px!important;line-height:1.55!important}
.trb-step-check{background:#eaf7f1;color:#1f5a4a;border:1px solid #bfe2d3}
.trb-step-warn{background:#fff4e5;color:#7a4a05;border:1px solid #f0cf97}
.trb-step-actions{display:grid;gap:6px;margin-top:12px}
.trb-step-apply{min-height:44px;padding:10px 16px;border:1px solid #148d7c;border-radius:9px;background:#148d7c;color:#fff;font:inherit;font-size:14px;font-weight:800;cursor:pointer}
.trb-step-apply:hover{background:#0f7466}
.trb-step-apply:focus-visible{outline:2px solid #0c2630;outline-offset:2px}
.trb-step-note{font-size:12px!important;line-height:1.55!important;color:#546e76;margin:6px 0!important}
.trb-step-method{margin-top:18px;border-top:1px solid #d0ddd4;padding-top:10px}
.trb-step-method summary{cursor:pointer;font-size:13px;font-weight:800;color:#155f55}
.trb-step-method p{font-size:12px!important;line-height:1.65!important;margin:8px 0!important}

@media (max-width:760px){
  .trb-step-inner{padding:20px 16px 24px}
  .trb-step-grid{grid-template-columns:1fr;gap:16px}
  .trb-step-preview{min-height:220px}
  .trb-step-k strong{font-size:28px}
  .trb-step-field input{font-size:16px;min-height:43px}
}

/* Shaft / housing geometry helper */
.trb-sec-top{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;margin-top:8px}
.trb-step-field select{width:100%;min-height:39px;padding:8px 10px;border:1px solid #b9ceca;border-radius:6px;background:#fbfdfc;color:#17353d;font:inherit;font-size:14px;font-weight:600}
.trb-step-field select:focus{outline:2px solid #148d7c;outline-offset:2px}
.trb-sec-tablewrap{overflow-x:auto;margin:4px 0 0}
.trb-sec-table{min-width:620px}
.trb-sec-table th small{font-weight:600;color:#6b8389}
.trb-sec-table td input{width:100%;min-width:64px;min-height:34px;padding:6px 8px;border:1px solid #b9ceca;border-radius:6px;background:#fbfdfc;color:#17353d;font:inherit;font-size:13px;font-weight:700;text-align:right}
.trb-sec-table td input:focus{outline:2px solid #148d7c;outline-offset:1px;background:#fff}
.trb-sec-table tbody th{color:#546e76;width:28px}
.trb-sec-table tr.is-bad td input{border-color:#d58b84;background:#fdf1ef}
.trb-sec-k{font-weight:800;white-space:nowrap}
.trb-sec-share{position:relative;width:140px;min-width:110px;text-align:left!important}
.trb-sec-bar{display:block;height:6px;border-radius:3px;background:#148d7c;max-width:100%;transition:width .2s}
.trb-sec-share em{font-style:normal;font-size:11px;color:#546e76}
.trb-sec-del{width:28px;height:28px;border:1px solid #c9d8d4;border-radius:50%;background:#fff;color:#7a4a05;font-size:16px;line-height:1;cursor:pointer}
.trb-sec-del:hover{background:#fdf1ef;border-color:#d58b84}
.trb-sec-add{margin:6px 0 14px;font-size:13px}
.trb-sec-extra{max-width:420px}
@media (max-width:760px){
  .trb-sec-top{grid-template-columns:1fr;gap:0}
  .trb-sec-table{min-width:0}
  .trb-sec-table thead{display:none}
  .trb-sec-table tbody tr{display:grid;grid-template-columns:22px repeat(3,minmax(0,1fr)) 30px;gap:6px 8px;align-items:end;padding:10px 0;border-bottom:1px solid #e1ebe8}
  .trb-sec-table tbody th,.trb-sec-table tbody td{padding:0;border:0;text-align:left}
  .trb-sec-table tbody th{align-self:center}
  .trb-sec-table td[data-label]::before{content:attr(data-label);display:block;margin-bottom:3px;font-size:10px;font-weight:700;color:#6b8389}
  .trb-sec-table td input{min-width:0;font-size:16px;min-height:40px}
  .trb-sec-table td.trb-sec-k{grid-column:2/4;font-size:13px}
  .trb-sec-table td.trb-sec-share{grid-column:4/6;min-width:0}
  .trb-sec-table td:last-child{grid-column:6;grid-row:1;align-self:center}
}

/* Construction editor (v1.2.0) */
.trb-asm-modal{width:min(1240px,100% - 24px)}
.trb-asm-inner{padding:24px 28px 28px}
.trb-asm-help{margin:0 0 10px!important}
.trb-asm-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px}
.trb-asm-tool{padding:6px 11px;border:1px solid #b9ceca;border-radius:7px;background:#fff;color:#17353d;font:inherit;font-size:12px;font-weight:750;cursor:pointer}
.trb-asm-tool:hover{background:#eef7f4}
.trb-asm-arr{margin-left:auto;font-size:12px;font-weight:700;color:#155f55}
.trb-asm-drawing{position:relative;width:100%;border:1px solid #d3e3df;border-radius:12px;background:#fbfdfc;overflow:hidden}
.trb-asm-svg{display:block;width:100%;touch-action:none;user-select:none;-webkit-user-select:none}
.trb-asm-axis{stroke:#6b8389;stroke-width:1;stroke-dasharray:12 3 2 3}
.trb-asm-body{stroke:#35624d;stroke-width:1.2;cursor:pointer}
.trb-asm-housing{stroke:#6e5a4c}
.trb-asm-body.is-selected{stroke:#e0821c;stroke-width:2.4}
.trb-asm-bearing{cursor:grab}
.trb-asm-bearing:active{cursor:grabbing}
.trb-asm-bearing.is-selected .trb-asm-ring{stroke:#e0821c;stroke-width:2}
.trb-asm-ring{fill:url(#asmRing);stroke:#36444e;stroke-width:1.3;stroke-linejoin:round}
.trb-asm-roller{fill:url(#asmRoller);stroke:#36444e;stroke-width:1.3;stroke-linejoin:round}
.trb-asm-blabel{fill:#0c2630;font-weight:800;text-anchor:middle;font-family:inherit;paint-order:stroke;stroke:#fbfdfc;stroke-width:3px;stroke-linejoin:round}
.trb-asm-dim{stroke:#546e76;stroke-width:1;fill:none}
.trb-asm-dim.is-l{stroke:#0c2630;stroke-width:1.6}
.trb-asm-ext{stroke:#9fb4b0;stroke-width:.8;stroke-dasharray:3 3}
.trb-asm-dimtext,.trb-asm-dia{fill:#17353d;text-anchor:middle;font-family:inherit;font-weight:700;font-variant-numeric:tabular-nums}
.trb-asm-dimtext.is-l{fill:#0c2630;font-weight:900}
.trb-asm-dia.is-small{font-weight:600;fill:#546e76}
.trb-asm-svg .is-edit{cursor:text}
.trb-asm-svg .is-edit:hover,.trb-asm-svg .is-edit:focus{fill:#e0821c;outline:none}
.trb-asm-handle{fill:transparent;cursor:ew-resize}
.trb-asm-handle:hover{fill:#e0821c55}
.trb-asm-path{stroke-width:2.6}
.trb-asm-path.is-shaft{stroke:#148d7c}
.trb-asm-path.is-housing{stroke:#c07a24}
.trb-asm-pathlabel{text-anchor:middle;font-family:inherit;font-weight:800;paint-order:stroke;stroke:#fbfdfc;stroke-width:3px;stroke-linejoin:round}
.trb-asm-pathlabel.is-shaft{fill:#0f7466}
.trb-asm-pathlabel.is-housing{fill:#9a5d14}
.trb-asm-load{stroke:#a3312a;stroke-width:1.8}
.trb-asm-loadlabel{fill:#a3312a;font-weight:800;font-family:inherit}
.trb-asm-overlay{position:absolute;inset:0;pointer-events:none}
.trb-asm-edit{position:absolute;transform:translate(-50%,-50%);width:92px;min-height:32px;padding:4px 8px;border:2px solid #e0821c;border-radius:6px;background:#fff;color:#17353d;font:inherit;font-size:14px;font-weight:800;text-align:center;pointer-events:auto;box-shadow:0 6px 20px #0c263033}
.trb-asm-toast{position:absolute;right:10px;bottom:10px;margin:0!important}
.trb-asm-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;margin-top:16px;align-items:start}
.trb-asm-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.trb-asm-side>.trb-asm-card:first-child{grid-column:1/-1}
.trb-asm-card{border:1px solid #d3e3df;border-radius:12px;padding:12px 14px;background:#fff;min-width:0}
.trb-asm-card h3{margin:0 0 8px;font-size:14px;letter-spacing:-.01em}
.trb-asm-card h4{margin:14px 0 4px;font-size:12px;color:#546e76;text-transform:none}
.trb-asm-card input[type=text],.trb-asm-card select,.trb-asm-edit{box-sizing:border-box}
.trb-asm-card input[type=text]{width:100%;min-width:56px;min-height:32px;padding:5px 7px;border:1px solid #b9ceca;border-radius:6px;background:#fbfdfc;color:#17353d;font:inherit;font-size:13px;font-weight:700;text-align:right}
.trb-asm-card input[type=text]:focus{outline:2px solid #148d7c;outline-offset:1px;background:#fff}
.trb-asm-card select{width:100%;min-height:32px;padding:4px 6px;border:1px solid #b9ceca;border-radius:6px;background:#fbfdfc;color:#17353d;font:inherit;font-size:12px;font-weight:600}
.trb-asm-mat{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:8px;align-items:center;margin-bottom:6px}
.trb-asm-mat label{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:700}
.trb-asm-table{min-width:0!important}
.trb-asm-table td{padding:4px 3px}
.trb-asm-table tr.is-selected td,.trb-asm-table tr.is-selected th{background:#fff1e0}
.trb-asm-rowbtns{display:flex;gap:14px;margin:4px 0 8px;font-size:12px}
.trb-asm-rowbtns button:disabled{opacity:.4;cursor:default;text-decoration:none}
.trb-asm-extra,.trb-asm-pos{display:grid;grid-template-columns:minmax(0,1fr) 104px 36px;gap:6px;align-items:center;font-size:12px;font-weight:700;margin:6px 0}
.trb-asm-k{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:4px 0 8px}
.trb-asm-k div{padding:10px 12px;border-radius:10px;background:#0c2630;color:#f5fffc}
.trb-asm-k span{display:block;font-size:11px;color:#b7cfce}
.trb-asm-k strong{font-size:26px;color:#87dfcc;font-variant-numeric:tabular-nums}
.trb-asm-k small{color:#d0dfdf;font-weight:700}
.trb-asm-apply th{font-weight:700;font-size:12px}
.trb-asm-apply th small{font-weight:600;color:#6b8389}
.trb-asm-apply tr.is-changed td strong{color:#0f7466}
.trb-asm-arrow{color:#9fb4b0;width:14px}
.trb-asm-check{display:flex;align-items:center;gap:6px;margin:10px 0 2px;font-size:12px;font-weight:700}
@media (max-width:980px){.trb-asm-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){
  .trb-asm-inner{padding:18px 12px 22px}
  .trb-asm-side{grid-template-columns:1fr}
  .trb-asm-arr{margin-left:0;width:100%}
  .trb-asm-card input[type=text]{font-size:16px;min-height:38px}
  .trb-asm-table thead{display:table-header-group}
  .trb-asm-table tbody tr{display:table-row}
  .trb-asm-table td,.trb-asm-table th{padding:4px 2px}
}

/* Construction editor v1.3.0 — temperatures and fits */
.trb-asm-temp{text-anchor:middle;font-family:inherit;font-weight:800;paint-order:stroke;stroke:#fbfdfc;stroke-width:3px;stroke-linejoin:round}
.trb-asm-temp.is-shaft{fill:#b4461f}
.trb-asm-temp.is-housing{fill:#9a5d14}
.trb-asm-fit{text-anchor:middle;font-family:inherit;font-weight:800;fill:#3a4fa0;cursor:pointer;paint-order:stroke;stroke:#fbfdfc;stroke-width:3px;stroke-linejoin:round}
.trb-asm-fit:hover,.trb-asm-fit:focus{fill:#e0821c;outline:none}
.trb-asm-side>.trb-asm-wide{grid-column:1/-1}
.trb-asm-cols{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:start}
.trb-asm-fits{margin:0}
.trb-asm-fits td{padding:3px 3px}
.trb-asm-fits{width:100%;table-layout:fixed}
.trb-asm-fits select{min-width:0;width:100%;max-width:100%}
.trb-asm-side>*{min-width:0}
.trb-asm-small{font-size:12px;font-weight:700;color:#546e76}
.trb-asm-cte{margin-top:-2px}
.trb-asm-break td{white-space:nowrap;font-weight:700}
.trb-asm-break tr.is-total th,.trb-asm-break tr.is-total td{border-top:2px solid #17353d}
@media (max-width:760px){.trb-asm-cols{grid-template-columns:1fr}}
.trb-asm-grid>*{min-width:0}
.trb-asm-break{width:100%}
@media (max-width:760px){.trb-asm-apply td:first-child,.trb-asm-break td:first-child{overflow-wrap:anywhere}.trb-asm-apply,.trb-asm-break{width:100%;table-layout:fixed}.trb-asm-apply td:first-child{width:52%}.trb-asm-break td:first-child{width:68%}}
/* v1.4 loads in the window */
button.trb-asm-arr{border-color:#9cc8bc;background:#f2faf7}
.trb-asm-cols2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px}
@media (max-width:760px){.trb-asm-cols2{grid-template-columns:minmax(0,1fr)}}
.trb-asm-cols2 select{min-width:0;max-width:100%}
.trb-asm-hit{fill:transparent;stroke:none}
.trb-asm-loadg{cursor:ew-resize}
.trb-asm-loadg:hover .trb-asm-load{stroke:#e0821c}
.trb-asm-fag{cursor:pointer;outline:none}
.trb-asm-fag:hover .trb-asm-load,.trb-asm-fag:focus .trb-asm-load{stroke:#e0821c}
.trb-asm-load.is-axial{stroke:#7a2f8f}
.trb-asm-loadlabel.is-axial{fill:#7a2f8f;text-anchor:middle}
.trb-asm-loadlabel.is-edit{cursor:text}
.trb-asm-pc{fill:#fff;stroke:#155f55;stroke-width:1.3}
.trb-asm-pclabel{fill:#4d6f69;text-anchor:middle;font-family:inherit;font-weight:600}
.trb-asm-dim.is-load{stroke:#a3312a}
.trb-asm-dimtext.is-load{fill:#a3312a}
.trb-asm-loads{width:100%;margin:4px 0 6px}
.trb-asm-loads td,.trb-asm-loads thead th{text-align:right;font-variant-numeric:tabular-nums}
.trb-asm-loads thead th:first-child{text-align:left}
/* v1.5 setting sweep */
.trb-asm-ana{margin-top:16px}
.trb-ana-wrap{overflow-x:auto}
.trb-asm-anasvg{display:block;max-width:100%;height:auto;font-family:inherit;touch-action:pan-y;cursor:crosshair}
.trb-ana-grid{stroke:#e3ecea;stroke-width:1}
.trb-ana-tick{font-size:10.5px;fill:#5f7a75;text-anchor:middle;font-variant-numeric:tabular-nums}
.trb-ana-tick.is-y{text-anchor:end}
.trb-ana-tick.is-end{text-anchor:end;fill:#a3312a}
.trb-ana-axis{font-size:11px;font-weight:750;fill:#17353d}
.trb-ana-axis.is-mid{text-anchor:middle;font-weight:650}
.trb-ana-ok{fill:#dff2ea;opacity:.75}
.trb-ana-open{fill:#f3efe8;opacity:.8}
.trb-ana-limit{stroke:#a3312a;stroke-width:1.1;stroke-dasharray:5 4}
.trb-ana-line{fill:none;stroke-width:2;stroke-linejoin:round}
.trb-ana-line.is-a{stroke:#155f55}
.trb-ana-line.is-b{stroke:#c45a1c}
.trb-ana-line.is-sys{stroke:#17353d;stroke-dasharray:6 3}
.trb-ana-line.is-pre{stroke:#7a2f8f;stroke-dasharray:2 3}
.trb-ana-mark{stroke-width:1.4}
.trb-ana-mark.is-rec{stroke:#3a4fa0}
.trb-ana-mark.is-band{stroke:#3a4fa0;stroke-dasharray:3 3;opacity:.6}
.trb-ana-mark.is-close{stroke:#9a8f7c;stroke-dasharray:4 3}
.trb-ana-marklabel{font-size:10.5px;font-weight:700}
.trb-ana-marklabel.is-rec{fill:#3a4fa0}
.trb-ana-marklabel.is-close{fill:#7c725f}
.trb-ana-cursor{stroke:#e0821c;stroke-width:1.5}
.trb-ana-read{font-size:12.5px;line-height:1.5;margin:6px 0 4px;font-variant-numeric:tabular-nums}
.trb-ana-flag{color:#a3312a}
.trb-ana-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;margin:2px 0 6px;color:#17353d}
.trb-ana-legend span{display:inline-flex;align-items:center;gap:6px}
.trb-ana-key{display:inline-block;width:18px;height:0;border-top:2px solid}
.trb-ana-key.is-a{border-color:#155f55}.trb-ana-key.is-b{border-color:#c45a1c}
.trb-ana-key.is-sys{border-top-style:dashed;border-color:#17353d}.trb-ana-key.is-pre{border-top-style:dotted;border-color:#7a2f8f}
.trb-ana-key.is-okkey{height:10px;border:0;background:#dff2ea}.trb-ana-key.is-openkey{height:10px;border:0;background:#f3efe8}
/* v1.6 roller load distribution */
.trb-ana-toggle{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 8px}
.trb-asm-tool.is-on{background:#155f55;border-color:#155f55;color:#fff}
.trb-ana-line.is-cmp{stroke:#9aa9a6;stroke-width:1.6;stroke-dasharray:1 3}
.trb-ana-key.is-cmp{border-top:2px dotted #9aa9a6}
.trb-ana-mark.is-best{stroke:#1d8a4a;stroke-width:1.6}
.trb-ana-marklabel.is-best{fill:#1d8a4a}
.trb-zone-inputs{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;font-size:12.5px;margin:2px 0 8px}
.trb-zone-in{display:inline-flex;align-items:center;gap:5px}
.trb-zone-in input{width:56px;padding:4px 6px;border:1px solid #c9dad6;border-radius:6px;font:inherit;text-align:right}
.trb-zone-in em{font-style:normal;font-size:11px;color:#4d6f69;background:#eef6f3;border-radius:5px;padding:1px 6px}
.trb-zone-in em.is-est{color:#8a4b00;background:#fff1dc}
.trb-zone-box{display:flex;flex-wrap:wrap;gap:8px 28px;margin:4px 0 6px}
.trb-zone-item{display:flex;align-items:center;gap:10px}
.trb-zone-item p{margin:0;font-size:12px;line-height:1.5;font-variant-numeric:tabular-nums}
.trb-zone-svg{flex:0 0 auto}
.trb-zone-ring{fill:none;stroke:#b9ceca;stroke-width:1.2}
.trb-zone-roller{fill:#fff;stroke:#9fb4b0;stroke-width:1}
.trb-zone-roller.is-loaded{fill:#155f55;stroke:#155f55}
.trb-zone-bar{stroke:#c45a1c;stroke-width:3;stroke-linecap:round}
.trb-zone-fr{stroke:#a3312a;stroke-width:1.5}
.trb-zone-label{font-size:12px;font-weight:800;fill:#17353d;text-anchor:middle}
.trb-asm-ana .trb-zone-in input{width:58px;min-width:0;flex:0 0 58px;min-height:30px}

/* v1.7: why is there no feasible setting? */
#trb-diagnosis{margin:14px 0}
.trb-diag{border:1px solid #f0cf97;border-left:4px solid #c27c0e;background:#fffaf2;color:#3d2a07;border-radius:10px;padding:14px 16px;font-size:14px;line-height:1.55}
.trb-diag h3{margin:0 0 6px!important;font-size:16px!important;color:#7a4a05}
.trb-diag p{margin:6px 0!important}
.trb-diag ul{margin:4px 0 8px 1.1em!important;padding:0!important}
.trb-diag li{margin:2px 0!important}
.trb-diag em{color:#9a3412;font-style:normal}
.trb-diag details{margin-top:8px}
.trb-diag summary{cursor:pointer;font-weight:600;color:#7a4a05}
.trb-diag .trb-step-note{color:#6b5a3a}

/* v1.8: result summary — side panel ≥1200px, bottom strip below */
.trb-sum{display:none}
.trb-sum-card{background:#fff;border:1px solid #dfe6e1;border-radius:12px;padding:18px 18px 14px;color:#17353d;box-shadow:0 6px 18px rgba(23,53,61,.06)}
.trb-sum-card h2{margin:0 0 10px!important;font-size:15px!important;font-weight:800!important;letter-spacing:.01em}
.trb-sum-chip{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.4}
.trb-sum-chip.is-ok{background:#e0f3e7;color:#1d5c44}
.trb-sum-chip.is-fail{background:#fdecd2;color:#7a4a05}
.trb-sum-chip.is-missing{background:#eceeec;color:#4a5a60}
.trb-sum-row{display:grid;grid-template-columns:1fr auto;column-gap:10px;padding:9px 0;border-bottom:1px solid #eef1ee;font-size:13px}
.trb-sum-row:first-of-type{margin-top:10px}
.trb-sum-row span{color:#4a5f66}
.trb-sum-row strong{font-size:15px;font-weight:700;text-align:right;white-space:nowrap}
.trb-sum-row small{grid-column:1 / -1;font-size:11px;color:#6b7c80}
.trb-sum-row.is-bad strong,.trb-sum-row .is-low{color:#a5470b}
.trb-sum-row strong .trb-sum-pair span{color:inherit}
.trb-sum-row strong .trb-sum-pair span.is-low{color:#a5470b}
.trb-sum-msg{margin:12px 0 4px!important;font-size:13px;line-height:1.5;color:#4a5f66}
.trb-sum-links{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:12px}
.trb-sum-link{font-size:12.5px;font-weight:700;color:#286c62;text-decoration:none}
.trb-sum-link:hover{text-decoration:underline}
.trb-sum-note{margin:10px 0 0!important;font-size:11px;color:#7b8a8d;line-height:1.45}
@media (min-width:1200px){
  .trb-layout.trb-has-sum{display:grid;grid-template-columns:minmax(0,1fr) 280px;column-gap:28px;align-items:start}
  .trb-layout.trb-has-sum > *{grid-column:1}
  .trb-layout.trb-has-sum > .trb-sum{display:block;grid-column:2;grid-row:1 / span 12;position:sticky;top:99px;align-self:start}
  .trb-sumbar{display:none!important}
}
.trb-sumbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid #dfe6e1;box-shadow:0 -4px 14px rgba(23,53,61,.08);font-size:13px;color:#17353d;transition:transform .2s ease}
.trb-sumbar.is-hidden{transform:translateY(110%)}
.trb-sumbar-val{white-space:nowrap}
.trb-sumbar-val strong{font-size:15px}
.trb-sumbar .trb-sum-link{margin-left:auto;white-space:nowrap}
@media (max-width:1199px){body.trb-has-sumbar{padding-bottom:58px}}
@media print{.trb-sum,.trb-sumbar{display:none!important}}
#trb-setting-answer,#trb-diagnosis,#trb-warnings,#trb-output{scroll-margin-top:96px}

/* v1.9: jump to missing / invalid inputs */
.trb-miss{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:10px 0 4px;font-size:12.5px}
.trb-miss-head{font-weight:700;color:#4a5f66;margin-right:2px}
.trb-miss-link{appearance:none;border:1px solid #f0cf97;background:#fff7ea;color:#7a4a05;border-radius:999px;padding:4px 10px;font:inherit;font-size:12px;font-weight:700;cursor:pointer;line-height:1.35;text-align:left}
.trb-miss-link:hover,.trb-miss-link:focus-visible{background:#fdecd2;outline:none;box-shadow:0 0 0 2px #f0b44c}
.trb-miss-more{color:#6b7c80;font-size:12px}
.trb-miss-panel{margin-top:6px}
.trb-sumbar-miss{margin-left:auto;max-width:62vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@keyframes trbJumpFlash{0%,60%{box-shadow:0 0 0 3px #f0b44c;background-color:#fff7ea}100%{box-shadow:0 0 0 0 rgba(240,180,76,0);background-color:transparent}}
.trb-jump-flash{animation:trbJumpFlash 1.8s ease-out;border-radius:8px}
@media (prefers-reduced-motion:reduce){.trb-jump-flash{animation:none;box-shadow:0 0 0 3px #f0b44c}}

/* v1.9: CAD / STEP download link under the product code */
.trb-cad-link{margin:6px 0 2px!important;font-size:12.5px;line-height:1.45;color:#4a5f66}
.trb-cad-link a{color:#286c62;font-weight:700;text-decoration:none}
.trb-cad-link a:hover{text-decoration:underline}
.trb-cad-link small{font-size:11.5px;color:#6b7c80}

/* v1.10: pick from Downloads, return hint, restored-inputs note */
.trb-cad-new{font-weight:400;color:#6b7c80;font-size:11.5px}
.trb-step-pick{display:inline-flex;align-items:center;gap:4px;margin-top:10px;padding:9px 14px;border:1px solid #b9d3c9;border-radius:8px;background:#fff;color:#286c62;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.trb-step-pick:hover,.trb-step-pick:focus-visible{background:#eef7f2;outline:none;box-shadow:0 0 0 2px #9fcfbd}
.trb-step-pick.is-hint{background:#286c62;color:#fff;border-color:#286c62;animation:trbPickPulse 1.6s ease-out 2}
@keyframes trbPickPulse{0%{box-shadow:0 0 0 0 rgba(40,108,98,.45)}100%{box-shadow:0 0 0 12px rgba(40,108,98,0)}}
@media (prefers-reduced-motion:reduce){.trb-step-pick.is-hint{animation:none}}
.trb-restore{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 14px;padding:10px 14px;border:1px solid #b9d3c9;border-radius:10px;background:#eef7f2;color:#17353d;font-size:13px}
.trb-restore span{flex:1 1 220px}
.trb-restore-btn{appearance:none;border:1px solid #286c62;background:#fff;color:#286c62;border-radius:999px;padding:4px 12px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.trb-restore-x{appearance:none;border:0;background:none;color:#4a5f66;font-size:18px;line-height:1;cursor:pointer;padding:0 4px}

/* v1.11: working zone for assembly */
#trb-working-zone{margin:14px 0}
.trb-wz{border:1px solid #cfe3da;border-radius:12px;background:#fff;padding:16px 18px;color:#17353d}
.trb-wz h3{margin:0 0 10px!important;font-size:16px!important;font-weight:800!important}
.trb-wz-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:0 0 8px}
.trb-wz-card{background:#f4f8f6;border-radius:9px;padding:12px 14px;min-width:0}
.trb-wz-card span{display:block;font-size:11.5px;color:#4a5f66;font-weight:600}
.trb-wz-card strong{display:block;font-size:19px;font-weight:800;margin:3px 0 2px;overflow-wrap:anywhere}
.trb-wz-card small{display:block;font-size:11.5px;color:#5b6d72;line-height:1.45}
.trb-wz-card.is-ok{background:#e0f3e7}
.trb-wz-card.is-fail{background:#fdecd2}
.trb-wz-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:10px 0 4px;font-size:11.5px;color:#4a5f66}
.trb-wz-legend i{display:inline-block;width:20px;height:0;border-top:2px solid #286c62;vertical-align:middle;margin-right:6px}
.trb-wz-legend i.k-band{height:9px;border:0;background:#dff1e6}
.trb-wz-legend i.k-worst{border-top:1.5px dashed #286c62}
.trb-wz-legend i.k-zone{border-top:2px dashed #c27c0e}
.trb-wz-chart{overflow-x:auto}
.trb-wz-svg{display:block;width:100%;min-width:300px;height:auto;font-family:inherit}
.trb-wz-band{fill:#dff1e6}
.trb-wz-grid{stroke:#e6ece9;stroke-width:1}
.trb-wz-tick{font-size:10.5px;fill:#6b7c80}
.trb-wz-axis{font-size:11px;fill:#4a5f66}
.trb-wz-lin{fill:none;stroke:#286c62;stroke-width:2.2}
.trb-wz-worst{fill:none;stroke:#286c62;stroke-width:1.3;stroke-dasharray:3 3}
.trb-wz-zone{fill:none;stroke:#c27c0e;stroke-width:2;stroke-dasharray:7 4}
.trb-wz-target{stroke:#a52f35;stroke-width:1.2;stroke-dasharray:5 4}
.trb-wz-cand{stroke:#8a9ba0;stroke-width:1.4;stroke-dasharray:2 3}
.trb-wz-opt{stroke:#17353d;stroke-width:1.8}
.trb-wz-lab{font-size:10.5px;font-weight:700;stroke:none}
.trb-wz-lab.trb-wz-cand{fill:#6b7c80}
.trb-wz-lab.trb-wz-opt{fill:#17353d}
.trb-wz-peak{fill:#c27c0e;stroke:#fff;stroke-width:1.5}
.trb-wz-lab.trb-wz-peaklab{fill:#985115}
.trb-wz-tlab{fill:#a52f35}

/* v1.12: fillets, shoulder snapping, material sources */
.trb-asm-fillet-bg{fill:#fbfdfc;stroke:none}
.trb-asm-fillet-fill{stroke:none}
.trb-asm-fillet{fill:none;stroke:#35624d;stroke-width:1.2}
.trb-asm-fillet.trb-asm-housing{stroke:#6e5a4c}
.trb-asm-rlabel{fill:#155f55;font-weight:700;font-family:inherit;cursor:pointer;paint-order:stroke;stroke:#fbfdfc;stroke-width:3px;stroke-linejoin:round}
.trb-asm-rlabel.is-zero{fill:#9fb4b0;font-weight:600}
.trb-asm-rlabel:hover,.trb-asm-rlabel:focus{fill:#e0821c;outline:none}
.trb-asm-snapline{stroke:#e0821c;stroke-width:2;stroke-dasharray:5 3}
.trb-asm-snaptext{fill:#b35f0e;font-weight:800;text-anchor:middle;font-family:inherit;paint-order:stroke;stroke:#fbfdfc;stroke-width:3px}
.trb-asm-src{margin:4px 0 0!important;font-size:11px;color:#6b7c80;line-height:1.45}
.trb-asm-snapbtns{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:6px}

/* 1.13: one page for both calculation models — the other model's inputs stay hidden whatever their layout class */
.trb-v3 [data-model-only][hidden]{display:none!important}

/* 1.14: bearing-code suggestions (replaces the native datalist popup, which closed while typing) */
.trb-ac{position:fixed;z-index:1000;margin:0;padding:4px;list-style:none;overflow-y:auto;overscroll-behavior:contain;background:#fff;border:1px solid #c9d8d3;border-radius:10px;box-shadow:0 12px 32px rgba(20,48,52,.18);font-size:13px;box-sizing:border-box}
.trb-ac[hidden]{display:none}
.trb-ac-item{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 10px;border-radius:7px;cursor:pointer;color:#17343a}
.trb-ac-item b{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.trb-ac-item span{color:#5e7277;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}
.trb-ac-item:hover,.trb-ac-item[aria-selected=true]{background:#e8f3f0}
.trb-ac-item[aria-selected=true]{box-shadow:inset 3px 0 0 #1f7a6d}
.trb-ac-empty,.trb-ac-more{padding:7px 10px;color:#6b7c80;font-size:12px}
/* 1.15: hub seat coaxiality */
.trb-cx{margin-top:14px}
.trb-cx-figs{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:12px 0}
.trb-cx-figs figure{margin:0;background:#f7faf9;border:1px solid #e1ece8;border-radius:10px;padding:10px 10px 12px;min-width:0}
.trb-cx-figs figcaption{font-size:12px;line-height:1.5;color:#3e5359;margin-top:6px}
.trb-cx-svg{display:block;width:100%;height:auto;font-family:inherit}
.trb-cx-hub{fill:#e9eef0;stroke:#9fb2b6;stroke-width:1}
.trb-cx-bore{fill:#fff;stroke:#9fb2b6;stroke-width:1}
.trb-cx-bore.is-relief{fill:#f7faf9;stroke-dasharray:3 3}
.trb-cx-datum{stroke:#17353d;stroke-width:1.2;stroke-dasharray:10 4 2 4}
.trb-cx-zone{fill:rgba(31,122,109,.14);stroke:#1f7a6d;stroke-width:1;stroke-dasharray:4 3}
.trb-cx-axis{stroke:#e0821c;stroke-width:2;stroke-linecap:round}
.trb-cx-axis.is-thick{stroke-width:2.6}
.trb-cx-cup{fill:#2f6f8a;opacity:.85}
.trb-cx-arc{fill:none;stroke:#b35f0e;stroke-width:1.4}
.trb-cx-dim{stroke:#6b7c80;stroke-width:1}
.trb-cx-lbl{font-size:11.5px;fill:#3e5359}
.trb-cx-lbl.is-mid{text-anchor:middle}
.trb-cx-lbl.is-end{text-anchor:end}
.trb-cx-lbl.is-head{font-weight:800;fill:#17353d;font-size:12.5px}
.trb-cx-lbl.is-warn{fill:#b35f0e;font-weight:700}
.trb-cx-lbl.is-ok{fill:#1f7a6d;font-weight:700}
.trb-cx-bar{fill:#e6ece9}
.trb-cx-bar.is-bend{fill:#e9b36c}
.trb-cx-bar.is-over{fill:#d9653b}
.trb-cx-bar.is-rest{fill:#7cc6a3}
.trb-cx-limit{stroke:#17353d;stroke-width:2}
.trb-cx-allowrow{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:4px 0 10px;font-size:13px;font-weight:700;color:#17353d}
.trb-cx-allowrow input{width:70px;padding:5px 8px;border:1px solid #c9d8d3;border-radius:7px;font:inherit}
.trb-cx-allowrow small{flex-basis:100%;font-weight:400;color:#5b6d72;font-size:11.5px;line-height:1.45}
.trb-sec-table.trb-cx-table{width:100%;table-layout:fixed;font-size:12.5px}
.trb-cx-table tr.is-gov td{font-weight:700;background:#fff7ec}
.trb-cx-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-bottom:6px}
.trb-cx-head h3{margin:0!important}
.trb-cx-seg{display:inline-flex;gap:2px;padding:4px;border-radius:12px;background:#eaf0ee;max-width:100%;flex-wrap:wrap}
.trb-cx-seg button{min-height:34px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:#5a6f75;font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.trb-cx-seg button:hover:not(:disabled){color:#0c2630}
.trb-cx-seg button.is-on{background:#fff;color:#0c2630;font-weight:700;box-shadow:0 1px 3px rgba(12,38,48,.14)}
.trb-cx-seg button.is-soon{cursor:not-allowed;opacity:.62}
.trb-cx-seg button small{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:#fff1e2;color:#a8590c;border-radius:5px;padding:1px 5px}
.trb-cx-modenote{margin:0 0 10px!important;font-size:12.5px;color:#4a5f66}
.trb-wz-card.is-muted strong{color:#7c8f93}
.trb-cx-cardhead{display:inline-flex!important;align-items:center;gap:6px}
.trb-cx-icon{width:24px;height:20px;flex:none;vertical-align:middle}
.trb-cx-icon .trb-cx-sym *,.trb-cx-gdt .trb-cx-sym *{fill:none;stroke:#0c2630;stroke-width:1.4}
.trb-cx-warn{margin:0 0 10px!important;padding:9px 12px;border-radius:9px;background:#fdecd2;color:#7a3d06;font-size:12.5px}
.trb-cx-gdtfig{margin:12px 0 6px;background:#fbfcfc;border:1px solid #e1ece8;border-radius:10px;padding:10px}
.trb-cx-gdtfig figcaption{font-size:12px;color:#3e5359;margin-top:4px}
.trb-cx-gdt .trb-cx-hub{fill:#dfe7ea;stroke:#7d9399;stroke-width:1.2}
.trb-cx-face{stroke:#0c2630;stroke-width:2.4}
.trb-cx-leader{stroke:#0c2630;stroke-width:1}
.trb-cx-dot{fill:#0c2630}
.trb-cx-datumtri{fill:#0c2630}
.trb-cx-fcfbox{fill:#fff;stroke:#0c2630;stroke-width:1.2}
.trb-cx-fcf line{stroke:#0c2630;stroke-width:1.2}
.trb-cx-fcftxt{font-size:12.5px;font-weight:700;fill:#0c2630;text-anchor:middle;font-variant-numeric:tabular-nums}
.trb-cx-fcf.is-bad .trb-cx-fcfbox{fill:#fdecd2;stroke:#c2412f}
.trb-cx-axis.is-datum{stroke:#0c2630}
.trb-cx-lbl.is-faint{fill:#6b7c80;font-size:11px}
.trb-cx-tol td{vertical-align:middle}
.trb-cx-tol td:first-child,.trb-cx-tol th:first-child{width:34px}
.trb-cx-tol .trb-cx-val{font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}
.trb-cx-tol tr.is-bad td{background:#fdecd2}
.trb-cx-advice{margin:10px 0;border:1px solid #e1ece8;border-radius:10px;padding:8px 12px;background:#f7faf9;font-size:12.5px;color:#3e5359}
.trb-cx-advice summary{cursor:pointer;font-weight:700;color:#17353d}
.trb-cx-advice ul{margin:8px 0 2px;padding-left:18px}
.trb-cx-advice li{margin:4px 0;line-height:1.5}
.trb-cx-sources{margin-top:10px;font-size:12px;color:#4a5f66}
.trb-cx-sources>span{font-weight:700;color:#17353d}
.trb-cx-sources ul{margin:4px 0 0;padding-left:18px}
.trb-cx-sources a{color:#1f7a6d;overflow-wrap:anywhere}
.trb-cx-tol{table-layout:auto!important}
.trb-gdt-toggle{display:flex;align-items:flex-start;gap:10px;margin:14px 0 0;padding:12px 14px;border:1px solid #cfe3da;border-radius:12px;background:#fff;cursor:pointer;color:#17353d}
.trb-gdt-toggle input{width:18px;height:18px;margin:2px 0 0;accent-color:#1f7a6d;flex:none}
.trb-gdt-toggle b{display:block;font-size:14px}
.trb-gdt-toggle small{display:block;font-size:12px;color:#5b6d72;margin-top:2px}
.trb-cx-parts{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin:12px 0 6px}
.trb-cx-parts .trb-cx-gdtfig{margin:0}
.trb-cx-shaft{fill:#e8dcc4;stroke:#9a8a6a;stroke-width:1}
.trb-cx-bore.is-hole{fill:#fff;stroke:#9a8a6a;stroke-dasharray:5 3}
.trb-cx-seatmark{fill:#1f7a6d;opacity:.55}
.trb-cx-bar.is-rest2{fill:#a9d8c2}
.trb-cx-lbl.is-in{fill:#0c3b33;font-size:10.5px;font-weight:700}
.trb-cx-group td{background:#eef4f2;font-weight:800;color:#17353d;font-size:12px}
.trb-cx-lbl.is-bg{paint-order:stroke;stroke:#fbfcfc;stroke-width:3px}
.trb-wz-nl{margin:0 0 10px!important;padding:8px 12px;border-radius:9px;background:#fff7ec;color:#6b4208;font-size:12.5px;line-height:1.5}
.trb-wz-rollers{margin-top:6px;padding:7px 12px;border:1px solid #cfe3da;border-radius:9px;background:#f4f8f6;color:#1f7a6d;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.trb-wz-rollers:hover{background:#e8f3f0}
/* 1.16: typeset formulas (KaTeX) */
.trb-formula{position:relative;margin:10px 0 12px;padding:12px 16px 10px;border:1px solid #d6e7e1;border-left:4px solid #1f7a6d;border-radius:10px;background:linear-gradient(180deg,#f7fbfa,#eef6f3);color:#0c2630;max-width:100%;box-sizing:border-box}
.trb-formula-cap{display:block;margin:0 0 2px;font-size:11.5px;font-weight:700;color:#4a6a66}
.trb-formula-math{overflow-x:auto;overflow-y:hidden;font-family:"Cambria Math","STIX Two Math",Georgia,serif;font-size:15px;line-height:1.5;padding:2px 0}
.trb-formula.is-typeset .trb-formula-math{font-family:inherit}
.trb-formula .katex-display{margin:4px 0!important;text-align:left}
.trb-formula .katex{font-size:1.12em}
.trb-formula-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:10px 0}
.trb-formula-row .trb-formula{margin:0}
#trb-help-content .trb-formula{margin:2px 0 14px}
#trb-stiffness-source .trb-formula{margin:8px 0 2px}
@media (max-width:600px){.trb-formula{padding:10px 12px 8px}.trb-formula .katex{font-size:1em}}
.trb-cx-seatline{stroke:#1f7a6d;stroke-width:3;stroke-linecap:butt}
.trb-asm-rolleraxis{stroke:#e8fbf6;stroke-width:1;stroke-dasharray:4 2;opacity:.85}
.trb-asm-cage{stroke:#6b4a2b;stroke-width:2;stroke-linecap:round}
.trb-asm-pline{stroke:#c27c0e;stroke-width:1;stroke-dasharray:6 3;opacity:.8}
.trb-cx-why{margin:12px 0}
.trb-cx-why h4{margin:0 0 8px!important;font-size:14px!important;font-weight:800!important;color:#17353d}
.trb-cx-whygrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}
.trb-cx-whycard{border:1px solid #e1ece8;border-radius:10px;background:#fbfcfc;padding:10px 14px}
.trb-cx-whyhead{display:flex;align-items:center;gap:8px;color:#0c2630;font-size:13.5px;margin-bottom:4px}
.trb-cx-whycard ul{margin:4px 0 0;padding-left:18px;font-size:12.5px;line-height:1.55;color:#3e5359}
.trb-cx-whycard li{margin:3px 0}

/* 1.18: catalogue-style bearing section */
.trb-asm-rface{stroke:#36444e;stroke-width:.8;opacity:.55}
.trb-asm-relief{fill:#fff;stroke:#36444e;stroke-width:.9}
.trb-asm-bearing.is-selected .trb-asm-roller{stroke:#e0821c}
