.shortcuts-container{padding:24px;height:100%;overflow-y:auto;color:var(--text-main)}.shortcuts-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;color:var(--accent-text)}.shortcuts-header h2{margin:0;font-size:1.5rem}.shortcuts-list{display:flex;flex-direction:column;gap:12px}.shortcut-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--panel-bg);border:1px solid var(--border-color);border-radius:8px}.shortcut-desc{font-weight:500}.shortcut-key{background:var(--bg-color);border:1px solid var(--border-color);border-radius:4px;padding:4px 8px;font-family:monospace;font-size:.9rem;color:var(--text-muted);box-shadow:0 1px 1px #0000001a}.terminal-container{display:flex;flex-direction:column;height:100%;background:var(--code-bg);border-top:1px solid var(--border-color);font-family:var(--font-mono)}.terminal-header{height:48px;display:flex;justify-content:space-between;align-items:center;padding:0 16px;background:var(--panel-bg);border-bottom:1px solid var(--border-color)}.terminal-title{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:600;color:var(--text-muted)}.terminal-actions{display:flex;gap:8px}.terminal-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--border-color);color:var(--text-muted);padding:4px 8px;border-radius:4px;font-size:.75rem;cursor:pointer;transition:all .2s}.terminal-btn:hover:not(:disabled){background:#ffffff1a;color:var(--text-main)}.terminal-btn:disabled{opacity:.5;cursor:not-allowed}.run-btn{border-color:var(--accent-color);color:var(--accent-color)}.run-btn:hover:not(:disabled){background:var(--accent-color);color:#fff}.terminal-output{flex:1;padding:16px;overflow:auto;color:#c9d1d9;font-size:.9rem;line-height:1.5}.terminal-output pre{margin:0;white-space:pre-wrap;word-wrap:break-word}.terminal-running{display:flex;align-items:center;gap:10px;color:var(--accent-text)}.spinner{width:12px;height:12px;border:2px solid var(--accent-color);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}body.light-theme .terminal-container{background:var(--code-bg)}body.light-theme .terminal-output{color:var(--text-main)}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.logo.vite:hover{filter:drop-shadow(0 0 2em #747bff)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafb)}.container{margin:0;padding-top:10vh;display:flex;flex-direction:column;justify-content:center;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:.75s}.logo.tauri:hover{filter:drop-shadow(0 0 2em #24c8db)}.row{display:flex;justify-content:center}a{font-weight:500;color:var(--accent-text);text-decoration:inherit}a:hover{color:var(--accent-hover)}h1{text-align:center}input,button{font-family:inherit;outline:none}#greet-input{margin-right:5px}.custom-markdown-content .markdown-body{max-width:900px;margin:0 auto;line-height:1.7;font-size:1.05rem}.custom-markdown-content h1,.custom-markdown-content h2,.custom-markdown-content h3{margin-top:1.5em;margin-bottom:.8em;font-weight:700;line-height:1.3}.custom-markdown-content h1{font-size:2.2em;color:var(--accent-text);border-bottom:1px solid var(--border-color);padding-bottom:.3em}.custom-markdown-content h2{font-size:1.8em;color:var(--text-main)}.custom-markdown-content h3{font-size:1.4em;color:var(--text-muted)}.custom-markdown-content p{margin-bottom:1.2em;color:var(--text-main);opacity:.95}.custom-markdown-content ul,.custom-markdown-content ol{margin-bottom:1.2em;padding-left:1.5em}.custom-markdown-content li{margin-bottom:.5em}.custom-markdown-content pre{background:#1e1e1e!important;border-radius:8px;padding:16px!important;margin:1.5em 0!important;overflow-x:auto;border:1px solid var(--border-color);box-shadow:0 4px 12px #0003}.custom-markdown-content code{font-family:var(--font-mono)}.custom-markdown-content blockquote{border-left:4px solid var(--accent-color);margin:1.5em 0;padding:1em 1.5em;background:#58a6ff14;border-radius:0 8px 8px 0;color:var(--text-main)}.custom-markdown-content strong{color:var(--accent-text);font-weight:700}select option{background-color:var(--secondary-color);color:var(--text-main)}.table-wrapper{box-shadow:0 4px 12px #00000026}.table-wrapper::-webkit-scrollbar{height:8px}.table-wrapper::-webkit-scrollbar-track{background:var(--panel-bg);border-radius:0 0 8px 8px}.table-wrapper::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.markdown-row{transition:background .2s}.markdown-row:nth-child(2n){background:#ffffff05}.markdown-row:hover{background:#ffffff0d}body.light-theme .markdown-row:nth-child(2n){background:#00000005}body.light-theme .markdown-row:hover{background:#0000000d}.chat-bubble-container{display:flex;width:100%;margin-bottom:1.5rem}.chat-bubble-container.user{justify-content:flex-end}.chat-bubble-container.ai,.chat-bubble-container.system{justify-content:flex-start}.message-bubble{max-width:80%;padding:1rem 1.25rem;border-radius:1rem;font-size:.95rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.message-bubble.user{background-color:var(--bg-tertiary);color:var(--text-primary);border-bottom-right-radius:.25rem}.message-bubble.ai,.message-bubble.system{max-width:100%;background-color:transparent;color:var(--text-primary)}.message-bubble.ai p{margin-bottom:.75rem}.message-bubble.ai p:last-child{margin-bottom:0}.message-bubble.ai h1,.message-bubble.ai h2,.message-bubble.ai h3,.message-bubble.ai h4{margin-top:1.5rem;margin-bottom:.75rem;font-weight:600;line-height:1.25}.message-bubble.ai h1{font-size:1.5rem;border-bottom:1px solid var(--border-color);padding-bottom:.3rem}.message-bubble.ai h2{font-size:1.25rem}.message-bubble.ai h3{font-size:1.1rem}.message-bubble.ai ul,.message-bubble.ai ol{margin-left:1.5rem;margin-bottom:.75rem}.message-bubble.ai li{margin-bottom:.25rem}.message-bubble.ai a{color:var(--accent-primary);text-decoration:none}.message-bubble.ai a:hover{text-decoration:underline}.message-bubble.ai code{background-color:var(--bg-tertiary);padding:.2rem .4rem;border-radius:.25rem;font-family:monospace;font-size:.85em}.message-bubble.ai pre{background-color:var(--input-bg);padding:1rem;border-radius:.5rem;overflow-x:auto;margin-top:.75rem;margin-bottom:.75rem;border:1px solid var(--border-color)}.message-bubble.ai pre code{background-color:transparent;padding:0;color:inherit;font-size:.85em}.message-bubble.ai blockquote{border-left:4px solid var(--border-color);padding-left:1rem;color:var(--text-secondary);font-style:italic;margin-left:0;margin-bottom:.75rem}.message-bubble.ai table{width:100%;border-collapse:collapse;margin-bottom:1rem}.message-bubble.ai th,.message-bubble.ai td{border:1px solid var(--border-color);padding:.5rem;text-align:left}.message-bubble.ai th{background-color:var(--bg-tertiary);font-weight:600}.history-item{position:relative}.history-item .history-more-btn{opacity:1;background-color:transparent}.history-more-btn:hover{background-color:var(--bg-primary)}.chat-dropdown{position:absolute;top:100%;right:0;margin-top:.25rem;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:.5rem;padding:.25rem;min-width:160px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;z-index:95}.chat-dropdown-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.85rem;color:var(--text-primary);cursor:pointer;border-radius:.25rem;transition:background-color .2s;white-space:nowrap}.chat-dropdown-item:hover{background-color:var(--bg-tertiary)}.chat-dropdown-item.delete{color:#ef4444}.chat-dropdown-item.delete:hover{background-color:#fee2e2;color:#b91c1c}[data-theme=dark] .chat-dropdown-item.delete:hover{background-color:#ef444426}.attach-menu{position:absolute;bottom:100%;left:0;margin-bottom:.5rem;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:.5rem;padding:.25rem;min-width:160px;box-shadow:0 -4px 6px -1px #0000001a,0 -2px 4px -1px #0000000f;z-index:95}.attach-menu-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.85rem;color:var(--text-primary);cursor:pointer;border-radius:.25rem;transition:background-color .2s;white-space:nowrap}.attach-menu-item:hover{background-color:var(--bg-tertiary)}.attachment-chips-container{display:flex;flex-wrap:wrap;gap:.5rem;padding-bottom:.75rem;border-bottom:1px dashed var(--border-color);margin-bottom:.5rem}.attachment-chip{display:flex;align-items:center;gap:.4rem;background-color:var(--bg-tertiary);border:1px solid var(--border-color);padding:.3rem .6rem;border-radius:1rem;font-size:.75rem;color:var(--text-primary)}.attachment-chip-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-bubble-container.ai,.chat-bubble-container.system{flex-direction:column;align-items:flex-start}.msg-action-bar{display:flex;align-items:center;flex-wrap:wrap;gap:1.25rem;margin-top:.75rem;padding:.25rem .15rem;opacity:1;transition:opacity .18s ease;width:100%;max-width:100%}.msg-action-btn{display:flex;align-items:center;gap:.4rem;padding:.25rem .4rem;border:none!important;border-radius:.4rem;background:transparent!important;color:var(--text-secondary);font-size:.75rem;font-family:inherit;cursor:pointer;transition:all .2s ease;white-space:nowrap;opacity:.8;margin-bottom:.4rem}.msg-action-btn:hover{background-color:#ffffff0d!important;color:var(--text-primary);opacity:1}.msg-action-btn--active{color:var(--accent-primary);background-color:#3b82f614}.msg-action-btn--active:hover{background-color:#3b82f624;color:var(--accent-primary)}.msg-action-btn--kebab{padding:.28rem .4rem}.msg-kebab-menu{position:absolute;bottom:calc(100% + 4px);right:0;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:.6rem;padding:.3rem;min-width:170px;box-shadow:0 8px 20px -4px #0000002e;z-index:310;animation:kebabFadeIn .12s ease}@keyframes kebabFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.msg-kebab-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:.4rem;font-size:.83rem;color:var(--text-primary);cursor:pointer;transition:background-color .15s;white-space:nowrap}.msg-kebab-item:hover{background-color:var(--bg-tertiary)}.msg-kebab-item--delete{color:#ef4444}.msg-kebab-item--delete:hover{background-color:#fee2e2;color:#b91c1c}.typing-indicator{display:flex;align-items:center;gap:4px;padding:8px 12px;height:24px}.typing-dot{width:6px;height:6px;background-color:var(--text-secondary);border-radius:50%;animation:typingBounce 1.4s infinite ease-in-out both}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typingBounce{0%,80%,to{transform:scale(0);opacity:.4}40%{transform:scale(1);opacity:1}}.quiz-overlay{position:fixed;inset:0;background-color:var(--bg-primary);z-index:1000;display:flex;flex-direction:column;animation:slideUp .3s ease-out;padding-top:env(safe-area-inset-top)}.quiz-header{padding:1rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;background-color:var(--bg-secondary)}.quiz-progress-nav{display:flex;gap:.5rem;padding:.75rem 1rem;overflow-x:auto;border-bottom:1px solid var(--border-color);background-color:var(--bg-primary);scrollbar-width:none}.quiz-progress-nav::-webkit-scrollbar{display:none}.nav-dot{min-width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;border:1.5px solid var(--border-color);background-color:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s}.nav-dot.active{border-color:var(--accent-primary);background-color:var(--accent-primary);color:#fff}.nav-dot.answered{background-color:var(--bg-tertiary);border-color:var(--border-color)}.quiz-content{flex:1;overflow-y:auto;padding:1.5rem;max-width:800px;margin:0 auto;width:100%}.question-card{display:flex;flex-direction:column;gap:1.5rem}.question-text{font-size:1.25rem;font-weight:600;line-height:1.4;color:var(--text-primary)}.options-grid{display:flex;flex-direction:column;gap:.75rem}.option-btn{padding:1rem 1.25rem;border-radius:.75rem;border:1.5px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);text-align:left;font-size:1rem;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:.5rem}.option-btn:hover:not(:disabled){border-color:var(--accent-primary);background-color:var(--bg-tertiary)}.option-btn.selected{border-color:var(--accent-primary);background-color:#3b82f60d}.option-btn.correct{border-color:#10b981;background-color:#10b9810d}.option-btn.incorrect{border-color:#ef4444;background-color:#ef44440d}.option-explanation{font-size:.85rem;color:var(--text-secondary);line-height:1.4;margin-top:.25rem;padding-top:.5rem;border-top:1px dashed var(--border-color)}.quiz-footer{padding:1rem;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;background-color:var(--bg-secondary)}.quiz-summary{text-align:center;display:flex;flex-direction:column;gap:1.5rem;padding:2rem 1rem}.score-circle{width:120px;height:120px;border-radius:50%;border:8px solid var(--accent-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto}.score-value{font-size:2rem;font-weight:700;color:var(--accent-primary)}.score-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.summary-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.stat-card{padding:1rem;background-color:var(--bg-secondary);border-radius:.75rem;border:1px solid var(--border-color)}.stat-value{font-size:1.5rem;font-weight:600}.stat-label{font-size:.8rem;color:var(--text-secondary)}.message-bubble.ai strong,.message-bubble.ai b{color:inherit!important}.message-bubble.ai h1,.message-bubble.ai h2,.message-bubble.ai h3,.message-bubble.ai h4{color:var(--text-primary)!important}.reinforced-quiz-overlay{position:fixed!important;inset:0!important;background:var(--bg-primary)!important;z-index:9999!important;display:flex!important;flex-direction:column!important;padding-top:env(safe-area-inset-top)!important}.quiz-summary-actions{display:flex!important;gap:1rem!important;margin-top:1rem!important;width:100%!important}.quiz-summary-btn{display:flex!important;align-items:center!important;justify-content:center!important;gap:.5rem!important;padding:.8rem 2rem!important;border-radius:12px!important;font-size:1rem!important;font-weight:600!important;cursor:pointer!important;transition:all .2s ease!important;border:none!important;flex:1!important;min-width:140px!important;box-shadow:0 4px 12px #0000001a!important}.quiz-summary-btn.primary{background:var(--accent-primary)!important;color:#fff!important}.quiz-summary-btn.secondary{background:var(--bg-tertiary)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important}.quiz-summary-btn.secondary:hover{background:var(--highlight)!important;color:var(--accent-color)!important}body.light-theme .quiz-summary-btn.secondary:hover{background:#f1f3f4!important;color:var(--accent-color)!important}.quiz-summary-btn:hover{transform:translateY(-2px)!important;box-shadow:0 6px 16px #00000026!important}.quiz-summary-btn:active{transform:translateY(0)!important}@media(max-width:480px){.quiz-summary-actions{flex-direction:column!important}.quiz-summary-btn{width:100%!important}}.practice-questions p{margin-bottom:.4rem!important}details{margin:0!important;padding:0;border:none;background:transparent;overflow:hidden}summary{list-style:none;padding:2px 0!important;font-weight:600;font-size:.85rem;color:var(--accent-primary);cursor:pointer;display:inline-flex;align-items:center;gap:6px;background:transparent;-webkit-user-select:none;user-select:none;opacity:.8;outline:none}summary:hover{opacity:1}summary::-webkit-details-marker{display:none}summary:before{content:"˃";display:inline-block;transition:transform .2s ease;font-size:.9rem}details[open] summary:before{transform:rotate(90deg)}.tip-text{font-size:.8rem;font-style:italic;color:var(--text-secondary);margin:.2rem 0 .5rem!important;padding:6px 10px!important;border-left:2px solid var(--accent-primary);background:#3b82f608;border-radius:0 4px 4px 0}.answer-content{padding:8px 0 15px 1.2rem;border-top:1px dashed var(--border-color);margin-top:2px!important;animation:fadeIn .2s ease-out}.answer-content pre{margin-top:.4rem!important;margin-bottom:.4rem!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.practice-questions h2{color:var(--accent-color);margin-bottom:1rem;font-size:1.4rem}.question{padding-bottom:1rem;border-bottom:1px solid var(--border-color);margin-bottom:1rem}.question:last-child{border-bottom:none}.notebook-container{scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.notebook-container::-webkit-scrollbar{width:6px}.notebook-container::-webkit-scrollbar-track{background:transparent}.notebook-container::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:10px}.notebook-cell{transition:transform .2s ease,box-shadow .2s ease}.notebook-cell:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.cell-action-btn{transition:all .2s ease}.cell-action-btn:hover:not(:disabled){opacity:.9;transform:scale(1.05)}.cell-action-btn:active:not(:disabled){transform:scale(.95)}.run-btn:hover{background-color:var(--accent-hover)!important}.delete-btn:hover{color:#ef4444!important;background-color:#ef44441a!important;border-radius:4px}.add-cell-btn:hover{background-color:rgba(var(--accent-color-rgb),.05)!important}.cell-editor .monaco-editor,.cell-editor .overflow-guard{border-radius:0}:root{--bg-color: #000000;--panel-bg: #010409;--border-color: #30363d;--text-main: #ffffff;--text-muted: #8b949e;--accent-color: #58a6ff;--accent-hover: #1f6feb;--code-bg: #010409;--highlight: #238636;--text-highlight: #d2a8ff;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--bg-primary: var(--bg-color);--bg-secondary: var(--panel-bg);--bg-tertiary: var(--secondary-color);--text-primary: var(--text-main);--text-secondary: var(--text-muted);--accent-primary: var(--accent-color);--input-bg: var(--bg-color)}*{box-sizing:border-box;margin:0;padding:0}html{height:100%;width:100%}body{background-color:var(--bg-color);color:var(--text-main);font-family:var(--font-sans);overflow:hidden;height:100%;width:100%}#root{height:100%;width:100%}.app-container{display:flex;flex-direction:column;height:100%;width:100%;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.header{height:60px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;padding:0 24px;background:var(--panel-bg);justify-content:space-between}.header-actions{display:flex;align-items:center;gap:12px}.logo{font-weight:700;font-size:1.2rem;color:var(--accent-text);display:flex;align-items:center;gap:10px}.main-content{flex:1;display:flex;overflow:hidden}.panel{height:100%;background:var(--panel-bg);overflow:hidden;display:flex;flex-direction:column}.panel-header{height:48px;padding:0 16px;border-bottom:1px solid var(--border-color);font-size:.85rem;font-weight:600;color:var(--text-muted);display:flex;align-items:center;justify-content:space-between}.editor-container{flex:1;overflow:auto;background-color:var(--code-bg);font-family:var(--font-mono);padding-top:10px}.description-container{flex:1;padding:24px;overflow-y:auto;line-height:1.6;text-align:justify;color:var(--text-main)}.description-container h1,.description-container h2{margin-bottom:1rem;color:var(--accent-text)}.description-container p{margin-bottom:1rem}.description-container code{background:#58a6ff1a;padding:2px 4px;border-radius:4px;font-family:var(--font-mono);color:var(--text-main)}.description-container strong,.description-container b{color:var(--accent-text);font-weight:700}.description-container ul,.description-container ol{margin-left:20px;margin-bottom:1rem}.description-container li{margin-bottom:.5rem}.description-container li::marker{color:var(--accent-text);font-weight:700}.description-container h3,.description-container h4{margin-top:1.5rem;margin-bottom:.8rem;color:var(--text-main);font-weight:700}.ai-controls{padding:16px;border-top:1px solid var(--border-color);background:var(--panel-bg);display:flex;gap:12px}.ai-input{flex:1;background:var(--bg-color);border:1px solid var(--border-color);padding:10px 16px;border-radius:8px;color:var(--text-main);outline:none;transition:border-color .2s}.ai-input:focus{border-color:var(--accent-color)}.btn{padding:10px 20px;border-radius:8px;border:none;cursor:pointer;font-weight:600;transition:background .2s,transform .1s;display:flex;align-items:center;gap:8px}.btn-primary{background:var(--accent-color);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:active{transform:scale(.98)}.resizer{background:var(--border-color);position:relative;z-index:10;transition:all .2s}.resizer.horizontal,.resizer[data-panel-group-direction=horizontal]{width:4px;cursor:col-resize;border-left:1px solid rgba(255,255,255,.05);border-right:1px solid rgba(0,0,0,.2)}.resizer.vertical,.resizer[data-panel-group-direction=vertical]{height:4px;width:100%;cursor:row-resize;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(0,0,0,.2)}.resizer:hover,.resizer[data-panel-resize-handle-active=true]{background:var(--accent-color);box-shadow:0 0 8px var(--accent-color)}.resizer:after{content:"";position:absolute;background:var(--accent-color);opacity:0;transition:opacity .2s}.resizer.horizontal:after,.resizer[data-panel-group-direction=horizontal]:after{inset:0 -4px}.resizer.vertical:after,.resizer[data-panel-group-direction=vertical]:after{inset:-4px 0}.resizer:hover:after,.resizer[data-panel-resize-handle-active=true]:after{opacity:.2}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.description-container>*{animation:fadeIn .4s ease-out forwards}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.editor-container pre{background:transparent!important;margin:0!important}@media(max-width:768px){.main-content{flex-direction:column}.mobile-hidden,.action-btn-text{display:none!important}.mobile-icon-btn{background:transparent!important;border:none!important;padding:4px 8px!important;margin:0!important;box-shadow:none!important;color:var(--text-main)!important;display:flex!important;align-items:center!important;justify-content:center!important}.mobile-icon-btn.is-running{color:#ef4444!important}}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal-content{background:var(--panel-bg);border:1px solid var(--border-color);border-radius:12px;width:90%;max-width:500px;box-shadow:0 20px 50px #00000080;display:flex;flex-direction:column;overflow:hidden}.modal-header{padding:16px 24px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h2{font-size:1.25rem;font-weight:600;color:var(--text-main)}.close-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;transition:color .2s,background .2s}.close-btn:hover{color:var(--text-main);background:#ffffff1a}.modal-body{padding:24px;flex:1}.setting-group{margin-bottom:24px}.setting-label{display:flex;align-items:center;gap:10px;color:var(--text-main);font-weight:500;margin-bottom:12px}.theme-toggle{display:flex;gap:8px;background:var(--bg-color);padding:4px;border-radius:8px;border:1px solid var(--border-color)}.theme-btn{flex:1;background:transparent;border:none;color:var(--text-muted);padding:8px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:500;transition:all .2s}.theme-btn:hover{color:var(--text-main)}.theme-btn.active{background:var(--panel-bg);color:var(--accent-text);box-shadow:0 1px 3px #0003}.settings-input{width:100%;background:var(--bg-color);border:1px solid var(--border-color);padding:12px;border-radius:8px;color:var(--text-main);font-family:var(--font-mono);outline:none;transition:border-color .2s}.settings-input:focus{border-color:var(--accent-color)}.setting-hint{font-size:.8rem;color:var(--text-muted);margin-top:8px}.modal-footer{padding:16px 24px;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:12px;background:#0003}.btn-secondary{background:transparent;border:1px solid var(--border-color);color:var(--text-main)}.btn-secondary:hover{background:#ffffff0d}body.light-theme .settings-input,body.light-theme .ai-input{background:var(--code-bg)}.tab-btn{background:transparent;border:none;color:var(--text-muted);padding:6px 12px;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:500;transition:all .2s}.tab-btn:hover{color:var(--text-main);background:#ffffff0d}.tab-btn.active{background:var(--bg-color);color:var(--accent-text);box-shadow:0 1px 3px #0000001a}body.light-theme .tab-btn:hover{background:#0000000d}.chat-history-sidebar{position:absolute;top:48px;left:0;bottom:0;width:260px;background:var(--panel-bg);border-right:1px solid var(--border-color);z-index:50;display:flex;flex-direction:column;animation:slideIn .3s ease-out;box-shadow:10px 0 30px #0003}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.sidebar-header{padding:16px;border-bottom:1px solid var(--border-color)}.sidebar-content{flex:1;overflow-y:auto;padding:8px}.sidebar-label{font-size:.75rem;font-weight:600;color:var(--text-muted);padding:12px 12px 8px;text-transform:uppercase;letter-spacing:.05em}.history-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;color:var(--text-main);font-size:.9rem;transition:all .2s;margin-bottom:2px;position:relative;background:transparent;border:none}.history-item:hover{background:#ffffff0d}.history-item.active{background:var(--bg-color);color:var(--accent-text)}.history-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.delete-btn{opacity:0;background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.history-item:hover .delete-btn{opacity:1}.delete-btn:hover{color:#ff4d4f;background:#ff4d4f1a}.empty-history{padding:20px;text-align:center;color:var(--text-muted);font-size:.85rem}body.light-theme .history-item:hover{background:#0000000d}.model-status{font-size:.65rem;background:var(--highlight);color:var(--text-muted);padding:2px 8px;border-radius:12px;border:1px solid var(--border-color);font-weight:700;text-transform:uppercase;letter-spacing:.05em;-webkit-user-select:none;user-select:none;display:flex;align-items:center;white-space:nowrap}.model-status.status-warning{color:#ff9800;background:#ff98001a;border-color:#ff98004d}.model-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--panel-bg);border:1px solid var(--border-color);border-radius:8px;padding:8px;width:280px;z-index:100;box-shadow:0 10px 30px #0000004d;animation:fadeIn .2s ease-out}.dropdown-label{font-size:.7rem;font-weight:600;color:var(--text-muted);padding:4px 8px 8px;text-transform:uppercase}.dropdown-item{padding:8px 12px;font-size:.8rem;color:var(--text-main);border-radius:4px;cursor:pointer;transition:all .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-item:hover{background:#ffffff0d;color:var(--accent-color)}.dropdown-item.active{background:#58a6ff1a;color:var(--accent-text);font-weight:600}.msg-action-bar{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:1.5rem!important;margin-top:1rem!important;padding:.25rem 0!important;width:100%!important;background:transparent!important}.msg-action-btn{background:none!important;border:none!important;padding:0!important;cursor:pointer!important;color:var(--text-secondary)!important;display:flex!important;align-items:center!important;gap:.5rem!important;font-size:.8rem!important;transition:all .2s ease!important;opacity:.8!important;box-shadow:none!important;outline:none!important;margin-bottom:.5rem!important}.msg-action-btn:hover{color:var(--text-primary)!important;opacity:1!important;background:transparent!important}.msg-action-btn span{font-weight:500!important}.msg-action-btn--kebab{padding:.25rem!important}.msg-action-bar>div{margin-left:auto!important}.msg-bubble-tools{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem;width:100%}.icon-btn{background:none!important;border:none!important;padding:.6rem!important;min-width:34px!important;min-height:34px!important;cursor:pointer!important;color:var(--text-muted)!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .15s ease-out!important;border-radius:50%!important;touch-action:manipulation!important}.icon-btn:hover{background-color:#ffffff0d!important;color:var(--text-primary)!important}.icon-btn.active{color:var(--accent-color)!important;background-color:#3b82f626!important;transform:scale(1.1);opacity:1!important}.description-container strong,.description-container b,.message-bubble.ai strong,.message-bubble.ai b{color:inherit!important;font-weight:700!important}.description-container h1,.description-container h2,.description-container h3,.description-container h4,.message-bubble.ai h1,.message-bubble.ai h2,.message-bubble.ai h3,.message-bubble.ai h4{color:var(--text-main)!important}:root{--accent-text: var(--text-main) !important}.custom-markdown-content pre,.message-bubble.ai pre{background:var(--code-bg)!important;border-radius:8px!important;border:1px solid var(--border-color)!important}.custom-markdown-content code,.message-bubble.ai code[class*=language-],.message-bubble.ai pre[class*=language-]{text-shadow:none!important;font-family:Fira Code,Courier New,Courier,monospace!important;color:var(--text-main)!important}.token.comment,.token.prolog,.token.doctype,.token.cdata,.token.punctuation{color:#8b949e!important}.token.namespace{opacity:.7!important}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#79c0ff!important}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#a5d6ff!important}.token.operator,.token.entity,.token.url,.token.variable{color:#c9d1d9!important}.token.atrule,.token.attr-value,.token.keyword{color:#ff7b72!important;font-weight:700!important}.token.function,.token.class-name{color:#d2a8ff!important}.token.regex,.token.important{color:#a5d6ff!important}body.light-theme .token.comment,body.light-theme .token.prolog,body.light-theme .token.doctype,body.light-theme .token.cdata,body.light-theme .token.punctuation{color:#666!important}body.light-theme .token.property,body.light-theme .token.tag,body.light-theme .token.boolean,body.light-theme .token.number,body.light-theme .token.constant,body.light-theme .token.symbol,body.light-theme .token.deleted{color:#1750eb!important}body.light-theme .token.selector,body.light-theme .token.attr-name,body.light-theme .token.string,body.light-theme .token.char,body.light-theme .token.builtin,body.light-theme .token.inserted{color:#067d17!important}body.light-theme .token.operator,body.light-theme .token.entity,body.light-theme .token.url,body.light-theme .token.variable{color:#000!important}body.light-theme .token.atrule,body.light-theme .token.attr-value,body.light-theme .token.keyword{color:#0033b3!important;font-weight:700!important}body.light-theme .token.function,body.light-theme .token.class-name{color:#00627a!important;font-weight:700!important}body.light-theme .token.regex,body.light-theme .token.important{color:#264eff!important}.token.important,.token.bold{font-weight:700!important}.token.italic{font-style:italic!important}.token.entity{cursor:help!important}.ai-controls .ai-input{padding-left:36px!important}.ai-input-wrapper{position:relative;flex:1;display:flex;align-items:center}.temp-control-minimal{position:absolute;left:8px;z-index:5;display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--bg-color);border:1px solid var(--border-color);border-radius:50%;color:var(--text-muted);font-weight:700;font-family:var(--font-mono);cursor:pointer;font-size:14px;transition:color .2s}.temp-control-minimal:hover{color:var(--accent-color)}.temp-select-hidden{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;cursor:pointer}
