:root{color-scheme:light;font-family:IBM Plex Sans,Segoe UI,sans-serif;background:radial-gradient(circle at top left,rgba(255,222,173,.65),transparent 28%),radial-gradient(circle at top right,rgba(122,182,255,.45),transparent 24%),linear-gradient(180deg,#f8f5ef,#f5efe4);color:#14213d;line-height:1.5;font-weight:400}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea{font:inherit}button{cursor:pointer}#root,.auth-shell,.workspace-shell{min-height:100vh}.auth-shell{display:grid;place-items:center;padding:32px}.auth-panel{width:min(520px,100%);padding:40px;border:1px solid rgba(20,33,61,.12);border-radius:28px;background:#fffcf6e0;box-shadow:0 24px 60px #14213d1f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.auth-copy h1,.workspace-header h1,.panel-header h2,.panel-header h3{margin:0}.auth-copy p,.course-section p,.lesson-content p,.panel-note,.result-card p,.ai-message p{color:#4a5568}.eyebrow{display:inline-flex;margin-bottom:10px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#9c6644}.auth-form,.field,.workspace-layout,.editor-column,.result-grid,.quick-actions,.ai-thread,.exercise-list,.lesson-list{display:flex}.auth-form,.field,.editor-column,.ai-thread,.exercise-list,.lesson-list{flex-direction:column}.auth-form{gap:16px;margin-top:28px}.field{gap:8px}.field span{font-weight:600}.field input,.field textarea,.sql-editor{width:100%;padding:14px 16px;border:1px solid rgba(20,33,61,.14);border-radius:18px;background:#ffffffd1;color:#14213d}.field textarea,.ai-input{min-height:96px;resize:vertical}.sql-editor{min-height:320px;border-radius:24px;font-family:IBM Plex Mono,SFMono-Regular,monospace;background:#fffdf8}.primary-button,.secondary-button,.quick-action,.lesson-card,.exercise-card{border:0;border-radius:16px;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.primary-button,.secondary-button{padding:12px 18px;font-weight:600}.primary-button{background:linear-gradient(135deg,#d97706,#f97316);color:#fffaf2;box-shadow:0 14px 28px #d977063d}.secondary-button{background:#14213d14;color:#14213d}.primary-button:hover,.secondary-button:hover,.quick-action:hover,.lesson-card:hover,.exercise-card:hover{transform:translateY(-1px)}.primary-button:disabled{cursor:wait;opacity:.7}.auth-alt{display:flex;gap:8px;margin-top:24px}.auth-alt a{color:#b45309}.form-error{margin:0;color:#b91c1c}.workspace-shell{padding:18px}.workspace-header,.panel-header.row,.workspace-actions,.editor-actions,.result-card li,.ai-message header{display:flex;align-items:center;justify-content:space-between;gap:16px}.workspace-header{margin-bottom:20px;padding:14px 20px;border:1px solid rgba(20,33,61,.1);border-radius:28px;background:#fffbf3d6;box-shadow:0 20px 48px #14213d14}.workspace-header h1{font-size:28px;line-height:1.1}.workspace-actions{flex-wrap:wrap}.user-chip{padding:8px 12px;border-radius:18px;background:#14213d14}.user-chip span,.course-section h3,.result-card h3{display:block;font-weight:700}.workspace-layout{gap:20px;align-items:stretch}.course-panel,.workspace-tabs-shell,.ai-panel{border:1px solid rgba(20,33,61,.08);border-radius:28px;background:#fffbf3e0;box-shadow:0 18px 42px #14213d14}.course-panel,.workspace-tabs-shell,.ai-panel{padding:24px}.course-panel{width:22%;min-width:220px;overflow:auto;transition:width .18s ease,min-width .18s ease,padding .18s ease}.course-panel.collapsed{width:96px;min-width:96px;padding:16px 14px}.editor-column{flex:1;min-width:0}.workspace-main-panel{flex:1;min-width:0;display:flex}.workspace-tabs-shell{width:100%;display:flex;flex-direction:column;gap:18px;min-width:0}.ai-panel{width:320px;min-width:320px}.ai-panel:not(.open){width:84px;min-width:84px;overflow:hidden}.ai-panel:not(.open)>*:not(.panel-header){display:none}.panel-header.compact{margin-bottom:16px}.course-stage-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}.tree-toggle,.lesson-summary,.exercise-summary{padding:14px 16px;border-radius:20px;background:#14213d0a}.tree-toggle{width:100%;border:0;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;text-align:left}.course-tree-toggle{background:#14213d0d}.stage-tree-toggle{background:#ffffffb8}.tree-label-group,.tree-label-copy{display:flex;align-items:flex-start;gap:10px}.tree-label-copy{flex-direction:column;gap:4px}.tree-label-copy small,.course-section small,.lesson-summary p,.exercise-summary p{margin:6px 0 0;color:#64748b}.tree-caret{margin-top:2px;color:#9c6644;font-size:13px}.tree-group{padding-left:14px;border-left:1px dashed rgba(156,102,68,.24)}.course-tree{margin-top:16px}.lesson-tree-list{display:flex;flex-direction:column;gap:10px;margin-top:10px;padding-left:18px}.sidebar-toggle{padding:10px 12px;white-space:nowrap}.sidebar-collapsed-hint{display:flex;align-items:center;justify-content:center;min-height:100px}.objective-list{margin:10px 0 0;padding-left:18px;color:#475569}.objective-list li+li{margin-top:6px}.lesson-list,.quick-actions,.ai-thread{gap:12px}.lesson-card,.exercise-card,.quick-action{padding:14px 16px;text-align:left;background:#ffffffb8}.lesson-card,.exercise-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.lesson-card.active,.exercise-card.active{background:linear-gradient(135deg,#fbbf242e,#0ea5e92e);box-shadow:inset 0 0 0 1px #b4530924}.lesson-card span,.exercise-card span{display:block;color:#64748b}.exercise-hint{margin-top:14px;padding:12px 14px;border-radius:18px;background:#fbbf241a}.exercise-hint .eyebrow{color:#92400e}.empty-state-card{padding:18px;border-radius:24px;background:#14213d08}.workspace-tablist{display:flex;gap:10px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.workspace-tab{border:0;border-radius:999px;padding:10px 16px;background:#14213d0f;color:#334155;white-space:nowrap}.workspace-tab.active{background:linear-gradient(135deg,#fbbf242e,#0ea5e92e);box-shadow:inset 0 0 0 1px #b4530924;color:#111827;font-weight:700}.workspace-tab-panel{min-height:0;flex:1}.lesson-tab-panel,.exercise-tab-panel{display:flex;flex-direction:column;gap:18px}.exercise-stage{padding:18px;border-radius:24px;background:#14213d08}.exercise-stage-middle .sql-editor,.exercise-stage-bottom .result-grid{margin-top:14px}.exercise-stage-top .markdown-body{margin-top:12px}.meta-row{display:flex;flex-wrap:wrap;gap:8px}.meta-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#14213d14;color:#334155;font-size:12px;font-weight:600}.markdown-body{margin-top:18px;line-height:1.75;color:#14213d}.markdown-body>:first-child{margin-top:0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{margin:1.25em 0 .5em;line-height:1.25}.markdown-body p{margin:0 0 12px}.markdown-body ul,.markdown-body ol{margin:0 0 16px;padding-left:22px}.markdown-body li+li{margin-top:6px}.markdown-body strong{color:#111827}.markdown-body em{color:#0f172a}.markdown-body code{padding:.16em .36em;border-radius:6px;background:#14213d14;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:.95em}.markdown-body pre{overflow-x:auto;margin:16px 0;padding:16px;border-radius:20px;background:#0f172a;color:#f8fafc}.markdown-body pre code{padding:0;background:transparent;color:inherit}.markdown-body .sql-code-block .sql-token.keyword{color:#93c5fd;font-weight:700}.markdown-body .sql-code-block .sql-token.function{color:#fca5a5;font-weight:700}.markdown-body table{width:100%;margin:16px 0;border-collapse:collapse}.markdown-body th,.markdown-body td{padding:10px 12px;border-bottom:1px solid rgba(20,33,61,.08);text-align:left}.markdown-body th{background:#14213d0a}.markdown-body blockquote{margin:16px 0;padding:12px 16px;border-left:4px solid #f59e0b;border-radius:0 16px 16px 0;background:#f59e0b14;color:#7c2d12}.markdown-body a{color:#b45309}.quick-actions{flex-direction:row;flex-wrap:wrap;gap:10px}.quick-action{width:auto;flex:1 1 calc(50% - 5px);min-width:132px}@media (max-width: 1360px){.course-panel{width:250px;min-width:250px}.ai-panel{width:300px;min-width:300px}}@media (max-width: 1180px){.workspace-layout{flex-direction:column}.course-panel,.course-panel.collapsed,.workspace-main-panel,.ai-panel,.ai-panel.open{width:100%;min-width:0}}.result-grid{gap:16px;flex-direction:column}.result-card{width:100%;min-width:0;padding:18px;border-radius:22px;background:#ffffffbd}.status-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:13px;font-weight:700}.status-pill.success{background:#22c55e24;color:#166534}.status-pill.pending{background:#f59e0b29;color:#9a3412}.status-pill.neutral{background:#3b82f624;color:#1d4ed8}.table-wrap{overflow:auto}.result-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:14px;color:#4a5568;font-size:13px;font-weight:600}.result-pagination .secondary-button{min-width:88px}table{width:100%;border-collapse:collapse}th,td{padding:10px 12px;border-bottom:1px solid rgba(20,33,61,.08);text-align:left;white-space:nowrap}.history-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.history-list li{padding:12px 14px;border-radius:16px;background:#14213d0d}.quick-action{background:#14213d0f}.full-width{width:100%;margin-top:12px}.ai-message,.follow-up-card{padding:16px;border-radius:18px;background:#ffffffc2}.follow-up-card{margin-top:12px;background:#fbbf241f}@media (max-width: 1200px){.workspace-layout{flex-direction:column}.course-panel,.ai-panel,.ai-panel:not(.open){width:100%;min-width:0}}@media (max-width: 720px){.workspace-shell,.auth-shell{padding:16px}.auth-panel,.workspace-header,.course-panel,.editor-panel,.result-panel,.ai-panel{padding:18px;border-radius:22px}.workspace-header,.panel-header.row,.workspace-actions,.editor-actions{align-items:flex-start;flex-direction:column}.sql-editor{min-height:240px}}
