.studio-page{display:flex;flex-direction:column;min-height:100vh;background:var(--theme-elevation-0)}.studio-message{padding:32px;color:var(--theme-elevation-500);font-size:14px;text-align:center}.studio-message-error{color:var(--theme-error-500)}.studio-launcher-button{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;border:1px solid var(--theme-success-500);border-radius:4px;background:var(--theme-success-500);color:var(--theme-base-0);text-decoration:none}.studio-launcher-button:hover{background:var(--theme-success-600);border-color:var(--theme-success-600)}.studio-toolbar{position:sticky;top:0;z-index:20;justify-content:space-between;padding:12px 24px;background:var(--theme-elevation-0);border-bottom:1px solid var(--theme-elevation-150)}.studio-toolbar,.studio-toolbar-left{display:flex;align-items:center;gap:16px}.studio-toolbar-left{min-width:0}.studio-toolbar-back{color:var(--theme-elevation-600);text-decoration:none;font-size:13px;padding:4px 8px;border-radius:4px}.studio-toolbar-back:hover{background:var(--theme-elevation-100)}.studio-toolbar-title{display:flex;flex-direction:column;gap:2px;min-width:0}.studio-toolbar-eyebrow{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--theme-elevation-500)}.studio-toolbar-lesson{font-size:15px;font-weight:600;color:var(--theme-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-toolbar-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.studio-toolbar-status{font-size:12px;color:var(--theme-elevation-500)}.studio-toolbar-errors{font-size:12px;color:var(--theme-error-500);cursor:help}.studio-toolbar .editor-save-button{padding:8px 16px;font-weight:600}.studio-toolbar .editor-save-button:disabled{background:var(--theme-elevation-100);border-color:var(--theme-elevation-200);color:var(--theme-elevation-500);cursor:not-allowed}.studio-view-toggle{display:inline-flex;border:1px solid var(--theme-elevation-200);border-radius:6px;overflow:hidden;background:var(--theme-elevation-50)}.studio-view-toggle-btn{padding:6px 12px;font-size:12px;font-weight:500;color:var(--theme-elevation-600);background:transparent;border:none;cursor:pointer;transition:background .12s,color .12s}.studio-view-toggle-btn:hover{background:var(--theme-elevation-100);color:var(--theme-text)}.studio-view-toggle-btn--active{color:var(--theme-text);box-shadow:inset 0 -2px 0 var(--theme-success-500)}.studio-view-toggle-btn--active,.studio-view-toggle-btn--active:hover{background:var(--theme-elevation-0)}.studio-content{flex:1;padding:32px 48px 96px;max-width:860px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:0}.studio-empty{padding:12px 0;color:var(--theme-elevation-500);font-size:14px;font-style:italic}.studio-empty-big{padding:48px 0;font-size:15px;text-align:center}.studio-exercise-card{padding:32px 0 8px;border:none;border-radius:0;background:transparent}.studio-exercise-card:first-child{padding-top:8px}.studio-exercise-header{display:flex;align-items:baseline;gap:12px;padding:0 0 4px;background:transparent;border-bottom:1px solid var(--theme-elevation-150);margin-bottom:16px}.studio-exercise-number{display:inline;width:auto;height:auto;padding:0;border-radius:0;background:transparent;color:var(--theme-elevation-500);font-size:20px;font-weight:400;font-variant-numeric:tabular-nums}.studio-exercise-title{flex:1;margin:0;font-size:22px;font-weight:700;color:var(--theme-text);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-exercise-openlink{font-size:12px;color:var(--theme-elevation-500);text-decoration:none;padding:2px 6px;border-radius:4px;align-self:center}.studio-exercise-openlink:hover{background:var(--theme-elevation-100);color:var(--theme-text)}.studio-exercise-body{display:flex;flex-direction:column}.studio-section{padding:16px 0 8px;border:none}.studio-section-header{display:flex;align-items:baseline;gap:8px;padding:0 0 4px;background:transparent}.studio-section-title{font-size:15px;font-weight:600;color:var(--theme-elevation-700);font-style:normal;letter-spacing:.01em}.studio-dirty-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--theme-warning-500);margin-left:2px}.studio-section-blocks{padding:0;display:flex;flex-direction:column;gap:4px}.studio-section-blocks .block-card{border:none;border-radius:0;background:transparent;overflow:visible;transition:none}.studio-section-blocks .block-card:hover{border-color:transparent}.studio-section-blocks .block-card-header{display:none}.studio-section-blocks .block-card-content{padding:0}.studio-section-blocks .inline-rich-text-editor{border:none;border-radius:0;background:transparent}.studio-section-blocks .inline-rich-text-toolbar{border-bottom:none;background:transparent;padding:2px 0;opacity:0;transition:opacity .15s}.studio-section-blocks .inline-rich-text-editor:focus-within .inline-rich-text-toolbar,.studio-section-blocks .inline-rich-text-editor:hover .inline-rich-text-toolbar{opacity:1}.studio-section-blocks .inline-rich-text-wysiwyg{padding:6px 2px;font-family:inherit;font-size:15px;line-height:1.6;color:var(--theme-text);background:transparent;border:none}.studio-section-blocks .inline-rich-text-wysiwyg:focus{outline:none;background:var(--theme-elevation-50)}.studio-section-blocks .question-block-wrapper{padding:8px 0 8px 14px;border-left:2px solid var(--theme-elevation-150);margin:4px 0}.studio-section-blocks .question-block-wrapper:focus-within{border-left-color:var(--theme-success-500)}.studio-section-blocks .mcq-option-content .inline-rich-text-wysiwyg{font-size:14px;padding:2px 4px}.studio-page--document .studio-content{max-width:780px;padding-top:40px;padding-bottom:120px;font-size:16px;line-height:1.7}.studio-page--document .studio-exercise-title{font-size:26px}.studio-page--document .studio-section-title{font-size:17px;color:var(--theme-elevation-800)}.studio-page--document .studio-section-blocks{gap:12px}.studio-doc-block{position:relative;padding:6px 10px;border-radius:4px;cursor:text;transition:background .12s,box-shadow .12s}.studio-doc-block:hover{background:var(--theme-elevation-50);box-shadow:inset 0 0 0 1px var(--theme-elevation-150)}.studio-doc-block:focus-visible{outline:none;background:var(--theme-elevation-50);box-shadow:inset 0 0 0 2px var(--theme-success-500)}.studio-doc-block--editing{background:var(--theme-elevation-50);box-shadow:inset 0 0 0 2px var(--theme-success-500);cursor:default;padding:12px 14px}.studio-doc-block-editing-toolbar{display:flex;justify-content:flex-end;margin-bottom:6px}.studio-doc-done-btn{padding:4px 10px;font-size:12px;font-weight:500;color:var(--theme-base-0);background:var(--theme-success-500);border:none;border-radius:4px;cursor:pointer}.studio-doc-done-btn:hover{background:var(--theme-success-600)}.studio-doc-placeholder{color:var(--theme-elevation-400);font-style:italic}.studio-doc-unsupported{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border:1px dashed var(--theme-elevation-200);border-radius:4px;background:var(--theme-elevation-50);color:var(--theme-elevation-600);font-size:13px}.studio-doc-unsupported-badge{font-weight:600;color:var(--theme-text)}.studio-doc-unsupported-hint{color:var(--theme-elevation-500);font-style:italic}.studio-doc-question{display:flex;flex-direction:column;gap:10px}.studio-doc-question-prompt{font-size:16px;font-weight:500;color:var(--theme-text)}.studio-doc-options{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.studio-doc-option{display:flex;align-items:baseline;gap:10px;padding:4px 6px;border-radius:4px}.studio-doc-option-marker{flex-shrink:0;min-width:1.5em;font-variant-numeric:tabular-nums;color:var(--theme-elevation-500);font-weight:500}.studio-doc-option-body{flex:1}.studio-doc-option--correct{background:var(--theme-success-50,var(--theme-elevation-50));border-inline-start:2px solid var(--theme-success-500);padding-inline-start:4px}.studio-doc-option--correct .studio-doc-option-marker{color:var(--theme-success-600,var(--theme-success-500));font-weight:700}.studio-doc-answer-line{display:flex;align-items:center;gap:12px;margin-top:4px}.studio-doc-answer-blank{flex:1;height:0;min-width:120px;border-bottom:1px solid var(--theme-elevation-300)}.studio-doc-answer-key{font-size:12px;color:var(--theme-elevation-500);font-style:italic}.studio-doc-graph .jxgbox,.studio-doc-graph-canvas,.studio-doc-svg{pointer-events:none}.studio-doc-graph{margin-top:8px}.studio-doc-graph-canvas{padding:8px 0}.studio-doc-svg{padding:8px 0;max-width:100%}.studio-doc-svg svg{max-width:100%;height:auto}.studio-doc-latex{padding:4px 0}.studio-doc-attachment{display:flex;flex-direction:column;gap:6px;border:1px dashed var(--theme-elevation-200);border-radius:6px;padding:8px;background:var(--theme-elevation-50)}.studio-doc-attachment-badge{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;font-size:11px;font-weight:500;color:var(--theme-elevation-600);background:var(--theme-elevation-100);padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.studio-doc-attachment-body{display:flex;flex-direction:column;gap:6px}.studio-doc-attachment-caption{font-size:12px;color:var(--theme-elevation-600);font-style:italic}.studio-doc-attachment-layout{display:grid;gap:16px;align-items:start}.studio-doc-attachment-layout-sketch,.studio-doc-attachment-layout-text{min-width:0}.studio-doc-attachment-layout--textAbove{grid-template-columns:1fr;grid-template-areas:"text" "sketch"}.studio-doc-attachment-layout--textBelow{grid-template-columns:1fr;grid-template-areas:"sketch" "text"}.studio-doc-attachment-layout--textLeft{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"text sketch"}.studio-doc-attachment-layout--textRight{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"sketch text"}.studio-doc-attachment-layout--textAbove .studio-doc-attachment-layout-text,.studio-doc-attachment-layout--textBelow .studio-doc-attachment-layout-text,.studio-doc-attachment-layout--textLeft .studio-doc-attachment-layout-text,.studio-doc-attachment-layout--textRight .studio-doc-attachment-layout-text{grid-area:text}.studio-doc-attachment-layout--textAbove .studio-doc-attachment-layout-sketch,.studio-doc-attachment-layout--textBelow .studio-doc-attachment-layout-sketch,.studio-doc-attachment-layout--textLeft .studio-doc-attachment-layout-sketch,.studio-doc-attachment-layout--textRight .studio-doc-attachment-layout-sketch{grid-area:sketch}@media (max-width:720px){.studio-doc-attachment-layout--textLeft,.studio-doc-attachment-layout--textRight{grid-template-columns:1fr;grid-template-areas:"text" "sketch"}}.studio-doc-table-wrap{overflow-x:auto;margin-top:4px}.studio-doc-table{border-collapse:collapse;font-size:14px;min-width:100%}.studio-doc-table td,.studio-doc-table th{padding:4px 8px;vertical-align:top}.studio-doc-table--bordered td,.studio-doc-table--bordered th{border:1px solid var(--theme-elevation-200)}.studio-doc-table th{background:var(--theme-elevation-100);font-weight:600}.studio-doc-table-blank{display:inline-block;min-width:40px;height:0;border-bottom:1px solid var(--theme-elevation-300)}.studio-doc-matching{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:4px}.studio-doc-matching-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:baseline;gap:8px;padding:2px 4px;border-radius:4px}.studio-doc-matching-arrow{color:var(--theme-elevation-500)}.studio-doc-matching-left,.studio-doc-matching-right{min-width:0}.studio-doc-editor-skeleton{padding:12px 0;display:flex;flex-direction:column;gap:8px}.studio-doc-editor-skeleton-line{height:14px;border-radius:4px;background:linear-gradient(90deg,var(--theme-elevation-100),var(--theme-elevation-150),var(--theme-elevation-100));background-size:200% 100%;animation:studio-doc-skeleton-pulse 1.2s ease-in-out infinite}.studio-doc-editor-skeleton-line--short{width:60%}@keyframes studio-doc-skeleton-pulse{0%{background-position:0 0}to{background-position:-200% 0}}.studio-add-block-row,.studio-add-exercise-row,.studio-add-section-row{padding:4px 0}.studio-add-block-row{padding-top:6px}.studio-add-block-row--between{padding:2px 0;opacity:.35;transition:opacity .15s}.studio-add-block-row--between:focus-within,.studio-add-block-row--between:hover{opacity:1}.studio-add-section-row{padding:12px 0 4px}.studio-add-exercise-row{padding:32px 0 8px;border-top:1px dashed var(--theme-elevation-150);margin-top:8px}.studio-add-wrapper{position:relative;display:inline-block}.studio-add-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:500;color:var(--theme-elevation-500);background:transparent;border:1px dashed var(--theme-elevation-200);border-radius:4px;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.studio-add-btn:hover{background:var(--theme-elevation-50);border-color:var(--theme-success-500);color:var(--theme-success-600,var(--theme-success-500))}.studio-add-btn:focus-visible{outline:none;border-color:var(--theme-success-500);box-shadow:0 0 0 2px var(--theme-success-500)}.studio-add-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:180px;z-index:30;background:var(--theme-elevation-0);border:1px solid var(--theme-elevation-200);border-radius:6px;box-shadow:0 4px 16px rgba(0,0,0,.08);padding:4px 0;display:flex;flex-direction:column}.studio-add-menu-item{text-align:left;padding:6px 12px;font-size:13px;color:var(--theme-text);background:transparent;border:none;cursor:pointer}.studio-add-menu-item:hover{background:var(--theme-elevation-50);color:var(--theme-success-600,var(--theme-success-500))}.studio-add-form{display:inline-flex;gap:6px;align-items:center}.studio-add-input{padding:4px 8px;font-size:13px;color:var(--theme-text);background:var(--theme-elevation-0);border:1px solid var(--theme-elevation-200);border-radius:4px;min-width:220px}.studio-add-input:focus{outline:none;border-color:var(--theme-success-500);box-shadow:0 0 0 2px var(--theme-success-100,var(--theme-elevation-100))}.studio-add-submit-btn{padding:4px 10px;font-size:12px;font-weight:500;color:var(--theme-base-0);background:var(--theme-success-500);border:none;border-radius:4px;cursor:pointer}.studio-add-submit-btn:hover{background:var(--theme-success-600)}.studio-add-submit-btn:disabled{background:var(--theme-elevation-200);cursor:not-allowed}.studio-add-cancel-btn{padding:4px 10px;font-size:12px;color:var(--theme-elevation-500);background:transparent;border:none;cursor:pointer}.studio-add-cancel-btn:hover{color:var(--theme-text)}.studio-add-error{font-size:12px;color:var(--theme-error-500);margin-inline-start:4px}.studio-refetch-warning{padding:8px 24px;font-size:13px;color:var(--theme-warning-700,var(--theme-warning-500));background:var(--theme-warning-100,var(--theme-elevation-50));border-bottom:1px solid var(--theme-warning-300,var(--theme-elevation-200))}.studio-action-error{display:flex;align-items:center;gap:12px;padding:8px 24px;font-size:13px;color:var(--theme-error-700,var(--theme-error-500));background:var(--theme-error-100,var(--theme-elevation-50));border-bottom:1px solid var(--theme-error-300,var(--theme-elevation-200))}.studio-action-error>span{flex:1}.studio-action-error-dismiss{padding:2px 8px;font-size:16px;line-height:1;color:var(--theme-error-700,var(--theme-error-500));background:transparent;border:none;border-radius:4px;cursor:pointer}.studio-action-error-dismiss:hover{background:var(--theme-error-200,var(--theme-elevation-100))}.studio-row-toolbar{display:flex;align-items:center;gap:4px;margin-left:auto;opacity:0;transition:opacity .12s}.studio-exercise-header:focus-within .studio-row-toolbar,.studio-exercise-header:hover .studio-row-toolbar,.studio-section-header:focus-within .studio-row-toolbar,.studio-section-header:hover .studio-row-toolbar{opacity:1}.studio-row-btn{padding:2px 8px;font-size:12px;color:var(--theme-elevation-600);background:transparent;border:1px solid transparent;border-radius:4px;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.studio-row-btn:hover{background:var(--theme-elevation-100);color:var(--theme-text);border-color:var(--theme-elevation-200)}.studio-row-btn:focus-visible{outline:none;border-color:var(--theme-success-500);box-shadow:0 0 0 2px var(--theme-success-500)}.studio-row-btn:disabled{color:var(--theme-elevation-400);cursor:not-allowed;background:transparent;border-color:transparent}.studio-row-btn--danger:hover{background:var(--theme-error-100,var(--theme-elevation-100));color:var(--theme-error-700,var(--theme-error-500));border-color:var(--theme-error-300,var(--theme-elevation-200))}.studio-edit-block-wrapper{position:relative}.studio-block-delete-btn{position:absolute;top:4px;right:4px;z-index:2;width:22px;height:22px;padding:0;font-size:16px;line-height:1;color:var(--theme-elevation-500);background:var(--theme-elevation-0);border:1px solid var(--theme-elevation-200);border-radius:50%;cursor:pointer;opacity:0;transition:opacity .12s,color .12s,background .12s,border-color .12s}.studio-block-delete-btn:focus-visible,.studio-doc-block:focus-within>.studio-block-delete-btn,.studio-doc-block:hover>.studio-block-delete-btn,.studio-edit-block-wrapper:focus-within .studio-block-delete-btn,.studio-edit-block-wrapper:hover .studio-block-delete-btn{opacity:1}.studio-block-delete-btn:hover{color:var(--theme-error-700,var(--theme-error-500));background:var(--theme-error-100,var(--theme-elevation-50));border-color:var(--theme-error-500,var(--theme-elevation-300))}.studio-block-delete-btn:focus-visible{outline:none;border-color:var(--theme-error-500,var(--theme-elevation-300));box-shadow:0 0 0 2px var(--theme-error-300,var(--theme-elevation-200))}.studio-block-delete-btn--doc{top:2px;right:2px}.studio-doc-json-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:500;color:var(--theme-elevation-700);background:var(--theme-elevation-0);border:1px solid var(--theme-elevation-200);border-radius:4px;cursor:pointer}.studio-doc-json-btn:hover{color:var(--theme-elevation-900);background:var(--theme-elevation-50);border-color:var(--theme-elevation-300)}.studio-doc-block-editing-toolbar .studio-doc-json-btn{margin-right:6px}.studio-doc-json-btn--doc{position:absolute;top:2px;right:30px;z-index:2;padding:2px 6px;opacity:0;transition:opacity .12s}.studio-doc-block:focus-within>.studio-doc-json-btn--doc,.studio-doc-block:hover>.studio-doc-json-btn--doc,.studio-doc-json-btn--doc:focus-visible{opacity:1}.studio-json-modal-overlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.45)}.studio-json-modal{width:min(900px,100%);max-height:90vh;display:flex;flex-direction:column;background:var(--theme-elevation-0);border:1px solid var(--theme-elevation-200);border-radius:6px;box-shadow:0 12px 32px rgba(0,0,0,.25);overflow:hidden}.studio-json-modal--wide{width:min(1100px,100%)}.studio-json-modal .full-json-editor,.studio-json-modal .json-inspector{height:100%;min-height:400px}.studio-exercise-blocks-toolbar{display:flex;justify-content:flex-end;padding:4px 8px 0}