:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#193142;--paper:#fffefd;--ink:#193142;--muted:#5f7382;--line:#b7d8e8;--green:#2fa66f;--coral:#f36c52;--blue:#14a8e0;--deep-blue:#1179ba;--piplup:#8ad9ff;--amber:#ffc83d;--soft-green:#dff7ea;--soft-coral:#ffe1da;--soft-blue:#dff5ff;--soft-amber:#fff2bf;--shadow:0 14px 28px #146c9c24;--panel:#fffefdf5;--field:#fff;--heading:#073d66;--green-ink:#17563d;--amber-ink:#432f00;--amber-line:#d69b00;--coral-ink:#8c2a1d;--bus-ink:#3530a1;--block-canvas:#fbfdff;--block-dot:#1179ba24;--page-wash:linear-gradient(180deg, #dff5fff2, #fffefdf5), repeating-linear-gradient(90deg, #14a8e01c 0 2px, transparent 2px 34px), repeating-linear-gradient(0deg, #ffc83d1a 0 2px, transparent 2px 34px);background:#eaf7ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#eef9ff;--paper:#102133;--ink:#eef9ff;--muted:#a7bfd0;--line:#2f5570;--green:#64d89a;--coral:#ff927d;--blue:#46c7f4;--deep-blue:#8ad9ff;--piplup:#64cdfd;--amber:#ffd56b;--soft-green:#163d31;--soft-coral:#4a231f;--soft-blue:#12384d;--soft-amber:#44330e;--shadow:0 16px 34px #0000004d;--panel:#102133f5;--field:#14283b;--heading:#d8f4ff;--green-ink:#a8f2c2;--amber-ink:#ffe9a3;--amber-line:#ffd56b;--coral-ink:#ffc1b4;--bus-ink:#d8d2ff;--block-canvas:#0c1c2b;--block-dot:#8ad9ff29;--page-wash:linear-gradient(180deg, #0b1c2bfa, #081420fa), repeating-linear-gradient(90deg, #46c7f414 0 2px, transparent 2px 34px), repeating-linear-gradient(0deg, #ffd56b0f 0 2px, transparent 2px 34px);background:#091622}*{box-sizing:border-box}html{width:100%;height:100%;overflow:hidden}body{background:var(--page-wash);width:100%;min-width:0;height:100%;min-height:100vh;color:var(--ink);margin:0;overflow:hidden}#root{width:100%;height:100%;min-height:100dvh;overflow:hidden}.app-crash-shell{background:var(--page-wash);place-items:center;min-height:100vh;padding:24px;display:grid}.app-crash-card{border:1px solid var(--line);background:var(--panel);width:min(560px,100%);box-shadow:var(--shadow);border-radius:8px;gap:14px;padding:22px;display:grid}.app-crash-card span{color:var(--deep-blue);text-transform:uppercase;font-size:12px;font-weight:850}.app-crash-card h1,.app-crash-card p{margin:0}.app-crash-card h1{color:var(--heading);font-size:24px;line-height:1.1}.app-crash-card p{color:var(--muted);line-height:1.45}.app-crash-card pre{border:1px solid var(--line);background:var(--field);max-height:180px;color:var(--coral-ink);white-space:pre-wrap;border-radius:8px;margin:0;padding:12px;overflow:auto}.app-crash-card button{background:var(--soft-blue);width:fit-content;min-height:38px;color:var(--heading);border-radius:8px;padding:0 14px;font-weight:800}.landing-shell{isolation:isolate;overscroll-behavior:contain;background:linear-gradient(180deg, #fffefde0, #dff5fff0 68%, #fffefdfa), linear-gradient(115deg, #8ad9ff7a, transparent 42%), var(--paper);height:100%;min-height:100dvh;color:var(--ink);padding-bottom:38px;position:relative;overflow:hidden auto}.landing-hero{isolation:isolate;align-items:start;min-height:min(820px,92vh);padding:92px clamp(16px,5vw,68px) 54px;transition:min-height .22s;display:grid;position:relative;overflow:hidden}.landing-hero:before{content:"";z-index:-2;background:linear-gradient(90deg,#14a8e014 0 1px,#0000 1px 42px),linear-gradient(0deg,#14a8e014 0 1px,#0000 1px 42px);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 90%);mask-image:linear-gradient(#000,#0000 90%)}.landing-hero:after{content:"";z-index:-1;background:linear-gradient(#0000,#fffefde6);height:24%;position:absolute;inset:auto 0 0}.landing-hero>*{z-index:1;position:relative}.landing-nav{z-index:4;justify-content:space-between;align-items:center;gap:14px;margin-bottom:8px;display:flex;position:relative;top:auto;left:clamp(16px,4vw,46px);right:clamp(16px,4vw,46px)}.landing-brand{color:var(--heading);align-items:center;gap:10px;font-size:15px;font-weight:900;display:inline-flex}.landing-brand-mark{background:linear-gradient(135deg, var(--deep-blue), var(--piplup));color:#fff;border-radius:999px;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 8px 18px #1179ba33}.landing-nav button,.landing-actions button,.landing-entry-grid button{border-radius:999px;font-weight:850}.landing-nav button{border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 82%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);min-height:40px;padding:0 16px}.landing-hero-layout{grid-template-columns:minmax(340px,1fr) minmax(340px,.95fr);align-items:stretch;gap:34px;margin-top:10px;display:grid}.landing-hero-copy{z-index:2;align-content:start;gap:20px;min-width:0;padding:6px 0;display:grid;position:relative}.landing-kicker{border:1px solid color-mix(in srgb, var(--line) 82%, transparent);width:fit-content;color:var(--deep-blue);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffb8;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:900;display:inline-flex;box-shadow:0 10px 24px #146c9c1a}.landing-hero h1{color:#061f35;letter-spacing:0;max-width:13ch;margin:0;font-size:72px;line-height:.9}.landing-hero p{color:#24495f;max-width:540px;margin:0;font-size:20px;line-height:1.42}.landing-trust-line{gap:8px;margin:4px 0 0;padding:0;list-style:none;display:grid}.landing-trust-line li{color:var(--muted);align-items:center;gap:10px;font-size:14px;line-height:1.28;display:inline-flex}.landing-actions{flex-wrap:wrap;gap:12px;display:flex}.landing-actions button{justify-content:center;align-items:center;gap:9px;min-height:48px;padding:0 18px;display:inline-flex}.landing-primary{color:#062337;background:linear-gradient(135deg,#05a8d8,#6ed6ff);border-color:#0b8bbd;box-shadow:0 7px #1179ba38}.landing-primary:hover{transform:translateY(-2px)}.landing-secondary{color:var(--heading);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffb8}.landing-workbench{border:1px solid color-mix(in srgb, var(--line) 86%, transparent);background:linear-gradient(180deg, #ffffffdb, #ebf9ffd1), var(--paper);border-radius:8px;grid-template-rows:auto minmax(0,1fr) auto;align-self:center;gap:12px;min-height:500px;padding:14px;display:grid;box-shadow:0 24px 48px #146c9c24}.bench-topline,.bench-checks{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bench-topline span,.bench-checks span{border-radius:999px;align-items:center;min-height:28px;font-size:12px;font-weight:850;display:inline-flex}.bench-topline span{background:color-mix(in srgb, var(--soft-blue) 78%, var(--paper));color:var(--deep-blue);padding:0 10px}.bench-checks span{border:1px solid color-mix(in srgb, var(--green) 40%, var(--line));background:color-mix(in srgb, var(--green) 10%, var(--paper));color:var(--green);padding:0 9px}.bench-surface{border:1px solid color-mix(in srgb, var(--line) 72%, transparent);background:linear-gradient(90deg, #14a8e00f 0 1px, transparent 1px 34px), linear-gradient(0deg, #14a8e00f 0 1px, transparent 1px 34px), linear-gradient(180deg, var(--field), #fff);border-radius:8px;min-height:420px;position:relative;overflow:hidden}.bench-wire{z-index:1;transform-origin:0;border-radius:999px;height:4px;position:absolute;box-shadow:0 2px #061f3512}.bench-wire.wire-a{background:var(--coral);width:185px;top:174px;left:206px;transform:rotate(-10deg)}.bench-wire.wire-b{background:var(--amber);width:210px;top:205px;right:162px;transform:rotate(13deg)}.bench-wire.wire-c{background:var(--green);width:170px;bottom:126px;left:186px;transform:rotate(18deg)}.bench-board,.bench-blocks,.bench-code,.bench-breadboard{z-index:2;border:1px solid color-mix(in srgb, var(--line) 82%, transparent);background:#ffffffeb;border-radius:8px;position:absolute;box-shadow:0 12px 24px #146c9c1a}.bench-board{color:#fff;background:linear-gradient(160deg,#0999c9,#0d6fa8);width:168px;min-height:190px;padding:18px 14px;top:36px;left:24px;overflow:hidden}.bench-board strong,.bench-board small{z-index:2;display:block;position:relative}.bench-board strong{letter-spacing:.06em;margin-top:74px;font-size:27px}.bench-board small{color:#ffffffc7;margin-top:4px;font-weight:800}.bench-usb,.bench-chip,.bench-pins{z-index:1;background:#ffffffd1;border-radius:6px;position:absolute}.bench-usb{width:44px;height:24px;top:14px;left:14px}.bench-chip{background:#061f35b8;width:54px;height:72px;top:52px;right:20px}.bench-pins{background:repeating-linear-gradient(90deg,#ffffffeb 0 6px,#0000 6px 14px);height:10px;left:14px;right:14px}.bench-pins.top{top:54px}.bench-pins.bottom{bottom:16px}.bench-blocks{gap:8px;width:220px;padding:12px;display:grid;top:28px;left:220px}.block-chip{color:#062337;border-radius:8px;align-items:center;min-height:38px;padding:0 12px;font-size:13px;font-weight:900;display:flex}.block-chip.blue{background:var(--soft-blue)}.block-chip.green{background:color-mix(in srgb, var(--green) 22%, #fff)}.block-chip.amber{background:color-mix(in srgb, var(--amber) 32%, #fff)}.block-chip.coral{background:color-mix(in srgb, var(--coral) 25%, #fff)}.bench-code{color:#d9f6ff;white-space:normal;background:#092235;gap:6px;width:min(300px,42%);margin:0;padding:14px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.45;display:grid;top:42px;right:24px}.bench-code span{white-space:pre;display:block}.bench-breadboard{background:linear-gradient(90deg,#ffc83d2e,#0000 36%,#29b8791f),#fff;grid-template-columns:repeat(6,1fr);align-content:center;gap:10px;min-height:148px;padding:18px;display:grid;bottom:28px;left:226px;right:24px}.bench-breadboard span{background:repeating-linear-gradient(#d7ecf7 0 5px,#0000 5px 10px);border-radius:8px;min-height:54px}.bench-breadboard strong{color:var(--heading);grid-column:1/-1;font-size:14px}html[data-theme=dark] .landing-workbench,html[data-theme=dark] .bench-blocks,html[data-theme=dark] .bench-breadboard{background:#0b1d30eb}html[data-theme=dark] .bench-surface{background:linear-gradient(90deg,#14a8e014 0 1px,#0000 1px 34px),linear-gradient(0deg,#14a8e014 0 1px,#0000 1px 34px),#0c1d2f}html[data-theme=dark] .bench-breadboard strong{color:#f2fbff}.landing-band{background:var(--paper);gap:22px;padding:28px clamp(20px,5vw,76px) 70px;display:grid}.landing-band-heading{color:var(--heading);flex-wrap:wrap;align-items:baseline;gap:8px 12px;display:flex}.landing-band-heading span{color:var(--ink)}.landing-stat-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.landing-stat-row span{border:1px solid var(--line);background:linear-gradient(180deg, var(--field), var(--soft-blue));min-height:84px;color:var(--muted);border-radius:18px;place-items:center;gap:4px;font-weight:800;display:grid}.landing-stat-row strong{color:var(--heading);font-size:28px;line-height:1}.landing-entry-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.landing-entry-grid button{background:var(--field);text-align:left;border-radius:18px;align-content:start;justify-items:start;gap:10px;min-height:168px;padding:18px;display:grid;box-shadow:0 12px 24px #146c9c17}.landing-entry-grid button:first-child{border-color:color-mix(in srgb, var(--blue) 54%, var(--line))}.landing-entry-grid button:nth-child(2){border-color:color-mix(in srgb, var(--coral) 48%, var(--line))}.landing-entry-grid button:nth-child(3){border-color:color-mix(in srgb, var(--green) 54%, var(--line))}.landing-entry-grid button:nth-child(4){border-color:color-mix(in srgb, var(--amber) 64%, var(--line))}.landing-entry-grid svg{color:var(--deep-blue)}.landing-entry-grid strong{color:var(--heading);font-size:18px}.landing-entry-grid span{color:var(--muted);font-size:14px;line-height:1.4}html[data-theme=dark] .landing-shell{background:linear-gradient(180deg, #081827e6, #082738f5 66%, #09121ffa), linear-gradient(115deg, #14a8e047, transparent 44%), var(--paper)}html[data-theme=dark] .landing-hero:after{background:linear-gradient(#0000,#09121feb)}html[data-theme=dark] .landing-nav button,html[data-theme=dark] .landing-kicker,html[data-theme=dark] .landing-secondary{color:#eaf8ff;background:#0b1d30b8}html[data-theme=dark] .landing-hero h1,html[data-theme=dark] .landing-brand,html[data-theme=dark] .landing-entry-grid strong,html[data-theme=dark] .landing-stat-row strong{color:#f2fbff}html[data-theme=dark] .landing-hero p,html[data-theme=dark] .landing-entry-grid span,html[data-theme=dark] .landing-stat-row span{color:#b9d7e7}html[data-theme=dark] .landing-band{background:var(--paper)}button,select,input{font:inherit}button{border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;transition:transform .16s,box-shadow .16s,border-color .16s,background-color .16s;box-shadow:0 2px #1179ba29}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px #1179ba24}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{background:var(--page-wash);flex-direction:column;min-width:0;height:100%;min-height:100dvh;display:flex;overflow:hidden}.topbar{background:var(--panel);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);grid-template-columns:minmax(220px,270px) max-content minmax(0,1fr);align-items:center;gap:16px;height:76px;padding:12px 18px;display:grid}.brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg, var(--deep-blue), var(--blue) 55%, var(--piplup));border-radius:8px;place-items:center;width:46px;height:46px;animation:4.4s ease-in-out infinite soft-bob;display:grid;position:relative;overflow:hidden;box-shadow:0 4px #1179ba3d}.brand-mark:after{content:"";background:#ffffff6b;width:28px;height:130%;animation:5.8s ease-in-out infinite brand-shine;position:absolute;inset:-40% auto auto -20%;transform:rotate(22deg)}.brand h1,.section-heading h2{letter-spacing:0;margin:0}.brand h1{font-size:20px;line-height:1.1}.brand span,.section-heading span,.component-row span,.status-strip span{color:var(--muted)}.mode-stack,.mode-tabs,.style-switch,.toolbar,.status-strip,.agent-actions,.category-tabs{align-items:center;gap:8px;display:flex}.mode-tabs{flex:none;justify-content:center}.toolbar{justify-content:flex-start;gap:6px;min-width:0;padding-bottom:2px;overflow-x:auto}.mode-stack{justify-content:center;min-width:0;overflow-x:auto}.mode-tabs button,.toolbar button,.agent-actions button{border-radius:8px;justify-content:center;align-items:center;gap:8px;height:38px;padding:0 12px;font-weight:650;display:inline-flex}.mode-tabs button.active{border-color:var(--deep-blue);background:var(--soft-blue);color:var(--heading)}.style-switch{border:1px solid var(--line);background:color-mix(in srgb, var(--soft-blue) 64%, transparent);border-radius:8px;flex:none;padding:4px}.style-switch button{height:30px;box-shadow:none;color:var(--muted);background:0 0;border-color:#0000;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:12px;display:inline-flex}.style-switch button:hover:not(:disabled){box-shadow:none}.style-switch button.active{border-color:var(--deep-blue);background:var(--paper);color:var(--heading);box-shadow:0 2px #1179ba24}.toolbar select,.agent select,.fqbn-field input,.board-search input{border:1px solid var(--line);background:var(--paper);min-width:160px;height:38px;color:var(--ink);border-radius:8px;padding:0 10px}.status-strip{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--soft-blue) 84%, transparent);white-space:nowrap;min-height:42px;padding:0 18px;overflow:auto hidden}.status-strip span{white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:inline-flex}.status-strip .online{color:var(--green)}.status-strip .offline,.status-strip .warning{color:var(--coral)}.workspace-grid{overscroll-behavior:contain;flex:auto;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(240px,280px) minmax(0,1fr) minmax(290px,330px);align-items:stretch;gap:14px;width:100%;height:calc(100dvh - 118px);min-height:0;max-height:calc(100dvh - 118px);padding:14px;display:grid;overflow:hidden}.workspace-grid.mode-blocks.style-blocks{background:color-mix(in srgb, var(--paper) 82%, var(--soft-blue));grid-template-columns:minmax(248px,272px) minmax(0,1fr) minmax(330px,370px);gap:0;padding:0}.workspace-grid.mode-blocks.style-blocks .left-panel,.workspace-grid.mode-blocks.style-blocks .right-panel{background:color-mix(in srgb, var(--paper) 94%, var(--soft-blue));gap:12px;padding:12px}.workspace-grid.mode-blocks.style-blocks .left-panel{border-right:1px solid color-mix(in srgb, var(--line) 74%, transparent)}.workspace-grid.mode-blocks.style-blocks .right-panel{border-left:1px solid color-mix(in srgb, var(--line) 74%, transparent)}.workspace-grid.mode-blocks.style-blocks .main-panel{box-shadow:none;border-block:0;border-radius:0}.workspace-grid.mode-blocks.style-blocks .left-panel .panel-section,.workspace-grid.mode-blocks.style-blocks .right-panel .panel-section{box-shadow:none}.left-panel,.right-panel{flex-direction:column;flex:auto;gap:14px;min-width:0;height:100%;min-height:0;display:flex;overflow:auto}.panel-section,.main-panel{border:1px solid var(--line);background:var(--panel);min-height:0;box-shadow:var(--shadow);border-radius:8px;flex:1;overflow:hidden}.panel-section{flex-direction:column;flex:none;gap:10px;padding:12px;display:flex;overflow:hidden}.catalog-list,.starter-list,.agent-log{min-height:0;overflow:auto}.section-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.section-heading h2{color:var(--heading);font-size:15px}.section-heading span{font-size:12px}.heading-actions{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:inline-flex}.mini-action{height:28px;color:var(--heading);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:12px;font-weight:750;display:inline-flex}.category-tabs{padding-bottom:2px;overflow-x:auto}.workspace-grid.mode-blocks.style-blocks .category-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding-bottom:0;display:grid;overflow:visible}.component-search{border:1px solid var(--line);background:var(--field);height:36px;color:var(--deep-blue);border-radius:8px;align-items:center;gap:7px;padding:0 9px;display:flex}.idea-section{flex:0 0 285px}.idea-search{border:1px solid var(--line);background:linear-gradient(135deg, var(--field), var(--soft-blue));min-height:38px;color:var(--deep-blue);border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.idea-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.idea-list{gap:8px;min-height:0;display:grid;overflow:auto}.idea-card{border-left:5px solid var(--blue);background:linear-gradient(135deg, color-mix(in srgb, var(--soft-blue) 46%, transparent), transparent 62%), var(--field);text-align:left;border-radius:8px;gap:6px;width:100%;padding:10px;display:grid}.idea-card:nth-child(2n){border-left-color:var(--amber)}.idea-card:nth-child(3n){border-left-color:var(--green)}.idea-card strong,.idea-card p,.idea-card span{min-width:0}.idea-card strong{color:var(--heading);font-size:14px}.idea-card p{color:var(--ink);margin:0;font-size:12px;line-height:1.35}.idea-topline,.idea-meta{color:var(--deep-blue);text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:800;display:flex}.idea-outcome{color:var(--muted);font-size:12px;line-height:1.35}.idea-meta{color:var(--muted);text-transform:none;justify-content:flex-start}.idea-meta span{background:color-mix(in srgb, var(--soft-blue) 70%, var(--field));border-radius:999px;padding:3px 6px}.component-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.category-tabs button{text-transform:capitalize;white-space:nowrap;border-radius:8px;height:30px;padding:0 9px;font-size:12px}.workspace-grid.mode-blocks.style-blocks .category-tabs button{text-overflow:ellipsis;background:color-mix(in srgb, var(--field) 88%, var(--soft-blue));min-width:0;height:32px;padding:0 7px;font-size:11px;font-weight:800;overflow:hidden}.category-tabs button.active{background:var(--amber);border-color:var(--amber-line);color:var(--amber-ink)}.catalog-list,.component-list,.pack-list,.starter-list,.agent-log,.lessons-panel{min-height:0;overflow:auto}.catalog-list,.component-list,.pack-list,.starter-list{gap:8px;display:grid}.catalog-row,.component-row,.starter-card,.lesson-row{border-radius:8px;width:100%}.starter-section{flex:0 0 258px}.launchpad-panel{background:linear-gradient(180deg, color-mix(in srgb, var(--paper) 92%, var(--soft-blue)), var(--paper)), var(--paper);flex:none;gap:12px}.launchpad-help{color:#062337;text-align:left;background:linear-gradient(135deg,#05a8d8 0%,#2fa66f 58%,#ffc83d 100%);border:0;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;width:100%;min-height:98px;padding:16px;display:grid;box-shadow:0 8px #1179ba24}.launchpad-help:hover:not(:disabled){box-shadow:0 11px #1179ba21}.launchpad-play{background:#ffffff29;border:1px solid #ffffff59;border-radius:999px;place-items:center;width:42px;height:42px;display:grid;box-shadow:inset 0 1px #ffffff3d}.launchpad-help span:last-child{gap:4px;min-width:0;display:grid}.launchpad-help strong{font-size:16px;line-height:1.15}.launchpad-help small{color:#ffffffe0;font-size:13px;line-height:1.35}.example-heading{color:var(--heading);justify-content:space-between;align-items:center;gap:10px;font-size:14px;display:flex}.example-heading span{color:var(--muted);font-size:12px;font-weight:800}.example-project-list{gap:7px;display:grid}.example-project-card{border-color:color-mix(in srgb, var(--line) 82%, transparent);background:linear-gradient(90deg, color-mix(in srgb, var(--soft-blue) 58%, transparent), transparent 70%), var(--field);text-align:left;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:52px;padding:7px 9px;display:grid;box-shadow:0 2px #1179ba14}.example-project-card:nth-child(2n){background:linear-gradient(90deg, color-mix(in srgb, var(--soft-amber) 66%, transparent), transparent 72%), var(--field)}.example-project-card:nth-child(3n){background:linear-gradient(90deg, color-mix(in srgb, var(--soft-coral) 58%, transparent), transparent 72%), var(--field)}.example-project-card.active{border-color:var(--deep-blue);box-shadow:0 0 0 2px color-mix(in srgb, var(--deep-blue) 18%, transparent)}.example-swatch{background:radial-gradient(circle, #ffffff6b 0 2px, transparent 2px 7px), var(--piplup);width:34px;height:34px;color:var(--heading);border-radius:8px;place-items:center;font-size:13px;font-weight:900;display:grid;box-shadow:inset 0 0 0 1px #ffffff6b}.example-project-card:nth-child(2n) .example-swatch{background:radial-gradient(circle, #ffffff73 0 2px, transparent 2px 7px), var(--amber)}.example-project-card:nth-child(3n) .example-swatch{background:radial-gradient(circle, #ffffff73 0 2px, transparent 2px 7px), var(--coral);color:#fff}.example-project-card span:last-child{gap:2px;min-width:0;display:grid}.example-project-card strong,.example-project-card small{overflow:hidden}.example-project-card strong{text-overflow:ellipsis;white-space:nowrap;color:var(--heading);font-size:13px}.example-project-card small{-webkit-line-clamp:2;white-space:normal;color:var(--muted);-webkit-box-orient:vertical;font-size:11px;line-height:1.25;display:-webkit-box}.starter-card{border-left:5px solid var(--amber);text-align:left;gap:5px;padding:10px;display:grid}.starter-card.active{border-color:var(--deep-blue);background:var(--soft-blue)}.starter-card strong{font-size:14px}.starter-card p{color:var(--muted);margin:0;font-size:12px;line-height:1.35}.starter-topline,.starter-foot{color:var(--deep-blue);text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:750;display:flex}.starter-foot{color:var(--ink);text-transform:none;justify-content:flex-start}.catalog-row{text-align:left;justify-content:space-between;align-items:center;gap:8px;height:38px;padding:0 10px;display:flex}.catalog-row span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.catalog-row small{color:var(--muted);text-transform:capitalize;font-size:11px}.empty-row{color:var(--muted);padding:10px;font-size:13px}.pack-panel{flex:none}.pack-row{border:1px solid var(--line);border-left:5px solid var(--amber);background:var(--field);border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:9px;display:grid}.pack-row.builtin{border-left-color:var(--piplup)}.pack-row strong,.pack-row span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.pack-row strong{font-size:13px}.pack-row span{color:var(--muted);font-size:12px}.pack-row button{border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.gallery-block{gap:8px;display:grid}.gallery-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.gallery-heading strong{color:var(--heading);font-size:13px}.gallery-heading span{color:var(--muted);font-size:12px}.gallery-list{gap:8px;display:grid}.gallery-card{border:1px solid var(--line);border-left:5px solid var(--green);background:var(--field);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding:10px;display:grid}.gallery-card.installed{border-left-color:var(--deep-blue);background:var(--soft-blue)}.gallery-card strong,.gallery-card p,.gallery-card span{min-width:0;display:block}.gallery-card strong{color:var(--ink);font-size:13px}.gallery-card p{color:var(--muted);margin:3px 0;font-size:12px;line-height:1.35}.gallery-card span{color:var(--deep-blue);font-size:11px;font-weight:750}.gallery-card button{min-width:82px;height:32px;color:var(--heading);border-radius:8px;justify-content:center;align-items:center;gap:5px;font-size:12px;font-weight:750;display:inline-flex}.gallery-tags{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.gallery-tags small{background:var(--soft-blue);color:var(--deep-blue);border-radius:999px;padding:3px 6px;font-size:10px;font-weight:800}.pack-url-field{gap:5px;display:grid}.pack-url-field>span{color:var(--muted);font-size:12px;font-weight:700}.pack-url-row{grid-template-columns:minmax(0,1fr) 36px;gap:7px;display:grid}.pack-url-row input{border:1px solid var(--line);background:var(--paper);width:100%;min-width:0;height:34px;color:var(--ink);border-radius:8px;padding:0 9px;font-size:12px}.pack-url-row button{border-radius:8px;place-items:center;width:36px;height:34px;display:grid}.pack-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.pack-actions button{border-radius:8px;justify-content:center;align-items:center;gap:7px;height:34px;display:inline-flex}.catalog-row:hover,.component-row:hover,.lesson-row:hover{border-color:var(--blue);background:var(--soft-blue)}.component-row{border:1px solid var(--line);background:var(--field);border-left:5px solid var(--piplup);grid-template-columns:1fr auto;align-items:center;gap:8px;padding:9px;display:grid}.pin-grid{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-top:4px;display:grid}.pin-grid label{gap:3px;min-width:0;display:grid}.pin-grid label span{color:var(--muted);font-size:11px}.pin-grid input{border:1px solid var(--line);background:var(--field);width:100%;min-width:0;height:30px;color:var(--ink);border-radius:8px;padding:0 7px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.component-row strong,.component-row span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.component-row strong{font-size:13px}.component-row span{font-size:12px}.component-row button{border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.main-panel{flex-direction:column;flex:1;min-width:0;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.block-studio{background:radial-gradient(circle at 12% 10%, color-mix(in srgb, var(--piplup) 34%, transparent), transparent 22%), linear-gradient(180deg, color-mix(in srgb, var(--paper) 92%, var(--soft-blue)), var(--paper));grid-template-rows:auto minmax(0,1fr);align-content:stretch;min-width:0;height:100%;min-height:0;display:grid}.block-studio-header{border-bottom:1px solid color-mix(in srgb, var(--line) 74%, transparent);background:color-mix(in srgb, var(--paper) 92%, transparent);justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:10px 16px 10px 18px;display:flex}.block-studio-header>div:first-child{gap:2px;min-width:0;display:grid}.block-studio-header span,.block-studio-pills span{color:var(--muted);font-size:12px;font-weight:750}.block-studio-header>div:first-child>span{color:var(--deep-blue);text-transform:uppercase}.block-studio-header strong{color:var(--heading);font-size:19px;line-height:1.1}.block-studio-pills{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:inline-flex}.block-studio-pills span{border:1px solid color-mix(in srgb, var(--line) 82%, transparent);background:color-mix(in srgb, var(--soft-blue) 72%, var(--field));min-height:30px;color:var(--heading);white-space:nowrap;border-radius:8px;align-items:center;padding:0 10px;display:inline-flex}.block-studio-warning{border-color:color-mix(in srgb, var(--coral) 78%, transparent);background:color-mix(in srgb, var(--coral) 12%, var(--soft-blue));color:var(--heading)}.block-studio-error{background:var(--panel)}.blockly-workspace-error{color:var(--coral-ink);white-space:pre-wrap;text-align:center;place-items:center;padding:14px;font-size:14px;line-height:1.45;display:grid}.block-studio-canvas{background:linear-gradient(90deg, var(--block-dot) 0 1px, transparent 1px 24px), linear-gradient(0deg, var(--block-dot) 0 1px, transparent 1px 24px), var(--block-canvas);min-width:0;height:100%;min-height:0;padding:0}.blockly-host,.code-panel,.circuit-panel,.icon-workspace,.lessons-panel,.blockly-host{width:100%;min-width:0;height:100%;min-height:0}.blockly-host,.blockly-host .blocklySvg,.blockly-host svg{background:var(--block-canvas)}.blockly-host .blocklyToolbox,.blockly-host .blocklyToolboxDiv{border-right:1px solid color-mix(in srgb, var(--line) 78%, transparent);padding:14px 10px;box-shadow:10px 0 28px #146c9c12;background:color-mix(in srgb, var(--paper) 96%, var(--soft-blue))!important;width:188px!important}.blockly-host .blocklyFlyout{filter:drop-shadow(8px 0 18px #146c9c14)}.blockly-host .blocklyToolboxCategoryGroup{gap:8px;display:grid}.blockly-host .blocklyToolboxCategoryContainer{height:auto!important}.blockly-host .blocklyToolboxCategory{border-radius:8px;min-height:42px;transition:background-color .16s,transform .16s,box-shadow .16s;display:block;height:auto!important;color:var(--ink)!important;border-left:0!important}.blockly-host .blocklyToolboxCategory:hover{transform:translate(1px);background:color-mix(in srgb, var(--soft-blue) 72%, var(--field))!important}.blockly-host .blocklyToolboxSelected,.blockly-host .blocklyToolboxSelected:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--deep-blue) 42%, transparent);background:color-mix(in srgb, var(--soft-blue) 88%, var(--field))!important}.blockly-host .blocklyTreeRowContentContainer{align-items:center;gap:10px;min-height:42px;display:flex;padding:6px 8px!important}.blockly-host .blocklyToolboxCategoryIcon.abl-toolbox-icon{color:#fff;letter-spacing:0;width:30px;height:30px;box-shadow:0 3px 0 color-mix(in srgb, var(--abl-category-color,var(--blue)) 72%, #093044);border-radius:8px;flex:0 0 30px;place-items:center;font-size:10px;font-weight:900;line-height:1;background:var(--abl-category-color,var(--blue))!important;visibility:visible!important;display:grid!important}.blockly-host .blocklyToolboxCategoryLabel{font-family:inherit;font-weight:850;line-height:1.1;color:var(--ink)!important;font-size:15px!important}.blockly-host .abl-category-io{--abl-category-color:#ef3e7a}.blockly-host .abl-category-sensors{--abl-category-color:#12a988}.blockly-host .abl-category-motion{--abl-category-color:#4f86f7}.blockly-host .abl-category-displays{--abl-category-color:#f36c52}.blockly-host .abl-category-timing{--abl-category-color:#78a841}.blockly-host .abl-toolbox-icon:before{content:""}.blockly-host .abl-toolbox-icon-io:before{content:"I/O"}.blockly-host .abl-toolbox-icon-sensors:before{content:"S"}.blockly-host .abl-toolbox-icon-motion:before{content:"M"}.blockly-host .abl-toolbox-icon-displays:before{content:"LCD"}.blockly-host .abl-toolbox-icon-timing:before{content:"ms"}.blockly-host .blocklyTreeRow{background:0 0;border-radius:8px;align-items:center;gap:10px;min-height:42px;margin:0 0 8px;transition:background-color .16s,transform .16s,box-shadow .16s;display:flex;height:auto!important;color:var(--ink)!important;border-left:0!important;padding:6px 8px!important}.blockly-host .blocklyTreeRow:hover{transform:translate(1px);background:color-mix(in srgb, var(--soft-blue) 72%, var(--field))!important}.blockly-host .blocklyTreeSelected,.blockly-host .blocklyTreeSelected:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--deep-blue) 42%, transparent);background:color-mix(in srgb, var(--soft-blue) 88%, var(--field))!important}.blockly-host .blocklyTreeIcon{display:none!important}.blockly-host .abl-toolbox-icon{background:var(--abl-category-color,var(--blue));color:#fff;letter-spacing:0;width:30px;height:30px;box-shadow:0 3px 0 color-mix(in srgb, var(--abl-category-color,var(--blue)) 72%, #093044);border-radius:8px;flex:0 0 30px;place-items:center;font-size:10px;font-weight:900;line-height:1;display:grid}.blockly-host .blocklyTreeLabel{font-family:inherit;font-weight:850;line-height:1.1;color:var(--ink)!important;padding:0!important;font-size:15px!important}.blockly-host .blocklyMainBackground{fill:var(--block-canvas)!important;stroke:#0000!important}.blockly-host .blocklyTrash{opacity:.58}.code-panel{padding:0}.icon-workspace{background:linear-gradient(135deg, color-mix(in srgb, var(--soft-blue) 64%, transparent), transparent 36%), radial-gradient(circle at 74% 20%, color-mix(in srgb, var(--amber) 18%, transparent), transparent 25%);grid-template-rows:auto minmax(0,1fr);gap:14px;min-height:0;padding:16px;display:grid;overflow:auto}.icon-hero{border:1px solid var(--line);background:linear-gradient(135deg, var(--field), var(--soft-blue));border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.icon-hero span,.icon-panel-heading span{color:var(--muted);font-size:12px}.icon-hero>div:first-child span{color:var(--deep-blue);text-transform:uppercase;font-weight:850}.icon-hero strong{color:var(--heading);margin-top:3px;font-size:23px;line-height:1.1;display:block}.icon-hero-actions,.icon-outcome-actions,.icon-step-actions{align-items:center;gap:8px;display:flex}.icon-hero-actions button,.icon-outcome-actions button{height:36px;color:var(--heading);border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-weight:750;display:inline-flex}.icon-grid{grid-template-columns:minmax(210px,.72fr) minmax(300px,1.28fr);gap:14px;min-height:0;display:grid}.icon-palette,.icon-program,.icon-outcome{border:1px solid var(--line);background:var(--panel);min-height:0;box-shadow:var(--shadow);border-radius:8px;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:12px;display:grid}.icon-panel-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.icon-panel-heading strong{color:var(--heading);font-size:15px}.icon-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px;min-height:0;display:grid;overflow:auto}.icon-action{background:var(--field);text-align:center;border-radius:8px;align-content:center;justify-items:center;gap:6px;min-height:118px;padding:12px 9px;display:grid}.icon-action-symbol,.icon-step-symbol,.orbit-board,.orbit-part{border-radius:8px;place-items:center;display:grid}.icon-action-symbol{color:#fff;background:var(--blue);width:46px;height:46px;animation:4.8s ease-in-out infinite icon-float;box-shadow:0 4px #1179ba2e}.icon-action.output .icon-action-symbol,.icon-step.output .icon-step-symbol{background:var(--coral)}.icon-action.input .icon-action-symbol,.icon-step.input .icon-step-symbol{background:var(--green)}.icon-action.motion .icon-action-symbol,.icon-step.motion .icon-step-symbol{background:#8b84ff}.icon-action.sensor .icon-action-symbol,.icon-action.serial .icon-action-symbol,.icon-step.sensor .icon-step-symbol,.icon-step.serial .icon-step-symbol{background:var(--blue)}.icon-action.display .icon-action-symbol,.icon-step.display .icon-step-symbol{background:var(--amber);color:var(--amber-ink)}.icon-action.time .icon-action-symbol,.icon-step.time .icon-step-symbol{background:var(--soft-green);color:var(--green-ink)}.icon-action strong,.icon-step-copy strong{color:var(--ink);font-size:13px;display:block}.icon-action small{max-width:100%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.icon-sequence{align-content:start;gap:9px;min-height:0;display:grid;overflow:auto}.icon-step{border:1px solid var(--line);background:var(--field);border-left:6px solid var(--blue);border-radius:8px;grid-template-columns:26px 44px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:76px;padding:10px;display:grid}.icon-step.output{border-left-color:var(--coral)}.icon-step.input{border-left-color:var(--green)}.icon-step.motion{border-left-color:#8b84ff}.icon-step.display,.icon-step.time{border-left-color:var(--amber)}.icon-step em{background:var(--soft-blue);width:26px;height:26px;color:var(--heading);border-radius:8px;place-items:center;font-size:12px;font-style:normal;font-weight:850;display:grid}.icon-step-symbol{color:#fff;width:42px;height:42px}.icon-step-copy{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.icon-step-actions{justify-content:flex-end}.icon-step-actions button{border-radius:8px;place-items:center;width:30px;height:30px;padding:0;display:grid}.icon-outcome{grid-column:1/-1;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden}.icon-orbit{border:1px solid var(--line);background:linear-gradient(135deg, color-mix(in srgb, var(--soft-blue) 62%, transparent), transparent), color-mix(in srgb, var(--field) 88%, var(--soft-blue));border-radius:8px;grid-column:1/-1;min-height:150px;position:relative}.orbit-board{color:#fff;background:linear-gradient(135deg, var(--deep-blue), var(--blue));width:82px;height:82px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 22px #1179ba38}.orbit-part{--angle:calc(var(--orbit-index) * 51deg);width:42px;height:42px;color:var(--heading);background:var(--paper);border:1px solid var(--line);transform:rotate(var(--angle)) translateX(118px) rotate(calc(var(--angle) * -1)) translate(-50%, -50%);font-size:11px;font-weight:850;position:absolute;top:50%;left:50%}.icon-outcome-actions{grid-column:1/-1;justify-content:stretch}.icon-outcome-actions button{flex:1}.circuit-panel{grid-template-rows:auto minmax(0,1fr);gap:14px;min-height:0;padding:16px;display:grid;overflow:auto}.circuit-hero{border:1px solid var(--line);background:linear-gradient(135deg, var(--field), var(--soft-blue));border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.circuit-hero span,.circuit-card-heading span{color:var(--muted);font-size:12px}.circuit-hero>div:first-child span{color:var(--deep-blue);text-transform:uppercase;font-weight:800}.circuit-hero strong{color:var(--heading);margin-top:3px;font-size:23px;line-height:1.1;display:block}.circuit-stats{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.circuit-stats span{border:1px solid var(--line);background:var(--paper);text-align:center;border-radius:8px;gap:1px;min-width:78px;padding:8px 10px;display:grid}.circuit-stats strong{margin:0;font-size:15px}.circuit-stats .ready strong{color:var(--green)}.circuit-stats .warning strong{color:var(--amber-ink)}.circuit-stats .blocked strong{color:var(--coral)}.circuit-workbench{grid-template-columns:minmax(0,1.45fr) minmax(310px,.75fr);gap:14px;min-height:0;display:grid}.circuit-view-tabs{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px;display:flex}.circuit-view-tabs button{border-radius:8px;justify-content:center;align-items:center;gap:6px;min-width:0;height:34px;padding:0 11px;font-size:12px;font-weight:760;display:inline-flex}.circuit-view-tabs button.active{border-color:var(--deep-blue);background:color-mix(in srgb, var(--soft-blue) 58%, transparent)}.circuit-stage{border:1px solid var(--line);background:linear-gradient(180deg, color-mix(in srgb, var(--soft-blue) 42%, transparent), transparent 36%), radial-gradient(circle at 72% 24%, color-mix(in srgb, var(--amber) 20%, transparent), transparent 28%), color-mix(in srgb, var(--field) 82%, var(--soft-blue));perspective:900px;border-radius:8px;min-height:455px;position:relative;overflow:hidden}.circuit-stage.board .breadboard-model,.circuit-stage.board .circuit-breadboard-only{opacity:.5}.circuit-stage.breadboard .arduino-model,.circuit-stage.breadboard .circuit-floor,.circuit-stage.breadboard .circuit-wire-overlay{opacity:.48}.circuit-stage.bench .circuit-wire,.circuit-stage.bench .component-model,.circuit-stage.bench .breadboard-model{opacity:.55}.circuit-floor-label{z-index:4;border:1px solid color-mix(in srgb, var(--blue) 58%, var(--line));background:color-mix(in srgb, var(--soft-blue) 72%, transparent);color:var(--heading);border-radius:999px;padding:7px 12px;font-size:11px;font-weight:760;position:absolute;top:16px;left:50%;transform:translate(-50%)}.circuit-floor{border:1px solid color-mix(in srgb, var(--line) 64%, transparent);background:repeating-linear-gradient(90deg, #14a8e01f 0 1px, transparent 1px 34px), repeating-linear-gradient(0deg, #ffc83d1f 0 1px, transparent 1px 34px), color-mix(in srgb, var(--paper) 76%, transparent);transform-origin:50%;border-radius:8px;position:absolute;inset:70px 34px 28px;transform:rotateX(62deg)rotate(-2deg);box-shadow:0 28px 45px #051e301f}.circuit-wire-overlay{z-index:4;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.circuit-wire{fill:none;stroke:var(--green);stroke-width:.72px;stroke-linecap:round;opacity:.78;filter:drop-shadow(0 1px #0419262e)}.circuit-wire.digital{stroke:var(--blue)}.circuit-wire.analog{stroke:var(--amber)}.circuit-wire.power{stroke:var(--green)}.circuit-wire.bus{stroke:#9f99ff}.circuit-wire.warning{stroke:var(--amber);stroke-dasharray:2 1.4}.circuit-wire.error{stroke:var(--coral);stroke-dasharray:1.3 1.1}.arduino-model,.breadboard-model,.component-model{z-index:5;border:1px solid color-mix(in srgb, var(--line) 82%, transparent);border-radius:8px;position:absolute;box-shadow:0 16px 24px #051e3033}.arduino-model{color:#fff;transform-origin:50%;background:linear-gradient(145deg,#039ec4,#087aa4);width:230px;height:145px;padding:18px;top:34%;left:7%;transform:rotateX(54deg)rotate(-9deg)}.arduino-model strong{max-width:168px;font-size:15px;line-height:1.1;position:absolute;bottom:18px;left:18px}.usb-port,.power-jack,.chip,.pin-bank{background:#ffffffdb;border-radius:5px;position:absolute}.usb-port{width:38px;height:28px;top:18px;left:14px}.power-jack{border-radius:999px;width:32px;height:32px;bottom:18px;right:14px}.chip{background:#173244;width:68px;height:38px;top:53px;left:92px}.pin-bank{background:repeating-linear-gradient(90deg,#203849 0 8px,#f6fbff 8px 13px,#203849 13px 17px);width:142px;height:12px;left:62px}.pin-bank.top{top:18px}.pin-bank.bottom{bottom:18px}.breadboard-model{transform-origin:50%;background:linear-gradient(#fffefd,#f0f8fc);width:380px;height:176px;top:32%;left:43%;overflow:hidden;transform:rotateX(58deg)rotate(3deg)}html[data-theme=dark] .breadboard-model{background:linear-gradient(#e9f6fb,#bfd4df)}.breadboard-model strong{color:#173244;font-size:14px;position:absolute;bottom:12px;left:18px}.breadboard-model .rail{border-radius:999px;height:5px;position:absolute;left:18px;right:18px}.breadboard-model .positive{background:#f36c52;top:20px}.breadboard-model .negative{background:#14a8e0;bottom:40px}.breadboard-dots{background-image:radial-gradient(circle,#0c2a3a57 0 2px,#0000 2px);background-size:18px 16px;position:absolute;inset:42px 30px 62px}.component-model{left:var(--x);top:var(--y);border-left:6px solid var(--accent);background:var(--paper);transform-origin:50%;gap:3px;width:148px;min-height:70px;padding:10px 10px 10px 15px;display:grid;transform:rotateX(48deg)rotate(-4deg)}.component-model>span{background:var(--accent);border-radius:999px;width:28px;height:14px}.component-model strong,.component-model small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.component-model strong{color:var(--heading);font-size:12px}.component-model small{color:var(--muted);font-size:10px}.circuit-guidance{align-content:start;gap:12px;min-height:0;display:grid;overflow:auto}.circuit-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:10px;padding:12px;display:grid}.virtual-bench-console,.circuit-card--bench-single .circuit-bench-picker,.code-trace-block,.circuit-event-list,.virtual-event-list,.bench-readout-grid{gap:8px;display:grid}.virtual-bench-console{grid-template-columns:auto auto;align-items:center}.virtual-bench-console button{justify-content:center;display:inline-flex}.code-trace-block{margin-top:8px}.code-trace-block .circuit-card-heading{margin-bottom:4px}.virtual-event-list{max-height:190px;overflow:auto}.virtual-event-line{border:1px solid var(--line);background:var(--field);color:var(--muted);border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:8px;padding:8px;font-size:12px;display:grid}.virtual-event-line svg{color:var(--deep-blue);margin-top:1px}.virtual-event-line p{margin:0}.virtual-event-line p strong{color:var(--ink)}.circuit-code-snippet{border:1px dashed var(--line);background:var(--paper);max-height:190px;color:var(--heading);border-radius:8px;margin:0;padding:8px;font-size:12px;line-height:1.5;overflow:auto}.circuit-code-snippet code{white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.circuit-bench-picker{flex-wrap:wrap;align-items:stretch;gap:6px;margin-top:8px;display:flex}.circuit-bench-picker button{min-height:34px;color:var(--muted);border-radius:7px;padding:0 10px;font-size:11px;font-weight:760}.circuit-bench-picker button.active{border-color:var(--deep-blue);background:var(--soft-blue);color:var(--heading)}.circuit-card-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.circuit-card-heading strong{color:var(--heading);font-size:14px}.simulator-card{background:linear-gradient(135deg, color-mix(in srgb, var(--soft-blue) 45%, var(--field)), var(--panel)), var(--panel)}.simulator-card.ready{border-color:color-mix(in srgb, var(--green) 48%, var(--line))}.simulator-card.partial{border-color:color-mix(in srgb, var(--amber) 56%, var(--line))}.simulator-card.blocked{border-color:color-mix(in srgb, var(--coral) 58%, var(--line))}.simulator-summary{grid-template-columns:34px minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.simulator-summary>span{border:1px solid color-mix(in srgb, var(--blue) 48%, var(--line));background:var(--field);width:34px;height:34px;color:var(--deep-blue);border-radius:8px;place-items:center;display:grid}.simulator-card.ready .simulator-summary>span{border-color:color-mix(in srgb, var(--green) 52%, var(--line));color:var(--green)}.simulator-card.partial .simulator-summary>span{border-color:color-mix(in srgb, var(--amber) 60%, var(--line));color:var(--amber-line)}.simulator-card.blocked .simulator-summary>span{border-color:color-mix(in srgb, var(--coral) 58%, var(--line));color:var(--coral)}.simulator-summary div{min-width:0}.simulator-summary strong{color:var(--heading);font-size:13px;display:block}.simulator-summary p{color:var(--muted);margin:2px 0 0;font-size:12px;line-height:1.35}.simulator-summary button{min-height:30px;color:var(--heading);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:12px;font-weight:800;display:inline-flex}.simulator-meter{background:color-mix(in srgb, var(--line) 42%, var(--field));border-radius:999px;height:8px;overflow:hidden}.simulator-meter span{border-radius:inherit;background:linear-gradient(90deg, var(--deep-blue), var(--green));height:100%;display:block}.simulator-card.partial .simulator-meter span{background:linear-gradient(90deg, var(--amber), var(--deep-blue))}.simulator-card.blocked .simulator-meter span{background:linear-gradient(90deg, var(--coral), var(--amber))}.simulator-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.simulator-stats span{border:1px solid color-mix(in srgb, var(--line) 78%, transparent);background:var(--field);min-width:0;color:var(--muted);text-align:center;border-radius:8px;padding:7px;font-size:10px;font-weight:760}.simulator-stats strong{color:var(--heading);font-size:14px;display:block}.simulator-stats .warning strong{color:var(--amber-line)}.sim-control-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:6px;display:grid}.sim-control-row button{justify-content:center;align-items:center;gap:6px;min-height:34px;display:inline-flex}.simulation-warnings{gap:6px;margin-top:10px;display:grid}.warning-row{border:1px solid color-mix(in srgb, var(--amber-line) 56%, var(--line));background:color-mix(in srgb, var(--amber-line) 8%, transparent);min-height:32px;color:var(--amber-line);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;font-size:11px;display:inline-flex}.board-input-grid{gap:8px;margin-top:10px;display:grid}.board-input-pin{gap:6px;display:grid}.board-input-pin span{gap:2px;display:grid}.board-input-pin small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.board-input-pin output{color:var(--deep-blue);justify-self:end;font-size:11px}.board-input-pin input[type=range]{width:100%}.joystick-input-card{border:1px solid color-mix(in srgb, var(--blue) 24%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--blue) 9%, transparent), transparent 58%), var(--paper);border-radius:8px;gap:10px;padding:10px;display:grid}.joystick-input-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.joystick-input-head strong{color:var(--heading);font-size:12px}.joystick-input-head span{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:780}.joystick-input-grid{gap:8px;display:grid}.joystick-input-axis{gap:5px;display:grid}.joystick-input-axis span{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:760;display:flex}.joystick-input-axis output{color:var(--deep-blue);font-size:11px}.joystick-input-axis input[type=range]{width:100%}.joystick-input-button{border:1px solid color-mix(in srgb, var(--line) 82%, transparent);background:var(--field);min-height:36px;color:var(--muted);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;display:inline-flex}.joystick-input-button strong{color:var(--heading);font-size:11px}.joystick-input-button.active{border-color:color-mix(in srgb, var(--green) 48%, var(--line));background:color-mix(in srgb, var(--green) 12%, var(--field));color:var(--green)}.circuit-transcript{border:1px solid var(--line);background:var(--paper);max-height:170px;color:var(--muted);border-radius:8px;gap:6px;padding:8px;font-size:12px;display:grid;overflow:auto}.circuit-transcript span{white-space:pre-wrap;display:block}.component-state-grid{gap:8px;max-height:240px;display:grid;overflow:auto}.component-state-grid span{border:1px solid var(--line);background:var(--paper);border-radius:8px;gap:3px;padding:8px;display:grid}.component-state-grid strong{color:var(--heading);font-size:12px}.component-state-grid small{color:var(--muted);font-size:11px}.component-state-grid output{text-align:right;color:var(--deep-blue);font-size:11px}.simulator-item-list{gap:7px;display:grid}.simulator-item{color:var(--muted);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:7px;font-size:12px;line-height:1.3;display:grid}.simulator-item svg{color:var(--deep-blue);margin-top:1px}.simulator-item.ready svg{color:var(--green)}.simulator-item.partial svg{color:var(--amber-line)}.simulator-item.blocked svg{color:var(--coral)}.simulator-item strong{color:var(--ink);font-size:12px;display:block}.breadboard-card{background:linear-gradient(135deg, color-mix(in srgb, var(--green) 12%, transparent), transparent 58%), var(--panel)}.breadboard-card.ready{border-color:color-mix(in srgb, var(--green) 48%, var(--line))}.breadboard-card.warning{border-color:color-mix(in srgb, var(--amber) 58%, var(--line))}.breadboard-card.blocked{border-color:color-mix(in srgb, var(--coral) 58%, var(--line))}.breadboard-summary{grid-template-columns:34px minmax(0,1fr);align-items:start;gap:8px;display:grid}.breadboard-summary>span{border:1px solid color-mix(in srgb, var(--green) 46%, var(--line));background:var(--field);width:34px;height:34px;color:var(--green);border-radius:8px;place-items:center;display:grid}.breadboard-card.warning .breadboard-summary>span{border-color:color-mix(in srgb, var(--amber) 58%, var(--line));color:var(--amber-line)}.breadboard-card.blocked .breadboard-summary>span{border-color:color-mix(in srgb, var(--coral) 58%, var(--line));color:var(--coral)}.breadboard-summary div{min-width:0}.breadboard-summary strong{color:var(--heading);font-size:13px;display:block}.breadboard-summary p{color:var(--muted);margin:2px 0 0;font-size:12px;line-height:1.35}.breadboard-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.breadboard-stats span{border:1px solid color-mix(in srgb, var(--line) 78%, transparent);background:var(--field);min-width:0;color:var(--muted);text-align:center;border-radius:8px;padding:7px;font-size:10px;font-weight:760}.breadboard-stats strong{color:var(--heading);font-size:14px;display:block}.breadboard-item-list{gap:7px;display:grid}.breadboard-item{color:var(--muted);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:7px;font-size:12px;line-height:1.3;display:grid}.breadboard-item svg{color:var(--green);margin-top:1px}.breadboard-item.warning svg{color:var(--amber-line)}.breadboard-item.blocked svg{color:var(--coral)}.breadboard-item strong{color:var(--ink);font-size:12px;display:block}.breadboard-hints{flex-wrap:wrap;gap:6px;display:flex}.breadboard-hints span{border:1px solid color-mix(in srgb, var(--blue) 34%, var(--line));background:color-mix(in srgb, var(--soft-blue) 54%, var(--field));min-width:0;color:var(--heading);border-radius:8px;padding:6px 8px;font-size:10px;font-weight:760;line-height:1.3}.circuit-step-list,.circuit-event-list,.circuit-bench-list{gap:8px;display:grid}.circuit-step,.circuit-event,.circuit-bench-test{color:var(--muted);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:8px;font-size:12px;display:grid}.circuit-step svg,.circuit-event svg,.circuit-bench-test svg{margin-top:1px}.circuit-step strong,.circuit-event strong,.circuit-bench-test strong{color:var(--ink);font-size:12px;display:block}.circuit-step.done svg{color:var(--green)}.circuit-step.next svg,.circuit-event.serial svg{color:var(--deep-blue)}.circuit-step.warning svg,.circuit-step.blocked svg{color:var(--coral)}.circuit-event{border:1px solid var(--line);background:var(--field);border-radius:8px;grid-template-columns:22px 18px minmax(0,1fr);padding:8px}.circuit-event em{background:var(--soft-blue);width:22px;height:22px;color:var(--heading);border-radius:7px;place-items:center;font-size:11px;font-style:normal;font-weight:800;display:grid}.circuit-event.output svg{color:var(--coral)}.circuit-event.input svg{color:var(--green)}.circuit-event.motion svg{color:#9f99ff}.circuit-event.display svg,.circuit-event.wait svg{color:var(--amber)}.circuit-bench-test{border:1px solid var(--line);background:linear-gradient(135deg, color-mix(in srgb, var(--soft-blue) 34%, transparent), transparent 64%), var(--paper);border-radius:8px;grid-template-columns:28px minmax(0,1fr);padding:9px}.circuit-bench-test svg{background:var(--field);border-radius:8px;width:28px;height:28px;padding:6px}.circuit-bench-test small{color:var(--heading);margin:2px 0 3px;font-size:11px;font-weight:760;display:block}.bench-test-body{min-width:0}.bench-test-body>p{margin:0}.bench-control-grid{gap:7px;margin-top:8px;display:grid}.bench-range,.bench-toggle,.bench-choice{border:1px solid color-mix(in srgb, var(--line) 82%, transparent);background:var(--field);border-radius:8px;min-width:0}.bench-range{gap:5px;padding:8px;display:grid}.bench-range>span,.bench-range small,.bench-choice>span{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:760;display:flex}.bench-range output{color:var(--heading);font-weight:850}.bench-toggle{min-height:40px;color:var(--muted);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:8px 9px;font-size:11px;font-weight:800;display:flex}.bench-toggle strong{color:var(--heading);font-size:11px}.bench-toggle.active{border-color:color-mix(in srgb, var(--green) 46%, var(--line));background:color-mix(in srgb, var(--green) 12%, var(--field))}.bench-range-row{grid-template-columns:28px minmax(0,1fr) 28px;align-items:center;gap:7px;display:grid}.bench-range-row input{width:100%;accent-color:var(--deep-blue)}.bench-range-row button{width:28px;height:28px;color:var(--heading);border-radius:7px;padding:0;font-size:15px;font-weight:850}.bench-choice{gap:6px;padding:8px;display:grid}.bench-choice>div{flex-wrap:wrap;gap:6px;display:flex}.bench-choice button{min-height:28px;color:var(--muted);border-radius:7px;padding:0 8px;font-size:11px}.bench-choice button.active{border-color:var(--deep-blue);background:var(--soft-blue);color:var(--heading)}.bench-readout-grid{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:6px;margin-top:8px;display:grid}.bench-readout{border:1px solid color-mix(in srgb, var(--line) 76%, transparent);background:color-mix(in srgb, var(--paper) 78%, var(--field));border-radius:8px;min-width:0;padding:7px}.bench-readout span,.bench-readout strong{overflow-wrap:anywhere;min-width:0}.bench-readout span{color:var(--muted);font-size:10px;font-weight:760;display:block}.bench-readout strong{color:var(--heading);font-size:12px}.circuit-bench-test.output svg{color:var(--coral)}.circuit-bench-test.input svg{color:var(--green)}.circuit-bench-test.motion svg{color:#9f99ff}.circuit-bench-test.display svg{color:var(--amber)}.circuit-bench-test.serial svg{color:var(--deep-blue)}.code-view-tabs{border-bottom:1px solid var(--line);background:var(--panel);align-items:center;gap:8px;height:46px;padding:6px 10px;display:flex}.code-view-tabs button{white-space:nowrap;border-radius:8px;height:32px;padding:0 10px}.code-view-tabs button.active{border-color:var(--deep-blue);background:var(--soft-blue)}.lessons-panel{align-content:start;gap:10px;padding:16px;display:grid}.mission-panel{grid-template-rows:auto auto 1fr;grid-template-columns:minmax(0,1fr);align-content:stretch}.mission-hero{border:1px solid var(--line);background:linear-gradient(135deg, var(--field), var(--soft-blue));border-radius:8px;grid-template-columns:minmax(160px,auto) minmax(150px,1fr) minmax(190px,auto) auto;align-items:center;gap:14px;padding:14px;display:grid}.mission-hero span,.mission-copy span{color:var(--deep-blue);text-transform:uppercase;font-size:12px;font-weight:700}.mission-hero strong{margin-top:3px;font-size:20px;display:block}.mission-progress{border:1px solid var(--line);background:var(--field);border-radius:999px;height:14px;overflow:hidden}.mission-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--amber), var(--green), var(--blue));height:100%;display:block}.mission-pacing{grid-template-columns:minmax(74px,auto) minmax(0,1fr);align-items:stretch;gap:8px;display:grid}.mission-pacing span{border:1px solid color-mix(in srgb, var(--blue) 38%, var(--line));background:color-mix(in srgb, var(--field) 72%, var(--soft-blue));min-width:0;min-height:46px;color:var(--muted);text-transform:none;border-radius:8px;align-content:center;gap:1px;padding:7px 9px;font-size:11px;font-weight:760;display:grid}.mission-pacing strong{min-width:0;color:var(--heading);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.1;display:block;overflow:hidden}.mission-actions,.mission-card-actions{align-items:center;gap:8px;display:flex}.mission-actions button,.mission-card-actions button{border-radius:8px;justify-content:center;align-items:center;gap:6px;height:34px;padding:0 10px;font-weight:650;display:inline-flex}.unit-plan-card{border:1px solid color-mix(in srgb, var(--blue) 34%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--soft-blue) 70%, transparent), transparent 62%), var(--field);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-width:0;padding:12px 14px;display:grid}.unit-plan-copy{min-width:0}.unit-plan-copy span{color:var(--deep-blue);text-transform:uppercase;font-size:12px;font-weight:800}.unit-plan-copy strong{color:var(--heading);margin-top:3px;font-size:18px;line-height:1.1;display:block}.unit-plan-copy p{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.35}.unit-plan-metrics{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.unit-plan-metrics span{border:1px solid var(--line);background:var(--paper);min-width:0;min-height:50px;color:var(--muted);text-align:center;border-radius:8px;place-items:center;font-size:11px;font-weight:760;display:grid}.unit-plan-metrics strong{color:var(--heading);font-size:18px;line-height:1}.unit-plan-chip-row{flex-wrap:wrap;grid-column:1/-1;gap:6px;min-width:0;max-height:64px;display:flex;overflow:hidden}.unit-plan-chip-row span{border:1px solid color-mix(in srgb, var(--blue) 34%, var(--line));background:color-mix(in srgb, var(--paper) 68%, var(--soft-blue));min-width:0;max-width:148px;color:var(--deep-blue);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:5px 7px;font-size:11px;font-weight:760;overflow:hidden}.unit-plan-card>button{min-width:0;height:36px;color:var(--heading);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-weight:800;display:inline-flex}.mission-track{align-content:start;gap:10px;min-height:0;display:grid;overflow:auto}.mission-workbench{grid-template-columns:1fr;gap:12px;min-height:0;display:grid;overflow:auto}.mission-card{border:1px solid var(--line);background:var(--field);border-left:7px solid var(--piplup);border-radius:8px;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:94px;padding:12px;display:grid}.mission-card.active{border-color:var(--deep-blue);box-shadow:0 0 0 3px #14a8e029}.mission-card.complete{border-left-color:var(--green);background:linear-gradient(90deg, var(--soft-green), var(--field) 38%)}.mission-card.ready{border-left-color:var(--amber);background:linear-gradient(90deg, color-mix(in srgb, var(--soft-amber) 56%, var(--field)), var(--field) 42%)}.mission-card.locked{border-left-color:color-mix(in srgb, var(--muted) 50%, var(--line));background:color-mix(in srgb, var(--field) 82%, var(--paper))}.mission-card.locked .mission-copy strong,.mission-card.locked .mission-copy p{color:color-mix(in srgb, var(--muted) 82%, var(--ink))}.mission-node{background:var(--soft-blue);width:40px;height:40px;color:var(--deep-blue);border:0;border-radius:8px;place-items:center;font-weight:800;display:grid}.mission-card.complete .mission-node{background:var(--green);color:#fff}.mission-card.ready .mission-node{background:var(--soft-amber);color:var(--amber-ink)}.mission-card.locked .mission-node{background:color-mix(in srgb, var(--line) 60%, var(--field));color:var(--muted);box-shadow:none}.mission-copy{min-width:0}.mission-copy strong,.mission-copy p{margin:0;display:block}.mission-copy strong{margin-top:2px;font-size:17px}.mission-copy p{color:var(--muted);margin-top:4px;font-size:13px}.mission-copy small{color:var(--amber-line);margin-top:5px;font-size:12px;font-weight:760;display:block}.mission-guide{border:1px solid var(--line);background:linear-gradient(180deg, color-mix(in srgb, var(--soft-blue) 42%, transparent), transparent 220px), var(--field);border-radius:8px;align-content:start;gap:12px;min-height:0;padding:14px;display:grid;overflow:auto}.mission-guide-heading{gap:5px;display:grid}.mission-guide-heading span{background:var(--soft-blue);width:fit-content;color:var(--deep-blue);text-transform:uppercase;border-radius:999px;padding:3px 7px;font-size:12px;font-weight:800}.mission-guide-heading strong{color:var(--heading);font-size:26px;line-height:1.04}.mission-guide-heading p{color:var(--muted);margin:0;font-size:14px;line-height:1.4}.mission-unlock-note{border:1px solid color-mix(in srgb, var(--amber) 52%, var(--line));background:color-mix(in srgb, var(--soft-amber) 72%, var(--paper));color:var(--muted);border-radius:8px;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:8px;padding:10px;font-size:13px;line-height:1.35;display:grid}.mission-unlock-note svg{color:var(--amber-line);margin-top:1px}.mission-unlock-note strong{color:var(--heading);font-size:13px;display:block}.mission-guide-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.mission-guide-stats span{border:1px solid var(--line);background:var(--paper);min-width:0;min-height:58px;color:var(--muted);border-radius:8px;place-items:center;gap:1px;font-size:12px;font-weight:760;display:grid}.mission-guide-stats strong{color:var(--heading);font-size:20px;line-height:1}.mission-guide-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.mission-guide-actions button{border-radius:8px;justify-content:center;align-items:center;gap:6px;height:36px;font-weight:800;display:inline-flex}.mission-guide-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.mission-guide-grid section,.mission-guide-section{border:1px solid var(--line);background:var(--paper);border-radius:8px;gap:8px;padding:10px;display:grid}.mission-guide h3{color:var(--heading);margin:0;font-size:14px}.mission-guide ul{color:var(--muted);gap:5px;margin:0;padding-left:18px;font-size:13px;line-height:1.35;display:grid}.mission-chip-list{flex-wrap:wrap;gap:6px;display:flex}.mission-chip-list span{border:1px solid var(--line);background:var(--soft-blue);color:var(--deep-blue);border-radius:999px;padding:5px 7px;font-size:12px;font-weight:760}.mission-step-list{gap:8px;display:grid}.mission-step{border:1px solid var(--line);background:var(--field);border-left:6px solid var(--blue);border-radius:8px;gap:5px;padding:10px;display:grid}.mission-step.wire{border-left-color:var(--amber)}.mission-step.test,.mission-step.upload{border-left-color:var(--green)}.mission-step.reflect{border-left-color:var(--coral)}.mission-step>span{color:var(--deep-blue);text-transform:uppercase;font-size:11px;font-weight:850}.mission-step strong{color:var(--heading);font-size:14px}.mission-step p{color:var(--muted);margin:0;font-size:13px;line-height:1.35}.teacher-note{background:color-mix(in srgb, var(--soft-amber) 70%, var(--paper))}.lesson-row{text-align:left;border-left:6px solid var(--amber);grid-template-columns:1fr auto;align-items:center;gap:12px;min-height:82px;padding:14px;display:grid}.lesson-row span{color:var(--deep-blue);text-transform:uppercase;margin-bottom:4px;font-size:12px;display:inline-block}.lesson-row strong,.lesson-row p{margin:0;display:block}.lesson-row strong{font-size:16px}.lesson-row p{color:var(--muted);margin-top:4px;font-size:13px}.wiring{flex:.62}.wiring-canvas-card{border:1px solid var(--line);background:linear-gradient(135deg, var(--field), color-mix(in srgb, var(--soft-blue) 44%, var(--field)));border-radius:8px;gap:8px;padding:10px;display:grid}.canvas-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.canvas-heading strong{color:var(--heading);font-size:13px}.canvas-heading span{color:var(--muted);font-size:12px}.wire-rows{gap:7px;max-height:198px;padding-right:2px;display:grid;overflow:auto}.wire-row{--wire-color:var(--green);grid-template-columns:76px minmax(28px,1fr) minmax(0,1.45fr);align-items:center;gap:6px;min-height:40px;display:grid}.wire-row.digital{--wire-color:var(--blue)}.wire-row.analog{--wire-color:var(--amber)}.wire-row.power{--wire-color:var(--green)}.wire-row.bus{--wire-color:#7d77ff}.wire-row.warning{--wire-color:var(--amber)}.wire-row.error{--wire-color:var(--coral)}.board-terminal,.component-terminal{border:1px solid var(--line);background:var(--field);border-radius:8px;min-width:0}.board-terminal{min-height:30px;color:var(--heading);place-items:center;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:800;display:grid;position:relative}.wire-pin-label{background:0 0;border:0;padding:0}.wire-pin-input{appearance:none;width:100%;min-height:30px;color:var(--heading);background:0 0;border:0;border-radius:8px;padding:0 9px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:800}.wire-pin-input:focus-visible{outline:2px solid var(--deep-blue);outline-offset:0}.board-terminal.power{color:var(--green-ink)}.board-terminal.bus{color:var(--bus-ink)}.wire-line{height:18px;position:relative}.wire-line:before,.wire-line:after,.wire-line span{content:"";background:var(--wire-color);position:absolute;top:50%;transform:translateY(-50%)}.wire-line:before{border-radius:999px;height:4px;left:0;right:0;box-shadow:0 2px #1179ba21}.wire-line:after,.wire-line span{border:2px solid var(--field);border-radius:999px;width:10px;height:10px}.wire-line:after{left:0}.wire-line span{right:0}.component-terminal{border-left:5px solid var(--wire-color);gap:2px;padding:6px 8px;display:grid}.component-terminal strong,.component-terminal small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.component-terminal strong{color:var(--ink);font-size:12px}.component-terminal small{color:var(--muted);font-size:11px}.coach-panel{flex:none}.agent{flex:none;overflow:visible}.coach-summary{border:1px solid var(--line);background:linear-gradient(135deg, var(--field), var(--soft-blue));border-radius:8px;gap:7px;padding:10px;display:grid}.coach-summary strong{color:var(--heading);font-size:13px}.coach-progress{border:1px solid var(--line);background:var(--field);border-radius:999px;height:10px;overflow:hidden}.coach-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--amber), var(--green), var(--blue));height:100%;display:block}.coach-steps{gap:6px;display:grid}.coach-step{color:var(--muted);grid-template-columns:18px 1fr;align-items:start;gap:7px;font-size:12px;display:grid}.coach-step svg{margin-top:1px}.coach-step strong{color:var(--ink);font-size:12px;display:block}.coach-step.done svg{color:var(--green)}.coach-step.next svg{color:var(--deep-blue)}.coach-step.warning svg,.coach-step.blocked svg{color:var(--coral)}.wiring-block{border:1px solid var(--line);background:var(--field);border-left:5px solid var(--green);border-radius:8px;gap:5px;padding:9px;display:grid}.diagnostics-block{border:1px solid var(--line);background:var(--soft-green);border-radius:8px;gap:7px;padding:10px;display:grid}.diagnostics-block.has-warnings{background:color-mix(in srgb, var(--amber) 18%, var(--field));border-color:#e5bd39}.diagnostics-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.diagnostics-heading strong{color:var(--heading);font-size:13px}.diagnostics-heading span{color:var(--muted);font-size:12px}.diagnostic-row{color:var(--ink);grid-template-columns:18px 1fr;align-items:start;gap:7px;font-size:12px;display:grid}.diagnostic-row svg{margin-top:1px}.diagnostic-row strong{font-size:12px;display:block}.diagnostic-row.error svg,.diagnostic-row.warning svg{color:var(--coral)}.diagnostic-row.tip svg,.diagnostic-row.ok svg{color:var(--green)}.repair-card{border:1px solid var(--line);background:linear-gradient(135deg, color-mix(in srgb, var(--soft-blue) 68%, var(--field)), var(--field)), radial-gradient(circle at 12% 0%, color-mix(in srgb, var(--piplup) 32%, transparent), transparent 34%);border-radius:8px;gap:9px;padding:10px;display:grid}.repair-card.fix{border-color:color-mix(in srgb, var(--coral) 55%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--soft-coral) 48%, var(--field)), var(--field))}.repair-card.check{border-color:color-mix(in srgb, var(--amber) 64%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--soft-amber) 50%, var(--field)), var(--field))}.repair-card.ready{border-color:color-mix(in srgb, var(--green) 48%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--soft-green) 60%, var(--field)), var(--field))}.repair-card-heading{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.repair-badge{border:1px solid color-mix(in srgb, var(--blue) 44%, var(--line));background:var(--field);width:32px;height:32px;color:var(--deep-blue);border-radius:8px;place-items:center;display:grid}.repair-card.fix .repair-badge{border-color:color-mix(in srgb, var(--coral) 60%, var(--line));color:var(--coral)}.repair-card.check .repair-badge{border-color:color-mix(in srgb, var(--amber) 68%, var(--line));color:var(--amber-line)}.repair-card.ready .repair-badge{border-color:color-mix(in srgb, var(--green) 56%, var(--line));color:var(--green)}.repair-title{min-width:0;color:var(--muted);gap:2px;font-size:12px;line-height:1.3;display:grid}.repair-title strong{color:var(--heading);font-size:13px}.repair-action{align-self:start}.repair-items{gap:6px;display:grid}.repair-item{color:var(--muted);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:7px;font-size:12px;line-height:1.3;display:grid}.repair-item svg{color:var(--deep-blue);margin-top:1px}.repair-item.fix svg{color:var(--coral)}.repair-item.check svg{color:var(--amber-line)}.repair-item.ready svg{color:var(--green)}.repair-item strong{color:var(--heading);font-size:12px;display:block}.pin-map{border:1px solid var(--line);background:color-mix(in srgb, var(--soft-blue) 40%, var(--field));border-radius:8px;flex-wrap:wrap;gap:5px;max-height:116px;padding:7px;display:flex;overflow:auto}.pin-chip{border:1px solid var(--line);background:var(--field);min-width:39px;height:26px;color:var(--muted);border-radius:7px;justify-content:center;align-items:center;gap:4px;display:inline-flex}.pin-chip strong{font-family:SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:750}.pin-chip small{background:var(--deep-blue);color:#fff;border-radius:999px;place-items:center;min-width:15px;height:15px;font-size:10px;font-weight:800;display:grid}.pin-chip.used{border-color:var(--green);background:var(--soft-green);color:var(--green-ink)}.pin-chip.analog.used{border-color:var(--blue);background:var(--soft-blue);color:var(--heading)}.pin-chip.reserved:not(.used){background:color-mix(in srgb, var(--amber) 18%, var(--field));color:var(--amber-ink);border-style:dashed}.pin-chip.conflict{border-color:var(--coral);background:var(--soft-coral);color:var(--coral-ink)}.pin-chip.conflict small{background:var(--coral)}.wiring-block strong{font-size:13px}.wiring-block span{color:var(--muted);font-size:12px}.agent-actions{grid-template-columns:1fr 1fr;display:grid}.agent-actions button{width:100%}.agent select{width:100%;min-width:0}.agent-setup-card{border:1px solid var(--line);background:linear-gradient(135deg, var(--field), color-mix(in srgb, var(--soft-blue) 62%, var(--field)));border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;display:grid}.agent-setup-card>span{min-width:0;color:var(--muted);gap:2px;font-size:12px;line-height:1.3;display:grid}.agent-setup-card strong{color:var(--heading);font-size:13px}.agent-setup-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.agent-setup-actions button,.agent-setup-actions a{background:var(--button);height:34px;color:var(--button-text);white-space:nowrap;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:13px;font-weight:850;text-decoration:none;display:inline-flex}.agent-setup-actions a{border:1px solid var(--line);background:var(--field);color:var(--deep-blue)}.upload-readiness{border:1px solid var(--line);border-left:6px solid var(--coral);background:var(--field);border-radius:8px;gap:9px;padding:10px;display:grid}.upload-readiness.compile{border-left-color:var(--amber);background:color-mix(in srgb, var(--amber) 15%, var(--field))}.upload-readiness.ready{border-left-color:var(--green);background:var(--soft-green)}.readiness-summary{gap:3px;display:grid}.readiness-summary strong{color:var(--heading);font-size:14px}.readiness-summary span{color:var(--muted);font-size:12px;line-height:1.3}.readiness-list{gap:6px;display:grid}.readiness-item{color:var(--muted);grid-template-columns:18px 1fr;align-items:start;gap:7px;font-size:12px;display:grid}.readiness-item svg{margin-top:1px}.readiness-item strong{color:var(--ink);font-size:12px;display:block}.readiness-item.ready svg{color:var(--green)}.readiness-item.info svg{color:var(--deep-blue)}.readiness-item.warning svg,.readiness-item.blocked svg{color:var(--coral)}.device-flow{border:1px solid var(--line);background:linear-gradient(135deg, color-mix(in srgb, var(--soft-blue) 48%, transparent), transparent 66%), var(--paper);border-radius:8px;gap:9px;padding:10px;display:grid}.device-flow-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.device-flow-heading>span{min-width:0;color:var(--muted);gap:2px;font-size:12px;line-height:1.3;display:grid}.device-flow-heading strong{color:var(--heading);font-size:13px}.device-flow-heading button{white-space:nowrap;border-radius:8px;height:34px;padding:0 9px}.device-flow-progress{border:1px solid var(--line);background:var(--field);border-radius:999px;height:9px;overflow:hidden}.device-flow-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--blue), var(--green), var(--amber));height:100%;transition:width .18s;display:block}.device-flow-steps{gap:6px;display:grid}.device-flow-step{color:var(--muted);grid-template-columns:18px minmax(0,1fr);align-items:start;gap:7px;font-size:12px;display:grid}.device-flow-step svg{margin-top:1px}.device-flow-step strong{color:var(--ink);font-size:12px;display:block}.device-flow-step.done svg{color:var(--green)}.device-flow-step.current svg,.device-flow-step.waiting svg{color:var(--deep-blue)}.device-flow-step.warning svg,.device-flow-step.blocked svg{color:var(--coral)}.connection-doctor{border:1px solid var(--line);background:linear-gradient(135deg, color-mix(in srgb, var(--soft-blue) 56%, var(--field)), var(--field));border-radius:8px;gap:8px;padding:10px;display:grid}.connection-doctor.blocked{border-color:color-mix(in srgb, var(--coral) 46%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--soft-coral) 62%, var(--field)), var(--field))}.connection-doctor.warning{border-color:color-mix(in srgb, var(--amber) 48%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--amber) 16%, var(--field)), var(--field))}.connection-doctor.ready{border-color:color-mix(in srgb, var(--green) 42%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--soft-green) 58%, var(--field)), var(--field))}.connection-doctor-heading{grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.doctor-badge{background:var(--paper);border-radius:8px;place-items:center;width:28px;height:28px;display:grid;box-shadow:0 2px #1179ba1f}.connection-doctor.ready .doctor-badge{color:var(--green)}.connection-doctor.warning .doctor-badge,.connection-doctor.blocked .doctor-badge{color:var(--coral)}.connection-doctor-heading>span:not(.doctor-badge){min-width:0;color:var(--muted);gap:2px;font-size:12px;line-height:1.25;display:grid}.connection-doctor-heading strong{color:var(--heading);font-size:13px}.connection-doctor-heading button{white-space:nowrap;border-radius:8px;height:34px;padding:0 9px}.connection-doctor p{color:var(--ink);margin:0;font-size:12px;line-height:1.35}.doctor-fix{background:color-mix(in srgb, var(--paper) 72%, transparent);color:var(--muted);border-radius:8px;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:6px;padding:8px;font-size:12px;line-height:1.35;display:grid}.doctor-fix svg{color:var(--deep-blue);margin-top:1px}.connection-doctor code{overflow-wrap:anywhere;color:#def5ff;background:#0d2e46;border-radius:8px;padding:8px;font-family:SFMono-Regular,Consolas,monospace;font-size:11px;line-height:1.35;display:block}.fqbn-field{gap:6px;display:grid}.fqbn-field span{color:var(--muted);font-size:12px}.fqbn-field input{width:100%;min-width:0;font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.board-core-note{border:1px solid var(--line);background:color-mix(in srgb, var(--soft-blue) 48%, var(--field));color:var(--muted);border-radius:8px;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:8px;padding:9px;font-size:12px;line-height:1.3;display:grid}.board-core-note svg{color:var(--deep-blue);margin-top:1px}.board-core-note strong{color:var(--heading);font-size:12px;display:block}.board-core-note.ready{background:var(--soft-green);border-color:color-mix(in srgb, var(--green) 42%, var(--line))}.board-core-note.ready svg{color:var(--green)}.board-core-note.blocked{background:var(--soft-coral);border-color:color-mix(in srgb, var(--coral) 42%, var(--line))}.board-core-note.blocked svg{color:var(--coral)}.package-index-panel{border:1px solid var(--line);background:linear-gradient(135deg, color-mix(in srgb, var(--soft-blue) 42%, transparent), transparent 70%), var(--field);border-radius:8px;gap:8px;padding:9px;display:grid}.package-index-heading{color:var(--muted);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;font-size:12px;line-height:1.3;display:grid}.package-index-heading>span:first-child{gap:2px;min-width:0;display:grid}.package-index-heading strong{color:var(--heading);font-size:12px}.package-index-heading>span:last-child{background:var(--paper);min-width:24px;height:24px;color:var(--deep-blue);border-radius:8px;place-items:center;font-weight:900;display:grid}.package-index-presets{gap:7px;display:grid}.package-index-presets button{border:1px solid var(--line);background:var(--paper);width:100%;min-height:44px;color:var(--ink);text-align:left;border-radius:8px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;display:grid}.package-index-presets button svg{color:var(--deep-blue)}.package-index-presets button span{min-width:0;color:var(--muted);gap:1px;font-size:11px;line-height:1.25;display:grid}.package-index-presets button strong{color:var(--heading);font-size:12px}.package-index-presets button small{color:var(--deep-blue);font-size:11px;font-weight:900}.package-index-presets button.ready{background:var(--soft-green);border-color:color-mix(in srgb, var(--green) 42%, var(--line))}.package-index-presets button.ready svg,.package-index-presets button.ready small{color:var(--green)}.package-index-custom{grid-template-columns:minmax(0,1fr) 40px;gap:8px;display:grid}.package-index-custom input{width:100%;min-width:0;font-size:12px}.package-index-custom button{border-radius:8px;place-items:center;width:40px;height:40px;display:grid}.board-search{grid-template-columns:1fr 40px;gap:8px;display:grid}.board-search input{width:100%;min-width:0}.board-search button{border-radius:8px;place-items:center;width:40px;height:40px;display:grid}.serial-console{border:1px solid var(--line);background:var(--field);border-radius:8px;gap:8px;padding:10px;display:grid}.serial-console-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.serial-console-heading strong{color:var(--heading);align-items:center;gap:6px;font-size:13px;display:inline-flex}.serial-console-heading span{color:var(--muted);font-size:12px}.serial-settings{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:8px;display:grid}.serial-settings label{gap:4px;min-width:0;display:grid}.serial-settings label span{color:var(--muted);font-size:11px}.serial-settings input,.serial-settings select,.serial-send-row input{border:1px solid var(--line);background:var(--paper);width:100%;min-width:0;height:34px;color:var(--ink);border-radius:8px;padding:0 8px;font-size:12px}.serial-settings input{font-family:SFMono-Regular,Consolas,monospace}.serial-send-row{grid-template-columns:minmax(0,1fr) 36px 36px;gap:7px;display:grid}.serial-send-row button{border-radius:8px;place-items:center;width:36px;height:34px;display:grid}.serial-transcript{color:#dff7ea;background:#08283f;border-radius:8px;flex-direction:column;gap:5px;min-height:72px;max-height:138px;padding:9px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.35;display:flex;overflow:auto}.serial-transcript span{overflow-wrap:anywhere;white-space:pre-wrap}.agent-log{color:#def5ff;background:#0d2e46;border-radius:8px;flex-direction:column;gap:6px;min-height:62px;max-height:140px;padding:10px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.35;display:flex}.agent-log span{overflow-wrap:anywhere}.modal-scrim{z-index:3000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0515207a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.new-project-modal,.agent-setup-modal{border:1px solid var(--line);background:var(--paper);width:min(720px,100vw - 48px);color:var(--ink);border-radius:8px;gap:18px;padding:28px;animation:.19s ease-out modal-pop;display:grid;position:relative;box-shadow:0 28px 72px #06203047}.agent-setup-modal{width:min(820px,100vw - 48px);max-height:min(780px,100vh - 48px);overflow:auto}.modal-close{width:38px;height:38px;box-shadow:none;color:var(--muted);background:0 0;border-color:#0000;place-items:center;display:grid;position:absolute;top:14px;right:14px}.modal-close:hover:not(:disabled){box-shadow:none}.modal-kicker{color:var(--muted);font-size:13px;font-weight:700}.new-project-modal h2,.agent-setup-modal h2{border-bottom:1px solid var(--line);color:color-mix(in srgb, var(--ink) 18%, var(--muted));margin:0;padding-bottom:14px;font-size:28px;line-height:1}.agent-setup-modal p{max-width:660px;color:var(--muted);margin:-8px 0 0;font-size:14px;line-height:1.45}.agent-platform-tabs{flex-wrap:wrap;gap:8px;display:flex}.agent-platform-tabs button{border-radius:8px;height:34px;padding:0 12px}.agent-platform-tabs button.active{border-color:var(--deep-blue);background:var(--soft-blue);color:var(--heading)}.agent-copy-all{flex-wrap:wrap;gap:8px;display:flex}.agent-copy-all button,.agent-copy-all a{border:1px solid var(--line);background:var(--field);min-height:36px;color:var(--ink);border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 11px;font-size:13px;font-weight:750;text-decoration:none;display:inline-flex}.agent-copy-all a:hover{border-color:var(--deep-blue);background:var(--soft-blue)}.agent-setup-steps{gap:10px;display:grid}.agent-setup-step{border:1px solid var(--line);background:var(--field);border-radius:8px;grid-template-columns:30px minmax(0,1fr) 34px;align-items:start;gap:10px;padding:10px;display:grid}.agent-setup-step em{background:var(--soft-blue);width:30px;height:30px;color:var(--heading);border-radius:8px;place-items:center;font-size:12px;font-style:normal;font-weight:850;display:grid}.agent-setup-step>span{min-width:0;color:var(--muted);gap:4px;font-size:13px;line-height:1.35;display:grid}.agent-setup-step strong{color:var(--heading);font-size:14px}.agent-setup-step code{white-space:pre;border:1px solid var(--line);background:var(--paper);min-width:0;color:var(--ink);border-radius:8px;padding:8px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.45;display:block;overflow-x:auto}.agent-setup-step>button{border-radius:8px;place-items:center;width:34px;height:34px;padding:0;display:grid}.agent-setup-check{border:1px solid color-mix(in srgb, var(--green) 44%, var(--line));background:var(--soft-green);border-radius:8px;gap:3px;padding:10px;display:grid}.agent-setup-check strong{color:var(--green-ink);font-size:13px}.agent-setup-check span{color:var(--muted);font-size:13px}.project-style-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.project-style-card{text-align:center;background:var(--field);border-radius:8px;align-content:start;justify-items:center;gap:8px;min-height:178px;padding:18px 14px;display:grid}.project-style-card.active{border-color:var(--deep-blue);background:linear-gradient(180deg, var(--soft-blue), var(--field));box-shadow:0 0 0 3px #14a8e029}.project-style-icon{width:62px;height:62px;color:var(--heading);background:var(--paper);border:2px solid;border-radius:8px;place-items:center;display:grid}.project-style-card strong{color:var(--heading);font-size:15px}.project-style-card small{color:var(--deep-blue);text-transform:uppercase;font-size:11px;font-weight:800}.project-style-card>span:last-child{color:var(--muted);font-size:12px;line-height:1.35}.create-project-button{border:2px solid var(--deep-blue);min-width:132px;height:42px;color:var(--heading);text-transform:uppercase;border-radius:999px;justify-self:center;font-weight:850}.style-icon .brand-mark{background:linear-gradient(135deg, var(--amber), var(--blue) 54%, var(--piplup))}.style-code .brand-mark{background:linear-gradient(135deg, #16334e, var(--deep-blue) 54%, var(--green))}@keyframes soft-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes brand-shine{0%,55%{transform:translate(-48px)rotate(22deg)}75%,to{transform:translate(96px)rotate(22deg)}}@keyframes modal-pop{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes icon-float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-2px)rotate(1deg)}}@keyframes drift-right{0%{transform:translate(-8px)translateY(0)}50%{transform:translate(14px)translateY(-12px)}to{transform:translate(0)translateY(4px)}}@keyframes drift-left{0%{transform:translate(8px)translateY(-4px)}50%{transform:translate(-10px)translateY(7px)}to{transform:translate(4px)translateY(0)}}@keyframes drift-up{0%{transform:translateY(10px)translate(0)}50%{transform:translateY(-12px)translate(6px)}to{transform:translateY(4px)translate(-4px)}}@keyframes drift-down{0%{transform:translateY(-10px)translate(0)}50%{transform:translateY(10px)translate(-5px)}to{transform:translateY(-4px)translate(3px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@media (width<=1180px){body{min-width:0}.landing-hero{min-height:auto;padding:26px 22px 38px}.landing-hero-layout{grid-template-columns:minmax(0,1fr);gap:22px}.landing-hero-copy{width:100%;max-width:760px;margin-top:0}.landing-hero h1{font-size:58px}.landing-workbench{min-height:auto}.bench-surface{grid-template-columns:1fr 1fr;gap:14px;min-height:auto;padding:16px;display:grid}.bench-wire{display:none}.bench-board,.bench-blocks,.bench-code,.bench-breadboard{width:auto;position:relative;inset:auto}.bench-board{min-height:158px}.bench-breadboard{min-height:112px}.landing-band{padding-inline:22px}.landing-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell{height:100%;min-height:100dvh;overflow:hidden}.app-shell>*{min-width:0}.topbar,.status-strip,.workspace-grid{width:100%;max-width:100vw}.topbar{grid-template-columns:1fr;height:auto}.topbar>*{min-width:0}.toolbar{justify-content:start;padding-bottom:2px;overflow-x:auto}.mode-tabs{justify-content:start;overflow-x:auto}.mode-stack{flex-wrap:wrap;justify-content:start}.circuit-workbench{grid-template-columns:1fr}.mission-workbench{grid-template-columns:1fr;overflow:visible}.mission-track,.mission-guide{overflow:visible}.icon-grid{grid-template-columns:1fr}.icon-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.icon-orbit{min-height:220px}.circuit-stage{min-height:430px}.circuit-hero{grid-template-columns:1fr}.mission-hero,.unit-plan-card{grid-template-columns:1fr;align-items:stretch}.unit-plan-card>button{width:100%}.mission-pacing{grid-template-columns:1fr 1fr}.circuit-stats{justify-content:start}.arduino-model{width:205px;left:6%}.breadboard-model{width:330px;left:39%}.component-model{width:132px}.status-strip{flex-wrap:wrap;align-items:flex-start;gap:8px;padding:8px 14px;overflow:auto hidden}.workspace-grid{grid-template-columns:1fr;min-height:0;overflow:auto}.workspace-grid.mode-blocks.style-blocks{grid-template-columns:1fr;gap:12px;padding:12px}.workspace-grid.mode-blocks.style-blocks .left-panel,.workspace-grid.mode-blocks.style-blocks .right-panel{border:0;padding:0;overflow:auto}.workspace-grid.mode-blocks.style-blocks .main-panel{order:1}.workspace-grid.mode-blocks.style-blocks .left-panel{order:2}.workspace-grid.mode-blocks.style-blocks .right-panel{order:3}.workspace-grid.mode-blocks.style-blocks .main-panel{border:1px solid var(--line);border-radius:8px}.block-studio-header{flex-direction:column;align-items:flex-start}.block-studio-pills{justify-content:flex-start}.blockly-host .blocklyToolbox,.blockly-host .blocklyToolboxDiv{padding:10px 7px;width:138px!important}.blockly-host .blocklyToolboxCategory{min-height:38px}.blockly-host .blocklyTreeRowContentContainer{gap:7px;min-height:38px;padding:5px 6px!important}.blockly-host .blocklyToolboxCategoryIcon.abl-toolbox-icon,.blockly-host .abl-toolbox-icon{flex-basis:26px;width:26px;height:26px;font-size:9px}.blockly-host .blocklyToolboxCategoryLabel,.blockly-host .blocklyTreeLabel{font-size:13px!important}.main-panel{flex-direction:column;min-width:0;height:min(760px,100dvh - 148px);min-height:520px;display:flex}.block-studio{min-height:520px}.block-studio-canvas{min-height:430px}.left-panel,.right-panel{min-width:0;min-height:320px}.pin-grid,.project-style-cards,.agent-setup-card,.connection-doctor-heading,.agent-setup-step{grid-template-columns:1fr}.agent-setup-actions{width:100%}.agent-setup-actions button,.agent-setup-actions a,.connection-doctor-heading button{flex:1;width:100%}.agent-setup-step>button{width:100%}}@media (width<=640px){.landing-nav{flex-direction:column;align-items:flex-start;margin-bottom:24px;left:0;right:0}.landing-nav button{min-height:38px;padding:0 12px}.landing-brand strong{max-width:154px;line-height:1.1}.landing-hero{min-height:auto;padding:20px 16px 34px}.landing-hero-layout{grid-template-columns:1fr;gap:18px;width:100%;min-width:0;max-width:calc(100vw - 32px)}.landing-hero-copy{width:100%;min-width:0;max-width:calc(100vw - 32px)}.landing-kicker{white-space:normal;overflow-wrap:anywhere;flex-wrap:wrap;align-items:flex-start;width:100%;max-width:100%;line-height:1.3}.landing-kicker svg{flex:none}.landing-hero h1{overflow-wrap:normal;max-width:8ch;font-size:42px;line-height:.96}.landing-hero p{overflow-wrap:break-word;width:100%;max-width:100%;font-size:16px}.landing-actions{grid-template-columns:1fr;display:grid}.landing-actions button{width:100%}.landing-workbench{width:min(100%,100vw - 32px);min-width:0;max-width:calc(100vw - 32px);padding:10px}.bench-topline,.bench-checks{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.bench-topline span,.bench-checks span{text-align:center;justify-content:center}.bench-surface{grid-template-columns:1fr;padding:12px}.bench-board{min-height:166px}.bench-code{font-size:11px;overflow:auto}.bench-breadboard{grid-template-columns:repeat(3,minmax(0,1fr));min-height:118px}.landing-trust-line{gap:10px}.landing-trust-line li{align-items:flex-start}.landing-stat-row,.landing-entry-grid{grid-template-columns:1fr}.landing-entry-grid button{min-height:126px}.mission-hero,.mission-card,.mission-guide-grid{grid-template-columns:1fr}.mission-guide-stats{grid-template-columns:1fr 1fr}.mission-pacing{grid-template-columns:1fr}.mission-guide-actions,.mission-card-actions{grid-template-columns:1fr;display:grid}.mission-guide-actions button,.mission-card-actions button{width:100%}.circuit-panel{padding:12px}.circuit-stage{min-height:360px}.circuit-floor{inset:84px 16px 22px}.arduino-model{width:158px;height:108px;padding:12px;top:40%;left:5%}.arduino-model strong{font-size:12px;bottom:12px;left:12px}.chip{width:50px;height:28px;top:42px;left:64px}.pin-bank{width:96px;left:46px}.breadboard-model{width:220px;height:116px;top:40%;left:38%}.breadboard-dots{background-size:14px 13px;inset:36px 22px 48px}.component-model{width:112px;min-height:58px;padding:8px 8px 8px 12px}.icon-workspace{padding:12px}.icon-hero{grid-template-columns:1fr}.icon-hero-actions{justify-content:stretch}.icon-hero-actions button{flex:1}.icon-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.icon-step{grid-template-columns:24px 38px minmax(0,1fr)}.icon-step-actions{grid-column:1/-1;justify-content:flex-end}.icon-orbit{min-height:190px}.orbit-part{transform:rotate(var(--angle)) translateX(68px) rotate(calc(var(--angle) * -1)) translate(-50%, -50%)}}
