.test-logs-container{display:flex;flex-direction:column;height:calc(100vh - 60px);overflow:hidden}.test-logs-sessions{padding:16px;border-bottom:1px solid var(--border);max-height:200px;overflow-y:auto}.test-session-item{padding:12px;margin-bottom:8px;border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .2s}.test-session-item:hover{background:var(--bg-secondary);border-color:var(--primary)}.test-session-item.active{background:var(--primary-light);border-color:var(--primary)}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.session-version{font-weight:600;color:var(--text)}.session-time{font-size:12px;color:var(--text-secondary)}.session-summary{font-size:13px;color:var(--text-secondary);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.test-logs-filters{display:flex;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.test-logs-filters select{flex:1;padding:6px 10px;border:1px solid var(--border);border-radius:6px;font-size:13px;background:var(--bg);color:var(--text);cursor:pointer}.test-logs-filters select:focus{outline:none;border-color:var(--primary)}.test-logs-list{flex:1;overflow-y:auto;padding:16px}.test-log-item{padding:12px;margin-bottom:12px;border:1px solid var(--border);border-radius:8px;background:var(--bg)}.log-header{display:flex;align-items:center;gap:12px;margin-bottom:8px;flex-wrap:wrap}.log-time{font-size:12px;color:var(--text-secondary);font-family:Courier New,monospace}.log-type{font-size:12px;font-weight:600;padding:2px 8px;border-radius:4px;background:var(--bg-secondary)}.log-actor{font-size:12px;color:var(--text-secondary);padding:2px 8px;border-radius:4px;background:var(--bg-secondary)}.log-status{font-size:14px;font-weight:700}.log-duration{font-size:11px;color:var(--text-secondary);font-family:Courier New,monospace;margin-left:auto}.log-action{font-size:14px;color:var(--text);margin-bottom:8px}.log-error{font-size:13px;color:#ef4444;background:#fef2f2;padding:8px;border-radius:4px;margin-top:8px}.log-details{margin-top:8px}.log-details summary{font-size:12px;color:var(--primary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.log-details summary:hover{text-decoration:underline}.log-details-content{margin-top:8px;padding:12px;background:var(--bg-secondary);border-radius:4px}.log-details-label{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:4px}.log-details-content pre{font-size:11px;font-family:Courier New,monospace;color:var(--text);white-space:pre-wrap;word-break:break-all;margin:0 0 12px}.log-details-content pre:last-child{margin-bottom:0}.status-badge.running{background:#dbeafe;color:#1e40af}.status-badge.completed{background:#d1fae5;color:#065f46}.status-badge.failed{background:#fee2e2;color:#991b1b}.status-badge.aborted{background:#f3f4f6;color:#4b5563}.markdown-content{line-height:1.8;color:#374151}.markdown-content h1{font-size:24px;font-weight:700;margin:24px 0 16px;color:#1f2937;border-bottom:2px solid #e5e7eb;padding-bottom:8px}.markdown-content h2{font-size:20px;font-weight:600;margin:20px 0 12px;color:#1f2937}.markdown-content h3{font-size:18px;font-weight:600;margin:16px 0 10px;color:#374151}.markdown-content p{margin:12px 0}.markdown-content ul,.markdown-content ol{margin:12px 0;padding-left:24px}.markdown-content li{margin:6px 0}.markdown-content code{background:#f3f4f6;padding:2px 6px;border-radius:4px;font-family:Monaco,Menlo,Courier New,monospace;font-size:.9em;color:#dc2626}.markdown-content pre{background:#1f2937;color:#f9fafb;padding:16px;border-radius:8px;overflow-x:auto;margin:16px 0}.markdown-content pre code{background:none;padding:0;color:inherit;font-size:14px}.markdown-content blockquote{border-left:4px solid #3b82f6;padding-left:16px;margin:16px 0;color:#6b7280;font-style:italic}.markdown-content table{width:100%;border-collapse:collapse;margin:16px 0}.markdown-content th,.markdown-content td{border:1px solid #e5e7eb;padding:8px 12px;text-align:left}.markdown-content th{background:#f9fafb;font-weight:600}.markdown-content a{color:#3b82f6;text-decoration:none}.markdown-content a:hover{text-decoration:underline}.dark .markdown-content{color:#fff}.dark .markdown-content h1{color:#fff;border-bottom-color:#ffffff0f}.dark .markdown-content h2,.dark .markdown-content h3{color:#fff}.dark .markdown-content code{background:#ffffff0d;color:#f87171}.dark .markdown-content blockquote{color:#94a3b8}.dark .markdown-content th,.dark .markdown-content td{border-color:#ffffff0f}.dark .markdown-content th{background:#ffffff0d}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,PingFang SC,Source Han Sans CN,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:SF Mono,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222.2 84% 4.9%;--popover: 0 0% 100%;--popover-foreground: 222.2 84% 4.9%;--primary: 0 84% 65%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 0 84% 65%;--radius: .5rem;--chart-1: 12 76% 61%;--chart-2: 173 58% 39%;--chart-3: 197 37% 24%;--chart-4: 43 74% 66%;--chart-5: 27 87% 67%}.dark{--background: 222.2 84% 4.9%;--foreground: 210 40% 98%;--card: 222.2 84% 4.9%;--card-foreground: 210 40% 98%;--popover: 222.2 84% 4.9%;--popover-foreground: 210 40% 98%;--primary: 270 84% 65%;--primary-foreground: 210 40% 98%;--secondary: 217.2 32.6% 17.5%;--secondary-foreground: 210 40% 98%;--muted: 217.2 32.6% 17.5%;--muted-foreground: 215 20.2% 65.1%;--accent: 217.2 32.6% 17.5%;--accent-foreground: 210 40% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 210 40% 98%;--border: 217.2 32.6% 17.5%;--input: 217.2 32.6% 17.5%;--ring: 270 84% 65%;--chart-1: 220 70% 50%;--chart-2: 160 60% 45%;--chart-3: 30 80% 55%;--chart-4: 280 65% 60%;--chart-5: 340 75% 55%}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.-right-1{right:-4px}.-right-1\.5{right:-.375rem}.-top-1{top:-4px}.bottom-0{bottom:0}.bottom-24{bottom:6rem}.bottom-4{bottom:16px}.bottom-\[calc\(60px\+var\(--sab\)\)\]{bottom:calc(60px + var(--sab))}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-20{left:5rem}.left-3{left:12px}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:4px}.right-2{right:8px}.right-3{right:12px}.right-4{right:16px}.top-0{top:0}.top-0\.5{top:2px}.top-1{top:4px}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-16{top:64px}.top-4{top:16px}.top-\[50\%\]{top:50%}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[1000\]{z-index:1000}.z-\[1001\]{z-index:1001}.z-\[100\]{z-index:100}.z-\[1\]{z-index:1}.z-\[200\]{z-index:200}.z-\[201\]{z-index:201}.z-\[60\]{z-index:60}.m-0{margin:0}.mx-0\.5{margin-left:2px;margin-right:2px}.mx-1{margin-left:4px;margin-right:4px}.mx-2{margin-left:8px;margin-right:8px}.mx-4{margin-left:16px;margin-right:16px}.mx-5{margin-left:20px;margin-right:20px}.mx-auto{margin-left:auto;margin-right:auto}.my-1\.5{margin-top:.375rem;margin-bottom:.375rem}.-ml-1{margin-left:-4px}.-mr-1{margin-right:-4px}.mb-0\.5{margin-bottom:2px}.mb-1{margin-bottom:4px}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-5{margin-bottom:20px}.mb-6{margin-bottom:24px}.mb-8{margin-bottom:32px}.mb-\[10px\]{margin-bottom:10px}.ml-0\.5{margin-left:2px}.ml-1{margin-left:4px}.ml-1\.5{margin-left:.375rem}.ml-16{margin-left:64px}.ml-2{margin-left:8px}.ml-2\.5{margin-left:.625rem}.ml-3\.5{margin-left:.875rem}.ml-\[14px\]{margin-left:14px}.ml-\[42px\]{margin-left:42px}.mr-1{margin-right:4px}.mr-2{margin-right:8px}.mt-0{margin-top:0}.mt-0\.5{margin-top:2px}.mt-1{margin-top:4px}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:8px}.mt-24{margin-top:6rem}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mt-auto{margin-top:auto}.line-clamp-5{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.h-0\.5{height:2px}.h-1{height:4px}.h-1\.5{height:.375rem}.h-10{height:40px}.h-11{height:44px}.h-12{height:48px}.h-14{height:56px}.h-16{height:64px}.h-2{height:8px}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-3{height:12px}.h-3\.5{height:.875rem}.h-4{height:16px}.h-5{height:20px}.h-6{height:24px}.h-7{height:28px}.h-8{height:32px}.h-9{height:36px}.h-\[18px\]{height:18px}.h-\[200px\]{height:200px}.h-\[22px\]{height:22px}.h-\[38px\]{height:38px}.h-\[50px\]{height:50px}.h-\[52px\]{height:52px}.h-\[54px\]{height:54px}.h-\[60px\]{height:60px}.h-\[80px\]{height:80px}.h-\[calc\(var\(--vh\,1vh\)\*100\)\]{height:calc(var(--vh,1vh) * 100)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-24{max-height:6rem}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-60{max-height:15rem}.max-h-\[120px\]{max-height:120px}.max-h-\[50vh\]{max-height:50vh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.max-h-screen{max-height:100vh}.min-h-0{min-height:0px}.min-h-\[44px\]{min-height:44px}.min-h-screen{min-height:100vh}.w-0\.5{width:2px}.w-1\.5{width:.375rem}.w-10{width:40px}.w-12{width:48px}.w-14{width:56px}.w-16{width:64px}.w-2{width:8px}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-3{width:12px}.w-3\.5{width:.875rem}.w-4{width:16px}.w-5{width:20px}.w-6{width:24px}.w-7{width:28px}.w-8{width:32px}.w-9{width:36px}.w-\[100px\]{width:100px}.w-\[22px\]{width:22px}.w-\[280px\]{width:280px}.w-\[320px\]{width:320px}.w-\[3px\]{width:3px}.w-\[52px\]{width:52px}.w-\[60px\]{width:60px}.w-\[80px\]{width:80px}.w-\[85vw\]{width:85vw}.w-\[90\%\]{width:90%}.w-\[90vw\]{width:90vw}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.min-w-0{min-width:0px}.min-w-\[180px\]{min-width:180px}.min-w-\[18px\]{min-width:18px}.min-w-\[48px\]{min-width:48px}.max-w-\[120px\]{max-width:120px}.max-w-\[200px\]{max-width:200px}.max-w-\[260px\]{max-width:260px}.max-w-\[380px\]{max-width:380px}.max-w-\[400px\]{max-width:400px}.max-w-\[420px\]{max-width:420px}.max-w-\[500px\]{max-width:500px}.max-w-\[60\%\]{max-width:60%}.max-w-\[72px\]{max-width:72px}.max-w-\[75\%\]{max-width:75%}.max-w-\[800px\]{max-width:800px}.max-w-\[80vw\]{max-width:80vw}.max-w-\[900px\]{max-width:900px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0\.5{--tw-translate-x: 2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[18px\]{--tw-translate-x: 18px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}.animate-slide-in-left{animation:slide-in-left .2s ease-out}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.resize-none{resize:none}.resize{resize:both}.list-disc{list-style-type:disc}.grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:2px}.gap-1{gap:4px}.gap-1\.5{gap:.375rem}.gap-2{gap:8px}.gap-2\.5{gap:.625rem}.gap-3{gap:12px}.gap-3\.5{gap:.875rem}.gap-4{gap:16px}.gap-\[3px\]{gap:3px}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(8px * var(--tw-space-x-reverse));margin-left:calc(8px * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(4px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4px * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(8px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(8px * var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(12px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(12px * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(16px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(16px * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(20px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(20px * var(--tw-space-y-reverse))}.self-center{align-self:center}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:8px}.rounded-2xl{border-radius:32px}.rounded-3xl{border-radius:1.5rem}.rounded-\[10px\]{border-radius:10px}.rounded-\[18px_18px_18px_4px\]{border-radius:18px 18px 18px 4px}.rounded-\[18px_18px_4px_18px\]{border-radius:18px 18px 4px}.rounded-\[inherit\]{border-radius:inherit}.rounded-bubble{border-radius:12px}.rounded-capsule{border-radius:19px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-pill{border-radius:18px}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:24px}.rounded-r{border-top-right-radius:8px;border-bottom-right-radius:8px}.rounded-t-2xl{border-top-left-radius:32px;border-top-right-radius:32px}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 4px)}.rounded-tr-sm{border-top-right-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-x-0{border-left-width:0px;border-right-width:0px}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0px}.border-l-2{border-left-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-brand{--tw-border-opacity: 1;border-color:rgb(255 75 75 / var(--tw-border-opacity, 1))}.border-destructive{border-color:hsl(var(--destructive))}.border-divider{--tw-border-opacity: 1;border-color:rgb(229 229 229 / var(--tw-border-opacity, 1))}.border-divider-light,.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-green-100{--tw-border-opacity: 1;border-color:rgb(220 252 231 / var(--tw-border-opacity, 1))}.border-input{border-color:hsl(var(--input))}.border-primary-500{--tw-border-opacity: 1;border-color:rgb(139 92 246 / var(--tw-border-opacity, 1))}.border-red-100{--tw-border-opacity: 1;border-color:rgb(254 226 226 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-white\/40{border-color:#fff6}.border-t-transparent{border-top-color:transparent}.bg-\[\#fff1f0\]{--tw-bg-opacity: 1;background-color:rgb(255 241 240 / var(--tw-bg-opacity, 1))}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-background{background-color:hsl(var(--background))}.bg-badge-red{--tw-bg-opacity: 1;background-color:rgb(255 59 48 / var(--tw-bg-opacity, 1))}.bg-black\/40{background-color:#0006}.bg-black\/5{background-color:#0000000d}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-black\/80{background-color:#000c}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-400{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-border{background-color:hsl(var(--border))}.bg-brand{--tw-bg-opacity: 1;background-color:rgb(255 75 75 / var(--tw-bg-opacity, 1))}.bg-brand-10{background-color:#ff4b4b1a}.bg-brand-light-bg{--tw-bg-opacity: 1;background-color:rgb(255 240 240 / var(--tw-bg-opacity, 1))}.bg-brand\/10{background-color:#ff4b4b1a}.bg-bubble-user{--tw-bg-opacity: 1;background-color:rgb(255 238 238 / var(--tw-bg-opacity, 1))}.bg-card-bg{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-danger{--tw-bg-opacity: 1;background-color:rgb(229 57 53 / var(--tw-bg-opacity, 1))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-divider{--tw-bg-opacity: 1;background-color:rgb(229 229 229 / var(--tw-bg-opacity, 1))}.bg-error-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-error-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-indigo-50{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.bg-info-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-input-bg{--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity, 1))}.bg-muted{background-color:hsl(var(--muted))}.bg-online{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-orange-50{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.bg-page-bg{--tw-bg-opacity: 1;background-color:rgb(240 242 245 / var(--tw-bg-opacity, 1))}.bg-pink-100{--tw-bg-opacity: 1;background-color:rgb(252 231 243 / var(--tw-bg-opacity, 1))}.bg-pink-50{--tw-bg-opacity: 1;background-color:rgb(253 242 248 / var(--tw-bg-opacity, 1))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary-500{--tw-bg-opacity: 1;background-color:rgb(139 92 246 / var(--tw-bg-opacity, 1))}.bg-primary-500\/5{background-color:#8b5cf60d}.bg-primary-600{--tw-bg-opacity: 1;background-color:rgb(124 58 237 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-sec-bg{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-sec-bg-alt{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-sec-bg\/50{background-color:#f9fafb80}.bg-secondary{background-color:hsl(var(--secondary))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.bg-slate-900{--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.bg-teal-50{--tw-bg-opacity: 1;background-color:rgb(240 253 250 / var(--tw-bg-opacity, 1))}.bg-text-placeholder{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/25{background-color:#ffffff40}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-400{--tw-gradient-from: #60a5fa var(--tw-gradient-from-position);--tw-gradient-to: rgb(96 165 250 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-brand{--tw-gradient-from: #FF4B4B var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 75 75 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-400{--tw-gradient-from: #4ade80 var(--tw-gradient-from-position);--tw-gradient-to: rgb(74 222 128 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from: #ec4899 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 72 153 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary-500{--tw-gradient-from: #8b5cf6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(139 92 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-400{--tw-gradient-from: #c084fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(192 132 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from: #a855f7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-blue-500{--tw-gradient-to: #3b82f6 var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.to-danger{--tw-gradient-to: #E53935 var(--tw-gradient-to-position)}.to-orange-400{--tw-gradient-to: #fb923c var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to: #a855f7 var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.to-teal-600{--tw-gradient-to: #0d9488 var(--tw-gradient-to-position)}.stroke-white{stroke:#fff}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.\!p-1{padding:4px!important}.p-0{padding:0}.p-1{padding:4px}.p-1\.5{padding:.375rem}.p-2{padding:8px}.p-3{padding:12px}.p-3\.5{padding:.875rem}.p-4{padding:16px}.p-5{padding:20px}.p-6{padding:24px}.p-8{padding:32px}.p-\[14px_16px\]{padding:14px 16px}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:4px;padding-right:4px}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:8px;padding-right:8px}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:12px;padding-right:12px}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:16px;padding-right:16px}.px-5{padding-left:20px;padding-right:20px}.px-6{padding-left:24px;padding-right:24px}.px-8{padding-left:32px;padding-right:32px}.py-0\.5{padding-top:2px;padding-bottom:2px}.py-1{padding-top:4px;padding-bottom:4px}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:40px;padding-bottom:40px}.py-12{padding-top:48px;padding-bottom:48px}.py-15{padding-top:60px;padding-bottom:60px}.py-16{padding-top:64px;padding-bottom:64px}.py-2{padding-top:8px;padding-bottom:8px}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:12px;padding-bottom:12px}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:16px;padding-bottom:16px}.py-5{padding-top:20px;padding-bottom:20px}.py-6{padding-top:24px;padding-bottom:24px}.py-8{padding-top:32px;padding-bottom:32px}.py-\[10px\]{padding-top:10px;padding-bottom:10px}.py-px{padding-top:1px;padding-bottom:1px}.pb-2{padding-bottom:8px}.pb-3{padding-bottom:12px}.pb-4{padding-bottom:16px}.pb-8{padding-bottom:32px}.pb-\[env\(safe-area-inset-bottom\)\]{padding-bottom:env(safe-area-inset-bottom)}.pb-\[env\(safe-area-inset-bottom\,0px\)\]{padding-bottom:env(safe-area-inset-bottom,0px)}.pl-1{padding-left:4px}.pl-2{padding-left:8px}.pl-5{padding-left:20px}.pl-9{padding-left:36px}.pl-\[42px\]{padding-left:42px}.pr-12{padding-right:48px}.pr-3{padding-right:12px}.pr-6{padding-right:24px}.pt-1{padding-top:4px}.pt-3{padding-top:12px}.pt-5{padding-top:20px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:SF Mono,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:24px;line-height:32px}.text-2xs{font-size:10px;line-height:14px}.text-3xl{font-size:28px;line-height:36px}.text-4xl{font-size:32px;line-height:40px}.text-\[26px\]{font-size:26px}.text-\[28px\]{font-size:28px}.text-base{font-size:16px;line-height:24px}.text-caption{font-size:13px;line-height:18px}.text-lg{font-size:18px;line-height:28px}.text-msg{font-size:15px;line-height:24px}.text-nav{font-size:17px;line-height:22px}.text-sm{font-size:14px;line-height:20px}.text-xl{font-size:20px;line-height:28px}.text-xs{font-size:12px;line-height:16px}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.\!leading-\[0\]{line-height:0!important}.leading-\[1\.6\]{line-height:1.6}.leading-\[1\.8\]{line-height:1.8}.leading-\[18px\]{line-height:18px}.leading-none{line-height:1}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-brand{--tw-text-opacity: 1;color:rgb(255 75 75 / var(--tw-text-opacity, 1))}.text-brand-light{--tw-text-opacity: 1;color:rgb(255 107 107 / var(--tw-text-opacity, 1))}.text-danger{--tw-text-opacity: 1;color:rgb(229 57 53 / var(--tw-text-opacity, 1))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-error-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-error-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/50{color:hsl(var(--foreground) / .5)}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-icon-default{--tw-text-opacity: 1;color:rgb(136 136 136 / var(--tw-text-opacity, 1))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-pink-600{--tw-text-opacity: 1;color:rgb(219 39 119 / var(--tw-text-opacity, 1))}.text-primary{color:hsl(var(--primary))}.text-primary-500{--tw-text-opacity: 1;color:rgb(139 92 246 / var(--tw-text-opacity, 1))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-text-mobile{--tw-text-opacity: 1;color:rgb(26 26 26 / var(--tw-text-opacity, 1))}.text-text-mobile-sec{--tw-text-opacity: 1;color:rgb(142 142 147 / var(--tw-text-opacity, 1))}.text-text-placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-text-primary{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-text-secondary{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline-offset-4{text-underline-offset:4px}.placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-30{opacity:.3}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[4px_0_20px_rgba\(0\,0\,0\,0\.15\)\]{--tw-shadow: 4px 0 20px rgba(0,0,0,.15);--tw-shadow-colored: 4px 0 20px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-bubble{--tw-shadow: 0 1px 4px rgba(0,0,0,.04);--tw-shadow-colored: 0 1px 4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-card{--tw-shadow: 0 4px 24px rgba(0,0,0,.08);--tw-shadow-colored: 0 4px 24px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 10px 10px -5px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/10{--tw-shadow-color: rgb(0 0 0 / .1);--tw-shadow: var(--tw-shadow-colored)}.shadow-card{--tw-shadow-color: hsl(var(--card));--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.slide-in-from-bottom{--tw-enter-translate-y: 100%}.duration-150{animation-duration:.15s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.running{animation-play-state:running}:root{--primary: #FF4B4B;--primary-dark: #E53935;--primary-light: #FFF0F0;--header-bg: #FF4B4B;--sidebar-bg: #FFFFFF;--chat-bg: #FFFFFF;--white: #ffffff;--text: #1F2937;--text-light: #6B7280;--border: #E5E5E5;--bg-secondary: #f9fafb;--bg-light: #f3f4f6;--bubble-self: #FFEEEE;--bubble-other: #ffffff;--sat: env(safe-area-inset-top, 0px);--sab: env(safe-area-inset-bottom, 0px);--sal: env(safe-area-inset-left, 0px);--sar: env(safe-area-inset-right, 0px)}.dark{--primary: #a855f7;--primary-dark: #9333ea;--primary-light: rgba(168, 85, 247, .1);--header-bg: #0f172a;--sidebar-bg: #020617;--chat-bg: #0f172a;--white: #1e293b;--text: #ffffff;--text-light: rgba(196, 181, 253, .8);--border: rgba(255, 255, 255, .1);--bg-secondary: rgba(255, 255, 255, .1);--bg-light: rgba(255, 255, 255, .1);--bubble-self: rgba(168, 85, 247, .2);--bubble-other: rgba(255, 255, 255, .1)}@media(display-mode:standalone){:root{--sab: max(env(safe-area-inset-bottom, 0px), 34px)}}html,body,#root{height:100%;overscroll-behavior:none;overflow:hidden}.btn{width:100%;padding:12px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:16px;cursor:pointer;transition:background .2s}.btn:hover{background:var(--primary-dark)}.btn:disabled{opacity:.6;cursor:not-allowed}.chat-layout{display:flex;flex-direction:column;height:100%;overflow:hidden;padding-top:env(safe-area-inset-top,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.conversation-list{flex:1;overflow-y:auto;overscroll-behavior-y:contain}.chat-panel{flex:1;display:flex;flex-direction:column;background:var(--chat-bg);min-width:0;min-height:0;overflow:hidden;position:relative;overscroll-behavior:contain}.chat-panel-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-light);font-size:16px;background:var(--chat-bg)}.message-list{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px;min-height:0;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.message-row{display:flex;align-items:flex-start;gap:10px}.message-row.self{flex-direction:row-reverse}.msg-avatar{width:36px;height:36px;border-radius:6px;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.msg-body{max-width:60%}.msg-sender{font-size:12px;color:var(--text-light);margin-bottom:4px}.message-row.self .msg-sender{text-align:right}.msg-bubble{padding:10px 14px;border-radius:8px;background:var(--bubble-other);font-size:15px;line-height:1.5;word-break:break-word;position:relative;box-shadow:0 1px 2px #0000000f;-webkit-touch-callout:none;-webkit-user-select:text;-moz-user-select:text;user-select:text;white-space:pre-wrap}@media(hover:none)and (pointer:coarse){.msg-bubble{-webkit-user-select:none;-moz-user-select:none;user-select:none}}.message-row.self .msg-bubble{background:var(--bubble-self)}.msg-bubble img{max-width:240px;max-height:240px;border-radius:6px;cursor:pointer;display:block}.msg-bubble.image-bubble{padding:4px;display:inline-block;line-height:0}.msg-bubble audio{max-width:240px}.msg-bubble video{max-width:320px;max-height:240px;border-radius:6px}.msg-bubble .file-link{display:flex;align-items:center;gap:6px;color:var(--primary);text-decoration:none}.msg-time{font-size:11px;color:var(--text-light);margin-top:4px}.message-row.self .msg-time{text-align:right}.message-input-area{background:var(--white);border-top:1px solid var(--border);padding:8px 12px;padding-bottom:calc(8px + var(--sab));flex-shrink:0}.upload-progress-bar{padding:6px 0 8px}.upload-progress-info{display:flex;justify-content:space-between;font-size:12px;color:var(--text-light);margin-bottom:4px}.upload-progress-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70%}.upload-progress-track{height:4px;background:var(--border);border-radius:2px;overflow:hidden}.upload-progress-fill{height:100%;background:var(--primary);border-radius:2px;transition:width .2s ease}.input-row{display:flex;gap:8px;align-items:flex-end;margin-bottom:6px}.input-row textarea{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:8px;font-size:15px;resize:none;outline:none;max-height:120px;min-height:38px;height:38px;font-family:inherit;line-height:1.5;background:var(--bg-secondary);overflow-y:auto}.input-row textarea:focus{border-color:var(--primary);background:var(--white)}.send-btn{padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer;white-space:nowrap;height:38px}.send-btn:hover{background:var(--primary-dark)}.send-btn:disabled{opacity:.4;cursor:default}.input-toolbar{display:flex;gap:2px;justify-content:space-around}.input-toolbar button{background:none;border:none;cursor:pointer;color:#8f959e;padding:6px 10px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s}.input-toolbar button:hover,.input-toolbar button.active{color:var(--primary);background:var(--primary-light)}.voice-hold-btn{flex:1;height:38px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;cursor:pointer;-moz-user-select:none;user-select:none;-webkit-user-select:none;touch-action:none}.voice-hold-btn.active{background:var(--primary-light);border-color:var(--primary)}.voice-hold-btn.cancel{background:#ff44441a;border-color:#f44}.voice-hold-text{font-size:14px;color:var(--text-light);display:flex;align-items:center;gap:6px}.voice-hold-btn.active .voice-hold-text{color:var(--primary)}.voice-hold-btn.cancel .voice-hold-text{color:#f44}.emoji-panel{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:8px 4px;max-height:200px;overflow-y:auto;border-top:1px solid var(--border);margin-top:4px}.emoji-item{background:none;border:none;font-size:22px;padding:6px;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:background .1s}.emoji-item:hover{background:var(--bg-secondary)}.contacts-panel{flex:1;overflow-y:auto;padding:0}.btn-small{padding:5px 12px;background:#f5f5f5;color:#666;border:none;border-radius:16px;font-size:12px;cursor:pointer;transition:all .2s}.btn-small:hover{background:#ebebeb;color:#333}.btn-danger{background:#fff1f0;color:#cf1322}.btn-danger:hover{background:#ffccc7}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:#fff;border-radius:12px;padding:30px;width:420px;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.dark .modal{background:#1e293b;box-shadow:0 20px 60px #00000080}.modal h3{margin-bottom:20px;font-size:18px;color:var(--text);opacity:1}.modal .close-btn{float:right;background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-light)}.search-input{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:8px;font-size:14px;outline:none;margin-bottom:16px}.search-input:focus{border-color:var(--primary)}.checkbox-item{display:flex;align-items:center;padding:10px 0;gap:10px;border-bottom:1px solid #f0f0f0}.checkbox-item input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary)}.image-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:200;cursor:pointer}.image-preview-overlay img{max-width:90vw;max-height:90vh;border-radius:4px}.back-btn{display:none;background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:4px 12px 4px 0}.msg-action-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:999}.msg-action-menu{position:fixed;z-index:1000;background:#2e2e2e;border-radius:8px;display:flex;gap:0;box-shadow:0 4px 16px #0003;white-space:nowrap}.msg-action-menu button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 16px;background:none;border:none;color:#fff;font-size:12px;cursor:pointer;transition:background .1s}.msg-action-menu button:hover{background:#ffffff1a}.msg-action-menu button svg{stroke:#fff}.msg-recalled{display:flex;justify-content:center;padding:8px 0}.msg-recalled span{font-size:12px;color:var(--text-light);background:var(--bg-secondary);padding:4px 12px;border-radius:12px}.recall-btn{color:#ff6b6b!important}.reply-quote{background:#0000000f;border-left:3px solid var(--primary);padding:4px 8px;margin-bottom:6px;border-radius:0 4px 4px 0;font-size:12px;max-width:100%;overflow:hidden}.reply-quote-name{color:var(--primary);font-weight:500;margin-right:6px}.reply-quote-text{color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dark .reply-quote{background:#ffffff0f}.dark .reply-quote-text{color:#c4b5fdb3}.reply-bar{display:flex;align-items:center;padding:8px 12px;background:#f0f0f0;border-radius:6px;margin-bottom:8px;gap:8px}.dark .reply-bar{background:#ffffff1a}.reply-bar-content{flex:1;min-width:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-bar-name{color:var(--primary);font-weight:500;margin-right:6px}.reply-bar-text{color:#666}.dark .reply-bar-text{color:#c4b5fdb3}.reply-bar-close{background:none;border:none;color:#999;font-size:16px;cursor:pointer;padding:2px 6px;flex-shrink:0}.reply-bar-close:hover{color:#333}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#aaa}.dark ::-webkit-scrollbar-thumb{background:#ffffff26}.dark ::-webkit-scrollbar-thumb:hover{background:#ffffff40}.chat-header{background:var(--header-bg);color:#fff;padding:16px 24px;font-size:16px;font-weight:500;min-height:60px;display:flex;align-items:center;flex-shrink:0}.chat-header-title{flex:1}.chat-header-actions{display:flex;gap:6px}.chat-header-btn{background:none;border:none;color:#fff;cursor:pointer;padding:6px;border-radius:6px;opacity:.8;display:flex;align-items:center;justify-content:center}.chat-header-btn:hover{opacity:1;background:#ffffff26}.chat-search-bar{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--white);border-bottom:1px solid var(--border);flex-shrink:0}.chat-search-bar input{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:6px;font-size:14px;outline:none}.chat-search-bar input:focus{border-color:var(--primary)}.chat-search-bar button{background:none;border:none;cursor:pointer;color:var(--text-light);padding:6px;border-radius:6px;display:flex;align-items:center}.chat-search-bar button:hover{color:var(--primary);background:var(--primary-light)}.chat-search-results{max-height:200px;overflow-y:auto;background:var(--white);border-bottom:1px solid var(--border);flex-shrink:0}.chat-search-result-item{display:flex;align-items:baseline;gap:8px;padding:8px 16px;border-bottom:1px solid #f5f5f5;font-size:13px;cursor:pointer}.chat-search-result-item:hover{background:#f8f8f8}.csr-sender{color:var(--primary);font-weight:500;flex-shrink:0}.csr-content{flex:1;color:var(--text);opacity:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.csr-time{color:var(--text-light);font-size:11px;flex-shrink:0}@media(max-width:768px){.chat-layout{height:100%;position:relative}.main-content{position:relative}.sidebar{width:100%;min-width:100%}.tab-page{width:100%}.chat-layout .chat-panel,.chat-layout .chat-panel-empty{position:absolute;top:0;left:0;right:0;bottom:0;z-index:10;display:none}.chat-layout.mobile-show-chat .sidebar{display:none}.chat-layout.mobile-show-chat .chat-panel{display:flex;position:relative}.chat-layout.mobile-show-chat .chat-panel-empty,.chat-layout.mobile-show-chat .bottom-nav{display:none}.back-btn{display:block}.modal{width:90vw;padding:20px}.msg-body{max-width:75%}}.main-content{flex:1;display:flex;min-height:0;overflow:hidden}.tab-page{flex:1;display:flex;flex-direction:column;background:var(--sidebar-bg);width:100%;height:100%;min-height:0}.tab-page-header{background:var(--header-bg);color:#fff;padding:16px 20px;min-height:60px;display:flex;align-items:center}.tab-page-header h3{font-size:17px;font-weight:500}.tab-page-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.tab-page-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-light)}.tab-page-empty .empty-icon{font-size:64px;margin-bottom:16px}.tab-page-empty p{font-size:15px;margin-bottom:4px}.tab-page-empty .empty-hint{font-size:13px;color:#ccc}.profile-content{flex:1;padding:16px}.profile-card{display:flex;align-items:center;gap:16px;background:var(--white);padding:20px;border-radius:12px;box-shadow:0 1px 3px #00000014;margin-bottom:16px}.profile-avatar{width:56px;height:56px;border-radius:6px;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:500;flex-shrink:0}.profile-info{flex:1}.profile-name{font-size:18px;font-weight:500;color:var(--text);opacity:1;margin-bottom:4px}.profile-username{font-size:14px;color:var(--text-light)}.profile-actions{margin-top:8px}.profile-action-btn{width:100%;display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--white);border:none;border-radius:12px;color:var(--text);opacity:1;cursor:pointer;box-shadow:0 1px 3px #00000014;transition:background .2s}.profile-action-btn:hover{background:#f9f9f9}.profile-action-btn.logout-btn{color:#e74c3c}.profile-action-btn.deactivate-btn{color:#ff4d4f}.header-title{font-size:17px;font-weight:500;color:#fff}.profile-edit-modal{background:var(--white);width:420px;max-width:95vw;max-height:90vh;border-radius:12px;overflow-y:auto;display:flex;flex-direction:column}.profile-edit-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--white);z-index:1}.profile-edit-header h3{font-size:17px;font-weight:500}.profile-edit-back{background:none;border:none;cursor:pointer;padding:4px;color:var(--text);display:flex}.profile-edit-save{background:var(--primary);color:#fff;border:none;padding:6px 16px;border-radius:6px;font-size:14px;cursor:pointer}.profile-edit-save:disabled{opacity:.6}.profile-edit-body{padding:20px 16px}.profile-edit-avatar-section{display:flex;justify-content:center;margin-bottom:24px}.profile-edit-avatar-wrapper{position:relative;width:80px;height:80px;border-radius:8px;overflow:hidden;cursor:pointer}.profile-edit-avatar-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.profile-edit-avatar-placeholder{width:100%;height:100%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:500}.profile-edit-avatar-overlay{position:absolute;bottom:0;left:0;right:0;background:#00000080;color:#fff;font-size:11px;text-align:center;padding:4px 0}.profile-avatar-img{width:56px;height:56px;border-radius:6px;-o-object-fit:cover;object-fit:cover;flex-shrink:0}.profile-edit-fields{display:flex;flex-direction:column;gap:16px}.profile-edit-field label{display:block;font-size:13px;color:var(--text-light);margin-bottom:6px}.profile-edit-field input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:15px;outline:none}.profile-edit-field input:focus{border-color:var(--primary)}.profile-edit-value.readonly{padding:10px 0;font-size:15px;color:var(--text)}.profile-edit-gender{display:flex;gap:8px}.gender-btn{flex:1;padding:8px 0;border:1px solid var(--border);border-radius:8px;background:var(--white);font-size:14px;cursor:pointer;color:var(--text);transition:all .2s}.gender-btn.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.profile-edit-orgs{display:flex;flex-direction:column;gap:8px}.profile-edit-org-item{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#faf5f0;border-radius:8px;font-size:14px;color:var(--text)}.org-tag{font-size:13px;white-space:nowrap}.success-msg{background:#f0fff4;color:#2d8a4e;padding:8px 12px;border-radius:6px;font-size:13px;margin-bottom:8px}.org-item-left{display:flex;align-items:center;gap:8px;flex:1}.org-role-tag{font-size:12px;padding:2px 8px;border-radius:4px;background:#f0f0f0;color:var(--text-light);white-space:nowrap}.org-role-tag.admin{background:var(--primary-light);color:var(--primary)}.admin-badge{display:inline-flex;align-items:center;margin-left:4px;vertical-align:middle}.modal-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;padding:24px;width:380px;max-width:90vw;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #0003;z-index:101}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.modal-header h3{margin:0;font-size:18px;color:var(--text)}.modal-close{background:none;border:none;font-size:18px;color:var(--text-light);cursor:pointer;padding:4px 8px;border-radius:4px}.modal-close:hover{background:var(--bg-hover)}.pending-section{border-bottom:1px solid var(--border);padding-bottom:8px;margin-bottom:8px}.pending-section h3{color:#e67e22}.pending-item{background:#fff9f0;border-radius:8px;margin:4px 8px}.pending-actions{display:flex;gap:6px}.btn-approve{color:#389e0d!important;background:#f6ffed!important;border:none!important;font-size:12px;padding:4px 10px;border-radius:16px;cursor:pointer}.btn-approve:hover{background:#d9f7be!important}.user-guide-modal{width:440px;max-width:92vw;max-height:85vh;display:flex;flex-direction:column}.guide-tabs{display:flex;gap:4px;overflow-x:auto;padding:0 0 12px;border-bottom:1px solid var(--border);margin-bottom:16px;-webkit-overflow-scrolling:touch}.guide-tab{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;border:none;background:var(--bg-light);border-radius:10px;cursor:pointer;flex-shrink:0;transition:all .2s}.guide-tab.active{background:var(--primary);color:#fff}.guide-tab-icon{font-size:20px}.guide-tab-label{font-size:11px;white-space:nowrap}.guide-content{flex:1;overflow-y:auto}.guide-section-title{font-size:17px;font-weight:600;color:var(--text);margin-bottom:14px}.guide-steps{display:flex;flex-direction:column;gap:12px}.guide-step{display:flex;gap:12px;align-items:flex-start}.guide-step-num{width:24px;height:24px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.guide-step-text{font-size:14px;color:var(--text);line-height:1.6;padding-top:2px}.bot-badge{display:inline-block;font-size:10px;padding:1px 6px;border-radius:4px;margin-left:6px;vertical-align:middle}.bot-badge.public{background:#e8f5e9;color:#2e7d32}.bot-badge.private{background:#fff3e0;color:#e65100}.btn-visibility{font-size:11px!important;padding:4px 10px!important}.btn-visibility.is-public{color:#389e0d!important;background:#f6ffed!important;border:none!important}.btn-visibility.is-public:hover{background:#d9f7be!important}.btn-visibility.is-private{color:#d46b08!important;background:#fff7e6!important;border:none!important}.btn-visibility.is-private:hover{background:#ffd591!important}.conv-context-menu{position:fixed;z-index:150;background:#fff;border-radius:10px;box-shadow:0 4px 20px #0000002e;overflow:hidden;min-width:130px}.dark .conv-context-menu{background:#1e293b;box-shadow:0 4px 20px #0006}.conv-context-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:12px 16px;border:none;background:none;font-size:14px;color:var(--text);text-align:left;cursor:pointer;transition:background .15s}.conv-context-menu button:hover{background:#f5f5f5}.dark .conv-context-menu button:hover{background:#ffffff1a}.conv-context-menu button:not(:last-child){border-bottom:1px solid #f0f0f0}.dark .conv-context-menu button:not(:last-child){border-bottom:1px solid rgba(255,255,255,.1)}.conv-context-menu button.danger{color:#e74c3c}.confirm-dialog{background:#fff;border-radius:12px;padding:24px;width:300px;max-width:85vw;box-shadow:0 20px 60px #0003}.dark .confirm-dialog{background:#1e293b;box-shadow:0 20px 60px #00000080}.confirm-text{font-size:15px;color:var(--text);line-height:1.5;margin-bottom:20px;text-align:center}.confirm-buttons{display:flex;gap:12px}.confirm-buttons button{flex:1;padding:10px 0;border-radius:8px;font-size:15px;cursor:pointer;border:none;transition:background .2s}.confirm-cancel{background:#f0f0f0;color:var(--text)}.confirm-cancel:hover{background:#e0e0e0}.dark .confirm-cancel{background:#ffffff1a}.dark .confirm-cancel:hover{background:#ffffff26}.confirm-ok{background:var(--primary);color:#fff}.confirm-ok:hover{background:var(--primary-dark)}.confirm-ok.danger{background:#e74c3c}.confirm-ok.danger:hover{background:#c0392b}.image-send-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:200;display:flex;align-items:center;justify-content:center}.image-send-modal{background:#fff;border-radius:12px;padding:16px;max-width:90vw;max-height:85vh;display:flex;flex-direction:column;align-items:center;gap:12px}.dark .image-send-modal{background:#1e293b}.image-send-img{max-width:100%;max-height:60vh;border-radius:8px;-o-object-fit:contain;object-fit:contain}.image-send-info{font-size:12px;color:#999}.image-send-actions{display:flex;gap:12px;width:100%}.image-send-actions button{flex:1;padding:10px 0;border-radius:8px;font-size:15px;cursor:pointer;border:none}.image-send-cancel{background:#f0f0f0;color:var(--text)}.image-send-send{background:var(--primary);color:#fff}.image-send-send:disabled{opacity:.6;cursor:not-allowed}.msg-markdown{line-height:1.6;word-break:break-word}.msg-markdown p{margin:0 0 8px}.msg-markdown p:last-child{margin-bottom:0}.msg-markdown strong{font-weight:600}.msg-markdown ul,.msg-markdown ol{margin:4px 0;padding-left:20px}.msg-markdown li{margin:2px 0}.msg-markdown code{background:#0000000f;padding:1px 4px;border-radius:3px;font-size:.9em;font-family:SF Mono,Monaco,Consolas,monospace}.dark .msg-markdown code{background:#ffffff1a}.msg-markdown pre{background:#0000000f;padding:8px 12px;border-radius:6px;overflow-x:auto;margin:6px 0}.dark .msg-markdown pre{background:#ffffff14}.msg-markdown pre code{background:none;padding:0;font-size:.85em}.msg-markdown h1,.msg-markdown h2,.msg-markdown h3{margin:8px 0 4px;font-size:1em;font-weight:600}.msg-markdown blockquote{margin:4px 0;padding:4px 12px;border-left:3px solid rgba(0,0,0,.15);color:#666}.dark .msg-markdown blockquote{border-left-color:#fff3;color:#c4b5fdb3}.msg-markdown a{color:var(--primary);text-decoration:none}.msg-markdown table{border-collapse:collapse;margin:6px 0;font-size:.9em}.msg-markdown th,.msg-markdown td{border:1px solid rgba(0,0,0,.1);padding:4px 8px}.bot-thinking-avatar{font-size:20px}.bot-thinking-bubble{background:var(--msg-other-bg);border-radius:16px;padding:12px 18px;display:inline-flex;align-items:center}.thinking-dots{display:flex;gap:4px;align-items:center}.thinking-dots span{width:7px;height:7px;border-radius:50%;background:#999;animation:thinking-bounce 1.4s infinite ease-in-out both}.thinking-dots span:nth-child(1){animation-delay:0s}.thinking-dots span:nth-child(2){animation-delay:.16s}.thinking-dots span:nth-child(3){animation-delay:.32s}@keyframes thinking-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.pull-refresh-indicator{display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.pull-refresh-text{font-size:13px;color:var(--text-light)}.no-more-msg{text-align:center;font-size:12px;color:var(--text-light);padding:8px 0;flex-shrink:0}.msg-status{margin-left:6px;font-size:11px}.msg-status.pending{opacity:.6}.msg-status.failed{color:#e74c3c;font-size:11px}.msg-read-status{margin-left:6px;font-size:11px;color:var(--text-light)}.msg-bubble.pending{opacity:.7}.new-msg-tip{position:absolute;bottom:80px;left:50%;transform:translate(-50%);background:var(--primary);color:#fff;font-size:13px;padding:8px 20px;border-radius:20px;cursor:pointer;box-shadow:0 2px 12px #ff4b4b4d;z-index:20;white-space:nowrap;animation:fadeInUp .2s ease-out;-webkit-tap-highlight-color:transparent}.new-msg-tip:active{opacity:.85}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.global-search-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;z-index:1000;display:flex;flex-direction:column;animation:fadeIn .15s ease}.global-search-panel{background:var(--white);width:100%;max-width:600px;margin:0 auto;height:100%;display:flex;flex-direction:column;animation:slideDown .2s ease}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.global-search-header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--header-bg);flex-shrink:0}.global-search-input-wrap{flex:1;display:flex;align-items:center;gap:8px;background:#ffffff26;border-radius:8px;padding:8px 12px}.global-search-input-wrap input{flex:1;background:none;border:none;outline:none;color:#fff;font-size:15px}.global-search-input-wrap input::-moz-placeholder{color:#ffffff80}.global-search-input-wrap input::placeholder{color:#ffffff80}.gs-clear-btn{background:none;border:none;color:#fff9;cursor:pointer;font-size:14px;padding:2px 4px}.gs-cancel-btn{background:none;border:none;color:#ffffffe6;cursor:pointer;font-size:14px;padding:4px 8px;white-space:nowrap}.global-search-body{flex:1;overflow-y:auto;padding:0}.gs-status{padding:40px 20px;text-align:center;color:#999;font-size:14px}.gs-hint{color:#bbb}.gs-group{border-bottom:8px solid #f5f5f5}.gs-group-header{display:flex;align-items:center;gap:8px;padding:12px 16px 6px;font-size:14px;font-weight:500;color:var(--text)}.gs-group-icon{font-size:16px}.gs-group-name{flex:1}.gs-group-count{font-size:12px;color:var(--text-light);font-weight:400}.gs-result-item{display:flex;align-items:baseline;gap:8px;padding:10px 16px 10px 40px;cursor:pointer;transition:background .15s}.gs-result-item:hover{background:#f8f8f8}.gs-result-item:active{background:#f0f0f0}.gs-result-sender{color:var(--primary);font-size:13px;font-weight:500;flex-shrink:0;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gs-result-content{flex:1;font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gs-result-time{font-size:11px;color:var(--text-light);flex-shrink:0}.gs-highlight{background:#fff3cd;color:var(--primary);font-weight:500;padding:0 1px;border-radius:2px}.msg-highlight{animation:msgHighlight 2.5s ease}@keyframes msgHighlight{0%{background:#ff4b4b26}70%{background:#ff4b4b1a}to{background:transparent}}.recording-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--white);border-top:1px solid var(--border)}.recording-cancel-btn{background:none;border:none;cursor:pointer;color:#999;padding:6px;border-radius:50%;display:flex;align-items:center;justify-content:center}.recording-cancel-btn:hover{color:#f44;background:#ff00000d}.recording-indicator{flex:1;display:flex;align-items:center;gap:8px;justify-content:center}.recording-dot{width:10px;height:10px;border-radius:50%;background:#f44;animation:recordPulse 1s ease infinite}@keyframes recordPulse{0%,to{opacity:1}50%{opacity:.3}}.recording-time{font-size:18px;font-weight:500;color:var(--text);font-variant-numeric:tabular-nums}.recording-send-btn{background:none;border:none;cursor:pointer;padding:6px;border-radius:50%;display:flex;align-items:center;justify-content:center}.recording-send-btn:hover{background:var(--primary-light)}.voice-bubble{display:flex;align-items:center;gap:8px;cursor:pointer;min-width:80px;padding:4px 0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.voice-duration{font-size:14px;color:var(--text);white-space:nowrap}.voice-bubble.self .voice-duration{color:#fff}.voice-waves{display:flex;align-items:center;gap:2px;height:18px}.voice-waves span{display:block;width:3px;border-radius:2px;background:var(--text-light)}.voice-bubble.self .voice-waves span{background:#ffffffb3}.voice-waves span:nth-child(1){height:8px}.voice-waves span:nth-child(2){height:14px}.voice-waves span:nth-child(3){height:10px}.voice-bubble.playing .voice-waves span{animation:voiceWave .8s ease infinite}.voice-bubble.playing .voice-waves span:nth-child(2){animation-delay:.15s}.voice-bubble.playing .voice-waves span:nth-child(3){animation-delay:.3s}@keyframes voiceWave{0%,to{transform:scaleY(1)}50%{transform:scaleY(.4)}}.voice-message-wrapper{display:flex;flex-direction:column;gap:4px}.voice-transcription{font-size:12px;color:var(--text-light);line-height:1.4;padding:2px 0;max-width:240px;word-break:break-word}.bubble.self .voice-transcription{color:#fffc}.voice-btn{background:none;border:none;cursor:pointer;color:var(--text-light);padding:4px;border-radius:6px;display:flex;align-items:center}.voice-btn:hover{color:var(--primary);background:var(--primary-light)}.invite-panel{background:var(--white);border-radius:12px;width:90%;max-width:420px;padding:0;overflow:hidden}.invite-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.invite-header h3{font-size:16px;font-weight:600}.invite-content{padding:24px 20px;display:flex;flex-direction:column;align-items:center;gap:16px}.invite-qr{padding:16px;background:var(--white);border:1px solid var(--border);border-radius:8px}.invite-tip{font-size:13px;color:var(--text-light);text-align:center}.invite-link-row{display:flex;gap:8px;width:100%}.invite-link-input{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:6px;font-size:13px;background:var(--bg-secondary);font-family:monospace}.invite-copy-btn{padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:6px;font-size:13px;cursor:pointer;white-space:nowrap}.invite-copy-btn:hover{background:var(--primary-dark)}.invite-meta{font-size:12px;color:var(--text-light)}.invite-options{display:flex;gap:12px;align-items:center;padding-top:12px;border-top:1px solid var(--border);width:100%;flex-wrap:wrap}.invite-options label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text)}.invite-options select{padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:13px}.invite-regen-btn{padding:6px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;font-size:13px;cursor:pointer;margin-left:auto}.invite-regen-btn:hover{background:var(--bg-hover)}.invite-loading{padding:40px;text-align:center;color:var(--text-light)}.invite-code-section{width:100%;text-align:center;padding:20px;background:var(--bg-secondary);border-radius:8px;margin-bottom:8px}.invite-code-label{font-size:13px;color:var(--text-light);margin-bottom:8px}.invite-code-value{font-size:32px;font-weight:700;letter-spacing:4px;color:var(--primary);font-family:Courier New,monospace}.invite-code-hint{font-size:12px;color:var(--text-light);margin-top:8px}.join-org-panel{background:var(--white);border-radius:12px;width:90%;max-width:420px;padding:0;overflow:hidden}.join-org-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.join-org-header h3{font-size:16px;font-weight:600}.join-org-content{padding:24px 20px}.join-org-info{text-align:center;padding:20px;background:var(--bg-secondary);border-radius:8px;margin-bottom:20px}.join-org-type{font-size:14px;color:var(--text-light);margin-bottom:12px}.join-org-hint{font-size:13px;color:var(--text-light)}.join-org-actions{display:flex;gap:12px}.join-org-actions .btn{flex:1}.join-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:20px}.join-card{background:var(--white);border-radius:12px;padding:40px 32px;max-width:400px;width:100%;text-align:center;box-shadow:0 4px 12px #0000001a}.join-icon{font-size:48px;margin-bottom:16px}.join-org-name{font-size:20px;font-weight:600;color:var(--text);margin-bottom:8px}.join-tip{font-size:14px;color:var(--text-light);margin-bottom:24px}.join-btn{width:100%;padding:12px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:15px;cursor:pointer;font-weight:500}.join-btn:hover{background:var(--primary-dark)}.join-btn:disabled{opacity:.6;cursor:not-allowed}.join-error{font-size:15px;color:#e74c3c;margin-bottom:20px}.join-success{font-size:18px;font-weight:500;color:var(--primary);margin-bottom:8px}.join-loading{padding:20px;color:var(--text-light)}.about-panel{background:var(--white);border-radius:12px;width:90%;max-width:480px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.about-header{display:flex;flex-direction:column;align-items:center;padding:40px 20px 30px;background:var(--white);color:var(--text)}.about-logo{width:80px;height:80px;margin-bottom:16px}.about-logo-img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.about-title{font-size:24px;font-weight:600;margin-bottom:4px}.about-version{font-size:14px;color:var(--text-light)}.about-divider{height:1px;background:var(--border)}.about-section{flex:1;overflow-y:auto;padding:20px}.about-section-title{font-size:14px;font-weight:600;color:var(--text-light);margin-bottom:12px;padding-left:4px}.version-list{display:flex;flex-direction:column;gap:8px}.version-item{background:var(--bg-secondary);border-radius:8px;overflow:hidden}.version-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;transition:background .2s}.version-header:hover{background:var(--bg-hover)}.version-info{display:flex;align-items:center;gap:12px}.version-number{font-size:15px;font-weight:600;color:var(--text)}.version-date{font-size:13px;color:var(--text-light)}.version-arrow{color:var(--text-light);transition:transform .2s}.version-arrow.expanded{transform:rotate(180deg)}.version-features{padding:0 16px 12px;border-top:1px solid var(--border);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.feature-item{font-size:13px;color:var(--text);line-height:1.6;padding:6px 0}.about-close-btn{margin:16px 20px 20px;padding:12px;background:var(--bg-secondary);border:none;border-radius:8px;font-size:15px;color:var(--text);cursor:pointer;transition:background .2s}.about-close-btn:hover{background:var(--bg-hover)}.bot-factory-list,.bot-factory-detail{flex:1;overflow-y:auto;padding:0}.factory-icon-wrapper{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;flex-shrink:0}.search-bar{padding:12px 20px;border-bottom:1px solid var(--border);background:var(--bg)}.search-bar input{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:6px;font-size:14px;background:var(--bg-secondary);color:var(--text)}.search-bar input:focus{outline:none;border-color:var(--primary)}.bot-factory-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg);z-index:1000;display:flex;flex-direction:column}.bot-factory-fullscreen .chat-container{height:100%;display:flex;flex-direction:column}.bot-factory-fullscreen .bot-factory-list,.bot-factory-fullscreen .bot-factory-detail,.bot-factory-fullscreen .test-records-list{flex:1;overflow-y:auto;padding-top:12px}.bot-factory-list .profile-card:first-child{margin-top:0}.bot-avatar-small{width:32px;height:32px;min-width:32px;border-radius:6px;background:var(--primary);display:flex;align-items:center;justify-content:center;margin-right:12px}.bot-avatar-small-img{width:32px;height:32px;min-width:32px;border-radius:6px;-o-object-fit:cover;object-fit:cover;margin-right:12px}.bot-list-item-content{flex:1;display:flex;align-items:center;justify-content:space-between;gap:12px}.bot-list-name{flex:1;text-align:left}.bot-list-visibility{font-size:13px;padding:4px 10px;border-radius:12px;white-space:nowrap}.bot-list-visibility.private{background:#fff7e6;color:#d46b08}.bot-list-visibility.public{background:#e6f7ff;color:#1890ff}.bot-manage-panel{background:var(--white);border-radius:12px;width:90%;max-width:500px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.bot-manage-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.bot-manage-header h3{margin:0;font-size:18px;color:var(--text)}.bot-manage-content{flex:1;overflow-y:auto;padding:20px}.bot-manage-avatar-section{display:flex;flex-direction:column;align-items:center;margin-bottom:24px;padding:20px 0}.bot-manage-avatar-img{width:80px;height:80px;border-radius:16px;-o-object-fit:cover;object-fit:cover;margin-bottom:12px}.bot-manage-avatar-default{width:80px;height:80px;border-radius:16px;background:var(--primary);display:flex;align-items:center;justify-content:center;margin-bottom:12px}.bot-manage-avatar-hint{font-size:14px;color:var(--primary);cursor:pointer}.bot-avatar-default{width:56px;height:56px;border-radius:6px;background:var(--primary);display:flex;align-items:center;justify-content:center;margin-right:16px}.bot-manage-avatar{display:flex;justify-content:center;margin-bottom:20px}.bot-avatar-large{width:80px;height:80px;border-radius:16px;background:var(--primary);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #ff4b4b4d}.bot-manage-info{margin-bottom:20px}.bot-manage-name{font-size:20px;font-weight:600;color:var(--text);margin-bottom:16px;display:flex;align-items:center;gap:8px}.bot-manage-detail{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid #f5f5f5}.bot-manage-detail .label{width:80px;color:var(--text-light);font-size:14px}.bot-manage-detail .value{flex:1;color:var(--text);font-size:14px}.bot-manage-description{margin-top:16px;padding:12px;background:#f9f9f9;border-radius:8px}.bot-manage-description .label{color:var(--text-light);font-size:13px;margin-bottom:6px}.bot-manage-description .value{color:var(--text);font-size:14px;line-height:1.6}.bot-manage-edit{margin-bottom:20px}.bot-manage-edit .form-group{margin-bottom:16px}.bot-manage-edit label{display:block;margin-bottom:6px;color:var(--text);font-size:14px;font-weight:500}.bot-manage-edit input,.bot-manage-edit textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:14px;color:var(--text);font-family:inherit;resize:vertical}.bot-manage-edit input:focus,.bot-manage-edit textarea:focus{outline:none;border-color:var(--primary)}.bot-manage-edit-actions{display:flex;gap:12px;margin-top:16px}.btn-secondary{flex:1;padding:10px;background:#f5f5f5;color:var(--text);border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:background .2s}.btn-secondary:hover{background:#e8e8e8}.btn-primary{flex:1;padding:10px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:background .2s}.btn-primary:hover{background:var(--primary-dark)}.btn-icon{background:none;border:none;padding:4px;cursor:pointer;color:var(--text-light);transition:color .2s}.btn-icon:hover{color:var(--primary)}.bot-manage-actions{display:flex;flex-direction:column;gap:8px}.select-mode-header{background:var(--header-bg);color:#fff;padding:16px 20px;min-height:60px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.select-cancel-btn{background:none;border:none;color:#fff;font-size:15px;cursor:pointer;padding:4px 8px}.select-count{flex:1;text-align:center;font-size:16px;font-weight:500}.select-actions{display:flex;gap:12px}.select-action-btn{background:#fff3;border:none;color:#fff;padding:6px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:background .2s}.select-action-btn:hover{background:#ffffff4d}.select-action-btn:disabled{opacity:.4;cursor:not-allowed}.select-action-btn.delete{background:#e74c3ccc}.select-action-btn.delete:hover{background:#e74c3c}.message-row.select-mode{padding-left:8px}.msg-select-box{display:flex;align-items:center;justify-content:center;width:32px;flex-shrink:0;cursor:pointer}.select-checkbox{width:22px;height:22px;border:2px solid #ccc;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.select-checkbox.checked{background:var(--primary);border-color:var(--primary)}.forward-options-modal{width:400px;max-width:90vw}.forward-options{display:flex;flex-direction:column;gap:12px;margin-top:16px}.forward-option-btn{display:flex;align-items:center;gap:16px;padding:16px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:all .2s;text-align:left}.forward-option-btn:hover{background:var(--bg-hover);border-color:var(--primary)}.forward-option-btn svg{flex-shrink:0;color:var(--primary)}.option-title{font-size:15px;font-weight:500;color:var(--text);margin-bottom:4px}.option-desc{font-size:13px;color:var(--text-light);line-height:1.4}.msg-bubble{white-space:pre-wrap}.btn-change-pwd{width:100%;margin-top:20px;background:var(--bg-secondary);color:var(--text);border:1px solid var(--border)}.btn-change-pwd:hover{background:var(--bg-hover)}.btn-deactivate{width:100%;margin-top:10px;background:#fff2f0;color:#ff4d4f;border:1px solid #ffccc7}.btn-deactivate:hover{background:#fff1f0;border-color:#ff4d4f}.change-pwd-modal{background:var(--white);border-radius:12px;width:90%;max-width:420px;padding:0;overflow:hidden}.change-pwd-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.change-pwd-header h3{font-size:16px;font-weight:600}.change-pwd-form{padding:20px}.change-pwd-form .form-group{margin-bottom:16px}.change-pwd-form label{display:block;margin-bottom:8px;font-size:14px;color:var(--text);font-weight:500}.new-user-setup-modal{background:var(--white);border-radius:12px;width:90%;max-width:420px;padding:0;overflow:hidden}.new-user-setup-header{padding:20px;text-align:center;border-bottom:1px solid var(--border)}.new-user-setup-header h3{font-size:18px;font-weight:600}.new-user-setup-content{padding:24px 20px}.new-user-setup-content .form-group{margin-bottom:20px}.new-user-setup-content label{display:block;margin-bottom:8px;font-size:14px;color:var(--text);font-weight:500}.new-user-pwd-hint{margin-top:8px;font-size:12px;color:var(--text-light);line-height:1.5}.dark .modal-overlay{background:#0009}.dark .modal,.dark .modal-content{background:#1e293b;color:#fff}.dark .modal-close{color:#94a3b8}.dark .contacts-panel{background:#0f172a}.dark .contact-item:hover{background:#ffffff1a}.dark .contact-name{color:#fff}.dark .contact-username{color:#c4b5fdcc}.dark .notify-settings-panel{background:#1e293b;color:#fff}.dark .notify-settings-header{border-bottom-color:#ffffff1a}.dark .notify-settings-header h3{color:#fff}.dark .notify-setting-item:hover{background:#ffffff1a}.dark .notify-setting-title{color:#fff}.dark .notify-setting-desc{color:#c4b5fd99}.dark .profile-edit-modal{background:#1e293b;color:#fff}.dark .profile-edit-header{background:#1e293b;border-bottom-color:#ffffff1a}.dark .profile-edit-header h3,.dark .profile-edit-back{color:#fff}.dark .profile-edit-field label{color:#c4b5fdcc}.dark .profile-edit-field input{background:#ffffff1a;border-color:#fff3;color:#fff}.dark .profile-edit-field input::-moz-placeholder{color:#c4b5fd80}.dark .profile-edit-field input::placeholder{color:#c4b5fd80}.dark .profile-edit-value.readonly{color:#c4b5fd80!important}.dark .profile-edit-orgs{background:#ffffff0d}.dark .profile-edit-org-item{border-color:#ffffff1a;color:#fff}.dark .gender-btn{background:#ffffff1a;color:#c4b5fdcc;border-color:#fff3}.dark .gender-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.dark .btn-change-pwd{background:#ffffff1a;color:#fff}.dark .btn-deactivate{background:#ef44441a;border-color:#ef444433;color:#ff4d4f}.dark .change-pwd-modal{background:#1e293b;color:#fff}.dark .change-pwd-header{border-bottom-color:#ffffff1a}.dark .change-pwd-header h3{color:#fff}.dark .change-pwd-form label{color:#c4b5fdcc}.dark .change-pwd-form input{background:#ffffff1a;border-color:#fff3;color:#fff}.dark .change-pwd-form input::-moz-placeholder{color:#c4b5fd80}.dark .change-pwd-form input::placeholder{color:#c4b5fd80}.dark .pwd-input-group{background:#ffffff1a}.dark .pwd-eye{color:#c4b5fd80}.dark .user-guide-modal{background:#1e293b;color:#fff}.dark .modal-header h3{color:#fff}.dark .guide-tabs{border-bottom-color:#ffffff1a}.dark .guide-tab{background:#ffffff1a;color:#c4b5fdcc}.dark .guide-tab.active{background:var(--primary);color:#fff}.dark .guide-section-title{color:#fff}.dark .guide-step-text{color:#c4b5fdcc}.dark .about-panel{background:#1e293b}.dark .about-header{background:#1e293b;color:#fff}.dark .about-title{color:#fff}.dark .about-version{color:#c4b5fdcc}.dark .about-divider{background:#ffffff1a}.dark .about-section-title{color:#c4b5fdcc}.dark .about-close-btn{background:#ffffff1a;color:#fff}.dark .version-item{background:#ffffff08}.dark .version-number{color:#fff}.dark .version-date,.dark .version-arrow{color:#64748b}.dark .version-features,.dark .feature-item{color:#94a3b8}.dark .bot-manage-panel{background:#1e293b}.dark .bot-manage-header{border-bottom-color:#ffffff0f}.dark .bot-manage-header h3{color:#fff}.dark .bot-manage-info .label{color:#64748b}.dark .bot-manage-info .value{color:#fff}.dark .bot-manage-description .label{color:#64748b}.dark .bot-manage-description .value{color:#94a3b8}.dark .profile-action-btn{color:#fff}.dark .profile-action-btn:hover{background:#ffffff0d}.dark .global-search-overlay{background:#0009}.dark .global-search-panel{background:#0f172a;color:#fff}.dark .global-search-header{border-bottom-color:#ffffff0f}.dark .global-search-input-wrap{background:#ffffff0d}.dark .global-search-input-wrap input{color:#fff}.dark .global-search-input-wrap input::-moz-placeholder{color:#64748b}.dark .global-search-input-wrap input::placeholder{color:#64748b}.dark .gs-cancel-btn{color:#94a3b8}.dark .gs-clear-btn,.dark .gs-status{color:#64748b}.dark .gs-group{border-color:#ffffff0f}.dark .gs-group-name{color:#fff}.dark .gs-group-count{color:#64748b}.dark .gs-result-item:hover{background:#ffffff0d}.dark .gs-result-sender{color:#94a3b8}.dark .gs-result-content{color:#fff}.dark .gs-result-time{color:#64748b}.dark .bot-factory-list,.dark .bot-factory-detail{background:#ffffff08}.dark .detail-section{background:#ffffff08;border-color:#ffffff0f}.dark .detail-section-title{color:#fff}.dark .detail-label{color:#64748b}.dark .detail-value{color:#fff}.dark .tab-page-empty{color:#64748b}.dark .empty-hint{color:#475569}.dark .chat-header{background:#0f172a;border-bottom-color:#ffffff1a}.dark .chat-header-title,.dark .back-btn{color:#fff}.dark .search-bar input{background:#ffffff08;border-color:#ffffff0f;color:#fff}.dark .search-bar input::-moz-placeholder{color:#64748b}.dark .search-bar input::placeholder{color:#64748b}.dark .version-log{color:#94a3b8}.dark .version-meta{color:#64748b}.dark .test-env-name{color:#fff}.dark .test-record-meta,.dark .test-record-label{color:#64748b}.dark .test-record-text{color:#94a3b8}.dark .chat-panel,.dark .chat-panel-empty{background:#0f172a}.dark .message-input-area{background:#0f172a;border-top-color:#ffffff0f}.dark .input-row textarea{background:#ffffff0d;border-color:#ffffff1a;color:#fff}.dark .input-row textarea::-moz-placeholder{color:#94a3b899}.dark .input-row textarea::placeholder{color:#94a3b899}.dark .input-row textarea:focus{border-color:#a855f7;background:#ffffff14}.dark .send-btn{background:#a855f7}.dark .send-btn:hover{background:#9333ea}.dark .input-toolbar button{color:#64748b}.dark .input-toolbar button:hover,.dark .input-toolbar button.active{color:#a855f7;background:#a855f71a}.dark .msg-bubble{background:#ffffff1a;color:#fff;box-shadow:none}.dark .message-row.self .msg-bubble{background:#a855f733;color:#fff}.dark .msg-sender{color:#94a3b899}.dark .msg-time{color:#94a3b880}.dark .msg-bubble .file-link{color:#a855f7}.dark .voice-hold-btn{background:#ffffff0d;border-color:#ffffff1a;color:#fff}.dark .chat-header{background:#0f172a;border-bottom-color:#ffffff0f;color:#fff}.dark .chat-header .chat-title{color:#fff}.dark .chat-header .chat-subtitle{color:#94a3b8}.dark .conv-context-menu{background:#1e293b;border-color:#ffffff1a;box-shadow:0 8px 24px #0006}.dark .conv-context-menu button{color:#fff}.dark .conv-context-menu button:hover{background:#ffffff0d}.dark .conv-context-menu button.danger{color:#f87171}.dark .confirm-dialog{background:#1e293b;color:#fff;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 24px #0006}.dark .confirm-dialog h3{color:#fff}.dark .confirm-dialog p{color:#94a3b8}.dark .image-send-modal{background:#1e293b;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 24px #0006}.dark .mention-popup{background:#1e293b;border-color:#ffffff1a;box-shadow:0 8px 24px #0006}.dark .mention-popup .mention-item{color:#fff}.dark .mention-popup .mention-item:hover,.dark .mention-popup .mention-item.active{background:#ffffff0d}.dark .contact-actions button{background:#ffffff0d;color:#94a3b8;border-color:#ffffff0f}.dark .contact-actions button:hover{background:#ffffff1a;color:#fff}.dark .btn-small{background:#ffffff0d;color:#94a3b8}.dark .btn-small:hover{background:#ffffff1a}.dark .btn-danger{background:#ef44441a;color:#f87171;border-color:#ef444433}.dark .btn-secondary{background:#ffffff0d;color:#94a3b8}.dark .pending-item{background:#f59e0b1a}.dark .bot-badge.private{background:#f59e0b1a;color:#fbbf24}.dark .btn-visibility.is-public{background:#22c55e1a!important;color:#4ade80!important}.dark .btn-visibility.is-private{background:#f59e0b1a!important;color:#fbbf24!important}.dark .bot-list-visibility.private{background:#f59e0b1a;color:#fbbf24}.dark .bot-list-visibility.public{background:#3b82f61a;color:#60a5fa}.dark .gs-highlight{background:#f59e0b33}.dark .chat-search-result-item{border-bottom-color:#ffffff0f}.dark .chat-search-result-item:hover{background:#ffffff0d}.dark .bot-manage-detail{border-bottom-color:#ffffff0f}[data-panel],[data-panel]>div{height:100%!important}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:14px;line-height:20px}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-gray-400::-moz-placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.placeholder\:text-gray-400::placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-text-placeholder::-moz-placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.placeholder\:text-text-placeholder::placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-y-0:after{content:var(--tw-content);top:0;bottom:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:4px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.last\:border-b-0:last-child{border-bottom-width:0px}.focus-within\:border-brand:focus-within{--tw-border-opacity: 1;border-color:rgb(255 75 75 / var(--tw-border-opacity, 1))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-400:hover{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-600:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-brand-light:hover{--tw-bg-opacity: 1;background-color:rgb(255 107 107 / var(--tw-bg-opacity, 1))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-green-50:hover{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.hover\:bg-info-600:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:bg-sec-bg:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-sec-bg-alt:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:bg-slate-600:hover{--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-primary-600:hover{--tw-text-opacity: 1;color:rgb(124 58 237 / var(--tw-text-opacity, 1))}.hover\:text-red-500:hover{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.hover\:text-red-600:hover{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:text-text-primary:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.hover\:text-text-secondary:hover{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-90:hover{opacity:.9}.focus\:border-brand:focus{--tw-border-opacity: 1;border-color:rgb(255 75 75 / var(--tw-border-opacity, 1))}.focus\:border-info-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-primary-500:focus{--tw-border-opacity: 1;border-color:rgb(139 92 246 / var(--tw-border-opacity, 1))}.focus\:border-primary-600:focus{--tw-border-opacity: 1;border-color:rgb(124 58 237 / var(--tw-border-opacity, 1))}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-purple-500\/30:focus{--tw-ring-color: rgb(168 85 247 / .3)}.focus\:ring-purple-500\/50:focus{--tw-ring-color: rgb(168 85 247 / .5)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--background))}.active\:bg-blue-500:active{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.active\:bg-gray-100:active{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.active\:bg-gray-200:active{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.active\:bg-input-bg:active{--tw-bg-opacity: 1;background-color:rgb(245 245 245 / var(--tw-bg-opacity, 1))}.active\:bg-white\/20:active{background-color:#fff3}.active\:opacity-60:active{opacity:.6}.active\:opacity-70:active{opacity:.7}.active\:opacity-80:active{opacity:.8}.hover\:enabled\:bg-info-600:enabled:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-gray-300:disabled{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.disabled\:bg-text-placeholder:disabled{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.disabled\:text-gray-300:disabled{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\:opacity-100{opacity:1}.group.destructive .group-\[\.destructive\]\:border-muted\/40{border-color:hsl(var(--muted) / .4)}.group.destructive .group-\[\.destructive\]\:text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover{border-color:hsl(var(--destructive) / .3)}.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover{background-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover{color:hsl(var(--destructive-foreground))}.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus{--tw-ring-color: hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus{--tw-ring-offset-color: #dc2626}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x: 16px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity: .8}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y: -100%}.dark\:rounded-2xl:is(.dark *){border-radius:32px}.dark\:rounded-\[18px_18px_18px_4px\]:is(.dark *){border-radius:18px 18px 18px 4px}.dark\:rounded-\[18px_18px_4px_18px\]:is(.dark *){border-radius:18px 18px 4px}.dark\:border:is(.dark *){border-width:1px}.dark\:\!border-purple-400\/50:is(.dark *){border-color:#c084fc80!important}.dark\:border-blue-500\/30:is(.dark *){border-color:#3b82f64d}.dark\:border-blue-800:is(.dark *){--tw-border-opacity: 1;border-color:rgb(30 64 175 / var(--tw-border-opacity, 1))}.dark\:border-error-500\/20:is(.dark *){border-color:#ef444433}.dark\:border-green-500\/20:is(.dark *){border-color:#22c55e33}.dark\:border-red-500\/20:is(.dark *){border-color:#ef444433}.dark\:border-slate-900:is(.dark *){--tw-border-opacity: 1;border-color:rgb(15 23 42 / var(--tw-border-opacity, 1))}.dark\:border-transparent:is(.dark *){border-color:transparent}.dark\:border-white\/10:is(.dark *){border-color:#ffffff1a}.dark\:border-white\/20:is(.dark *){border-color:#fff3}.dark\:border-white\/30:is(.dark *){border-color:#ffffff4d}.dark\:border-white\/\[0\.06\]:is(.dark *){border-color:#ffffff0f}.dark\:bg-amber-500\/10:is(.dark *){background-color:#f59e0b1a}.dark\:bg-amber-500\/20:is(.dark *){background-color:#f59e0b33}.dark\:bg-black\/60:is(.dark *){background-color:#0009}.dark\:bg-blue-500\/10:is(.dark *){background-color:#3b82f61a}.dark\:bg-blue-500\/20:is(.dark *){background-color:#3b82f633}.dark\:bg-blue-900\/20:is(.dark *){background-color:#1e3a8a33}.dark\:bg-error-500\/10:is(.dark *){background-color:#ef44441a}.dark\:bg-green-500\/10:is(.dark *){background-color:#22c55e1a}.dark\:bg-green-500\/20:is(.dark *){background-color:#22c55e33}.dark\:bg-green-900\/20:is(.dark *){background-color:#14532d33}.dark\:bg-orange-500\/20:is(.dark *){background-color:#f9731633}.dark\:bg-pink-500\/20:is(.dark *){background-color:#ec489933}.dark\:bg-purple-200\/50:is(.dark *){background-color:#e9d5ff80}.dark\:bg-purple-500:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.dark\:bg-purple-500\/10:is(.dark *){background-color:#a855f71a}.dark\:bg-purple-500\/20:is(.dark *){background-color:#a855f733}.dark\:bg-red-500\/10:is(.dark *){background-color:#ef44441a}.dark\:bg-red-500\/15:is(.dark *){background-color:#ef444426}.dark\:bg-red-500\/20:is(.dark *){background-color:#ef444433}.dark\:bg-slate-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-700:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-900:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-900\/95:is(.dark *){background-color:#0f172af2}.dark\:bg-slate-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(2 6 23 / var(--tw-bg-opacity, 1))}.dark\:bg-teal-500\/20:is(.dark *){background-color:#14b8a633}.dark\:bg-white:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.dark\:bg-white\/10:is(.dark *){background-color:#ffffff1a}.dark\:bg-white\/20:is(.dark *){background-color:#fff3}.dark\:bg-white\/5:is(.dark *){background-color:#ffffff0d}.dark\:bg-white\/\[0\.03\]:is(.dark *){background-color:#ffffff08}.dark\:bg-white\/\[0\.06\]:is(.dark *){background-color:#ffffff0f}.dark\:bg-yellow-500\/20:is(.dark *){background-color:#eab30833}.dark\:\!bg-gradient-to-r:is(.dark *){background-image:linear-gradient(to right,var(--tw-gradient-stops))!important}.dark\:bg-gradient-to-r:is(.dark *){background-image:linear-gradient(to right,var(--tw-gradient-stops))}.dark\:\!from-pink-500\/20:is(.dark *){--tw-gradient-from: rgb(236 72 153 / .2) var(--tw-gradient-from-position) !important;--tw-gradient-to: rgb(236 72 153 / 0) var(--tw-gradient-to-position) !important;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important}.dark\:from-pink-500:is(.dark *){--tw-gradient-from: #ec4899 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 72 153 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:from-violet-600:is(.dark *){--tw-gradient-from: #7c3aed var(--tw-gradient-from-position);--tw-gradient-to: rgb(124 58 237 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:via-purple-700:is(.dark *){--tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #7e22ce var(--tw-gradient-via-position), var(--tw-gradient-to)}.dark\:\!to-purple-500\/20:is(.dark *){--tw-gradient-to: rgb(168 85 247 / .2) var(--tw-gradient-to-position) !important}.dark\:to-purple-500:is(.dark *){--tw-gradient-to: #a855f7 var(--tw-gradient-to-position)}.dark\:to-slate-900:is(.dark *){--tw-gradient-to: #0f172a var(--tw-gradient-to-position)}.dark\:text-amber-400:is(.dark *){--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.dark\:text-green-400:is(.dark *){--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.dark\:text-pink-300:is(.dark *){--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity, 1))}.dark\:text-purple-200:is(.dark *){--tw-text-opacity: 1;color:rgb(233 213 255 / var(--tw-text-opacity, 1))}.dark\:text-purple-200\/40:is(.dark *){color:#e9d5ff66}.dark\:text-purple-200\/50:is(.dark *){color:#e9d5ff80}.dark\:text-purple-200\/60:is(.dark *){color:#e9d5ff99}.dark\:text-purple-200\/80:is(.dark *){color:#e9d5ffcc}.dark\:text-purple-300:is(.dark *){--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity, 1))}.dark\:text-purple-400:is(.dark *){--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.dark\:text-red-400:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:text-slate-200:is(.dark *){--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.dark\:text-slate-300:is(.dark *){--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.dark\:text-slate-400:is(.dark *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.dark\:text-slate-500:is(.dark *){--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.dark\:text-slate-600:is(.dark *){--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:placeholder-purple-200\/50:is(.dark *)::-moz-placeholder{color:#e9d5ff80}.dark\:placeholder-purple-200\/50:is(.dark *)::placeholder{color:#e9d5ff80}.dark\:shadow-none:is(.dark *){--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.dark\:shadow-black\/30:is(.dark *){--tw-shadow-color: rgb(0 0 0 / .3);--tw-shadow: var(--tw-shadow-colored)}.dark\:shadow-purple-500\/30:is(.dark *){--tw-shadow-color: rgb(168 85 247 / .3);--tw-shadow: var(--tw-shadow-colored)}.dark\:backdrop-blur-md:is(.dark *){--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.dark\:backdrop-blur-xl:is(.dark *){--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.dark\:placeholder\:text-purple-200\/50:is(.dark *)::-moz-placeholder{color:#e9d5ff80}.dark\:placeholder\:text-purple-200\/50:is(.dark *)::placeholder{color:#e9d5ff80}.dark\:placeholder\:text-slate-500:is(.dark *)::-moz-placeholder{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.dark\:placeholder\:text-slate-500:is(.dark *)::placeholder{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.dark\:focus-within\:border-purple-400:focus-within:is(.dark *){--tw-border-opacity: 1;border-color:rgb(192 132 252 / var(--tw-border-opacity, 1))}.dark\:focus-within\:ring-1:focus-within:is(.dark *){--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.dark\:focus-within\:ring-purple-500\/30:focus-within:is(.dark *){--tw-ring-color: rgb(168 85 247 / .3)}.dark\:hover\:bg-blue-500:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-blue-500\/10:hover:is(.dark *){background-color:#3b82f61a}.dark\:hover\:bg-blue-500\/20:hover:is(.dark *){background-color:#3b82f633}.dark\:hover\:bg-blue-900\/30:hover:is(.dark *){background-color:#1e3a8a4d}.dark\:hover\:bg-green-500\/10:hover:is(.dark *){background-color:#22c55e1a}.dark\:hover\:bg-red-500\/10:hover:is(.dark *){background-color:#ef44441a}.dark\:hover\:bg-red-500\/20:hover:is(.dark *){background-color:#ef444433}.dark\:hover\:bg-red-900\/10:hover:is(.dark *){background-color:#7f1d1d1a}.dark\:hover\:bg-slate-800:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-white\/10:hover:is(.dark *){background-color:#ffffff1a}.dark\:hover\:bg-white\/20:hover:is(.dark *){background-color:#fff3}.dark\:hover\:bg-white\/5:hover:is(.dark *){background-color:#ffffff0d}.dark\:hover\:bg-white\/\[0\.04\]:hover:is(.dark *){background-color:#ffffff0a}.dark\:hover\:text-red-400:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:hover\:text-slate-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:focus\:border-purple-400:focus:is(.dark *){--tw-border-opacity: 1;border-color:rgb(192 132 252 / var(--tw-border-opacity, 1))}.dark\:focus\:ring-1:focus:is(.dark *){--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.dark\:focus\:ring-purple-500\/30:focus:is(.dark *){--tw-ring-color: rgb(168 85 247 / .3)}.dark\:active\:bg-white\/10:active:is(.dark *){background-color:#ffffff1a}.dark\:active\:bg-white\/\[0\.15\]:active:is(.dark *){background-color:#ffffff26}.dark\:disabled\:bg-white\/10:disabled:is(.dark *){background-color:#ffffff1a}.dark\:disabled\:text-purple-200\/30:disabled:is(.dark *){color:#e9d5ff4d}.dark\:disabled\:text-slate-400:disabled:is(.dark *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}@media(min-width:640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:mt-0{margin-top:0}.sm\:h-16{height:64px}.sm\:w-16{width:64px}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(8px * var(--tw-space-x-reverse));margin-left:calc(8px * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:p-10{padding:40px}.sm\:text-left{text-align:left}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y: 100%}}@media(min-width:768px){.md\:hidden{display:none}.md\:max-h-\[85vh\]{max-height:85vh}.md\:max-h-\[90vh\]{max-height:90vh}.md\:w-\[90\%\]{width:90%}.md\:w-\[95\%\]{width:95%}.md\:max-w-\[420px\]{max-width:420px}.md\:max-w-full{max-width:100%}.md\:flex-col{flex-direction:column}.md\:p-4{padding:16px}.md\:px-4{padding-left:16px;padding-right:16px}.md\:px-6{padding-left:24px;padding-right:24px}.md\:py-3{padding-top:12px;padding-bottom:12px}.md\:py-4{padding-top:16px;padding-bottom:16px}.md\:text-base{font-size:16px;line-height:24px}.md\:text-sm{font-size:14px;line-height:20px}}.\[\&\+div\]\:text-xs+div{font-size:12px;line-height:16px}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:16px;height:16px}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}
