:root{--color-accent: #007AFF;--color-accent-hover: #0062CC;--color-accent-light: #E5F1FF;--color-accent-text: #FFFFFF;--color-white: #FFFFFF;--color-gray-50: #F9F9F9;--color-gray-100: #F4F4F4;--color-gray-200: #E8E8E8;--color-gray-300: #D9D9D9;--color-gray-400: #B4B4B4;--color-gray-500: #8E8E8E;--color-gray-600: #6E6E6E;--color-gray-700: #4A4A4A;--color-gray-800: #2D2D2D;--color-gray-900: #333333;--color-text-muted: #767676;--color-avatar-bg: #E8D5C4;--color-avatar-text: #6B4C35;--color-purple: #7048E8;--color-danger: #D63333;--color-danger-hover: #C02828;--color-danger-light: #FFF5F5;--color-success: #2F9E44;--color-success-hover: #2B8A3E;--color-success-light: #EBFBEE;--color-warning: #E67700;--color-warning-hover: #D46B00;--color-warning-light: #FFF9DB;--color-red-50: #FEF2F2;--color-red-100: #FEE2E2;--color-red-200: #FECACA;--color-red-700: #B91C1C;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-mono: "SF Mono", "Fira Code", "Fira Mono", Menlo, Consolas, monospace;--font-size-2xs: 10px;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 30px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-base: 1.5;--line-height-relaxed: 1.625;--letter-spacing-tight: .03em;--letter-spacing-wide: .05em;--space-0: 2px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--sidebar-width: 260px;--topbar-height: 52px;--message-max-width: 800px;--input-max-width: 840px;--sidebar-bg: var(--color-gray-50);--sidebar-hover: #ECECEC;--sidebar-active: var(--color-gray-200);--bubble-radius: 20px;--card-bg: rgba(255, 255, 255, .45);--card-blur: 16px;--card-radius: 14px;--card-shadow: 0 4px 20px rgba(0, 0, 0, .06), inset 0 2px 3px rgba(255, 255, 255, 1), inset 0 0 0 1.5px rgba(255, 255, 255, .8);--card-border: 1px solid rgba(0, 0, 0, .06);--card-border-color-hover: rgba(0, 0, 0, .1);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--border-color: var(--color-gray-200);--overlay-backdrop: rgba(0, 0, 0, .5);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 2px 8px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .1);--shadow-input: 0 2px 10px rgba(0, 0, 0, .08);--btn-height-sm: 30px;--btn-height-md: 36px;--btn-height-lg: 42px;--input-height: 40px;--icon-size-sm: 18px;--icon-size-md: 20px;--z-dropdown: 10;--z-index-modal: 1000;--z-index-skip-link: 9999;--opacity-disabled: .5;--transition-fast: .15s ease;--transition-base: .2s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-base);color:var(--color-gray-900);background-color:var(--color-white)}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none}input,select,textarea{font-family:inherit;font-size:inherit}img,svg{display:block;max-width:100%}table{border-collapse:collapse;width:100%}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold)}h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}small{font-size:var(--font-size-sm)}.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}.sr-only--focusable:focus{position:fixed;top:var(--space-2);left:var(--space-2);width:auto;height:auto;padding:var(--space-2) var(--space-4);margin:0;overflow:visible;clip:auto;white-space:normal;background-color:var(--color-accent);color:var(--color-accent-text);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);z-index:var(--z-index-skip-link)}.chat-layout{display:flex;height:100vh}.chat-layout__sidebar{position:relative;width:var(--sidebar-width);height:100vh;background:var(--sidebar-bg);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.chat-layout__sidebar-top{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 4px}.chat-layout__logo{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-md);transition:background var(--transition-fast)}.chat-layout__logo:hover{background:var(--sidebar-hover)}.chat-layout__logo:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-md)}.chat-layout__logo-img{height:22px;width:auto}.chat-layout__conv-nav{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.chat-layout__new-chat{display:flex;align-items:center;gap:8px;padding:8px 16px;margin:12px 8px 0;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-gray-700);transition:background var(--transition-fast)}.chat-layout__new-chat:hover{background:var(--sidebar-hover)}.chat-layout__new-chat:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.chat-layout__new-chat-icon{width:18px;height:18px;color:var(--color-gray-500)}.chat-layout__section-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-gray-500);padding:16px 16px 6px;letter-spacing:.02em}.chat-layout__conversations{flex:1;overflow-y:auto;padding:0 8px;position:relative}.chat-layout__conversations-status{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-muted)}.chat-layout__convo{display:flex;align-items:center;justify-content:space-between;padding:8px;border-radius:var(--radius-md);transition:background var(--transition-fast);position:relative}.chat-layout__convo:hover{background:var(--sidebar-hover)}.chat-layout__convo--active{background:var(--sidebar-active)}.chat-layout__convo-main{flex:1;min-width:0;display:flex;align-items:center;background:none;border:0;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.chat-layout__convo-main:before{content:"";position:absolute;inset:0;z-index:0;border-radius:var(--radius-md)}.chat-layout__convo-main:focus-visible:before{outline:2px solid var(--color-accent);outline-offset:-2px}.chat-layout__convo-main>*{position:relative;z-index:0}.chat-layout__convo-title{font-size:var(--font-size-base);color:var(--color-gray-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;line-height:1.4}.chat-layout__convo--closed .chat-layout__convo-title{color:var(--color-gray-400)}.chat-layout__convo-badge{font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium);color:var(--color-gray-400);background:var(--color-gray-200);padding:1px 6px;border-radius:var(--radius-sm);margin-left:8px;flex-shrink:0}.chat-layout__convo-menu{opacity:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:var(--color-gray-500);flex-shrink:0;margin-left:4px;transition:opacity var(--transition-fast);position:relative;z-index:1}.chat-layout__convo:hover .chat-layout__convo-menu{opacity:1}.chat-layout__convo-menu:hover{background:var(--color-gray-300)}.chat-layout__convo-menu:focus-visible{opacity:1;outline:2px solid var(--color-accent);outline-offset:-2px}.chat-layout__load-more{display:block;width:100%;padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);color:var(--color-gray-500);cursor:pointer;text-align:center;border-radius:var(--radius-md);transition:color var(--transition-fast),background-color var(--transition-fast)}.chat-layout__load-more:hover:not(:disabled){color:var(--color-gray-700);background-color:var(--color-gray-200)}.chat-layout__load-more:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.chat-layout__load-more:disabled{opacity:.5;cursor:default}.chat-layout__convo-context-menu{position:absolute;right:8px;background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:4px;z-index:var(--z-dropdown);min-width:180px}.chat-layout__sidebar-bottom{margin-top:auto;padding:12px;border-top:1px solid var(--color-gray-200);position:relative}.chat-layout__user{display:flex;align-items:center;gap:10px;padding:8px;border-radius:var(--radius-md);transition:background var(--transition-fast);cursor:pointer}.chat-layout__user:hover{background:var(--sidebar-hover)}.chat-layout__user:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.chat-layout__user-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-avatar-bg);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:var(--font-weight-semibold);color:var(--color-avatar-text);flex-shrink:0}.chat-layout__user-info{flex:1;min-width:0}.chat-layout__user-name{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-gray-800);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.chat-layout__user-role{font-size:var(--font-size-xs);color:var(--color-gray-500);text-align:left}.chat-layout__user-dropdown{position:absolute;bottom:calc(100% + 4px);left:12px;right:12px;background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:4px;z-index:var(--z-dropdown)}.chat-layout__dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border-radius:6px;font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--color-gray-700);transition:background-color var(--transition-fast)}.chat-layout__dropdown-item:hover{background:var(--color-gray-50);color:var(--color-gray-900)}.chat-layout__dropdown-item:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.chat-layout__dropdown-item--danger:hover{background:var(--color-danger-light);color:var(--color-danger)}.chat-layout__dropdown-item:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.chat-layout__dropdown-icon{width:16px;height:16px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.chat-layout__dropdown-icon>svg{width:100%;height:100%}.chat-layout__dropdown-divider{height:1px;background:var(--color-gray-200);margin:4px 0}.chat-layout__main{flex:1;display:flex;flex-direction:column;min-width:0;height:100vh;background:var(--color-white)}.chat-layout__topbar{position:relative;height:var(--topbar-height);display:flex;align-items:center;justify-content:space-between;padding:0 20px;flex-shrink:0}.chat-layout__topbar-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.chat-layout__topbar-actions{display:flex;align-items:center;gap:4px}.chat-layout__topbar-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-md);color:var(--color-gray-500);transition:background-color var(--transition-fast),color var(--transition-fast)}.chat-layout__topbar-btn:hover{background:var(--color-gray-100);color:var(--color-gray-700)}.chat-layout__topbar-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.chat-layout__topbar-btn-icon{display:inline-flex;width:18px;height:18px}.chat-layout__topbar-btn-icon>svg{width:100%;height:100%}.chat-layout__topbar-user{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;cursor:pointer;transition:opacity var(--transition-fast)}.chat-layout__topbar-user:hover{opacity:.8}.chat-layout__topbar-user:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.chat-layout__topbar-user-avatar{width:34px;height:34px;border-radius:50%;background:var(--color-avatar-bg);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:var(--font-weight-semibold);color:var(--color-avatar-text)}.chat-layout__topbar-dropdown{position:absolute;top:calc(var(--topbar-height) - 4px);right:20px;background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:4px;z-index:var(--z-dropdown);min-width:180px}.chat-layout__content{flex:1;display:flex;flex-direction:column;overflow:hidden}.input-component{display:flex;flex-direction:column;gap:var(--space-2);width:100%;position:relative}.input-component>*,.input-component{box-sizing:border-box}.input-component label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700);line-height:var(--line-height-tight);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%}.input-component .input-component__field{position:relative;height:42px;width:100%}.input-component input{width:100%;height:100%;border:1px solid var(--border-color);appearance:none;border-radius:var(--radius-md);font-weight:var(--font-weight-regular);font-size:var(--font-size-base);line-height:100%;color:var(--color-gray-900);padding:0 var(--space-3);background-color:var(--color-white);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input-component input::placeholder{color:var(--color-gray-400)}@media(hover:hover){.input-component input:hover:not(:focus-visible):not(:disabled):not([readonly]){border-color:var(--color-gray-500)}}.input-component input:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.input-component input[type=search]::-webkit-search-decoration,.input-component input[type=search]::-webkit-search-cancel-button,.input-component input[type=search]::-webkit-search-results-button,.input-component input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}.input-component input[type=number]::-webkit-inner-spin-button,.input-component input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}.input-component input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--color-white) inset!important}.input-component input:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.input-component input[readonly]{opacity:var(--opacity-disabled);cursor:not-allowed}.input-component.is-invalid label{color:var(--color-danger)}.input-component.is-invalid input{border-color:var(--color-danger)}.input-component.is-invalid input:focus-visible{box-shadow:0 0 0 3px var(--color-danger-light)}.input-component.is-invalid .left-icon .input-icon-action svg path,.input-component.is-invalid .left-icon .input-icon-focus svg path,.input-component.is-invalid .right-icon .input-icon-action svg path,.input-component.is-invalid .right-icon .input-icon-focus svg path{stroke:var(--color-danger)}.input-component .right-icon,.input-component .left-icon{display:flex;align-items:center;justify-content:center;width:48px;height:100%;position:absolute;top:0;right:0;z-index:2;pointer-events:none}.input-component .right-icon:is(.left-icon),.input-component .left-icon:is(.left-icon){left:0;right:auto}.input-component .right-icon .currency-box,.input-component .left-icon .currency-box{display:flex;align-items:center;justify-content:center;height:100%;width:100%;font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--color-gray-500);line-height:100%}.input-component .right-icon:has(.input-icon-action),.input-component .left-icon:has(.input-icon-action){pointer-events:auto}.input-component .right-icon .input-icon-action,.input-component .left-icon .input-icon-action{width:100%;height:100%;display:flex;align-items:center;justify-content:center;cursor:pointer}.input-component .right-icon .input-icon-action svg,.input-component .left-icon .input-icon-action svg{width:20px;height:20px}.input-component .right-icon .input-icon-action svg path,.input-component .left-icon .input-icon-action svg path{transition:stroke var(--transition-fast);stroke:var(--color-gray-500)}@media(hover:hover){.input-component .right-icon .input-icon-action:hover svg path,.input-component .left-icon .input-icon-action:hover svg path{stroke:var(--color-gray-700)}}.input-component .right-icon .input-icon-focus,.input-component .left-icon .input-icon-focus{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.input-component .right-icon .input-icon-focus svg,.input-component .left-icon .input-icon-focus svg{width:20px;height:20px}.input-component .right-icon .input-icon-focus svg path,.input-component .left-icon .input-icon-focus svg path{transition:stroke var(--transition-fast);stroke:var(--color-gray-500)}.input-component .input-component__field:has(input:focus-visible) .input-icon-focus svg path{stroke:var(--color-accent)}.input-component.show-number-arrows input[type=number]::-webkit-inner-spin-button,.input-component.show-number-arrows input[type=number]::-webkit-outer-spin-button{-webkit-appearance:inner-spin-button;appearance:inner-spin-button;margin:0}.input-component .helper-text{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);line-height:var(--line-height-relaxed);color:var(--color-gray-500)}.input-component .max-length-indicator{position:absolute;right:var(--space-3);bottom:-18px;font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);line-height:100%;color:var(--color-gray-500)}.input-component .input-component__field:has(.right-icon) input,.input-component .input-component__field:has(.ccv-icon) input,.input-component .input-component__field:has(.credit-card-number-cards) input{padding-right:54px}.input-component .input-component__field:has(.left-icon) input{padding-left:54px}.dropdown-component{display:flex;flex-direction:column;gap:var(--space-2);width:100%;position:relative;outline:none}.dropdown-component>*,.dropdown-component{box-sizing:border-box}.dropdown-component label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700);line-height:var(--line-height-tight);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;pointer-events:none}.dropdown-component .dropdown-component__field{position:relative;height:42px;width:100%;display:flex;align-items:center;padding:0 54px 0 var(--space-3);background-color:var(--color-white);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.dropdown-component .dropdown-component__value{flex:1;min-width:0;font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-base);color:var(--color-gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-component .dropdown-component__value--empty{color:var(--color-gray-400)}.dropdown-component .dropdown-component__arrow{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;height:100%;width:48px;pointer-events:none}.dropdown-component .dropdown-component__arrow svg{width:20px;height:20px;transition:transform var(--transition-fast)}.dropdown-component .dropdown-component__arrow svg path{stroke:var(--color-gray-500);transition:stroke var(--transition-fast)}@media(hover:hover){.dropdown-component:hover:not(.dropdown-component--disabled):not(.dropdown-component--read-only):not(:focus-visible) .dropdown-component__field{border-color:var(--color-gray-500)}}.dropdown-component:focus-visible .dropdown-component__field,.dropdown-component.dropdown-component--open .dropdown-component__field{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.dropdown-component.dropdown-component--open .dropdown-component__arrow svg{transform:rotate(180deg)}.dropdown-component.is-invalid label{color:var(--color-danger)}.dropdown-component.is-invalid .dropdown-component__field{border-color:var(--color-danger)}.dropdown-component.is-invalid:focus-visible .dropdown-component__field,.dropdown-component.is-invalid.dropdown-component--open .dropdown-component__field{box-shadow:0 0 0 3px var(--color-danger-light)}.dropdown-component.dropdown-component--read-only .dropdown-component__field,.dropdown-component.dropdown-component--disabled .dropdown-component__field{cursor:not-allowed;opacity:var(--opacity-disabled)}.dropdown-component .helper-text{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);line-height:var(--line-height-relaxed);color:var(--color-gray-500)}.dropdown-component__list{position:fixed;display:flex;flex-direction:column;background-color:var(--color-white);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 8px 24px #00000014;z-index:10;overflow:hidden}.dropdown-component__list ul{list-style:none;margin:0;padding:var(--space-1) 0;overflow-y:auto;overscroll-behavior:contain}.dropdown-component__search{padding:var(--space-2);border-bottom:1px solid var(--border-color);background-color:var(--color-white)}.dropdown-component__item{display:flex;align-items:center;gap:var(--space-2);min-height:38px;width:100%;padding:var(--space-2) var(--space-3);cursor:pointer;transition:background-color var(--transition-fast)}.dropdown-component__item--focused{background-color:var(--color-gray-100)}.dropdown-component__item--focused .dropdown-component__item-label{color:var(--color-accent)}.dropdown-component__item--selected:not(.dropdown-component__item--focused) .dropdown-component__item-label{color:var(--color-accent);font-weight:var(--font-weight-medium)}.dropdown-component__item--empty{cursor:default}.dropdown-component__item--empty .dropdown-component__item-label{color:var(--color-gray-500);font-style:italic}.dropdown-component__item-label{flex:1;min-width:0;font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-base);color:var(--color-gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-component__item-checkbox{position:relative;flex-shrink:0;width:18px;height:18px;border:2px solid var(--color-gray-400);background-color:var(--color-white);border-radius:var(--radius-sm);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.dropdown-component__item-checkbox:after{content:"";position:absolute;left:4px;top:50%;width:5px;height:9px;border-right:2px solid var(--color-white);border-bottom:2px solid var(--color-white);transform:translateY(-65%) rotate(45deg);opacity:0;transition:opacity var(--transition-fast)}.dropdown-component__item-checkbox--checked{background-color:var(--color-accent);border-color:var(--color-accent)}.dropdown-component__item-checkbox--checked:after{opacity:1}.textarea-component{display:flex;flex-direction:column;gap:var(--space-2);width:100%;position:relative}.textarea-component>*,.textarea-component{box-sizing:border-box}.textarea-component label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700);line-height:var(--line-height-tight);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%}.textarea-component .textarea-component__field{position:relative;width:100%}.textarea-component textarea{width:100%;min-height:96px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-family:inherit;font-weight:var(--font-weight-regular);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-gray-900);padding:var(--space-3);background-color:var(--color-white);outline:none;resize:vertical;appearance:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.textarea-component textarea::placeholder{color:var(--color-gray-400)}@media(hover:hover){.textarea-component textarea:hover:not(:focus-visible):not(:disabled):not([readonly]){border-color:var(--color-gray-500)}}.textarea-component textarea:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.textarea-component textarea:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--color-white) inset!important}.textarea-component textarea:disabled,.textarea-component textarea[readonly]{opacity:var(--opacity-disabled);cursor:not-allowed;resize:none}.textarea-component--resize textarea{resize:none}.textarea-component.is-invalid label{color:var(--color-danger)}.textarea-component.is-invalid textarea{border-color:var(--color-danger)}.textarea-component.is-invalid textarea:focus-visible{box-shadow:0 0 0 3px var(--color-danger-light)}.textarea-component .helper-text{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);line-height:var(--line-height-relaxed);color:var(--color-gray-500)}.textarea-component .max-length-indicator{position:absolute;right:var(--space-3);bottom:-18px;font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);line-height:100%;color:var(--color-gray-500)}.checkbox-component{display:inline-flex;align-items:center;position:relative;box-sizing:border-box}.checkbox-component input[type=checkbox],.checkbox-component input[type=radio]{position:absolute;opacity:0;width:0;height:0;margin:0}.checkbox-component label{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-base);color:var(--color-gray-900);-webkit-user-select:none;user-select:none}.checkbox-component label:before{content:"";display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;border:2px solid var(--color-gray-400);background-color:var(--color-white);border-radius:var(--radius-sm);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);box-sizing:border-box}.checkbox-component label:after{content:"";position:absolute;left:6px;top:50%;width:5px;height:9px;border-right:2px solid var(--color-white);border-bottom:2px solid var(--color-white);transform:translateY(-65%) rotate(45deg);opacity:0;transition:opacity var(--transition-fast);pointer-events:none}.checkbox-component input:checked+label:before{background-color:var(--color-accent);border-color:var(--color-accent)}.checkbox-component input:checked+label:after{opacity:1}.checkbox-component input:focus-visible+label:before{box-shadow:0 0 0 3px var(--color-accent-light)}@media(hover:hover){.checkbox-component:hover input:not(:disabled)+label:before{border-color:var(--color-accent)}}.checkbox-component.is-invalid label:before{border-color:var(--color-danger)}.checkbox-component.is-invalid input:checked+label:before{background-color:var(--color-danger);border-color:var(--color-danger)}.checkbox-component.is-invalid input:focus-visible+label:before{box-shadow:0 0 0 3px var(--color-danger-light)}.checkbox-component:has(input:disabled) label{cursor:not-allowed;color:var(--color-gray-500)}.checkbox-component:has(input:disabled) label:before{background-color:var(--color-gray-100);border-color:var(--color-gray-300)}.checkbox-component:has(input:disabled) input:checked+label:before{background-color:var(--color-gray-400);border-color:var(--color-gray-400)}.radio-component{display:inline-flex;align-items:center;position:relative;box-sizing:border-box}.radio-component input[type=radio]{position:absolute;opacity:0;width:0;height:0;margin:0}.radio-component label{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-base);color:var(--color-gray-900);-webkit-user-select:none;user-select:none}.radio-component label:before{content:"";display:inline-flex;flex-shrink:0;width:18px;height:18px;border:2px solid var(--color-gray-400);background-color:var(--color-white);border-radius:var(--radius-full);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);box-sizing:border-box}.radio-component input:checked+label:before{background-color:var(--color-accent);border-color:var(--color-accent);box-shadow:inset 0 0 0 3px var(--color-white)}.radio-component input:focus-visible+label:before{box-shadow:0 0 0 3px var(--color-accent-light)}.radio-component input:checked:focus-visible+label:before{box-shadow:inset 0 0 0 3px var(--color-white),0 0 0 3px var(--color-accent-light)}@media(hover:hover){.radio-component:hover input:not(:disabled)+label:before{border-color:var(--color-accent)}}.radio-component.is-invalid label:before{border-color:var(--color-danger)}.radio-component.is-invalid input:checked+label:before{background-color:var(--color-danger);border-color:var(--color-danger)}.radio-component.is-invalid input:focus-visible+label:before{box-shadow:0 0 0 3px var(--color-danger-light)}.radio-component.is-invalid input:checked:focus-visible+label:before{box-shadow:inset 0 0 0 3px var(--color-white),0 0 0 3px var(--color-danger-light)}.radio-component:has(input:disabled) label{cursor:not-allowed;color:var(--color-gray-500)}.radio-component:has(input:disabled) label:before{background-color:var(--color-gray-100);border-color:var(--color-gray-300)}.radio-component:has(input:disabled) input:checked+label:before{background-color:var(--color-gray-400);border-color:var(--color-gray-400);box-shadow:inset 0 0 0 3px var(--color-white)}.file-input-component{display:flex;flex-direction:column;gap:var(--space-2);width:100%;position:relative}.file-input-component>*,.file-input-component{box-sizing:border-box}.file-input-component label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700);line-height:var(--line-height-tight);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%}.file-input-component .file-input-component__field{position:relative;width:100%}.file-input-component .file-input-component__native{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:1}.file-input-component .file-input-component__native:disabled{cursor:not-allowed}.file-input-component .file-input-component__dropzone{position:relative;width:100%;min-height:42px;display:flex;align-items:center;gap:var(--space-3);border:1px dashed var(--border-color);border-radius:var(--radius-md);background-color:var(--color-white);padding:var(--space-3);color:var(--color-gray-700);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.file-input-component .file-input-component__icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;color:var(--color-gray-500);transition:color var(--transition-fast)}.file-input-component .file-input-component__text{display:flex;flex-direction:column;min-width:0;flex:1}.file-input-component .file-input-component__title{font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--color-gray-700);line-height:var(--line-height-tight)}.file-input-component .file-input-component__hint{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);color:var(--color-gray-500);line-height:var(--line-height-relaxed)}.file-input-component .file-input-component__files{list-style:none;margin:0;padding:0;flex:1;display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.file-input-component .file-input-component__files li{display:flex;align-items:center;gap:var(--space-2);min-width:0}.file-input-component .file-input-component__file-name{flex:1;min-width:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);color:var(--color-gray-900);line-height:var(--line-height-tight);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.file-input-component .file-input-component__file-size{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);color:var(--color-gray-500);flex-shrink:0}.file-input-component .file-input-component__remove{appearance:none;border:none;background:transparent;padding:var(--space-1);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-gray-500);border-radius:var(--radius-sm);z-index:2;position:relative;transition:color var(--transition-fast),background-color var(--transition-fast)}@media(hover:hover){.file-input-component .file-input-component__remove:hover:not(:disabled){color:var(--color-gray-700)}}.file-input-component .file-input-component__remove:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-accent-light);color:var(--color-accent)}.file-input-component .file-input-component__remove:disabled{cursor:not-allowed;opacity:var(--opacity-disabled)}@media(hover:hover){.file-input-component:not(.file-input-component--disabled):not(.file-input-component--readonly) .file-input-component__native:hover+.file-input-component__dropzone{border-color:var(--color-gray-500)}.file-input-component:not(.file-input-component--disabled):not(.file-input-component--readonly) .file-input-component__native:hover+.file-input-component__dropzone .file-input-component__icon{color:var(--color-gray-700)}}.file-input-component .file-input-component__native:focus-visible+.file-input-component__dropzone{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.file-input-component .file-input-component__native:focus-visible+.file-input-component__dropzone .file-input-component__icon{color:var(--color-accent)}.file-input-component.file-input-component--dragging .file-input-component__dropzone{border-color:var(--color-accent);background-color:var(--color-accent-light)}.file-input-component.file-input-component--dragging .file-input-component__dropzone .file-input-component__icon{color:var(--color-accent)}.file-input-component.is-invalid label{color:var(--color-danger)}.file-input-component.is-invalid .file-input-component__dropzone{border-color:var(--color-danger)}.file-input-component.is-invalid .file-input-component__native:focus-visible+.file-input-component__dropzone{box-shadow:0 0 0 3px var(--color-danger-light)}.file-input-component.is-invalid .file-input-component__icon{color:var(--color-danger)}.file-input-component.file-input-component--disabled .file-input-component__dropzone,.file-input-component.file-input-component--readonly .file-input-component__dropzone{opacity:var(--opacity-disabled);cursor:not-allowed}.file-input-component.file-input-component--disabled .file-input-component__native,.file-input-component.file-input-component--readonly .file-input-component__native{cursor:not-allowed}.file-input-component .helper-text{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);line-height:var(--line-height-relaxed);color:var(--color-gray-500)}.color-input-component{display:flex;flex-direction:column;gap:var(--space-2);width:100%;position:relative}.color-input-component>*,.color-input-component{box-sizing:border-box}.color-input-component label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700);line-height:var(--line-height-tight);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%}.color-input-component .color-input-component__field{position:relative;display:flex;align-items:stretch;gap:var(--space-2);height:42px;width:100%}.color-input-component .color-input-component__swatch-wrap{position:relative;width:42px;height:100%;flex-shrink:0;border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;background-image:linear-gradient(45deg,var(--color-gray-200) 25%,transparent 25%),linear-gradient(-45deg,var(--color-gray-200) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--color-gray-200) 75%),linear-gradient(-45deg,transparent 75%,var(--color-gray-200) 75%);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.color-input-component .color-input-component__swatch{position:absolute;inset:0;width:100%;height:100%}.color-input-component .color-input-component__native{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;padding:0;border:none}.color-input-component .color-input-component__native:disabled{cursor:not-allowed}.color-input-component .color-input-component__hex{flex:1;min-width:0;height:100%;border:1px solid var(--border-color);appearance:none;border-radius:var(--radius-md);font-family:inherit;font-weight:var(--font-weight-regular);font-size:var(--font-size-base);line-height:100%;color:var(--color-gray-900);padding:0 var(--space-3);background-color:var(--color-white);outline:none;text-transform:uppercase;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.color-input-component .color-input-component__hex::placeholder{color:var(--color-gray-400);text-transform:none}@media(hover:hover){.color-input-component .color-input-component__hex:hover:not(:focus-visible):not(:disabled):not([readonly]){border-color:var(--color-gray-500)}}.color-input-component .color-input-component__hex:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.color-input-component .color-input-component__hex:disabled,.color-input-component .color-input-component__hex[readonly]{opacity:var(--opacity-disabled);cursor:not-allowed}@media(hover:hover){.color-input-component:not(.color-input-component--disabled):not(.color-input-component--readonly) .color-input-component__swatch-wrap:has(.color-input-component__native:hover:not(:disabled)){border-color:var(--color-gray-500)}}.color-input-component .color-input-component__swatch-wrap:has(.color-input-component__native:focus-visible){border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.color-input-component.is-invalid label{color:var(--color-danger)}.color-input-component.is-invalid .color-input-component__swatch-wrap,.color-input-component.is-invalid .color-input-component__hex{border-color:var(--color-danger)}.color-input-component.is-invalid .color-input-component__hex:focus-visible,.color-input-component.is-invalid .color-input-component__swatch-wrap:has(.color-input-component__native:focus-visible){box-shadow:0 0 0 3px var(--color-danger-light)}.color-input-component.color-input-component--disabled .color-input-component__swatch-wrap,.color-input-component.color-input-component--readonly .color-input-component__swatch-wrap{opacity:var(--opacity-disabled);cursor:not-allowed}.color-input-component .helper-text{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);line-height:var(--line-height-relaxed);color:var(--color-gray-500)}.auth__form .input-component .input-component__field{height:56px}.auth__form .input-component__field input{font-size:var(--font-size-md);border-color:#86868b;border-radius:var(--radius-lg)}.auth__form--login .input-component__field input{padding:16px var(--space-3) 0}.auth__form .input-component__field input::placeholder{color:#6e6e73}.auth__form .input-component__field input:focus-visible{border:2px solid var(--color-accent);box-shadow:none}.auth__form .input-component{gap:var(--space-3)}.auth__form--login .input-component{position:relative}.auth__form--login .input-component>label{position:absolute;top:28px;left:12px;z-index:1;transform:translateY(-50%);margin:0;padding:0;pointer-events:none;font-size:var(--font-size-md);font-weight:var(--font-weight-regular);color:#6e6e73;line-height:1;transition:top .15s ease,font-size .15s ease,color .15s ease}.auth__form--login .input-component:has(input:focus)>label,.auth__form--login .input-component:has(input:not(:placeholder-shown))>label{top:16px;font-size:var(--font-size-xs)}.auth{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background-color:var(--color-white);padding:var(--space-4)}.auth--topbar{justify-content:flex-start;padding:42px 0 0}.auth__topbar{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;height:42px;padding:0 var(--space-6);background-color:var(--color-gray-50)}.auth__brand{display:block;height:18px;width:auto}.auth__menu{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;background:none;color:var(--color-gray-700);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast)}.auth__menu:hover{background-color:var(--color-gray-100)}.auth__menu:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.auth__menu-icon{width:20px;height:20px}.auth__main{flex:1;display:flex;align-items:center;justify-content:center;width:100%;padding:var(--space-4) var(--space-4) 120px}.auth__bottombar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%;height:82px;padding:0 var(--space-6);background-color:var(--color-gray-50);font-size:var(--font-size-sm);color:var(--color-gray-500)}.auth__bottombar-links{display:flex;align-items:center;gap:var(--space-3)}.auth__bottombar-link{color:var(--color-gray-500);text-decoration:none;transition:color var(--transition-fast)}.auth__bottombar-link:hover{color:var(--color-gray-700);text-decoration:underline}.auth__bottombar-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.auth__bottombar-separator{color:var(--color-gray-300)}.auth__bottombar-copy{margin:0}.auth__card{display:flex;flex-direction:column;justify-content:center;width:100%;max-width:640px;min-height:670px;background-color:var(--color-white);border-radius:32px;padding:var(--space-12) 90px;box-shadow:0 3px 34px #00000017}.auth__header{text-align:center;margin-bottom:var(--space-8)}.auth__logo{display:block;height:44px;width:auto;margin:0 auto var(--space-6)}.auth__title{font-size:var(--font-size-2xl);color:var(--color-gray-900);margin-bottom:var(--space-2)}.auth__title--lg{font-size:var(--font-size-3xl);font-weight:var(--font-weight-medium);margin-bottom:0}.auth__subtitle{font-size:var(--font-size-base);color:var(--color-gray-600)}.auth__form{display:flex;flex-direction:column;gap:var(--space-5)}.auth__error{font-size:var(--font-size-sm);color:var(--color-danger)}.auth__error--general{text-align:center}.auth__button{height:42px;background-color:var(--color-accent);color:var(--color-accent-text);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);transition:background-color var(--transition-fast)}.auth__button:hover:not(:disabled){background-color:var(--color-accent-hover)}.auth__button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.auth__button:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.auth__footer{text-align:center;font-size:var(--font-size-sm);color:var(--color-gray-600)}.auth__link{font-size:var(--font-size-sm);color:var(--color-accent);font-weight:var(--font-weight-medium);text-decoration:none;cursor:pointer}.auth__link:hover:not(:disabled){text-decoration:underline}.auth__link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.auth__link:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.auth__success{font-size:var(--font-size-sm);color:var(--color-success);text-align:center}.auth__success-message{font-size:var(--font-size-base);color:var(--color-gray-700);line-height:1.5;margin-bottom:var(--space-6)}.auth__invalid-link{text-align:center}.auth__invalid-link-message{font-size:var(--font-size-base);color:var(--color-gray-700);line-height:1.5;margin-bottom:var(--space-6)}.chatbot-select{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;background:var(--color-gray-50);width:100%}.chatbot-select__heading{font-size:26px;font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin-bottom:8px}.chatbot-select__subheading{font-size:17px;color:var(--color-gray-500);margin-bottom:40px}.chatbot-select__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;width:100%;max-width:640px}.chatbot-card{background:var(--card-bg);backdrop-filter:blur(var(--card-blur));-webkit-backdrop-filter:blur(var(--card-blur));border:var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:20px 24px;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);text-decoration:none;color:inherit;display:block}.chatbot-card:hover{border-color:var(--card-border-color-hover);box-shadow:var(--shadow-md)}.chatbot-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.chatbot-card__header{display:flex;align-items:center;gap:12px}.chatbot-card__icon{width:40px;height:40px;border-radius:10px;background:var(--color-accent);display:flex;align-items:center;justify-content:center;color:var(--color-white);flex-shrink:0}.chatbot-card__icon--accent{background:var(--color-accent)}.chatbot-card__icon--success{background:var(--color-success)}.chatbot-card__icon--warning{background:var(--color-warning)}.chatbot-card__icon--danger{background:var(--color-danger)}.chatbot-card__icon--purple{background:var(--color-purple)}.chatbot-card__icon svg{width:22px;height:22px}.chatbot-card__name{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.chatbot-card__badge{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-500);background:var(--color-gray-100);padding:2px 8px;border-radius:var(--radius-sm);margin-top:2px}.chatbot-card__description{font-size:var(--font-size-md);line-height:var(--line-height-base);color:var(--color-gray-600);margin-top:12px}.chatbot-select__loading{font-size:var(--font-size-md);color:var(--color-gray-500)}.chatbot-select__error{display:flex;flex-direction:column;align-items:center;gap:16px}.chatbot-select__retry{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-accent);padding:8px 16px;border-radius:var(--radius-md);transition:background var(--transition-fast)}.chatbot-select__retry:hover{background:var(--color-accent-light)}.chatbot-select__retry:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.chatbot-select__empty{font-size:var(--font-size-md);color:var(--color-gray-500)}.chat-view{flex:1;display:flex;flex-direction:column;overflow:hidden}.chat-view__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px}.chat-view__greeting{font-size:28px;font-weight:var(--font-weight-regular);color:var(--color-gray-900);margin-bottom:40px}.chat-view__empty-input-wrap{width:100%;max-width:var(--input-max-width)}.chat-view__quick-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:var(--input-max-width);margin-top:16px;padding:0 20px}.chat-view__quick-action{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--color-gray-200);border-radius:100px;background:var(--color-white);color:var(--color-gray-700);font-size:var(--font-size-sm);font-family:var(--font-family);line-height:1;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);white-space:nowrap}.chat-view__quick-action:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-300);color:var(--color-gray-900)}.chat-view__quick-action:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.chat-view__quick-action:disabled{opacity:.5;cursor:not-allowed}.chat-view__quick-action-icon{display:flex;align-items:center;width:16px;height:16px;flex-shrink:0}.chat-view__quick-action-icon svg{width:16px;height:16px}.chat-view__messages{flex:1;overflow-y:auto;padding:20px 20px 0}.chat-view__messages-inner{max-width:var(--message-max-width);margin:0 auto;display:flex;flex-direction:column;gap:24px;padding-bottom:20px}.chat-view__message{display:flex;flex-direction:column}.chat-view__message--user{align-items:flex-end}.chat-view__message--assistant{align-items:flex-start}.chat-view__bubble{max-width:80%;padding:12px 16px;font-size:var(--font-size-md);line-height:1.6;word-wrap:break-word;white-space:pre-wrap}.chat-view__message--user .chat-view__bubble{background:var(--color-gray-100);border-radius:var(--bubble-radius);border-bottom-right-radius:6px;color:var(--color-gray-900)}.chat-view__assistant-content{display:flex;align-items:flex-start;max-width:80%}.chat-view__text{flex:1;min-width:0;padding-top:2px;font-size:var(--font-size-md);line-height:1.6;color:var(--color-gray-900);white-space:pre-wrap;word-wrap:break-word}.chat-view__text p{margin-bottom:16px}.chat-view__text p:last-child{margin-bottom:0}.chat-view__markdown{white-space:normal}.chat-view__markdown p{margin-bottom:16px}.chat-view__markdown p:last-child{margin-bottom:0}.chat-view__markdown strong{font-weight:var(--font-weight-semibold)}.chat-view__markdown em{font-style:italic}.chat-view__markdown a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.chat-view__markdown a:hover{color:var(--color-accent-hover)}.chat-view__markdown a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.chat-view__markdown h1,.chat-view__markdown h2,.chat-view__markdown h3,.chat-view__markdown h4,.chat-view__markdown h5,.chat-view__markdown h6{font-weight:var(--font-weight-semibold);margin-top:28px;margin-bottom:12px;line-height:1.4}.chat-view__markdown h1:first-child,.chat-view__markdown h2:first-child,.chat-view__markdown h3:first-child,.chat-view__markdown h4:first-child,.chat-view__markdown h5:first-child,.chat-view__markdown h6:first-child{margin-top:0}.chat-view__markdown h1{font-size:1.4em}.chat-view__markdown h2{font-size:1.25em;border-top:1px solid var(--color-gray-200);padding-top:24px;margin-top:32px}.chat-view__markdown h2:first-child{border-top:none;padding-top:0;margin-top:0}.chat-view__markdown h3{font-size:1.1em}.chat-view__markdown ul,.chat-view__markdown ol{margin-bottom:16px;padding-left:24px;list-style:revert}.chat-view__markdown ul:last-child,.chat-view__markdown ol:last-child{margin-bottom:0}.chat-view__markdown li{margin-bottom:6px}.chat-view__markdown li:last-child{margin-bottom:0}.chat-view__markdown blockquote{margin:16px 0;padding:4px 16px;border-left:3px solid var(--color-gray-300);color:var(--color-gray-600)}.chat-view__markdown blockquote:last-child{margin-bottom:0}.chat-view__markdown code{font-family:var(--font-family-mono);font-size:.9em;background:var(--color-gray-100);padding:2px 6px;border-radius:var(--radius-sm)}.chat-view__markdown pre{margin:16px 0;padding:12px 16px;background:var(--color-gray-900);color:var(--color-gray-100);border-radius:var(--radius-md);overflow-x:auto;line-height:1.5}.chat-view__markdown pre:last-child{margin-bottom:0}.chat-view__markdown pre code{background:none;padding:0;border-radius:0;font-size:var(--font-size-sm);color:inherit}.chat-view__markdown table{width:100%;border-collapse:collapse;margin:16px 0;font-size:var(--font-size-base)}.chat-view__markdown table:last-child{margin-bottom:0}.chat-view__markdown th,.chat-view__markdown td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--color-gray-200)}.chat-view__markdown th{font-weight:var(--font-weight-semibold);background:var(--color-gray-50)}.chat-view__markdown hr{border:none;border-top:1px solid var(--color-gray-200);margin:24px 0}.chat-view__markdown del{text-decoration:line-through;color:var(--color-gray-500)}.chat-view__typing{display:flex;align-items:flex-start;padding-top:10px}.chat-view__typing-circle{width:20px;height:20px;border-radius:50%;background:var(--color-accent);animation:chat-typing-pulse 1.6s ease-in-out infinite}@keyframes chat-typing-pulse{0%,to{transform:scale(.6);opacity:.4}50%{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.chat-view__typing-circle{animation:none}}.chat-view__input-bar{padding:0 20px 20px}.chat-view__input-inner{max-width:var(--input-max-width);margin:0 auto}.chat-view__input-wrap{display:flex;align-items:flex-end;background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:26px;padding:10px 10px 10px 20px;transition:border-color var(--transition-base);box-shadow:var(--shadow-input)}.chat-view__input-wrap:focus-within{border-color:var(--color-gray-400)}.chat-view__textarea{flex:1;resize:none;border:none;outline:none;font-size:17px;line-height:1.5;color:var(--color-gray-900);padding:6px 0;max-height:120px;min-height:24px;font-family:var(--font-family);background:transparent}.chat-view__textarea::placeholder{color:var(--color-gray-400)}.chat-view__send{width:36px;height:36px;border-radius:50%;background:var(--color-gray-900);color:var(--color-white);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background-color var(--transition-fast)}.chat-view__send:hover:not(:disabled){background:var(--color-gray-700)}.chat-view__send:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.chat-view__send:disabled{background:var(--color-gray-300);cursor:not-allowed}.chat-view__send-icon{display:inline-flex;align-items:center;justify-content:center}.chat-view__send svg{width:18px;height:18px}.chat-view__hint{text-align:center;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:8px}.chat-view__closed-banner{text-align:center;padding:12px 20px;font-size:var(--font-size-base);color:var(--color-gray-500);background:var(--color-gray-50);border-top:1px solid var(--color-gray-200)}.chat-view__loading{flex:1;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-md);color:var(--color-gray-500)}.chat-view__connection-banner{padding:var(--space-2) var(--space-4);background-color:var(--color-warning-light, #fef3c7);color:var(--color-warning, #92400e);font-size:var(--font-size-sm);text-align:center}.chat-view__error{margin:var(--space-3) var(--space-4) 0}.settings-view{padding:var(--space-8) var(--space-12);max-width:720px;margin:0 auto;width:100%;box-sizing:border-box}.settings-view__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin-bottom:var(--space-8)}.settings-view__sections{display:flex;flex-direction:column;gap:var(--space-8)}.settings-section{background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden}.settings-section__title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-gray-800);padding:var(--space-4) var(--space-6);background-color:var(--color-gray-50);border-bottom:1px solid var(--border-color)}.settings-section__body{padding:var(--space-6)}.settings-section__row{display:flex;align-items:center;padding:var(--space-3) 0;border-bottom:1px solid var(--color-gray-100)}.settings-section__row:last-child{border-bottom:none;padding-bottom:0}.settings-section__row:first-child{padding-top:0}.settings-section__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-500);width:100px;flex-shrink:0}.settings-section__value{font-size:var(--font-size-base);color:var(--color-gray-900)}.settings-section__value--role{text-transform:capitalize}.settings-form{display:flex;flex-direction:column;gap:var(--space-5)}.settings-form__field{display:flex;flex-direction:column;gap:var(--space-2)}.settings-form__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.settings-form__input{height:42px;padding:0 var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-gray-900);background-color:var(--color-white);outline:none;transition:border-color var(--transition-fast)}.settings-form__input::placeholder{color:var(--color-gray-400)}.settings-form__input:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.settings-form__input--error{border-color:var(--color-danger)}.settings-form__input--error:focus-visible{box-shadow:0 0 0 3px var(--color-danger-light)}.settings-form__error{font-size:var(--font-size-sm);color:var(--color-danger)}.settings-form__actions{padding-top:var(--space-1)}.settings-form__button{height:38px;padding:0 var(--space-6);background-color:var(--color-accent);color:var(--color-accent-text);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);transition:background-color var(--transition-fast)}.settings-form__button:hover:not(:disabled){background-color:var(--color-accent-hover)}.settings-form__button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.settings-form__button:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.app-loading{display:flex;align-items:center;justify-content:center;height:100vh;height:100dvh;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-gray-500)}
