:root{--color-accent:#007aff;--color-accent-hover:#0062cc;--color-accent-light:#e5f1ff;--color-accent-text:#fff;--color-white:#fff;--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:#333;--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:#ffffff73;--card-blur:16px;--card-radius:14px;--card-shadow:0 4px 20px #0000000f, inset 0 2px 3px #fff, inset 0 0 0 1.5px #fffc;--card-border:1px solid #0000000f;--card-border-color-hover:#0000001a;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--border-color:var(--color-gray-200);--overlay-backdrop:#00000080;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 2px 8px #00000014;--shadow-lg:0 4px 16px #0000001a;--shadow-input:0 2px 10px #00000014;--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;background:0 0;border:none}input,select,textarea{font-family:inherit;font-size:inherit}img,svg{max-width:100%;display:block}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{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sr-only--focusable:focus{top:var(--space-2);left:var(--space-2);width:auto;height:auto;padding:var(--space-2) var(--space-4);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);margin:0;position:fixed;overflow:visible}.chat-layout{height:100dvh;display:flex}.chat-layout__sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);flex-direction:column;flex-shrink:0;height:100dvh;display:flex;position:relative;overflow:hidden}.chat-layout__sidebar-top{justify-content:space-between;align-items:center;padding:12px 16px 4px;display:flex}.chat-layout__logo{border-radius:var(--radius-md);transition:background var(--transition-fast);align-items:center;gap:8px;padding:6px 8px;display:flex}.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{width:auto;height:22px}.chat-layout__conv-nav{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.chat-layout__new-chat{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);align-items:center;gap:8px;margin:12px 8px 0;padding:8px 16px;display:flex}.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);letter-spacing:.02em;padding:16px 16px 6px}.chat-layout__conversations{flex:1;padding:0 8px;position:relative;overflow-y:auto}.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{border-radius:var(--radius-md);transition:background var(--transition-fast);justify-content:space-between;align-items:center;padding:8px;display:flex;position:relative}.chat-layout__convo:hover{background:var(--sidebar-hover)}.chat-layout__convo--active{background:var(--sidebar-active)}.chat-layout__convo-main{min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;margin:0;padding:0;display:flex}.chat-layout__convo-main:before{content:"";z-index:0;border-radius:var(--radius-md);position:absolute;inset:0}.chat-layout__convo-main:focus-visible:before{outline:2px solid var(--color-accent);outline-offset:-2px}.chat-layout__convo-main>*{z-index:0;position:relative}.chat-layout__convo-title{font-size:var(--font-size-base);color:var(--color-gray-800);white-space:nowrap;text-overflow:ellipsis;flex:1;line-height:1.4;overflow:hidden}.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);border-radius:var(--radius-sm);flex-shrink:0;margin-left:8px;padding:1px 6px}.chat-layout__convo-menu{opacity:0;width:24px;height:24px;color:var(--color-gray-500);transition:opacity var(--transition-fast);z-index:1;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin-left:4px;display:flex;position:relative}.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{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);display:block}.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{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);min-width:180px;padding:4px;position:absolute;right:8px}.chat-layout__sidebar-bottom{border-top:1px solid var(--color-gray-200);margin-top:auto;padding:12px;position:relative}.chat-layout__user{border-radius:var(--radius-md);width:100%;transition:background var(--transition-fast);cursor:pointer;align-items:center;gap:10px;padding:8px;display:flex}.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{background:var(--color-avatar-bg);width:32px;height:32px;font-size:15px;font-weight:var(--font-weight-semibold);color:var(--color-avatar-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.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;text-overflow:ellipsis;text-align:left;overflow:hidden}.chat-layout__user-role{font-size:var(--font-size-xs);color:var(--color-gray-500);text-align:left}.chat-layout__user-dropdown{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);padding:4px;position:absolute;bottom:calc(100% + 4px);left:12px;right:12px}.chat-layout__dropdown-item{width:100%;font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--color-gray-700);transition:background-color var(--transition-fast);border-radius:6px;align-items:center;gap:8px;padding:8px 12px;display:flex}.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{flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.chat-layout__dropdown-icon>svg{width:100%;height:100%}.chat-layout__dropdown-divider{background:var(--color-gray-200);height:1px;margin:4px 0}.chat-layout__dropdown-trailing{color:var(--color-gray-500);font-size:var(--font-size-sm);margin-inline-start:auto}.chat-layout__dropdown-section-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.04em;padding:6px 12px 4px}.chat-layout__dropdown-company-name{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;min-width:0;overflow:hidden}.chat-layout__dropdown-company-status{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-gray-500);text-transform:capitalize}.chat-layout__main{background:var(--color-white);flex-direction:column;flex:1;min-width:0;height:100dvh;display:flex}.chat-layout__topbar{height:var(--topbar-height);z-index:1;background:var(--color-white);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 20px;display:flex;position:relative;box-shadow:0 1px 3px #0000000f}.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{align-items:center;gap:4px;display:flex}.chat-layout__topbar-btn{border-radius:var(--radius-md);width:34px;height:34px;color:var(--color-gray-500);transition:background-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.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{width:18px;height:18px;display:inline-flex}.chat-layout__topbar-btn-icon>svg{width:100%;height:100%}.chat-layout__topbar-user{cursor:pointer;width:34px;height:34px;transition:opacity var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:flex}.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{background:var(--color-avatar-bg);width:34px;height:34px;font-size:14px;font-weight:var(--font-weight-semibold);color:var(--color-avatar-text);border-radius:50%;justify-content:center;align-items:center;display:flex}.chat-layout__topbar-dropdown{top:calc(var(--topbar-height) - 4px);background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);min-width:180px;padding:4px;position:absolute;right:20px}.chat-layout__content{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.input-component{gap:var(--space-2);flex-direction:column;width:100%;display:flex;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;white-space:nowrap;max-width:100%;overflow:hidden}.input-component .input-component__field{width:100%;height:42px;position:relative}.input-component input{border:1px solid var(--border-color);appearance:none;border-radius:var(--radius-md);width:100%;height:100%;font-weight:var(--font-weight-regular);font-size:var(--font-size-base);color:var(--color-gray-900);padding:0 var(--space-3);background-color:var(--color-white);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;line-height:100%}.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{-webkit-appearance:none}.input-component input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}.input-component input[type=search]::-webkit-search-results-button{-webkit-appearance:none}.input-component input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}.input-component input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.input-component input[type=number]::-webkit-outer-spin-button{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,.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{z-index:2;pointer-events:none;justify-content:center;align-items:center;width:48px;height:100%;display:flex;position:absolute;top:0;right:0}.input-component .right-icon.left-icon,.input-component .left-icon.left-icon{left:0;right:auto}.input-component .right-icon .currency-box,.input-component .left-icon .currency-box{width:100%;height:100%;font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--color-gray-500);justify-content:center;align-items:center;line-height:100%;display:flex}:is(.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{cursor:pointer;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.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{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.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{appearance:inner-spin-button;margin:0}.input-component.show-number-arrows input[type=number]::-webkit-outer-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{right:var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);color:var(--color-gray-500);line-height:100%;position:absolute;bottom:-18px}:is(.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{gap:var(--space-2);outline:none;flex-direction:column;width:100%;display:flex;position:relative}.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;white-space:nowrap;pointer-events:none;max-width:100%;overflow:hidden}.dropdown-component .dropdown-component__field{width:100%;height:42px;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);align-items:center;display:flex;position:relative}.dropdown-component .dropdown-component__value{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;text-overflow:ellipsis;flex:1;overflow:hidden}.dropdown-component .dropdown-component__value--empty{color:var(--color-gray-400)}.dropdown-component .dropdown-component__arrow{pointer-events:none;justify-content:center;align-items:center;width:48px;height:100%;display:flex;position:absolute;top:0;right:0}.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{background-color:var(--color-white);border:1px solid var(--border-color);border-radius:var(--radius-md);z-index:var(--z-index-dropdown);flex-direction:column;margin:0;padding:0;display:flex;position:fixed;inset:auto;overflow:hidden;box-shadow:0 8px 24px #00000014}.dropdown-component__list ul{padding:var(--space-1) 0;overscroll-behavior:contain;margin:0;list-style:none;overflow-y:auto}.dropdown-component__search{padding:var(--space-2);border-bottom:1px solid var(--border-color);background-color:var(--color-white)}.dropdown-component__item{align-items:center;gap:var(--space-2);width:100%;min-height:38px;padding:var(--space-2) var(--space-3);cursor:pointer;transition:background-color var(--transition-fast);display:flex}.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{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;text-overflow:ellipsis;flex:1;overflow:hidden}.dropdown-component__item-checkbox{border:2px solid var(--color-gray-400);background-color:var(--color-white);border-radius:var(--radius-sm);width:18px;height:18px;transition:background-color var(--transition-fast), border-color var(--transition-fast);flex-shrink:0;position:relative}.dropdown-component__item-checkbox:after{content:"";border-right:2px solid var(--color-white);border-bottom:2px solid var(--color-white);opacity:0;width:5px;height:9px;transition:opacity var(--transition-fast);position:absolute;top:50%;left:4px;transform:translateY(-65%)rotate(45deg)}.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{gap:var(--space-2);flex-direction:column;width:100%;display:flex;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;white-space:nowrap;max-width:100%;overflow:hidden}.textarea-component .textarea-component__field{width:100%;position:relative}.textarea-component textarea{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;min-height:96px;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);resize:vertical;appearance:none;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none}.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{right:var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);color:var(--color-gray-500);line-height:100%;position:absolute;bottom:-18px}.checkbox-component{box-sizing:border-box;align-items:center;display:inline-flex;position:relative}.checkbox-component input[type=checkbox],.checkbox-component input[type=radio]{opacity:0;width:0;height:0;margin:0;position:absolute}.checkbox-component label{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;display:inline-flex}.checkbox-component label:before{content:"";border:2px solid var(--color-gray-400);background-color:var(--color-white);border-radius:var(--radius-sm);width:18px;height:18px;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.checkbox-component label:after{content:"";border-right:2px solid var(--color-white);border-bottom:2px solid var(--color-white);opacity:0;width:5px;height:9px;transition:opacity var(--transition-fast);pointer-events:none;position:absolute;top:50%;left:6px;transform:translateY(-65%)rotate(45deg)}.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{box-sizing:border-box;align-items:center;display:inline-flex;position:relative}.radio-component input[type=radio]{opacity:0;width:0;height:0;margin:0;position:absolute}.radio-component label{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;display:inline-flex}.radio-component label:before{content:"";border:2px solid var(--color-gray-400);background-color:var(--color-white);border-radius:var(--radius-full);width:18px;height:18px;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);box-sizing:border-box;flex-shrink:0;display:inline-flex}.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{gap:var(--space-2);flex-direction:column;width:100%;display:flex;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;white-space:nowrap;max-width:100%;overflow:hidden}.file-input-component .file-input-component__field{width:100%;position:relative}.file-input-component .file-input-component__native{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;position:absolute;inset:0}.file-input-component .file-input-component__native:disabled{cursor:not-allowed}.file-input-component .file-input-component__dropzone{align-items:center;gap:var(--space-3);border:1px dashed var(--border-color);border-radius:var(--radius-md);background-color:var(--color-white);width:100%;min-height:42px;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);display:flex;position:relative}.file-input-component .file-input-component__icon{width:32px;height:32px;color:var(--color-gray-500);transition:color var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.file-input-component .file-input-component__text{flex-direction:column;flex:1;min-width:0;display:flex}.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{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;margin:0;padding:0;list-style:none;display:flex}.file-input-component .file-input-component__files li{align-items:center;gap:var(--space-2);min-width:0;display:flex}.file-input-component .file-input-component__file-name{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;white-space:nowrap;flex:1;overflow:hidden}.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;padding:var(--space-1);cursor:pointer;color:var(--color-gray-500);border-radius:var(--radius-sm);z-index:2;transition:color var(--transition-fast), background-color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:relative}@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{box-shadow:0 0 0 3px var(--color-accent-light);color:var(--color-accent);outline:none}.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{gap:var(--space-2);flex-direction:column;width:100%;display:flex;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;white-space:nowrap;max-width:100%;overflow:hidden}.color-input-component .color-input-component__field{align-items:stretch;gap:var(--space-2);width:100%;height:42px;display:flex;position:relative}.color-input-component .color-input-component__swatch-wrap{border:1px solid var(--border-color);border-radius:var(--radius-md);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%);width:42px;height:100%;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background-position:0 0,0 5px,5px -5px,-5px 0;background-size:10px 10px;flex-shrink:0;position:relative;overflow:hidden}.color-input-component .color-input-component__swatch{width:100%;height:100%;position:absolute;inset:0}.color-input-component .color-input-component__native{opacity:0;cursor:pointer;border:none;width:100%;height:100%;padding:0;position:absolute;inset:0}.color-input-component .color-input-component__native:disabled{cursor:not-allowed}.color-input-component .color-input-component__hex{border:1px solid var(--border-color);appearance:none;border-radius:var(--radius-md);min-width:0;height:100%;font-family:inherit;font-weight:var(--font-weight-regular);font-size:var(--font-size-base);color:var(--color-gray-900);padding:0 var(--space-3);background-color:var(--color-white);text-transform:uppercase;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;flex:1;line-height:100%}.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{box-shadow:0 0 0 3px var(--color-danger-light)}.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 .color-input-component__alpha{align-items:center;gap:var(--space-2);flex-shrink:0;min-width:110px;display:flex}.color-input-component .color-input-component__alpha-slider{appearance:none;background:var(--color-gray-200);border-radius:var(--radius-full);cursor:pointer;outline:none;flex:1;height:4px}.color-input-component .color-input-component__alpha-slider::-webkit-slider-thumb{appearance:none;background:var(--color-accent);border:2px solid var(--color-white);cursor:pointer;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 3px #00000026}.color-input-component .color-input-component__alpha-slider::-moz-range-thumb{background:var(--color-accent);border:2px solid var(--color-white);cursor:pointer;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 3px #00000026}.color-input-component .color-input-component__alpha-slider:focus-visible{box-shadow:0 0 0 3px var(--color-accent-light)}.color-input-component .color-input-component__alpha-slider:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}.color-input-component .color-input-component__alpha-value{font-size:var(--font-size-xs);color:var(--color-gray-600);text-align:right;font-variant-numeric:tabular-nums;min-width:36px}.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)}.otp-input-component{gap:var(--space-2);flex-direction:column;width:100%;display:flex;position:relative}.otp-input-component>*,.otp-input-component{box-sizing:border-box}.otp-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)}.otp-input-component .otp-input-component__field{align-items:center;gap:var(--space-2);display:flex}.otp-input-component input{border:1px solid var(--border-color);appearance:none;border-radius:var(--radius-md);width:100%;height:42px;font-weight:var(--font-weight-semibold);font-size:var(--font-size-xl);color:var(--color-gray-900);background-color:var(--color-white);text-align:center;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:0;line-height:100%}.otp-input-component input::placeholder{color:var(--color-gray-400);font-weight:var(--font-weight-regular)}@media (hover:hover){.otp-input-component input:hover:not(:focus-visible):not(:disabled):not([readonly]){border-color:var(--color-gray-500)}}.otp-input-component input:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.otp-input-component input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.otp-input-component input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.otp-input-component input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--color-white) inset!important}.otp-input-component input:disabled,.otp-input-component input[readonly]{opacity:var(--opacity-disabled);cursor:not-allowed}.otp-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)}.otp-input-component.is-invalid label{color:var(--color-danger)}.otp-input-component.is-invalid input{border-color:var(--color-danger)}.otp-input-component.is-invalid input:focus-visible{box-shadow:0 0 0 3px var(--color-danger-light)}.otp-input-component.is-read-only input,.otp-input-component.is-read-only label{pointer-events:none}.otp-input-component.is-read-only{opacity:var(--opacity-disabled);cursor:not-allowed}.otp-input-component.is-disabled input{pointer-events:none}.otp-input-component.is-disabled{cursor:not-allowed}.otp-input-component.is-merged .otp-input-component__field{border-radius:var(--radius-md);background:var(--border-color);gap:1px;padding:1px}.otp-input-component.is-merged .otp-input-component__field input{border:none;border-radius:0}.otp-input-component.is-merged .otp-input-component__field input:first-child{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.otp-input-component.is-merged .otp-input-component__field input:last-child{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.otp-input-component.is-merged .otp-input-component__field input:focus-visible{outline:1px solid var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.otp-input-component.is-merged.is-invalid .otp-input-component__field{background:var(--color-danger)}.otp-input-component.is-merged.is-invalid .otp-input-component__field input:focus-visible{outline:1px solid var(--color-danger);box-shadow:0 0 0 1px var(--color-danger)}.auth__form .input-component .input-component__field{height:56px}.auth__form .input-component__field input{font-size:var(--font-size-md);border-radius:var(--radius-lg);border-color:#86868b}.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-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.auth__form .input-component{gap:var(--space-3)}.auth__form--login .input-component{position:relative}.auth__form--login .input-component>label{z-index:1;pointer-events:none;font-size:var(--font-size-md);font-weight:var(--font-weight-regular);color:#6e6e73;margin:0;padding:0;line-height:1;transition:top .15s,font-size .15s,color .15s;position:absolute;top:28px;left:12px;transform:translateY(-50%)}:is(.auth__form--login .input-component:has(input:focus)>label,.auth__form--login .input-component:has(input:not(:placeholder-shown))>label){font-size:var(--font-size-xs);top:16px}.auth__form .otp-input-component{gap:var(--space-3)}.auth__form .otp-input-component__field{gap:var(--space-3);justify-content:center}.auth__form .otp-input-component label{text-align:center}.auth__form .otp-input-component input{border-radius:var(--radius-lg);height:56px;font-size:var(--font-size-2xl);border-color:#86868b}.auth__form .otp-input-component input::placeholder{color:#6e6e73}.auth__form .otp-input-component input:focus-visible{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.auth{background-color:var(--color-white);flex-direction:column;min-height:100vh;padding:42px 0 0;display:flex}.auth__topbar{z-index:10;height:42px;padding:0 var(--space-6);background-color:var(--color-gray-50);align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.auth__brand{width:auto;height:18px;display:block}.auth__main{width:100%;padding:var(--space-4) var(--space-4) 120px;flex:1;justify-content:center;align-items:center;display:flex}.auth__bottombar{justify-content:space-between;align-items:center;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);display:flex}.auth__bottombar-links{align-items:center;gap:var(--space-3);display:flex}.auth__bottombar-link{color:var(--color-gray-500);transition:color var(--transition-fast);text-decoration:none}.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{background-color:var(--color-white);width:100%;max-width:640px;min-height:670px;padding:var(--space-12) 90px;border-radius:32px;flex-direction:column;justify-content:center;display:flex;box-shadow:0 3px 34px #00000017}.auth__header{text-align:center;margin-bottom:var(--space-8)}.auth__logo{width:auto;height:44px;margin:0 auto var(--space-6);display:block}.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{gap:var(--space-5);flex-direction:column;display:flex}.auth__sso{gap:var(--space-3);margin-bottom:var(--space-5);flex-direction:column;display:flex}.auth__sso-button{justify-content:center;align-items:center;gap:var(--space-3);height:42px;padding:0 var(--space-4);border:1px solid var(--color-gray-200);background-color:var(--color-white);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-gray-900);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast);text-decoration:none;display:inline-flex}.auth__sso-button:hover{background-color:var(--color-gray-50);border-color:var(--color-gray-300)}.auth__sso-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.auth__sso-icon{width:18px;height:18px}.auth__divider{align-items:center;gap:var(--space-3);margin:0 0 var(--space-5) 0;color:var(--color-gray-500);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;display:flex}.auth__divider:before,.auth__divider:after{content:"";background-color:var(--color-gray-200);flex:1;height:1px}.auth__code-field .input-component__field input{text-align:center;letter-spacing:.3em;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.auth__error{font-size:var(--font-size-sm);color:var(--color-danger)}.auth__error--general{text-align:center}.auth__button{background-color:var(--color-accent);height:42px;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__link{font-size:var(--font-size-sm);color:var(--color-accent);font-weight:var(--font-weight-medium);cursor:pointer;text-align:center;background:0 0;border:none;padding:0;text-decoration:none}.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__text{font-size:var(--font-size-base);color:var(--color-gray-600);text-align:center}.auth__success{font-size:var(--font-size-sm);color:var(--color-success);text-align:center}.auth__status{font-size:var(--font-size-sm);color:var(--color-gray-600);text-align:center}.auth__recovery-prompt{gap:var(--space-5);flex-direction:column;display:flex}.auth__loading{text-align:center;color:var(--color-gray-600);padding:var(--space-8) 0}.auth__qr{margin-bottom:var(--space-6);justify-content:center;display:flex}.auth__qr-image{border-radius:var(--radius-md);border:1px solid var(--border-color);width:200px;height:200px}.auth__secret{text-align:center;margin-bottom:var(--space-6)}.auth__secret-label{font-size:var(--font-size-sm);color:var(--color-gray-600);margin-bottom:var(--space-2)}.auth__secret-code{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-800);background-color:var(--color-gray-100);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);letter-spacing:var(--letter-spacing-wide);-webkit-user-select:all;user-select:all;display:inline-block}.auth__footer{text-align:center;font-size:var(--font-size-sm);color:var(--color-gray-600)}.auth__success-message{font-size:var(--font-size-base);color:var(--color-gray-700);margin-bottom:var(--space-6);line-height:1.5}.auth__invalid-link{text-align:center}.auth__invalid-link-message{font-size:var(--font-size-base);color:var(--color-gray-700);margin-bottom:var(--space-6);line-height:1.5}.btn{justify-content:center;align-items:center;gap:var(--space-2);height:var(--btn-height-md);padding:0 var(--space-5);border-radius:var(--radius-full);font-family:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;transition:all var(--transition-fast);border:none;line-height:1;display:inline-flex}.btn:disabled,.btn[aria-busy=true]{opacity:var(--opacity-disabled);cursor:not-allowed}.btn svg{flex-shrink:0;width:16px;height:16px}.btn--sm{height:var(--btn-height-sm);padding:0 var(--space-4);font-size:var(--font-size-xs)}.btn--lg{height:var(--btn-height-lg);padding:0 var(--space-6);font-size:var(--font-size-base)}.btn--primary{background-color:var(--color-accent);color:var(--color-accent-text);box-shadow:0 .5px 1px #0000001f,inset 0 1px 1px #fff6}.btn--primary:hover:not(:disabled):not([aria-busy=true]){background-color:var(--color-accent-hover);box-shadow:0 1px 3px #00000026,inset 0 1px 1px #fff6}.btn--primary:active:not(:disabled):not([aria-busy=true]){box-shadow:inset 0 1px 3px #0003}.btn--primary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn--secondary{background-color:var(--color-white);color:var(--color-gray-700);border:1px solid var(--border-color);box-shadow:0 .5px 1px #0000000f}.btn--secondary:hover:not(:disabled):not([aria-busy=true]){background-color:var(--color-gray-50);box-shadow:0 1px 3px #00000014}.btn--secondary:active:not(:disabled):not([aria-busy=true]){background-color:var(--color-gray-100);box-shadow:inset 0 1px 2px #00000014}.btn--secondary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn--danger{background-color:var(--color-white);color:var(--color-danger);border:1px solid var(--color-danger);box-shadow:0 .5px 1px #0000000f}.btn--danger:hover:not(:disabled):not([aria-busy=true]){background-color:var(--color-danger);color:var(--color-white);box-shadow:0 1px 3px #d633334d,inset 0 1px #ffffff26}.btn--danger:active:not(:disabled):not([aria-busy=true]){box-shadow:inset 0 1px 3px #0003}.btn--danger:focus-visible{outline:2px solid var(--color-danger);outline-offset:2px}.btn--danger-solid{background-color:var(--color-danger);color:var(--color-white);box-shadow:0 .5px 1px #0000001f,inset 0 1px 1px #fff6}.btn--danger-solid:hover:not(:disabled):not([aria-busy=true]){background-color:var(--color-danger-hover);box-shadow:0 1px 3px #d633334d,inset 0 1px 1px #fff6}.btn--danger-solid:active:not(:disabled):not([aria-busy=true]){box-shadow:inset 0 1px 3px #0003}.btn--danger-solid:focus-visible{outline:2px solid var(--color-danger);outline-offset:2px}.btn--success{background-color:var(--color-white);color:var(--color-success);border:1px solid var(--color-success);box-shadow:0 .5px 1px #0000000f}.btn--success:hover:not(:disabled):not([aria-busy=true]){background-color:var(--color-success);color:var(--color-white);box-shadow:0 1px 3px #2f9e444d,inset 0 1px #ffffff26}.btn--success:active:not(:disabled):not([aria-busy=true]){box-shadow:inset 0 1px 3px #0003}.btn--success:focus-visible{outline:2px solid var(--color-success);outline-offset:2px}.btn--warning{background-color:var(--color-white);color:var(--color-warning);border:1px solid var(--color-warning);box-shadow:0 .5px 1px #0000000f}.btn--warning:hover:not(:disabled):not([aria-busy=true]){background-color:var(--color-warning);color:var(--color-white);box-shadow:0 1px 3px #e677004d,inset 0 1px #ffffff26}.btn--warning:active:not(:disabled):not([aria-busy=true]){box-shadow:inset 0 1px 3px #0003}.btn--warning:focus-visible{outline:2px solid var(--color-warning);outline-offset:2px}.btn--light{background-color:var(--color-accent-light);color:var(--color-accent);box-shadow:0 .5px 1px #0000000a}.btn--light:hover:not(:disabled):not([aria-busy=true]){background-color:var(--color-accent);color:var(--color-accent-text);box-shadow:0 1px 3px #007aff4d,inset 0 1px 1px #fff6}.btn--light:active:not(:disabled):not([aria-busy=true]){box-shadow:inset 0 1px 3px #00000026}.btn--light:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn--text{height:auto;color:var(--color-accent);background:0 0;padding:0}.btn--text:hover:not(:disabled):not([aria-busy=true]){opacity:.7}.btn--text:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.btn--text-danger{height:auto;color:var(--color-danger);background:0 0;padding:0}.btn--text-danger:hover:not(:disabled):not([aria-busy=true]){opacity:.7}.btn--text-danger:focus-visible{outline:2px solid var(--color-danger);outline-offset:2px;border-radius:var(--radius-sm)}.btn--add{color:var(--color-gray-600);border:1px dashed var(--border-color);background:0 0}.btn--add:hover:not(:disabled):not([aria-busy=true]){border-color:var(--color-accent);color:var(--color-accent)}.btn--add:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn--icon{background-color:var(--color-gray-100);width:28px;height:28px;color:var(--color-gray-500);flex-shrink:0;padding:0}.btn--icon:hover:not(:disabled):not([aria-busy=true]){background-color:var(--color-gray-200)}.btn--icon:active:not(:disabled):not([aria-busy=true]){background-color:var(--color-gray-300)}.btn--icon:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.dev-banner{z-index:500;padding:5px var(--space-4);background:var(--color-warning-light);-webkit-user-select:none;user-select:none;border-bottom:1px solid #e6770047;align-items:center;gap:8px;display:flex;position:sticky;top:0}.dev-banner__dot{border-radius:var(--radius-full,9999px);background:var(--color-warning);flex-shrink:0;width:7px;height:7px;animation:2.4s ease-out infinite dev-banner-pulse;box-shadow:0 0 #e6770080}.dev-banner__label{font-size:10px;font-weight:var(--font-weight-semibold,600);letter-spacing:.14em;text-transform:uppercase;color:#6b3b00}@keyframes dev-banner-pulse{0%{box-shadow:0 0 #e6770080}70%{box-shadow:0 0 0 5px #e6770000}to{box-shadow:0 0 #e6770000}}@media (prefers-reduced-motion:reduce){.dev-banner__dot{animation:none}}.modal-overlay{z-index:var(--z-index-modal);padding:var(--space-8);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-overlay__backdrop{background-color:var(--overlay-backdrop);position:absolute;inset:0}.confirm-delete-modal{background-color:var(--color-white);border-radius:var(--radius-lg);width:100%;max-width:460px;box-shadow:var(--shadow-lg);padding:var(--space-6);outline:none;position:relative}.confirm-delete-modal__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-danger);margin-bottom:var(--space-2)}.confirm-delete-modal__message{font-size:var(--font-size-base);color:var(--color-gray-600);line-height:var(--line-height-relaxed);margin-bottom:var(--space-5)}.confirm-delete-modal__input-group{margin-bottom:var(--space-6)}.confirm-delete-modal__actions{justify-content:flex-end;gap:var(--space-3);display:flex}.upstream-banner{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-bottom:1px solid #0000;display:flex}.upstream-banner--degraded{background:var(--color-warning-light);color:var(--color-warning);border-color:#e6770040}.upstream-banner--down{background:var(--color-danger-light);color:var(--color-danger);border-color:#d6333340}.upstream-banner__dot{border-radius:var(--radius-full);background:currentColor;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 3px #fff6}.upstream-banner__text{min-width:0;line-height:var(--line-height-tight);flex:1}.upstream-banner__link{color:inherit;white-space:nowrap;font-weight:var(--font-weight-medium);text-decoration:underline}.upstream-banner__link:hover{opacity:.85}.upstream-banner__link:focus-visible{outline-offset:2px;border-radius:var(--radius-sm);outline:2px solid}.upstream-banner__dismiss{border-radius:var(--radius-sm);width:22px;height:22px;color:inherit;cursor:pointer;opacity:.7;transition:opacity var(--transition-fast), background-color var(--transition-fast);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.upstream-banner__dismiss:hover{opacity:1;background:#0000000d}.upstream-banner__dismiss:focus-visible{outline-offset:2px;opacity:1;outline:2px solid}.upstream-banner-enter-active,.upstream-banner-leave-active{transition:opacity var(--transition-fast), transform var(--transition-fast)}.upstream-banner-enter-from,.upstream-banner-leave-to{opacity:0;transform:translateY(-100%)}@media (width<=600px){.upstream-banner{flex-wrap:wrap}.upstream-banner__text{flex-basis:100%}}.chatbot-select{background:var(--color-gray-50);flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;padding:40px 20px;display:flex}.chatbot-select__heading{font-size:26px;font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin-bottom:8px}.chatbot-select__subheading{color:var(--color-gray-500);margin-bottom:40px;font-size:17px}.chatbot-select__grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;width:100%;max-width:640px;display:grid}.chatbot-card{background:var(--card-bg);-webkit-backdrop-filter:blur(var(--card-blur));border:var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);color:inherit;padding:20px 24px;text-decoration:none;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{align-items:center;gap:12px;display:flex}.chatbot-card__icon{background:var(--color-accent);width:40px;height:40px;color:var(--color-white);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.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);border-radius:var(--radius-sm);margin-top:2px;padding:2px 8px}.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{flex-direction:column;align-items:center;gap:16px;display:flex}.chatbot-select__retry{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-accent);border-radius:var(--radius-md);transition:background var(--transition-fast);padding:8px 16px}.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-direction:column;flex:1;display:flex;overflow:hidden}.chat-view__scroll-bottom{z-index:2;border:1px solid var(--color-gray-200);background:var(--color-white);width:36px;height:36px;color:var(--color-gray-700);cursor:pointer;transition:background-color var(--transition-fast), transform .18s ease;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:calc(100% + 12px);right:20px;box-shadow:0 4px 12px #00000014}.chat-view__scroll-bottom:hover{background:var(--color-gray-50)}.chat-view__scroll-bottom:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.chat-view__scroll-bottom-icon{width:16px;height:16px;display:inline-flex;transform:rotate(180deg)}.chat-view__scroll-bottom-icon>svg{width:100%;height:100%}.chat-view__empty{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px 20px;display:flex}.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{max-width:var(--input-max-width);flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px;padding:0 20px;display:flex}.chat-view__quick-action{border:1px solid var(--color-gray-200);background:var(--color-white);color:var(--color-gray-700);font-size:var(--font-size-sm);font-family:var(--font-family);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);white-space:nowrap;border-radius:100px;align-items:center;gap:6px;padding:8px 16px;line-height:1;display:inline-flex}.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{flex-shrink:0;align-items:center;width:16px;height:16px;display:flex}.chat-view__quick-action-icon svg{width:16px;height:16px}.chat-view__messages{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;overflow-anchor:none;flex:1;min-height:0;padding:20px 20px 0;overflow-y:auto}.chat-view__messages-inner{max-width:var(--message-max-width);flex-direction:column;gap:24px;margin:0 auto;padding-bottom:20px;display:flex}.chat-view__message{flex-direction:column;display:flex}.chat-view__message--user{align-items:flex-end}.chat-view__message--assistant{align-items:flex-start}.chat-view__bubble{max-width:80%;font-size:var(--font-size-md);word-wrap:break-word;white-space:pre-wrap;padding:12px 16px;line-height:1.6}.chat-view__message--user .chat-view__bubble{background:var(--color-gray-100);border-radius:var(--bubble-radius);color:var(--color-gray-900);border-bottom-right-radius:6px}.chat-view__assistant-content{flex-direction:column;align-items:flex-start;max-width:80%;display:flex}.chat-view__text{min-width:0;font-size:var(--font-size-md);color:var(--color-gray-900);white-space:pre-wrap;word-wrap:break-word;flex:1;padding-top:2px;line-height:1.6}.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-underline-offset:2px;text-decoration:underline}.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{border-top:1px solid var(--color-gray-200);margin-top:32px;padding-top:24px;font-size:1.25em}.chat-view__markdown h2:first-child{border-top:none;margin-top:0;padding-top:0}.chat-view__markdown h3{font-size:1.1em}.chat-view__markdown ul,.chat-view__markdown ol{list-style:revert;margin-bottom:16px;padding-left:24px}.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{border-left:3px solid var(--color-gray-300);color:var(--color-gray-600);margin:16px 0;padding:4px 16px}.chat-view__markdown blockquote:last-child{margin-bottom:0}.chat-view__markdown code{font-family:var(--font-family-mono);background:var(--color-gray-100);border-radius:var(--radius-sm);padding:2px 6px;font-size:.9em}.chat-view__markdown pre{background:var(--color-gray-900);color:var(--color-gray-100);border-radius:var(--radius-md);margin:16px 0;padding:12px 16px;line-height:1.5;overflow-x:auto}.chat-view__markdown pre:last-child{margin-bottom:0}.chat-view__markdown pre code{font-size:var(--font-size-sm);color:inherit;background:0 0;border-radius:0;padding:0}.chat-view__markdown table{border-collapse:collapse;width:100%;font-size:var(--font-size-base);margin:16px 0}.chat-view__markdown table:last-child{margin-bottom:0}.chat-view__markdown th,.chat-view__markdown td{text-align:left;border-bottom:1px solid var(--color-gray-200);padding:8px 12px}.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{color:var(--color-gray-500);text-decoration:line-through}.chat-view__typing{align-items:flex-start;padding-top:10px;display:flex}.chat-view__typing-circle{background:var(--color-accent);border-radius:50%;width:20px;height:20px;animation:1.6s ease-in-out infinite chat-typing-pulse}@keyframes chat-typing-pulse{0%,to{opacity:.4;transform:scale(.6)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.chat-view__typing-circle{animation:none}}.chat-view__retry-notice{margin:var(--space-2) 0 0;font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic}.chat-view__suggestions{flex-wrap:wrap;gap:8px;margin-top:12px;padding-bottom:4px;display:flex}.chat-view__suggestion{border:1px solid var(--color-gray-200);background:var(--color-white);color:var(--color-gray-700);font-size:var(--font-size-sm);font-family:var(--font-family);cursor:pointer;text-align:left;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);border-radius:100px;align-items:center;padding:8px 14px;line-height:1.3;display:inline-flex}.chat-view__suggestion:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-300);color:var(--color-gray-900)}.chat-view__suggestion:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.chat-view__suggestion:disabled{opacity:.5;cursor:not-allowed}.chat-view__suggestion-text{display:inline-block}.chat-view__input-bar{padding:0 20px 20px;position:relative}.chat-view__input-inner{max-width:var(--input-max-width);margin:0 auto}.chat-view__input-wrap{background:var(--color-white);border:1px solid var(--color-gray-200);transition:border-color var(--transition-base);box-shadow:var(--shadow-input);border-radius:26px;align-items:flex-end;padding:10px 10px 10px 20px;display:flex}.chat-view__input-wrap:focus-within{border-color:var(--color-gray-400)}.chat-view__textarea{resize:none;color:var(--color-gray-900);min-height:24px;max-height:120px;font-size:17px;line-height:1.5;font-family:var(--font-family);background:0 0;border:none;outline:none;flex:1;padding:6px 0}.chat-view__textarea::placeholder{color:var(--color-gray-400)}.chat-view__send{background:var(--color-gray-900);width:36px;height:36px;color:var(--color-white);transition:background-color var(--transition-fast);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.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{justify-content:center;align-items:center;display:inline-flex}.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;font-size:var(--font-size-base);color:var(--color-gray-500);background:var(--color-gray-50);border-top:1px solid var(--color-gray-200);padding:12px 20px}.chat-view__loading{font-size:var(--font-size-md);color:var(--color-gray-500);flex:1;justify-content:center;align-items:center;display:flex}.chat-view__loading--hidden{visibility:hidden}.chat-view__loading-spinner{border:2px solid var(--color-gray-200);border-top-color:var(--color-gray-500);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite chat-view-spin}@keyframes chat-view-spin{to{transform:rotate(360deg)}}.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}.chat-view__handoff-banner{margin:var(--space-3) var(--space-4) 0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-gray-100);color:var(--color-gray-700);font-size:var(--font-size-sm);text-align:center}.chat-view__message--agent{align-items:flex-start}.chat-view__agent-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-accent);margin-bottom:var(--space-1);display:block}.chat-view__handoff-btn{margin:var(--space-3) auto 0;padding:var(--space-2) var(--space-4);border:1px solid var(--color-gray-300);background:var(--color-white);color:var(--color-gray-700);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast);border-radius:999px;align-self:center}.chat-view__handoff-btn:hover{background:var(--color-gray-50);border-color:var(--color-gray-400,var(--color-gray-300))}.chat-view__handoff-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.chat-view__handoff-btn--offered{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-white)}.settings-view{padding:var(--space-8) var(--space-12);box-sizing:border-box;width:100%;max-width:720px;margin:0 auto}.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{gap:var(--space-8);flex-direction:column;display:flex}.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__hint{font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:var(--line-height-relaxed);padding:var(--space-4) var(--space-6) 0 var(--space-6);margin:0}.settings-section__body{padding:var(--space-6)}.settings-section__row{padding:var(--space-3) 0;border-bottom:1px solid var(--color-gray-100);align-items:center;display:flex}.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);flex-shrink:0;width:100px}.settings-section__value{font-size:var(--font-size-base);color:var(--color-gray-900)}.settings-form{gap:var(--space-5);flex-direction:column;display:flex}.settings-form__field{gap:var(--space-2);flex-direction:column;display:flex}.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);transition:border-color var(--transition-fast);outline:none}.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{height:100dvh;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-gray-500);justify-content:center;align-items:center;display:flex}
