body{background-color:var(--bg);color:var(--text)}.surface,.card,.panel{background-color:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow)}.surface-elevated{background-color:var(--surface-elevated);box-shadow:var(--shadow-lg)}.surface-subtle{background-color:var(--surface-subtle)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-disabled{color:var(--text-disabled)}.border{border-color:var(--border)}.border-subtle{border-color:var(--border-subtle)}.border-strong{border-color:var(--border-strong)}.divider{border-color:var(--divider)}.brand{color:var(--brand)}.bg-brand{background-color:var(--brand)}.bg-brand-light{background-color:var(--brand-light)}.brand-2{color:var(--brand-2)}.bg-brand-2{background-color:var(--brand-2)}.bg-brand-2-light{background-color:var(--brand-2-light)}.success{color:var(--success)}.bg-success{background-color:var(--success)}.bg-success-light{background-color:var(--success-light)}.warning{color:var(--warning)}.bg-warning{background-color:var(--warning)}.bg-warning-light{background-color:var(--warning-light)}.danger{color:var(--danger)}.bg-danger{background-color:var(--danger)}.bg-danger-light{background-color:var(--danger-light)}.info{color:var(--info)}.bg-info{background-color:var(--info)}.bg-info-light{background-color:var(--info-light)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow{box-shadow:var(--shadow)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.btn-brand{background-color:var(--brand);color:#fff;border:none}.btn-brand:hover{background-color:var(--brand-hover)}.btn-brand:active{background-color:var(--brand-active)}.btn-brand-2{background-color:var(--brand-2);color:#fff;border:none}.btn-brand-2:hover{background-color:var(--brand-2-hover)}a{color:var(--brand)}a:hover{color:var(--brand-hover)}input,textarea,select{background-color:var(--surface);border:1px solid var(--border);color:var(--text)}input:focus,textarea:focus,select:focus{border-color:var(--brand);outline:2px solid var(--brand-light);outline-offset:2px}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px}.card-elevated{box-shadow:var(--shadow-lg)}@media (max-width: 768px){:root{--container-padding: 1rem}}@media (max-width: 480px){:root{--container-padding: .75rem}}:root{--chat-primary: #6366f1;--chat-primary-dark: #4f46e5;--chat-primary-light: #818cf8;--chat-accent: #a855f7;--chat-bg: #0f0f1a;--chat-surface: rgba(255, 255, 255, .05);--chat-border: rgba(255, 255, 255, .1);--chat-text: #ffffff;--chat-text-muted: rgba(255, 255, 255, .7);--chat-success: #10b981;--chat-gradient: linear-gradient(135deg, #6366f1, #a855f7)}.sol-chatbot{position:fixed;bottom:24px;right:24px;z-index:9999;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.chat-toggle{position:relative;width:60px;height:60px;border-radius:50%;background:var(--chat-gradient);border:none;cursor:pointer;box-shadow:0 4px 20px #6366f166,0 0 40px #6366f133;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.chat-toggle:hover{transform:scale(1.1);box-shadow:0 6px 30px #6366f180,0 0 60px #6366f14d}.chat-toggle-icon{position:relative;width:28px;height:28px}.chat-toggle-icon svg{position:absolute;top:0;left:0;width:100%;height:100%;color:#fff;transition:all .3s ease}.chat-icon{opacity:1;transform:scale(1)}.close-icon,.sol-chatbot.open .chat-icon{opacity:0;transform:scale(.5)}.sol-chatbot.open .close-icon{opacity:1;transform:scale(1)}.chat-badge{position:absolute;top:-4px;right:-4px;width:22px;height:22px;background:#ef4444;color:#fff;font-size:12px;font-weight:600;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--chat-bg);animation:badgePulse 2s infinite}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.chat-window{position:absolute;bottom:80px;right:0;width:400px;height:600px;background:var(--chat-bg);border-radius:20px;box-shadow:0 20px 60px #00000080,0 0 1px #ffffff1a inset;border:1px solid var(--chat-border);display:flex;flex-direction:column;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(20px) scale(.95);transition:all .3s cubic-bezier(.4,0,.2,1)}.sol-chatbot.open .chat-window{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.chat-header{padding:16px 20px;background:linear-gradient(135deg,#6366f133,#a855f733);border-bottom:1px solid var(--chat-border);display:flex;align-items:center;justify-content:space-between}.chat-header-info{display:flex;align-items:center;gap:12px}.chat-avatar{width:44px;height:44px;border-radius:12px;background:#ffffff1a;display:flex;align-items:center;justify-content:center;padding:8px}.chat-avatar img{width:100%;height:100%;object-fit:contain}.chat-header-text{display:flex;flex-direction:column;gap:2px}.chat-title{font-size:16px;font-weight:600;color:var(--chat-text)}.chat-status{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--chat-text-muted)}.status-dot{width:8px;height:8px;background:var(--chat-success);border-radius:50%;animation:statusPulse 2s infinite}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.5}}.chat-minimize{width:36px;height:36px;border:none;background:#ffffff0d;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.chat-minimize:hover{background:#ffffff1a}.chat-minimize svg{width:18px;height:18px;color:var(--chat-text-muted)}.chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;scroll-behavior:smooth}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#fff3}.chat-message{display:flex;gap:12px;max-width:85%;animation:messageIn .3s ease}@keyframes messageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.chat-message.bot{align-self:flex-start}.message-avatar{width:32px;height:32px;border-radius:8px;background:#6366f133;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:4px}.message-avatar img{width:100%;height:100%;object-fit:contain}.message-content{display:flex;flex-direction:column;gap:4px}.message-text{padding:12px 16px;border-radius:16px;font-size:14px;line-height:1.6;color:var(--chat-text)}.chat-message.bot .message-text{background:var(--chat-surface);border:1px solid var(--chat-border);border-top-left-radius:4px}.chat-message.user .message-text{background:var(--chat-gradient);border-top-right-radius:4px}.message-text .bullet{color:var(--chat-primary-light);margin-right:4px}.message-text .check,.message-text .cross{margin-right:4px}.message-text strong{color:var(--chat-primary-light)}.message-time{font-size:11px;color:var(--chat-text-muted);opacity:.6;padding:0 4px}.chat-message.user .message-time{text-align:right}.typing-indicator .message-content{padding:0}.typing-dots{display:flex;gap:4px;padding:16px 20px;background:var(--chat-surface);border:1px solid var(--chat-border);border-radius:4px 16px 16px}.typing-dots span{width:8px;height:8px;background:var(--chat-primary-light);border-radius:50%;animation:typingBounce 1.4s infinite ease-in-out}.typing-dots span:nth-child(1){animation-delay:0s}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.chat-suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:0 20px 16px}.suggestion-btn{padding:8px 14px;font-size:13px;font-weight:500;color:var(--chat-primary-light);background:#6366f11a;border:1px solid rgba(99,102,241,.3);border-radius:20px;cursor:pointer;transition:all .2s}.suggestion-btn:hover{background:#6366f133;border-color:var(--chat-primary-light);transform:translateY(-2px)}.chat-input-area{padding:16px 20px;background:#0000004d;border-top:1px solid var(--chat-border);display:flex;gap:12px}.chat-input{flex:1;padding:12px 16px;font-size:14px;color:var(--chat-text);background:var(--chat-surface);border:1px solid var(--chat-border);border-radius:12px;outline:none;transition:all .2s}.chat-input::placeholder{color:var(--chat-text-muted);opacity:.5}.chat-input:focus{border-color:var(--chat-primary);box-shadow:0 0 0 3px #6366f133}.chat-send{width:44px;height:44px;border:none;background:var(--chat-gradient);border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.chat-send:hover{transform:scale(1.05);box-shadow:0 4px 15px #6366f166}.chat-send svg{width:20px;height:20px;color:#fff}@media (max-width: 480px){.sol-chatbot{bottom:16px;right:16px}.chat-window{position:fixed;bottom:0;right:0;left:0;width:100%;height:100%;border-radius:0;max-height:100vh}.sol-chatbot.open .chat-toggle{display:none}.chat-header{padding:12px 16px}.chat-messages{padding:16px}.chat-suggestions{padding:0 16px 12px}.chat-input-area{padding:12px 16px}}@media (max-width: 480px){.sol-chatbot.open .chat-window{animation:mobileSlideUp .3s ease}@keyframes mobileSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}}.chat-toggle:before{content:"";position:absolute;inset:-4px;border-radius:50%;background:var(--chat-gradient);opacity:0;z-index:-1;animation:togglePulse 3s infinite}@keyframes togglePulse{0%,to{transform:scale(1);opacity:0}50%{transform:scale(1.2);opacity:.3}}.chat-window:before{content:"";position:absolute;top:0;left:0;right:0;height:200px;background:linear-gradient(180deg,rgba(99,102,241,.1) 0%,transparent 100%);pointer-events:none}.scroll-progress-bar{position:fixed;top:0;left:0;width:100%;height:4px;background:#0f172a26;z-index:999999;pointer-events:none}.scroll-progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6,#a78bfa);width:0%;transition:width .1s ease-out;box-shadow:0 2px 15px #6366f199}.back-to-top-btn{position:fixed;bottom:2rem;right:2rem;width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 30px #6366f180,0 0 0 1px #ffffff1a inset;z-index:99999;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s cubic-bezier(.4,0,.2,1)}.back-to-top-btn.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top-btn{opacity:1!important;visibility:visible!important;transform:translateY(0)!important}.back-to-top-btn:hover{transform:translateY(-4px);box-shadow:0 6px 30px #6366f199}.back-to-top-btn:active{transform:translateY(-2px)}.back-to-top-btn svg{width:24px;height:24px}.quick-nav-toc{position:fixed;bottom:6rem;right:2rem;z-index:99998}.quick-nav-toggle{width:56px;height:56px;border-radius:16px;background:#6366f126;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(99,102,241,.4);color:#6366f1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 30px #6366f14d,0 0 0 1px #ffffff1a inset;position:relative}.quick-nav-toggle:hover{background:#6366f126;border-color:#6366f180;transform:scale(1.05)}.quick-nav-toggle svg{width:22px;height:22px;transition:all .3s ease}.quick-nav-toggle .icon-close{position:absolute;opacity:0;transform:rotate(-90deg)}.quick-nav-toc.open .quick-nav-toggle .icon-menu{opacity:0;transform:rotate(90deg)}.quick-nav-toc.open .quick-nav-toggle .icon-close{opacity:1;transform:rotate(0)}.quick-nav-menu{position:absolute;bottom:100%;right:0;margin-bottom:1rem;width:260px;background:#fffffffa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;box-shadow:0 20px 60px #0003,0 0 0 1px #0000000d;padding:1rem;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s cubic-bezier(.4,0,.2,1);max-height:500px;overflow-y:auto;z-index:999999}.quick-nav-toc.open .quick-nav-menu{opacity:1;visibility:visible;transform:translateY(0)}.quick-nav-header{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#64748b;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid rgba(0,0,0,.06)}.quick-nav-list{display:flex;flex-direction:column;gap:.25rem}.quick-nav-item{display:block;padding:.75rem 1rem;color:#475569;text-decoration:none;font-size:.9375rem;font-weight:500;border-radius:8px;transition:all .2s ease;position:relative}.quick-nav-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:linear-gradient(180deg,#6366f1,#8b5cf6);border-radius:2px;transition:height .2s ease}.quick-nav-item:hover{background:#6366f114;color:#6366f1;padding-left:1.5rem}.quick-nav-item:hover:before{height:60%}.quick-nav-item.active{background:#6366f11f;color:#6366f1;font-weight:600;padding-left:1.5rem}.quick-nav-item.active:before{height:80%}@media (prefers-color-scheme: dark){.quick-nav-menu{background:#0f172afa;box-shadow:0 20px 60px #0006,0 0 0 1px #ffffff1a}.quick-nav-header{color:#fff9;border-bottom-color:#ffffff1a}.quick-nav-item{color:#fffc}.quick-nav-item:hover,.quick-nav-item.active{background:#6366f126;color:#c4b5fd}.quick-nav-toggle{background:#6366f11f;color:#c4b5fd}}@media (max-width: 1024px){.back-to-top-btn{bottom:6rem;right:1.5rem;width:52px;height:52px}.quick-nav-toc{bottom:10rem;right:1.5rem}}@media (max-width: 768px){.back-to-top-btn{bottom:6.5rem;right:1rem;width:48px;height:48px}.back-to-top-btn svg{width:22px;height:22px}.quick-nav-toc{bottom:10.5rem;right:1rem}.quick-nav-toggle{width:48px;height:48px}.quick-nav-toggle svg{width:20px;height:20px}.quick-nav-menu{width:240px;max-height:400px}.quick-nav-item{font-size:.875rem;padding:.625rem .875rem}}@media (max-width: 480px){.quick-nav-menu{width:calc(100vw - 3rem);right:auto;left:50%;transform:translate(-50%) translateY(20px)}.quick-nav-toc.open .quick-nav-menu{transform:translate(-50%) translateY(0)}}.quick-nav-menu::-webkit-scrollbar{width:6px}.quick-nav-menu::-webkit-scrollbar-track{background:#0000000d;border-radius:3px}.quick-nav-menu::-webkit-scrollbar-thumb{background:#6366f14d;border-radius:3px}.quick-nav-menu::-webkit-scrollbar-thumb:hover{background:#6366f180}html{scroll-behavior:smooth}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.back-to-top-btn:focus,.quick-nav-toggle:focus,.quick-nav-item:focus{outline:2px solid #6366f1;outline-offset:2px}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.back-to-top-btn,.quick-nav-menu,.quick-nav-item{transition:none}}
