.pdeck [hidden]{display:none!important}.pq{gap:10px;max-width:640px;margin-top:22px;display:flex}.pq input,.pv-tt input,.pv-tools input{border:1.5px solid var(--exb);background:var(--bg);min-width:0;min-height:48px;color:var(--ink);font:500 18px/1.3 var(--f-t);border-radius:12px;flex:1;padding:11px 14px}.pq input:focus,.pv-tt input:focus,.pv-tools input:focus{outline:2px solid var(--signal);outline-offset:1px}.pq-none{grid-column:1/-1;font-size:18px}.pgrp{content-visibility:auto;contain-intrinsic-size:auto 640px;grid-column:1/-1;margin-top:28px}.pgrp h2{letter-spacing:-.015em;margin:0 4px 14px;font-size:30px;line-height:1.05}.prel{content-visibility:visible;contain-intrinsic-size:none}.ptiles{gap:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));padding:0;list-style:none;display:grid}.ptiles li{min-width:0;display:flex}.ptile{flex:1;padding:12px 12px 14px}.pimg{background:var(--tile);border-radius:14px;justify-content:center;align-items:center;height:160px;padding:12px;display:flex}.pimg img{object-fit:contain;width:100%;height:100%;display:block}.ptile h3{letter-spacing:-.005em;margin:14px 6px 0;font-size:19px;line-height:1.2}.ptile .cap{padding:10px 6px 0}.pvd .phead h1{overflow-wrap:anywhere;font-size:clamp(34px,3.6vw,56px);line-height:1.02}.pv{flex-direction:column;grid-column:1/-1;gap:14px;padding:16px;display:flex}.pv-bar{flex-direction:column;gap:10px;display:flex}.pv-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pv-tools input{max-width:420px;min-height:44px;font-size:16px}.pv-sys{box-shadow:inset 0 0 0 1.5px var(--exb);border-radius:12px;gap:2px;padding:3px;display:inline-flex}.pv-sys button{color:var(--ink);font:600 14px/1 var(--f-t);cursor:pointer;background:0 0;border:0;border-radius:9px;min-height:38px;padding:0 12px}.pv-sys button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.pv-lg{flex-wrap:wrap;gap:6px;display:flex}.pv-lg a{min-height:32px;box-shadow:inset 0 0 0 1.5px var(--exb);font:500 14px/1.2 var(--f-t);border-radius:10px;align-items:center;gap:6px;padding:4px 10px 4px 4px;text-decoration:none;transition:box-shadow .15s,background-color .15s;display:inline-flex}.pv-lg a:not(:has(i,b)){padding-left:10px}.pv-lg a:has(>i.cf:only-child){padding:4px}.pv-lg a:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}.pv-lg a[aria-current=true]{box-shadow:inset 0 0 0 2px var(--signal);background:var(--ph)}.pv-lg .c0{min-width:0}.pv-every{color:var(--soft);max-width:70em;font-size:14px;line-height:1.4}.pd{--P:30px;background:var(--tile);border-radius:18px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;padding:14px 12px;display:grid}.pd.one-R{grid-template-columns:auto minmax(0,max-content);justify-content:center}.pd.one-L{grid-template-columns:minmax(0,max-content) auto;justify-content:center}.pc{justify-content:center;display:flex}.pcs{display:block;overflow:visible}.pcs-m{display:none}.pbd image{pointer-events:none}.ld path{fill:none;stroke:var(--soft);stroke-width:1.1px;stroke-linejoin:round;opacity:.75;transition:opacity .15s,stroke .15s}.ld path.on{stroke:#ff6b00;stroke-width:2.2px;opacity:1}.pm{fill:#ff6b00;stroke:#fff;stroke-width:2px;pointer-events:none}.pcs.near{cursor:pointer}.pl{min-width:0;margin:0;padding:0;list-style:none}.pl li{height:var(--P);margin-top:calc(var(--g,0) * var(--P))}.pl .r{height:var(--P);padding-top:calc((var(--P) - 22px) / 2);color:inherit;outline-offset:-2px;border-radius:8px;flex-wrap:wrap;align-content:flex-start;gap:10px 4px;text-decoration:none;display:flex;overflow:hidden}.pl-L .r{flex-direction:row-reverse;padding-left:4px}.pl-R .r{padding-right:4px}.pl .r>*{order:3}.pl .r>.cn{order:0}.pl .r>.c0{order:1}.pl .r>.ci{order:2}.pl .r>.cb{order:3}.pl .r>.cf{order:4}.pl .r:hover,.pl .r:focus-visible,.pl .on>.r{background:var(--ph)}.pl .on .c0{box-shadow:0 0 0 2px #ff6b00}.pl li:target>.r{background:#ff6b002e}.pd .ci{display:none}.pd[data-sys=gpio] .v-gpio,.pd[data-sys=port] .v-port,.pd[data-sys=ard] .v-ard{display:inline-flex}.pd .pl li{transition:opacity .15s}.pv[data-f]:not([data-f=""]) .ld path:not(.fm),.pv.q .ld path:not(.qm){opacity:.12}.pv.q .pl li:not(.qm){opacity:.22}.pv.q .pl li.qm>.r{background:#ff6b0029}.pv[data-f=i2c] .pl li:not(.f-i2c),.pv[data-f=spi] .pl li:not(.f-spi),.pv[data-f=uart] .pl li:not(.f-uart),.pv[data-f=adc] .pl li:not(.f-adc),.pv[data-f=dac] .pl li:not(.f-dac),.pv[data-f=touch] .pl li:not(.f-touch),.pv[data-f=pwm] .pl li:not(.f-pwm),.pv[data-f=rtc] .pl li:not(.f-rtc),.pv[data-f=usb] .pl li:not(.f-usb),.pv[data-f=jtag] .pl li:not(.f-jtag),.pv[data-f=timer] .pl li:not(.f-timer),.pv[data-f=clock] .pl li:not(.f-clock),.pv[data-f=analog] .pl li:not(.f-analog),.pv[data-f=rf] .pl li:not(.f-rf),.pv[data-f=pwr] .pl li:not(.f-pwr),.pv[data-f=boot] .pl li:not(.f-boot),.pv[data-f=in] .pl li:not(.f-in),.pv[data-f=no] .pl li:not(.f-no),.pv[data-f=v33] .pl li:not(.f-v33),.pv[data-f=per] .pl li:not(.f-per),.pv[data-f=unv] .pl li:not(.f-unv){opacity:.22}.pv[data-f=i2c] .pl .cf:not(.t-i2c),.pv[data-f=spi] .pl .cf:not(.t-spi),.pv[data-f=uart] .pl .cf:not(.t-uart),.pv[data-f=adc] .pl .cf:not(.t-adc),.pv[data-f=dac] .pl .cf:not(.t-dac),.pv[data-f=touch] .pl .cf:not(.t-touch),.pv[data-f=pwm] .pl .cf:not(.t-pwm),.pv[data-f=rtc] .pl .cf:not(.t-rtc),.pv[data-f=usb] .pl .cf:not(.t-usb),.pv[data-f=jtag] .pl .cf:not(.t-jtag),.pv[data-f=timer] .pl .cf:not(.t-timer),.pv[data-f=clock] .pl .cf:not(.t-clock),.pv[data-f=analog] .pl .cf:not(.t-analog),.pv[data-f=rf] .pl .cf:not(.t-rf){opacity:.3}.pv[data-f=i2c] .pl .t-i2c,.pv[data-f=spi] .pl .t-spi,.pv[data-f=uart] .pl .t-uart,.pv[data-f=adc] .pl .t-adc,.pv[data-f=dac] .pl .t-dac,.pv[data-f=touch] .pl .t-touch,.pv[data-f=pwm] .pl .t-pwm,.pv[data-f=rtc] .pl .t-rtc,.pv[data-f=usb] .pl .t-usb,.pv[data-f=jtag] .pl .t-jtag,.pv[data-f=timer] .pl .t-timer,.pv[data-f=clock] .pl .t-clock,.pv[data-f=analog] .pl .t-analog,.pv[data-f=rf] .pl .t-rf{order:2}.g1{--g:1}.g2{--g:2}.g3{--g:3}.g4{--g:4}.g5{--g:5}.g6{--g:6}.g7{--g:7}.g8{--g:8}.g9{--g:9}.g10{--g:10}.g11{--g:11}.g12{--g:12}.g13{--g:13}.g14{--g:14}.g15{--g:15}.g16{--g:16}.g17{--g:17}.g18{--g:18}.g19{--g:19}.g20{--g:20}.g21{--g:21}.g22{--g:22}.g23{--g:23}.g24{--g:24}.g25{--g:25}.g26{--g:26}.g27{--g:27}.g28{--g:28}.g29{--g:29}.g30{--g:30}.g31{--g:31}.g32{--g:32}.g33{--g:33}.g34{--g:34}.g35{--g:35}.g36{--g:36}.g37{--g:37}.g38{--g:38}.g39{--g:39}.g40{--g:40}:root[data-theme=dark] .pbd{filter:drop-shadow(0 0 .5px #ffffff73)}:root[data-theme=dark] .pm{stroke:#121417}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .pbd{filter:drop-shadow(0 0 .5px #ffffff73)}:root:not([data-theme=light]) .pm{stroke:#121417}}.pv{position:relative}.pv-card{z-index:20;overflow-wrap:anywhere;background:var(--menu);width:min(360px,100% - 32px);max-height:min(560px,100vh - 32px);box-shadow:0 18px 50px -12px var(--shade),0 0 0 1px var(--rim-ff);border-radius:18px;padding:18px 18px 16px;position:absolute;overflow:auto}.pc-x0{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:12px;font-size:28px;line-height:1;position:absolute;top:6px;right:6px}.pc-x0:hover{background:var(--ph)}.pv-card:not(.lock) .pc-x0{display:none}.pv-card:not(.lock){pointer-events:none}.pc-h{letter-spacing:-.015em;overflow-wrap:anywhere;padding-right:44px;font-size:28px;line-height:1.05}.pc-m{font:400 13px/1.45 var(--f-m);color:var(--soft);margin-top:6px}.pc-c{background:var(--ph);box-shadow:inset 3px 0 0 var(--ink);border-radius:10px;margin-top:12px;padding:6px 10px;font-size:14px;line-height:1.4}.pc-c.c-likely,.pc-c.c-unverified{box-shadow:inset 3px 0 0 var(--signal)}.pc-fn{flex-wrap:wrap;gap:5px;margin-top:12px;padding:0;list-style:none;display:flex}.pc-fn .cf{white-space:normal;text-align:left;height:auto;min-height:24px;padding:4px 8px;line-height:1.25}.pc-fl{gap:5px;margin-top:10px;padding:0;list-style:none;display:grid}.pc-fl li{background:var(--ph);border-radius:10px;padding:6px 10px;font-size:14px;line-height:1.35}.pc-fl .warn{box-shadow:inset 3px 0 0 var(--sig-t)}.pc-fl .bad{box-shadow:inset 3px 0 0 var(--signal);font-weight:600}.pc-n{margin-top:8px;font-size:14px;line-height:1.45}.pc-n.x{color:var(--soft)}.pc-s{color:var(--soft);margin-top:12px;font-size:13px;line-height:1.4}.pc-s a{color:inherit}.pc-l{margin-top:12px;font-size:14px}.pv-cp{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:0 4px;display:flex}.pv-or{font:400 13px/1.3 var(--f-m);color:var(--soft);flex:260px}.pv-dl{--s:16px;border-radius:12px;flex:none;padding:8px 14px;font-size:15px}.pv-acts{flex-wrap:wrap;flex:none;gap:8px;display:flex}.pv-sum{flex-wrap:wrap;gap:12px 32px;padding:4px 4px 2px;display:flex}.pv-sum div{min-width:0}.pv-sum dt{font:400 13px/1.3 var(--f-m);color:var(--soft)}.pv-sum dd{margin:3px 0 0;font-size:16px;line-height:1.4}.pv-sum .ln{font:inherit;color:inherit;display:block}.pv-notes,.pv-tab,.pv-src{grid-column:1/-1}.pv-notes h2,.pv-tab h2,.pv-src h2{letter-spacing:-.015em;font-size:30px;line-height:1.05}.pv-notes h3{margin-top:22px;font-size:20px}.pv-notes ul,.pv-src ul{gap:10px;max-width:58.9em;margin-top:12px;padding-left:20px;line-height:1.45;display:grid}.pv-th{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.pv-tt{flex-wrap:wrap;flex:1;justify-content:flex-end;gap:10px;max-width:620px;display:flex}.pv-tt input{min-height:46px;font-size:16px}.pv-tt .btn2{cursor:pointer;color:var(--ink);background:0 0;border:0}.pv-tw{margin-top:14px;overflow-x:auto}.pv-t{border-collapse:collapse;width:100%;font-size:15px;line-height:1.4}.pv-t th{text-align:left;font:400 13px/1.3 var(--f-m);color:var(--soft);border-bottom:1.5px solid var(--exb);white-space:nowrap;padding:8px 10px}.pv-t td{border-bottom:1px solid var(--ph);vertical-align:top;padding:9px 10px}.pv-t td:first-child{white-space:nowrap;font-weight:600}.pv-t td:first-child a{text-decoration:none}.pv-t td:nth-child(2),.pv-t td:last-child{font:400 13px/1.4 var(--f-m)}.pv-t td:last-child{white-space:nowrap}.pv-t td:nth-child(3){min-width:220px}.pv-t td:nth-child(3) span:not(:last-child):after,.pv-t td:nth-child(4) span:not(:last-child):after{content:", "}.pv-t td:nth-child(3) .df,.pv-t td:nth-child(4) .bad{font-weight:600}.pv-t tbody tr{cursor:pointer;transition:background-color .15s}.pv-t tbody tr:hover{background:var(--ph)}.pv-t tr.is-match{background:#ff6b0021}.pv-t tr.is-on{background:#ff6b004d}.pv-t .c-likely,.pv-t .c-unverified{color:var(--sig-t)}.th-s{font:inherit;color:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.pv-t th[aria-sort] .th-s{color:var(--ink)}.pv-t th[aria-sort=ascending] .th-s:after{content:" ↑"}.pv-t th[aria-sort=descending] .th-s:after{content:" ↓"}.pv-src li a{font-weight:500}.pv-sm{font:400 13px/1.35 var(--f-m);color:var(--soft);margin-top:2px;display:block}.pv-sc{color:var(--soft);font-size:15px;display:block}.pv-src .pd{max-width:58.9em;margin-top:12px}.pv-warn{background:var(--ph);box-shadow:inset 3px 0 0 var(--signal);border-radius:12px;max-width:58.9em;margin-top:12px;padding:10px 14px}@media (max-width:1100px){.ptiles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:899px){.pd{--P:32px;padding:10px 6px}.pcs-d{display:none}.pcs-m{display:block}.pd .ci.sm,.pl .cb.info{display:none!important}.pl .r>.cf.df{order:3}.pl .r>.ci{order:4}.pl .r>.cf{order:5}.pv[data-f=i2c] .pl .t-i2c,.pv[data-f=spi] .pl .t-spi,.pv[data-f=uart] .pl .t-uart,.pv[data-f=adc] .pl .t-adc,.pv[data-f=dac] .pl .t-dac,.pv[data-f=touch] .pl .t-touch,.pv[data-f=pwm] .pl .t-pwm,.pv[data-f=rtc] .pl .t-rtc,.pv[data-f=usb] .pl .t-usb,.pv[data-f=jtag] .pl .t-jtag,.pv[data-f=timer] .pl .t-timer,.pv[data-f=clock] .pl .t-clock,.pv[data-f=analog] .pl .t-analog,.pv[data-f=rf] .pl .t-rf{order:2}.pv-card{z-index:30;width:auto;max-height:55vh;position:fixed;bottom:8px;left:8px;right:8px;top:auto!important}}.pv-lg .lg-m{display:none}@media (max-width:599px){.pd .ci,.pv-sys{display:none!important}.pd:not(.hdr) .cn{display:none}.pl .cn{min-width:20px;padding:0 2px}.pl .r>.cb{order:2}.pl .cf,.pl .c0{padding:0 4px}.pl .r{gap:10px 2px}.pl .cf{display:none}.pl .cf.m{display:inline-flex}.pv[data-f=i2c] .pl .cf.t-i2c,.pv[data-f=spi] .pl .cf.t-spi,.pv[data-f=uart] .pl .cf.t-uart,.pv[data-f=adc] .pl .cf.t-adc,.pv[data-f=dac] .pl .cf.t-dac,.pv[data-f=touch] .pl .cf.t-touch,.pv[data-f=pwm] .pl .cf.t-pwm,.pv[data-f=rtc] .pl .cf.t-rtc,.pv[data-f=usb] .pl .cf.t-usb,.pv[data-f=jtag] .pl .cf.t-jtag,.pv[data-f=timer] .pl .cf.t-timer,.pv[data-f=clock] .pl .cf.t-clock,.pv[data-f=analog] .pl .cf.t-analog,.pv[data-f=rf] .pl .cf.t-rf{order:2;display:inline-flex}.pv[data-f]:not([data-f=""]) .pl .r>.cb{order:3}.pv[data-f=i2c] .pl .cf.m:not(.t-i2c),.pv[data-f=spi] .pl .cf.m:not(.t-spi),.pv[data-f=uart] .pl .cf.m:not(.t-uart),.pv[data-f=adc] .pl .cf.m:not(.t-adc),.pv[data-f=dac] .pl .cf.m:not(.t-dac),.pv[data-f=touch] .pl .cf.m:not(.t-touch),.pv[data-f=pwm] .pl .cf.m:not(.t-pwm),.pv[data-f=rtc] .pl .cf.m:not(.t-rtc),.pv[data-f=usb] .pl .cf.m:not(.t-usb),.pv[data-f=jtag] .pl .cf.m:not(.t-jtag),.pv[data-f=timer] .pl .cf.m:not(.t-timer),.pv[data-f=clock] .pl .cf.m:not(.t-clock),.pv[data-f=analog] .pl .cf.m:not(.t-analog),.pv[data-f=rf] .pl .cf.m:not(.t-rf){display:none}.pl .cb,.pv-lg .lg-m{letter-spacing:0;justify-content:center;min-width:15px;padding:0 2px;font-size:0}.pl .cb:before,.pv-lg .lg-m:before{font:700 11px/1 var(--f-t)}.b-boot:before{content:"B"}.b-in:before{content:"IN"}.b-an:before{content:"A"}.b-out:before{content:"OUT"}.b-flash:before{content:"F"}.b-psram:before{content:"P"}.b-busy:before,.b-nc:before{content:"×"}.b-usb:before{content:"U"}.b-v33:before{content:"3V"}.b-per:before{content:"*"}.pv-lg .lg-d{display:none}.pv-lg .lg-m{display:inline-flex}}@media (max-width:760px){.ptiles{grid-template-columns:repeat(2,minmax(0,1fr))}.pimg{height:120px;padding:8px}.ptile h3{margin:10px 2px 0;font-size:16px}.ptile .cap{padding:8px 2px 0}.pgrp h2,.pv-notes h2,.pv-tab h2,.pv-src h2{font-size:24px}.pvd .phead h1{font-size:30px}.pvd .phead h1:where(.fit3){font-size:26px}.pv{gap:12px;padding:10px}.pd{border-radius:14px;margin:0 -10px;padding:10px 2px}.pv-tools input{flex-basis:100%;max-width:none}.pv-lg{scrollbar-width:none;flex-wrap:nowrap;margin:0 -10px;padding:0 10px 4px;overflow-x:auto}.pv-lg a{flex:none}.cf,.c0,.ci,.cb{letter-spacing:0;padding:0 5px;font-size:11.5px}.c0{min-width:26px}.pl .r{gap:10px 3px}.pv-tt{justify-content:flex-start}.pv-sum{gap:10px 24px}}.pv-notes,.pv-src,.pvd .phead{overflow-wrap:anywhere}@media (pointer:coarse){.pv-lg a{min-height:44px}.th-s{position:relative}.th-s:before{content:"";height:44px;position:absolute;top:50%;left:-6px;right:-6px;transform:translateY(-50%)}}
