:root{--app-height:100%}@supports (height:100dvh){:root{--vh-full:100dvh;--vh-half:50dvh;--vh-third:33.33dvh;--vh-quarter:25dvh}}@supports not (height:100dvh){:root{--vh-full:100vh;--vh-half:50vh;--vh-third:33.33vh;--vh-quarter:25vh}@supports (-webkit-touch-callout:none){:root{--vh-full:-webkit-fill-available;--vh-half:calc(-webkit-fill-available / 2);--vh-third:calc(-webkit-fill-available / 3);--vh-quarter:calc(-webkit-fill-available / 4)}}}.h-screen-dynamic{height:var(--vh-full)}.min-h-screen-dynamic{min-height:var(--vh-full)}.max-h-screen-dynamic{max-height:var(--vh-full)}.h-safe-area-bottom{height:env(safe-area-inset-bottom,0)}.p-safe-area-bottom,.pb-safe-area-bottom{padding-bottom:env(safe-area-inset-bottom,0)}.mt-safe-area-top{margin-top:env(safe-area-inset-top,0)}body,html{overscroll-behavior-y:none}.quick-suggestions::-webkit-scrollbar{display:none}.quick-suggestions{-ms-overflow-style:none;scrollbar-width:none}@media (max-width:640px){.indicator,.indicator.indicator,.micro-button,.micro-button.micro-button,.pagination-dot,.pagination-dot.pagination-dot,[role=button].indicator,[role=button].micro-button,[role=button].pagination-dot,button.indicator,button.micro-button,button.pagination-dot{min-height:unset!important;min-width:unset!important}[role=button]:not(.pagination-dot):not(.micro-button):not(.indicator),a[href],button:not(.pagination-dot):not(.micro-button):not(.indicator){min-height:44px;min-width:44px}[role=button]:active,a[href]:active,button:active{opacity:.8;transform:scale(.98);transition:all .15s ease}}@media screen and (max-width:768px){input,select,textarea{font-size:16px!important}}.chat-messages,.overflow-auto,.overflow-x-auto,.overflow-y-auto,[class*=overflow-x-scroll],[class*=overflow-y-scroll]{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.scroll-boundary,.scroll-boundary-nested{overscroll-behavior:contain}.scroll-boundary-nested{touch-action:pan-y}.scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none}.scroll-x::-webkit-scrollbar{display:none}.scroll-momentum{-webkit-overflow-scrolling:touch;scroll-behavior:smooth;will-change:scroll-position}@media (hover:none){[role=button]:hover,a:hover,button:hover{background-color:inherit!important;color:inherit!important}}@media screen and (max-width:480px) and (orientation:portrait){.chat-container{padding-left:12px;padding-right:12px}}@media screen and (max-height:480px) and (orientation:landscape){.input-container{max-height:40vh}}@media screen and (max-width:768px){.modal-overlay{width:100svw!important;height:100svh!important;min-height:100svh!important;max-height:100svh!important;width:100vw!important;height:100vh!important;min-height:100vh!important;max-height:100vh!important;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0)!important;top:0!important;left:0!important;right:0!important;bottom:0!important}.modal-content{padding-bottom:calc(env(safe-area-inset-bottom, 0) + 1rem)!important}.modal-open{overflow:hidden!important;overscroll-behavior:none!important;-webkit-overflow-scrolling:auto!important;position:fixed!important;width:100%!important;height:100%!important;-webkit-text-size-adjust:100%!important;-ms-text-size-adjust:100%!important;-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}}@supports (-webkit-touch-callout:none){.modal-overlay{height:100%!important;min-height:100%!important;-webkit-overflow-scrolling:auto!important;overscroll-behavior-y:contain!important}.modal-open,.modal-overlay{height:-webkit-fill-available!important;min-height:-webkit-fill-available!important}.modal-open{-webkit-appearance:none!important}}@media screen and (-webkit-min-device-pixel-ratio:1) and (max-width:768px){.modal-overlay{height:100vh!important;min-height:100vh!important;height:100dvh!important;min-height:100dvh!important}}@media screen and (max-width:768px) and (orientation:landscape){.modal-overlay{height:100vh!important;min-height:100vh!important;height:100lvh!important;min-height:100lvh!important}}@media screen and (max-width:768px) and (-webkit-min-device-pixel-ratio:2){.modal-overlay{transform:translateZ(0) scale(1)!important;-webkit-transform:translateZ(0) scale(1)!important;will-change:transform!important}}@media screen and (max-width:768px){@supports not (-webkit-touch-callout:none){.modal-overlay{height:100vh!important;min-height:100vh!important;height:100svh!important;min-height:100svh!important}}}@media (display-mode:fullscreen),(display-mode:standalone){.modal-overlay{height:100vh!important;min-height:100vh!important;top:0!important;padding-top:env(titlebar-area-height,env(safe-area-inset-top,0))!important}}.modal-content,.modal-overlay{z-index:999999!important;isolation:isolate!important;position:fixed!important}#portal-root,.portal-root{z-index:999999!important;position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;margin:0!important;padding:0!important;transform:none!important;clip:unset!important;overflow:visible!important;will-change:contents!important}@media screen and (max-width:768px){.animate-slide-up{transition:transform .3s cubic-bezier(.32,.72,0,1)!important;backface-visibility:hidden!important;transform:translateZ(0)!important;-webkit-transform:translateZ(0)!important}}.modal-debug{border:2px solid red!important;background:rgba(255,0,0,.1)!important}.modal-debug:before{content:"Modal Overlay Debug";position:absolute;top:10px;left:10px;background:red;color:white;padding:4px 8px;font-size:12px;z-index:1000000}.using-keyboard :focus{outline:2px solid #2563eb!important;outline-offset:2px!important;box-shadow:0 0 0 4px rgba(37,99,235,.25)!important}.dark.using-keyboard :focus{outline-color:#93c5fd!important;box-shadow:0 0 0 4px rgba(147,197,253,.3)!important}.skip-link{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;white-space:nowrap;width:1px}.skip-link:focus{clip:auto;height:auto;margin:0;overflow:visible;position:absolute;white-space:normal;width:auto}.sr-only{border:0}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reduced-motion-essential{transition-duration:.15s!important}}.touch-target{min-height:44px;min-width:44px}.enhanced-contrast{text-shadow:0 0 1px rgba(0,0,0,.5)}.dark .enhanced-contrast{text-shadow:0 0 1px rgba(255,255,255,.5)}button:focus,input:focus,select:focus,textarea:focus{outline:2px solid #2563eb;outline-offset:2px}.text-enhanced-contrast{color:#1a202c}.dark .text-enhanced-contrast{color:#f7fafc}img[role=img],svg[role=img]{box-shadow:0 0 0 1px #cbd5e0;border-radius:4px}.dark img[role=img],.dark svg[role=img]{box-shadow:0 0 0 1px #4a5568}a:not(.no-underline):not(.btn):not([role=button]){text-decoration:underline}::-moz-placeholder{color:#4b5563;opacity:.8}::placeholder{color:#4b5563;opacity:.8}.dark ::-moz-placeholder{color:#9ca3af;opacity:.8}.dark ::placeholder{color:#9ca3af;opacity:.8}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/geist-sans-latin-400-normal.6bb98460.woff2) format("woff2"),url(/_next/static/media/geist-sans-latin-400-normal.93ea1e50.woff) format("woff")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/geist-sans-latin-500-normal.d1eb6e25.woff2) format("woff2"),url(/_next/static/media/geist-sans-latin-500-normal.6286cecb.woff) format("woff")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/geist-sans-latin-600-normal.03e99ac3.woff2) format("woff2"),url(/_next/static/media/geist-sans-latin-600-normal.e5a203e2.woff) format("woff")}@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/geist-sans-latin-700-normal.047656d9.woff2) format("woff2"),url(/_next/static/media/geist-sans-latin-700-normal.f73c013e.woff) format("woff")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/geist-mono-cyrillic-400-normal.bc4cbd4f.woff2) format("woff2"),url(/_next/static/media/geist-mono-cyrillic-400-normal.871b2a41.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/geist-mono-latin-ext-400-normal.5b20d3d3.woff2) format("woff2"),url(/_next/static/media/geist-mono-latin-ext-400-normal.43b7ece1.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/geist-mono-latin-400-normal.0ae496c4.woff2) format("woff2"),url(/_next/static/media/geist-mono-latin-400-normal.98549675.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/geist-mono-cyrillic-500-normal.48bf19d8.woff2) format("woff2"),url(/_next/static/media/geist-mono-cyrillic-500-normal.3e5bd9c8.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/geist-mono-latin-ext-500-normal.64080870.woff2) format("woff2"),url(/_next/static/media/geist-mono-latin-ext-500-normal.9a96f525.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/geist-mono-latin-500-normal.29729a2e.woff2) format("woff2"),url(/_next/static/media/geist-mono-latin-500-normal.328f6d55.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:focus-visible{outline:2px solid #4f46e5!important;outline-offset:2px!important;border-radius:.25rem;box-shadow:0 0 0 2px rgba(79,70,229,.4)!important;transition:outline-color .2s ease,box-shadow .2s ease}:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}@media (forced-colors:active){:focus-visible{outline:3px solid CanvasText!important}button:focus-visible{outline:3px solid CanvasText!important;outline-offset:3px!important}a:focus-visible{outline:3px solid CanvasText!important;outline-offset:2px!important}}.skip-link{position:absolute;top:-50px;left:0;padding:8px 16px;background-color:#4f46e5;color:white;z-index:9999;transition:top .2s ease}.skip-link:focus{top:0}.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}.touch-target{position:relative}.touch-target:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;z-index:-1}button:focus-visible{outline-offset:3px!important}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-fade-in,.animate-fly-in,.animate-slide-in{animation:none!important;opacity:1!important;transform:none!important}}.live-region{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.live-region.visible{position:static;width:auto;height:auto;padding:.5rem;margin:.5rem 0;overflow:visible;clip:auto;white-space:normal;border:1px solid #e5e7eb;border-radius:.25rem;background-color:#f9fafb}.live-region.visible[role=alert]{border-color:#fee2e2;background-color:#fef2f2}.live-region.visible[role=status]{border-color:#e0f2fe;background-color:#f0f9ff}body.using-keyboard [tabindex]:focus,body.using-keyboard a:focus,body.using-keyboard button:focus,body.using-keyboard input:focus,body.using-keyboard select:focus,body.using-keyboard textarea:focus{outline:2px solid #4f46e5!important;outline-offset:2px!important}.message-container [role=group]{margin-bottom:1rem}.message-container .user-message{border-left:4px solid #3b82f6}.message-container .assistant-message{border-left:4px solid #10b981}.input-wrapper{position:relative}.input-wrapper .input-label{display:block;margin-bottom:.5rem;font-weight:500}.input-wrapper.has-error .input-field{border-color:#ef4444;background-color:#fef2f2}.input-wrapper.has-error .error-message{color:#ef4444;font-size:.875rem;margin-top:.25rem}