/* lab */
#lab{background:var(--bg2)}
.pl{display:flex;align-items:stretch;gap:0;margin:44px 0 20px}
.nd{flex:1;min-width:0;background:none;border:1px solid var(--ln);color:var(--ink);padding:18px 14px;text-align:left;cursor:pointer;font:inherit;position:relative;transition:.3s var(--ease)}
.nd+.nd{margin-left:26px}
.nd::before{content:"";position:absolute;left:-27px;top:50%;width:26px;height:2px;background:linear-gradient(90deg,transparent 0,var(--mint) 50%,transparent 100%) 0 0/200% 100%;animation:fl 2s linear infinite}
.nd:first-child::before{display:none}.nd b{display:block;font-size:1rem}.nd small{color:var(--mut);font-size:.78rem}
.nd:hover,.nd[aria-pressed=true]{border-color:var(--ac);background:#5b8cff18}
@keyframes fl{to{background-position:-200% 0}}
@media(max-width:700px){.pl{flex-direction:column}.nd+.nd{margin:26px 0 0}.nd::before{left:50%;top:-26px;width:2px;height:26px;background:linear-gradient(180deg,transparent,var(--mint),transparent) 0 0/100% 200%;animation:fv 2s linear infinite}@keyframes fv{to{background-position:0 -200%}}}
#pi{min-height:3.4em;color:var(--mut);max-width:70ch}
.pg{display:grid;gap:28px;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);margin-top:70px;align-items:center}
.pg canvas{width:100%;height:auto;border:1px solid var(--ln)}
.fb{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.fb button{padding:8px 14px;min-height:40px;border:1px solid var(--ln);background:none;color:var(--ink);border-radius:999px;cursor:pointer;font:inherit;font-size:.85rem;transition:.3s}
.fb button[aria-pressed=true]{background:var(--ac);border-color:var(--ac)}
input[type=range]{width:100%;accent-color:var(--mint)}
@media(max-width:820px){.pg{grid-template-columns:1fr}}
