:root{--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-tertiary:#f1f5f9;--text-primary:#1e293b;--text-secondary:#64748b;--text-tertiary:#94a3b8;--border-color:#e2e8f0;--border-subtle:#f1f5f9;--shadow-sm:#0000000d;--shadow-md:#00000014;--shadow-lg:#00000026;--brand-primary:#06c;--brand-secondary:#00a3e0;--brand-dark:#003b5c;--brand-accent:#6cc24a;--code-bg:#1e1e1e;--code-text:#d4d4d4}.dark-mode{--bg-primary:#1e293b;--bg-secondary:#0f172a;--bg-tertiary:#1e293b;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-tertiary:#94a3b8;--border-color:#334155;--border-subtle:#1e293b;--shadow-sm:#0000004d;--shadow-md:#0006;--shadow-lg:#00000080}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-secondary);color:#1e293b;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.5;margin:0;transition:background-color .3s ease,color .3s ease}code{font-family:Consolas,Monaco,SF Mono,Courier New,monospace}#root{height:100vh;overflow:hidden;width:100vw}html{scroll-behavior:smooth}::selection{background:#06c3;color:#1e293b;color:var(--text-primary)}::-moz-selection{background:#06c3;color:#1e293b;color:var(--text-primary)}:focus{outline:none}:focus-visible{outline:2px solid #06c;outline:2px solid var(--brand-primary);outline-offset:2px}button{cursor:pointer;font-family:inherit}button:disabled{cursor:not-allowed;opacity:.6}input,textarea{font-family:inherit;font-size:inherit}a{color:#06c;color:var(--brand-primary);text-decoration:none}a:hover{text-decoration:underline}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f1f5f9;background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:#e2e8f0;background:var(--border-color);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#94a3b8;background:var(--text-tertiary)}.visually-hidden{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.sidebar{background:linear-gradient(180deg,#001f3f,#003b5c);bottom:0;box-shadow:2px 0 8px #00000026;color:#fff;display:flex;flex-direction:column;left:0;position:fixed;top:0;transition:width .3s ease;width:280px;z-index:1000}.sidebar.collapsed{width:80px}.sidebar-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;gap:12px;justify-content:space-between;padding:24px 20px}.logo-container{align-items:center;display:flex;flex:1 1}.logo-text{display:flex;flex-direction:column}.logo-brand{color:#fff;font-size:1.5rem;font-weight:800;letter-spacing:-.5px}.logo-subtitle{color:#ffffffb3;font-size:.75rem;font-weight:500;letter-spacing:2px;margin-top:-4px}.logo-icon{color:#fff;font-size:1.75rem;font-weight:800}.sidebar-toggle{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1rem;height:32px;justify-content:center;transition:all .2s ease;width:32px}.sidebar-toggle:hover{background:#fff3;transform:scale(1.05)}.sidebar-nav{flex:1 1;overflow-y:auto;padding:16px 0}.nav-section{margin-bottom:24px;padding:0 12px}.nav-section-label{color:#ffffff80;font-size:.6875rem;font-weight:700;letter-spacing:1px;margin-bottom:8px;padding:0 8px;text-transform:uppercase}.nav-item{align-items:center;background:#0000;border:none;border-radius:8px;color:#fffc;cursor:pointer;display:flex;font-size:.9375rem;font-weight:500;gap:12px;margin-bottom:4px;padding:12px 16px;position:relative;transition:all .2s ease;width:100%}.nav-item:hover{background:#ffffff1a;color:#fff}.nav-item.active{background:#ffffff26;color:#fff;font-weight:600}.nav-item.active:before{background:#00a3e0;border-radius:0 2px 2px 0;content:"";height:60%;left:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.nav-item-primary{background:#00a3e026;border:1px solid #00a3e04d}.nav-item-primary:hover{background:#00a3e040;border-color:#00a3e080}.nav-item-accent{background:#10b98126;border:1px solid #10b9814d}.nav-item-accent:hover{background:#10b98140;border-color:#10b98180}.nav-item:disabled{cursor:not-allowed;opacity:.4}.nav-item:disabled:hover{background:#0000;color:#fff6}.nav-icon{flex-shrink:0;height:20px;width:20px}.nav-label{align-items:center;display:flex;flex:1 1;justify-content:space-between;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.nav-shortcut{background:#ffffff1a;border:1px solid #fff3;border-radius:4px;font-family:SF Mono,Consolas,monospace;font-size:.6875rem;font-weight:600;margin-left:8px;padding:2px 6px}.sidebar.collapsed .nav-item{justify-content:center;padding:12px}.sidebar.collapsed .nav-label{display:none}.sidebar-footer{border-top:1px solid #ffffff1a;margin-top:auto;padding:20px}.footer-info{display:flex;flex-direction:column;gap:4px}.footer-label{color:#ffffff80;font-size:.6875rem;letter-spacing:.5px;text-transform:uppercase}.footer-brand{color:#fff;font-size:.875rem;font-weight:600}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:#ffffff0d}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media (max-width:1024px){.sidebar:not(.collapsed){width:240px}}@media (max-width:768px){.sidebar{transform:translateX(-100%)}.sidebar.collapsed{transform:translateX(0)}}code[class*=language-],pre[class*=language-]{word-wrap:normal;background:none;color:#ccc;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;-webkit-hyphens:none;hyphens:none;line-height:1.5;tab-size:4;text-align:left;white-space:pre;word-break:normal;word-spacing:normal}pre[class*=language-]{margin:.5em 0;overflow:auto;padding:1em}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{border-radius:.3em;padding:.1em;white-space:normal}.token.block-comment,.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#999}.token.punctuation{color:#ccc}.token.attr-name,.token.deleted,.token.namespace,.token.tag{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.function,.token.number{color:#f08d49}.token.class-name,.token.constant,.token.property,.token.symbol{color:#f8c555}.token.atrule,.token.builtin,.token.important,.token.keyword,.token.selector{color:#cc99cd}.token.attr-value,.token.char,.token.regex,.token.string,.token.variable{color:#7ec699}.token.entity,.token.operator,.token.url{color:#67cdcc}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.message-bubble{animation:fadeInUp .4s ease-out;margin-bottom:32px;width:100%}.message-header{align-items:center;display:flex;font-size:.875rem;justify-content:space-between;margin-bottom:12px}.message-role{color:var(--text-primary);font-size:.875rem;font-weight:600;transition:color .3s ease}.message-time{color:var(--text-tertiary);font-size:.8125rem;transition:color .3s ease}.message-content{word-wrap:break-word;border-radius:12px;color:var(--text-primary);font-size:.9375rem;line-height:1.7;overflow-wrap:break-word;padding:24px;transition:all .3s ease}.user-message .message-content{background:linear-gradient(135deg,#06c,#0052a3);border:1px solid #ffffff1a;box-shadow:0 4px 12px #0066cc26;color:#fff;margin-left:auto;max-width:75%}.user-message .message-role{color:var(--text-primary);text-align:right}.user-message .message-content *{color:#fff}.assistant-message .message-content{background:var(--bg-primary);border:1px solid var(--border-color);box-shadow:0 1px 3px var(--shadow-sm);color:var(--text-primary);max-width:none;width:100%}.system-message{margin:24px 0;text-align:center}.system-text{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:20px;color:var(--text-secondary);display:inline-block;font-size:.8125rem;font-weight:500;padding:8px 16px;transition:all .3s ease}.error-message{background:#fef2f2!important;border-left:4px solid #ef4444!important;box-shadow:0 4px 12px #ef444426!important;color:#991b1b!important}.dark-mode .error-message{background:#7f1d1d!important;border-left:4px solid #ef4444!important;box-shadow:0 4px 12px #ef444440!important;color:#fecaca!important}.message-content h1,.message-content h2,.message-content h3,.message-content h4{color:var(--text-primary);font-weight:600;line-height:1.3;margin-bottom:12px;margin-top:24px;transition:color .3s ease}.message-content h1{font-size:1.75rem}.message-content h2{font-size:1.5rem}.message-content h3{font-size:1.25rem}.message-content h4{font-size:1.125rem}.message-content h1:first-child,.message-content h2:first-child,.message-content h3:first-child,.message-content h4:first-child{margin-top:0}.message-content p{color:var(--text-primary);line-height:1.7;margin:16px 0;transition:color .3s ease}.message-content p:first-child{margin-top:0}.message-content p:last-child{margin-bottom:0}.message-content ol,.message-content ul{margin:16px 0;padding-left:24px}.message-content li{color:var(--text-primary);line-height:1.6;margin:8px 0;transition:color .3s ease}.message-content strong{color:var(--text-primary);font-weight:600}.message-content a{border-bottom:1px solid #0000;color:var(--brand-primary);text-decoration:none;transition:border-color .2s ease}.message-content a:hover{border-bottom-color:var(--brand-primary)}.message-content code{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-family:Consolas,Monaco,SF Mono,Courier New,monospace;font-size:.875em;font-weight:500;padding:3px 6px;transition:all .3s ease}.user-message .message-content code{background:#fff3;border:1px solid #ffffff4d;color:#fff}.code-block-wrapper{border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 8px var(--shadow-md);margin:20px 0;overflow:hidden;position:relative;transition:all .3s ease}.code-block-header{align-items:center;background:#2d2d30;border-bottom:1px solid #3e3e42;display:flex;justify-content:space-between;padding:12px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.code-language{color:#ccc;font-family:Consolas,Monaco,monospace;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.copy-code-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:#ccc;cursor:pointer;display:flex;flex-shrink:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.8125rem;font-weight:500;gap:6px;padding:6px 12px;transition:all .2s ease;z-index:11}.copy-code-btn:hover{background:#ffffff26;border-color:#ffffff4d}.copy-code-btn:active{transform:scale(.98)}.copy-code-btn svg{flex-shrink:0;height:14px;width:14px}.message-content pre{background:#1e1e1e;font-size:.875rem;line-height:1.6;margin:0;overflow-x:auto;padding:16px 24px 16px 16px;position:relative}.message-content pre code{background:#0000;border:none;color:#d4d4d4;display:block;font-family:Consolas,Monaco,SF Mono,monospace;font-weight:400;padding:0;width:100%}.message-content pre::-webkit-scrollbar{height:8px}.message-content pre::-webkit-scrollbar-track{background:#252526}.message-content pre::-webkit-scrollbar-thumb{background:#424245;border-radius:4px}.message-content pre::-webkit-scrollbar-thumb:hover{background:#4e4e50}.message-sources{align-items:center;border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px;transition:border-color .3s ease}.sources-label{color:var(--text-secondary);font-size:.8125rem;font-weight:600;transition:color .3s ease}.source-tag{border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:.8125rem;font-weight:500;padding:4px 12px}.message-suggestions,.source-tag{background:var(--bg-tertiary);transition:all .3s ease}.message-suggestions{border:1px solid var(--border-color);border-radius:8px;margin-top:24px;padding:20px}.suggestions-label{color:var(--text-secondary);font-size:.875rem;font-weight:600;margin:0 0 12px;transition:color .3s ease}.suggestions-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.suggestion-btn{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 1px 2px var(--shadow-sm);color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;padding:12px 16px;text-align:left;transition:all .2s ease}.suggestion-btn:hover{background:var(--brand-primary);border-color:var(--brand-primary);box-shadow:0 4px 12px #06c3;color:#fff;transform:translateY(-2px)}.suggestion-btn:active{transform:translateY(0)}@media (max-width:768px){.message-bubble{margin-bottom:24px}.message-content{font-size:.9375rem;padding:16px}.user-message .message-content{max-width:85%}.suggestions-grid{grid-template-columns:1fr}.code-block-header{padding:10px 12px}.message-content pre{font-size:.8125rem;padding:12px 20px 12px 12px}.copy-code-btn{font-size:.75rem;padding:5px 10px}}.input-box{background:var(--bg-primary);border-top:1px solid var(--border-color);padding:20px 24px;transition:all .3s ease}.input-wrapper{align-items:flex-end;gap:12px}.message-input{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.9375rem;line-height:1.5;max-height:150px;min-height:48px;overflow-y:auto;padding:14px 16px;resize:none;transition:all .2s ease}.message-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px #0066cc14;outline:none}.message-input:disabled{background:var(--bg-tertiary);border-color:var(--border-color);cursor:not-allowed}.message-input::placeholder,.message-input:disabled{color:var(--text-tertiary)}.message-input::-webkit-scrollbar{width:6px}.message-input::-webkit-scrollbar-track{background:#0000}.message-input::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.message-input::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.send-button{align-items:center;background:linear-gradient(135deg,#06c,#0052a3);border:none;border-radius:10px;box-shadow:0 2px 8px #06c3;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:48px;justify-content:center;transition:all .2s ease;width:48px}.send-button svg{height:20px;width:20px}.send-button:hover:not(:disabled){background:linear-gradient(135deg,#0052a3,#003d7a);box-shadow:0 6px 16px #0066cc4d;transform:translateY(-2px)}.send-button:active:not(:disabled){box-shadow:0 2px 8px #06c3;transform:translateY(0)}.send-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.keyboard-hints{align-items:center;animation:fadeInUp .2s ease-out;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.8125rem;gap:8px;margin-top:12px;padding:8px 12px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.keyboard-hints .hint{align-items:center;display:flex;gap:4px;white-space:nowrap}.keyboard-hints .hint-separator{color:var(--text-tertiary);margin:0 4px;opacity:.5}.keyboard-hints kbd{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 1px 2px #0000000d;color:var(--text-primary);font-family:SF Mono,Consolas,Monaco,monospace;font-size:.75rem;font-weight:600;padding:2px 6px;transition:all .3s ease}@media (max-width:768px){.input-box{padding:16px}.input-wrapper{gap:10px}.message-input{font-size:16px;min-height:44px;padding:12px 14px}.send-button{height:44px;width:44px}.send-button svg{height:18px;width:18px}.keyboard-hints{font-size:.75rem;margin-top:10px;padding:6px 10px}.keyboard-hints kbd{font-size:.7rem;padding:1px 5px}}@media (max-width:480px){.keyboard-hints{align-items:flex-start;flex-direction:column;gap:6px}.keyboard-hints .hint-separator{display:none}.keyboard-hints .hint{font-size:.7rem}}.dark-mode .keyboard-hints{background:#ffffff0d;border-color:var(--border-color)}.dark-mode .keyboard-hints kbd{background:#ffffff14;border-color:#ffffff1a;box-shadow:0 1px 2px #0003}.theme-toggle{align-items:center;background:#ffffff26;border:1px solid #ffffff40;border-radius:8px;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;padding:0;transition:all .2s ease;width:40px}.theme-toggle:hover{background:#ffffff40;border-color:#ffffff59;transform:scale(1.05)}.theme-toggle:active{transform:scale(.95)}.theme-toggle svg{height:20px;transition:transform .3s ease;width:20px}.theme-toggle:hover svg{transform:rotate(20deg)}@media (max-width:768px){.theme-toggle{height:36px;width:36px}.theme-toggle svg{height:18px;width:18px}}.progress-tracker{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px var(--shadow-sm);margin-bottom:32px;padding:24px 32px;transition:all .3s ease}.progress-stages{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:900px}.progress-stage{align-items:center;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:12px;position:relative;transition:all .2s ease}.stage-indicator{align-items:center;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:50%;color:var(--text-tertiary);display:flex;font-size:.875rem;font-weight:600;height:44px;justify-content:center;transition:all .3s ease;width:44px}.stage-number{display:block}.stage-label{color:var(--text-secondary);font-size:.875rem;font-weight:500;text-align:center;transition:all .3s ease;white-space:nowrap}.progress-stage.completed .stage-indicator{background:#10b981;border-color:#10b981;color:#fff}.progress-stage.completed .stage-label{color:var(--text-primary);font-weight:600}.progress-stage.current .stage-indicator{background:var(--brand-primary);border-color:var(--brand-primary);box-shadow:0 0 0 4px #0066cc1a;color:#fff;transform:scale(1.1)}.progress-stage.current .stage-label{color:var(--brand-primary);font-weight:700}.progress-stage.upcoming .stage-indicator{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-tertiary)}.progress-stage.upcoming .stage-label{color:var(--text-tertiary)}.progress-stage:hover .stage-indicator{transform:scale(1.05)}.progress-stage.current:hover .stage-indicator{transform:scale(1.15)}.progress-connector{flex:1 1;height:2px;margin:0 8px 36px;position:relative}.connector-line{background:var(--border-color);border-radius:2px;height:100%;position:relative;transition:all .5s ease}.progress-connector.completed .connector-line{background:#10b981}.progress-connector.completed .connector-line:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#10b9814d,#0000);content:"";height:100%;left:0;position:absolute;top:0;width:100%}@media (max-width:1024px){.progress-tracker{padding:20px 24px}.stage-indicator{height:40px;width:40px}.stage-indicator,.stage-label{font-size:.8125rem}}@media (max-width:768px){.progress-tracker{overflow-x:auto;padding:16px 20px}.progress-stages{min-width:600px}.stage-indicator{height:36px;width:36px}.stage-label{font-size:.75rem}.progress-connector{margin:0 4px 32px}}.dark-mode .progress-tracker{background:var(--bg-primary);border-color:var(--border-color)}.dark-mode .stage-indicator{background:#ffffff0d;border-color:var(--border-color)}.dark-mode .progress-stage.current .stage-indicator{box-shadow:0 0 0 4px #0ea5e926}.dark-mode .connector-line{background:var(--border-color)}.guided-tour{animation:fadeIn .4s ease-out}.tour-welcome{align-items:center;display:flex;justify-content:center;min-height:500px;padding:40px 20px}.tour-welcome-content{max-width:600px;text-align:center}.tour-welcome-content h2{color:var(--text-primary);font-size:2rem;font-weight:700;line-height:1.2;margin:0 0 16px;transition:color .3s ease}.tour-welcome-content p{color:var(--text-secondary);font-size:1.125rem;line-height:1.6;margin:0 0 32px;transition:color .3s ease}.tour-welcome-options{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.tour-btn{border:none;border-radius:8px;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:600;padding:14px 32px;transition:all .2s ease}.tour-btn-primary{background:linear-gradient(135deg,#06c,#0052a3);box-shadow:0 4px 12px #06c3;color:#fff}.tour-btn-primary:hover{box-shadow:0 6px 20px #0066cc4d;transform:translateY(-2px)}.tour-btn-primary:active{transform:translateY(0)}.tour-btn-secondary{background:var(--bg-primary);border:2px solid var(--border-color);color:var(--text-primary)}.tour-btn-secondary:hover{background:var(--bg-tertiary);border-color:var(--brand-primary)}.tour-stage-content{animation:slideIn .4s ease-out;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px var(--shadow-sm);padding:32px;transition:all .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.tour-stage-header{border-bottom:2px solid var(--border-color);margin-bottom:24px;padding-bottom:20px}.tour-stage-number{color:var(--brand-primary);font-size:.875rem;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.tour-stage-title{color:var(--text-primary);font-size:1.75rem;font-weight:700;line-height:1.2;margin:0;transition:color .3s ease}.tour-stage-body{line-height:1.7;margin-bottom:32px}.tour-section-title{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:24px 0 12px;transition:color .3s ease}.tour-section-title:first-child{margin-top:0}.tour-paragraph{color:var(--text-primary);font-size:1rem;margin:16px 0;transition:color .3s ease}.tour-list{margin:16px 0;padding-left:24px}.tour-list li{color:var(--text-primary);font-size:1rem;line-height:1.6;margin:8px 0;transition:color .3s ease}.tour-list li::marker{color:var(--brand-primary)}.tour-stage-actions{border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:12px;padding-top:24px}.tour-action-btn{border:none;border-radius:8px;cursor:pointer;font-family:inherit;font-size:.9375rem;font-weight:600;padding:12px 24px;transition:all .2s ease;white-space:nowrap}.tour-action-btn.primary{background:linear-gradient(135deg,#06c,#0052a3);box-shadow:0 2px 8px #06c3;color:#fff;flex:1 1;min-width:200px}.tour-action-btn.primary:hover{box-shadow:0 4px 12px #0066cc4d;transform:translateY(-2px)}.tour-action-btn.primary:active{transform:translateY(0)}.tour-action-btn.secondary{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.tour-action-btn.secondary:hover{background:var(--bg-secondary);border-color:var(--brand-primary);color:var(--brand-primary)}.tour-action-btn.tertiary{background:#0000;border:1px solid var(--border-color);color:var(--text-secondary)}.tour-action-btn.tertiary:hover{background:var(--bg-tertiary);color:var(--text-primary)}@media (max-width:768px){.tour-welcome-content h2{font-size:1.5rem}.tour-welcome-content p{font-size:1rem}.tour-btn{font-size:.9375rem;padding:12px 24px}.tour-stage-content{padding:24px 20px}.tour-stage-title{font-size:1.5rem}.tour-stage-actions{flex-direction:column}.tour-action-btn{width:100%}.tour-action-btn.primary{min-width:0}}@media (max-width:480px){.tour-welcome{min-height:400px;padding:20px}.tour-welcome-content h2{font-size:1.375rem}.tour-stage-content{padding:20px 16px}.tour-stage-title{font-size:1.25rem}.tour-section-title{font-size:1rem}.tour-list li,.tour-paragraph{font-size:.9375rem}}.dark-mode .tour-stage-content{background:var(--bg-primary);border-color:var(--border-color)}.dark-mode .tour-btn-secondary{background:#ffffff0d;border-color:var(--border-color)}.dark-mode .tour-btn-secondary:hover{background:#ffffff1a}.dark-mode .tour-action-btn.secondary{background:#ffffff0d}.dark-mode .tour-action-btn.secondary:hover{background:#ffffff1a}.dark-mode .tour-action-btn.tertiary{background:#0000}.dark-mode .tour-action-btn.tertiary:hover{background:#ffffff0d}.loading-state{animation:fadeIn .3s ease-out;margin-bottom:32px;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.skeleton-message-bubble{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 1px 3px var(--shadow-sm);padding:24px;transition:all .3s ease}.skeleton-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.skeleton-avatar{border-radius:50%;height:32px;width:32px}.skeleton-avatar,.skeleton-name{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--bg-tertiary) 0,var(--bg-secondary) 50%,var(--bg-tertiary) 100%);background-size:200% 100%}.skeleton-name{border-radius:4px;height:14px;width:100px}.skeleton-content{display:flex;flex-direction:column;gap:12px}.skeleton-line{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--bg-tertiary) 0,var(--bg-secondary) 50%,var(--bg-tertiary) 100%);background-size:200% 100%;border-radius:4px;height:14px}.skeleton-line-long{animation-delay:0s;width:100%}.skeleton-line-medium{animation-delay:.1s;width:85%}.skeleton-line-short{animation-delay:.2s;width:60%}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.loading-message{color:var(--text-secondary);font-size:.875rem;font-weight:500;gap:12px;margin-top:16px;padding-left:24px;transition:color .3s ease}.loading-message,.typing-dots{align-items:center;display:flex}.typing-dots{gap:4px}.typing-dots span{animation:typingDot 1.4s ease-in-out infinite;background:var(--brand-primary);border-radius:50%;height:6px;width:6px}.typing-dots span:first-child{animation-delay:0s}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1.2)}}.dark-mode .skeleton-message-bubble{background:var(--bg-primary);border-color:var(--border-color)}.dark-mode .skeleton-avatar,.dark-mode .skeleton-line,.dark-mode .skeleton-name{background:linear-gradient(90deg,#ffffff0d,#ffffff1a 50%,#ffffff0d);background-size:200% 100%}@media (max-width:768px){.skeleton-message-bubble{padding:16px}.skeleton-avatar{height:28px;width:28px}.skeleton-name{height:12px;width:80px}.skeleton-line{height:12px}.skeleton-content{gap:10px}.loading-message{font-size:.8125rem;padding-left:16px}.typing-dots span{height:5px;width:5px}}.dashboard{background:var(--bg-secondary);display:flex;height:100vh;overflow:hidden;transition:background-color .3s ease;width:100vw}.dashboard-main{background:var(--bg-primary);display:flex;flex:1 1;flex-direction:column;margin-left:280px;position:relative;transition:margin-left .3s ease}.dashboard-main.sidebar-collapsed{margin-left:80px}.dashboard-header{align-items:center;background:linear-gradient(135deg,#003b5c,#06c);border-bottom:1px solid #ffffff1a;box-shadow:0 2px 8px var(--shadow-sm);color:#fff;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 32px}.dark-mode .dashboard-header{background:linear-gradient(135deg,#1a1a2e,#16213e);border-bottom:1px solid #ffffff26}.header-left{align-items:center;display:flex;gap:16px}.header-left h1{color:#fff;font-size:1.375rem;font-weight:600;letter-spacing:-.025em;margin:0}.status-badge{align-items:center;background:#ffffff26;border:1px solid #fff3;border-radius:20px;color:#fff;display:flex;font-size:.8125rem;font-weight:500;gap:8px;padding:6px 14px}.status-dot{animation:pulse 2s infinite;background:#10b981;border-radius:50%;box-shadow:0 0 8px #10b98199;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.header-right{align-items:center;display:flex;gap:16px}.dashboard-content{background:var(--bg-secondary);flex:1 1;overflow-x:hidden;overflow-y:auto;padding:0;scroll-behavior:smooth;transition:background-color .3s ease}.messages-container{margin:0 auto;max-width:1100px;min-height:100%;padding:40px 32px}.dashboard-content::-webkit-scrollbar{width:10px}.dashboard-content::-webkit-scrollbar-track{background:var(--bg-tertiary)}.dashboard-content::-webkit-scrollbar-thumb{background:var(--border-color);border:2px solid var(--bg-tertiary);border-radius:5px}.dashboard-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.dashboard-footer{background:var(--bg-primary);border-top:1px solid var(--border-color);box-shadow:0 -2px 8px var(--shadow-sm);flex-shrink:0;padding:0;transition:background-color .3s ease,border-color .3s ease}.dashboard-footer .input-box{border-top:none;margin:0 auto;max-width:1100px}@media (max-width:1024px){.dashboard-main{margin-left:80px}.messages-container{max-width:100%;padding:32px 24px}.dashboard-header{padding:18px 24px}.header-left h1{font-size:1.25rem}.header-right{gap:12px}}@media (max-width:768px){.dashboard-main{margin-left:0}.dashboard-header{flex-wrap:wrap;gap:12px;padding:16px 20px}.header-left{gap:12px}.header-left h1{font-size:1.125rem}.status-badge{font-size:.75rem;padding:5px 12px}.header-right{gap:10px}.messages-container{padding:24px 16px}.dashboard-footer .input-box{padding:16px}}@media (max-width:480px){.header-left{align-items:flex-start;flex-direction:column;gap:8px}.header-right{gap:8px;justify-content:flex-end;width:100%}.messages-container{padding:20px 12px}}.dashboard-header *{color:#fff}.dark-mode .dashboard-header .status-badge,.dark-mode .dashboard-header h1{color:#fffffff2}.header-right button,.header-right select{min-height:36px}.dashboard-content{-webkit-overflow-scrolling:touch;will-change:scroll-position}.message-bubble{will-change:transform,opacity}.App{height:100vh;margin:0;overflow:hidden;padding:0;width:100%}.app-header{display:none}:root{--lfc-primary:#06c;--lfc-secondary:#00a3e0;--lfc-dark:#003b5c;--lfc-accent:#6cc24a;--lfc-light-bg:#f8fafc;--lfc-white:#fff;--lfc-text:#1e293b;--lfc-text-light:#64748b;--lfc-border:#e2e8f0;--lfc-grey-light:#f1f5f9;--lfc-grey-medium:#e2e8f0}*{box-sizing:border-box;margin:0;padding:0}body{background:#f8fafc;min-height:100vh;overflow:hidden}.input-wrapper{align-items:center;display:flex;gap:10px}.chat-input input,input[type=text]{background:#fff;background:var(--lfc-white);border:2px solid #e2e8f0;border:2px solid var(--lfc-border);border-radius:10px;color:#1e293b;color:var(--lfc-text);flex:1 1;font-size:1rem;padding:12px 16px;transition:all .2s ease}.chat-input input:focus,input[type=text]:focus{border-color:#06c;border-color:var(--lfc-primary);box-shadow:0 0 0 3px #0066cc1a;outline:none}.chat-input input::placeholder,input[type=text]::placeholder{color:#64748b;color:var(--lfc-text-light)}.send-btn{background:#06c;background:var(--lfc-primary);border:none;border-radius:10px;box-shadow:0 2px 8px #06c3;color:#fff;color:var(--lfc-white);cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:all .2s ease}.send-btn:hover:not(:disabled){background:#00a3e0;background:var(--lfc-secondary);box-shadow:0 4px 12px #0066cc4d;transform:translateY(-2px)}.send-btn:active:not(:disabled){transform:translateY(0)}.send-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.input-wrapper{flex-direction:column}.send-btn{width:100%}}
/*# sourceMappingURL=main.c9f9d43e.css.map*/