:root{--color-bg-app:#080909;--color-bg-brand:#202231;--color-surface-1:#0a0d0de6;--color-surface-1-soft:#0a0d0db8;--color-surface-2:#ffffff08;--color-surface-2-soft:#ffffff04;--color-surface-3:#373b52;--color-text-primary:#f3f3ee;--color-text-secondary:#a9b4ae;--color-text-muted:#8f9792;--color-accent-primary:#d2ff57;--color-accent-primary-strong:#b3ff00;--color-accent-primary-soft:#d2ff5714;--color-accent-secondary:#8051ff;--color-border-subtle:#ffffff14;--color-danger:#ff8f8f;--color-success:#d4f8b5;--radius-panel:6px;--radius-control:4px;--radius-compact:2px;color:var(--color-text-primary);background:radial-gradient(circle at top left, var(--color-accent-primary-soft), transparent 24%), radial-gradient(circle at top right, #8051ff1a, transparent 20%), var(--color-bg-app);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:JetBrains Mono,SFMono-Regular,SF Mono,Consolas,Liberation Mono,Menlo,monospace;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100vh;margin:0}body{min-width:320px;overflow:hidden}button{font:inherit;cursor:pointer}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{flex-direction:column;height:100vh;display:flex;overflow:hidden}.login-shell{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.home-shell{flex-direction:column;height:100vh;padding:1.5rem;display:flex;overflow:hidden}.home-topbar{border:1px solid var(--color-border-subtle);border-radius:var(--radius-panel);background:var(--color-surface-1);flex:none;justify-content:space-between;align-items:center;gap:1rem;width:min(100%,78rem);margin:0 auto 1rem;padding:.95rem 1.1rem;display:flex;box-shadow:0 14px 40px #00000038}.home-topbar-brand{gap:.25rem;display:grid}.home-topbar-title{font-size:1.08rem;font-weight:650}.home-topbar-meta{color:color-mix(in srgb, var(--color-text-secondary) 74%, transparent);align-items:center;gap:.75rem;font-size:.8rem;display:flex}.home-topbar-user,.topbar-user-chip{gap:.1rem;display:grid}.home-topbar-user strong,.topbar-user-chip strong{color:var(--color-text-primary);font-size:.78rem;font-weight:600}.home-topbar-user span,.topbar-user-chip span{color:color-mix(in srgb, var(--color-text-muted) 72%, transparent);font-size:.72rem}.home-workspace{flex:1;grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:minmax(20rem,30rem) minmax(0,1fr);gap:1.25rem;width:min(100%,78rem);min-height:0;margin:0 auto;display:grid;overflow:hidden}.home-sidebar{grid-row:1/span 2;min-width:0;min-height:0;display:flex}.home-card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-panel);background:color-mix(in srgb, var(--color-surface-1) 82%, transparent);flex-direction:column;min-height:0;padding:1.35rem;display:flex;overflow:hidden;box-shadow:0 10px 28px #0000002e}.home-card h2{margin:0 0 .45rem;font-size:.98rem;font-weight:620}.home-card p{color:color-mix(in srgb, var(--color-text-secondary) 64%, transparent);margin:0;font-size:.8rem}.home-form{flex:1;gap:.85rem;min-height:0;margin-top:1.4rem;padding-right:.25rem;display:grid;overflow:auto}.home-card-header{gap:.28rem;display:grid}.home-template-help{color:color-mix(in srgb, var(--color-text-muted) 72%, transparent);font-size:.76rem}.home-template-picker{gap:.85rem;display:grid}.home-template-picker-head{gap:.35rem;display:grid}.home-template-grid{gap:.75rem;display:grid}.home-template-family{gap:.7rem;display:grid}.home-family-tabs{flex-wrap:wrap;gap:.5rem;display:flex}.home-family-tab{border-radius:var(--radius-control);color:color-mix(in srgb, var(--color-text-secondary) 82%, transparent);background:var(--color-surface-2);border:1px solid #ffffff1a;padding:.4rem .7rem;font-size:.78rem}.home-family-tab.active{color:#0c1005;border-color:color-mix(in srgb, var(--color-accent-primary) 50%, transparent);background:linear-gradient(135deg, var(--color-accent-primary), var(--color-accent-primary-strong))}.home-template-family-head{gap:.2rem;display:grid}.home-template-family-title{color:var(--color-text-primary);font-size:.84rem;font-weight:620}.home-template-family-description{color:color-mix(in srgb, var(--color-text-muted) 72%, transparent);font-size:.76rem}.home-template-card{border-radius:var(--radius-panel);width:100%;color:var(--color-text-primary);background:color-mix(in srgb, var(--color-surface-2) 90%, transparent);text-align:left;border:1px solid #ffffff14;gap:.55rem;padding:.95rem 1rem;transition:border-color .12s,transform .12s,background .12s;display:grid}.home-template-card:hover{border-color:color-mix(in srgb, var(--color-text-secondary) 18%, transparent);transform:translateY(-1px)}.home-template-card.active{border-color:color-mix(in srgb, var(--color-accent-primary) 56%, transparent);background:linear-gradient(180deg, var(--color-accent-primary-soft), #ffffff05), var(--color-surface-2);box-shadow:0 0 0 1px color-mix(in srgb, var(--color-accent-primary) 12%, transparent)}.home-template-card-top{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.home-template-card-title{font-size:.88rem;font-weight:620}.home-template-card-key{color:color-mix(in srgb, var(--color-text-muted) 72%, transparent);font-size:.7rem}.home-template-card-description{color:color-mix(in srgb, var(--color-text-secondary) 72%, transparent);font-size:.78rem}.home-template-card-meta,.home-template-preview-meta{color:color-mix(in srgb, var(--color-text-secondary) 82%, transparent);flex-wrap:wrap;gap:.5rem;font-size:.76rem;display:flex}.home-template-card-meta span,.home-template-preview-meta span{border-radius:var(--radius-compact);background:#ffffff06;border:1px solid #ffffff14;padding:.2rem .45rem}.home-template-preview{border:1px solid var(--color-border-subtle);border-radius:var(--radius-panel);background:color-mix(in srgb, var(--color-surface-2) 72%, transparent);gap:.75rem;padding:1rem;display:grid}.home-template-preview-head{gap:.35rem;display:grid}.home-template-preview-head h3{margin:0;font-size:.95rem;font-weight:620}.home-template-preview-head p{color:color-mix(in srgb, var(--color-text-secondary) 70%, transparent);font-size:.78rem}.home-template-preview-label{color:color-mix(in srgb, var(--color-text-muted) 70%, transparent);font-size:.7rem}.home-template-preview-code{border-radius:var(--radius-control);color:color-mix(in srgb, var(--color-text-primary) 92%, transparent);background:#ffffff06;margin:0;padding:.95rem 1rem;font-size:.82rem;line-height:1.6;overflow-x:auto}.home-room-panel{min-width:0;min-height:0;overflow:hidden}.home-admin-panel{min-height:0;overflow:hidden}.home-admin-body{flex:1;gap:1rem;min-height:0;margin-top:1.2rem;padding-right:.25rem;display:grid;overflow:auto}.home-empty-state{border-radius:var(--radius-panel);color:color-mix(in srgb, var(--color-text-secondary) 82%, transparent);background:var(--color-surface-2);border:1px dashed #ffffff24;padding:1rem 1.05rem}.home-room-panel-body{flex:1;gap:1rem;min-height:0;margin-top:1.2rem;display:grid;overflow:hidden}.home-room-toolbar{border:1px solid var(--color-border-subtle);border-radius:var(--radius-panel);background:color-mix(in srgb, var(--color-surface-2) 78%, transparent);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.home-room-toolbar-meta{color:color-mix(in srgb, var(--color-text-secondary) 76%, transparent);font-size:.76rem}.home-room-toolbar-actions{gap:.65rem;display:flex}.home-admin-toolbar{border-radius:var(--radius-panel);background:color-mix(in srgb, var(--color-surface-2) 78%, transparent);border:1px solid #ffffff14;gap:.85rem;margin-top:1.2rem;padding:.9rem 1rem;display:grid}.home-admin-invite-form{flex-wrap:wrap;gap:.65rem;display:flex}.home-admin-invite-form .login-input{flex:16rem;min-width:0}.home-admin-message{border-radius:var(--radius-control);color:var(--color-success);background:#b3ff000f;border:1px solid #b3ff002e;margin-top:.75rem;padding:.75rem .9rem;font-size:.82rem}.home-admin-invite-result{border-radius:var(--radius-panel);background:color-mix(in srgb, var(--color-surface-2) 78%, transparent);border:1px solid #ffffff14;gap:.45rem;margin-top:.75rem;padding:.85rem 1rem;display:grid}.home-admin-invite-row{gap:.35rem;display:grid}.home-admin-label{color:color-mix(in srgb, var(--color-text-muted) 68%, transparent);font-size:.7rem}.home-admin-invite-row code{border-radius:var(--radius-control);color:color-mix(in srgb, var(--color-text-primary) 92%, transparent);background:#0709097a;padding:.75rem .85rem;font-size:.8rem;display:block;overflow-x:auto}.home-admin-invite-meta{color:color-mix(in srgb, var(--color-text-muted) 80%, transparent);flex-wrap:wrap;gap:.65rem;font-size:.8rem;display:flex}.home-room-list{align-content:start;gap:.85rem;min-height:0;padding-right:.25rem;display:grid;overflow:auto}.home-room-row{border:1px solid var(--color-border-subtle);border-radius:var(--radius-panel);background:color-mix(in srgb, var(--color-surface-2) 78%, transparent);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem 1.05rem;display:grid}.home-room-select{place-items:center;display:grid}.home-room-select input{width:1rem;height:1rem}.home-room-row-main{gap:.35rem;min-width:0;display:grid}.home-room-row-title{color:var(--color-text-primary);font-size:.92rem;font-weight:620}.home-room-row-meta,.home-room-row-dates{color:color-mix(in srgb, var(--color-text-secondary) 82%, transparent);flex-wrap:wrap;gap:.65rem;font-size:.76rem;display:flex}.home-room-row-actions{gap:.65rem;display:flex}.home-admin-reset-form{flex-wrap:wrap;gap:.65rem;margin-top:.55rem;display:flex}.home-admin-reset-form .login-input{flex:14rem;min-width:0}.ghost-button.danger{color:color-mix(in srgb, var(--color-danger) 82%, transparent);border-color:color-mix(in srgb, var(--color-danger) 22%, transparent)}.ghost-button.danger:hover{background:color-mix(in srgb, var(--color-danger) 8%, transparent);border-color:color-mix(in srgb, var(--color-danger) 38%, transparent)}.login-card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-panel);background:var(--color-surface-1);width:min(100%,28rem);padding:1.35rem;box-shadow:0 14px 40px #0000003d}.login-brand h1{margin:0 0 .45rem;font-size:1.75rem}.login-brand p{color:color-mix(in srgb, var(--color-text-secondary) 72%, transparent);margin:0;font-size:.84rem}.login-badge{border-radius:var(--radius-compact);background:color-mix(in srgb, var(--color-surface-2) 82%, transparent);color:color-mix(in srgb, var(--color-text-secondary) 78%, transparent);margin-bottom:.8rem;padding:.18rem .5rem;font-size:.72rem;display:inline-flex}.login-form{gap:.85rem;margin-top:1.4rem;display:grid}.auth-mode-tabs{gap:.5rem;margin-top:1.15rem;display:flex}.auth-mode-tab{border:1px solid var(--color-border-subtle);border-radius:var(--radius-control);color:color-mix(in srgb, var(--color-text-secondary) 84%, transparent);background:color-mix(in srgb, var(--color-surface-2) 72%, transparent);flex:1 1 0;padding:.55rem .8rem}.auth-mode-tab.active{color:#0c1005;border-color:color-mix(in srgb, var(--color-accent-primary) 48%, transparent);background:linear-gradient(135deg, var(--color-accent-primary), var(--color-accent-primary-strong));font-weight:700}.login-label{color:color-mix(in srgb, var(--color-text-secondary) 84%, transparent);font-size:.78rem}.login-input{border:1px solid var(--color-border-subtle);border-radius:var(--radius-control);width:100%;color:var(--color-text-primary);background:color-mix(in srgb, var(--color-surface-2) 82%, transparent);outline:none;padding:.9rem 1rem}.login-input:focus{border-color:color-mix(in srgb, var(--color-accent-primary) 42%, transparent)}.login-button{border-radius:var(--radius-control);color:#0c1005;background:linear-gradient(135deg, var(--color-accent-primary), var(--color-accent-primary-strong));border:0;padding:.85rem 1rem;font-weight:720}.login-button:disabled{opacity:.6;cursor:default}.login-error{color:var(--color-danger);font-size:.82rem}.student-invite-meta{color:color-mix(in srgb, var(--color-text-muted) 78%, transparent);margin-top:1rem;font-size:.74rem}.home-section-title{color:color-mix(in srgb, var(--color-text-secondary) 84%, transparent);font-size:.76rem;font-weight:600}.topbar{border-bottom:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-surface-1) 90%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);flex:none;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:.85rem 1.25rem;display:grid}.topbar-main{align-items:center;gap:.85rem;min-width:0;display:flex}.brand{align-items:center;gap:.65rem;display:flex}.logo{font-size:1.05rem;font-weight:720}.topbar-room-meta{gap:.1rem;min-width:0;display:grid}.topbar-room-title{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:700;overflow:hidden}.topbar-room-subtitle{color:var(--color-text-muted);font-size:.76rem}.session-box{border:1px solid var(--color-border-subtle);border-radius:var(--radius-control);background:color-mix(in srgb, var(--color-surface-2) 72%, transparent);min-width:0;color:color-mix(in srgb, var(--color-text-secondary) 80%, transparent);justify-content:center;align-items:center;gap:.5rem;padding:.5rem .8rem;font-size:.76rem;display:flex}.examples-bar{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.ghost-button,.example-button,.tab-button{border:1px solid var(--color-border-subtle);border-radius:var(--radius-control);color:color-mix(in srgb, var(--color-text-primary) 72%, transparent);background:var(--color-surface-2-soft);opacity:.9;padding:.45rem .8rem;transition:border-color .14s,transform .14s,background .14s,opacity .14s}.ghost-button:hover,.example-button:hover,.tab-button:hover{border-color:color-mix(in srgb, var(--color-text-secondary) 22%, transparent);background:color-mix(in srgb, var(--color-surface-2) 90%, transparent);opacity:1}.ghost-button.is-active,.example-button.is-active{color:#0c1005;border-color:color-mix(in srgb, var(--color-accent-primary) 52%, transparent);background:linear-gradient(135deg, var(--color-accent-primary), var(--color-accent-primary-strong));opacity:1}.ghost-button.danger-soft{color:color-mix(in srgb, var(--color-danger) 82%, transparent);border-color:color-mix(in srgb, var(--color-danger) 18%, transparent)}.run-button{border-radius:var(--radius-control);color:#0c1005;background:linear-gradient(135deg, var(--color-accent-primary), var(--color-accent-primary-strong));border:0;padding:.5rem 1rem;font-weight:800}.run-button:disabled{opacity:.6;cursor:progress}.room-layout{flex:1;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);min-height:0;display:grid;overflow:hidden}.editor-panel,.output-panel{flex-direction:column;min-height:0;display:flex;overflow:hidden}.editor-panel{border-right:1px solid var(--color-border-subtle)}.panel-header,.tabs-row,.side-panel-tabs{background:color-mix(in srgb, var(--color-surface-1) 88%, transparent);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.file-info,.panel-actions{align-items:center;gap:.75rem;display:flex}.panel-actions{flex-wrap:wrap;justify-content:flex-end;width:100%}.panel-action-group{align-items:center;gap:.65rem;display:flex}.panel-action-group-execution{border-left:1px solid #ffffff14;margin-left:auto;padding-left:1rem}.mode-switch{border:1px solid var(--color-border-subtle);border-radius:var(--radius-control);background:color-mix(in srgb, var(--color-surface-2) 76%, transparent);padding:.2rem;display:inline-flex}.mode-switch-button{border-radius:calc(var(--radius-control) - 1px);color:color-mix(in srgb, var(--color-text-secondary) 84%, transparent);background:0 0;border:0;padding:.4rem .75rem}.mode-switch-button.is-active{color:#0c1005;background:linear-gradient(135deg, var(--color-accent-primary), var(--color-accent-primary-strong))}.file-info{min-width:0;color:color-mix(in srgb, var(--color-text-primary) 78%, transparent);font-size:.8rem}.file-dot{background:color-mix(in srgb, var(--color-text-muted) 46%, transparent);border-radius:50%;width:.6rem;height:.6rem}.editor-wrap,.output-content{flex:1;min-height:0}.editor-wrap{isolation:isolate;position:relative}.editor-wrap.is-annotating{padding-top:3rem;box-shadow:inset 0 0 0 1px #d2ff572e}.editor-mode-bar{border-bottom:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-surface-2) 74%, transparent);justify-content:space-between;align-items:center;gap:1rem;padding:.45rem 1rem;display:flex}.editor-mode-bar.is-annotating{background:linear-gradient(180deg, #d2ff5714, #ffffff05), color-mix(in srgb, var(--color-surface-2) 82%, transparent)}.editor-mode-copy{align-items:center;display:flex}.editor-mode-title{color:var(--color-text-primary);font-size:.78rem;font-weight:700}.editor-access-chip{border:1px solid var(--color-border-subtle);border-radius:var(--radius-control);max-width:min(34rem,100%);min-height:2.1rem;color:color-mix(in srgb, var(--color-text-secondary) 82%, transparent);background:color-mix(in srgb, var(--color-surface-2) 88%, transparent);align-items:center;padding:.45rem .75rem;font-size:.74rem;line-height:1.2;display:inline-flex}.editor-access-chip.is-editable,.editor-access-chip.is-readonly{color:color-mix(in srgb, var(--color-text-secondary) 82%, transparent);background:color-mix(in srgb, var(--color-surface-2) 88%, transparent)}.editor-readonly-banner{border-bottom:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-surface-2) 78%, transparent);gap:.22rem;padding:.7rem 1rem;display:grid}.editor-readonly-banner-title{color:color-mix(in srgb, var(--color-text-primary) 84%, transparent);font-size:.78rem;font-weight:600}.editor-readonly-banner-copy{color:color-mix(in srgb, var(--color-text-muted) 74%, transparent);font-size:.74rem;line-height:1.4}.output-panel{background:linear-gradient(180deg, color-mix(in srgb, var(--color-surface-1) 90%, transparent), color-mix(in srgb, var(--color-bg-app) 96%, transparent))}.side-panel-tabs{flex-wrap:wrap;justify-content:flex-start;gap:.25rem}.side-panel-body{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.side-panel-heading{border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-primary);background:color-mix(in srgb, var(--color-surface-2) 78%, transparent);padding:.8rem 1rem .55rem;font-size:.82rem;font-weight:700}.task-card{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2-soft);flex:none;padding:.85rem 1rem}.task-title{color:var(--color-text-primary);margin-bottom:.35rem;font-size:.9rem;font-weight:600}.task-copy{color:color-mix(in srgb, var(--color-text-secondary) 72%, transparent);font-size:.78rem}.task-card-standalone,.participant-card-standalone,.teacher-tools-card-standalone{flex:1;min-height:0}.participant-card{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2-soft);flex-direction:column;flex:1;gap:.75rem;min-height:0;padding:.85rem 1rem;display:flex}.participant-list{gap:.6rem;min-height:0;padding-right:.2rem;display:grid;overflow:auto}.participant-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.participant-row-main{align-items:center;gap:.55rem;min-width:0;display:flex}.participant-name{color:var(--color-text-primary);word-break:break-word;font-size:.84rem}.participant-meta{gap:.1rem;display:grid}.participant-role-label{color:color-mix(in srgb, var(--color-text-muted) 72%, transparent);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem}.participant-row.is-active-editor{border-radius:var(--radius-control);background:#d2ff570d;border:1px solid #d2ff572e;padding:.4rem .45rem}.participant-actions{opacity:0;pointer-events:none;flex-wrap:wrap;justify-content:flex-end;gap:.45rem;transition:opacity .14s;display:flex}.participant-row:hover .participant-actions,.participant-row:focus-within .participant-actions,.participant-actions.always-visible{opacity:1;pointer-events:auto}.participant-status-dot{background:color-mix(in srgb, var(--color-text-muted) 28%, transparent);border-radius:50%;flex:none;width:.5rem;height:.5rem}.participant-status-dot.teacher,.participant-status-dot.active{background:color-mix(in srgb, var(--color-text-primary) 42%, transparent)}.participant-status-dot.readonly{background:color-mix(in srgb, var(--color-text-muted) 20%, transparent)}.teacher-tools-card{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2-soft);flex:none;gap:.85rem;padding:.85rem 1rem;display:grid}.teacher-tools-actions{flex-wrap:wrap;gap:.6rem;display:flex}.teacher-panel-section{gap:.7rem;display:grid}.teacher-panel-title{color:color-mix(in srgb, var(--color-text-muted) 78%, transparent);letter-spacing:.04em;text-transform:uppercase;font-size:.7rem;font-weight:700}.code-editor,.output-pre{width:100%;height:100%;color:var(--color-text-primary);background:linear-gradient(#101212f2,#080a0afa);border:0;margin:0}.code-editor{overflow:hidden}.annotation-toolbar{z-index:5;border-bottom:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-surface-1) 92%, transparent);flex-wrap:wrap;align-items:center;gap:.6rem;min-height:3rem;padding:.35rem .75rem;display:flex;position:absolute;top:0;left:0;right:0}.annotation-toolbar-group{align-items:center;gap:.5rem;display:flex}.annotation-toolbar-group-actions{margin-left:auto}.annotation-toolbar-group-actions .ghost-button{opacity:.72}.annotation-tool-group,.annotation-color-group{flex-wrap:wrap;gap:.45rem;display:flex}.annotation-tool-button{text-transform:capitalize}.annotation-swatch{background:var(--annotation-swatch);border:1px solid #ffffff1f;border-radius:999px;width:1.7rem;height:1.7rem;padding:0;box-shadow:inset 0 0 0 1px #08090952}.annotation-swatch.is-active{outline:2px solid color-mix(in srgb, var(--color-accent-primary) 62%, transparent);outline-offset:1px}.annotation-overlay-shell{z-index:4;pointer-events:none;position:absolute;inset:3rem 0 0;overflow:hidden}.annotation-overlay-shell.is-active{pointer-events:auto;cursor:crosshair}.annotation-overlay-viewport{width:100%;height:100%;overflow:hidden}.annotation-overlay{display:block}.output-content.is-pulsing{animation:.72s ease-out output-pulse-highlight;box-shadow:inset 0 0 0 1px #d2ff5738}@keyframes output-pulse-highlight{0%{background:#d2ff571f}to{background:0 0}}.participants-summary-card{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2-soft);gap:.2rem;padding:.85rem 1rem;display:grid}.participants-summary-label{color:color-mix(in srgb, var(--color-text-muted) 74%, transparent);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem}.output-pre{white-space:pre-wrap;word-break:break-word;padding:1rem;overflow:auto}.output-pre.success{color:var(--color-success)}.output-pre.error{color:var(--color-danger)}.tab-button{align-items:center;gap:.5rem;display:inline-flex}.side-panel-tabs .tab-button,.nested-tabs-row .tab-button{opacity:.76;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding-left:.35rem;padding-right:.35rem}.tab-button.active{color:var(--color-text-primary);opacity:1;background:0 0;border-color:#d2ff5794}.turtle-placeholder{place-items:center;height:100%;padding:1rem;display:grid}.turtle-stage{height:100%;padding:1rem}.turtle-svg{border-radius:var(--radius-panel);background:linear-gradient(#101212f2,#080a0afa);width:100%;height:100%;box-shadow:inset 0 0 0 1px #ffffff0f}.turtle-card{border:1px dashed color-mix(in srgb, var(--color-accent-primary) 32%, transparent);border-radius:var(--radius-panel);background:color-mix(in srgb, var(--color-accent-primary-soft) 72%, transparent);width:min(100%,420px);color:color-mix(in srgb, var(--color-text-primary) 86%, transparent);text-align:center;padding:1.5rem}.turtle-icon{border-radius:var(--radius-control);color:#0c1005;background:linear-gradient(135deg, var(--color-accent-primary), var(--color-accent-primary-strong));place-items:center;width:3rem;height:3rem;margin-bottom:.85rem;font-weight:720;display:inline-grid}.statusbar{border-top:1px solid var(--color-border-subtle);background:color-mix(in srgb, var(--color-surface-1) 84%, transparent);color:color-mix(in srgb, var(--color-text-muted) 72%, transparent);justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1rem;font-size:.72rem;display:flex}.toast{border-radius:var(--radius-control);color:#0c1005;background:var(--color-accent-primary-strong);opacity:0;pointer-events:none;padding:.65rem .9rem;font-size:.82rem;font-weight:700;transition:opacity .14s;position:fixed;top:1rem;left:50%;transform:translate(-50%)}.toast.visible{opacity:1}@media (width<=980px){body{overflow:auto}.home-topbar{flex-direction:column;align-items:flex-start}.home-topbar-meta{justify-content:space-between;width:100%}.home-workspace{grid-template-rows:auto;grid-template-columns:1fr;overflow:visible}.home-shell,.app-shell{height:auto;min-height:100vh;overflow:visible}.home-sidebar{grid-row:auto}.topbar{grid-template-columns:1fr}.topbar-main{width:100%}.session-box,.examples-bar{justify-content:flex-start}.room-layout{grid-template-columns:1fr;overflow:visible}.editor-panel{border-right:0;border-bottom:1px solid var(--color-border-subtle);min-height:50vh}.home-card,.home-room-panel,.home-admin-panel,.home-room-panel-body,.home-room-list,.home-form,.participant-list{overflow:visible}.statusbar{flex-direction:column;align-items:flex-start}}@media (width<=640px){.home-template-card-top,.home-room-toolbar{flex-direction:column;align-items:flex-start}.home-room-toolbar-actions{flex-wrap:wrap;width:100%}.home-topbar-meta .ghost-button{width:auto}.home-room-row{grid-template-columns:auto 1fr}.home-room-row-actions{flex-direction:column;width:100%}.session-box{border-radius:var(--radius-control);flex-wrap:wrap}.teacher-tools-actions{width:100%}.panel-header,.tabs-row{flex-direction:column;align-items:flex-start}.panel-actions,.ghost-button,.run-button{width:100%}}
