
/* Mabni focused studio: one layout for mazes and event lessons. */
:root{--studio-ink:#243c4a;--studio-muted:#71848e;--studio-surface:#fff;--studio-bg:#edf2f4;--studio-border:#dde6e9;--studio-accent:#147f75;--studio-soft:#e7f3ef;--studio-maze:#e8f0dc}
:root[data-world=ocean]{--studio-accent:#087f98;--studio-soft:#e1f2f5;--studio-maze:#d5edea}
:root[data-world=space]{--studio-accent:#7763b5;--studio-soft:#efebf8;--studio-maze:#192c45}
:root[data-mabni-theme=dark]{--studio-ink:#e6eef4;--studio-muted:#9db2bf;--studio-surface:#20313e;--studio-bg:#15232e;--studio-border:#344957;--studio-soft:#304757}
html body{margin:0!important;padding:0!important;overflow:hidden!important;background:var(--studio-bg)!important;font-family:system-ui,-apple-system,Segoe UI,sans-serif!important}
html body button,html body input,html body select{font-family:system-ui,-apple-system,Segoe UI,sans-serif!important}
html body #app[data-studio="focused"]{display:flex!important;flex-direction:column!important;width:100%!important;height:100dvh!important;min-height:0!important;overflow:hidden!important;background:var(--studio-bg)!important;color:var(--studio-ink)!important}
html body #app[data-studio="focused"] .topbar{position:relative!important;inset:auto!important;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:14px!important;flex:0 0 60px!important;height:60px!important;min-height:60px!important;max-height:60px!important;padding:0 20px!important;margin:0!important;background:#183e48!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;transform:none!important}
html body #app[data-studio="focused"] .topbar:before,html body #app[data-studio="focused"] .topbar:after,html body #app[data-studio="focused"] .topbar button:before,html body #app[data-studio="focused"] .topbar button:after{display:none!important}
html body #app[data-studio="focused"] #homeLogoBtn{display:flex!important;align-items:center!important;gap:9px!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;height:38px!important;min-height:38px!important;max-height:38px!important;order:-2!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;text-decoration:none!important}
html body #app[data-studio="focused"] #homeLogoBtn img{width:30px!important;height:30px!important;object-fit:contain!important;border-radius:7px!important}
html body #app[data-studio="focused"] #homeLogoBtn>span{font:800 16px system-ui!important;letter-spacing:-.6px!important;color:white!important}
html body #app[data-studio="focused"] #homeLogoBtn .brand-dot{color:#f0ca63!important}
html body #app[data-studio="focused"] #conceptChooserBtn{position:relative!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;flex:0 1 180px!important;order:0!important;width:180px!important;min-width:100px!important;max-width:180px!important;height:38px!important;padding:0 22px 0 18px!important;border:0!important;border-left:1px solid #ffffff2b!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;text-align:left!important}
html body #app[data-studio="focused"] #workspaceConceptKicker{font:550 8px system-ui!important;letter-spacing:1.3px!important;color:#9fbec4!important}
html body #app[data-studio="focused"] #workspaceConceptName{font:650 13px system-ui!important;color:#fff!important;letter-spacing:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}
html body #app[data-studio="focused"] .concept-change-cue{position:absolute!important;right:4px!important;top:12px!important;color:#a3c1c4!important;font-size:14px!important}
html body #app[data-studio="focused"] .level-row{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;flex:1 1 auto!important;order:0!important;gap:4px!important;width:auto!important;min-width:178px!important;height:36px!important;padding:0!important;margin:0!important;overflow:visible!important;grid-area:auto!important}
html body #app[data-studio="focused"] .level-row button{position:static!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;flex:0 0 auto!important;width:32px!important;height:34px!important;min-width:32px!important;min-height:34px!important;padding:0!important;margin:0!important;border:0!important;border-radius:7px!important;background:transparent!important;box-shadow:none!important;transform:none!important;color:#d4e5e7!important;font:500 22px system-ui!important;line-height:1!important}
html body #app[data-studio="focused"] .level-row button:hover{background:#ffffff17!important;color:white!important}
html body #app[data-studio="focused"] .user-area{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex:0 0 auto!important;order:0!important;gap:8px!important;margin:0!important;padding:0!important;flex-wrap:nowrap!important;overflow:visible!important;grid-area:auto!important}
html body #app[data-studio="focused"] .user-area>button{display:flex!important;align-items:center!important;justify-content:center!important;height:34px!important;min-height:34px!important;width:auto!important;min-width:0!important;padding:0 10px!important;border:1px solid #527079!important;border-radius:7px!important;background:transparent!important;background-image:none!important;box-shadow:none!important;transform:none!important;color:#e3eff0!important;font:550 11px system-ui!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body #app[data-studio="focused"] #worldBtn span{font:550 11px system-ui!important}
html body #app[data-studio="focused"] #themeBtn{width:34px!important;padding:7px!important}
html body #app[data-studio="focused"] #userBtn{max-width:140px!important}
html body #app[data-studio="focused"] #avatarBtn,html body #app[data-studio="focused"] #lessonChooserBtn{display:none!important}
html body #app[data-studio="focused"] #gameShell{display:grid!important;grid-template-columns:clamp(300px,var(--studio-left,39%),55%) 6px minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;flex:1 1 0!important;height:auto!important;min-height:0!important;max-height:none!important;width:100%!important;padding:12px!important;margin:0!important;gap:7px!important;overflow:hidden!important;background:var(--studio-bg)!important}
html body #app[data-studio="focused"] .left-panel,html body #app[data-studio="focused"] .right-panel{position:relative!important;display:flex!important;flex-direction:column!important;flex:initial!important;min-width:0!important;min-height:0!important;height:100%!important;margin:0!important;padding:0!important;gap:0!important;border:1px solid var(--studio-border)!important;border-radius:12px!important;background:var(--studio-surface)!important;box-shadow:none!important;overflow:hidden!important}
html body #app[data-studio="focused"] .mission-bar,html body #app[data-studio="focused"] #missionGoals,html body #app[data-studio="focused"] #runFeedbackDetails{display:none!important}
html body #app[data-studio="focused"] #visualization{position:relative!important;display:block!important;flex:1 1 0!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;aspect-ratio:auto!important;padding:0!important;margin:10px 10px 0!important;border:0!important;border-radius:9px!important;background:var(--studio-maze)!important;box-shadow:none!important;resize:none!important;overflow:hidden!important}
html body #app[data-studio="focused"] #svgMaze{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;margin:0!important;padding:12px!important;aspect-ratio:auto!important;transform:none!important;filter:none!important;background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;overflow:hidden!important}
html body #app[data-studio="focused"] #svgMaze .kenney-maze-tile-img{display:block!important;visibility:visible!important;opacity:1!important}
html body #app[data-studio="focused"] #svgMaze .tile-base{opacity:0!important}html body #app[data-studio="focused"] #svgMaze .tile-frame{stroke:none!important}html body #app[data-studio="focused"] #svgMaze image{filter:none!important}html body #app[data-studio="focused"] #svgMaze .player-token>circle{display:none!important}html body #app[data-studio="focused"] #phaserMaze{display:none!important}
html body #app[data-studio="focused"] .play-controls{display:flex!important;align-items:center!important;gap:12px!important;flex:0 0 auto!important;min-height:66px!important;padding:12px!important;background:var(--studio-surface)!important}
html body #app[data-studio="focused"] .run-dock{display:flex!important;align-items:center!important;gap:8px!important;flex:1 1 auto!important;height:40px!important;max-height:40px!important;padding:0!important;margin:0!important;min-height:0!important;width:auto!important;grid-template-columns:none!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}
html body #app[data-studio="focused"] .run-dock button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;flex:1 1 0!important;width:auto!important;height:40px!important;min-width:0!important;min-height:40px!important;max-height:40px!important;margin:0!important;padding:0 12px!important;border:1px solid var(--studio-border)!important;border-radius:7px!important;background:var(--studio-surface)!important;background-image:none!important;box-shadow:none!important;transform:none!important;color:var(--studio-muted)!important;font:600 12px system-ui!important;line-height:1!important}
html body #app[data-studio="focused"] .run-dock button:before,html body #app[data-studio="focused"] .run-dock button:after{display:none!important}html body #app[data-studio="focused"] .run-dock button svg{width:15px!important;height:15px!important}
html body #app[data-studio="focused"] #runBtn{flex:1.3 1 0!important;background:var(--studio-accent)!important;color:white!important;border-color:var(--studio-accent)!important}html body #app[data-studio="focused"] #runBtn span{font:650 13px system-ui!important;color:inherit!important}
/* Event controls share the same row as ordinary Run/Step controls. */
html body #app[data-studio="focused"] #eventGamePad.event-game-pad:not(.hidden){position:static!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;flex:1 1 auto!important;flex-wrap:nowrap!important;gap:6px!important;width:auto!important;height:40px!important;min-height:0!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important;grid-template:none!important;grid-template-areas:none!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important;overflow:visible!important}
html body #app[data-studio="focused"] #eventGamePad:before,html body #app[data-studio="focused"] #eventGamePad:after{display:none!important}
html body #app[data-studio="focused"] #eventGamePad .event-game-score{position:static!important;display:block!important;flex:1 1 auto!important;order:0!important;max-width:100px!important;margin:0!important;padding:0 5px 0 0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--studio-muted)!important;font:500 11px system-ui!important;line-height:1.35!important}
html body #app[data-studio="focused"] #eventScore{font:500 11px system-ui!important;color:inherit!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important}html body #app[data-studio="focused"] #eventGamePad .event-pad-actions{position:static!important;display:contents!important;width:auto!important;grid-area:auto!important}
html body #app[data-studio="focused"] #eventGamePad button{visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:static!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 36px!important;order:0!important;width:36px!important;height:38px!important;min-width:36px!important;max-width:36px!important;min-height:38px!important;max-height:38px!important;padding:0!important;margin:0!important;border:1px solid var(--studio-border)!important;border-radius:7px!important;background:var(--studio-soft)!important;background-image:none!important;box-shadow:none!important;transform:none!important;color:var(--studio-accent)!important;font:500 22px system-ui!important;line-height:1!important;grid-area:auto!important}
html body #app[data-studio="focused"] #eventGamePad button:hover{border-color:var(--studio-accent)!important}
html body #app[data-studio="focused"] #eventGamePad .event-new{flex-basis:76px!important;width:76px!important;max-width:76px!important;font:600 11px system-ui!important;background:var(--studio-accent)!important;color:white!important}
html body #app[data-studio="focused"] #eventGamePad.hidden,html body #app[data-studio="focused"] #eventGamePad button[hidden]{display:none!important}
html body #app[data-studio="focused"][data-activity=event] #runBtn,html body #app[data-studio="focused"][data-activity=event] #stepBtn{display:none!important}html body #app[data-studio="focused"][data-activity=event] .run-dock{flex:0 0 auto!important}html body #app[data-studio="focused"][data-activity=event] #resetBtn{width:70px!important;padding:0 8px!important;font-size:11px!important}
/* Feedback appears after an action, never as a second permanent instruction. */
html body #app[data-studio="focused"] #feedback{position:absolute!important;bottom:78px!important;left:22px!important;right:22px!important;z-index:15!important;display:block!important;width:auto!important;min-height:0!important;max-height:90px!important;overflow:auto!important;height:auto!important;visibility:visible!important;opacity:1!important;margin:0!important;padding:10px 13px!important;border:1px solid var(--studio-border)!important;border-radius:8px!important;background:var(--studio-surface)!important;box-shadow:0 5px 24px #173e4820!important;color:var(--studio-ink)!important;font:500 12px/1.5 system-ui!important}
html body #app[data-studio="focused"] #feedback:empty{display:none!important}html body #app[data-studio="focused"] #feedback.good{border-left:3px solid #279675!important}html body #app[data-studio="focused"] #feedback.bad,html body #app[data-studio="focused"] #feedback.warn{border-left:3px solid #d4a143!important}
html body #app[data-studio="focused"] .instruction-strip{display:flex!important;align-items:center!important;gap:14px!important;flex:0 0 auto!important;min-height:58px!important;padding:11px 16px!important;background:var(--studio-surface)!important;border-bottom:1px solid var(--studio-border)!important}
html body #app[data-studio="focused"] #learningFocusCard{display:block!important;flex:1 1 auto!important;min-height:0!important;min-width:0!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important}
html body #app[data-studio="focused"] #learningFocusCard p{margin:0!important;padding:0!important;font:550 13px/1.5 system-ui!important;letter-spacing:0!important;color:var(--studio-ink)!important}
html body #app[data-studio="focused"] #hintBtn,html body #app[data-studio="focused"] #clearBtn{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;height:30px!important;min-height:30px!important;padding:0 9px!important;border:1px solid var(--studio-border)!important;border-radius:6px!important;background:transparent!important;background-image:none!important;box-shadow:none!important;transform:none!important;color:var(--studio-muted)!important;font:550 11px system-ui!important;letter-spacing:0!important}
html body #app[data-studio="focused"] #hintBtn svg{width:14px!important;height:14px!important}
html body #app[data-studio="focused"] .workspace-head{display:flex!important;align-items:center!important;justify-content:space-between!important;flex:0 0 42px!important;height:42px!important;min-height:42px!important;padding:0 14px!important;border:0!important;border-bottom:1px solid var(--studio-border)!important;border-radius:0!important;background:var(--studio-bg)!important;box-shadow:none!important}
html body #app[data-studio="focused"] .workspace-head .eyebrow{margin:0!important;font:650 11px system-ui!important;text-transform:none!important;letter-spacing:0!important;color:var(--studio-muted)!important}
html body #app[data-studio="focused"] #workspaceTitle,html body #app[data-studio="focused"] #workspaceNote{display:none!important}html body #app[data-studio="focused"] .workspace-meta{display:flex!important;align-items:center!important;gap:12px!important}
html body #app[data-studio="focused"] #capacityBubble{display:block!important;position:static!important;min-width:0!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;font:500 11px system-ui!important;letter-spacing:0!important;color:var(--studio-muted)!important}html body #app[data-studio="focused"] #capacityBubble svg{display:none!important}html body #app[data-studio="focused"] #capacity{font:500 11px system-ui!important;color:inherit!important}
html body #app[data-studio="focused"] #blocklyArea{position:relative!important;display:block!important;flex:1 1 0!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;background:var(--studio-surface)!important}
html body #app[data-studio="focused"] #blocklyDiv{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;background:var(--studio-surface)!important;border:0!important}
html body #app[data-studio="focused"] .blocklyMainBackground{fill:var(--studio-surface)!important;stroke:none!important}html body #app[data-studio="focused"] .blocklyFlyoutBackground{fill:var(--studio-bg)!important;fill-opacity:1!important}html body #app[data-studio="focused"] .blocklyText{font-family:system-ui,Segoe UI,sans-serif!important;font-weight:550!important;font-size:12px!important}html body #app[data-studio="focused"] .blocklyScrollbarHandle{fill:#a2b9c4!important;fill-opacity:.35!important}
html body #app[data-studio="focused"] #layoutSplitter{display:block!important;position:relative!important;width:6px!important;min-width:6px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;cursor:col-resize!important}html body #app[data-studio="focused"] #layoutSplitter:before{content:'';position:absolute;left:2px;top:45%;height:32px;width:2px;border-radius:2px;background:#c5d2d8}html body #app[data-studio="focused"] #layoutSplitter svg{display:none!important}
html body #app[data-studio="focused"] #winBanner{background:var(--studio-accent)!important;color:white!important;border-radius:10px!important;box-shadow:0 8px 35px #254a4530!important;font:700 22px system-ui!important}#focusToggleFloat,#showTopBtn{display:none!important}
/* A visible, evenly spaced lesson path stays in the header. */
html body #app[data-studio="focused"] #levelStrip{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;flex:0 1 auto!important;min-width:0!important;width:auto!important;height:42px!important;min-height:42px!important;max-height:42px!important;padding:3px!important;margin:0!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;border:0!important;background:transparent!important}
html body #app[data-studio="focused"] #levelStrip button{position:relative!important;display:grid!important;place-items:center!important;flex:0 0 32px!important;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;max-width:32px!important;max-height:32px!important;padding:0!important;margin:0!important;border:1px solid #ffffff40!important;border-radius:50%!important;background:#ffffff0b!important;color:#d4e5e7!important;box-shadow:none!important;transform:none!important;line-height:1!important}
html body #app[data-studio="focused"] #levelStrip button.done{background:#2c8979!important;border-color:#56b5a2!important;color:white!important}
html body #app[data-studio="focused"] #levelStrip button.active{background:#f2cf65!important;border-color:#f2cf65!important;color:#183e48!important;box-shadow:0 0 0 3px #f2cf652c!important}
html body #app[data-studio="focused"] #levelStrip button:hover{border-color:#f2cf65!important}
html body #app[data-studio="focused"] #levelStrip .level-chip-num{position:static!important;display:grid!important;place-items:center!important;width:100%!important;height:100%!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;color:inherit!important;transform:none!important;font:650 12px/1 system-ui!important;letter-spacing:0!important}
html body #app[data-studio="focused"] #homeLogoBtn>span{display:block!important;position:static!important;width:auto!important;height:auto!important;writing-mode:horizontal-tb!important;white-space:nowrap!important;line-height:1!important}
html body #app[data-studio="focused"] #homeLogoBtn .brand-dot{display:inline!important}
.world-dialog::backdrop{background:#15364366;backdrop-filter:blur(3px)}
@media(max-width:1050px){html body #app[data-studio="focused"] .topbar{gap:10px!important;padding:0 12px!important}html body #app[data-studio="focused"] #homeLogoBtn>span{display:none!important}html body #app[data-studio="focused"] #conceptChooserBtn{flex-basis:170px!important;width:170px!important;padding-left:10px!important}html body #app[data-studio="focused"] #userBtn{max-width:96px!important}html body #app[data-studio="focused"] .play-controls{gap:6px!important;padding:10px!important}html body #app[data-studio="focused"] #eventGamePad .event-game-score{display:none!important}}
@media(max-height:620px) and (min-width:741px){html body #app[data-studio="focused"] .topbar{flex-basis:52px!important;height:52px!important;min-height:52px!important;max-height:52px!important}html body #app[data-studio="focused"] #gameShell{padding:9px!important}html body #app[data-studio="focused"] .play-controls{min-height:60px!important;padding:10px!important}html body #app[data-studio="focused"] .instruction-strip{min-height:48px!important;padding:8px 13px!important}html body #app[data-studio="focused"] #learningFocusCard p{font-size:12px!important}}
@media(max-width:940px){html body{overflow:auto!important}html body #app[data-studio="focused"]{height:auto!important;min-height:100dvh!important;overflow:visible!important}html body #app[data-studio="focused"] .topbar{flex-wrap:wrap!important;flex:0 0 auto!important;height:auto!important;min-height:98px!important;max-height:none!important;padding:8px 12px!important;gap:8px!important}html body #app[data-studio="focused"] #conceptChooserBtn{flex:1 1 130px!important;max-width:none!important}html body #app[data-studio="focused"] .level-row{order:3!important;flex-basis:100%!important;min-width:0!important;height:30px!important}html body #app[data-studio="focused"] .user-area{gap:5px!important}html body #app[data-studio="focused"] #userBtn{max-width:80px!important}html body #app[data-studio="focused"] #worldBtn{max-width:95px!important}html body #app[data-studio="focused"] #gameShell{display:flex!important;flex-direction:column!important;gap:12px!important;flex:1 0 auto!important;overflow:visible!important;padding:10px!important}html body #app[data-studio="focused"] .left-panel{height:440px!important;min-height:440px!important;flex:0 0 440px!important}html body #app[data-studio="focused"] .right-panel{height:560px!important;min-height:560px!important;flex:0 0 560px!important}html body #app[data-studio="focused"] #layoutSplitter{display:none!important}.world-options{gap:7px}.world-options span{display:none}.rover-options{flex-wrap:wrap}.rover-options button{min-width:150px}.world-dialog{padding:18px}}
@media(max-width:420px){html body #app[data-studio="focused"] #conceptChooserBtn{flex-basis:100px!important;width:100px!important;min-width:75px!important}html body #app[data-studio="focused"] #workspaceConceptName{max-width:90px!important;font-size:11px!important}html body #app[data-studio="focused"] #homeLogoBtn{display:none!important}html body #app[data-studio="focused"] #conceptChooserBtn{border:0!important;padding-left:0!important}html body #app[data-studio="focused"] #themeBtn{display:none!important}}
@media(prefers-reduced-motion:reduce){#app *,dialog *{animation:none!important;transition:none!important}}

.world-dialog{width:min(760px,calc(100vw - 32px));max-width:none;border:0;border-radius:18px;padding:25px;background:#f7faf8;color:#243e4a;box-shadow:0 30px 120px #122d4d55}.world-dialog::backdrop{background:#153c4e77;backdrop-filter:blur(5px)}.world-dialog-head{display:flex;justify-content:space-between;gap:16px}.world-dialog-head small{font-size:10px;letter-spacing:1.5px;color:#54847e}.world-dialog-head h2{font-size:28px;letter-spacing:-1px;margin:8px 0}.world-dialog-head p{font-size:12px;color:#7a9498;margin:8px 0 20px}.world-dialog-head>button{background:transparent;border:0;font-size:24px;align-self:flex-start;color:#72918e}.world-options{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.world-options button,.rover-options button{padding:7px;background:white;border:2px solid #e0e9e6;border-radius:12px;cursor:pointer;color:#234552;text-align:left}.world-options button[aria-pressed=true],.rover-options button[aria-pressed=true]{border-color:#198775;background:#eff9f4}.world-options img{width:100%;border-radius:7px}.world-options strong{display:block;font-size:13px;margin:9px 5px 5px}.world-options span{display:block;font-size:10px;color:#7a9299;margin:0 5px 7px;line-height:1.6}.world-dialog h3{font-size:14px;margin:24px 0 12px}.rover-options{display:flex;gap:12px}.rover-options button{display:flex;align-items:center;gap:8px;flex:1}.rover-options img{width:55px;height:55px;transform:rotate(-35deg)}.rover-options strong{font-size:12px;display:block}.rover-options small{font-size:9px;display:block;margin-top:4px;color:#789597}

.world-dialog .appearance-options{display:block;margin:20px 0 0 auto;border:0;background:transparent;color:#648881;font-size:11px;text-decoration:underline;cursor:pointer;padding:6px}

/* One coherent world, with a clear distinction between trail and scenery. */
:root{--studio-maze:#dcebd3}
:root[data-world=ocean]{--studio-maze:#b9e0e6}
:root[data-world=space]{--studio-maze:#24314d}
html body #app[data-studio="focused"] #svgMaze .world-object image{image-rendering:auto!important}
html body #app[data-studio="focused"] #svgMaze .world-path{rx:10px!important;ry:10px!important;stroke-width:1.5px!important}
html body #app[data-studio="focused"] #levelStrip .level-completed-mark{position:absolute!important;display:grid!important;place-items:center!important;right:-3px!important;bottom:-3px!important;width:15px!important;height:15px!important;border:2px solid #193e47!important;border-radius:50%!important;background:#63d2a4!important;color:#163d3f!important;z-index:1!important}
html body #app[data-studio="focused"] #levelStrip .level-completed-mark svg{display:block!important;width:12px!important;height:12px!important;fill:none!important;stroke:currentColor!important;stroke-width:2.5!important;stroke-linecap:round!important;stroke-linejoin:round!important}
html body #lessonDialog{width:min(1110px,calc(100vw - 40px))!important;max-width:none!important;max-height:calc(100dvh - 40px)!important;padding:0!important;border:1px solid #d3e1df!important;border-radius:18px!important;background:#f6f9f8!important;color:#24434b!important;box-shadow:0 30px 120px #092c4560!important;overflow:hidden!important}
html body #lessonDialog::backdrop{background:#13384685;backdrop-filter:blur(5px)}
html body #lessonDialog .dialog-card{display:flex!important;flex-direction:column!important;gap:0!important;width:100%!important;max-width:none!important;max-height:calc(100dvh - 42px)!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
html body #lessonDialog .dialog-head{display:flex!important;align-items:center!important;justify-content:space-between!important;flex:0 0 auto!important;margin:0!important;padding:20px 25px!important;border-bottom:1px solid #dce6e3!important;background:#fff!important}
html body #lessonDialog .dialog-head .eyebrow{margin:0 0 4px!important;font:650 10px system-ui!important;letter-spacing:1.6px!important;color:#67867f!important}
html body #lessonDialog h2{margin:0!important;font:750 23px system-ui!important;letter-spacing:-.6px!important;color:#23454d!important}
html body #lessonDialog .dialog-head button{min-height:34px!important;padding:7px 13px!important;border:1px solid #d8e2df!important;border-radius:8px!important;background:#fff!important;font:600 12px system-ui!important;color:#44666b!important;box-shadow:none!important}
html body #lessonDialog .journey-layout{display:grid;grid-template-columns:218px minmax(0,1fr);min-height:0;overflow:hidden}
html body #lessonDialog #courseTabs{display:flex!important;flex-direction:column!important;gap:3px!important;overflow:auto!important;min-width:0!important;margin:0!important;padding:16px 10px!important;border-right:1px solid #dce6e3!important;background:#edf3f0!important}
html body #lessonDialog .journey-course{display:flex;align-items:center;gap:10px;flex-shrink:0;text-align:left;min-height:54px;padding:9px 10px;border:1px solid transparent;border-radius:9px;background:transparent;color:#42656b;box-shadow:none;cursor:pointer;white-space:normal}
html body #lessonDialog .journey-course[aria-pressed=true]{background:#fff;border-color:#d5e4df;box-shadow:0 2px 4px #20493908;color:#176f5b}
html body #lessonDialog .journey-course-number{display:grid;place-items:center;flex:0 0 27px;height:27px;border-radius:8px;background:#dce7e0;font:650 12px system-ui;color:#52736a}
html body #lessonDialog .journey-course[aria-pressed=true] .journey-course-number{background:#18795f;color:#fff}
html body #lessonDialog .journey-course strong{display:block;font:650 12px/1.4 system-ui}
html body #lessonDialog .journey-course small{display:block;margin-top:4px;font:450 10px system-ui;color:#78908d}
html body #lessonDialog #lessonGrid{display:block!important;min-width:0!important;overflow:auto!important;margin:0!important;padding:24px!important;background:transparent!important}
html body #lessonDialog .journey-overview{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;margin:0 0 22px}
html body #lessonDialog .journey-eyebrow{font:650 9px system-ui;letter-spacing:1.7px;color:#79928b}
html body #lessonDialog .journey-overview h3{font:750 24px system-ui;letter-spacing:-.6px;margin:6px 0 8px;color:#274650}
html body #lessonDialog .journey-overview p{font:450 12px/1.6 system-ui;color:#708b8e;margin:0;max-width:430px}
html body #lessonDialog .journey-total{font:750 28px system-ui;color:#1d8168;white-space:nowrap;text-align:right}
html body #lessonDialog .journey-total small{display:block;font:450 10px system-ui;color:#78928b;margin-top:3px}
html body #lessonDialog progress{grid-column:1/-1;appearance:none;width:100%;height:5px;border:0;border-radius:10px;background:#e2ece7;overflow:hidden}
html body #lessonDialog progress::-webkit-progress-bar{background:#e2ece7}html body #lessonDialog progress::-webkit-progress-value{background:#39a383;border-radius:10px}
html body #lessonDialog .journey-chapter{border:1px solid #dce7e3;background:white;border-radius:12px;overflow:hidden;margin:0 0 12px}
html body #lessonDialog .journey-chapter summary{display:flex;gap:12px;align-items:center;padding:15px;list-style:none;cursor:pointer}
html body #lessonDialog .journey-chapter summary::-webkit-details-marker{display:none}
html body #lessonDialog .journey-chapter-number{display:grid;place-items:center;flex:0 0 34px;height:34px;background:#eff5f1;border-radius:10px;color:#538373;font:650 14px system-ui}
html body #lessonDialog summary small{display:block;font:600 8px system-ui;letter-spacing:1.1px;color:#92a39b;margin-bottom:4px}
html body #lessonDialog summary strong{display:block;font:650 14px system-ui;color:#2c4e55}
html body #lessonDialog .journey-chapter-count{margin-left:auto;font:500 11px system-ui;color:#799187}
html body #lessonDialog summary svg{width:18px;height:18px;fill:none;stroke:#8ba298;stroke-width:1.5;transition:transform .2s}
html body #lessonDialog details[open] summary svg{transform:rotate(180deg)}
html body #lessonDialog .journey-levels{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;padding:4px 15px 17px}
html body #lessonDialog .journey-level{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:0;min-height:116px;text-align:left;padding:12px 10px;border:1px solid #dde6e2;border-radius:9px;background:#fafcfb;color:#2a4d55;box-shadow:none;cursor:pointer;white-space:normal;transition:background .15s,border-color .15s}
html body #lessonDialog .journey-level:hover{border-color:#8bbdac;background:#eef8f2}
html body #lessonDialog .journey-level-number{display:grid;place-items:center;width:25px;height:25px;flex:0 0 auto;border-radius:50%;background:#e9f0ed;color:#56786e;font:650 11px system-ui}
html body #lessonDialog .journey-level strong{font:600 11px/1.4 system-ui;letter-spacing:0;overflow-wrap:normal}
html body #lessonDialog .journey-level small{font:450 9px system-ui;color:#91a098;margin-top:auto}
html body #lessonDialog .journey-level.is-done{border-color:#c5e2d2;background:#f2faf5}
html body #lessonDialog .journey-level.is-done .journey-level-number{background:#318f70;color:#fff}
html body #lessonDialog .journey-check{position:absolute;right:9px;top:13px;width:18px;height:18px;fill:none;stroke:#318f70;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
html body #lessonDialog .journey-level.is-current{border:2px solid #d5ae4c;padding:11px 9px;background:#fffae9}
html body #lessonDialog .journey-level.is-current .journey-level-number{background:#f0cf73;color:#5b531e}
html body #lessonDialog button:focus-visible,html body #lessonDialog summary:focus-visible{outline:3px solid #55b1b0;outline-offset:-3px}
html body #completeDialog{width:min(420px,calc(100vw - 32px))!important;max-width:none!important;max-height:calc(100dvh - 32px)!important;padding:0!important;border:0!important;border-radius:20px!important;overflow:auto!important;background:#fff!important;color:#254c50!important;box-shadow:0 30px 100px #173d4950!important}
html body #completeDialog::backdrop{background:#13384675;backdrop-filter:blur(4px)}
html body #completeDialog .complete-card{display:flex!important;flex-direction:column!important;align-items:center!important;width:100%!important;min-width:0!important;max-width:none!important;min-height:0!important;padding:28px!important;margin:0!important;border:0!important;border-radius:0!important;background:white!important;box-shadow:none!important;overflow:visible!important;text-align:center!important}
html body #completeDialog .completion-mark{display:none!important}
html body #completeDialog .eyebrow{margin:0 0 10px!important;font:650 10px system-ui!important;letter-spacing:1.8px!important;color:#82a192!important}
html body #completeDialog h2{margin:0 0 10px!important;font:750 30px system-ui!important;letter-spacing:-1px!important;color:#285249!important}
html body #completeDialog #completeMessage{margin:0!important;font:450 13px/1.7 system-ui!important;color:#738b82!important}
html body #completeDialog #completionStars{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin:23px 0 15px!important}
html body #completeDialog #completionStars img{width:38px!important;height:38px!important}
html body #completeDialog #completeBreakdown{display:block!important;width:100%!important;margin:0 0 20px!important;padding:13px!important;border-radius:9px!important;background:#f1f7f3!important;border:0!important}
html body #completeDialog #completeBreakdown p{margin:0!important;font:450 12px/1.7 system-ui!important;color:#6e8c7a!important}
html body #completeDialog #completeBreakdown strong{display:inline!important;font:650 12px system-ui!important;color:#3d775c!important}
html body #completeDialog .dialog-actions{display:flex!important;width:100%!important;gap:10px!important;padding:0!important;margin:0!important}
html body #completeDialog .dialog-actions button{position:static!important;flex:1!important;min-height:42px!important;padding:10px!important;border-radius:9px!important;border:1px solid #dbe5df!important;background:#fff!important;box-shadow:none!important;transform:none!important;color:#638074!important;font:600 12px system-ui!important}
html body #completeDialog .dialog-actions button:before,html body #completeDialog .dialog-actions button:after{display:none!important}
html body #completeDialog #completeNextBtn{background:#207f64!important;color:#fff!important;border-color:#207f64!important}
@media(max-width:780px){html body #lessonDialog{width:calc(100vw - 18px)!important;max-height:calc(100dvh - 18px)!important}html body #lessonDialog .journey-layout{grid-template-columns:165px minmax(0,1fr)}html body #lessonDialog #lessonGrid{padding:15px!important}html body #lessonDialog .journey-levels{grid-template-columns:repeat(3,minmax(0,1fr))}html body #lessonDialog .journey-overview h3{font-size:20px}html body #lessonDialog .journey-total{font-size:20px}}
@media(max-width:530px){html body #lessonDialog .journey-layout{display:flex;flex-direction:column}html body #lessonDialog #courseTabs{flex-direction:row!important;flex-shrink:0;padding:8px!important;border-bottom:1px solid #dce6e3!important}html body #lessonDialog .journey-course{min-width:158px}html body #lessonDialog .journey-levels{grid-template-columns:repeat(2,minmax(0,1fr))}html body #lessonDialog .dialog-head{padding:15px!important}}

@media(max-width:1100px){html body #app[data-studio="focused"] #levelStrip{gap:4px!important}html body #app[data-studio="focused"] #levelStrip button{flex-basis:28px!important;width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important}html body #app[data-studio="focused"] #conceptChooserBtn{flex-basis:145px!important;width:145px!important}}
@media(min-width:741px) and (max-width:940px){html body #app[data-studio="focused"] .topbar{flex-wrap:wrap!important;flex-basis:102px!important;height:102px!important;min-height:102px!important;max-height:102px!important;padding:8px 14px!important;gap:4px 12px!important}html body #app[data-studio="focused"] #conceptChooserBtn{flex:1!important;max-width:none!important}html body #app[data-studio="focused"] .level-row{order:3!important;flex-basis:100%!important;height:38px!important}}
html body #app[data-studio="focused"] button:focus-visible{outline:3px solid #67cbd0!important;outline-offset:3px!important}

@media(max-width:940px){html body #app[data-studio="focused"][data-activity=event] .play-controls{flex-wrap:wrap!important}html body #app[data-studio="focused"][data-activity=event] #eventGamePad:not(.hidden){flex-basis:100%!important;justify-content:center!important}html body #app[data-studio="focused"][data-activity=event] .run-dock{margin-left:auto!important}html body #app[data-studio="focused"][data-activity=event] #feedback{bottom:110px!important}}

html body #app[data-studio="focused"] #eventGamePad + .run-dock{margin:0!important}
html body #completeDialog .complete-card::before,html body #completeDialog .complete-card::after{display:none!important;content:none!important}
html body #completeDialog #completeBreakdown strong{text-transform:none!important;letter-spacing:0!important}

/* Dialogs use the same night palette as the studio, including selected states. */
html[data-mabni-theme=dark] body #lessonDialog,
html[data-mabni-theme=dark] body .world-dialog{background:#192c38!important;color:#e6eef4!important;border-color:#3b5360!important}
html[data-mabni-theme=dark] body #lessonDialog .dialog-head,
html[data-mabni-theme=dark] body #lessonDialog .journey-chapter{background:#203542!important;border-color:#3b5360!important}
html[data-mabni-theme=dark] body #lessonDialog #courseTabs{background:#172a35!important;border-color:#3b5360!important}
html[data-mabni-theme=dark] body #lessonDialog h2,
html[data-mabni-theme=dark] body #lessonDialog h3,
html[data-mabni-theme=dark] body #lessonDialog strong,
html[data-mabni-theme=dark] body .world-dialog h2,
html[data-mabni-theme=dark] body .world-dialog h3,
html[data-mabni-theme=dark] body .world-dialog strong{color:#e6eef4!important}
html[data-mabni-theme=dark] body #lessonDialog p,
html[data-mabni-theme=dark] body #lessonDialog small,
html[data-mabni-theme=dark] body #lessonDialog .eyebrow,
html[data-mabni-theme=dark] body #lessonDialog .journey-eyebrow,
html[data-mabni-theme=dark] body #lessonDialog .journey-chapter-count,
html[data-mabni-theme=dark] body .world-dialog p,
html[data-mabni-theme=dark] body .world-dialog small,
html[data-mabni-theme=dark] body .world-options span{color:#adc2ca!important}
html[data-mabni-theme=dark] body #lessonDialog .journey-course,
html[data-mabni-theme=dark] body #lessonDialog .journey-level,
html[data-mabni-theme=dark] body #lessonDialog .dialog-head button,
html[data-mabni-theme=dark] body .world-options button,
html[data-mabni-theme=dark] body .rover-options button{background:#263e4c!important;border-color:#3b5561!important;color:#e6eef4!important}
html[data-mabni-theme=dark] body #lessonDialog .journey-course[aria-pressed=true],
html[data-mabni-theme=dark] body #lessonDialog .journey-level.is-done,
html[data-mabni-theme=dark] body .world-options button[aria-pressed=true],
html[data-mabni-theme=dark] body .rover-options button[aria-pressed=true]{background:#204f48!important;border-color:#6bb69e!important}
html[data-mabni-theme=dark] body #lessonDialog .journey-level.is-current{background:#524b30!important;border-color:#edcd74!important}
html[data-mabni-theme=dark] body #lessonDialog .journey-level-number,
html[data-mabni-theme=dark] body #lessonDialog .journey-course-number,
html[data-mabni-theme=dark] body #lessonDialog .journey-chapter-number{background:#365664!important;color:#e6eef4!important}
html[data-mabni-theme=dark] body #lessonDialog .journey-level.is-current .journey-level-number{background:#edcd74!important;color:#293c3c!important}
html[data-mabni-theme=dark] body #lessonDialog .journey-level.is-done .journey-level-number{background:#5ebc99!important;color:#153e38!important}
html[data-mabni-theme=dark] body #lessonDialog .journey-total{color:#82d9b7!important}
html[data-mabni-theme=dark] body #lessonDialog .journey-check{stroke:#82d9b7!important}
html[data-mabni-theme=dark] body #lessonDialog progress,
html[data-mabni-theme=dark] body #lessonDialog progress::-webkit-progress-bar{background:#36515d!important}
html[data-mabni-theme=dark] body #lessonDialog .journey-level:hover,
html[data-mabni-theme=dark] body #lessonDialog .journey-course:hover{border-color:#85c8bc!important}
html body #lessonDialog button::before,html body #lessonDialog button::after,
html body .world-dialog button::before,html body .world-dialog button::after{display:none!important}

/* Activities with their own navigation use one header. */
.lab-with-own-header .mabni-embedded-lab-head{display:none!important}.mabni-embedded-lab-overlay.lab-with-own-header{padding:0;grid-template-rows:minmax(0,1fr)!important}.lab-with-own-header iframe{height:100%;border-radius:0}
