/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-medium:500;--tracking-tight:-.025em;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--drop-shadow-xl:0 9px 7px #0000001a;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:#060812;--color-card:#0c1120;--color-foreground:#eef3ff;--color-muted:#111a2d;--color-muted-foreground:#7e90be;--color-primary:#6b88ff;--color-border:#95a8e22e}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.end{inset-inline-end:var(--spacing)}.top-1\/2{top:50%}.top-\[6px\]{top:6px}.right-0{right:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-\[6px\]{left:6px}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mt-2{margin-top:calc(var(--spacing) * 2)}.ml-6{margin-left:calc(var(--spacing) * 6)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-\[60px\]{height:60px}.h-\[200px\]{height:200px}.h-full{height:100%}.w-1\/4{width:25%}.w-\[60px\]{width:60px}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.max-w-\[420px\]{max-width:420px}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-125{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-grab{cursor:grab}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.overflow-hidden{overflow:hidden}.rounded-\[1\.6rem\]{border-radius:1.6rem}.rounded-\[2rem\]{border-radius:2rem}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-border\/50{border-color:#95a8e217}@supports (color:color-mix(in lab, red, red)){.border-border\/50{border-color:color-mix(in oklab, var(--color-border) 50%, transparent)}}.border-primary\/20{border-color:#6b88ff33}@supports (color:color-mix(in lab, red, red)){.border-primary\/20{border-color:color-mix(in oklab, var(--color-primary) 20%, transparent)}}.bg-background{background-color:var(--color-background)}.bg-background\/50{background-color:#06081280}@supports (color:color-mix(in lab, red, red)){.bg-background\/50{background-color:color-mix(in oklab, var(--color-background) 50%, transparent)}}.bg-card{background-color:var(--color-card)}.bg-muted\/30{background-color:#111a2d4d}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab, var(--color-muted) 30%, transparent)}}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.bg-white\/10{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.bg-linear-to-l{--tw-gradient-position:to left}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-l{--tw-gradient-position:to left in oklab}}.bg-linear-to-l{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-linear-to-r{--tw-gradient-position:to right}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-r{--tw-gradient-position:to right in oklab}}.bg-linear-to-r{background-image:linear-gradient(var(--tw-gradient-stops))}.from-background{--tw-gradient-from:var(--color-background);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.whitespace-nowrap{white-space:nowrap}.text-foreground{color:var(--color-foreground)}.text-muted-foreground{color:var(--color-muted-foreground)}.text-primary{color:var(--color-primary)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-primary\/5{--tw-shadow-color:#6b88ff0d}@supports (color:color-mix(in lab, red, red)){.shadow-primary\/5{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-primary) 5%, transparent) var(--tw-shadow-alpha), transparent)}}.drop-shadow-xl{--tw-drop-shadow-size:drop-shadow(0 9px 7px var(--tw-drop-shadow-color,#0000001a));--tw-drop-shadow:drop-shadow(var(--drop-shadow-xl));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,)}.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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-500{--tw-duration:.5s;transition-duration:.5s}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.hover\:-translate-y-1:hover{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:shadow-primary\/10:hover{--tw-shadow-color:#6b88ff1a}@supports (color:color-mix(in lab, red, red)){.hover\:shadow-primary\/10:hover{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-primary) 10%, transparent) var(--tw-shadow-alpha), transparent)}}}.active\:cursor-grabbing:active{cursor:grabbing}@media (width>=40rem){.sm\:h-\[240px\]{height:240px}.sm\:rounded-\[2\.5rem\]{border-radius:2.5rem}.sm\:rounded-\[2rem\]{border-radius:2rem}.sm\:p-2{padding:calc(var(--spacing) * 2)}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:pb-8{padding-bottom:calc(var(--spacing) * 8)}}}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;min-height:100dvh;margin:0}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}.animated-tabs-container{background:#1e293b80;border:1px solid #95a8e233;border-radius:9999px;width:fit-content;margin-bottom:24px;padding:4px;display:flex}.animated-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:9999px;outline:none;align-items:center;gap:8px;padding:8px 16px;font-family:inherit;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .3s;display:flex;position:relative}.animated-tab:hover:not(.active){color:var(--text-primary);background:#ffffff0d}.animated-tab.active{color:#fff}.animated-tab-bg{background:var(--accent);z-index:0;border-radius:9999px;position:absolute;inset:0;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.animated-tab-content{z-index:10;align-items:center;gap:8px;display:flex;position:relative}.animated-tab-icon{transition:transform .3s}.animated-tab-icon.scale-110{transform:scale(1.1)}.animated-tab-badge{color:#fff;background:#fff3;border:1px solid #ffffff4d;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:4px;padding:0 6px;font-size:.7rem;font-weight:600;display:inline-flex}:root{--bg-base:#060812;--bg-surface:#0c1120;--bg-surface-2:#111a2d;--bg-elevated:#15203a;--bg-hover:#1b2846;--bg-press:#1f3054;--bg-glass:#141e369e;--border:#95a8e233;--border-strong:#95a8e25c;--border-focus:#6d83ffb3;--text-primary:#eef3ff;--text-secondary:#b9c6e7;--text-muted:#7e90be;--accent:#6b88ff;--accent-strong:#8ca3ff;--accent-soft:#6b88ff29;--accent-glow:#6b88ff57;--success:#35d3a7;--error:#ef6b7a;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--radius-pill:999px;--shadow-sm:0 4px 16px #03061066;--shadow-md:0 12px 38px #0308167a;--shadow-lg:0 22px 52px #030816a6;--motion-fast:.16s;--motion-normal:.28s;--motion-slow:.48s;--ease-premium:cubic-bezier(.2, .7, .2, 1);--sidebar-w:360px;--header-h:70px}body{background:radial-gradient(circle at 14% -8%, #6b88ff24, transparent 38%), radial-gradient(circle at 100% 96%, #4373ff24, transparent 34%), var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;height:100dvh;font-family:-apple-system,BlinkMacSystemFont,Inter,SF Pro Text,Segoe UI,sans-serif;overflow:hidden}#root{height:100dvh}.app{isolation:isolate;flex-direction:column;height:100dvh;display:flex;position:relative;overflow:hidden}.app-ambient{pointer-events:none;z-index:0;filter:blur(42px);opacity:.6;animation:10s ease-in-out infinite alternate ambient-float;position:absolute}.app-ambient-top{background:radial-gradient(circle,#6b88ff57 0%,#0000 68%);width:420px;height:260px;top:-140px;left:26%}.app-ambient-bottom{background:radial-gradient(circle,#54aeff38 0%,#0000 72%);width:350px;height:200px;bottom:-120px;right:12%}.app-header{height:var(--header-h);min-height:var(--header-h);-webkit-backdrop-filter:blur(16px)saturate(120%);backdrop-filter:blur(16px)saturate(120%);z-index:20;background:radial-gradient(circle at 14% 10%,#7b96ff38,#0000 32%),linear-gradient(#101a2ef5,#0a101ef0);border-bottom:1px solid #a0b4f452;flex-shrink:0;align-items:center;gap:14px;padding:0 26px;display:flex;position:relative;box-shadow:0 12px 30px #0408138c}.app-header:after{content:"";background:linear-gradient(90deg,#4666d400,#7e9affb8,#4666d400);height:2px;position:absolute;inset:auto 0 0}.header-brand{align-items:center;gap:10px;display:flex}.header-brand-mark{color:#05070f;background:radial-gradient(circle at 20% 20%,#ffffffe6,#0000 52%),linear-gradient(#fff,#f1f4ff);border:1px solid #ffffffbd;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.88rem;font-weight:760;display:inline-flex;box-shadow:0 0 0 4px #6b88ff33,0 10px 20px #3c58d952}.header-logo-text{letter-spacing:-.04em;color:#f2f6ff;-webkit-user-select:none;user-select:none;text-shadow:0 0 16px #7491fc61;font-size:1.62rem;font-weight:820;line-height:1}.header-logo-dot{color:#9ab1ff;text-shadow:0 0 18px #6a86f6d1}.header-divider{background:var(--border);width:1px;height:18px}.header-tag{letter-spacing:.1em;text-transform:uppercase;color:#bdc9e9;border-radius:var(--radius-pill);background:#22315575;border:1px solid #a0b4f457;padding:5px 12px;font-size:.69rem;font-weight:620}.header-status{color:#c9d5f5;text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:7px;margin-left:auto;font-size:.73rem;display:flex}.status-dot{background:var(--success);border-radius:50%;width:7px;height:7px;animation:2.4s ease-in-out infinite status-pulse;box-shadow:0 0 0 3px #35d3a72e,0 0 10px #35d3a7a6}.app-body{z-index:1;flex:1;min-height:0;display:flex;overflow:hidden}.sidebar{flex:0 0 var(--sidebar-w);width:var(--sidebar-w);min-width:var(--sidebar-w);border-right:1px solid var(--border);background:linear-gradient(#0b1120e6,#080d18e6);flex-direction:column;gap:14px;padding:22px 16px 16px;display:flex}.sessions-sidebar{border-left:1px solid var(--border);background:linear-gradient(#0b1120eb,#080d18eb);flex-direction:column;flex:0 0 280px;width:280px;min-width:280px;display:flex;overflow:hidden}.sessions-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 14px 10px;display:flex}.sessions-label{letter-spacing:.13em;text-transform:uppercase;color:var(--text-muted);font-size:.64rem;font-weight:670}.new-chat-btn{background:var(--accent-soft);border-radius:var(--radius-pill);color:var(--accent-strong);cursor:pointer;transition:background var(--motion-fast) var(--ease-premium), border-color var(--motion-fast) var(--ease-premium);border:1px solid #6b88ff4d;align-items:center;gap:5px;padding:5px 10px;font-size:.75rem;font-weight:560;display:flex}.new-chat-btn:hover{background:#6b88ff3d;border-color:#6b88ff80}.sessions-list{flex-direction:column;flex:1;gap:2px;padding:8px;display:flex;overflow-y:auto}.sessions-list::-webkit-scrollbar{width:4px}.sessions-list::-webkit-scrollbar-track{background:0 0}.sessions-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.sessions-empty{text-align:center;color:var(--text-muted);padding:20px 8px;font-size:.8rem}.session-item{border-radius:var(--radius-md);cursor:pointer;text-align:left;width:100%;transition:background var(--motion-fast) var(--ease-premium);background:0 0;border:none;align-items:flex-start;gap:8px;padding:9px 8px;display:flex;position:relative}.session-item:hover{background:var(--bg-hover)}.session-item.active{background:var(--accent-soft)}.session-item-icon{color:var(--text-muted);flex-shrink:0;margin-top:1px}.session-item.active .session-item-icon{color:var(--accent)}.session-item-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.session-item-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:500;line-height:1.3;overflow:hidden}.session-item.active .session-item-title{color:var(--accent-strong)}.session-item-preview{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.session-item-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.session-item-date{color:var(--text-muted);white-space:nowrap;font-size:.68rem}.session-delete-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--motion-fast), background var(--motion-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:3px;display:none}.session-item:hover .session-delete-btn{display:flex}.session-delete-btn:hover{color:var(--error);background:#ef6b7a1f}.sidebar-section{padding:2px}.sidebar-upload{margin-top:auto}.sidebar-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(170deg, #8ca3ff14, transparent 42%), var(--bg-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-sm)}.sidebar-label{letter-spacing:.13em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px;font-size:.66rem;font-weight:670}.upload-zone-wrapper{flex-direction:column;gap:10px;padding:12px;display:flex}.upload-zone{border:1px dashed var(--border-strong);border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:border-color var(--motion-normal) var(--ease-premium), transform var(--motion-fast) ease, background var(--motion-normal) var(--ease-premium);background:#121b3161;padding:22px 14px;position:relative;overflow:hidden}.upload-zone:before{content:"";opacity:0;transition:opacity var(--motion-normal) var(--ease-premium);background:radial-gradient(at 50% 0,#6b88ff38 0%,#0000 72%);position:absolute;inset:0}.upload-zone:hover,.upload-zone.dragging{border-color:#8ea5ffa3;transform:translateY(-2px)}.upload-zone:hover:before,.upload-zone.dragging:before{opacity:1}.upload-zone.loading{cursor:default;pointer-events:none;opacity:.8}.upload-icon{opacity:.85;margin-bottom:8px;font-size:1.5rem;display:block}.upload-text{color:var(--text-primary);max-width:148px;margin:0 auto;font-size:.8rem;font-weight:560;line-height:1.35;display:block}.upload-hint{color:var(--text-muted);margin-top:5px;font-size:.68rem;display:block}.upload-status{border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-secondary);animation:fade-in var(--motion-normal) var(--ease-premium);background:#131f37c7;align-items:center;gap:6px;padding:8px 10px;font-size:.73rem;display:flex}.upload-status.success{color:#8ef3cf;border-color:#35d3a766}.upload-status.error{color:#ffc0c8;border-color:#ef6b7a6b}.url-row{gap:8px;display:flex}.url-input{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);transition:border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;background:#0d1426e6;outline:none;flex:1;min-width:0;padding:8px 11px;font-size:.78rem}.url-input::placeholder{color:var(--text-muted)}.url-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #6b88ff2e}.url-btn{background:linear-gradient(180deg, var(--accent-strong), var(--accent));color:#f7faff;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:transform var(--motion-fast) ease, filter var(--motion-fast) ease, box-shadow var(--motion-normal) var(--ease-premium);border:1px solid #acbcff80;flex-shrink:0;padding:8px 12px;font-size:.76rem;font-weight:650;box-shadow:0 0 #6b88ff00}.url-btn:hover:not(:disabled){filter:brightness(1.07);transform:translateY(-1px);box-shadow:0 10px 24px #4a6aea66}.url-btn:active:not(:disabled){transform:translateY(1px)scale(.98)}.url-btn:disabled{opacity:.45;cursor:default}.recent-docs{flex:1;min-height:0;padding:14px;overflow-y:auto}.recent-docs-list{flex-direction:column;gap:7px;list-style:none;display:flex}.recent-doc-item{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:default;transition:background var(--motion-fast) ease, border-color var(--motion-fast) ease, transform var(--motion-fast) ease;background:#0e162873;border:1px solid #0000;align-items:center;gap:10px;padding:8px 10px;font-size:.75rem;display:flex}.recent-doc-item:hover{color:var(--text-primary);background:#18233ed1;border-color:#7f98f557;transform:translate(2px)}.doc-icon{border-radius:var(--radius-pill);color:#c8d4ff;letter-spacing:.08em;background:#182644a6;border:1px solid #859df766;justify-content:center;align-items:center;min-width:34px;height:20px;font-size:.58rem;font-weight:700;display:inline-flex}.doc-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.doc-chunks{color:#b8c7ef;border-radius:var(--radius-pill);background:#6b88ff33;border:1px solid #869df459;flex-shrink:0;padding:1px 7px;font-size:.65rem}.main-chat{background:radial-gradient(circle at 72% 0,#5778ff21,#0000 38%),linear-gradient(#0b1221d9,#060a13f5);flex-direction:column;flex:1;display:flex;overflow:hidden}.chat-window{flex-direction:column;height:100%;display:flex;position:relative}.messages{scroll-behavior:smooth;flex-direction:column;flex:1;gap:22px;padding:32px 40px 24px;display:flex;overflow-y:auto}.messages::-webkit-scrollbar{width:5px}.messages::-webkit-scrollbar-track{background:0 0}.messages::-webkit-scrollbar-thumb{background:#7c8fc757;border-radius:3px}.empty-state{color:var(--text-secondary);text-align:center;animation:fade-slide var(--motion-slow) var(--ease-premium);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:40px;display:flex}.empty-logo-text{letter-spacing:-.045em;color:#d7e3ffdb;font-size:clamp(2rem,4vw,2.7rem);font-weight:770;line-height:1}.empty-state h2{color:var(--text-primary);letter-spacing:-.02em;font-size:clamp(1.05rem,1.8vw,1.3rem);font-weight:670}.empty-state p{color:var(--text-secondary);max-width:420px;font-size:.86rem;line-height:1.58}.empty-chips{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;display:flex}.empty-chip{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-secondary);cursor:pointer;transition:transform var(--motion-fast) ease, border-color var(--motion-fast) ease, color var(--motion-fast) ease, box-shadow var(--motion-normal) var(--ease-premium);background:#0e172ad6;padding:8px 14px;font-size:.75rem}.empty-chip:hover{border-color:var(--border-strong);color:#dce6ff;transform:translateY(-1px);box-shadow:0 10px 24px #4266e638}.message{animation:msg-in var(--motion-normal) var(--ease-premium);gap:12px;display:flex}.message.user{flex-direction:row-reverse}.message.assistant{flex-direction:row}.msg-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;margin-top:5px;font-size:.68rem;font-weight:760;display:flex}.message.user .msg-avatar{color:#fff;background:linear-gradient(#89a1ff,#5e7bff);box-shadow:0 8px 18px #5570f16b}.message.assistant .msg-avatar{border:1px solid var(--border);background:#121d35e6}.avatar-h{letter-spacing:-.05em;color:var(--accent-strong);font-size:.72rem;font-weight:780;line-height:1}.msg-content{flex-direction:column;gap:8px;max-width:min(74%,840px);display:flex}.bubble{border-radius:var(--radius-lg);transition:transform var(--motion-fast) ease, border-color var(--motion-fast) ease;padding:12px 16px;font-size:.89rem;line-height:1.6;position:relative}.bubble:before{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0}.message.user .bubble{color:#f7faff;border-bottom-right-radius:var(--radius-sm);background:linear-gradient(160deg,#6f8afffa,#5774f0f2);box-shadow:0 12px 26px #4866ec57}.message.user .bubble:before{box-shadow:inset 0 0 0 1px #e5edff1f}.message.assistant .bubble{border-bottom-left-radius:var(--radius-sm);box-shadow:var(--shadow-sm);background:radial-gradient(circle at 8% 10%,#7d98ff38,#0000 45%),#121c32d6;border:1px solid #8096dc52}.message.assistant .bubble:hover{border-color:#9ab0f580;transform:translateY(-1px)}.message.assistant .bubble:before{box-shadow:inset 0 0 0 1px #bbcaff14,0 0 34px #5b7bf824}.bubble p{white-space:pre-wrap;word-break:break-word}.bubble.prose>:first-child{margin-top:0}.bubble.prose>:last-child{margin-bottom:0}.bubble.prose h1,.bubble.prose h2,.bubble.prose h3,.bubble.prose h4{color:var(--text-primary);margin:1em 0 .4em;line-height:1.35}.bubble.prose h1{font-size:1.18rem;font-weight:720}.bubble.prose h2{font-size:1.06rem;font-weight:680}.bubble.prose h3{font-size:.96rem;font-weight:650}.bubble.prose h4{color:var(--text-secondary);font-size:.9rem;font-weight:620}.bubble.prose ul,.bubble.prose ol{margin:.5em 0;padding-left:1.4em}.bubble.prose li{margin:.25em 0}.bubble.prose li::marker{color:var(--accent)}.bubble.prose blockquote{border-left:3px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-secondary);background:#6b88ff0f;margin:.6em 0;padding:.35em .9em}.bubble.prose code{color:var(--accent-strong);background:#6b88ff1a;border:1px solid #6b88ff26;border-radius:5px;padding:.15em .4em;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.82em}.bubble.prose pre{border-radius:var(--radius-sm);border:1px solid var(--border);background:#060a14b3;margin:.6em 0;padding:12px 14px;overflow-x:auto}.bubble.prose pre code{color:var(--text-primary);background:0 0;border:none;padding:0;font-size:.8rem;line-height:1.55}.bubble.prose table{border-collapse:collapse;width:100%;margin:.6em 0;font-size:.82rem}.bubble.prose th,.bubble.prose td{border:1px solid var(--border);text-align:left;padding:6px 10px}.bubble.prose th{color:var(--text-primary);background:#6b88ff14;font-weight:640}.bubble.prose strong{color:var(--text-primary);font-weight:650}.bubble.prose a{color:var(--accent-strong);text-underline-offset:2px;text-decoration:underline}.bubble.prose a:hover{color:#fff}.bubble.prose hr{border:none;border-top:1px solid var(--border);margin:.8em 0}.typing-bubble{border:1px solid var(--border);border-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-sm);background:#0f182adb;align-items:center;gap:5px;width:fit-content;padding:13px 17px;display:flex}.typing-dot{background:#9fb2ec;border-radius:50%;width:6px;height:6px;animation:1.25s ease-in-out infinite typing}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}.sources{flex-direction:column;gap:6px;display:flex}.source-tag{border-radius:var(--radius-sm);transition:border-color var(--motion-fast) ease, transform var(--motion-fast) ease;background:#0e1526d1;border:1px solid #7e93d140;align-items:center;gap:8px;padding:6px 9px;font-size:.7rem;display:flex}.source-tag:hover{border-color:#91a8f775;transform:translateY(-1px)}.source-num{color:#b4c6ff;flex-shrink:0;font-size:.66rem;font-weight:700}.source-title{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.source-badge{border:1px solid var(--border);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;background:#1a2541b3;border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:.63rem;font-weight:600}.source-sim{color:#88e3c5;flex-shrink:0;font-size:.67rem;font-weight:700}.source-img{object-fit:cover;border:1px solid #849ce75c;border-radius:6px;max-width:96px;max-height:60px}.source-img-clickable{cursor:pointer;transition:border-color var(--motion-fast) ease, transform var(--motion-fast) ease, box-shadow var(--motion-normal) var(--ease-premium)}.source-img-clickable:hover{border-color:#99aef6bd;transform:scale(1.04);box-shadow:0 8px 18px #4568e547}.sources-toggle{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:border-color var(--motion-fast) ease, color var(--motion-fast) ease, background var(--motion-fast) ease;text-align:center;background:#10192bb8;border:1px dashed #8aa0e159;padding:6px 10px;font-size:.69rem;font-weight:560}.sources-toggle:hover{color:#dbe6ff;background:#182542e6;border-color:#9ab1f99e}.image-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;animation:fade-in var(--motion-normal) ease;background:#02050cd6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.image-modal{justify-content:center;align-items:center;max-width:90vw;max-height:88vh;display:flex;position:relative}.image-modal-img{border-radius:var(--radius-md);max-width:90vw;max-height:85vh;box-shadow:var(--shadow-lg);object-fit:contain;animation:modal-zoom-in var(--motion-normal) var(--ease-premium);border:1px solid #a1b5f75c}.image-modal-close{border:1px solid var(--border-strong);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;transition:transform var(--motion-fast) ease, color var(--motion-fast) ease, border-color var(--motion-fast) ease;background:#121d36eb;border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;display:flex;position:absolute;top:-14px;right:-14px}.image-modal-close:hover{color:var(--text-primary);border-color:#9cb1f6c2;transform:scale(1.06)}.input-area{border-top:1px solid var(--border);background:#070b15e6;padding:16px 28px 18px}.input-box{border-radius:var(--radius-xl);box-shadow:inset 0 0 0 1px #d7e2ff0f, 0 0 0 0 #6b88ff33, var(--shadow-md);transition:border-color var(--motion-normal) var(--ease-premium), box-shadow var(--motion-normal) var(--ease-premium), transform var(--motion-fast) ease;background:radial-gradient(circle at 12% 0,#7c97ff33,#0000 44%),linear-gradient(#141e34eb,#0f172bf2);border:1px solid #8aa0e359;align-items:flex-end;gap:12px;padding:11px 11px 11px 16px;display:flex}.input-box:focus-within{box-shadow:inset 0 0 0 1px #e1eaff24, 0 0 0 5px #5d7eff29, 0 0 42px #5d7eff38, var(--shadow-md);border-color:#a6b8f8c2;transform:translateY(-1px)}.input-box textarea{resize:none;color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;max-height:140px;padding:2px 0;font-family:inherit;font-size:.92rem;line-height:1.48}.input-box textarea::placeholder{color:#8da0d3}.send-btn{color:#f5f8ff;cursor:pointer;width:40px;height:40px;transition:transform var(--motion-fast) ease, box-shadow var(--motion-normal) var(--ease-premium), filter var(--motion-fast) ease;background:linear-gradient(#95abff,#6b88ff);border:1px solid #b0c1ff73;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 0 #6b88ff00,0 12px 24px #5672ea66}.send-btn:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)scale(1.03);box-shadow:0 0 0 7px #6b88ff2e,0 16px 26px #5672ea85}.send-btn:active:not(:disabled){transform:scale(.96)}.send-btn:disabled{opacity:.42;cursor:default;box-shadow:none}.send-btn svg{fill:currentColor;width:16px;height:16px}.input-actions{justify-content:flex-end;margin-bottom:8px;display:flex}.clear-chat-btn{color:#d4e0ff;cursor:pointer;height:34px;transition:color var(--motion-fast) ease, background var(--motion-fast) ease, border-color var(--motion-fast) ease, transform var(--motion-fast) ease;background:#141e34c7;border:1px solid #92a9f35c;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 12px 0 10px;display:inline-flex;box-shadow:0 8px 20px #060a1673}.clear-chat-btn:hover{color:#f5f8ff;background:#233256f2;border-color:#aabdf8b8;transform:translateY(-1px)}.clear-chat-btn:disabled{opacity:.42;cursor:default;box-shadow:none;transform:none}.clear-chat-btn svg{width:14px;height:14px}.clear-chat-btn span{letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:650}.input-hint{color:var(--text-muted);text-align:center;letter-spacing:.03em;margin-top:8px;font-size:.67rem}.spinner-ring{border:2px solid #cfdbff2e;border-top-color:#dbe4ff;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.7s linear infinite spin}*{scrollbar-width:thin;scrollbar-color:#8197d680 transparent}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-slide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes msg-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes modal-zoom-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes typing{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes status-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.72;transform:scale(.86)}}@keyframes ambient-float{0%{transform:translate(0,0)}to{transform:translateY(16px)}}@media (width<=1100px){:root{--sidebar-w:330px}.messages{padding:24px 22px 20px}.input-area{padding:13px 16px 15px}.msg-content{max-width:82%}}@media (width<=860px){.app-body{flex-direction:column}.sidebar{border-right:none;border-bottom:1px solid var(--border);flex-basis:auto;width:100%;min-width:100%;max-height:38vh;padding-top:18px}.sessions-sidebar{border-left:none;border-top:1px solid var(--border);flex-basis:auto;width:100%;min-width:100%;max-height:220px}.sessions-list{flex-flow:row;overflow:auto hidden}.session-item{min-width:160px;max-width:200px}.clear-chat-btn span{display:none}.clear-chat-btn{border-radius:8px;width:34px;padding:0}}.header-nav{gap:4px;margin-left:auto;display:flex}.header-logout-btn{border:1px solid var(--border,#ffffff14);border-radius:var(--radius-sm,8px);color:var(--fg-muted,#94a3b8);cursor:pointer;white-space:nowrap;background:0 0;margin-left:8px;padding:5px 12px;font-size:.78rem;transition:border-color .15s,color .15s}.header-logout-btn:hover{border-color:var(--error,#ef6b7a);color:var(--error,#ef6b7a)}.login-page{background:radial-gradient(circle at 30% 25%, #6b88ff1a, transparent 50%), radial-gradient(circle at 75% 75%, #4373ff12, transparent 45%), var(--bg-base);justify-content:center;align-items:center;gap:24px;height:100dvh;padding:32px;display:flex;overflow:hidden}.login-panel-left,.login-panel-right{justify-content:center;align-items:center;display:flex}.login-bento-card{border-radius:var(--radius-xl);text-align:center;background:radial-gradient(circle at 70% -10%, #7b96ff1f, transparent 50%), var(--bg-glass);-webkit-backdrop-filter:blur(16px)saturate(120%);backdrop-filter:blur(16px)saturate(120%);width:100%;max-width:480px;box-shadow:0 0 0 1px #d7e2ff0f inset, var(--shadow-lg);animation:fade-slide var(--motion-slow) var(--ease-premium);border:1px solid #95a8e233;flex-direction:column;align-items:center;padding:44px 36px;display:flex}.login-panel-tagline{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);opacity:.85;margin:0 0 14px;font-size:.68rem;font-weight:640}.login-panel-heading{letter-spacing:-.04em;color:var(--text-primary);text-shadow:0 0 40px #6b88ff33;margin:0 0 14px;font-size:2rem;font-weight:800;line-height:1.12}.login-panel-desc{color:var(--text-muted);max-width:320px;margin:0;font-size:.875rem;line-height:1.6}.login-card{border-radius:var(--radius-xl);text-align:center;background:radial-gradient(circle at 30% -10%, #7b96ff29, transparent 50%), var(--bg-glass);-webkit-backdrop-filter:blur(16px)saturate(120%);backdrop-filter:blur(16px)saturate(120%);width:100%;max-width:360px;box-shadow:0 0 0 1px #d7e2ff0f inset, var(--shadow-lg);animation:fade-slide var(--motion-slow) var(--ease-premium);border:1px solid #95a8e233;padding:44px 36px}.login-brand{color:#05070f;background:radial-gradient(circle at 20% 20%,#ffffffe6,#0000 52%),linear-gradient(#fff,#f1f4ff);border:1px solid #ffffffbd;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 16px;font-size:1.1rem;font-weight:760;display:inline-flex;box-shadow:0 0 0 5px #6b88ff33,0 14px 28px #3c58d952}.login-dot{color:#9ab1ff;text-shadow:0 0 18px #6a86f6d1}.login-title{letter-spacing:-.04em;color:#f2f6ff;text-shadow:0 0 16px #7491fc61;margin:0 0 2px;font-size:1.62rem;font-weight:820;line-height:1}.login-subtitle{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);border-radius:var(--radius-pill);background:#2231555c;border:1px solid #a0b4f43d;margin:0 0 32px;padding:5px 14px;font-size:.69rem;font-weight:620;display:inline-block}.login-form{flex-direction:column;gap:12px;display:flex}.login-input{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);transition:border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;background:#0d1426e6;outline:none;padding:12px 15px;font-family:inherit;font-size:.9rem}.login-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #6b88ff2e}.login-input::placeholder{color:var(--text-muted)}.login-error{color:var(--error);border-radius:var(--radius-sm);animation:fade-in var(--motion-normal) ease;background:#ef6b7a14;border:1px solid #ef6b7a33;margin:0;padding:8px 12px;font-size:.82rem}.login-btn{background:linear-gradient(180deg, var(--accent-strong), var(--accent));border-radius:var(--radius-sm);color:#f7faff;cursor:pointer;transition:transform var(--motion-fast) ease, filter var(--motion-fast) ease, box-shadow var(--motion-normal) var(--ease-premium);border:1px solid #acbcff80;margin-top:4px;padding:12px;font-family:inherit;font-size:.9rem;font-weight:650;box-shadow:0 12px 24px #5672ea59}.login-btn:hover:not(:disabled){filter:brightness(1.07);transform:translateY(-1px);box-shadow:0 16px 30px #4a6aea80}.login-btn:active:not(:disabled){transform:translateY(1px)scale(.98)}.login-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.admin-page{flex:1;width:100%;max-width:900px;min-height:0;margin:0 auto;padding:28px 32px;overflow-y:auto}.admin-header{align-items:center;gap:12px;margin-bottom:20px;display:flex}.admin-title{color:var(--fg,#e2e8f0);align-items:center;gap:8px;margin:0;font-size:1rem;font-weight:600;display:flex}.admin-count{color:var(--fg-muted,#94a3b8);background:var(--bg-elevated,#161b27);border:1px solid var(--border,#ffffff14);border-radius:20px;padding:2px 8px;font-size:.78rem;font-weight:500}.admin-refresh-btn{border:1px solid var(--border,#ffffff14);border-radius:var(--radius-sm,8px);color:var(--fg-muted,#94a3b8);cursor:pointer;background:0 0;margin-left:auto;padding:6px 14px;font-size:.82rem;transition:color .15s,border-color .15s}.admin-refresh-btn:hover{color:var(--fg,#e2e8f0);border-color:var(--fg-muted,#94a3b8)}.admin-error{border-radius:var(--radius-sm,8px);color:var(--error,#ef6b7a);background:#ef6b7a1a;border:1px solid #ef6b7a4d;margin-bottom:16px;padding:10px 14px;font-size:.85rem}.admin-loading,.admin-empty{text-align:center;color:var(--fg-muted,#94a3b8);padding:40px;font-size:.9rem}.admin-table-wrap{border:1px solid var(--border,#ffffff14);border-radius:var(--radius-md,14px);overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.85rem}.admin-table th{text-align:left;color:var(--fg-muted,#94a3b8);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border,#ffffff14);background:var(--bg-elevated,#161b27);padding:10px 14px;font-size:.78rem;font-weight:500}.admin-table td{color:var(--fg,#e2e8f0);border-bottom:1px solid var(--border,#ffffff0d);vertical-align:middle;padding:11px 14px}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:var(--bg-hover,#ffffff05)}.admin-td-name{text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.admin-td-type{color:var(--fg-muted,#94a3b8);text-transform:uppercase;font-size:.78rem}.admin-role-select{background:var(--bg-elevated,#161b27);color:var(--fg,#e2e8f0);border:1px solid var(--border,#ffffff14);border-radius:var(--radius-sm,8px);cursor:pointer;outline:none;padding:4px 8px;font-size:.75rem;transition:border-color .15s}.admin-role-select:hover{border-color:var(--fg-muted,#94a3b8)}.admin-role-select:focus{border-color:var(--accent,#6b88ff)}.admin-td-chunks{font-variant-numeric:tabular-nums;color:var(--fg-muted,#94a3b8)}.admin-td-date{color:var(--fg-muted,#94a3b8);white-space:nowrap;font-size:.8rem}.admin-td-actions{white-space:nowrap;text-align:right}.delete-btn{border-radius:var(--radius-sm,8px);color:var(--error,#ef6b7a);cursor:pointer;background:0 0;border:1px solid #ef6b7a4d;padding:4px 12px;font-size:.78rem;transition:background .15s,border-color .15s}.delete-btn:hover{border-color:var(--error,#ef6b7a);background:#ef6b7a1a}.delete-btn-cancel{border:1px solid var(--border,#ffffff14);border-radius:var(--radius-sm,8px);color:var(--fg-muted,#94a3b8);cursor:pointer;background:0 0;padding:4px 12px;font-size:.78rem;transition:color .15s}.delete-btn-cancel:hover{color:var(--fg,#e2e8f0)}.row-confirm-active td{background:#ef6b7a0a!important}.confirm-row td{border-bottom:1px solid var(--border,#ffffff14);background:#ef6b7a0f;padding:0}.confirm-inner{color:var(--fg,#e2e8f0);align-items:center;gap:16px;padding:10px 14px;font-size:.85rem;display:flex}.confirm-delete-btn{background:var(--error,#ef6b7a);border-radius:var(--radius-sm,8px);color:#fff;cursor:pointer;white-space:nowrap;border:none;margin-left:auto;padding:5px 14px;font-size:.82rem;font-weight:600;transition:opacity .15s}.confirm-delete-btn:disabled{opacity:.6;cursor:not-allowed}@keyframes blink{50%{opacity:0}}.login-info{color:var(--text-strong,#dfe4ff);border-radius:var(--radius-sm);animation:fade-in var(--motion-normal) ease;background:#7dd3fc14;border:1px solid #7dd3fc40;margin:0;padding:8px 12px;font-size:.82rem}.login-hint{color:var(--text-muted,#dfe4ff8c);text-align:center;margin:0;font-size:.75rem}.login-robot-scene{width:100%;height:100%;position:absolute;inset:0}.loader{border:2px solid #6b88ff33;border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}@media (width<=768px){.login-page{padding:24px 16px}.login-panel-right{display:none}}.approve-btn{border-radius:var(--radius-sm,8px);color:#7dd3fc;cursor:pointer;background:0 0;border:1px solid #7dd3fc59;margin-right:6px;padding:4px 12px;font-family:inherit;font-size:.78rem;transition:background .15s,border-color .15s}.approve-btn:hover{background:#7dd3fc1a;border-color:#7dd3fc}.admin-td-status{text-transform:uppercase;letter-spacing:.04em;font-size:.75rem}.status-requesting{color:#fcd34d}.status-approved{color:#7dd3fc}.status-rejected{color:var(--error,#ef6b7a)}.status-invited{color:#fb923c}.badge-invited{border-radius:var(--radius-pill);color:#fb923c;letter-spacing:.06em;vertical-align:middle;text-transform:uppercase;background:#fb923c26;border:1px solid #fb923c66;margin-left:8px;padding:1px 6px;font-size:.62rem;font-weight:600;display:inline-block}.admin-section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);margin-bottom:2px;padding:16px 0 8px;font-size:.7rem}.resend-btn{border-radius:var(--radius-sm);color:#fb923c;cursor:pointer;background:0 0;border:1px solid #fb923c59;margin-right:6px;padding:4px 12px;font-family:inherit;font-size:.78rem;transition:background .15s,border-color .15s}.resend-btn:hover{background:#fb923c1a;border-color:#fb923c}.add-user-form{max-width:640px;padding:20px 0}.add-user-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px;display:grid}.add-user-field{flex-direction:column;gap:4px;display:flex}.add-user-field.full-width{grid-column:1/-1}.add-user-label{color:var(--text-muted);letter-spacing:.03em;font-size:.75rem}.add-user-input{background:var(--bg-surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);transition:border-color var(--motion-fast,.15s);padding:8px 12px;font-family:inherit;font-size:.9rem}.add-user-input:focus{border-color:var(--border-focus);outline:none}.add-user-input::placeholder{color:var(--text-muted)}.add-user-submit-btn{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;margin-top:4px;padding:10px 24px;font-family:inherit;font-size:.9rem;font-weight:600;transition:opacity .15s}.add-user-submit-btn:hover:not(:disabled){opacity:.85}.add-user-submit-btn:disabled{opacity:.5;cursor:not-allowed}.add-user-success{color:#7dd3fc;border-radius:var(--radius-sm);background:#7dd3fc14;border:1px solid #7dd3fc40;margin:8px 0;padding:8px 12px;font-size:.82rem}.edit-btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;background:0 0;margin-right:6px;padding:4px 12px;font-family:inherit;font-size:.78rem;transition:background .15s,border-color .15s}.edit-btn:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-strong)}.admin-user-cell{align-items:center;gap:10px;display:flex}.admin-user-cell-info{flex-direction:column;gap:1px;display:flex}.admin-user-fullname{color:var(--text-muted);font-size:.72rem}.admin-avatar-sm{background:var(--accent-soft);border:1px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:relative;overflow:hidden}.admin-avatar-sm-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.admin-avatar-sm-initials{color:var(--accent-strong);letter-spacing:.02em;font-size:.72rem;font-weight:700}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:40;background:#070b16b8;animation:.15s fade-in;position:fixed;inset:0}.edit-user-drawer{background:var(--bg-surface);border-left:1px solid var(--border);z-index:50;flex-direction:column;width:min(480px,100vw);height:100dvh;animation:.2s cubic-bezier(.22,1,.36,1) slide-in-right;display:flex;position:fixed;top:0;right:0;overflow:hidden;box-shadow:-8px 0 40px #00000073}@keyframes slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}.edit-user-drawer-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.edit-user-drawer-title{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}.edit-user-close-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;font-family:inherit;font-size:1rem;transition:color .15s,background .15s}.edit-user-close-btn:hover{color:var(--text-primary);background:var(--accent-soft)}.edit-user-form{flex-direction:column;flex:1;gap:20px;padding:20px 24px 24px;display:flex;overflow-y:auto}.edit-user-avatar-section{border-bottom:1px solid var(--border);align-items:center;gap:16px;padding-bottom:16px;display:flex}.edit-user-avatar{background:var(--accent-soft);border:2px solid var(--border);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;transition:border-color .15s;display:flex;position:relative;overflow:hidden}.edit-user-avatar:hover{border-color:var(--accent)}.edit-user-avatar-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.edit-user-avatar-initials{color:var(--accent-strong);font-size:1.4rem;font-weight:700}.edit-user-avatar-overlay{opacity:0;background:#070b168c;justify-content:center;align-items:center;font-size:1.2rem;transition:opacity .15s;display:flex;position:absolute;inset:0}.edit-user-avatar:hover .edit-user-avatar-overlay{opacity:1}.edit-user-avatar-info{flex-direction:column;gap:6px;display:flex}.edit-user-username{color:var(--text-primary);font-size:.9rem;font-weight:600}.edit-user-status-badge{letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:600}.edit-user-avatar-btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;align-self:flex-start;padding:4px 12px;font-family:inherit;font-size:.75rem;transition:border-color .15s,color .15s}.edit-user-avatar-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent-strong)}.edit-user-actions{justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.edit-user-cancel-btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;padding:10px 20px;font-family:inherit;font-size:.9rem;transition:border-color .15s,color .15s}.edit-user-cancel-btn:hover:not(:disabled){border-color:var(--text-muted);color:var(--text-primary)}.stream-cursor{background:var(--accent,#4a90d9);vertical-align:text-bottom;width:2px;height:1em;margin-left:2px;animation:.9s step-end infinite blink;display:inline-block}.bubble.prose>.stream-cursor{margin-top:-.4em}.header-tab-bg{box-shadow:none!important;background:#6b88ff26!important}.header-nav .animated-tab.active{color:var(--accent-strong)}.header-nav .animated-tab:hover:not(.active){color:var(--text-primary);background:#ffffff0f}
