.ald-workbench{--ald-ink:#e8f5f0;--ald-muted:#a6c6bf;--ald-accent:#2ed8b8;--ald-deep:#0c2025;box-sizing:border-box!important;container-type:inline-size;display:block!important;position:relative;background:#10272c!important;color:var(--ald-ink)!important;border:1px solid #35575b!important;border-radius:18px!important;padding:24px!important;margin:18px 0!important;font:15px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;text-align:left!important;max-width:100%!important;overflow:hidden!important;color-scheme:dark}
.ald-workbench *{box-sizing:border-box!important}.ald-workbench p,.ald-workbench strong,.ald-workbench small,.ald-workbench span,.ald-workbench b,.ald-workbench div{font-family:inherit!important;color:inherit!important;word-break:normal;overflow-wrap:anywhere}.ald-workbench p{margin:0!important;line-height:1.65!important}.ald-workbench button{appearance:none!important;-webkit-appearance:none!important;box-shadow:none!important;text-shadow:none!important;cursor:pointer!important;letter-spacing:normal!important;text-transform:none!important;font:inherit!important;line-height:1.25!important;min-height:44px!important;min-width:44px!important;touch-action:manipulation!important;transition:background .12s,transform .12s!important}.ald-workbench button:disabled{cursor:default!important;opacity:.58!important}.ald-workbench button:focus-visible,.ald-workbench:focus-visible{outline:3px solid #6cf2d3!important;outline-offset:4px!important}.ald-workbench button:active:not(:disabled){transform:translateY(2px)!important}.ald-workbench [hidden]{display:none!important}
.ald-topline{display:flex;justify-content:space-between;gap:12px;font-size:12px;letter-spacing:.14em;color:var(--ald-accent)!important;font-weight:700}.ald-topline small{font-size:12px;letter-spacing:normal;color:var(--ald-muted)!important}.ald-instruction{padding:14px 0 24px!important;font-size:16px!important}.ald-layout{display:grid;grid-template-columns:minmax(0,1fr) 228px;gap:28px;align-items:center}.ald-device-area{position:relative;min-width:0;padding:24px 0 10px}.ald-unit{position:relative;background:linear-gradient(145deg,#f1f2ee,#d2d7d4)!important;border:4px solid #a8b4b1;border-radius:49px;max-width:550px;min-width:0;margin:auto;padding:29px 27px 23px;color:#152b2a!important;box-shadow:0 20px 32px #0011165e,inset 0 2px 2px #ffffffb0}.ald-usb-port{position:absolute;top:-12px;right:52px;width:39px;height:10px;border:3px solid #a5b4ad;background:#183129;border-radius:5px 5px 0 0}.ald-workbench.is-connected .ald-usb-port{background:#f59e3d;border-color:#bb6b29;box-shadow:0 -10px 0 -4px #9eb8af}.ald-bezel{background:#1c3030!important;border:9px solid #1c3030;border-radius:16px;overflow:hidden}.ald-lcd{color:#30210b!important;background:linear-gradient(145deg,#ffbe56,#ee9c30)!important;min-height:254px;padding:14px 15px 10px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;font-size:15px!important;line-height:1.45!important}.ald-lcd *{font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important}.ald-screen-top{display:flex;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid #9c67295e;min-height:31px;font-size:12px}.ald-screen-top strong{font-weight:500;max-width:80%}.ald-usb-status{white-space:nowrap;font-size:11px;flex:none}.ald-screen-home{height:166px;display:flex;flex-direction:column;justify-content:center;text-align:center;gap:12px}.ald-home-mark{font-size:40px;line-height:1}.ald-screen-home p{max-height:96px;overflow:auto;font-size:14px}.ald-screen-bottom{border-top:1px solid #9c67295e;padding-top:7px;margin-top:7px;font-size:10px;min-height:27px;line-height:1.4}.ald-menu-list{height:159px;padding-top:6px}.ald-menu-row{display:flex;align-items:center;gap:6px;min-height:29px;line-height:1.2;padding:5px 6px;font-size:14px;white-space:nowrap}.ald-menu-row>span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ald-menu-cursor{width:10px;flex:none;font-size:10px}.ald-menu-arrow{margin-left:auto;font-size:19px;line-height:12px}.ald-menu-row.is-current{background:#39290f!important;color:#ffd182!important}.ald-menu-position{font-size:9px;text-align:right;margin-top:-8px;height:10px}.ald-screen-detail{height:167px;overflow:auto;padding:14px 0 6px;scrollbar-color:#936527 #efac46}.ald-screen-tag{display:block;font-size:11px;font-weight:700;margin-bottom:9px}.ald-screen-detail p{font-size:14px!important;white-space:pre-wrap;line-height:1.55!important}.ald-hardware{display:flex;align-items:center;justify-content:center;gap:32px;padding:24px 0 20px}.ald-dpad{display:grid;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(3,44px);background:#e67a23!important;border:4px solid #af4e11;border-radius:50%;padding:8px;box-shadow:inset 0 2px 0 #ffc08b42;flex:none}.ald-workbench button.ald-key{border:0!important;border-radius:12px!important;padding:0!important;margin:0!important;background:transparent!important;color:#753506!important;font-size:22px!important;font-weight:800!important;width:44px;height:44px}.ald-key-up{grid-area:1/2}.ald-key-left{grid-area:2/1}.ald-key-ok{grid-area:2/2}.ald-key-right{grid-area:2/3}.ald-key-down{grid-area:3/2}.ald-workbench button.ald-key-ok{font-size:12px!important;background:#d66816!important;border:2px solid #a84b0e!important;border-radius:50%!important}.ald-workbench button.ald-key:hover:not(:disabled),.ald-workbench button.ald-key.is-pressed{background:#fa9639!important}.ald-workbench button.ald-back{width:65px!important;height:65px!important;background:#e67a23!important;color:#753506!important;border:3px solid #af4e11!important;border-radius:50%!important;padding:0!important;font-size:12px!important;font-weight:800!important}.ald-workbench button.ald-back:hover:not(:disabled),.ald-workbench button.ald-back.is-pressed{background:#ff9337!important}.ald-brand{font-size:24px;line-height:1.15;color:#db6e1e!important;letter-spacing:.05em;font-weight:800;padding-top:8px}.ald-model{display:block;font-size:9px;letter-spacing:.1em;color:#536c68!important;margin-top:8px}
.ald-sidebar{min-width:0;display:flex;flex-direction:column;gap:18px}.ald-connection{position:relative;border:1px solid #456165;border-radius:14px;padding:18px 16px;background:#0d2025!important;text-align:center}.ald-computer{width:109px;height:63px;margin:0 auto 27px;position:relative}.ald-computer>div{height:57px;border:4px solid #afc4be;border-radius:7px;padding:9px;color:#3cd7b2!important;background:#18332f!important;text-align:left;font:20px monospace!important}.ald-computer>span{display:block;width:33px;height:5px;background:#92aba4;margin:5px auto;position:relative}.ald-computer>span:after{content:"";position:absolute;bottom:-5px;left:-12px;height:5px;width:57px;background:#b5c8c1;border-radius:5px}.ald-computer i{display:inline-block;background:#58736a;width:6px;height:6px;border-radius:50%;float:right;margin-top:18px}.is-connected .ald-computer i{background:#4bf6b3;box-shadow:0 0 8px #4bf6b3}.ald-cable{height:10px;position:relative;border-top:3px dashed #4c6867;margin:0 -3px 12px}.ald-cable i{position:absolute;top:-10px;left:-9px;width:12px;height:15px;background:#d39057;border:2px solid #f1c48b;border-radius:3px}.ald-cable b{position:absolute;right:0;top:-12px;font-size:9px;background:#0d2025;padding:2px 5px}.is-connected .ald-cable{border-top-style:solid;border-top-color:#56d5b5}.ald-connection p{font-size:12px!important;color:var(--ald-muted)!important}.ald-workbench button.ald-connect,.ald-workbench button.ald-restart{display:block;width:100%;padding:11px 9px!important;border:1px solid #55cbb6!important;border-radius:8px!important;background:#153e3c!important;color:#e6fff7!important;font-size:12px!important;font-weight:700!important;margin-top:12px!important}.ald-workbench button.ald-connect:hover:not(:disabled){background:#226154!important}.ald-connection-state{display:block;font-size:10px;line-height:1.5;margin-top:9px;color:var(--ald-muted)!important}.ald-guide{border:1px solid #456165;border-radius:14px;padding:18px;background:#0d2025!important}.ald-guide-label{display:block;font-size:11px;letter-spacing:.1em;color:var(--ald-accent)!important;margin-bottom:10px}.ald-guide>strong{display:block;font-size:17px;font-weight:600}.ald-breadcrumb{font-size:11px!important;color:#abc6bd!important;padding:8px 0 12px!important;border-bottom:1px solid #2e484c}.ald-help{font-size:13px;line-height:1.65;padding:13px 0}.ald-keyboard-help{font-size:11px!important;color:var(--ald-muted)!important}.ald-keyboard-note{font-size:9px!important;color:#91aba7!important;padding-top:10px!important}.ald-record{background:#0a1e23!important;border:1px solid #33554f;border-radius:12px;margin-top:22px;padding:16px 18px;min-height:88px}.ald-record>span{display:block;color:#65d7bc!important;font-size:10px;letter-spacing:.08em;margin-bottom:8px}.ald-record strong{display:block;margin-bottom:5px;font-size:13px}.ald-record p{font-size:13px!important;color:#d1e6df!important;white-space:pre-wrap}.ald-spinner{display:inline-block;width:13px;height:13px;border:2px solid #629b8a;border-top-color:#98ffe2;border-radius:50%;animation:ald-spin .8s linear infinite;vertical-align:-2px;margin-right:6px}@keyframes ald-spin{to{transform:rotate(360deg)}}
.ald-style-reader{background:linear-gradient(145deg,#51625f,#293c3d)!important;border-color:#7e9490;border-radius:30px}.ald-style-reader .ald-lcd{background:#b4d6b8!important;color:#172f28!important}.ald-style-reader .ald-dpad,.ald-style-reader button.ald-back{background:#728d84!important;border-color:#2e4c43!important}.ald-style-reader button.ald-key{color:#16362e!important}.ald-style-reader button.ald-key-ok{background:#abc7b9!important;border-color:#3c6554!important}.ald-style-reader .ald-brand{color:#daeae2!important;font-size:20px}.ald-style-reader .ald-model{color:#adc5bc!important}.ald-style-reader .ald-menu-row.is-current{background:#244d3e!important;color:#e4ffe6!important}.ald-style-terminal{background:#242f35!important;border-color:#60737b;border-radius:18px}.ald-style-terminal .ald-lcd{background:#102926!important;color:#9bebc7!important}.ald-style-terminal .ald-dpad{border-radius:17px;background:#3e575b!important;border-color:#8da4a6!important}.ald-style-terminal button.ald-key,.ald-style-terminal button.ald-back{color:#daf3ed!important}.ald-style-terminal button.ald-key-ok,.ald-style-terminal button.ald-back{background:#41605d!important;border-color:#879f9c!important;border-radius:10px!important}.ald-style-terminal .ald-brand{color:#c3e7df!important;font-size:20px}.ald-style-terminal .ald-model{color:#aac9c2!important}.ald-style-terminal .ald-menu-row.is-current{background:#367467!important;color:#d4ffe9!important}.ald-snapshot-body{max-width:480px;margin:25px auto 15px;padding-top:15px}.ald-snapshot .ald-hardware{transform:scale(.8);padding:6px 0}.ald-snapshot .ald-brand{font-size:20px}.ald-snapshot-path{font-size:12px!important;text-align:center;color:var(--ald-muted)!important}.ald-snapshot button{opacity:1!important}.ald-snapshot .ald-lcd{min-height:248px}
@container (max-width:760px){.ald-layout{grid-template-columns:minmax(0,1fr);gap:18px}.ald-device-area{padding-top:20px}.ald-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ald-guide:last-child:first-child{grid-column:1/-1}.ald-unit{max-width:500px}.ald-instruction{font-size:14px!important}.ald-connection{padding:15px 12px}.ald-guide{padding:15px 12px}}
@container (max-width:420px){.ald-layout{gap:18px}.ald-unit{border-width:3px;border-radius:32px;padding:20px 14px 17px}.ald-bezel{border-width:6px;border-radius:11px}.ald-lcd{padding:10px 9px 7px;min-height:231px}.ald-screen-top{font-size:11px;gap:7px}.ald-screen-home{height:151px}.ald-menu-list{height:145px}.ald-menu-row{font-size:12px;min-height:27px;padding:5px 3px;gap:3px}.ald-screen-detail{height:153px;padding-top:10px}.ald-screen-detail p{font-size:12px!important}.ald-screen-bottom{font-size:9px}.ald-hardware{gap:21px;padding:20px 0 14px}.ald-dpad{padding:3px;border-width:3px;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(3,44px)}.ald-workbench button.ald-key{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;font-size:19px!important}.ald-workbench button.ald-key-ok{font-size:11px!important}.ald-workbench button.ald-back{width:56px!important;height:56px!important;font-size:10px!important}.ald-brand{font-size:21px}.ald-model{font-size:8px}.ald-sidebar{grid-template-columns:1fr}.ald-connection{display:grid;grid-template-columns:72px 1fr;column-gap:15px;text-align:left;align-items:center}.ald-computer{width:70px;height:52px;grid-row:1/5;margin:0}.ald-computer>div{height:45px;font-size:15px!important;border-width:3px;padding:5px}.ald-computer i{margin-top:15px}.ald-computer>span{height:3px;margin-top:3px}.ald-cable{display:none}.ald-connection p{font-size:11px!important}.ald-workbench button.ald-connect{margin-top:8px!important;padding:9px 8px!important;font-size:11px!important}.ald-connection-state{margin-top:7px}.ald-guide-label{font-size:10px}.ald-guide>strong{font-size:15px}.ald-help{font-size:12px}.ald-keyboard-note{display:none}.ald-topline{font-size:10px;gap:8px}.ald-topline small{font-size:10px}.ald-record{padding:13px}.ald-record p{font-size:12px!important}}
@media(max-width:480px){.ald-workbench{padding:15px!important;border-radius:13px!important}}
@media(prefers-reduced-motion:reduce){.ald-workbench *{animation:none!important;transition:none!important}}
/* Keep the LCD and hardware text legible inside themes that colour every div. */
.ald-workbench .ald-lcd{color:#30210b!important;font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important}.ald-workbench .ald-lcd *{font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important}.ald-workbench .ald-menu-row.is-current{color:#ffd182!important}.ald-workbench .ald-brand{color:#db6e1e!important}.ald-workbench .ald-model{color:#536c68!important}.ald-workbench .ald-topline{color:#2ed8b8!important}.ald-workbench .ald-topline small{color:#a6c6bf!important}.ald-workbench .ald-guide-label{color:#2ed8b8!important}.ald-workbench .ald-breadcrumb{color:#abc6bd!important}.ald-workbench .ald-keyboard-help,.ald-workbench .ald-connection-state,.ald-workbench .ald-connection p,.ald-workbench .ald-snapshot-path{color:#a6c6bf!important}.ald-workbench .ald-keyboard-note{color:#91aba7!important}.ald-workbench .ald-record>span{color:#65d7bc!important}.ald-workbench .ald-record p{color:#d1e6df!important}.ald-workbench .ald-computer>div{color:#3cd7b2!important}.ald-workbench .ald-style-reader .ald-lcd{color:#172f28!important}.ald-workbench .ald-style-reader .ald-menu-row.is-current{color:#e4ffe6!important}.ald-workbench .ald-style-reader .ald-brand{color:#daeae2!important}.ald-workbench .ald-style-reader .ald-model{color:#adc5bc!important}.ald-workbench .ald-style-terminal .ald-lcd{color:#9bebc7!important}.ald-workbench .ald-style-terminal .ald-menu-row.is-current{color:#d4ffe9!important}.ald-workbench .ald-style-terminal .ald-brand{color:#c3e7df!important}.ald-workbench .ald-style-terminal .ald-model{color:#aac9c2!important}

/* v2.1.2: isolate physical key labels from the Lab's generic left-aligned buttons. */
.ald-workbench button.ald-key,.ald-workbench button.ald-back{display:flex!important;align-items:center!important;justify-content:center!important;place-self:center!important;flex:none!important;gap:0!important;line-height:1!important;text-align:center!important;text-indent:0!important;white-space:nowrap!important;margin:0!important;padding:0!important}
.ald-workbench button.ald-key{width:44px!important;height:44px!important;max-width:44px!important;max-height:44px!important}

/* v2.1.4: phones use touch menus. Screenless hardware has a separate, labelled teaching panel. */
.ald-workbench .ald-native-composite{width:100%;max-width:640px;margin:0 auto}
.ald-workbench .ald-native{background:#1c3036!important;border:4px solid #91aaa8;border-radius:22px;padding:20px 18px 16px;box-shadow:0 18px 40px #06171c66;max-width:620px}
.ald-workbench .ald-native.ald-style-smartphone{max-width:375px;border-radius:38px;border-width:5px;padding:24px 13px 18px}
.ald-workbench .ald-native.ald-style-tablet{max-width:525px;border-radius:28px;padding:24px 18px 20px}
.ald-workbench .ald-native-camera{height:7px;width:50px;border-radius:7px;margin:-9px auto 16px;background:#081c23}
.ald-workbench .ald-native .ald-bezel{background:#133038!important;border:0;border-radius:12px;overflow:hidden}
.ald-workbench .ald-native .ald-lcd{background:#153740!important;color:#e4f6ef!important;min-height:340px;padding:16px 12px;overflow-wrap:anywhere}
.ald-workbench .ald-native .ald-lcd *{font-family:system-ui,-apple-system,"Segoe UI",sans-serif!important}
.ald-workbench .ald-native .ald-screen-home{height:190px;color:#e4f6ef!important}
.ald-workbench .ald-native .ald-screen-top{border-bottom:1px solid #53796f;color:#dcefe7!important;font-size:14px;min-height:34px}
.ald-workbench .ald-native .ald-screen-top strong{color:#dcefe7!important}
.ald-workbench .ald-native .ald-screen-home p,.ald-workbench .ald-native .ald-screen-detail p{color:#dcefe7!important}
.ald-workbench .ald-native .ald-menu-list{height:240px;overflow:auto;padding:9px 0}
.ald-workbench button.ald-touch-row{display:flex!important;align-items:center!important;gap:8px!important;width:100%!important;min-height:46px!important;height:auto!important;max-width:none!important;margin:0 0 7px!important;padding:10px 8px!important;border:1px solid #58776e!important;border-radius:8px!important;background:#234b52!important;color:#dfefe9!important;text-align:left!important;white-space:normal!important;line-height:1.4!important;font-size:14px!important;box-shadow:none!important}
.ald-workbench .ald-native button.ald-touch-row.is-current{background:#346d68!important;color:#effff5!important;border-color:#93c0ad!important}
.ald-workbench .ald-native button.ald-touch-row>span:nth-child(2){flex:1;overflow-wrap:anywhere}
.ald-workbench .ald-native .ald-screen-detail{height:240px;overflow:auto}
.ald-workbench .ald-native .ald-screen-bottom{font-size:11px;color:#a7c5b9!important;min-height:30px;white-space:normal;line-height:1.6}
.ald-workbench .ald-native .ald-screen-tag,.ald-workbench .ald-native .ald-menu-position{color:#b3d7c7!important}
.ald-workbench .ald-native .ald-screen-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.ald-workbench .ald-native .ald-screen-actions>button{flex:1;display:flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;padding:10px 12px!important;border-radius:9px!important;background:#376d64!important;color:#e3f7ea!important;border:1px solid #7daa93!important;text-align:center!important;line-height:1.5!important;font-size:14px!important;box-shadow:none!important}
.ald-workbench .ald-native .ald-screen-actions>button:disabled,.ald-workbench button.ald-touch-row:disabled{opacity:.65!important;cursor:default!important}
.ald-workbench .ald-native button:focus-visible{outline:3px solid #a4e5bd!important;outline-offset:2px!important}
.ald-workbench .ald-native .ald-brand{font-size:17px!important;color:#d6e7df!important;margin:16px 0 6px!important;overflow-wrap:anywhere;line-height:1.5}
.ald-workbench .ald-native .ald-model{font-size:10px!important;color:#aac9bb!important;margin-top:12px!important;letter-spacing:.04em;line-height:1.6!important}
.ald-workbench .ald-panel-object{display:flex;align-items:center;gap:20px;margin:0 0 16px;padding:12px 18px;background:#122b28;border:1px solid #436a58;border-radius:15px}
.ald-workbench .ald-panel-object svg{width:120px;height:125px;flex:0 0 120px}
.ald-workbench .ald-panel-object strong{font-size:16px;color:#d7eadb;overflow-wrap:anywhere}
.ald-workbench .ald-external-panel{border-radius:14px}
.ald-workbench.ald-snapshot .ald-native .ald-lcd{min-height:310px}
@container(max-width:420px){.ald-workbench .ald-native{padding:18px 10px 14px}.ald-workbench .ald-native .ald-lcd{padding:12px 8px}.ald-workbench .ald-panel-object{gap:10px;padding:8px 12px}.ald-workbench .ald-panel-object svg{width:88px;height:92px;flex-basis:88px}.ald-workbench .ald-panel-object strong{font-size:14px}}

/* No invented PC/cable when the lesson only states a connection prerequisite. */
.ald-workbench .ald-neutral-link{font:700 42px/1.2 system-ui,sans-serif;text-align:center;color:#46d9be;padding:12px;}
