/* inline */
@scope (html[data-site-styles~="080e87a7cab1ad28"]) {
.hardware-handover fieldset:where(:scope, *) { min-width: 0; border: 1px solid var(--ds-line); border-radius: 8px; padding: .8rem; margin: 1rem 0; }
.hardware-handover legend:where(:scope, *) { float: none; width: auto; font-size: 1rem; font-weight: 700; }
.hardware-handover label:where(:scope, *) { display: flex; align-items: flex-start; gap: .7rem; min-height: 44px; padding: .5rem 0; cursor: pointer; }
.hardware-handover input[type="checkbox"]:where(:scope, *) { flex: none; width: 1.3rem; height: 1.3rem; margin-top: .2rem; }
.hardware-handover button:where(:scope, *) { min-height: 44px; margin: .3rem .4rem .3rem 0; }
.hardware-handover button:disabled:where(:scope, *) { opacity: .65; cursor: not-allowed; }
.hardware-handover :focus-visible:where(:scope, *) { outline: 3px solid #155eef; outline-offset: 3px; }
.hardware-handover [hidden]:where(:scope, *) { display: none !important; }
/* The chapter grid (platform.css) leaves 325px + 320px + 4rem outside its body.
   Preserve that measured width, but centre a single column without sidebar tracks. */
body.iotclass-lab-page #quarto-content.page-columns:where(:scope, *) { display: block !important; width: 100%; max-width: none; padding-inline: 1rem !important; }
body.iotclass-lab-page #quarto-document-content:where(:scope, *) { width: 100%; max-width: none; margin-inline: auto; padding-inline: 0; min-width: 0; }
@media (min-width: 992px) {
  body.iotclass-lab-page #quarto-document-content:where(:scope, *) { width: calc(min(100vw, 1840px) - 325px - 3rem); }
}
@media (min-width: 1100px) {
  body.iotclass-lab-page #quarto-document-content:where(:scope, *) { width: calc(min(100vw, 1840px) - 645px - 4rem); }
}
#quarto-document-content .lab-page:where(:scope, *) { width: 100%; max-width: none; margin: 0; padding: 0; overflow-wrap: anywhere; color: var(--ds-ink); --lab-surface: var(--flat-surface-muted, #f7f8fa); }
#quarto-document-content .lab-panel:where(:scope, *) { box-sizing: border-box; background: var(--lab-surface); color: var(--ds-ink); border: 1px solid var(--ds-line); border-top: 4px solid var(--lab-accent); border-radius: 13px; padding: clamp(1rem, 2vw, 1.6rem); margin-block: 1.25rem; box-shadow: none; }
#quarto-document-content .lab-page :is(h2,h3,dt):where(:scope, *) { color: var(--ds-ink) !important; }
#quarto-document-content .lab-panel h2:where(:scope, *) { margin: 0 0 1rem; font-size: 1.4rem; }
#quarto-document-content .task-how-to-panel[hidden]:where(:scope, *) { display: none !important; }
#quarto-document-content .task-how-to-panel summary:where(:scope, *) { cursor: pointer; min-height: 44px; padding-block: .6rem; font-weight: 700; }
#quarto-document-content .task-how-to-panel summary:focus-visible:where(:scope, *),
#quarto-document-content .task-how-to-panel input:focus-visible:where(:scope, *) { outline: 3px solid var(--ds-ink); outline-offset: 4px; }
#quarto-document-content .task-how-to-panel h2:where(:scope, *) { margin-top: 1rem; }
#quarto-document-content .task-how-to-panel ol:where(:scope, *) { padding-inline-start: 1.5rem; }
#quarto-document-content .task-how-to-checklist label:where(:scope, *) { display: flex; align-items: flex-start; gap: .5rem; padding-block: .5rem; cursor: pointer; }
#quarto-document-content .task-how-to-checklist input:where(:scope, *) { flex: 0 0 auto; width: 1.25rem; height: 1.25rem; margin-top: .2rem; }
#quarto-document-content .task-how-to-checklist a:where(:scope, *) { display: inline-block; padding-block: .5rem; }
#quarto-document-content .task-how-to-result:where(:scope, *) { white-space: pre-line; }
#quarto-document-content .hardware-loans-set:where(:scope, *) { display: flex; align-items: center; gap: .75rem; min-height: 44px; padding-block: .25rem; cursor: pointer; }
#quarto-document-content .hardware-loans-set input:where(:scope, *) { flex: 0 0 auto; width: 24px; height: 24px; }
#quarto-document-content .hardware-loans-set input:focus-visible:where(:scope, *) { outline: 3px solid currentColor; outline-offset: 3px; }
#quarto-document-content .lab-page .lab-meta:where(:scope, *) { color: var(--ds-ink-soft); font-size: .88rem; line-height: 1.6; }
#quarto-document-content .lab-guide:where(:scope, *) { display: flex; align-items: center; gap: 1rem; margin-bottom: 1.5rem; }
#quarto-document-content .lab-guide img:where(:scope, *) { width: 88px; height: 88px; object-fit: contain; flex: 0 0 88px; margin: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none !important; }
#quarto-document-content .lab-guide p:where(:scope, *) { margin: 0; }
#quarto-document-content .lab-tool-heading:where(:scope, *) { display: flex; flex-wrap: wrap; gap: .5rem 1rem; align-items: center; margin-bottom: 1rem; }
#quarto-document-content .lab-tool-heading h2:where(:scope, *) { margin: 0; }
#quarto-document-content .lab-chip:where(:scope, *) { display: inline-block; font-size: .75rem; font-weight: 700; padding: .2rem .6rem; border: 1px solid var(--ds-line); border-radius: 99px; color: var(--ds-ink-soft); }
#quarto-document-content .lab-goal:where(:scope, *) { font-size: 1.1rem; }
#quarto-document-content .lab-page :is(button,.lab-primary,.lab-file-actions a):where(:scope, *) { display: inline-block; font: inherit; font-size: .95rem; line-height: 1.5; font-weight: 650; padding: .65rem .9rem; border: 1px solid var(--ds-line-strong, #9aa5b1); border-radius: 8px; background: var(--lab-surface); color: var(--ds-ink); cursor: pointer; text-decoration: none; text-align: left; }
#quarto-document-content .lab-page .lab-primary:where(:scope, *) { background: var(--ds-ink) !important; color: var(--lab-surface) !important; border-color: var(--ds-ink); text-decoration: none !important; }
#quarto-document-content .lab-new-tab:where(:scope, *) { font-size: .8rem; font-weight: 400; }
#quarto-document-content .lab-page :is(a,button):focus-visible:where(:scope, *) { outline: 3px solid var(--ds-ink); outline-offset: 4px; }
#quarto-document-content .lab-page a:where(:scope, *) { text-decoration: underline; text-underline-offset: .15em; }
#quarto-document-content .lab-files:where(:scope, *) { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .8rem; }
#quarto-document-content .lab-file:where(:scope, *) { min-width: 0; padding: 1rem; border: 1px solid var(--ds-line); border-radius: 12px; background: var(--lab-surface); }
#quarto-document-content .lab-file h3:where(:scope, *) { font-size: 1.1rem; margin: 0 0 .4rem; }
#quarto-document-content .lab-file-actions:where(:scope, *) { display: flex; gap: .5rem; flex-wrap: wrap; }
#quarto-document-content #lab-copy-status:where(:scope, *) { margin-top: .7rem; }
#quarto-document-content .lab-paste-steps:where(:scope, *) { padding-left: 1.4rem; }
#quarto-document-content .lab-drift:where(:scope, *) { margin-block: 1rem; }
#quarto-document-content .lab-steps:where(:scope, *) { list-style: none; padding: 0; margin: 0; }
#quarto-document-content .lab-page li:where(:scope, *) { max-width: none; margin-bottom: 1rem; }
#quarto-document-content .lab-step h3:where(:scope, *) { margin: 0 0 1rem; font-size: 1.15rem; display: flex; align-items: center; gap: .65rem; }
#quarto-document-content .lab-step-number:where(:scope, *) { display: inline-grid; place-items: center; width: 2rem; height: 2rem; border: 1px solid var(--ds-line-strong); border-radius: 50%; font-size: .95rem; }
#quarto-document-content .lab-step dl:where(:scope, *) { margin: 0; }
#quarto-document-content .lab-step dt:where(:scope, *) { font-size: .9rem; font-weight: 750; margin-top: 1rem; }
#quarto-document-content .lab-step dd:where(:scope, *) { margin: .25rem 0 0; line-height: 1.6; }
#quarto-document-content .lab-do:where(:scope, *) { font-weight: 700; }
#quarto-document-content .lab-page .lab-step-figure:where(:scope, *) { margin: 1.25rem 0 0; background: #ffffff !important; border: 0 !important; box-shadow: none; padding: 1rem 1rem .6rem !important; border-radius: 8px !important; max-width: none; }
#quarto-document-content .lab-step-figure img:where(:scope, *) { display: block; width: 100%; height: auto; border: 0; border-radius: 0; box-shadow: none; }
#quarto-document-content .lab-page figcaption:where(:scope, *) { background: transparent !important; color: var(--ds-ink-soft); font-size: .85rem; line-height: 1.5; margin-top: .65rem; }
#quarto-document-content .lab-page figcaption:where(:scope, *)::before { content: none !important; }
#quarto-document-content .lab-page [hidden]:where(:scope, *) { display: none !important; }
@media (max-width: 700px) {
  #quarto-document-content .lab-files:where(:scope, *) { grid-template-columns: minmax(0,1fr); }
  #quarto-document-content .lab-guide img:where(:scope, *) { width: 68px; height: 68px; flex-basis: 68px; }
}
@media (prefers-color-scheme: dark) {
  body.iotclass-lab-page:where(:scope, *) { --ds-ink: #edf1f5; --ds-ink-soft: #c8d0d8; --ds-line: #3d4b59; --ds-line-strong: #728292; --ds-surface: #101820; }
  body.iotclass-lab-page #quarto-content:where(:scope, *) { background: var(--ds-surface) !important; }
  body.iotclass-lab-page #quarto-content #title-block-header:where(:scope, *) { background: transparent !important; }
  body.iotclass-lab-page #quarto-content #title-block-header .title:where(:scope, *) { color: var(--ds-ink) !important; }
  #quarto-document-content .lab-page:where(:scope, *) { --lab-surface: #18232e; }
  #quarto-document-content .lab-page a:not(.lab-primary):where(:scope, *) { color: #b7d8ff; }
}
@media print {
  #quarto-document-content .lab-page:where(:scope, *) { --lab-surface: #fff; --ds-ink: #000; --ds-ink-soft: #222; }
  body.iotclass-lab-page #quarto-document-content:where(:scope, *) { width: 100%; }
  #quarto-document-content #lab-captures-toggle:where(:scope, *) { display: none; }
  #quarto-document-content .lab-page .lab-step-figure[hidden]:where(:scope, *) { display: block !important; }
  #quarto-document-content .lab-step:where(:scope, *) { break-inside: avoid; }
  #quarto-document-content .lab-step-figure img:where(:scope, *) { max-height: 13cm; object-fit: contain; }
}
}
