.arduino-project-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: .65rem;
  padding: .75rem 1rem;
  border-bottom: 1px solid var(--c-border);
  background: var(--c-panel-2);
}
.arduino-support-note { flex: 1 1 100%; margin: 0; color: var(--c-muted); font: 550 .65rem/1.45 Inter, sans-serif; }
.arduino-project-toolbar label, .arduino-device__controls label {
  display: grid;
  gap: .3rem;
  color: var(--c-muted);
  font: 700 .63rem/1.2 Inter, sans-serif;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.arduino-project-toolbar select, .arduino-device select, .arduino-device input[type="text"] {
  min-height: 2.35rem;
  min-width: 9rem;
  border: 1px solid var(--c-border);
  border-radius: .5rem;
  background: var(--c-panel);
  color: var(--c-text);
  padding: .45rem .6rem;
  font: 600 .73rem/1.2 Inter, sans-serif;
  letter-spacing: normal;
  text-transform: none;
}
.arduino-example-picker select { min-width: 11rem; }
.arduino-example-notes { flex: 1 1 100%; margin: 0; color: var(--c-muted); font: 500 .66rem/1.45 Inter, sans-serif; }
.arduino-example-notes[hidden] { display: none; }
.arduino-project-toolbar > button, .arduino-file-actions button, .arduino-device button {
  display: inline-flex;
  min-height: 2.35rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--c-border);
  border-radius: .5rem;
  background: var(--c-panel);
  color: var(--c-text);
  padding: .45rem .65rem;
  cursor: pointer;
  font: 700 .68rem/1 Inter, sans-serif;
}
.arduino-project-toolbar button:hover:not(:disabled), .arduino-file-actions button:hover:not(:disabled), .arduino-device button:hover:not(:disabled) { border-color: var(--c-muted); background: var(--c-bg); }
.arduino-project-toolbar button:focus-visible, .arduino-file-actions button:focus-visible, .arduino-device button:focus-visible,
.arduino-project-toolbar select:focus-visible, .arduino-device select:focus-visible, .arduino-device input:focus-visible { outline: 2px solid var(--compiler-accent); outline-offset: 2px; }
.arduino-device button:disabled, .arduino-file-actions button:disabled { cursor: not-allowed; opacity: .45; }
.arduino-library-picker { position: relative; min-width: 11rem; color: var(--c-text); font: 700 .7rem/1.2 Inter, sans-serif; }
.arduino-library-picker summary { display: flex; min-height: 2.35rem; align-items: center; justify-content: space-between; gap: .5rem; border: 1px solid var(--c-border); border-radius: .5rem; background: var(--c-panel); padding: .45rem .6rem; cursor: pointer; }
.arduino-library-picker summary span { color: var(--c-muted); font-size: .62rem; font-weight: 600; }
.arduino-library-picker__items { position: absolute; z-index: 8; top: calc(100% + .35rem); right: 0; display: grid; width: min(26rem, calc(100vw - 2rem)); max-height: 20rem; gap: .2rem; overflow-y: auto; border: 1px solid var(--c-border); border-radius: .65rem; background: var(--c-panel); padding: .5rem; box-shadow: 0 .6rem 1.6rem rgba(0,0,0,.18); }
.arduino-library-picker__items label { display: flex; grid-template-columns: none; align-items: flex-start; gap: .5rem; border-radius: .4rem; padding: .45rem; color: var(--c-text); cursor: pointer; letter-spacing: normal; text-transform: none; }
.arduino-library-picker__items label:hover { background: var(--c-bg); }
.arduino-library-picker__items input { margin: .05rem 0 0; accent-color: var(--compiler-accent); }
.arduino-library-picker__items strong, .arduino-library-picker__items small { display: block; }
.arduino-library-picker__items strong { font-size: .7rem; }
.arduino-library-picker__items small { margin-top: .14rem; color: var(--c-muted); font-size: .61rem; font-weight: 500; }
.arduino-filebar { display: flex; min-height: 3.2rem; align-items: stretch; justify-content: space-between; gap: .4rem; overflow: hidden; border-bottom: 1px solid var(--c-border); background: var(--c-panel-2); }
.arduino-file-tabs { display: flex; min-width: 0; align-items: stretch; overflow-x: auto; scrollbar-width: thin; }
.arduino-file-tab { position: relative; display: inline-flex; flex: 0 0 auto; align-items: center; gap: .4rem; border: 0; border-right: 1px solid var(--c-border); border-radius: 0; background: transparent; color: var(--c-muted); padding: .55rem .8rem; cursor: pointer; font: 650 .68rem/1 Inter, sans-serif; }
.arduino-file-tab:hover { color: var(--c-text); background: var(--c-bg); }
.arduino-file-tab[aria-selected="true"] { color: var(--c-text); background: var(--c-panel); box-shadow: inset 0 2px var(--compiler-accent); }
.arduino-file-tab:focus-visible { z-index: 1; outline: 2px solid var(--compiler-accent); outline-offset: -2px; }
.arduino-file-actions { display: flex; flex: 0 0 auto; align-items: center; gap: .3rem; padding: .35rem .45rem; }
.arduino-file-actions button { min-height: 2rem; padding: .35rem .5rem; font-size: .61rem; }
.arduino-artifacts { display: grid; gap: .45rem; padding: .8rem 1rem; border-top: 1px solid var(--c-border); background: var(--c-panel); color: var(--c-text); font: 600 .7rem/1.4 Inter, sans-serif; }
.arduino-artifacts[hidden] { display: none; }
.arduino-artifacts > strong { font: 800 .72rem/1.2 "Space Grotesk", sans-serif; }
.arduino-artifact { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem; border: 1px solid var(--c-border); border-radius: .5rem; background: var(--c-panel-2); padding: .55rem .65rem; }
.arduino-artifact a { color: var(--c-text); text-underline-offset: .16em; overflow-wrap: anywhere; }
.arduino-artifact small { color: var(--c-muted); }
.arduino-device { display: grid; gap: .8rem; margin: .85rem; border: 1px solid var(--c-border); border-radius: .75rem; background: var(--c-panel); padding: .9rem; }
.arduino-device__heading { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.arduino-device__heading > div { flex: 1 1 16rem; min-width: 0; }
.arduino-device__heading h2 { margin: 0; color: var(--c-text); font: 800 .82rem/1.2 "Space Grotesk", sans-serif; }
.arduino-device__heading p { margin: .25rem 0 0; color: var(--c-muted); font: 500 .66rem/1.4 Inter, sans-serif; }
.arduino-device__heading small { display: block; margin-top: .3rem; color: #9a7540; font: 700 .62rem/1.4 Inter, sans-serif; }
.arduino-device__controls { display: flex; flex-wrap: wrap; align-items: end; gap: .5rem; }
.arduino-device__controls label { min-width: 7rem; }
.arduino-device__controls .arduino-device__send { flex: 1 1 12rem; }
.arduino-device__send input { box-sizing: border-box; width: 100%; }
.arduino-monitor-actions { display: flex; align-items: center; gap: .8rem; }
.arduino-monitor-actions label { display: inline-flex; align-items: center; gap: .35rem; color: var(--c-muted); font: 600 .64rem/1.3 Inter, sans-serif; }
.arduino-monitor-actions input { accent-color: var(--compiler-accent); }
.arduino-device__monitor { box-sizing: border-box; min-height: 7rem; max-height: 18rem; overflow: auto; margin: 0; border: 1px solid var(--c-border); border-radius: .5rem; background: var(--c-console); color: var(--c-console-text); padding: .7rem; white-space: pre-wrap; overflow-wrap: anywhere; font: 500 .72rem/1.55 "SFMono-Regular", Consolas, monospace; }
.arduino-compile-button { border-color: #414641; background: #343b37; color: #fff; }
.compiler-app[data-theme="light"] .arduino-compile-button { background: #343b37; color: #fff; }

@media (max-width: 62rem) {
  .arduino-filebar { align-items: flex-start; flex-direction: column; }
  .arduino-file-tabs { width: 100%; min-height: 2.7rem; }
  .arduino-file-actions { flex-wrap: wrap; padding-top: 0; }
}
@media (max-width: 42rem) {
  .arduino-project-toolbar { align-items: stretch; }
  .arduino-project-toolbar label, .arduino-project-toolbar select, .arduino-example-picker, .arduino-example-picker select { box-sizing: border-box; width: 100%; }
  .arduino-library-picker { width: 100%; }
  .arduino-library-picker__items { left: 0; right: auto; }
  .arduino-device { margin: .55rem; padding: .7rem; }
  .arduino-device__controls label, .arduino-device__controls select { box-sizing: border-box; width: 100%; }
  .arduino-device__controls label { flex: 1 1 100%; }
}

.arduino-project-toolbar label[hidden] { display: none; }
.arduino-upload-status { padding: .85rem 1rem; color: var(--c-text); font: 600 .78rem/1.5 Inter, sans-serif; }
.arduino-device > summary, .arduino-artifacts > summary { cursor: pointer; color: var(--c-text); font-weight: 700; }
.arduino-device:not([open]) > :not(summary), .arduino-artifacts:not([open]) > :not(summary) { display: none; }

/* Arduino-only IDE shell. Other language workspaces retain their own layout. */
[data-language="arduino"] { max-width: 1600px; }
[data-language="arduino"] .compiler-intro { margin-bottom: .65rem; }
[data-language="arduino"] .compiler-intro h1 { font-size: clamp(1.2rem, 2vw, 1.65rem); }
[data-language="arduino"] .compiler-intro > p { display: none; }
[data-language="arduino"] .compiler-layout { display: block; }
[data-language="arduino"] .compiler-ad-rail { display: none; }
.arduino-ide { border-radius: 1rem; }
.arduino-ide-menubar { display: flex; align-items: center; gap: .1rem; padding: .15rem .5rem; border-bottom: 1px solid var(--c-border); background: var(--c-panel-2); }
.arduino-ide-menu { position: relative; min-width: 0; font: 500 .78rem/1.4 Inter, sans-serif; }
.arduino-ide-menu > summary { display: block; min-height: auto; padding: .4rem .6rem; border: 0; border-radius: .15rem; background: transparent; color: var(--c-text); cursor: pointer; list-style: none; }
.arduino-ide-menu > summary::-webkit-details-marker { display: none; }
.arduino-ide-menu > summary:hover, .arduino-ide-menu[open] > summary { background: var(--c-border); }
.arduino-ide-menu > summary span { display: none; }
.arduino-ide-menu-content { position: absolute; z-index: 30; top: 100%; left: 0; right: auto; display: grid; box-sizing: border-box; width: min(22rem, calc(100vw - 3rem)); max-height: 24rem; overflow: auto; gap: .5rem; padding: .65rem; border: 1px solid var(--c-border); border-radius: .65rem; background: var(--c-panel); color: var(--c-text); box-shadow: 0 5px 15px #0004; }
.arduino-ide-menu-content button { justify-content: flex-start; border: 0; background: var(--c-panel-2); padding: .65rem; color: var(--c-text); text-align: left; cursor: pointer; font: inherit; }
.arduino-ide-menu-content small, .arduino-ide-menu-content p { margin: 0; color: var(--c-muted); font-size: .75rem; line-height: 1.5; }
.arduino-ide-menu-content label { display: grid; gap: .4rem; }
.arduino-ide-menu-content select { max-width: 100%; padding: .5rem; background: var(--c-panel); color: var(--c-text); border: 1px solid var(--c-border); }
.arduino-ide-title { margin-left: auto; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: var(--c-muted); font: 500 .72rem/1.3 Inter, sans-serif; }
.arduino-ide .arduino-ide-toolbar { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .75rem; padding: .65rem .75rem; background: var(--c-panel); border-bottom: 1px solid var(--c-border); }
.arduino-ide-toolbar .compiler-actions { width: auto; min-width: 0; align-items: center; gap: .5rem; }
.arduino-ide-toolbar .compiler-actions button { flex: 0 0 auto; height: 2.65rem; box-sizing: border-box; white-space: nowrap; }
.arduino-ide-toolbar .compiler-actions .arduino-export-button { display: inline-flex !important; }
.arduino-export-format { display: flex; align-items: center; gap: .35rem; min-width: 0; color: var(--c-muted); font: 700 .62rem/1 Inter, sans-serif; white-space: nowrap; }
.arduino-export-format select { box-sizing: border-box; width: 8.5rem; height: 2.65rem; min-width: 0; border: 1px solid var(--c-border); border-radius: .65rem; padding: 0 .55rem; background: var(--c-panel-2); color: var(--c-text); font: 650 .68rem/1 Inter, sans-serif; }
.arduino-export-button { border: 1px solid var(--c-border); background: var(--c-panel-2); color: var(--c-text); }
.arduino-export-button:hover:not(:disabled) { border-color: var(--c-muted); background: var(--c-bg); }
.arduino-export-format select:focus-visible, .arduino-export-button:focus-visible { outline: 2px solid var(--compiler-accent); outline-offset: 2px; }
.arduino-ide .arduino-ide-circle { display: inline-flex; align-items: center; justify-content: center; min-height: 2.55rem; gap: .4rem; border: 1px solid #171717; border-radius: .65rem; padding: .58rem .75rem; background: var(--compiler-accent); color: #111; }
.arduino-ide-circle .material-symbols-outlined { font-size: 1.5rem; }
.arduino-ide .arduino-project-toolbar { min-width: 0; flex: 1 1 auto; align-items: center; gap: .5rem; padding: 0; border: 0; background: transparent; }
.arduino-ide .arduino-project-toolbar label { min-width: 0; width: auto; max-width: 100%; }
.arduino-ide .arduino-project-toolbar select, .arduino-ide .arduino-project-toolbar > button { box-sizing: border-box; width: auto; height: 2.65rem; min-height: 2.65rem; border-color: var(--c-border); background: var(--c-panel-2); color: var(--c-text); border-radius: .65rem; text-transform: none; }
.arduino-ide .arduino-project-toolbar select { width: min(18rem, 100%); max-width: 100%; min-width: 8rem; text-overflow: ellipsis; }
.arduino-ide-view-actions { display: flex; align-items: center; justify-content: flex-end; gap: .4rem; }
.arduino-ide-view-actions button:not([hidden]) { display: inline-grid !important; place-items: center; box-sizing: border-box; flex: 0 0 2.65rem; width: 2.65rem; height: 2.65rem; min-height: 2.65rem; padding: 0; border: 1px solid var(--c-border); border-radius: .65rem; background: var(--c-panel-2); color: var(--c-text); cursor: pointer; }
.arduino-ide-view-actions .material-symbols-outlined { display: block; width: 1.35rem; height: 1.35rem; font-size: 1.35rem; line-height: 1; }
.arduino-ide-view-actions button:hover { border-color: var(--c-muted); background: var(--c-bg); }
.arduino-ide [hidden] { display: none !important; }

.arduino-ide .compiler-panels { display: flex; flex-direction: column; height: clamp(27rem, calc(100dvh - 22rem), 54rem); }
.arduino-ide .compiler-editor-panel { flex: 1 1 auto; border: 0; }
.arduino-ide .compiler-code-wrap, .arduino-ide .compiler-monaco, .arduino-ide .compiler-code-fallback { min-height: 0; }
.arduino-ide .compiler-panel-resizer { display: none; }
.arduino-ide .compiler-editor-panel > .compiler-panel-heading { display: none; }
.arduino-ide .arduino-filebar { flex: 0 0 auto; min-height: 2.3rem; flex-direction: row; }
.arduino-ide .arduino-file-tabs { min-height: 2.3rem; width: 100%; }
.arduino-ide .arduino-file-tab { font-size: .78rem; padding: .65rem 1rem; }
.arduino-ide .compiler-output-panel { flex: 0 0 clamp(9rem, 21vh, 12rem); min-height: 0; max-height: none; border-top: 1px solid var(--c-border); }
.arduino-ide .compiler-output-panel > .compiler-panel-heading { padding: .5rem .75rem; min-height: 2.6rem; box-sizing: border-box; align-items: center; gap: .5rem; }
.arduino-ide .compiler-console { min-height: 0; }
.arduino-ide .compiler-console-empty { font-size: .75rem; }
.arduino-ide .compiler-console-empty > .material-symbols-outlined { display: none; }
.arduino-ide .arduino-upload-status { border-top: 1px solid var(--c-border); padding: .4rem .75rem; background: var(--c-panel-2); color: var(--c-text); box-shadow: inset 3px 0 var(--compiler-accent); font-size: .72rem; }
.arduino-ide .arduino-device { margin: 0; border: 0; border-top: 1px solid var(--c-border); border-radius: 0; padding: .5rem .75rem; }
.arduino-ide .arduino-device > summary { font: 600 .75rem/1.4 Inter, sans-serif; }
.arduino-ide .arduino-device[open] { max-height: 20rem; overflow: auto; }
.arduino-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; padding: 0 !important; clip-path: inset(50%); white-space: nowrap; }
.arduino-ide:fullscreen .compiler-panels, .arduino-ide.is-immersive .compiler-panels { display: flex; flex: 1 1 auto; height: auto; }
@media (max-width: 42rem) {
  .arduino-ide-title { display: none; }
  .arduino-ide .arduino-project-toolbar select { max-width: 12rem; }
  .arduino-ide .compiler-panels { height: 65vh; min-height: 29rem; }
    .arduino-ide .arduino-ide-menu-content { position: fixed; left: 1rem; top: auto; width: calc(100vw - 2rem); }
}
.arduino-ide .arduino-ide-menu-content button:disabled { opacity: .45; cursor: not-allowed; }
.arduino-ide-menu > summary:focus-visible, .arduino-ide-view-actions button:focus-visible { outline: 2px solid var(--compiler-accent); outline-offset: 2px; }

.arduino-ide .compiler-console { cursor: text; overflow: auto; }
.arduino-build-log { margin: 0; padding: .65rem .85rem; color: var(--c-console-text); background: transparent; font: 400 .78rem/1.55 "SFMono-Regular", Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; user-select: text; }

.arduino-ide-menubar > .arduino-ide-menu { flex: 0 0 auto; width: auto; }
.arduino-ide .arduino-ide-title { min-width: 0; max-width: 45%; }
.arduino-ide .arduino-project-toolbar > button { white-space: nowrap; }
.arduino-ide-toolbar .compiler-actions .material-symbols-outlined { font-size: 1.25rem; line-height: 1; }
@media (max-width: 62rem) {
  .arduino-ide .arduino-ide-toolbar { grid-template-columns: minmax(0, 1fr) auto; }
  .arduino-ide-toolbar > .compiler-actions { grid-column: 1; grid-row: 1; }
  .arduino-ide-view-actions { grid-column: 2; grid-row: 1; }
  .arduino-ide .arduino-project-toolbar { grid-column: 1 / -1; grid-row: 2; }
  .arduino-ide .arduino-project-toolbar label { flex: 1 1 10rem; }
  .arduino-ide .arduino-project-toolbar select { width: 100%; }
}
@media (max-width: 42rem) {
  .arduino-ide .arduino-ide-toolbar { gap: .6rem; padding: .6rem; }
  .arduino-ide-view-actions { gap: .25rem; }
  .arduino-ide-view-actions button:not([hidden]) { flex-basis: 2.4rem; width: 2.4rem; height: 2.4rem; min-height: 2.4rem; }
  .arduino-ide .arduino-project-toolbar select { max-width: 100%; }
  .arduino-export-format { flex: 1 1 8rem; }
  .arduino-export-format select { width: 100%; }
  .arduino-ide .compiler-panels { height: 68dvh; min-height: 27rem; }
  .arduino-ide .compiler-output-panel { flex-basis: 10rem; }
}
@media (max-width: 25rem) {
  .arduino-ide .arduino-ide-toolbar { grid-template-columns: minmax(0, 1fr); }
  .arduino-ide-toolbar > .compiler-actions { grid-column: 1; grid-row: 1; width: 100%; }
  .arduino-ide-toolbar .compiler-actions button:not([hidden]) { flex: 1 1 auto; }
  .arduino-export-format { flex: 1 1 calc(50% - .25rem); }
  .arduino-export-button { flex: 1 1 calc(50% - .25rem) !important; }
  .arduino-ide-view-actions { grid-column: 1; grid-row: 2; justify-content: flex-start; }
  .arduino-ide .arduino-project-toolbar { grid-column: 1; grid-row: 3; }
}
