.labo-piece{transform-origin:50%;cursor:grab;touch-action:none;position:absolute}.labo-piece:active{cursor:grabbing}.labo-piece.labo-choisie{outline-offset:6px;border-radius:6px;outline:2px dashed #0284c7}.labo-piece.labo-alerte{filter:drop-shadow(0 0 6px #ef4444)}.labo-piece.labo-grillee wokwi-led{filter:grayscale(.4)brightness(.8)}.lab{flex-direction:column;flex:auto;gap:6px;min-height:0;display:flex}.lab-barre{gap:6px}.lab-barre .btn{min-height:44px;padding-inline:12px}.lab-sep{background:var(--n2);align-self:stretch;width:1px;margin-inline:2px}.lab-lib{font-size:.9rem;font-weight:600}.lab-couleurs{flex-wrap:wrap;gap:4px;display:flex}.lab-couleurs button{cursor:pointer;border:2px solid #fff;border-radius:50%;width:30px;height:30px;padding:0;box-shadow:0 0 0 1px #94a3b8}.lab-couleurs button[aria-pressed=true]{box-shadow:0 0 0 3px var(--ink)}.lab-select{max-width:14rem}.lab-onglets{display:none}.lab-corps{flex:auto;grid-template-columns:minmax(120px,170px) minmax(0,1fr) minmax(260px,340px);gap:8px;min-height:0;display:grid}.lab-palette,.lab-etabli,.lab-droite{border:1px solid var(--n2);background:var(--surface);border-radius:12px;min-width:0;min-height:0}.lab-palette{-webkit-overflow-scrolling:touch;padding:6px;overflow:auto}.lab-cat{color:var(--n7);margin:6px 0 2px;font-size:.78rem;font-weight:600}.lab-grille{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.lab-piece-btn{border:1px solid var(--n2);background:var(--surface);min-height:80px;color:var(--ink);font:inherit;text-align:center;cursor:pointer;touch-action:manipulation;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px;font-size:.78rem;display:flex}.lab-piece-btn:active{border-color:var(--bleu)}.lab-ic{pointer-events:none;contain:paint;place-items:center;height:48px;display:grid;position:relative;overflow:hidden}.lab-palette wokwi-arduino-uno,.lab-palette wokwi-hc-sr04,.lab-palette wokwi-lcd1602,.lab-palette wokwi-photoresistor-sensor{zoom:.3}.lab-palette wokwi-servo{zoom:.42}.lab-palette wokwi-pushbutton,.lab-palette wokwi-potentiometer,.lab-palette wokwi-buzzer,.lab-palette wokwi-7segment{zoom:.55}.lab-palette wokwi-resistor{zoom:.85}.lab-palette wokwi-led,.lab-palette wokwi-rgb-led{zoom:.7}.lab-ic-plaque{background:#f4efe2 radial-gradient(#3b3a36 1px,#0000 1.2px) 0 0/5px 5px;border:1px solid #d6cfbd;border-radius:4px;width:48px;height:28px;display:block}.lab-ic-pile{background:#1f2937;border-radius:4px;width:24px;height:36px;display:block;box-shadow:inset 0 0 0 4px #fbbf24}.lab-ic-moteur{background:#d1d5db;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.lab-ic-moteur:after{content:"";background:#6b7280;border-radius:50%;width:20px;height:20px;box-shadow:0 0 0 2px #fbbf24}.lab-etabli{flex-direction:column;display:flex;overflow:hidden}.lab-scene{touch-action:none;background-color:#f8fafc;background-image:radial-gradient(#cbd5e1 1px,#0000 1.2px);background-size:22px 22px;flex:1;min-height:200px;position:relative;overflow:hidden}.lab-monde{inset-inline-start:0;transform-origin:0 0;position:absolute;top:0}.lab-fils{inset-inline-start:0;pointer-events:none;position:absolute;top:0;overflow:visible}.lab-charge{color:#64748b;place-items:center;margin:0;font-size:.9rem;display:grid;position:absolute;inset:0}.labo-en-cours .lab-scene{box-shadow:inset 0 0 0 3px #22c55e66}.lab-droite{flex-direction:column;gap:6px;padding:6px;display:flex;overflow:hidden}.lab-prog{flex-direction:column;flex:55%;min-height:0;display:flex}.lab-code{flex-direction:column;flex:1;min-height:0;display:flex}.lab-code textarea{resize:none;flex:1;width:100%;min-height:6rem;font:14px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.lab-code .cm-editor{flex:1;min-height:0}.lab-outils{flex-direction:column;flex:45%;min-height:0;display:flex}.lab-sous{-webkit-overflow-scrolling:touch;flex:1;min-height:0;font-size:.9rem;overflow:auto}.lab-sous[hidden]{display:none}.lab-sous label{margin-top:8px;display:block}.lab-sous input[type=range]{width:100%;min-height:32px}.lab-sous select{width:100%}.lab-sous button{border:2px solid var(--n3);background:var(--surface);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;margin-inline-end:6px;border-radius:10px;margin-top:8px;padding:4px 12px;font-weight:600}.lab-sous .float-end,.lab-sous output{float:inline-end;font-family:ui-monospace,Consolas,monospace;font-weight:700}.lab-sous p{margin:6px 0}.lab-diag p{border:1px solid var(--ko);color:var(--ko);border-radius:10px;margin:6px 0;padding:6px 10px;font-size:.88rem}.lab-serie{color:#6ee7b7;white-space:pre-wrap;background:#0f172a;border-radius:8px;height:100%;min-height:4rem;margin:0;padding:8px;font:13px/1.4 ui-monospace,Consolas,monospace;overflow:auto}.lab-sous[data-lab-sous-panneau=serie]{flex-direction:column;display:flex}.lab-sous[data-lab-sous-panneau=serie][hidden]{display:none}.lab-sous[data-lab-sous-panneau=serie] .lab-serie{flex:1}@media (max-width:980px){.lab-onglets{display:flex}.lab-corps{grid-template-columns:minmax(0,1fr)}.lab-corps>[data-lab-panneau]{display:none}.lab-corps[data-vue=composants]>[data-lab-panneau=composants],.lab-corps[data-vue=etabli]>[data-lab-panneau=etabli],.lab-corps[data-vue=programme]>[data-lab-panneau=programme]{flex-direction:column;display:flex}.lab-corps[data-vue=composants]>.lab-palette{display:block}.lab-grille{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}}
