:root{--color-bg-primary: #f7f7f4;--color-bg-elevated: #fdfdfb;--color-bg-dark: #171a18;--color-bg-dark-raised: #222724;--color-bg-dark-hover: #303632;--color-bg-accent: #eeefe9;--color-accent: #829b79;--color-accent-soft: #e3ebe0;--color-text-primary: #1a1d1b;--color-text-inverse: #f7f7f2;--color-text-muted: #6f746f;--color-border-light: #e1e3dc;--color-border-dark: #b9beb7;--color-focus: #607a59;--font-family-sans: "Manrope", "Avenir Next", "Segoe UI", sans-serif;--font-family-mono: "DM Mono", "SFMono-Regular", Consolas, monospace;--font-weight-light: 350;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-bold: 650;--font-weight-extrabold: 750;--letter-spacing-body: normal;--letter-spacing-heading: -.025em;--letter-spacing-nav: .11em;--line-height-body: 1.6;--line-height-heading: 1.08;--space-xs: .5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 8rem;--border-radius-none: 12px;--radius-xs: 8px;--radius-sm: 12px;--radius-md: 18px;--radius-lg: 26px;--radius-pill: 999px;--border-width-thin: 1px;--shadow-subtle: 0 1px 2px rgba(31, 39, 34, .04), 0 10px 32px rgba(31, 39, 34, .055);--shadow-raised: 0 2px 4px rgba(31, 39, 34, .04), 0 20px 55px rgba(31, 39, 34, .09);--motion-standard: cubic-bezier(.22, 1, .36, 1);--motion-snappy: cubic-bezier(.32, .72, 0, 1)}#root{width:100%;min-height:100dvh;margin:0 auto;font-optical-sizing:auto;font-family:var(--font-family-sans);line-height:var(--line-height-body);color-scheme:light;color:var(--color-text-primary);background:radial-gradient(circle at 76% 8%,rgba(130,155,121,.08),transparent 28rem),var(--color-bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:8px;height:8px;background:transparent}::-webkit-scrollbar-thumb{background:#6f746f5c;border:2px solid transparent;border-radius:var(--radius-pill);background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#6f746f94;border:2px solid transparent;background-clip:padding-box}html{scroll-behavior:smooth;background:var(--color-bg-primary)}body{margin:0;min-width:320px;min-height:100dvh;background:var(--color-bg-primary)}::selection{color:var(--color-text-primary);background:var(--color-accent-soft)}button,a,input,textarea,[role=button]{-webkit-tap-highlight-color:transparent}button,a,[role=button]{transition:transform .32s var(--motion-standard),background-color .32s var(--motion-standard),border-color .32s var(--motion-standard),color .32s var(--motion-standard),box-shadow .32s var(--motion-standard)}button:active:not(:disabled),[role=button]:active{transform:translateY(1px) scale(.985)}:focus-visible{outline:2px solid var(--color-focus)!important;outline-offset:3px}.skip-link{position:fixed;z-index:5;top:.75rem;left:.75rem;padding:.7rem 1rem;border-radius:var(--radius-pill);color:var(--color-text-inverse);background:var(--color-bg-dark);font-size:.75rem;font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-nav);text-transform:uppercase;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.dashboard-layout-container:after,.auth-shell:after{position:fixed;z-index:6;inset:0;pointer-events:none;content:"";opacity:.018;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.content-box{width:min(100%,1280px)!important;margin-inline:auto;padding:clamp(1.25rem,2.4vw,2.5rem)!important;background:transparent!important}.content-box--flush{width:100%!important;max-width:none!important;padding:0!important}.page-title{padding-bottom:clamp(1.25rem,2vw,2rem);border-bottom:1px solid var(--color-border-light)}.surface-card{background:var(--color-bg-elevated)!important;border-color:var(--color-border-light)!important;box-shadow:var(--shadow-subtle)}.primary-sidebar{position:relative;flex:0 0 auto;margin:10px 0 10px 10px;height:calc(100% - 20px)!important;border-radius:var(--radius-md);overflow:hidden;box-shadow:0 18px 50px #0f131030}.table-root{font-variant-numeric:tabular-nums}.table-root [role=row],.table-root [class*=css-]{transition:background-color .28s var(--motion-standard),color .28s var(--motion-standard)}.app-header{min-height:68px;border-bottom:1px solid var(--color-border-light);background:var(--color-bg-primary)!important}.chat-history-panel{margin:10px 0 10px 10px;height:calc(100% - 20px)!important;border:1px solid var(--color-border-light)!important;border-radius:var(--radius-md);background:var(--color-bg-elevated)!important;box-shadow:var(--shadow-subtle)}.auth-shell{position:relative;isolation:isolate;min-height:100dvh;overflow:hidden;background:var(--color-bg-primary)}.auth-brand-panel{position:relative;overflow:hidden;background:radial-gradient(circle at 18% 18%,rgba(181,205,170,.18),transparent 24rem),radial-gradient(circle at 85% 78%,rgba(124,151,114,.13),transparent 25rem),var(--color-bg-dark)!important}.auth-brand-panel:before{position:absolute;inset:1.25rem;border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-lg);content:""}.auth-brand-mark{position:relative;text-shadow:0 16px 50px rgba(0,0,0,.25)}.auth-brand-mark:before{display:block;width:38px;height:4px;margin:0 auto 1.5rem;border-radius:var(--radius-pill);content:"";background:var(--color-accent)}.auth-form-panel{position:relative;background:radial-gradient(circle at 100% 0%,rgba(130,155,121,.1),transparent 30rem),var(--color-bg-primary)!important}.auth-card{padding:clamp(1.75rem,3vw,3rem);border:1px solid rgba(185,190,183,.58);border-radius:var(--radius-lg);background:#fdfdfbdb;box-shadow:var(--shadow-raised)}.auth-card input{height:48px;padding-inline:.85rem!important;border:1px solid var(--color-border-light)!important;border-radius:var(--radius-sm)!important;background:var(--color-bg-primary)}.auth-card input:hover{border-color:var(--color-border-dark)!important}.auth-card input:focus{border-color:var(--color-focus)!important;box-shadow:0 0 0 3px #607a591f!important}.auth-primary-action{min-height:52px;border-radius:var(--radius-pill)!important;box-shadow:0 10px 28px #171a1829}.auth-primary-action:hover{transform:translateY(-2px);box-shadow:0 14px 34px #171a1838}@media(max-width:767px){.auth-brand-panel{min-height:176px!important}.auth-brand-panel:before{inset:.75rem}.auth-card{padding:1.5rem}.content-box{padding:1.25rem!important}.primary-sidebar,.chat-history-panel{margin:6px 0 6px 6px;height:calc(100% - 12px)!important}.app-header{min-height:60px;padding-inline:1rem!important}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.markdown-content{color:var(--color-text-primary);font-family:var(--font-family-sans);font-size:.95rem;line-height:1.55;letter-spacing:var(--letter-spacing-body)}.markdown-content>*:first-child{margin-top:0}.markdown-content>*:last-child{margin-bottom:0}.markdown-content p{margin:0 0 .8rem}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{margin:1.25rem 0 .6rem;font-family:var(--font-family-sans);font-weight:var(--font-weight-bold);line-height:1.25;color:var(--color-text-primary)}.markdown-content h1{font-size:1.45rem}.markdown-content h2{font-size:1.2rem}.markdown-content h3,.markdown-content h4{font-size:1rem}.markdown-content ul,.markdown-content ol{margin:.7rem 0 .9rem 1.25rem;padding:0}.markdown-content li{margin:.2rem 0;padding-left:.1rem}.markdown-content li>ul,.markdown-content li>ol{margin-top:.35rem;margin-bottom:.45rem}.markdown-content strong{font-weight:var(--font-weight-bold)}.markdown-content em{font-style:italic}.markdown-content code{font-family:SFMono-Regular,SF Mono,Consolas,Liberation Mono,Menlo,monospace;font-size:.86em;background:var(--color-bg-accent);padding:.15rem .35rem}.markdown-content pre{margin:.9rem 0 1rem;padding:.9rem 1rem;background:var(--color-bg-accent);border:var(--border-width-thin) solid var(--color-border-dark);overflow-x:auto}.markdown-content pre code{background:transparent;padding:0}.markdown-content blockquote{margin:1rem 0;padding:.1rem 0 .1rem .9rem;border-left:3px solid var(--color-border-dark);color:var(--color-text-muted)}.markdown-content table{width:100%;margin:1rem 0;border-collapse:collapse;table-layout:fixed}.markdown-content thead{background:var(--color-bg-accent)}.markdown-content th,.markdown-content td{border:var(--border-width-thin) solid var(--color-border-light);padding:.7rem .8rem;text-align:left;vertical-align:top;font-size:.92rem}.markdown-content th{font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.markdown-content tr:nth-child(2n) td{background:#e5e2de40}.markdown-content hr{border:0;border-top:var(--border-width-thin) solid var(--color-border-light);margin:1rem 0}.markdown-content a{color:inherit;text-decoration:underline;text-underline-offset:.15rem}.chat-markdown-content img{display:block;max-width:100%;max-height:min(26rem,60vh);width:auto;height:auto;margin:.9rem auto;object-fit:contain}.markdown-content{max-width:74ch;margin-inline:auto;padding:clamp(1rem,2vw,1.5rem);border-radius:var(--radius-md);color:var(--color-text-primary);background:var(--color-bg-elevated);font-family:var(--font-family-sans);font-size:.925rem;line-height:1.72;text-align:left;overflow-wrap:anywhere;text-wrap:pretty}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{color:var(--color-text-primary);font-family:var(--font-family-sans);font-weight:var(--font-weight-bold);letter-spacing:-.03em;line-height:1.18;text-wrap:balance}.markdown-content h1{margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border-light);font-size:clamp(1.8rem,4vw,2.5rem)}.markdown-content h2{margin:2.5rem 0 .9rem;padding-left:.9rem;border-left:3px solid var(--color-accent);font-size:clamp(1.4rem,3vw,1.85rem)}.markdown-content h3{margin:2rem 0 .75rem;font-size:1.35rem}.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:1.5rem 0 .65rem;font-size:1.05rem}.markdown-content p,.markdown-content ul,.markdown-content ol{margin:0 0 1rem}.markdown-content ul,.markdown-content ol{padding-left:1.5rem}.markdown-content li+li{margin-top:.35rem}.markdown-content li::marker{color:var(--color-accent);font-weight:var(--font-weight-bold)}.markdown-content strong{color:var(--color-text-primary);font-weight:var(--font-weight-bold)}.markdown-content em,.markdown-content cite,.markdown-content figcaption{color:var(--color-text-muted)}.markdown-content a{color:var(--color-focus);text-decoration-color:#607a5973;text-decoration-thickness:1px;text-underline-offset:.2em;transition:color .28s var(--motion-standard),text-decoration-color .28s var(--motion-standard)}.markdown-content a:hover{color:var(--color-text-primary);text-decoration-color:currentColor}.markdown-content blockquote{margin:1.5rem 0;padding:1rem 1.25rem;border:0;border-left:3px solid var(--color-accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--color-text-muted);background:var(--color-accent-soft)}.markdown-content code{padding:.15em .4em;border:1px solid var(--color-border-light);border-radius:6px;color:var(--color-text-primary);background:var(--color-bg-accent);font-family:var(--font-family-mono);font-size:.86em}.markdown-content pre{margin:1.25rem 0;padding:1rem 1.1rem;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);color:var(--color-text-inverse);background:var(--color-bg-dark);box-shadow:var(--shadow-subtle);overflow-x:auto}.markdown-content pre code{padding:0;border:0;color:inherit;background:transparent}.markdown-content table{width:100%;margin:1.25rem 0;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);border-spacing:0;background:var(--color-bg-elevated);font-variant-numeric:tabular-nums;overflow:hidden}.markdown-content th,.markdown-content td{padding:.75rem;border-bottom:1px solid var(--color-border-light);text-align:left;vertical-align:top}.markdown-content th{color:var(--color-text-primary);background:var(--color-bg-accent);font-weight:var(--font-weight-bold)}.markdown-content tr:last-child td{border-bottom:0}.markdown-content tbody tr:hover{background:var(--color-accent-soft)}.markdown-content img{max-width:100%;height:auto;margin:1.25rem auto;border-radius:var(--radius-sm);box-shadow:var(--shadow-subtle)}.markdown-content hr{margin:2rem 0;border:0;border-top:1px solid var(--color-border-light)}.markdown-content input[type=checkbox]{margin-right:.5rem;accent-color:var(--color-accent)}@media(max-width:767px){.markdown-content{padding:.875rem;font-size:.875rem}.markdown-content table{display:block;overflow-x:auto}}@media print{.markdown-content{max-width:none;padding:0;color:#111;background:#fff;box-shadow:none;font-size:11pt}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content table{break-inside:avoid}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.processing-spinner{animation:spin 1.5s cubic-bezier(.65,0,.35,1) infinite}.processing-badge{animation:spin 1s cubic-bezier(.65,0,.35,1) infinite}@keyframes pulse-color{0%,to{color:#9ca3af}50%{color:#4b5563}}.pulsing{animation:pulse-color 1.5s cubic-bezier(.37,0,.63,1) infinite}@keyframes ping{70%,to{transform:scale(2.5);opacity:0}}.animate-ping{animation:ping 1.5s cubic-bezier(0,0,.2,1) infinite}@keyframes loader-wave{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}@keyframes svg-pulse-color{0%,to{fill:#fa4747;filter:brightness(1) drop-shadow(0 0 2px rgba(219,17,10,.3))}50%{fill:#574234;filter:brightness(1.2) drop-shadow(0 0 8px rgba(153,179,231,.6))}}@keyframes svg-halo-glow{0%,to{filter:drop-shadow(0 0 4px rgba(219,108,10,.4)) drop-shadow(0 0 12px rgba(219,108,10,.2))}50%{filter:drop-shadow(0 0 8px rgba(235,123,31,.6)) drop-shadow(0 0 16px rgba(31,99,235,.4)) drop-shadow(0 0 24px rgba(31,99,235,.2))}}.svg-pulsing{animation:svg-pulse-color 1.5s cubic-bezier(.37,0,.63,1) infinite}.svg-pulsing-with-halo{animation:svg-pulse-color 1.5s cubic-bezier(.37,0,.63,1) infinite,svg-halo-glow 1.5s cubic-bezier(.37,0,.63,1) infinite}.markdown-content{line-height:1.6;word-wrap:break-word;font-family:var(--font-family-sans);color:var(--color-text-primary);font-size:14px}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin-top:1.5em;margin-bottom:.5em;font-weight:var(--font-weight-bold);line-height:1.25;color:var(--color-text-primary);font-family:inherit}.markdown-content h1{font-size:1.5em;border-bottom:1px solid var(--color-border-dark);padding-bottom:.3em}.markdown-content h2{font-size:1.25em;border-bottom:1px solid var(--color-border-dark);padding-bottom:.3em}.markdown-content h3{font-size:1.1em}.markdown-content h4{font-size:1em}.markdown-content p{margin-top:0;margin-bottom:1em}.markdown-content strong{font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.markdown-content ul,.markdown-content ol{margin-top:0;margin-bottom:1em;padding-left:1.5em}.markdown-content li{margin-bottom:.25em}.markdown-content li>p{margin-top:.5em}.markdown-content a{color:var(--color-text-primary);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;transition:all .2s}.markdown-content a:hover{color:var(--color-bg-dark);text-decoration-thickness:2px}.markdown-content code{padding:.2em .4em;margin:0;font-size:85%;background-color:var(--color-bg-accent);border:var(--border-width-thin) solid var(--color-border-dark);border-radius:var(--radius-xs);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace}.markdown-content pre{padding:16px;overflow:auto;font-size:85%;line-height:1.45;background-color:var(--color-bg-dark);color:var(--color-text-inverse);border:var(--border-width-thin) solid var(--color-border-dark);border-radius:var(--radius-sm);margin-bottom:1em}.markdown-content pre code{background-color:transparent;border:none;border-radius:0;color:inherit;padding:0}.markdown-content blockquote{padding:0 1em;color:var(--color-text-muted);border-left:4px solid var(--color-border-dark);margin:0 0 1em;background-color:var(--color-bg-accent)}.markdown-content hr{height:var(--border-width-thin);padding:0;margin:24px 0;background-color:var(--color-border-dark);border:0}
