html,body{height:100%}body:has(#arduino-editor[data-theme=light]){background:#eceef1}body:has(#arduino-editor[data-theme=dark]){background:#16170f}#arduino-editor{--ide-bg: #eceef1;--ide-panel: #ffffff;--ide-border: #d6d9df;--ide-text: #111827;--ide-muted: #6b7280;--ide-soft: #f1f2f4;--ide-accent: #111827;--ide-accent-text: #ffffff;--term-bg: #f7f8fa;--term-text: #1f2937;--r-panel: 4px;--r-ctrl: 3px;height:100dvh;box-sizing:border-box;display:flex;flex-direction:column;gap:.4rem;padding:.45rem;color:var(--ide-text);background:var(--ide-bg)}#arduino-editor[data-theme=dark]{--ide-bg: #16170f;--ide-panel: #23241d;--ide-border: #3a3b32;--ide-text: #f3f4f2;--ide-muted: #9aa0a6;--ide-soft: #2c2d25;--ide-accent: #525a64;--term-bg: #14150f;--term-text: #e5e7eb}#arduino-editor *{box-sizing:border-box}#arduino-editor .ide-card,#arduino-editor .ide-toolbar,#arduino-editor .ide-statusbar{background:var(--ide-panel);border:1px solid var(--ide-border);border-radius:var(--r-panel)}#arduino-editor .ide-card{overflow:hidden}#arduino-editor .ide-head{border-bottom:1px solid var(--ide-border)}#arduino-editor .ide-muted{color:var(--ide-muted)}#arduino-editor .ide-btn{display:inline-flex;align-items:center;gap:.3rem;border:1px solid var(--ide-border);background:var(--ide-panel);color:var(--ide-text);border-radius:var(--r-ctrl);padding:.3rem .55rem;font-size:.78rem;font-weight:500;cursor:pointer;white-space:nowrap}#arduino-editor .ide-btn:hover{background:var(--ide-soft)}#arduino-editor .ide-btn:disabled{opacity:.5;cursor:default}#arduino-editor .ide-btn-primary{background:var(--ide-accent);color:var(--ide-accent-text);border-color:var(--ide-accent)}#arduino-editor .ide-icon{padding:.3rem .45rem;font-size:.9rem;line-height:1}#arduino-editor .ide-btn svg,#arduino-editor .ac-les-status svg,#arduino-editor .ac-brand svg{width:1em;height:1em;flex:0 0 auto}#arduino-editor select.ide-input,#arduino-editor input.ide-input{border:1px solid var(--ide-border);background:var(--ide-panel);color:var(--ide-text);border-radius:var(--r-ctrl);padding:.28rem .4rem;font-size:.78rem}#arduino-editor .ide-spinner{display:inline-block;width:13px;height:13px;border:2px solid var(--ide-border);border-top-color:currentColor;border-radius:50%;animation:ide-spin .7s linear infinite;vertical-align:-2px}@keyframes ide-spin{to{transform:rotate(360deg)}}#arduino-editor .ide-top{flex:0 0 auto}#arduino-editor .ide-toolbar{container-type:inline-size}#arduino-editor .tb-right{margin-left:0}@container (min-width: 880px){#arduino-editor .tb-right{margin-left:auto}}#arduino-editor .ac-brand{display:inline-flex;align-items:center;gap:.3rem}#arduino-editor .ide-workspace{flex:1 1 auto;min-height:0;display:flex;gap:.45rem}#arduino-editor .ide-examples{flex:0 0 210px;min-width:0;height:100%;display:flex;flex-direction:column;overflow:hidden}#arduino-editor .ide-lessons{flex:0 0 var(--lessons-w, 380px);min-width:0;height:100%;display:flex;flex-direction:column;overflow:hidden}#arduino-editor .ide-main{flex:1 1 auto;min-width:0;height:100%}#arduino-editor .ide-reference{flex:0 0 var(--ref-w, 330px);min-width:0;height:100%;display:flex;flex-direction:column;overflow:hidden}#arduino-editor[data-examples=closed] .ide-examples,#arduino-editor[data-lessons=closed] .ide-lessons,#arduino-editor[data-ref=closed] .ide-reference{display:none}#arduino-editor .ide-vrez{flex:0 0 8px;align-self:stretch;position:relative;cursor:col-resize;touch-action:none}#arduino-editor[data-lessons=closed] .ide-vrez-lessons,#arduino-editor[data-ref=closed] .ide-vrez-ref{display:none}#arduino-editor .ide-vrez:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--ide-border);border-radius:2px;width:3px;height:40px}#arduino-editor .ide-vrez:hover:after{background:var(--ide-muted)}#arduino-editor .ide-main{display:grid}#arduino-editor[data-monitor=bottom] .ide-main{grid-template-rows:minmax(0,1fr) 8px var(--mon-h, 230px);grid-template-areas:"editor" "rez" "monitor"}#arduino-editor[data-monitor=top] .ide-main{grid-template-rows:var(--mon-h, 230px) 8px minmax(0,1fr);grid-template-areas:"monitor" "rez" "editor"}#arduino-editor[data-monitor=right] .ide-main{grid-template-columns:minmax(0,1fr) 8px var(--mon-w, 400px);grid-template-areas:"editor rez monitor"}#arduino-editor .ide-editor-pane{grid-area:editor;min-height:0;min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr) 8px var(--msg-h, 104px);grid-template-areas:"ehead" "edit" "mrez" "msgs"}#arduino-editor .ide-monitor-pane{grid-area:monitor;min-height:0;min-width:0;display:flex;flex-direction:column}#arduino-editor .ide-rez{grid-area:rez}#arduino-editor .ide-rez,#arduino-editor .ide-mrez{position:relative;touch-action:none}#arduino-editor[data-monitor=bottom] .ide-rez,#arduino-editor[data-monitor=top] .ide-rez{cursor:row-resize}#arduino-editor[data-monitor=right] .ide-rez{cursor:col-resize}#arduino-editor .ide-mrez{grid-area:mrez;cursor:row-resize}#arduino-editor .ide-rez:after,#arduino-editor .ide-mrez:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--ide-border);border-radius:2px;width:40px;height:3px}#arduino-editor[data-monitor=right] .ide-rez:after{width:3px;height:40px}#arduino-editor .ide-rez:hover:after,#arduino-editor .ide-mrez:hover:after{background:var(--ide-muted)}#arduino-editor .ide-ehead{grid-area:ehead}#arduino-editor .ac-fname{border:0;background:transparent;color:var(--ide-text);font:inherit;font-weight:600;field-sizing:content;min-width:2ch;max-width:14rem;padding:0 .1rem}#arduino-editor .ac-fname:focus{outline:1px solid var(--ide-border);border-radius:2px}#arduino-editor .ac-ace,#arduino-editor .ac-code{grid-area:edit;min-height:0;height:100%;width:100%}#arduino-editor .ac-code{resize:none;border:0;padding:.65rem;font-family:ui-monospace,SF Mono,Menlo,monospace;line-height:1.5;background:var(--ide-panel);color:var(--ide-text)}#arduino-editor[data-theme=dark] .ac-code{background:#272822;color:#f8f8f2}#arduino-editor .ide-messages{grid-area:msgs;min-height:0;display:flex;flex-direction:column;overflow:hidden;border-top:1px solid var(--ide-border)}#arduino-editor .ac-log{flex:1 1 auto;min-height:0;overflow:auto;margin:0;padding:.45rem .6rem;white-space:pre-wrap;font-family:ui-monospace,Menlo,monospace;font-size:12px;background:var(--ide-soft);color:var(--ide-text)}#arduino-editor .ac-monitor{flex:1 1 auto;min-height:0;overflow:auto;margin:0;padding:.5rem;font-family:ui-monospace,Menlo,monospace;font-size:12px;line-height:1.5;background:var(--term-bg);color:var(--term-text);white-space:pre-wrap}#arduino-editor .ac-examples-list{flex:1 1 auto;min-height:0;overflow:auto;padding:.35rem .4rem}#arduino-editor .ac-ex-group{margin-bottom:.55rem}#arduino-editor .ac-ex-group h4{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ide-muted);margin:.15rem .25rem .25rem}#arduino-editor .ac-ex-item{display:block;width:100%;text-align:left;border:0;background:transparent;color:var(--ide-text);padding:.3rem .45rem;border-radius:var(--r-ctrl);font-size:.8rem;cursor:pointer}#arduino-editor .ac-ex-item:hover{background:var(--ide-soft)}#arduino-editor .ac-ref-tabs{display:flex;gap:.25rem;padding:.35rem .45rem 0;flex-wrap:wrap;flex:0 0 auto}#arduino-editor .ac-ref-tab{border:1px solid var(--ide-border);border-bottom:0;background:var(--ide-soft);color:var(--ide-muted);border-radius:var(--r-ctrl) var(--r-ctrl) 0 0;padding:.2rem .5rem;font-size:.72rem;cursor:pointer}#arduino-editor .ac-ref-tab.active{background:var(--ide-panel);color:var(--ide-text);font-weight:600}#arduino-editor .ac-ref-list{flex:1 1 auto;min-height:0;overflow:auto;padding:.35rem .5rem;border-top:1px solid var(--ide-border)}#arduino-editor .ac-ref-group{margin-bottom:.65rem}#arduino-editor .ac-ref-group h4{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ide-muted);margin:.15rem 0 .3rem}#arduino-editor .ac-ref-item{padding:.3rem .4rem;border-radius:var(--r-ctrl)}#arduino-editor .ac-ref-item:hover{background:var(--ide-soft)}#arduino-editor .ac-ref-name{font-family:ui-monospace,Menlo,monospace;font-size:.76rem;font-weight:600}#arduino-editor .ac-ref-desc{font-size:.74rem;color:var(--ide-muted);margin-top:.06rem}#arduino-editor .ac-ref-ex{margin:.2rem 0 0;padding:.28rem .4rem;border-radius:var(--r-ctrl);background:var(--ide-soft);font-family:ui-monospace,Menlo,monospace;font-size:.71rem;overflow-x:auto;white-space:pre}#arduino-editor .ac-ref-empty{color:var(--ide-muted);font-size:.78rem;padding:.4rem}#arduino-editor .ac-les-back{padding:.1rem .4rem;font-size:.7rem}#arduino-editor .ac-les-search-wrap{padding:.5rem .5rem .25rem;flex:0 0 auto}#arduino-editor .ac-lessons-body{flex:1 1 auto;min-height:0;overflow:auto;padding:0 .55rem .55rem}#arduino-editor .ac-lessons-body>.ac-les-group:first-child{margin-top:.4rem}#arduino-editor .ac-les-group{margin-bottom:.65rem}#arduino-editor .ac-les-group h4{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ide-muted);margin:.15rem .15rem .3rem}#arduino-editor .ac-les-item{display:block;width:100%;text-align:left;border:1px solid var(--ide-border);background:var(--ide-panel);color:var(--ide-text);padding:.45rem .55rem;border-radius:var(--r-ctrl);margin-bottom:.35rem;cursor:pointer}#arduino-editor .ac-les-item:hover{background:var(--ide-soft)}#arduino-editor .ac-les-item-title{font-size:.82rem;font-weight:600}#arduino-editor .ac-les-item-sum{font-size:.73rem;color:var(--ide-muted);margin-top:.12rem}#arduino-editor .ac-les-empty{color:var(--ide-muted);font-size:.78rem;padding:.4rem}#arduino-editor .ac-les-lead{margin-bottom:.5rem}#arduino-editor .ac-les-lead h3{font-size:.98rem;font-weight:700;margin:0}#arduino-editor .ac-les-lead .ac-les-item-sum{margin-top:.15rem}#arduino-editor .ac-les-step{margin:0 0 .85rem}#arduino-editor .ac-les-text{font-size:.82rem;line-height:1.5}#arduino-editor .ac-les-text p{margin:0 0 .5rem}#arduino-editor .ac-les-text code{font-family:ui-monospace,Menlo,monospace;font-size:.76rem;background:var(--ide-soft);padding:.04rem .25rem;border-radius:3px}#arduino-editor .ac-les-text a{color:inherit;text-decoration:underline;text-underline-offset:2px}#arduino-editor .ac-les-figure{margin:0}#arduino-editor .ac-les-figure video,#arduino-editor .ac-les-figure img{width:100%;height:auto;border:1px solid var(--ide-border);border-radius:var(--r-panel);background:var(--ide-soft);display:block}#arduino-editor .ac-les-figcap{font-size:.72rem;color:var(--ide-muted);margin-top:.25rem}#arduino-editor .ac-les-media-ph{display:flex;align-items:center;justify-content:center;text-align:center;min-height:120px;padding:1rem;border:1px dashed var(--ide-border);border-radius:var(--r-panel);background:var(--ide-soft);color:var(--ide-muted);font-size:.76rem}#arduino-editor .ac-les-code{position:relative}#arduino-editor .ac-les-code pre{margin:0;padding:.5rem .6rem;border-radius:var(--r-panel);background:var(--ide-soft);border:1px solid var(--ide-border);overflow-x:auto;font-family:ui-monospace,Menlo,monospace;font-size:.73rem;line-height:1.5;white-space:pre}#arduino-editor .ac-les-copy{position:absolute;top:.35rem;right:.35rem;padding:.1rem .4rem;font-size:.68rem}#arduino-editor .ac-les-cap{font-size:.72rem;color:var(--ide-muted);margin:0 0 .2rem}#arduino-editor .ac-les-q{border:1px solid var(--ide-border);border-left:3px solid var(--ide-accent);border-radius:var(--r-panel);padding:.55rem .6rem;background:var(--ide-panel)}#arduino-editor .ac-les-q-prompt{font-size:.82rem;font-weight:600;margin-bottom:.4rem}#arduino-editor .ac-les-q-label{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ide-muted);margin-bottom:.3rem}#arduino-editor .ac-les-disc{border:1px solid var(--ide-border);border-radius:var(--r-ctrl);margin-top:.3rem;background:var(--ide-soft)}#arduino-editor .ac-les-disc>summary{cursor:pointer;padding:.3rem .5rem;font-size:.76rem;font-weight:600;list-style:none;user-select:none}#arduino-editor .ac-les-disc>summary::-webkit-details-marker{display:none}#arduino-editor .ac-les-disc>summary:before{content:"▸ ";color:var(--ide-muted)}#arduino-editor .ac-les-disc[open]>summary:before{content:"▾ "}#arduino-editor .ac-les-disc .ac-les-disc-body{padding:0 .55rem .45rem;font-size:.79rem;line-height:1.5}#arduino-editor .ac-les-disc .ac-les-code{margin-top:.35rem}#arduino-editor .ac-les-refbtn{margin-top:.4rem;padding:.2rem .5rem;font-size:.72rem}#arduino-editor .ac-les-ex{border:1px solid var(--ide-border);border-left:3px solid var(--ide-muted);border-radius:var(--r-panel);padding:.55rem .6rem;background:var(--ide-panel)}#arduino-editor .ac-les-ex.done{border-left-color:#16a34a}#arduino-editor .ac-les-ex-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}#arduino-editor .ac-les-part{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ide-muted)}#arduino-editor .ac-les-status{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;font-weight:600;color:var(--ide-muted)}#arduino-editor .ac-les-ex.done .ac-les-status{color:#16a34a}#arduino-editor[data-theme=dark] .ac-les-ex.done .ac-les-status{color:#4ade80}#arduino-editor .ac-les-progress{position:sticky;top:0;z-index:5;margin:0 -.55rem .7rem;padding:.5rem .55rem .45rem;background:var(--ide-panel);border-bottom:1px solid var(--ide-border)}#arduino-editor .ac-les-progress-row{display:flex;justify-content:space-between;font-size:.72rem;font-weight:600;color:var(--ide-muted);margin-bottom:.25rem}#arduino-editor .ac-les-bar{height:6px;border-radius:999px;background:var(--ide-soft);border:1px solid var(--ide-border);overflow:hidden}#arduino-editor .ac-les-bar-fill{height:100%;background:var(--ide-muted);border-radius:999px;transition:width .2s ease}#arduino-editor .ac-les-bar-fill.full{background:#16a34a}#arduino-editor .ac-les-input{width:100%;margin-top:.4rem;padding:.45rem .55rem;resize:vertical;border:1px solid var(--ide-border);border-radius:var(--r-ctrl);background:var(--ide-soft);color:var(--ide-text);font-family:ui-monospace,Menlo,monospace;font-size:.76rem;line-height:1.5}#arduino-editor[data-theme=dark] .ac-les-input{background:#272822;color:#f8f8f2}#arduino-editor .ac-les-input:focus{outline:1px solid var(--ide-muted)}#arduino-editor .ac-les-ex-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.4rem}#arduino-editor .ac-les-check{padding:.25rem .7rem}#arduino-editor .ac-les-fb{font-size:.78rem;line-height:1.45;margin-top:.35rem}#arduino-editor .ac-les-fb:empty{display:none}#arduino-editor .ac-les-fb.ok{color:#15803d}#arduino-editor .ac-les-fb.err{color:#b91c1c}#arduino-editor[data-theme=dark] .ac-les-fb.ok{color:#4ade80}#arduino-editor[data-theme=dark] .ac-les-fb.err{color:#f87171}#arduino-editor .ac-les-fb code{font-family:ui-monospace,Menlo,monospace;font-size:.73rem;background:var(--ide-soft);padding:.02rem .22rem;border-radius:3px}#arduino-editor .ac-les-sketch{margin-top:.2rem}#arduino-editor .ac-seg{display:inline-flex;gap:.25rem}#arduino-editor .ac-seg .ide-btn{padding:.15rem .45rem;font-size:.72rem}#arduino-editor .ac-plot{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}#arduino-editor .ac-plot-controls{flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.4rem .55rem;border-bottom:1px solid var(--ide-border)}#arduino-editor .ac-plot-ctl{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;color:var(--ide-muted)}#arduino-editor .ac-plot-controls .ide-btn{padding:.2rem .5rem}#arduino-editor .ac-plot-num{width:4.5rem}#arduino-editor .ac-plot-canvas-wrap{flex:1 1 auto;min-height:0;position:relative;background:var(--term-bg)}#arduino-editor .ac-plot-canvas-wrap canvas{position:absolute;inset:0;display:block}#arduino-editor .ac-ready{color:#16a34a;font-weight:600}#arduino-editor[data-theme=dark] .ac-ready{color:#4ade80}#arduino-editor .ac-modal-backdrop{position:fixed;inset:0;z-index:50;background:#00000073;display:flex;align-items:center;justify-content:center;padding:1rem}#arduino-editor .ac-modal{background:var(--ide-panel);color:var(--ide-text);border:1px solid var(--ide-border);border-radius:var(--r-panel);padding:1rem 1.1rem;max-width:26rem;width:100%;box-shadow:0 12px 40px #00000059}#arduino-editor .ac-modal-title{font-size:1rem;font-weight:700;margin-bottom:.35rem}#arduino-editor .ac-modal-sub{font-size:.82rem;color:var(--ide-muted);margin:.45rem 0}#arduino-editor .ac-modal-steps{margin:.3rem 0 .2rem;padding-left:1.2rem;font-size:.85rem;line-height:1.6}#arduino-editor .ac-modal-steps li{margin:.1rem 0}#arduino-editor .ac-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.9rem}@media(max-width:980px){#arduino-editor .ide-examples{flex-basis:170px}#arduino-editor .ide-lessons{flex-basis:300px}#arduino-editor .ide-reference{flex-basis:270px}}
