:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3f5f7;--panel:#fff;--panel-soft:#f8fafc;--text:#1f2937;--muted:#667085;--line:#d9e0e7;--brand:#245a9b;--brand-soft:#eef4fb;--brand-deep:#1d4f89;--ok:#15803d;--warn:#b45309;--danger:#b91c1c;--shadow:0 10px 24px #0f172a0d;--shadow-soft:0 4px 14px #0f172a09;font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif}*{box-sizing:border-box}body{min-height:100vh;color:var(--text);background:var(--bg);margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button,input,textarea,select{transition:border-color .18s,box-shadow .18s,background-color .18s,transform .18s}textarea{resize:vertical}#app{min-height:100vh}.page-kicker{color:var(--muted);font-size:12px}.workspace-shell{background:0 0;align-content:start;gap:18px;max-width:1440px;min-height:100vh;margin:0 auto;padding:24px 24px 40px;display:grid}.guide-banner{color:#7c2d12;background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.6}.builder-shell{grid-template-columns:300px minmax(0,1fr);gap:18px;min-height:0;display:grid}.builder-left{min-width:0}.builder-main{align-content:start;gap:14px;min-width:0;display:grid}.action-result-panel{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff;border-radius:14px;gap:8px;padding:12px 14px;display:grid}.action-result-panel.success{background:#f0fdf4;border-color:#86efac}.action-result-panel.error{background:#fef2f2;border-color:#fca5a5}.action-result-panel.info{background:#eff6ff;border-color:#93c5fd}.action-result-head{gap:4px;display:grid}.action-result-head strong,.action-result-head p{margin:0}.action-result-list{gap:4px;margin:0;padding-left:18px;display:grid}.action-result-more{color:var(--muted);font-size:12px}.left-menu,.content-page{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:14px}.left-menu{align-content:start;gap:12px;padding:18px;display:grid;position:sticky;top:20px}.left-menu-head{gap:4px;padding:0 4px 6px;display:grid}.left-menu-head strong{font-size:14px}.left-menu-head small{color:var(--muted);line-height:1.5}.left-menu-item{min-height:48px;color:var(--text);text-align:left;border:1px solid var(--line);box-shadow:none;background:#fff;border-radius:12px;padding:0 16px;font-weight:600}.left-menu-item:hover{background:#fafcff;border-color:#c6d2df}.left-menu-item.active{color:var(--brand);background:var(--brand-soft);border-color:#c2d4ea;box-shadow:inset 0 0 0 1px #245a9b0d}.content-page{gap:18px;padding:22px;display:grid}.content-page-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.content-page-head h3,.content-page-head p{margin:0}.content-page-head p,.course-card small{color:var(--muted)}.page-actions{flex-wrap:wrap;gap:10px;display:flex}.page-card{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fbfcfd;border-radius:14px;padding:18px}.migration-card{background:#fbfcfd;border-style:dashed;border-width:1.5px;justify-content:flex-start;gap:18px;min-height:188px;padding:22px;display:grid}.migration-copy{gap:8px;display:grid}.migration-copy strong{font-size:18px}.migration-copy p{color:var(--muted);margin:0;line-height:1.7}.migration-actions{justify-items:start;gap:8px;display:grid}.migration-tip{color:var(--muted);font-size:12px}.course-card-list,.backup-card-list{gap:14px;display:grid}.course-card{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.course-card:hover{border-color:#c6d2df}.course-card-main{gap:8px;display:grid}.backup-card{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.backup-card-main,.backup-summary-card{gap:8px;display:grid}.backup-warning-card{background:#fffaf3;border-color:#f3d3a1;gap:8px;display:grid}.backup-summary-card p{color:var(--muted);margin:0;line-height:1.7}.backup-warning-card p{color:#9a6700;margin:0;line-height:1.7}.backup-summary-card small{color:var(--muted);line-height:1.6}.backup-type-pill{color:var(--brand);background:var(--brand-soft);border-color:#c9daee}.course-card-actions{flex-wrap:wrap;gap:10px;display:flex}.danger-btn{color:var(--danger);border-color:#fca5a5}.library-panel,.editor-layout,.metric-card,.empty-editor{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px}.library-panel{gap:14px;padding:18px;display:grid}.left-panel-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.left-panel-tab{min-height:40px;color:var(--text);border:1px solid var(--line);background:#fff;border-radius:10px;padding:0 10px}.left-panel-tab.active{color:var(--brand);background:var(--brand-soft);border-color:#9bb9ff}.left-panel-body{gap:12px;display:grid}.left-panel-hint{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.library-head h3,.builder-header h1,.section-sidebar-head h3,.editor-panel-head h3,.empty-editor h3{margin:0}.library-head p,.builder-header p,.section-sidebar-head p,.editor-panel-head p,.empty-editor p,.lesson-item small,.field-label,.field-path{color:var(--muted)}.library-actions,.topbar-actions,.editor-status-row,.lesson-meta,.builder-summary{flex-wrap:wrap;gap:10px;display:flex}.create-lesson-card{gap:10px;display:grid}.create-lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.create-lesson-grid label{gap:6px;font-size:13px;display:grid}.create-btn{grid-column:1/-1;justify-self:start;width:auto;min-width:160px}.library-search input,.create-lesson-grid input,.editor-form input,.editor-form textarea,.editor-form select{width:100%;min-height:40px;color:var(--text);border:1px solid var(--line);background:#fff;border-radius:10px;outline:none;padding:10px 12px}.library-search input:focus,.create-lesson-grid input:focus,.editor-form input:focus,.editor-form textarea:focus,.editor-form select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #2563eb1f}.primary-btn,.ghost-btn{border:1px solid var(--brand);border-radius:10px;min-height:42px;padding:0 16px;font-weight:600}.primary-btn{color:#fff;background:var(--brand);box-shadow:none}.primary-btn:hover{background:var(--brand-deep)}.ghost-btn{color:var(--brand);background:#fff}.ghost-btn:hover{background:var(--brand-soft)}button:disabled{cursor:not-allowed;opacity:.65;transform:none!important}.lesson-list,.section-tab-list{gap:10px;display:grid}.export-summary{background:var(--panel-soft);border:1px solid var(--line);border-radius:12px;gap:6px;padding:12px;display:grid}.export-summary span{color:var(--muted);font-size:13px}.lesson-item,.section-side-tab{text-align:left;background:var(--panel-soft);border:1px solid var(--line);border-radius:12px;gap:6px;padding:12px;display:grid}.lesson-item.active,.section-side-tab.active{background:var(--brand-soft);border-color:#9bb9ff}.pill{min-height:24px;color:var(--muted);border:1px solid var(--line);background:#f3f4f6;border-radius:999px;align-items:center;padding:0 8px;font-size:12px;display:inline-flex}.notice{border:1px solid var(--line);width:100%;min-height:44px;box-shadow:var(--shadow-soft);background:#fff;border-radius:12px;align-items:center;padding:12px 14px;line-height:1.5;display:flex}.notice.success{color:var(--ok)}.notice.info{color:var(--brand)}.notice.error{color:var(--danger)}.builder-header{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff;border-radius:14px;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px;display:flex}.builder-header h1{text-overflow:ellipsis;white-space:nowrap;max-width:20ch;margin:4px 0 0;font-size:34px;line-height:1.15;overflow:hidden}.topbar-actions{align-items:center}.editor-layout{grid-template-columns:1fr;gap:14px;display:grid;overflow:hidden}.section-sidebar{background:0 0;padding:0}.section-side-tab strong,.course-card-main strong,.course-card-main small,.backup-card-main strong,.backup-card-main small,.editor-panel-head p{text-overflow:ellipsis;white-space:nowrap;max-width:20ch;display:block;overflow:hidden}.section-side-tab{border:1px solid var(--line);min-height:42px;box-shadow:none;background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.section-side-tab:hover{background:#fafcff;border-color:#c6d2df}.section-side-tab strong{flex:1;max-width:none;font-size:14px}.section-side-badge{min-width:20px;height:20px;color:var(--brand);background:var(--brand-soft);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0 6px;font-size:12px;display:inline-flex}.editor-panel-main{border:1px solid var(--line);min-width:0;box-shadow:var(--shadow-soft);background:#fff;border-radius:14px;gap:12px;padding:18px;display:grid}.editor-panel-head{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.editor-title-group{gap:2px;display:grid}.editor-title-group small{color:var(--muted);font-size:12px}.editor-save-state{color:var(--muted);border:1px solid var(--line);background:#fff;border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:12px}.editor-form{gap:12px;display:grid}.editor-root{align-content:start}.field-block,.array-item{border:1px solid var(--line);box-shadow:none;background:#fff;border-radius:12px;gap:10px;padding:14px;display:grid}.nested-block{background:#fafcff;border-left:3px solid #d5dfeb}.field-block-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.field-grid{grid-template-columns:1fr;gap:10px 12px;display:grid}.section-field-panel,.array-stack,.field-issues{gap:10px;display:grid}.section-tab-list{flex-wrap:wrap;gap:10px;display:flex}.section-tab-list .section-side-tab{flex:none;min-width:112px}.field-label{gap:6px;font-size:13px;display:grid}.field-label>span{color:var(--text);font-weight:600}.field-note{color:var(--muted);font-size:12px}.field-dev-meta{color:#9ca3af;opacity:.8;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.3}.field-readonly-hint{color:var(--muted);margin-left:8px;font-size:12px;font-weight:400}.tuple-array-field{gap:12px}.suggestion-pairs-field,.suggestion-pairs-list,.suggestion-pair-row{gap:10px;display:grid}.suggestion-pair-row{border:1px solid var(--line);background:#fafcff;border-radius:12px;padding:10px}.suggestion-pair-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.tuple-array-body{gap:10px;display:grid}.tuple-grid-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;display:grid}.tuple-row-title{min-height:auto;color:var(--muted);grid-column:1/-1;align-items:center;font-size:12px;display:inline-flex}.tuple-cell{gap:6px;display:grid}.tuple-cell>span{color:var(--text);font-size:13px;font-weight:600}.single-line-input{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.readonly-field{color:var(--muted);cursor:default;background:#f8fafc!important}.draft-seeded-field{color:#6b7280!important;background:#fff7ed!important;border-color:#fed7aa!important}.user-edited-field{color:var(--text)!important;background:#eff6ff!important;border-color:#bfdbfe!important}.multi-line-field{min-height:120px!important}.tall-textarea{min-height:220px!important}.field-issue{color:var(--danger);background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:8px 10px;font-size:12px;line-height:1.5}.has-error input,.has-error textarea,.has-error select{background:snow;border-color:#fca5a5}.empty-editor{background:#fff;padding:28px}@media (width<=1200px){.builder-shell{grid-template-columns:1fr}.left-menu{position:static}.content-page-head,.course-card,.backup-card{flex-direction:column;align-items:stretch}.editor-layout{grid-template-columns:1fr}.section-sidebar{padding:0}.tuple-grid-row,.suggestion-pair-grid{grid-template-columns:1fr}.editor-panel-head{flex-direction:column;align-items:flex-start}.create-lesson-grid{grid-template-columns:1fr}}@media (width<=768px){.workspace-shell{padding:16px 14px 28px}.builder-header{flex-direction:column;padding:18px 16px}.builder-header h1{font-size:32px}.content-page,.left-menu,.editor-panel-main,.editor-panel-head{padding-left:16px;padding-right:16px}.page-actions,.topbar-actions{width:100%}.page-actions>*,.topbar-actions>*{flex:auto}}
