.fluid-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-bg);overflow:hidden;pointer-events:none;background:var(--color-bg-deep)}.fluid-bg__base{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;background:radial-gradient(60% 50% at 20% 18%,rgba(124,92,255,.18),transparent 60%),radial-gradient(55% 45% at 82% 78%,rgba(0,212,255,.16),transparent 60%),radial-gradient(50% 50% at 78% 14%,rgba(255,92,196,.1),transparent 60%),linear-gradient(160deg,var(--color-bg-deep),var(--color-bg))}.fluid-bg__blob{position:absolute;border-radius:var(--radius-round);filter:blur(var(--blur-xl));opacity:calc(.9 * var(--fb-intensity, 1));mix-blend-mode:screen}.fluid-bg__blob--1{width:48vw;height:48vw;top:-12vw;left:-8vw;background:radial-gradient(circle at 30% 30%,var(--aurora-1),transparent 68%);transform:translate3d(4%,-3%,0) scale(1.05)}.fluid-bg__blob--2{width:42vw;height:42vw;bottom:-14vw;right:-6vw;background:radial-gradient(circle at 50% 50%,var(--aurora-2),transparent 68%);transform:translate3d(-5%,4%,0) scale(1.08)}.fluid-bg__blob--3{width:34vw;height:34vw;top:30%;right:18%;background:radial-gradient(circle at 50% 50%,var(--aurora-3),transparent 70%);transform:translate3d(3%,3%,0) scale(.98)}.fluid-bg__blob--4{width:30vw;height:30vw;bottom:8%;left:22%;background:radial-gradient(circle at 50% 50%,var(--aurora-4),transparent 70%);transform:translate3d(-4%,3%,0) scale(1.1)}.fluid-bg__noise{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:overlay}.topbar{position:sticky;top:0;z-index:var(--z-sticky);display:flex;align-items:center;justify-content:space-between;height:var(--topbar-h);padding:0 var(--space-6);background:var(--glass-bg);backdrop-filter:blur(var(--blur-md));-webkit-backdrop-filter:blur(var(--blur-md));border-bottom:1px solid var(--glass-border)}.topbar__title{font-size:var(--fs-lg);font-weight:var(--fw-semibold)}.topbar__right{display:flex;align-items:center;gap:var(--space-5)}.topbar__project{display:flex;align-items:center;gap:var(--space-2);padding:6px 10px;border-radius:var(--radius-pill);border:1px solid var(--glass-border);background:#ffffff0d}.topbar__project-label{font-size:var(--fs-xs);color:var(--color-text-muted)}.topbar__project-select{max-width:160px;color:var(--color-text);background:transparent;border:0;outline:none;font-size:var(--fs-sm)}.topbar__tenant{border-color:#0b72856b;background:#0b72851a}.topbar__tenant-select{max-width:190px;font-weight:var(--fw-medium)}.topbar__project-select option{color:#111827}.topbar__quota{display:flex;flex-direction:column;gap:var(--space-1);min-width:160px}.topbar__quota-meta{display:flex;justify-content:space-between;font-size:var(--fs-xs)}.topbar__quota-label{color:var(--color-text-muted)}.topbar__quota-val{color:var(--color-text-secondary)}.topbar__quota-bar{height:6px;border-radius:var(--radius-pill);background:#ffffff14;overflow:hidden}.topbar__quota-fill{display:block;height:100%;border-radius:inherit;background:var(--gradient-accent);transition:width var(--dur-slow) var(--ease)}.topbar__user{position:relative}.topbar__avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-round);font-weight:var(--fw-semibold);color:#fff;background:var(--gradient-accent);box-shadow:var(--shadow-glow);transition:transform var(--dur-fast) var(--ease)}.topbar__avatar:hover{transform:scale(1.05)}.topbar__menu{position:absolute;top:calc(100% + var(--space-3));right:0;width:220px;padding:var(--space-3);border-radius:var(--radius-md);background:var(--glass-bg-strong);backdrop-filter:blur(var(--blur-lg));-webkit-backdrop-filter:blur(var(--blur-lg));border:1px solid var(--glass-border);box-shadow:var(--shadow-lg)}.topbar__menu-head{padding:var(--space-2) var(--space-2) var(--space-3);border-bottom:1px solid var(--glass-border);margin-bottom:var(--space-2)}.topbar__menu-name{font-weight:var(--fw-semibold)}.topbar__menu-sub{font-size:var(--fs-xs);color:var(--color-text-muted)}.topbar__menu-nav{display:flex;flex-direction:column;gap:var(--space-1)}.topbar__menu-item{display:block;width:100%;text-align:left;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--fs-base);color:var(--color-text-secondary);transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.topbar__menu-item:hover{background:var(--glass-highlight);color:var(--color-text)}.topbar__menu-item--danger:hover{color:var(--color-danger)}.brand{display:inline-flex;align-items:center;gap:var(--space-3)}.brand__mark{display:flex}.brand--sm .brand__mark{width:24px}.brand--md .brand__mark{width:30px}.brand--lg .brand__mark{width:40px}.brand__text{font-weight:var(--fw-bold);letter-spacing:-.01em}.brand--sm .brand__text{font-size:var(--fs-md)}.brand--md .brand__text{font-size:var(--fs-lg)}.brand--lg .brand__text{font-size:var(--fs-xl)}.workspace{display:flex;min-height:100vh}.workspace--gen-chat{height:100vh;min-height:0;overflow:hidden}.workspace--gen-chat .workspace__main{min-height:0}.workspace__sidebar{position:sticky;top:0;display:flex;flex-direction:column;width:var(--sidebar-w);height:100vh;padding:var(--space-5) var(--space-4);background:var(--glass-bg);backdrop-filter:blur(var(--blur-md));-webkit-backdrop-filter:blur(var(--blur-md));border-right:1px solid var(--glass-border)}.workspace__brand{flex-shrink:0;padding:var(--space-2) var(--space-3) var(--space-6)}.workspace__nav{display:flex;flex-direction:column;gap:var(--space-5);flex:1;min-height:0;padding-right:2px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--glass-border) transparent}.workspace__nav-group{display:flex;flex-direction:column;gap:var(--space-2)}.workspace__nav-group-title{margin:0;padding:0 var(--space-3);color:var(--color-text-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:1.5;letter-spacing:.08em}.workspace__nav-group-items{display:flex;flex-direction:column;gap:var(--space-1)}.workspace__nav .nav-item{min-height:40px;padding:var(--space-2) var(--space-3)}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-weight:var(--fw-medium);transition:background var(--dur-base) var(--ease),color var(--dur-base) var(--ease),transform var(--dur-fast) var(--ease)}.workspace__main{flex:1;display:flex;flex-direction:column;min-width:0}.workspace__content{flex:1;padding:var(--space-7) var(--space-7);max-width:var(--content-max);width:100%;margin:0 auto}.workspace__content--canvas{max-width:none;height:calc(100vh - var(--topbar-h));padding:var(--space-4)}.workspace__content--gen-chat{height:calc(100vh - var(--topbar-h));min-height:0;overflow:hidden}@media(max-width:860px){.workspace__sidebar{width:var(--sidebar-w-collapsed);padding:var(--space-4) var(--space-2)}.workspace__nav{gap:var(--space-2);padding-right:0}.workspace__nav-group{gap:var(--space-1)}.workspace__nav-group:not(:first-child){padding-top:var(--space-2);border-top:1px solid var(--glass-border)}.workspace__nav-group-title{display:none}.workspace__nav .nav-item{justify-content:center;padding-inline:var(--space-2)}.nav-item__label,.workspace__brand .brand__text{display:none}.workspace__content{padding:var(--space-5) var(--space-4)}.workspace__content--canvas{height:auto;padding:var(--space-3)}}.admin{display:flex;min-height:100vh}.admin__sidebar{position:sticky;top:0;display:flex;flex-direction:column;width:var(--sidebar-w);height:100vh;padding:var(--space-5) var(--space-4);background:var(--glass-bg);backdrop-filter:blur(var(--blur-md));-webkit-backdrop-filter:blur(var(--blur-md));border-right:1px solid var(--glass-border)}.admin__brand{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-6)}.admin__badge{padding:2px var(--space-2);border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--color-accent-2);background:var(--color-accent-soft)}.admin__nav{display:flex;flex-direction:column;gap:var(--space-2);flex:1}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-weight:var(--fw-medium);transition:background var(--dur-base) var(--ease),color var(--dur-base) var(--ease),transform var(--dur-fast) var(--ease)}.nav-item:hover{color:var(--color-text);background:var(--glass-highlight);transform:translate(2px)}.nav-item--active{color:var(--color-text);background:var(--color-accent-soft);box-shadow:inset 0 0 0 1px var(--color-accent-ring)}.nav-item--active .nav-item__icon{color:var(--color-accent-2)}.nav-item__icon{display:flex;flex-shrink:0}.admin__sidebar-foot{padding-top:var(--space-4);border-top:1px solid var(--glass-border)}.nav-item--ghost{color:var(--color-text-muted)}.admin__main{flex:1;display:flex;flex-direction:column;min-width:0}.admin__content{flex:1;padding:var(--space-7);max-width:var(--content-max);width:100%;margin:0 auto}@media(max-width:860px){.admin__sidebar{width:var(--sidebar-w-collapsed);padding:var(--space-4) var(--space-2)}.nav-item__label,.admin__badge,.admin__brand .brand__text{display:none}.admin__content{padding:var(--space-5) var(--space-4)}}.toast-host{position:fixed;top:var(--space-6);left:50%;transform:translate(-50%);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-3);pointer-events:none;width:min(92vw,420px)}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--glass-bg-strong);backdrop-filter:blur(var(--blur-lg));-webkit-backdrop-filter:blur(var(--blur-lg));border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);color:var(--color-text);font-size:var(--fs-base);cursor:pointer;pointer-events:auto}.toast__icon{display:flex;flex-shrink:0}.toast__msg{flex:1;word-break:break-word}.toast__copy{flex-shrink:0;align-self:flex-start;padding:2px var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:transparent;color:var(--color-text-secondary);font-size:var(--fs-sm);line-height:1.6;cursor:pointer;white-space:nowrap;transition:color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.toast__copy:hover{color:var(--color-text);border-color:var(--color-text-secondary)}.toast--success .toast__icon{color:var(--color-success)}.toast--error .toast__icon{color:var(--color-danger)}.toast--warning .toast__icon{color:var(--color-warning)}.toast--info .toast__icon{color:var(--color-info)}.toast-enter-active,.toast-leave-active{transition:opacity var(--dur-base) var(--ease),transform var(--dur-base) var(--ease-out)}.toast-enter-from{opacity:0;transform:translateY(-12px)}.toast-leave-to{opacity:0;transform:translateY(-8px) scale(.97)}:root{--color-bg: #0a0b0f;--color-bg-deep: #06070a;--color-bg-elevated: #12141c;--color-surface: #14161f;--color-surface-2: #1b1e2a;--color-text: #f3f5fb;--color-text-secondary: #aab2c5;--color-text-muted: #707892;--color-text-inverse: #0a0b0f;--color-accent: #7C5CFF;--color-accent-2: #00D4FF;--color-accent-soft: rgba(124, 92, 255, .16);--color-accent-ring: rgba(124, 92, 255, .45);--color-success: #3ddc97;--color-warning: #ffb454;--color-danger: #ff5d73;--color-info: #4cc2ff;--color-success-soft: rgba(61, 220, 151, .14);--color-warning-soft: rgba(255, 180, 84, .14);--color-danger-soft: rgba(255, 93, 115, .14);--color-info-soft: rgba(76, 194, 255, .14);--gradient-accent: linear-gradient(135deg, #7C5CFF 0%, #00D4FF 100%);--gradient-accent-soft: linear-gradient(135deg, rgba(124, 92, 255, .22) 0%, rgba(0, 212, 255, .22) 100%);--gradient-text: linear-gradient(120deg, #b7a6ff 0%, #7C5CFF 40%, #00D4FF 100%);--gradient-border: linear-gradient(135deg, rgba(255, 255, 255, .22), rgba(255, 255, 255, .04) 45%, rgba(124, 92, 255, .28));--gradient-surface: linear-gradient(160deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .015));--aurora-1: rgba(124, 92, 255, .5);--aurora-2: rgba(0, 212, 255, .4);--aurora-3: rgba(255, 92, 196, .3);--aurora-4: rgba(61, 134, 255, .32);--glass-bg: rgba(20, 22, 31, .55);--glass-bg-strong: rgba(20, 22, 31, .78);--glass-border: rgba(255, 255, 255, .1);--glass-highlight: rgba(255, 255, 255, .06);--blur-sm: 8px;--blur-md: 16px;--blur-lg: 28px;--blur-xl: 44px;--radius-xs: 8px;--radius-sm: 12px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 24px;--radius-pill: 999px;--radius-round: 50%;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 48px;--space-10: 64px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 8px 24px rgba(0, 0, 0, .38);--shadow-lg: 0 18px 48px rgba(0, 0, 0, .5);--shadow-glow: 0 8px 30px rgba(124, 92, 255, .35);--shadow-glow-strong: 0 10px 40px rgba(124, 92, 255, .55), 0 4px 16px rgba(0, 212, 255, .3);--shadow-inset: inset 0 1px 0 rgba(255, 255, 255, .06);--font-sans: "Inter", "HarmonyOS Sans", "HarmonyOS Sans SC", "Source Han Sans SC", "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", ui-monospace, "Cascadia Code", Menlo, Consolas, monospace;--fs-xs: 12px;--fs-sm: 13px;--fs-base: 14px;--fs-md: 15px;--fs-lg: 18px;--fs-xl: 22px;--fs-2xl: 28px;--fs-3xl: 36px;--fs-4xl: 48px;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--lh-tight: 1.2;--lh-normal: 1.5;--lh-relaxed: 1.7;--ease: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--dur-fast: .15s;--dur-base: .25s;--dur-slow: .4s;--dur-slower: .6s;--z-bg: 0;--z-base: 1;--z-sticky: 100;--z-dropdown: 1000;--z-modal: 2000;--z-toast: 3000;--sidebar-w: 240px;--sidebar-w-collapsed: 76px;--topbar-h: 64px;--content-max: 1280px}*,: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:var(--font-sans);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:var(--font-mono);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}.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}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline{display:inline}.table{display:table}.grid{display:grid}.hidden{display:none}.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))}.resize{resize:both}.border{border-width:1px}.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)}.ring{--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(3px + 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)}.blur{--tw-blur: blur(8px);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-filter{-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,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html,body,#root{height:100%}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-normal);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}#root{position:relative;isolation:isolate;min-height:100%}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{font-weight:var(--fw-semibold);line-height:var(--lh-tight)}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.16) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:var(--radius-pill);border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:#ffffff42;background-clip:content-box}::-moz-selection{background:var(--color-accent-soft);color:var(--color-text)}::selection{background:var(--color-accent-soft);color:var(--color-text)}:focus-visible{outline:2px solid var(--color-accent-ring);outline-offset:2px}.gradient-text{background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.glass{background:var(--glass-bg);backdrop-filter:blur(var(--blur-lg));-webkit-backdrop-filter:blur(var(--blur-lg));border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md),var(--shadow-inset)}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.full{width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes shimmer{0%{background-position:-160% 0}to{background-position:160% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.55}}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes flow-band{0%{background-position:0% 50%}to{background-position:200% 50%}}.anim-fade-up{animation:fade-up var(--dur-slow) var(--ease-out) both}.anim-fade-in{animation:fade-in var(--dur-base) var(--ease) both}.fade-enter-active,.fade-leave-active{transition:opacity var(--dur-base) var(--ease)}.fade-enter-from,.fade-leave-to{opacity:0}.fade-slide-enter-active{transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out)}.fade-slide-leave-active{transition:opacity var(--dur-base) var(--ease),transform var(--dur-base) var(--ease)}.fade-slide-enter-from{opacity:0;transform:translateY(14px)}.fade-slide-leave-to{opacity:0;transform:translateY(-8px)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
