/* Structural Calculator design tokens and shared components (loaded after style.css). */
:root{
  --blue:#1f4e79;--blue-700:#173b5c;--blue-600:#1f4e79;--blue-500:#2c6aa3;--blue-100:#e6eef8;--blue-50:#f2f6fb;
  --bg:#f5f7fa;--surface:#fff;--surface-2:#f8fafc;--line:#d8dee8;--line-2:#e8edf3;--text:#1b1f24;--text-2:#4a5563;--muted:#5f6b7a;
  --ok:#c6efce;--ng:#ffc7ce;--info:#ededed;--warn-bg:#fff6df;--warn-line:#e8c45c;--focus:#f0a500;
  --r-sm:4px;--r:6px;--r-lg:10px;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;
  --shadow:0 1px 2px rgba(16,24,40,.06),0 1px 3px rgba(16,24,40,.08);--shadow-lg:0 12px 32px rgba(16,24,40,.18);
  --hdr-h:56px;--ctx-h:44px;--font:15px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
body{font:var(--font);background:var(--bg);color:var(--text)}
body.noscroll{overflow:hidden}
h1,h2,h3,h4{line-height:1.25;color:var(--text)}h1{font-size:1.6rem;margin:.2rem 0 .5rem}.h2,h2{font-size:1.3rem}h3{font-size:1.08rem}
a{color:var(--blue-500)}a:hover{color:var(--blue-700)}
.muted{color:var(--muted)}.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ico{width:1.1em;height:1.1em;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.15em}
kbd{font:600 .72rem/1 ui-monospace,monospace;border:1px solid currentColor;border-radius:4px;padding:.15rem .3rem;opacity:.8}
/* buttons: primary / secondary / plain link */
.btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--blue-600);color:#fff;border:1px solid var(--blue-600);border-radius:var(--r);padding:.45rem .95rem;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;line-height:1.3}
.btn:hover{background:var(--blue-700);color:#fff}
.btn.sec{background:var(--surface);color:var(--blue-600);border-color:var(--line);font-weight:500}.btn.sec:hover{background:var(--blue-50);border-color:var(--blue-500);color:var(--blue-700)}
.linklike{background:none;border:0;padding:0;font:inherit;color:var(--blue-500);text-decoration:underline;cursor:pointer}
.ibtn{background:none;border:0;padding:.35rem;border-radius:var(--r);cursor:pointer;color:inherit;display:inline-flex}.ibtn:hover{background:var(--line-2)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-4);margin-bottom:var(--sp-4);box-shadow:var(--shadow)}
.chip,.tag{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;padding:.12rem .5rem;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--text-2);white-space:nowrap}
.tag{font-size:.72rem;padding:.05rem .45rem}.tag-workflow{border-color:#9db9d8;background:#eef4fb;color:#1f4e79}.tag-tool{border-color:#c7b8e2;background:#f4f0fb;color:#4f3a7a}.tag-library,.tag-equation{border-color:#a9d0b3;background:#eef8f1;color:#25613a}.tag-reference{border-color:#ddd2a8;background:#fbf8ec;color:#6a5512}
.chips{display:flex;flex-wrap:wrap;gap:.35rem;margin:.4rem 0}
/* global header */
.gh{position:sticky;top:0;z-index:30;background:var(--blue-700);color:#fff;padding:0;display:block;box-shadow:0 1px 0 rgba(0,0,0,.15)}
.gh-in{max-width:1480px;margin:0 auto;display:flex;align-items:center;gap:var(--sp-4);height:var(--hdr-h);padding:0 var(--sp-4)}
.gh a{color:#fff;text-decoration:none}.brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.08rem;white-space:nowrap}
.logo{width:26px;height:26px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linejoin:round;background:var(--blue-500);border-radius:6px;padding:3px}
.gnav{display:block}.gn{display:flex;gap:.15rem;list-style:none;margin:0;padding:0}.gn>li{position:relative}
.gn-b{display:inline-flex;align-items:center;gap:.35rem;background:none;border:0;color:#fff;font:inherit;font-weight:500;padding:.45rem .7rem;border-radius:var(--r);cursor:pointer;opacity:.92}
.gn-b:hover,.gn-b[aria-expanded="true"]{background:rgba(255,255,255,.12);opacity:1}.gn-b.cur{background:rgba(255,255,255,.18);opacity:1;box-shadow:inset 0 -2px 0 #9cc3ea}
.chev{width:.9em;transition:transform .15s}.gn-b[aria-expanded="true"] .chev{transform:rotate(180deg)}.cnt{font-size:.78rem;opacity:.85}
.ddp{position:absolute;top:calc(100% + 6px);left:0;min-width:300px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:.4rem;z-index:40}
.ddp ul,.drawer ul{list-style:none;margin:0;padding:0}
.mi{display:flex;gap:.6rem;align-items:flex-start;padding:.5rem .6rem;border-radius:var(--r);color:var(--text)!important;text-decoration:none}
.mi:hover,.mi:focus-visible{background:var(--blue-50)}.mi .ico{color:var(--blue-500);margin-top:.2rem}.mi-t{display:block;font-weight:600}.mi-s{display:block;font-size:.8rem;color:var(--muted)}
.mi-note{font-size:.78rem;color:var(--muted);margin:.3rem .6rem .2rem;border-top:1px solid var(--line-2);padding-top:.4rem}
.gsearch{margin-left:auto;display:flex;align-items:center;gap:.5rem;min-width:280px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:var(--r);padding:.42rem .65rem;font:inherit;cursor:pointer}
.gsearch:hover{background:rgba(255,255,255,.2)}.gs-t{opacity:.9;flex:1;text-align:left}.gh-burger{display:none;background:none;border:0;color:#fff;padding:.4rem;cursor:pointer;border-radius:var(--r)}
.gh-burger .ico{width:1.5em;height:1.5em}
/* context bar */
.ctx{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:var(--hdr-h);z-index:20}
.ctx-in{max-width:1480px;margin:0 auto;display:flex;align-items:center;gap:var(--sp-4);min-height:var(--ctx-h);padding:0 var(--sp-4);flex-wrap:wrap}
.cnav{display:flex;align-items:center;gap:.1rem;overflow-x:auto;flex:1;min-width:0;scrollbar-width:thin}
.cnav-m{font-weight:700;margin-right:.6rem;color:var(--text)}
.cnav a{padding:.6rem .7rem;text-decoration:none;color:var(--text-2);white-space:nowrap;border-bottom:2px solid transparent}
.cnav a:hover{color:var(--blue-700)}.cnav a.on{color:var(--blue-700);border-bottom-color:var(--blue-500);font-weight:600}
.ctx .ed{margin-left:auto;display:flex;align-items:center;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.ed-l{font-size:.78rem;color:var(--muted);padding:0 .5rem}.ctx .ed button{color:var(--text-2);background:var(--surface);border:0;border-left:1px solid var(--line);padding:.3rem .65rem;font:inherit;font-size:.88rem;cursor:pointer}
.ctx .ed button.on{background:var(--blue-600);color:#fff;font-weight:600}
.ctx .ed button.ed-dev small{font-size:.7rem;opacity:.85;margin-left:.2rem}
.steelchip{display:none;font-size:.85rem;padding:.25rem .6rem;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--line);color:var(--text-2);font-weight:600}
body.steel .ctx .ed,body.wood .ctx .ed,body.masonry .ctx .ed,body.cfs .ctx .ed,body.asce .ctx .ed,body.sef .ctx .ed{display:none}body.steel .steelchip:not(.woodchip):not(.masonrychip):not(.cfschip):not(.ascechip):not(.sefchip),body.sef .sefchip,body.wood .woodchip,body.masonry .masonrychip,body.cfs .cfschip,body.asce .ascechip{display:inline-block;margin-left:auto}
/* breadcrumbs */
.crumbs-wrap{max-width:1200px;margin:0 auto;padding:0 var(--sp-4)}body.wide .crumbs-wrap,body.wide main{max-width:1480px}
.crumbs ol{display:flex;flex-wrap:wrap;gap:.2rem;list-style:none;margin:0;padding:.7rem 0 0;font-size:.85rem;color:var(--muted)}
.crumbs li+li::before{content:"›";margin:0 .4rem 0 .2rem;color:#9aa4b2}.crumbs a{color:var(--text-2)}.crumbs [aria-current]{color:var(--text);font-weight:500}
main{max-width:1200px;padding:var(--sp-4)}
/* footer */
.gf{border-top:1px solid var(--line);background:var(--surface);margin-top:var(--sp-6);text-align:left;padding:0}
.gf-in{max-width:1200px;margin:0 auto;padding:var(--sp-5) var(--sp-4);display:flex;gap:var(--sp-5);justify-content:space-between;flex-wrap:wrap;font-size:.88rem;color:var(--text-2)}
.gf-in>div{max-width:620px}.gf-l{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;align-items:flex-start}
/* drawer */
.drawer{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:50}
.drawer-in{background:var(--surface);width:min(88vw,360px);height:100%;overflow:auto;padding:var(--sp-3) var(--sp-4);box-shadow:var(--shadow-lg)}
.drawer-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem}
.dr-g{border-bottom:1px solid var(--line-2)}.dr-g summary{padding:.75rem .2rem;font-weight:600;cursor:pointer;list-style-position:outside}
.dr-l{display:block;padding:.75rem .2rem;font-weight:600;border-bottom:1px solid var(--line-2);text-decoration:none;color:var(--text)}
.drawer .mi-note{margin-left:.2rem}.dr-s{margin-top:var(--sp-4);width:100%;justify-content:center}
/* search dialog */
.sdlg{position:fixed;inset:0;background:rgba(15,23,42,.5);z-index:60;display:flex;justify-content:center;align-items:flex-start;padding:8vh var(--sp-4) var(--sp-4)}
.sdlg-in{background:var(--surface);width:min(680px,100%);max-height:80vh;display:flex;flex-direction:column;border-radius:var(--r-lg);box-shadow:var(--shadow-lg);overflow:hidden}
.sdlg-bar{display:flex;align-items:center;gap:.5rem;padding:.6rem .8rem;border-bottom:1px solid var(--line)}.sdlg-bar .ico{color:var(--muted);width:1.3em;height:1.3em}
.sdlg-bar input{border:0!important;font-size:1.05rem;padding:.4rem;box-shadow:none;outline:none}.sdlg-st{margin:.5rem .9rem .2rem}
.sres{list-style:none;margin:0;padding:.2rem .4rem .6rem;overflow:auto}
.sres a{display:flex;gap:.7rem;align-items:flex-start;padding:.55rem .6rem;border-radius:var(--r);text-decoration:none;color:var(--text)}
.sres li[aria-selected="true"] a,.sres a:hover{background:var(--blue-50);outline:1px solid #c9daee}
.sres .ico{color:var(--blue-500);margin-top:.2rem}.sr-t{display:block;font-weight:600}.sr-m{display:block;font-size:.82rem;color:var(--muted)}
/* page header + sections */
.phead{margin:.4rem 0 var(--sp-4)}.phead h1 small{font-size:.6em;font-weight:500}.lead{font-size:1.04rem;color:var(--text-2);max-width:820px;margin:.2rem 0 .5rem}
.sh{display:flex;align-items:center;gap:.5rem;font-size:1.15rem;margin:var(--sp-5) 0 var(--sp-3)}.sh .ico{color:var(--blue-500)}.sh small{font-size:.75em;font-weight:400}
h3.sub{font-size:.95rem;color:var(--text-2);margin:.8rem 0 .5rem;text-transform:none}
/* home */
.hero{padding:var(--sp-4) 0 var(--sp-2)}.hero h1{font-size:1.9rem;margin:0 0 .4rem}
.hsearch{display:flex;align-items:center;gap:.5rem;max-width:720px;background:var(--surface);border:1px solid #b8c4d4;border-radius:var(--r-lg);padding:.3rem .3rem .3rem .8rem;margin:.8rem 0;box-shadow:var(--shadow)}
.hsearch .ico{color:var(--muted)}.hsearch input{border:0!important;font-size:1.02rem;outline:none;box-shadow:none}.hsearch:focus-within{border-color:var(--blue-500);box-shadow:0 0 0 3px #cfe0f3}
.hero-a{gap:.6rem}
.mgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--sp-4)}.mgrid .card{margin:0}
.mcard{display:flex;flex-direction:column;gap:.2rem}.mcard h3{margin:0;font-size:1.25rem}.mcard h3 a{text-decoration:none;color:var(--blue-700)}.mcard p{margin:.2rem 0}.mcard .btn{align-self:flex-start;margin-top:auto}
.mlinks{columns:2;column-gap:1rem;padding-left:1.1rem;margin:.4rem 0 .8rem;font-size:.92rem}
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--sp-3)}
.tcard{display:flex;gap:.7rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:.8rem .9rem;text-decoration:none;color:var(--text);box-shadow:var(--shadow);min-width:0}
.tcard:hover{border-color:var(--blue-500);color:var(--text)}.tc-i{width:1.4em;height:1.4em;color:var(--blue-500);margin-top:.1rem}.tc-b{min-width:0}
.tc-t{display:block;font-weight:650;color:var(--blue-700)}.tc-m{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;margin:.2rem 0}.tc-d{display:block;font-size:.86rem;color:var(--text-2)}
.recent{list-style:none;padding:0;margin:0 0 .6rem}.recent li{padding:.35rem 0;border-bottom:1px solid var(--line-2)}
.inl{display:flex;flex-wrap:wrap;gap:.3rem 1.2rem;list-style:none;padding:0;margin:.4rem 0 0}
.topicgrid{list-style:none;padding:0;margin:.8rem 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.15rem 1rem}.topicgrid li{padding:.25rem 0;border-bottom:1px dotted var(--line-2)}
.filters{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:flex-end}.filters label{display:flex;flex-direction:column;font-size:.82rem;color:var(--text-2);gap:.2rem;flex:1 1 180px}
.empty{text-align:left}
/* notice (concise disclaimer near tools) */
.notice{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;color:var(--text-2);background:var(--warn-bg);border:1px solid #f0dc9c;border-radius:var(--r);padding:.3rem .6rem;margin:.5rem 0}.notice .ico{color:#9a6b00}
/* equation library: topic sidebar with filter, highlighted item, independent scrolling */
.libwrap{display:grid;grid-template-columns:280px minmax(0,1fr);gap:var(--sp-4);align-items:start}
.libside{position:sticky;top:calc(var(--hdr-h) + var(--ctx-h) + 12px);max-height:calc(100vh - var(--hdr-h) - var(--ctx-h) - 28px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:.7rem;box-shadow:var(--shadow)}
.libside summary{list-style:none;cursor:default;font-weight:700;margin-bottom:.4rem}.libside summary::-webkit-details-marker{display:none}
.libside #tf{margin-bottom:.4rem}.ls-list{overflow:auto;flex:1;min-height:80px;margin:0 -.2rem;padding:0 .2rem}
.topics button{display:flex;justify-content:space-between;gap:.5rem;align-items:baseline;border-left:3px solid transparent;border-radius:0 var(--r) var(--r) 0;padding:.35rem .5rem}
.topics button.on{background:var(--blue-100);border-left-color:var(--blue-500);font-weight:600}.topics button:hover{background:var(--blue-50)}
.libmain{margin:0}.eqlist a{border-bottom:1px solid var(--line-2)}.eqlist a:hover{background:var(--blue-50)}
/* calculators: header, meta, workflow sidebar + inputs + drawings/results */
.calc-head h2,.calc-head h1{margin:.1rem 0 .3rem}.calc-meta{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin:.3rem 0}
.wfwrap{display:grid;grid-template-columns:220px minmax(0,1fr);gap:var(--sp-4);align-items:start}
.wfside{position:sticky;top:calc(var(--hdr-h) + var(--ctx-h) + 12px);max-height:calc(100vh - var(--hdr-h) - var(--ctx-h) - 28px);overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:.7rem;box-shadow:var(--shadow)}
.wf-prog{margin:0 0 .5rem;font-size:.88rem}.wf-key{margin:.6rem 0 0;font-size:.74rem}
.wfside .steps{flex-direction:column;flex-wrap:nowrap;gap:.1rem}
.wfside .steps a{display:flex;gap:.45rem;align-items:center;border:0;border-left:3px solid transparent;border-radius:0 var(--r) var(--r) 0;color:var(--text-2);padding:.38rem .5rem}
.wfside .steps a:hover{background:var(--blue-50)}.wfside .steps a.on{background:var(--blue-100);color:var(--blue-700);border-left-color:var(--blue-500);font-weight:600}
.stn{display:inline-grid;place-items:center;min-width:1.35rem;height:1.35rem;border-radius:50%;background:var(--line-2);font-size:.75rem;font-weight:700;color:var(--text-2)}.steps a.on .stn{background:var(--blue-600);color:#fff}
.stico{margin-left:auto}
.bgrid{grid-template-columns:minmax(0,1fr) minmax(300px,400px)}
.form2 label{color:var(--text)}.form2 .muted{font-size:.8rem}
input[type=search],input[type=number],input[type=text],select{border-color:#b8c2cf;border-radius:var(--r);background:#fff}
input:focus-visible,select:focus-visible{outline:2px solid var(--blue-500);outline-offset:1px}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.prose{max-width:none}.prose h1{margin-top:0}
/* responsive */
@media (max-width:1100px){.gs-t{display:none}.gsearch{min-width:0}.gs-k{display:none}.wfwrap{grid-template-columns:190px minmax(0,1fr)}.bgrid{grid-template-columns:1fr}.bgrid aside{order:0}}
@media (max-width:960px){
  .gnav{display:none}.gh-burger{display:inline-flex}.gh-in{gap:.5rem}.gsearch{margin-left:auto}
  .wfwrap{grid-template-columns:minmax(0,1fr)}
  .wfside{position:static;max-height:none;padding:.5rem}.wfside .steps{flex-direction:row;overflow-x:auto;gap:.25rem;padding-bottom:.2rem}
  .wfside .steps a{border-left:0;border-bottom:3px solid transparent;border-radius:var(--r) var(--r) 0 0;white-space:nowrap}.wfside .steps a.on{border-bottom-color:var(--blue-500)}.wf-key{display:none}
}
@media (max-width:800px){
  .libwrap{grid-template-columns:minmax(0,1fr)}.libside{position:static;max-height:none}.libside summary{cursor:pointer;list-style:revert}.ls-list{max-height:50vh}
  .ctx{position:static}.ctx-in{padding:0 .6rem;gap:.1rem .3rem}.cnav{flex:1 1 100%}.steelchip,body.steel .steelchip,body.wood .woodchip,body.masonry .masonrychip,body.cfs .cfschip,body.asce .ascechip,body.sef .sefchip{margin:0 0 .4rem;font-size:.78rem}.ctx .ed{margin:0 0 .4rem}.cnav-m{display:none}
}
@media (max-width:560px){.eqlist a{flex-direction:column;gap:.1rem}.eqlist .ref{white-space:normal}.hero h1{font-size:1.5rem}.brand span{font-size:.98rem}.mlinks{columns:1}.gsearch{padding:.42rem}.gs-t{display:none}main{padding:.7rem}.card{padding:.8rem}.hsearch .btn{padding:.45rem .6rem}}
@media print{.gh,.ctx,.crumbs-wrap,.gf,.notice,.wfside,.sdlg,.drawer{display:none!important}.wfwrap{display:block}}

/* r2: compact calculator header, calculation details, empty panels */
.calc-head{padding:.6rem .9rem;margin-bottom:.7rem}.calc-head h1,.calc-head h2{font-size:1.25rem;margin:0}
.calc-head .calc-scope{margin:.15rem 0 0;font-size:.8rem}.calc-meta{margin:.35rem 0 0;gap:.3rem}
.notice-i{display:inline-flex;align-items:center;gap:.3rem;color:var(--text-2);margin-left:.3rem}.notice-i .ico{color:#9a6b00}
.calcdet{margin:.8rem 0 .2rem;border:1px solid var(--line);border-radius:var(--r);padding:.4rem .7rem;background:var(--surface-2)}
.calcdet summary{cursor:pointer;font-weight:600}.calcdet .form2{margin-top:.5rem}
.card.vh-empty,#bside:empty{display:none}
.bgrid.noresult{grid-template-columns:minmax(0,1fr)}.bgrid.noresult>aside{display:none}
.bgrid.tutmode{grid-template-columns:minmax(0,1fr)!important}.bgrid.tutmode>aside,.bgrid.tutmode #bform,.bgrid.tutmode #bres{display:none!important}.steps a.tutlink .muted{color:inherit;opacity:.75}#btut table.tutin td:first-child{min-width:14em}
.warnbox{border:1px solid #b7791f;background:#fffbea;padding:.5rem .75rem;border-radius:6px;margin:.5rem 0}

.presets{display:inline-flex;flex-wrap:wrap;gap:.25rem;margin:.25rem 0 0 .4rem;vertical-align:middle}.chip{border:1px solid var(--line,#ccd);background:var(--bg2,#f6f7fb);border-radius:999px;padding:.2rem .6rem;min-height:28px;cursor:pointer;font:inherit}.chip:hover,.chip:focus-visible{border-color:var(--acc,#2a5bd7)}@media(max-width:600px){.presets{margin-left:0}.chip{min-height:32px}}
/* tutorial input tables read as stacked cards on phones instead of a narrow, very tall three-column table */
@media (max-width:640px){table.tutin thead{display:none}table.tutin,table.tutin tbody,table.tutin tr,table.tutin td{display:block;width:auto}
table.tutin tr{border-bottom:1px solid #dde3ea;padding:.45rem 0}table.tutin td{border:0!important;padding:.1rem 0!important;min-width:0!important}
table.tutin td:first-child{font-weight:600}table.tutin td:nth-child(2){font-size:.85em;opacity:.8}table.tutin td:nth-child(2):empty{display:none}}
details.eqtrace{margin:.35rem 0;border-left:3px solid #9fb4cc;padding-left:.5rem}details.eqtrace ol{margin:.25rem 0 .25rem 1.1rem;padding:0}
details.eqtrace li{margin:.25rem 0;overflow-x:auto;max-width:100%}details.eqtrace li.br{list-style:none;margin-left:-1.1rem}
/* shared a11y pass: 24px minimum targets (WCAG 2.5.8) and no truncated selects on phones */
summary{min-height:24px;display:list-item;padding-block:2px}
.crumbs a,.gf a,.ctx a,.wfside a,.mlinks a{display:inline-block;min-height:24px;line-height:24px}
a.skip{min-height:24px;line-height:24px}
input[type=checkbox],input[type=radio]{min-width:20px;min-height:20px;margin:2px}
label:has(>input[type=checkbox]),label:has(>input[type=radio]){min-height:24px;display:inline-flex;align-items:center;gap:.3rem}
@media (max-width:600px){.form2{grid-template-columns:minmax(0,1fr)!important}.form2 select,.form2 input{width:100%;max-width:100%}
select{text-overflow:ellipsis;font-size:.86rem}}
/* t168u wood tutorials: workflow/factor/glossary tables stack as labelled cards on phones; diagrams scale to the column */
.wdgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.8rem;margin:.5rem 0}
.wdiag{margin:0;border:1px solid #dde3ea;border-radius:6px;padding:.4rem;background:#fff;min-width:0}.wdiag svg{display:block;width:100%;height:auto;max-height:340px}
.wdiag figcaption{font-size:.85rem;color:#333;margin-top:.3rem}.wdiag .illus{color:#b35c00;font-weight:400}
#btut table.tutw td:first-child{min-width:10em}table.excerpt td,table.excerpt th{white-space:nowrap;font-size:.85rem}
@media (max-width:640px){table.tcard thead{display:none}table.tcard,table.tcard tbody,table.tcard tr,table.tcard td{display:block;width:auto}
table.tcard tr{border-bottom:1px solid #dde3ea;padding:.45rem 0}table.tcard td{border:0!important;padding:.1rem 0!important;min-width:0!important;overflow-wrap:anywhere}
table.tcard td[data-l]:not(:first-child)::before{content:attr(data-l) ": ";color:#666;font-weight:600}table.tcard td:first-child{font-weight:600}
.wdgrid{grid-template-columns:minmax(0,1fr)}}
