:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--primary-color: #0883f6;--bg-color: #fff;--bg-secondary-color: #f0f0f0;--fg-color: #000;--fg-secondary-color: #666;--df-border: 1px solid #e0e0e0;--chat-bg-color: #f0f2f5;--chat-pattern-color: rgba(0, 0, 0, .02);--msg-outgoing-bg: #d9fdd3;--msg-outgoing-text: #111b21;--msg-incoming-bg: #ffffff;--msg-incoming-text: #111b21;--msg-time-color: rgba(17, 27, 33, .5);--msg-shadow: rgba(11, 20, 26, .13);--date-separator-bg: rgba(255, 255, 255, .9);--hover-overlay: rgba(0, 0, 0, .05);--scrollbar-width: 6px;--scrollbar-track: transparent;--scrollbar-thumb: #cbd5e0;--scrollbar-thumb-hover: #a0aec0;--bg-primary: var(--bg-color);--text-primary: var(--fg-color);--bg-secondary: var(--bg-secondary-color);--text-secondary: var(--fg-secondary-color);--bg-tertiary: var(--bg-secondary-color);--accent-primary: var(--primary-color);--border-color: #e0e0e0;--danger: #ef4444;--text-tertiary: #999}[data-theme=dark]{--primary-color: #3b9eff;--bg-color: #1a1a1a;--bg-secondary-color: #2d2d2d;--fg-color: #fff;--fg-secondary-color: #a0a0a0;--df-border: 1px solid #3d3d3d;--border-color: #3d3d3d;--bg-tertiary: #1f1f1f;--chat-bg-color: #0b141a;--chat-pattern-color: rgba(255, 255, 255, .02);--msg-outgoing-bg: #005c4b;--msg-outgoing-text: #e9edef;--msg-incoming-bg: #202c33;--msg-incoming-text: #e9edef;--msg-time-color: rgba(233, 237, 239, .6);--msg-shadow: rgba(0, 0, 0, .3);--date-separator-bg: rgba(32, 44, 51, .95);--hover-overlay: rgba(255, 255, 255, .05);--scrollbar-thumb: #4a5568;--scrollbar-thumb-hover: #718096}input,textarea,select{background-color:var(--bg-color);color:var(--fg-color)}input:hover,textarea:hover,select:hover,input:focus,textarea:focus,select:focus{background-color:var(--bg-color);color:var(--fg-color)}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--bg-color) inset!important;-webkit-text-fill-color:var(--fg-color)!important;transition:background-color 5000s ease-in-out 0s}[data-theme=dark] input:-webkit-autofill,[data-theme=dark] input:-webkit-autofill:hover,[data-theme=dark] input:-webkit-autofill:focus,[data-theme=dark] input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--bg-color) inset!important;-webkit-text-fill-color:var(--fg-color)!important}html{font-size:14px;height:100%;max-height:100vh;overflow:hidden;scroll-behavior:smooth}*{padding:0;margin:0;box-sizing:border-box}body{color:var(--fg-color);background-color:var(--bg-color);height:100%;max-height:100vh;overflow:hidden}#root{height:100%;max-height:100vh;overflow:hidden}a,span,button{display:inline-block;text-decoration:none;outline:none;border:none;background-color:transparent;color:inherit}a,button{cursor:pointer}ul{list-style:none;padding:0;margin:0}.svg-font-icon{display:inline-flex;justify-content:center;align-items:center;translate:0 1px}*[data-tooltip]{position:relative}*[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-8px);background-color:var(--fg-color);color:var(--bg-color);padding:.5rem;border:var(--df-border);border-radius:.25rem;z-index:999999;white-space:nowrap;font-size:.875rem;font-weight:400;line-height:1.25;letter-spacing:.01em;text-align:center;width:fit-content;max-width:150px;overflow:hidden;pointer-events:none;opacity:1;box-shadow:0 4px 6px #0000001a;transition:.2s all ease-in-out}*[data-tooltip][data-hide-tooltip=true]:before{display:none}*[data-tooltip]:not(:hover):before{opacity:0}*[data-tooltip][data-tooltip-position=top]:before{inset:auto auto 100% 50%;transform:translate(-50%) translateY(-8px)}*[data-tooltip][data-tooltip-position=bottom]:before{inset:100% auto auto 50%;transform:translate(-50%) translateY(8px)}*[data-tooltip][data-tooltip-position=start]:before{inset:50% 100% auto auto;transform:translateY(-50%) translate(-8px)}*[data-tooltip][data-tooltip-position=end]:before{inset:50% auto auto 100%;transform:translateY(-50%) translate(8px)}.slide-Up{animation:SlideUp .6s ease-in-out}.slide-Down{animation:SlideDown .6s ease-in-out}@keyframes SlideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes SlideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:var(--scrollbar-width);height:var(--scrollbar-width)}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:99px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.toast-container{position:fixed;top:1rem;right:1rem;z-index:10000;display:flex;flex-direction:column;gap:.75rem;pointer-events:none}.toast{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:var(--bg-color);border:var(--df-border);border-radius:.75rem;box-shadow:0 4px 12px #0000001a;min-width:300px;max-width:400px;pointer-events:auto;animation:toastSlideIn .3s ease-out}.toast-exit{animation:toastSlideOut .3s ease-out forwards}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.toast-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;border-radius:50%}.toast-success .toast-icon{color:#10b981}.toast-error .toast-icon{color:#ef4444}.toast-warning .toast-icon{color:#f59e0b}.toast-info .toast-icon{color:var(--primary-color)}.toast-message{flex:1;font-size:.875rem;color:var(--fg-color);line-height:1.4;word-break:break-word}.toast-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:.375rem;flex-shrink:0;color:var(--fg-color);opacity:.6;transition:all .2s;cursor:pointer}.toast-close:hover{opacity:1;background-color:var(--bg-secondary-color)}.svg-font-icon{display:inline-block}.svg_modifier_style{fill:currentColor;stroke:currentColor}.svg_modifier_style_stroke *{stroke:inherit;fill:none}.svg_modifier_style_fill *{fill:inherit;stroke:none}.svg_modifier_style_both *{stroke:inherit;fill:inherit}.loading-spinner-container{background:var(--loading-bg, transparent)}.loading-spinner{border:4px solid var(--loading-track, #f3f3f3);border-top:4px solid var(--loading-accent, #667eea);border-radius:50%;animation:loading-spin .8s linear infinite}.loading-spinner-message{color:var(--loading-text, #666);font-size:14px;font-weight:500}@keyframes loading-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.access-denied-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:40px;text-align:center;gap:16px;background:var(--bg-primary, #fff)}.access-denied-icon{font-size:64px}.access-denied-title{font-size:28px;color:var(--color-danger, #ef4444);margin:0;font-weight:600}.access-denied-message{color:var(--text-secondary, #666);margin:0;max-width:500px;line-height:1.6}.access-denied-message strong{color:var(--text-primary, #333)}.access-denied-button{padding:10px 24px;border-radius:8px;border:1px solid var(--border-color, #ddd);background:var(--bg-secondary, #fff);color:var(--text-primary, #333);cursor:pointer;font-size:14px;font-weight:500;margin-top:8px;transition:all .2s ease}.access-denied-button:hover{background:var(--bg-hover, #f5f5f5);border-color:var(--border-hover, #ccc)}.access-denied-button:focus{outline:2px solid var(--color-primary, #667eea);outline-offset:2px}.error-page{display:flex;align-items:center;justify-content:center;height:100%;min-height:100vh;padding:2rem;background-color:var(--bg-color)}.error-content{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:600px;gap:1.5rem}.error-illustration{display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.error-icon-wrapper{display:flex;align-items:center;justify-content:center;width:120px;height:120px;border-radius:50%;background-color:#ef44441a;color:#ef4444}.error-icon-wrapper svg{width:60px;height:60px}.error-title{font-size:2rem;font-weight:600;color:var(--fg-color);margin:0}.error-message{font-size:1rem;color:var(--fg-secondary-color);line-height:1.6;margin:0}.error-details{width:100%;margin-top:1rem;text-align:left}.error-summary{font-size:.875rem;font-weight:500;color:var(--fg-color);cursor:pointer;padding:.5rem;border-radius:.375rem;transition:background-color .2s}.error-summary:hover{background-color:var(--bg-secondary-color)}.error-stack{margin-top:.5rem;padding:1rem;background-color:var(--bg-secondary-color);border:var(--df-border);border-radius:.5rem;font-size:.75rem;color:#ef4444;overflow-x:auto;white-space:pre-wrap;word-break:break-word;max-height:300px;overflow-y:auto}.error-actions{display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:1rem}.error-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:var(--df-border);border-radius:.5rem;background-color:var(--bg-color);color:var(--fg-color);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.error-btn:hover{background-color:var(--bg-secondary-color);border-color:var(--primary-color)}.error-btn.primary{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.error-btn.primary:hover{background-color:#0670d4;border-color:#0670d4}.error-btn svg{width:18px;height:18px}@media(max-width:768px){.error-title{font-size:1.5rem}.error-message{font-size:.875rem}.error-actions{flex-direction:column;width:100%}.error-btn{width:100%;justify-content:center}.error-icon-wrapper{width:100px;height:100px}.error-icon-wrapper svg{width:50px;height:50px}}
