:root{font-family:Inter,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#263f37;background:#edf1ed;font-synthesis:none;--ink:#263f37;--muted:#718478;--teal:#087b68;--line:#dde5dd;--soft:#f3f6f0;--gold:#bf8a1d;--danger:#a64c40}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{height:100dvh;min-height:360px;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.43}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #20a489;outline-offset:3px}button,input,textarea,select{border-radius:6px}button{border:0;color:inherit}button,input,textarea,select,a{-webkit-tap-highlight-color:transparent}input,textarea,select{min-width:0}input,textarea{accent-color:var(--teal)}[hidden]{display:none!important}.sprite{position:absolute;width:0;height:0;overflow:hidden}.icon{width:17px;height:17px;flex:none;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}h1,h2,h3,p{margin:0}.eyebrow{display:block;font-size:10px;line-height:1.5;color:#7c8d7e;letter-spacing:.5px}.empty{font-size:12px;color:#8c9a8b;line-height:1.8;padding:13px 0}.count{font-size:10px;font-weight:500;color:#7d8e7d;font-variant-numeric:tabular-nums}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:8px 12px;font-size:12px;line-height:1.5;white-space:nowrap;font-weight:500}.button.primary{background:var(--teal);color:#fff}.button.primary:not(:disabled):hover{background:#056451}.button.subtle{background:#edf3e9;color:#456c52;border:1px solid #dbe6d8}.button.subtle:not(:disabled):hover{background:#e4eee0}.button.ghost{background:transparent;color:#47775d}.button.full{width:100%}.text-button{min-height:30px;padding:4px 0;background:transparent;color:#61806a;font-size:11px;text-decoration:underline;text-underline-offset:3px}.text-button.danger{color:#a56959}.icon-button{min-width:36px;min-height:36px;background:transparent;display:grid;place-items:center;color:#748c78}.fine-print{font-size:10px;line-height:1.75;color:#859382}.intro{font-size:12px;line-height:1.8;color:#71816f}.field{display:flex;flex-direction:column;gap:6px;font-size:11px;color:#6b806d;line-height:1.6}.field input,.field textarea{display:block;width:100%;min-height:37px;padding:8px 9px;border:1px solid #d3dfd0;background:#fff;color:#365b40;font-size:12px;outline:none}.field input:focus,.field textarea:focus{border-color:#35a086;box-shadow:0 0 0 2px #35a08612}
.topbar{height:62px;flex:none;display:flex;align-items:center;gap:22px;padding:0 22px;background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap;color:var(--ink);text-decoration:none;font-size:15px;font-weight:700;letter-spacing:1px}.brand>span:nth-child(2){display:flex;align-items:center;gap:13px}.brand strong{font-size:14px;letter-spacing:.4px;font-weight:600;padding-left:13px;border-left:1px solid #d6e1d6}.brand-mark{height:31px;width:31px;display:grid;place-items:center;background:var(--teal);color:#fff;font-size:18px;clip-path:polygon(50% 0,95% 24%,95% 76%,50% 100%,5% 76%,5% 24%)}.brand .prototype-tag{font-size:9px;font-weight:500;letter-spacing:0;background:#eff4ec;color:#6e876f;border:1px solid #e1e9dd;border-radius:4px;padding:4px 6px}.engine-status{display:flex;align-items:center;gap:7px;color:#7c8c79;font-size:10px;margin-left:auto;white-space:nowrap}.status-dot{height:6px;width:6px;flex:none;border-radius:50%;background:#b4c4b1}.status-dot.ready{background:#1fa374;box-shadow:0 0 0 3px #1fa37412}.status-dot.error{background:#b76a54}.project-bar{height:55px;flex:none;display:flex;align-items:center;gap:14px;padding:0 22px;background:#f8faf5;border-bottom:1px solid var(--line)}.sample-picker{display:flex;align-items:center;gap:11px;min-width:0}.sample-picker label{font-size:11px;color:#798b77;white-space:nowrap}.sample-picker select{border:1px solid #d6e2d2;background:#fff;color:#3a6549;min-height:34px;padding:6px 28px 6px 10px;max-width:360px;font-size:12px}.draft-status{font-size:10px;color:#8e9a86;white-space:nowrap}.draft-status[data-dirty="true"]{color:#9c7b37}.file-actions{margin-left:auto;display:flex;gap:7px}.file-actions .button{font-size:11px;min-height:33px;padding:6px 9px}.file-actions .icon{width:14px;height:14px}
.studio{display:grid;grid-template-columns:238px minmax(0,1fr) 340px;min-height:0;flex:1;gap:1px;background:var(--line)}.panel{min-width:0;min-height:0;background:#fff}.library-panel{display:flex;flex-direction:column;padding:20px 17px 13px;overflow:auto;scrollbar-width:thin;scrollbar-color:#c7d7c4 transparent}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.panel-heading h1{font-size:17px;font-weight:600;line-height:1.7;margin-top:3px}.panel-heading h1 .count{margin-left:5px}.panel-heading.compact{margin-bottom:10px}.panel-heading h2{font-size:17px;line-height:1.65;font-weight:600;margin-top:4px;overflow-wrap:anywhere}.search-label{display:block;margin-bottom:13px}.search-label input{width:100%;min-height:37px;border:1px solid #d9e3d5;padding:8px 10px;background:#f8faf5;outline:none;font-size:11px;color:#47694b}.search-label input:focus{border-color:#62ad8c}.asset-list{display:flex;flex-direction:column;gap:8px}.asset-card{display:flex;flex-direction:column;padding:11px;border:1px solid #dfe7db;border-radius:8px;background:#fbfcf8}.asset-card-heading{display:flex;gap:9px;align-items:center}.asset-cube{width:31px;height:35px;flex:none;border-radius:6px;background:#e8f0e2;display:grid;place-items:center;color:#527a50}.asset-card h3{font-size:12px;font-weight:600;line-height:1.55}.asset-card .asset-meta{font-size:9px;line-height:1.6;color:#8a9981;margin-top:3px}.asset-card .asset-add{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;min-height:31px;padding:5px;margin-top:9px;background:#eef4e7;color:#4d7953;font-size:10px}.asset-card .asset-add .icon{width:13px;height:13px}.instances-section{margin-top:23px;padding-top:17px;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}.section-heading h2,.section-heading h3{font-size:12px;font-weight:600;line-height:1.7}.instance-list{display:flex;flex-direction:column;gap:5px}.instance-row{display:flex;align-items:center;gap:8px;min-height:44px;padding:9px;border:1px solid transparent;border-radius:6px;background:transparent;color:#638361;text-align:left}.instance-row .icon{height:15px;width:15px;color:#8da287}.instance-row span{display:flex;flex-direction:column;gap:3px;min-width:0}.instance-row strong{font-size:11px;line-height:1.6;font-weight:500;overflow-wrap:anywhere}.instance-row small{font-size:9px;color:#94a08b;line-height:1.5}.instance-row[aria-pressed="true"]{background:#eef5e8;border-color:#cfdfc5;color:#35744c}.library-note{font-size:10px;line-height:1.8;color:#95a18a;margin-top:20px}.studio.is-training .library-panel{background:#fbfcf8}
.scene-panel{position:relative;min-width:0;min-height:0;overflow:hidden;background:#e4ebe1;isolation:isolate}#myth-canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab;outline-offset:-4px}#myth-canvas.is-dragging{cursor:grabbing}.scene-top{position:absolute;left:16px;right:16px;top:16px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;pointer-events:none;z-index:3}.scene-chips{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0}.scene-mode{font-size:10px;line-height:1.6;color:#567550;background:#f9fcf3f0;border:1px solid #d5e3cb;padding:3px 8px;border-radius:5px}.scene-mode[data-mode="learn"]{background:#e2f3dd;color:#28704a}.scene-mode[data-mode="exam"]{background:#fff3db;color:#936e32}#scene-title{font-size:12px;line-height:1.7;color:#4c6f4d;text-shadow:0 1px 8px #fff;overflow-wrap:anywhere;max-width:280px}.scene-button{pointer-events:auto;background:#fcfdf8ec;border:1px solid #d7e3d0;min-height:34px;font-size:10px;color:#678362;padding:7px 9px;flex:none}.scene-button .icon{width:14px;height:14px}.scene-hint{position:absolute;left:16px;bottom:16px;display:flex;align-items:center;gap:8px;font-size:9px;line-height:1.6;color:#77916d;background:#f7fbf0d9;border:1px solid #e0e9d6;padding:7px 9px;border-radius:6px;pointer-events:none;z-index:2}.scene-hint i{height:9px;width:1px;background:#d0dec5}.canvas-loading{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;text-align:center;padding:24px;background:#eef3e9f5;color:#507549}.canvas-loading strong{font-size:14px;font-weight:500;line-height:1.7}.canvas-loading p{font-size:11px;line-height:1.8;color:#83937a;max-width:320px}.spinner{width:31px;height:31px;border-radius:50%;border:2px solid #cbdcc1;border-top-color:var(--teal);animation:spin 1.1s linear infinite}.scene-error{position:absolute;z-index:5;left:16px;right:16px;bottom:17px;background:#fff5e7f5;color:#9c6947;border:1px solid #e6d0b5;border-radius:7px;font-size:11px;line-height:1.8;padding:11px;white-space:pre-line}.mobile-guide{display:none}
.work-panel{display:flex;flex-direction:column;overflow:hidden}.work-tabs{display:flex;gap:4px;flex:none;border-bottom:1px solid var(--line);padding:9px 13px 0;background:#fcfdf9}.work-tabs button{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;min-height:40px;padding:9px 8px;background:transparent;color:#84917b;font-size:12px;border-radius:6px 6px 0 0;border-bottom:2px solid transparent}.work-tabs button[aria-selected="true"]{color:var(--teal);border-bottom-color:var(--teal);background:#f1f6eb}.work-tabs button span{font-size:9px;background:#f7e7da;color:#a36646;border-radius:4px;padding:1px 4px}.work-content{padding:20px 18px 17px;min-height:0;overflow:auto;flex:1;scrollbar-width:thin;scrollbar-color:#c7d7c4 transparent}.instance-editor{border:1px solid #dfe8d8;border-radius:8px;background:#f8fbf3;padding:12px;margin:16px 0}.instance-editor .section-heading{margin-bottom:7px}.instance-editor .field{margin-top:8px}.placement-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 9px}.placement-fields .wide{grid-column:1/-1}.instance-editor .button{margin-top:11px;min-height:34px;font-size:10px}.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-top:20px;margin-bottom:6px}.editor-heading>label{font-size:11px;font-weight:600;color:#59734f}.editor-heading .text-button{font-size:9px}.json-editor{display:block;resize:vertical;width:100%;min-height:285px;max-height:65dvh;border:1px solid #d4dfcf;background:#f7f9f3;color:#44633e;padding:11px;font:11px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;tab-size:2;outline:none;white-space:pre;overflow:auto}.json-editor:focus{border-color:#66a17d;box-shadow:0 0 0 2px #66a17d10}.editor-actions{display:flex;gap:8px;position:sticky;bottom:-17px;margin-top:11px;padding:8px 0 10px;background:#fff;z-index:1}.editor-actions .button{flex:1}.work-content>.fine-print{margin-top:7px}.validation-stats{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.validation-stats span{font-size:11px;line-height:1.7;background:#edf5e5;border-radius:5px;padding:6px 8px;color:#4a754c}.issue-list{display:flex;flex-direction:column;gap:9px;margin:13px 0}.issue{border:1px solid #e7d4c4;background:#fff8ed;border-radius:7px;padding:11px;font-size:11px;line-height:1.8;color:#9c6a49}.issue.warning{border-color:#e7dfbf;background:#fffdee;color:#8a803e}.issue p{overflow-wrap:anywhere}.issue-path{display:block;width:100%;text-align:left;background:transparent;padding:0;color:inherit;font:10px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px;margin-bottom:5px}.issue-code{display:block;font-size:9px;opacity:.7;margin-top:3px}
.run-buttons{display:flex;gap:8px;margin-top:14px}.run-buttons .button{flex:1}.course-progress{margin-top:13px}.course-progress>div:first-child,.score-line{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:#68815c;font-variant-numeric:tabular-nums}.course-progress strong{font-weight:600}.course-progress progress{display:block;width:100%;height:5px;margin:10px 0;border:0;accent-color:var(--teal);background:#e2ebdb;border-radius:4px;overflow:hidden}.course-progress progress::-webkit-progress-bar{background:#e2ebdb}.course-progress progress::-webkit-progress-value{background:var(--teal)}.score-line{font-size:10px;color:#829275}.score-line strong{font-size:16px;color:#3b7d4b;margin-left:5px}.training-guide{margin:18px 0;padding:13px;border:1px solid #e0d7b5;border-left:3px solid #d2a22e;border-radius:8px;background:#fbfbef}.training-guide .section-heading{margin:0}.gold-dot{height:9px;width:9px;border-radius:50%;background:#e8bc44;border:1px solid #b88c28;box-shadow:0 0 0 3px #e8bc4417}.training-guide h3{font-size:14px;line-height:1.7;font-weight:600;color:#4d6340;margin-top:7px;overflow-wrap:anywhere}.training-guide p{font-size:11px;line-height:1.8;color:#7a8561;margin:6px 0 12px;overflow-wrap:anywhere}.training-guide .button{min-height:39px;font-size:11px}.exam-prompt{background:#faf6e8;border:1px solid #e7ddc0;border-radius:7px;font-size:11px;line-height:1.8;color:#8c7d53;padding:12px;margin-top:16px}.result-panel{margin:17px 0;padding:17px 12px;border:1px solid #d6e6ca;border-radius:9px;background:#f2faea;text-align:center;color:#3b7547}.result-panel[data-passed="false"]{background:#fff5e7;border-color:#ead6b8;color:#946d3d}.result-panel>span{font-size:12px}.result-panel>div{margin:8px 0 9px}.result-panel strong{font-size:40px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-1px}.result-panel>div>span{font-size:10px;color:#8e9f7d}.result-panel p{font-size:10px;line-height:1.8;color:#7c9169}.device-status{border-top:1px solid var(--line);padding-top:16px;margin-top:17px}.device-status .section-heading{align-items:flex-start}.device-status .section-heading>span{font-size:9px;line-height:1.6;color:#94a084;text-align:right;max-width:110px}.state-list{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:11px 0}.state-item{padding:7px 8px;background:#f3f7ed;border-radius:5px;min-width:0}.state-item span{display:block;font-size:9px;line-height:1.6;color:#92a080}.state-item strong{display:block;font-size:11px;line-height:1.65;color:#5b7d4d;font-weight:500;overflow-wrap:anywhere}.device-actions{display:flex;flex-wrap:wrap;gap:6px}.device-actions .button{flex:1 1 calc(50% - 6px);font-size:11px;white-space:normal;text-align:center;min-height:39px;padding:8px}.run-footer{display:flex;flex-direction:column;gap:8px;margin-top:19px;padding-top:15px;border-top:1px solid var(--line)}.run-footer .button{font-size:11px}.event-details{margin-top:20px;padding-top:13px;border-top:1px solid var(--line);color:#718765}.event-details summary{font-size:11px;min-height:35px;cursor:pointer;line-height:1.8}.event-details summary span{font-size:10px;color:#96a48a;margin-left:6px}.event-list{list-style:none;margin:5px 0 0;padding:0}.event-entry{position:relative;padding:10px 0 11px 12px;border-bottom:1px solid #e8eee2}.event-entry:before{position:absolute;content:"";left:0;top:17px;height:4px;width:4px;border-radius:50%;background:#71a36c}.event-entry[data-outcome="blocked"]:before{background:#bf8b5c}.event-entry>strong{display:block;font-size:11px;font-weight:500;line-height:1.7;color:#58754d}.event-entry>span{display:block;font-size:10px;line-height:1.8;color:#8b9a7f;margin-top:3px;overflow-wrap:anywhere}.event-entry[data-outcome="blocked"]>span{color:#a47e57}.event-entry details{margin-top:4px}.event-entry summary{min-height:25px;font-size:9px;color:#99a58d;cursor:pointer}.event-diff{font-size:9px;line-height:1.8;white-space:pre-wrap;color:#7d9271;background:#f5f8f0;border-radius:5px;padding:7px;overflow-wrap:anywhere}.footer{height:25px;flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 20px;background:#f6f8f2;border-top:1px solid var(--line);font-size:8px;color:#9ba78e}.notice{position:fixed;z-index:20;top:129px;right:358px;max-width:min(430px,calc(100vw - 30px));padding:11px 16px;border:1px solid #c6ddbc;border-radius:8px;background:#f5fff0;box-shadow:0 6px 25px #31512718;font-size:12px;line-height:1.8;color:#4c7c46;pointer-events:none}.notice[data-kind="error"]{background:#fff5e7;border-color:#e4c8ac;color:#9e6744}.notice[data-kind="info"]{background:#fbfff5;color:#68805a}.mobile-nav{display:none}
.agent-dialog{width:min(560px,calc(100% - 30px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #ceddc6;border-radius:12px;padding:23px;background:#fcfef8;color:var(--ink);box-shadow:0 15px 65px #1b371630}.agent-dialog::backdrop{background:#263d2e66;backdrop-filter:blur(2px)}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.dialog-heading h2{font-size:20px;line-height:1.6;margin-top:4px}.dialog-heading .icon-button{margin:-7px -9px 0 0}.agent-dialog>.intro{margin-bottom:17px}.agent-dialog textarea{resize:vertical;max-height:220px}.agent-dialog details{margin:14px 0}.agent-dialog summary{cursor:pointer;font-size:11px;color:#6f8b5c;min-height:32px;line-height:1.8}.agent-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px}.agent-links a{font-size:10px;line-height:1.8;color:#418a66;text-underline-offset:3px}.agent-dialog>.fine-print{margin-top:12px}#agent-task-output{display:block;width:100%;margin-top:12px;padding:10px;border:1px solid #d2dfc9;color:#55734b;background:#f1f6e9;font-size:11px;line-height:1.7}
@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1700px){.studio{grid-template-columns:270px minmax(0,1fr) 365px}.library-panel{padding:24px 22px}.work-content{padding:23px}.notice{right:385px}}
@media(max-width:1200px){.studio{grid-template-columns:211px minmax(0,1fr) 310px}.library-panel{padding:17px 13px}.work-content{padding:17px 15px}.topbar{padding:0 17px;gap:14px}.brand .prototype-tag{display:none}.project-bar{padding:0 17px;gap:11px}.draft-status{font-size:9px}.sample-picker select{max-width:300px}.notice{right:327px}.scene-top{left:12px;right:12px;top:12px}#scene-title{font-size:11px;max-width:210px}.scene-hint{left:12px;bottom:12px;font-size:8px;gap:6px}.panel-heading h1{font-size:16px}.json-editor{font-size:10px}}
@media(max-width:900px){.brand strong{font-size:13px}.engine-status{font-size:9px}.topbar .button{font-size:10px;padding:7px 8px}.topbar{height:55px;gap:9px}.studio{display:block;position:relative}.library-panel,.work-panel,.scene-panel{height:100%;width:100%}.studio[data-mobile-panel="scene"]>.library-panel,.studio[data-mobile-panel="scene"]>.work-panel,.studio[data-mobile-panel="library"]>.scene-panel,.studio[data-mobile-panel="library"]>.work-panel,.studio[data-mobile-panel="work"]>.scene-panel,.studio[data-mobile-panel="work"]>.library-panel{display:none}.library-panel{padding:20px}.asset-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:11px}.instance-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px}.panel-heading h1{font-size:19px}.asset-card{padding:14px}.asset-card h3{font-size:13px}.asset-card .asset-meta{font-size:10px}.asset-card .asset-add{min-height:40px;font-size:11px}.instance-row strong{font-size:12px}.instance-row small{font-size:10px}.project-bar{height:auto;min-height:62px;padding:8px 13px;gap:7px;flex-wrap:wrap}.sample-picker{flex:1}.sample-picker label{font-size:10px}.sample-picker select{max-width:none;flex:1;width:100%;font-size:11px}.draft-status{font-size:9px}.file-actions{gap:5px}.file-actions .button{min-height:34px;font-size:10px;padding:6px 8px}.file-actions .icon{display:none}.work-tabs{padding-top:6px}.work-tabs button{min-height:43px}.work-content{padding:19px 20px}.json-editor{min-height:270px;font-size:12px}.instance-editor{max-width:600px}.placement-fields{grid-template-columns:1fr 1fr 1fr}.placement-fields .wide{grid-column:auto}.mobile-nav{display:flex;flex:none;height:49px;background:#fbfdf7;border-top:1px solid #d8e4cf;padding:3px max(8px,env(safe-area-inset-right)) 3px max(8px,env(safe-area-inset-left));gap:5px}.mobile-nav button{flex:1;background:transparent;border-radius:6px;font-size:11px;color:#8b9a7d;min-height:40px}.mobile-nav button[aria-pressed="true"]{background:#eaf3e1;color:#35734b}.footer{height:22px;justify-content:center;padding:3px 8px;font-size:7px}.footer>span:first-child{display:none}.scene-hint{left:14px;bottom:14px;font-size:9px}.scene-top{left:14px;right:14px;top:14px}.scene-chips{gap:5px}.scene-top #scene-title{max-width:250px;font-size:12px}.notice{top:auto;bottom:86px;right:15px;left:15px;max-width:none;font-size:11px}.mobile-guide{position:absolute;z-index:4;left:13px;right:13px;bottom:13px;background:#fffdf2f5;border:1px solid #dfd4a8;border-left:3px solid #d2a22e;border-radius:8px;padding:10px 12px;max-height:38%;overflow:auto}.mobile-guide p{font-size:13px;line-height:1.65;color:#526743;margin:3px 0 8px}.mobile-guide>div{display:flex;gap:8px}.mobile-guide .button{flex:1;font-size:11px}.studio.is-training .mobile-guide:not([hidden]){display:block}.studio.is-training .scene-hint{display:none}.work-panel:has(#run-tab[aria-selected="true"]) .work-content{max-width:650px;width:100%;margin:0 auto}.event-list{max-width:650px}.agent-dialog{padding:20px}}
@media(max-width:560px){.topbar{height:55px;padding:0 max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));gap:6px}.brand{font-size:13px;gap:7px}.brand>span:nth-child(2){gap:8px}.brand strong{font-size:12px;padding-left:9px;letter-spacing:0}.brand-mark{width:26px;height:28px;font-size:15px}.engine-status{margin-left:auto;font-size:8px}.engine-status #engine-status{display:none}.topbar .button{font-size:9px;padding:5px;gap:3px;white-space:normal;max-width:90px;line-height:1.6}.project-bar{padding:8px 12px}.sample-picker{flex-basis:100%;gap:8px}.sample-picker select{min-height:36px;font-size:11px}.draft-status{flex:1}.file-actions .button{min-height:30px;padding:4px 7px;font-size:9px}.asset-list{grid-template-columns:1fr 1fr}.asset-card{padding:11px}.asset-cube{height:30px;width:27px}.asset-card-heading{gap:7px}.asset-card h3{font-size:12px}.asset-card .asset-meta{font-size:9px}.library-panel{padding:17px 14px}.instance-list{grid-template-columns:1fr}.work-content{padding:17px 16px}.panel-heading h2{font-size:17px}.json-editor{min-height:280px;font-size:11px}.scene-top #scene-title{max-width:220px}.scene-button{min-height:34px;font-size:9px;padding:6px 8px}.scene-button .icon{width:13px;height:13px}.scene-hint{font-size:8px;gap:6px}.agent-dialog .dialog-heading h2{font-size:18px}.footer{min-height:22px;height:auto;padding-bottom:max(4px,env(safe-area-inset-bottom))}.mobile-nav{height:49px}.run-buttons .button{min-height:44px}.state-list{grid-template-columns:1fr 1fr}}
@media(max-height:540px) and (orientation:landscape){.topbar{height:44px}.project-bar{min-height:44px;height:44px;flex-wrap:nowrap;padding-top:4px;padding-bottom:4px}.sample-picker{flex-basis:auto}.sample-picker label{display:none}.sample-picker select{min-height:33px}.draft-status{display:none}.footer{display:none}.mobile-nav{height:42px;min-height:42px;padding-top:0;padding-bottom:0}.mobile-nav button{min-height:40px;font-size:10px}.scene-top{top:9px}.scene-top #scene-title{display:none}.scene-hint{bottom:8px}.mobile-guide{left:13px;right:auto;bottom:9px;width:280px;max-width:44%;max-height:calc(100% - 62px);padding:8px 10px}.mobile-guide p{font-size:11px;line-height:1.5;margin:3px 0 6px}.mobile-guide .eyebrow{font-size:9px}.mobile-guide .button{font-size:10px}.agent-dialog{max-height:calc(100dvh - 20px);padding:16px}.agent-dialog .intro{font-size:11px}.agent-dialog .field textarea{max-height:80px}}
@media(pointer:coarse){button,.button,.text-button,.mobile-nav button,.work-tabs button,.asset-card .asset-add,.instance-editor .button,.training-guide .button,.device-actions .button,.file-actions .button{min-height:44px}.icon-button{min-width:44px}.field input,.field textarea,.search-label input,.sample-picker select{min-height:44px;font-size:16px}.json-editor{font-size:16px}.instance-row{min-height:48px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.spinner{animation-duration:2s}}
.asset-thumbnail{display:block;flex:none;width:56px;height:56px;object-fit:contain;border-radius:6px;background:#edf2e7}
@media(max-width:900px){.notice{top:var(--notice-top,130px);bottom:auto}}

/* Online authoring keeps server candidates separate from the active lesson. */
#agent-header-badge{font-size:9px;line-height:1.5;padding:2px 5px;border-radius:4px;background:#e4f1db;color:#527747}.agent-workspace>.intro{margin-bottom:14px}.agent-workspace .panel-heading>.text-button{flex:none;font-size:10px}.agent-service-status{display:flex;align-items:center;gap:7px;border:1px solid #e0e8da;background:#f4f8ee;border-radius:7px;padding:8px 9px;font-size:11px;line-height:1.7;color:#79866a}.agent-service-status>span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}.agent-service-status .text-button{font-size:10px;flex:none}.agent-service-status[data-available="true"]{background:#eff8e7;color:#517d4c;border-color:#d4e4c9}.agent-model{display:block;font-size:9px;color:#93a080;line-height:1.7;margin:5px 0 12px;overflow-wrap:anywhere}.agent-request-field{margin-top:16px}.agent-request-field textarea{min-height:133px;max-height:260px;resize:vertical;font-size:12px;line-height:1.8}.agent-request-field textarea:read-only{background:#f5f8f0;color:#718269}.agent-context-option{display:flex;align-items:center;gap:8px;margin:11px 0 5px;font-size:11px;line-height:1.7;color:#617c54;cursor:pointer}.agent-context-option input{width:16px;height:16px;margin:0;flex:none;accent-color:var(--teal)}.agent-context-option:has(input:disabled){cursor:default}.agent-request-actions{display:flex;gap:7px;margin-top:12px}.agent-request-actions .button{flex:1;min-height:40px}.agent-workspace>#agent-input-hint{margin:7px 0 12px}.agent-run-panel{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.agent-run-panel .section-heading h3{font-size:13px;color:#57794b}.agent-run-panel .section-heading .text-button{font-size:9px}.agent-run-panel .intro{font-size:10px;color:#839071}.agent-event-list{list-style:none;padding:0;margin:10px 0 0;max-height:225px;overflow:auto;scrollbar-width:thin;scrollbar-color:#cedcc3 transparent}.agent-event{position:relative;padding:7px 4px 8px 12px;border-left:1px solid #d6e4cc;margin-left:3px}.agent-event:before{position:absolute;content:"";width:5px;height:5px;border-radius:50%;left:-3px;top:13px;background:#8bb07c}.agent-event strong{display:block;font-size:10px;font-weight:600;line-height:1.7;color:#637e53}.agent-event>span{display:block;font-size:10px;line-height:1.8;color:#8a9878;overflow-wrap:anywhere}.agent-event[data-phase="repair"]:before{background:#d0a451}.agent-event[data-phase="failed"]:before{background:#bb8061}.agent-error{font-size:11px;line-height:1.8;background:#fff4e5;border:1px solid #e7d1b7;border-radius:7px;color:#a16d47;padding:10px;margin:12px 0;overflow-wrap:anywhere}.agent-stale-warning{font-size:10px;line-height:1.8;background:#fffbe8;border:1px solid #e9dfb7;border-radius:6px;color:#937b3e;padding:10px;margin:12px 0;overflow-wrap:anywhere}.agent-result{margin-top:18px;padding:13px;border:1px solid #d4e3c7;background:#f5fbee;border-radius:8px}.agent-result[data-valid="false"]{background:#fff9ec;border-color:#e8d9b8}.agent-result h3{font-size:14px;line-height:1.8;font-weight:600;color:#4c7445;margin:4px 0 8px}.agent-result>p{font-size:11px;line-height:1.9;color:#70845c;overflow-wrap:anywhere}.agent-result-checks{display:flex;flex-direction:column;gap:4px;margin:11px 0;font-size:10px;line-height:1.7;color:#4c8050}.agent-result ul{font-size:10px;line-height:1.85;color:#7d8f6a;padding-left:17px;margin:9px 0;overflow-wrap:anywhere}.agent-result details{border-top:1px solid #e0e9d7;margin:10px 0;padding-top:8px}.agent-result summary{font-size:10px;line-height:1.8;color:#7e9369;cursor:pointer;min-height:31px}.agent-result textarea{width:100%;max-height:280px;padding:8px;border:1px solid #d3dfc8;background:#fcfef6;color:#607b51;font:10px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;resize:vertical;white-space:pre;overflow:auto}.agent-result-actions{display:flex;flex-direction:column;gap:7px;margin-top:12px}.agent-result-actions .button{font-size:11px;white-space:normal;min-height:42px}.agent-manual{border-top:1px solid var(--line);padding-top:13px;margin-top:20px}.agent-manual .text-button{font-size:10px}.agent-manual>.fine-print{margin-top:5px}
@media(max-width:560px){.agent-workspace .panel-heading h2{font-size:17px}.agent-workspace .panel-heading>.text-button{font-size:9px}.agent-result{padding:12px}.agent-request-field textarea{min-height:140px}.agent-event-list{max-height:210px}}
@media(pointer:coarse){.agent-request-actions .button,.agent-result-actions .button,.agent-result summary{min-height:44px}.agent-request-field textarea{font-size:16px}.agent-context-option{min-height:40px}.agent-context-option input{width:19px;height:19px}}

/* Human discussion and version choice stay separate from tool progress. */
.agent-conversation{margin-top:15px;padding-top:12px;border-top:1px solid var(--line)}
.agent-conversation>.section-heading{margin-bottom:9px;align-items:center}.agent-conversation h3{font-size:12px;color:#536f48}.agent-conversation>.section-heading .text-button{font-size:10px}
.agent-conversations-field{margin:6px 0 10px}.agent-conversations-field select{width:100%;max-width:100%;min-height:34px;border:1px solid #d6e2cc;border-radius:5px;background:#fbfdf7;color:#56724b;padding:6px 8px;font-size:10px;text-overflow:ellipsis}
.agent-conversation-list{padding:0;margin:9px 0 0;list-style:none;max-height:360px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#cbd9be transparent;overscroll-behavior:contain}
.agent-turn{margin:0 0 15px}.agent-chat-message{padding:10px 11px;border-radius:8px;margin-bottom:8px;min-width:0}.agent-chat-message>strong{font-size:10px;color:#5e7c52}.agent-chat-message>p{font-size:11px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0 0;color:#607653}.teacher-message{margin-left:14px;background:#eaf3e4;border:1px solid #d7e5cd}.assistant-message{margin-right:8px;background:#fafcf6;border:1px solid #e4ebdc}.agent-chat-message>p.agent-turn-failure{color:#9a7047}
.agent-version-card{border:1px solid #dce6d2;border-radius:6px;background:#fff;margin-top:10px;padding:9px}.agent-version-card[data-selected="true"]{border-color:#81a977;background:#f5fbed}.agent-version-heading{display:flex;align-items:center;justify-content:space-between;gap:6px}.agent-version-heading strong{font-size:11px;color:#4d7444}.agent-version-heading>span{font-size:9px;color:#849578}.agent-version-card>p{font-size:10px;line-height:1.8;color:#6c845d;overflow-wrap:anywhere;margin:5px 0 8px}.agent-version-card .button{font-size:10px;white-space:normal;min-height:34px;padding:6px}
.agent-workspace .agent-request-field{margin-top:13px}.agent-workspace .agent-request-field textarea{min-height:110px}.agent-workspace #agent-context-note{padding:8px 9px;background:#f4f8ee;border-radius:5px;color:#647d53;line-height:1.8}.agent-workspace #agent-progress-details>summary{font-size:10px;color:#839071;cursor:pointer;min-height:28px;line-height:1.8}.agent-run-panel{margin-top:12px;padding-top:12px}.agent-run-panel .section-heading{margin-bottom:5px}.agent-conversation #agent-history-older{font-size:10px;width:100%;text-align:center}
@media(max-width:900px){.agent-conversation-list{max-height:min(380px,44dvh)}.agent-conversation{max-width:650px}.agent-chat-message>p{font-size:12px}}
@media(pointer:coarse){.agent-version-card .button,.agent-conversations-field select,.agent-conversation .text-button{min-height:44px}.agent-conversations-field select{font-size:16px}.agent-chat-message>p{font-size:13px}}

.scene-hint{max-width:calc(100% - 32px);flex-wrap:wrap}.scene-hint .touch-controls{display:none}
@media(pointer:coarse){.scene-hint .mouse-controls{display:none}.scene-hint .touch-controls{display:inline}}

/* Account actions share the header without reducing the scene height. */
.account-menu{display:flex;align-items:center;gap:10px;flex:none;border-left:1px solid var(--line);padding-left:14px}.account-menu[hidden]{display:none}.account-identity{display:flex;align-items:center;gap:6px;min-width:0;font-size:11px;color:#52684e}.account-identity #account-name{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-role{font-size:9px;padding:3px 5px;background:#eaf2e5;border-radius:4px;color:#557c4c;white-space:nowrap}.account-link{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:5px 2px;background:transparent;color:#4b735a;font-size:11px;text-decoration:none;white-space:nowrap}.account-link:hover{color:#087f69;text-decoration:underline}.account-link:focus-visible{outline:2px solid #35a086;outline-offset:3px;border-radius:3px}.publish-identity-note{font-size:12px;line-height:1.7;color:#607563;align-self:center;margin:0}
@media(max-width:1200px){.account-menu{gap:8px;padding-left:10px}.account-identity #account-name{max-width:70px}.topbar{gap:12px}}
@media(max-width:900px){.account-identity #account-name{display:none}.account-menu{gap:7px;padding-left:8px}.account-link{font-size:10px}.topbar .engine-status{display:none}.topbar #agent-task-open{margin-left:auto}}
@media(max-width:560px){.topbar{gap:6px}.brand strong{display:none}.account-menu{margin-left:auto;gap:8px;padding-left:8px}.account-role{font-size:9px}.account-link{min-height:44px;font-size:10px}.topbar #agent-task-open{font-size:10px;max-width:70px}.topbar .brand{font-size:12px}.topbar .brand-mark{width:24px}}
@media(pointer:coarse){.account-link{min-height:44px;min-width:32px}}
