@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap");*{box-sizing:border-box}[role=button],button{touch-action:manipulation}body{margin:0;font-family:DM Sans,system-ui,sans-serif}:root{--radius-sm:4px;--radius-base:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--fs-xs:12px;--fs-sm:14px;--fs-base:16px;--fs-lg:18px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--focus-ring:0 0 0 3px rgba(162,28,175,0.3);--duration-fast:150ms}.fx-field{display:flex;flex-direction:column;gap:6px}.fx-field__label{font-family:var(--font-base);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--surface-text)}.fx-field__msg{font-size:var(--fs-xs)}.fx-field__msg--hint{color:var(--surface-muted)}.fx-field__msg--error{color:var(--error)}.fx-input{display:flex;align-items:center;gap:8px;background:var(--surface-level-0);border:1px solid var(--surface-border);border-radius:var(--radius-base);padding:9px 12px;transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.fx-input:focus-within{border-color:var(--brand-600);box-shadow:var(--focus-ring)}.fx-input--error{border-color:var(--error)}.fx-input--error:focus-within{box-shadow:none}.fx-input--disabled{opacity:.5;pointer-events:none}.fx-input--sm{padding:6px 10px}.fx-input--lg{padding:12px 14px}.fx-input__control{flex:1 1;min-width:0;border:none;outline:none;background:transparent;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-base)}.fx-input--sm .fx-input__control{font-size:var(--fs-sm)}.fx-input__control::placeholder{color:var(--surface-muted)}.fx-input__icon{display:flex;color:var(--surface-muted)}.fx-textarea{background:var(--surface-level-0);border:1px solid var(--surface-border);border-radius:var(--radius-base);padding:9px 12px;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-base);width:100%;outline:none;box-sizing:border-box;transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.fx-textarea:focus{border-color:var(--brand-600);box-shadow:var(--focus-ring)}.fx-textarea--error{border-color:var(--error)}.fx-textarea--error:focus{box-shadow:none}.fx-textarea--disabled{opacity:.5}.fx-select__trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;background:var(--surface-level-0);border:1px solid var(--surface-border);border-radius:var(--radius-base);padding:9px 12px;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-base);cursor:pointer}.fx-select__trigger:focus-visible{outline:none;border-color:var(--brand-600);box-shadow:var(--focus-ring)}.fx-select__trigger[data-disabled]{opacity:.5;cursor:default}.fx-select__trigger[data-placeholder]{color:var(--surface-muted)}.fx-select__trigger--error{border-color:var(--error)}.fx-select__icon{color:var(--surface-muted);display:flex}.fx-select__content{min-width:var(--radix-select-trigger-width);max-height:var(--radix-select-content-available-height);background:var(--surface-level-1);border:1px solid var(--surface-border);border-radius:var(--radius-base);box-shadow:0 10px 30px rgba(0,0,0,.16);overflow:hidden;z-index:50}.fx-select__viewport{padding:4px}.fx-select__scroll{display:flex;align-items:center;justify-content:center;height:22px;color:var(--surface-muted);background:var(--surface-level-1);cursor:default}.fx-select__item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border-radius:var(--radius-sm);color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-base);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline:none}.fx-select__item[data-highlighted]{background:var(--surface-hover)}.fx-select__item[data-state=checked]{color:var(--accent);font-weight:var(--fw-medium)}.fx-select__item[data-disabled]{opacity:.5;pointer-events:none}.fx-select__group-label{padding:6px 10px 2px;font-size:var(--fs-xs);color:var(--surface-muted);text-transform:uppercase;letter-spacing:.04em}.fx-choice{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-family:var(--font-base);font-size:var(--fs-base);color:var(--surface-text)}.fx-choice--disabled{opacity:.5;cursor:default}.fx-checkbox{width:18px;height:18px;border:1px solid var(--surface-border);border-radius:var(--radius-sm);background:var(--surface-level-0);display:inline-flex;align-items:center;justify-content:center;color:#fff;flex:none}.fx-checkbox:focus-visible{outline:none;box-shadow:var(--focus-ring)}.fx-checkbox[data-state=checked],.fx-checkbox[data-state=indeterminate]{background:var(--brand-600);border-color:var(--brand-600)}.fx-radio{width:18px;height:18px;border:1px solid var(--surface-border);border-radius:var(--radius-full);background:var(--surface-level-0);display:inline-flex;align-items:center;justify-content:center;flex:none}.fx-radio:focus-visible{outline:none;box-shadow:var(--focus-ring)}.fx-radio[data-state=checked]{border-color:var(--brand-600)}.fx-radio__dot{width:9px;height:9px;border-radius:var(--radius-full);background:var(--brand-600)}.fx-radiogroup{display:flex;gap:12px}.fx-radiogroup--vertical{flex-direction:column}.fx-switch{width:38px;height:22px;border-radius:var(--radius-full);background:var(--surface-level-2);border:1px solid var(--surface-border);position:relative;transition:background var(--duration-fast);flex:none}.fx-switch:focus-visible{outline:none;box-shadow:var(--focus-ring)}.fx-switch[data-state=checked]{background:var(--brand-600);border-color:var(--brand-600)}.fx-switch__thumb{display:block;width:16px;height:16px;border-radius:var(--radius-full);background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform var(--duration-fast);transform:translateX(3px)}.fx-switch[data-state=checked] .fx-switch__thumb{transform:translateX(18px)}.fx-card{background:var(--surface-level-0);border-radius:var(--radius-md);padding:16px}.fx-card--l1{background:var(--surface-level-1)}.fx-card--l2{background:var(--surface-level-2)}.fx-card--l3{background:var(--surface-level-3)}.fx-card--bordered{border:1px solid var(--surface-border)}.fx-card--pad-sm{padding:10px}.fx-card--pad-lg{padding:24px}.fx-badge{display:inline-flex;align-items:center;gap:4px;border-radius:var(--radius-full);font-family:var(--font-base);font-weight:var(--fw-semibold);font-size:var(--fs-xs);padding:3px 9px;line-height:1.4}.fx-badge--md{font-size:var(--fs-sm);padding:4px 11px}.fx-avatar{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;background:var(--surface-level-2);color:var(--surface-text);font-family:var(--font-base);font-weight:var(--fw-semibold);-webkit-user-select:none;-moz-user-select:none;user-select:none;flex:none}.fx-avatar img{width:100%;height:100%;object-fit:cover}.fx-divider{background:var(--surface-border);border:none}.fx-divider--h{height:1px;width:100%}.fx-divider--v{width:1px;align-self:stretch}.fx-combo__trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:40px;background:var(--surface-level-0);border:1px solid var(--surface-border);border-radius:var(--radius-base);padding:5px 10px;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-base);cursor:pointer;text-align:left}.fx-combo__trigger:focus-visible{outline:none;border-color:var(--brand-600);box-shadow:var(--focus-ring)}.fx-combo__trigger:disabled{opacity:.5;cursor:default}.fx-combo__trigger--error{border-color:var(--error)}.fx-combo__value{flex:1 1;min-width:0;overflow:hidden}.fx-combo__placeholder{color:var(--surface-muted)}.fx-combo__tags{display:flex;flex-wrap:wrap;gap:4px}.fx-combo__tag{display:inline-flex;align-items:center;gap:4px;background:var(--surface-level-2);border-radius:var(--radius-sm);padding:2px 4px 2px 8px;font-size:var(--fs-sm)}.fx-combo__tag-x{display:inline-flex;cursor:pointer;color:var(--surface-muted)}.fx-combo__tag-x:hover{color:var(--surface-text)}.fx-combo__icons{display:flex;align-items:center;gap:4px;color:var(--surface-muted);flex:none}.fx-combo__clear{display:inline-flex;cursor:pointer}.fx-combo__clear:hover{color:var(--surface-text)}.fx-combo__content{min-width:var(--radix-popover-trigger-width);background:var(--surface-level-1);border:1px solid var(--surface-border);border-radius:var(--radius-base);box-shadow:0 10px 30px rgba(0,0,0,.16);overflow:hidden;z-index:50}.fx-combo__input-wrap{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--surface-border)}.fx-combo__input-icon{color:var(--surface-muted);flex:none}.fx-combo__input{flex:1 1;min-width:0;border:none;outline:none;background:transparent;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-base)}.fx-combo__input::placeholder{color:var(--surface-muted)}.fx-combo__list{max-height:280px;overflow-y:auto;padding:4px}.fx-combo__empty{padding:16px;text-align:center;color:var(--surface-muted);font-family:var(--font-base);font-size:var(--fs-sm)}.fx-combo__item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border-radius:var(--radius-sm);color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-base);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fx-combo__item[data-selected=true]{background:var(--surface-hover)}.fx-combo__item[data-checked]{color:var(--accent);font-weight:var(--fw-medium)}.fx-combo__item[data-disabled=true]{opacity:.5;pointer-events:none}.fx-combo__command [cmdk-group-heading]{padding:6px 10px 2px;font-size:var(--fs-xs);color:var(--surface-muted);text-transform:uppercase;letter-spacing:.04em}.fx-popover{background:var(--surface-level-1);border:1px solid var(--surface-border);border-radius:var(--radius-md);box-shadow:0 10px 30px rgba(0,0,0,.16);min-width:200px;max-width:360px;z-index:50;color:var(--surface-text);font-family:var(--font-base)}.fx-popover__header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;border-bottom:1px solid var(--surface-border)}.fx-popover__title{font-weight:var(--fw-semibold);font-size:var(--fs-sm)}.fx-popover__close{display:inline-flex;align-items:center;cursor:pointer;color:var(--surface-muted);border:none;background:transparent;padding:2px;border-radius:var(--radius-sm)}.fx-popover__close:hover{color:var(--surface-text);background:var(--surface-hover)}.fx-popover__body{padding:14px;font-size:var(--fs-base)}.fx-popover__arrow{fill:var(--surface-level-1)}.fx-tooltip{background:var(--surface-level-3);color:var(--surface-text);border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:5px 9px;font-family:var(--font-base);font-size:var(--fs-sm);box-shadow:0 4px 12px rgba(0,0,0,.12);max-width:260px;z-index:60;line-height:1.4}.fx-tooltip__arrow{fill:var(--surface-level-3)}.fx-modal__overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:100}.fx-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:101;background:var(--surface-level-0);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:0 20px 60px rgba(0,0,0,.3);width:92vw;max-height:85vh;display:flex;flex-direction:column;color:var(--surface-text);font-family:var(--font-base)}.fx-modal--sm{max-width:400px}.fx-modal--md{max-width:560px}.fx-modal--lg{max-width:760px}.fx-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 0}.fx-modal__title{font-size:var(--fs-lg);font-weight:var(--fw-semibold)}.fx-modal__desc{color:var(--surface-muted);font-size:var(--fs-sm);padding:4px 20px 0}.fx-modal__close{display:inline-flex;cursor:pointer;color:var(--surface-muted);border:none;background:transparent;padding:4px;border-radius:var(--radius-sm)}.fx-modal__close:hover{color:var(--surface-text);background:var(--surface-hover)}.fx-modal__body{padding:16px 20px;overflow-y:auto;font-size:var(--fs-base)}.fx-modal__footer{display:flex;justify-content:flex-end;gap:8px;padding:0 20px 20px}.fx-menu{min-width:180px;background:var(--surface-level-1);border:1px solid var(--surface-border);border-radius:var(--radius-base);box-shadow:0 10px 30px rgba(0,0,0,.16);padding:4px;z-index:60;color:var(--surface-text);font-family:var(--font-base)}.fx-menu__item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:var(--radius-sm);font-size:var(--fs-base);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline:none}.fx-menu__item[data-highlighted]{background:var(--surface-hover)}.fx-menu__item[data-disabled]{opacity:.5;pointer-events:none}.fx-menu__item--danger{color:var(--error)}.fx-menu__item--danger[data-highlighted]{background:rgba(239,68,68,.12)}.fx-menu__sep{height:1px;background:var(--surface-border);margin:4px 0}.fx-menu__label{padding:6px 10px 2px;font-size:var(--fs-xs);color:var(--surface-muted);text-transform:uppercase;letter-spacing:.04em}.fx-tabs__list{display:flex;gap:4px;border-bottom:1px solid var(--surface-border)}.fx-tabs__trigger{padding:9px 14px;background:transparent;color:var(--surface-muted);font-family:var(--font-base);font-size:var(--fs-base);font-weight:var(--fw-medium);cursor:pointer;border:none;border-bottom:2px solid transparent;margin-bottom:-1px}.fx-tabs__trigger:hover{color:var(--surface-text)}.fx-tabs__trigger[data-state=active]{color:var(--accent);border-bottom-color:var(--accent)}.fx-tabs__trigger:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}.fx-tabs__content{padding:16px 0;color:var(--surface-text);font-family:var(--font-base)}.fx-accordion{border:1px solid var(--surface-border);border-radius:var(--radius-base);overflow:hidden}.fx-accordion__item{border-bottom:1px solid var(--surface-border)}.fx-accordion__item:last-child{border-bottom:none}.fx-accordion__trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:13px 16px;border:none;background:transparent;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-base);font-weight:var(--fw-medium);cursor:pointer;text-align:left}.fx-accordion__trigger:hover{background:var(--surface-hover)}.fx-accordion__chevron{color:var(--surface-muted);transition:transform var(--duration-fast);flex:none}.fx-accordion__trigger[data-state=open] .fx-accordion__chevron{transform:rotate(180deg)}.fx-accordion__content{padding:0 16px 14px;color:var(--surface-muted);font-family:var(--font-base);font-size:var(--fs-sm)}.fx-skeleton{background:var(--surface-level-2);border-radius:var(--radius-sm);position:relative;overflow:hidden}.fx-skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,var(--surface-hover),transparent);animation:fx-shimmer 1.4s infinite}@keyframes fx-shimmer{to{transform:translateX(100%)}}.fx-toast__viewport{position:fixed;bottom:16px;right:16px;display:flex;flex-direction:column;gap:8px;width:360px;max-width:96vw;z-index:200;list-style:none;margin:0;padding:0;outline:none}.fx-toast{display:flex;gap:10px;padding:12px 14px;background:var(--surface-level-1);border-left:1px solid var(--surface-border);border:1px solid var(--surface-border);border-left-width:3px;border-radius:var(--radius-base);box-shadow:0 10px 30px rgba(0,0,0,.18);color:var(--surface-text);font-family:var(--font-base);animation:fx-toast-in .2s ease}@keyframes fx-toast-in{0%{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}.fx-toast--success{border-left-color:var(--success)}.fx-toast--error{border-left-color:var(--error)}.fx-toast--warning{border-left-color:var(--warning)}.fx-toast--info{border-left-color:var(--info)}.fx-toast__icon{flex:none;margin-top:1px}.fx-toast--success .fx-toast__icon{color:var(--success)}.fx-toast--error .fx-toast__icon{color:var(--error)}.fx-toast--warning .fx-toast__icon{color:var(--warning)}.fx-toast--info .fx-toast__icon{color:var(--info)}.fx-toast__body{flex:1 1;min-width:0}.fx-toast__title{font-weight:var(--fw-semibold);font-size:var(--fs-sm)}.fx-toast__desc{color:var(--surface-muted);font-size:var(--fs-sm);margin-top:2px}.fx-toast__close{flex:none;cursor:pointer;color:var(--surface-muted);border:none;background:transparent;padding:2px}.fx-datepicker__trigger,.fx-toast__close:hover{color:var(--surface-text)}.fx-datepicker__trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;background:var(--surface-level-0);border:1px solid var(--surface-border);border-radius:var(--radius-base);padding:9px 12px;font-family:var(--font-base);font-size:var(--fs-base);cursor:pointer;text-align:left}.fx-datepicker__trigger:focus-visible{outline:none;border-color:var(--brand-600);box-shadow:var(--focus-ring)}.fx-datepicker__trigger:disabled{opacity:.5;cursor:default}.fx-datepicker__trigger--placeholder{color:var(--surface-muted)}.fx-datepicker__trigger--error{border-color:var(--error)}.fx-datepicker__icon{color:var(--surface-muted);display:flex;flex:none}.fx-datepicker__panel{background:var(--surface-level-1);border:1px solid var(--surface-border);border-radius:var(--radius-md);box-shadow:0 10px 30px rgba(0,0,0,.16);padding:10px;z-index:50}.fx-datepicker__panel .rdp-root{--rdp-accent-color:var(--brand-600);--rdp-accent-background-color:rgba(162,28,175,0.14);--rdp-day-width:38px;--rdp-day-height:38px;--rdp-font-family:var(--font-base);margin:0;color:var(--surface-text)}.fx-datepicker__panel .rdp-month_caption{color:var(--surface-text);font-weight:var(--fw-semibold)}.fx-datepicker__panel .rdp-weekday{color:var(--surface-muted);font-weight:var(--fw-medium);font-size:var(--fs-xs)}.fx-datepicker__panel .rdp-day_button{color:var(--surface-text);border-radius:var(--radius-sm)}.fx-datepicker__panel .rdp-day_button:hover{background:var(--surface-hover)}.fx-datepicker__panel .rdp-today:not(.rdp-selected) .rdp-day_button{color:var(--accent);font-weight:var(--fw-bold)}.fx-datepicker__panel .rdp-selected .rdp-day_button{background:var(--brand-600);color:#fff;border:none}.fx-datepicker__panel .rdp-chevron{fill:var(--surface-muted)}.fx-datepicker__panel .rdp-button_next:hover .rdp-chevron,.fx-datepicker__panel .rdp-button_previous:hover .rdp-chevron{fill:var(--surface-text)}.fx-datepicker__panel .rdp-outside{opacity:.4}.fx-wizard__steps{display:flex;align-items:center;margin-bottom:20px}.fx-wizard__step{gap:8px}.fx-wizard__dot,.fx-wizard__step{display:flex;align-items:center;flex:none}.fx-wizard__dot{width:28px;height:28px;border-radius:var(--radius-full);justify-content:center;font-size:var(--fs-sm);font-weight:var(--fw-semibold);border:1px solid var(--surface-border);color:var(--surface-muted);background:var(--surface-level-0)}.fx-wizard__step--active .fx-wizard__dot{border-color:var(--brand-600);color:var(--accent)}.fx-wizard__step--done .fx-wizard__dot{background:var(--brand-600);border-color:var(--brand-600);color:#fff}.fx-wizard__label{font-family:var(--font-base);font-size:var(--fs-sm);color:var(--surface-muted);white-space:nowrap}.fx-wizard__step--active .fx-wizard__label,.fx-wizard__step--done .fx-wizard__label{color:var(--surface-text)}.fx-wizard__line{flex:1 1;height:1px;background:var(--surface-border);margin:0 10px;min-width:16px}.fx-wizard__line--done{background:var(--brand-600)}.fx-wizard__content{color:var(--surface-text);font-family:var(--font-base)}.fx-wizard__footer{display:flex;justify-content:space-between;gap:8px;margin-top:20px}.fx-page-header{display:flex;flex-direction:column;gap:8px;padding-bottom:16px;border-bottom:1px solid var(--surface-border)}.fx-page-header__breadcrumb{display:flex;align-items:center;gap:6px;font-family:var(--font-base);font-size:var(--fs-xs);color:var(--surface-muted)}.fx-page-header__crumb{color:var(--surface-muted);text-decoration:none;cursor:pointer;background:none;border:none;padding:0;font:inherit}.fx-page-header__crumb:hover{color:var(--surface-text)}.fx-page-header__crumb--current{color:var(--surface-text);cursor:default}.fx-page-header__sep{opacity:.5}.fx-page-header__main{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.fx-page-header__title{font-family:var(--font-base);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--surface-text);margin:0}.fx-page-header__subtitle{font-family:var(--font-base);font-size:var(--fs-sm);color:var(--surface-muted);margin:2px 0 0}.fx-page-header__actions{display:flex;gap:8px;flex:none}.fx-form{display:flex;flex-direction:column;gap:16px}.fx-form__row{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px}@media (min-width:640px){.fx-form__row--2{grid-template-columns:1fr 1fr}.fx-form__row--3{grid-template-columns:1fr 1fr 1fr}}.fx-form__actions{display:flex;gap:8px;padding-top:4px}.fx-form__actions--right{justify-content:flex-end}.fx-form__actions--left{justify-content:flex-start}.fx-form__actions--between{justify-content:space-between}.fx-content{display:flex;flex-direction:column;height:100%;background:var(--content-bg)}.fx-content__header{padding:20px 24px;flex:none}.fx-content__main{display:flex;flex:1 1;min-height:0}.fx-content__body{flex:1 1;min-width:0;overflow-y:auto;padding:20px 24px}.fx-content__aside{width:320px;flex:none;border-left:1px solid var(--surface-border);overflow-y:auto;padding:20px;background:var(--surface-level-0)}.fx-content__footer{padding:16px 24px;border-top:1px solid var(--surface-border);flex:none}.fx-sidepanel__overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:100}.fx-sidepanel{position:fixed;z-index:101;background:var(--surface-level-0);display:flex;flex-direction:column;color:var(--surface-text);font-family:var(--font-base);box-shadow:0 0 40px rgba(0,0,0,.3)}.fx-sidepanel--right{top:0;right:0;height:100vh;width:92vw;border-left:1px solid var(--surface-border);animation:fx-sp-right .22s ease}.fx-sidepanel--right.fx-sidepanel--sm{max-width:380px}.fx-sidepanel--right.fx-sidepanel--md{max-width:480px}.fx-sidepanel--right.fx-sidepanel--lg{max-width:640px}.fx-sidepanel--right.fx-sidepanel--xl{max-width:80vw}.fx-sidepanel--bottom{left:0;bottom:0;width:100vw;max-height:94vh;border-top:1px solid var(--surface-border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;animation:fx-sp-bottom .22s ease}.fx-sidepanel--bottom.fx-sidepanel--sm{height:35vh}.fx-sidepanel--bottom.fx-sidepanel--md{height:50vh}.fx-sidepanel--bottom.fx-sidepanel--lg{height:75vh}.fx-sidepanel--bottom.fx-sidepanel--xl{height:90vh}@keyframes fx-sp-right{0%{transform:translateX(100%)}to{transform:none}}@keyframes fx-sp-bottom{0%{transform:translateY(100%)}to{transform:none}}.fx-sidepanel__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--surface-border);flex:none}.fx-sidepanel__title{font-size:var(--fs-lg);font-weight:var(--fw-semibold)}.fx-sidepanel__close{display:inline-flex;align-items:center;cursor:pointer;color:var(--surface-muted);border:none;background:transparent;padding:4px;border-radius:var(--radius-sm)}.fx-sidepanel__close:hover{color:var(--surface-text);background:var(--surface-hover)}.fx-sidepanel__body{flex:1 1;overflow-y:auto;padding:20px;font-size:var(--fs-base)}.fx-sidepanel__footer{padding:16px 20px;border-top:1px solid var(--surface-border);display:flex;justify-content:flex-end;gap:8px;flex:none}.fx-sidepanel__title{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-sidepanel__back{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--surface-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);margin:-4px 2px -4px -4px;flex:none}.fx-sidepanel__back:hover{color:var(--surface-text);background:var(--surface-hover)}.fx-sidepanel__view{animation:fx-view-in .2s ease}@keyframes fx-view-in{0%{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}.fx-sidepanel__resizer{position:absolute;z-index:2}.fx-sidepanel__resizer--right{left:0;top:0;bottom:0;width:6px;cursor:col-resize}.fx-sidepanel__resizer--right:hover{background:var(--accent)}.fx-sidepanel__resizer--bottom{top:0;left:0;right:0;height:16px;cursor:row-resize;display:flex;align-items:center;justify-content:center}.fx-sidepanel__resizer--bottom:before{content:"";width:36px;height:4px;border-radius:2px;background:var(--surface-border)}.fx-sidepanel__resizer--bottom:hover:before{background:var(--accent)}.fx-sidepanel--right{transition:width .22s ease}.fx-sidepanel__cascade{position:relative;flex:1 1;min-height:0}.fx-sidepanel__page{position:absolute;top:0;bottom:0;right:0;display:flex;flex-direction:column;background:var(--surface-level-0);border-left:1px solid var(--surface-border);box-shadow:-8px 0 24px rgba(0,0,0,.22)}.fx-sidepanel__page--top{animation:fx-view-in .2s ease}.fx-sidepanel__page--peek{cursor:pointer;align-items:flex-start}.fx-sidepanel__page--peek:hover{background:var(--surface-level-1)}.fx-sidepanel__spine{writing-mode:vertical-rl;transform:rotate(180deg);padding:16px 0;font-family:var(--font-base);font-weight:var(--fw-semibold);font-size:var(--fs-sm);color:var(--surface-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:center;flex:none}.fx-sidepanel__page--peek:hover .fx-sidepanel__spine{color:var(--surface-text)}.fx-sidepanel__min{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--surface-muted);border:none;background:transparent;padding:4px;border-radius:var(--radius-sm);flex:none}.fx-sidepanel__min:hover{color:var(--surface-text);background:var(--surface-hover)}.fx-sidepanel__overlay--hidden{display:none}.fx-sidepanel--minimized{top:auto!important;bottom:16px;left:auto!important;right:16px;width:auto!important;max-width:320px!important;height:auto!important;min-height:0;border:1px solid var(--surface-border);border-radius:var(--radius-md);box-shadow:0 10px 30px rgba(0,0,0,.3);animation:fx-view-in .16s ease}.fx-sidepanel__minbar{display:flex;align-items:center;gap:4px;padding:8px 8px 8px 14px}.fx-sidepanel__minbar-btn{display:flex;align-items:center;gap:10px;flex:1 1;min-width:0;border:none;background:transparent;color:var(--surface-text);cursor:pointer;font:inherit;padding:0}.fx-sidepanel__minbar-btn:hover{color:var(--accent)}.fx-table__wrap{border:1px solid var(--surface-border);border-radius:var(--radius-md);overflow:hidden;background:var(--surface-level-0)}.fx-table{width:100%;border-collapse:collapse;font-family:var(--font-base);font-size:var(--fs-sm)}.fx-table thead th{text-align:left;padding:10px 14px;background:var(--surface-level-1);color:var(--surface-muted);font-weight:var(--fw-semibold);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--surface-border);white-space:nowrap}.fx-table th.fx-table__sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fx-table th.fx-table__sortable:hover{color:var(--surface-text)}.fx-table__sort-ico{display:inline-flex;vertical-align:middle;margin-left:4px;color:var(--accent)}.fx-table tbody td{padding:11px 14px;color:var(--surface-text);border-bottom:1px solid var(--surface-border)}.fx-table tbody tr:last-child td{border-bottom:none}.fx-table tbody tr:hover{background:var(--surface-hover)}.fx-table__row--clickable{cursor:pointer}.fx-table__row--inert>td{opacity:.55}.fx-table__row--inert>td:has(button,a,input,[role=button]){opacity:1}.fx-table__cell--right{text-align:right}.fx-table__cell--center{text-align:center}.fx-table__check{width:40px}.fx-table__empty{padding:40px;text-align:center;color:var(--surface-muted)}.fx-table__footer{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-top:1px solid var(--surface-border);background:var(--surface-level-1);color:var(--surface-muted);font-family:var(--font-base);font-size:var(--fs-sm)}.fx-table__pager{display:flex;align-items:center;gap:8px}.fx-table__pager button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--surface-border);background:var(--surface-level-0);color:var(--surface-text);border-radius:var(--radius-sm);cursor:pointer}.fx-table__pager button:disabled{opacity:.4;cursor:default}.fx-table__pager button:not(:disabled):hover{background:var(--surface-hover)}.fx-table__toolbar{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--surface-border);background:var(--surface-level-1)}.fx-table__search{flex:1 1;max-width:320px}.fx-table__scroll{overflow-x:auto}.fx-table--fixed{table-layout:fixed}.fx-table th{position:relative}.fx-table__th{display:flex;align-items:center;gap:2px}.fx-table__th-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-table__th-label--sortable{cursor:pointer}.fx-table__th-btn{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--surface-muted);cursor:pointer;padding:3px;border-radius:var(--radius-sm);flex:none}.fx-table__th-btn:hover{color:var(--surface-text);background:var(--surface-hover)}.fx-table__th-btn--active{color:var(--accent)}.fx-table__resizer{position:absolute;top:0;right:0;height:100%;width:5px;cursor:col-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none;background:transparent}.fx-table__resizer--active,.fx-table__resizer:hover{background:var(--brand-600)}.fx-table__pinned{background:var(--surface-level-0)}.fx-table tbody tr:hover .fx-table__pinned,.fx-table thead .fx-table__pinned{background:var(--surface-level-1)}.fx-table__filter{display:flex;flex-direction:column;gap:10px;min-width:220px}.fx-table__filter-title{font-family:var(--font-base);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--surface-text)}.fx-table__cols{display:flex;flex-direction:column;gap:8px}.fx-table__editable{cursor:pointer;border-radius:var(--radius-sm);padding:2px 4px;margin:-2px -4px;display:inline-block;min-width:40px}.fx-table__editable:hover{background:var(--surface-hover);box-shadow:inset 0 0 0 1px var(--surface-border)}.fx-table__editor{width:100%;min-width:80px;border:1px solid var(--brand-600);border-radius:var(--radius-sm);padding:4px 6px;background:var(--surface-level-0);color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-sm);outline:none;box-shadow:var(--focus-ring);box-sizing:border-box}.fx-kanban{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;align-items:flex-start}.fx-kanban__col{width:280px;flex:none;background:var(--surface-level-1);border:1px solid var(--surface-border);border-radius:var(--radius-md);display:flex;flex-direction:column;max-height:100%}.fx-kanban__col-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--surface-border)}.fx-kanban__col-title{font-family:var(--font-base);font-weight:var(--fw-semibold);font-size:var(--fs-sm);color:var(--surface-text);flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-kanban__col-count{font-size:var(--fs-xs);color:var(--surface-muted);background:var(--surface-level-2);border-radius:var(--radius-full);padding:1px 8px}.fx-kanban__col-sum{font-size:var(--fs-xs);color:var(--accent);font-weight:var(--fw-semibold)}.fx-kanban__list{padding:10px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;min-height:60px;flex:1 1}.fx-kanban__list--over{background:var(--surface-hover)}.fx-kanban__card{background:var(--surface-level-0);border:1px solid var(--surface-border);border-radius:var(--radius-base);padding:10px 12px;cursor:-webkit-grab;cursor:grab;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-sm)}.fx-kanban__card:active{cursor:-webkit-grabbing;cursor:grabbing}.fx-kanban__card--dragging{opacity:.4}.fx-kanban__card--overlay{box-shadow:0 10px 30px rgba(0,0,0,.3);cursor:-webkit-grabbing;cursor:grabbing}.fx-kanban__add{margin:0 10px 10px;padding:8px;border:1px dashed var(--surface-border);border-radius:var(--radius-base);background:transparent;color:var(--surface-muted);cursor:pointer;font-family:var(--font-base);font-size:var(--fs-sm);display:flex;align-items:center;justify-content:center;gap:4px}.fx-kanban__add:hover{color:var(--surface-text);border-color:var(--surface-muted)}.fx-kanban__empty{padding:16px;text-align:center;color:var(--surface-muted);font-size:var(--fs-sm)}.fx-kanban__collapse{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--surface-muted);cursor:pointer;padding:2px;border-radius:var(--radius-sm);flex:none}.fx-kanban__collapse:hover{color:var(--surface-text);background:var(--surface-hover)}.fx-kanban__col--collapsed{width:48px;cursor:pointer}.fx-kanban__col--collapsed .fx-kanban__col-header{flex-direction:column;height:100%;border-bottom:none;padding:12px 6px;gap:10px;align-items:center}.fx-kanban__col--collapsed .fx-kanban__col-title{writing-mode:vertical-rl;transform:rotate(180deg);flex:none}.fx-kanban__col-count--over{background:var(--error);color:#fff}.fx-kanban__col-accent{height:3px;border-radius:var(--radius-md) var(--radius-md) 0 0;flex:none}.fx-kanban__grip{display:inline-flex;align-items:center;cursor:-webkit-grab;cursor:grab;border:none;background:transparent;color:var(--surface-muted);padding:0;flex:none}.fx-kanban__grip:active{cursor:-webkit-grabbing;cursor:grabbing}.fx-kanban__col-title--editable{cursor:text;border-radius:var(--radius-sm);padding:1px 4px;margin:-1px -4px}.fx-kanban__col-title--editable:hover{background:var(--surface-hover)}.fx-kanban__title-input{flex:1 1;min-width:0;border:1px solid var(--brand-600);border-radius:var(--radius-sm);padding:2px 6px;background:var(--surface-level-0);color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-sm);font-weight:var(--fw-semibold);outline:none}.fx-kanban__swatch{width:14px;height:14px;border-radius:var(--radius-full);border:1px solid var(--surface-border);cursor:pointer;flex:none}.fx-kanban__colors{display:flex;gap:6px}.fx-kanban__color{width:22px;height:22px;border-radius:var(--radius-full);border:2px solid transparent;cursor:pointer}.fx-kanban__color:hover{border-color:var(--surface-text)}.fx-kanban__add-col{flex:none;width:160px;align-self:flex-start;padding:12px;border:1px dashed var(--surface-border);border-radius:var(--radius-md);background:transparent;color:var(--surface-muted);cursor:pointer;font-family:var(--font-base);font-size:var(--fs-sm);display:flex;align-items:center;justify-content:center;gap:4px}.fx-kanban__add-col:hover{color:var(--surface-text);border-color:var(--surface-muted)}.fx-kanban__col--overlay{box-shadow:0 10px 30px rgba(0,0,0,.3)}.fx-channel{display:inline-flex;align-items:center;gap:3px;border-radius:var(--radius-sm);padding:1px 6px;font-family:var(--font-base);font-size:10px;font-weight:var(--fw-bold);color:#fff;line-height:1.6}.fx-channel--whatsapp{background:#25d366;color:#064e2e}.fx-channel--instagram{background:linear-gradient(45deg,#f58529,#dd2a7b,#8134af)}.fx-channel--facebook{background:#1568d4}.fx-channel--tiktok{background:#111}.fx-channel--manual{background:var(--surface-level-3);color:var(--surface-text)}.fx-msg{display:flex;gap:8px;max-width:82%;align-items:flex-end}.fx-msg--in{align-self:flex-start}.fx-msg--out{align-self:flex-end}.fx-msg--system{align-self:center;max-width:90%}.fx-msg--grouped{margin-top:-4px}.fx-msg__avatar{width:24px;flex:none}.fx-msg__col{display:flex;flex-direction:column;min-width:0}.fx-msg--out .fx-msg__col{align-items:flex-end}.fx-msg__bubble{padding:8px 12px;border-radius:var(--radius-md);font-family:var(--font-base);font-size:var(--fs-sm);line-height:1.4;word-break:break-word;max-width:100%}.fx-msg--in .fx-msg__bubble{background:var(--surface-level-2);color:var(--surface-text);border-bottom-left-radius:var(--radius-sm)}.fx-msg--out .fx-msg__bubble{background:var(--brand-600);color:#fff;border-bottom-right-radius:var(--radius-sm)}.fx-msg--system .fx-msg__bubble{background:transparent;color:var(--surface-muted);font-size:var(--fs-xs);text-align:center}.fx-msg--internal .fx-msg__bubble{background:rgba(245,158,11,.14);color:var(--surface-text);border:1px solid rgba(245,158,11,.4)}.fx-msg__note-label{font-size:10px;font-weight:var(--fw-semibold);color:var(--warning);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.fx-msg__text{white-space:pre-wrap}.fx-msg__edited{font-size:10px;opacity:.7;margin-left:6px}.fx-msg__deleted{font-style:italic;opacity:.7}.fx-msg__meta{display:flex;align-items:center;gap:4px;margin-top:2px;font-size:10px;color:var(--surface-muted)}.fx-msg--out .fx-msg__meta{justify-content:flex-end}.fx-msg__status--read{color:var(--info)}.fx-msg__status--error{color:var(--error)}.fx-msg__quote{display:flex;flex-direction:column;gap:1px;padding:4px 8px;margin-bottom:4px;border-left:3px solid;border-radius:var(--radius-sm);background:rgba(0,0,0,.08)}.fx-msg__quote-author{font-size:11px;font-weight:var(--fw-semibold)}.fx-msg__quote-text{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px;opacity:.85}.fx-msg__reactions{display:flex;gap:4px;margin-top:2px}.fx-msg__reaction{background:var(--surface-level-1);border:1px solid var(--surface-border);color:var(--surface-text);border-radius:var(--radius-full);padding:1px 7px;font-size:11px;line-height:1.5}.fx-msg__image img{display:block;max-width:240px;max-height:240px;border-radius:var(--radius-base);object-fit:cover}.fx-msg__caption{margin-top:4px}.fx-msg__file,.fx-msg__location{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;min-width:190px}.fx-msg__file-ico,.fx-msg__location-ico{display:inline-flex;flex:none}.fx-msg__file-info{display:flex;flex-direction:column;flex:1 1;min-width:0}.fx-msg__file-info strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-msg__file-info small{font-size:11px;opacity:.7}.fx-msg__audio{display:flex;align-items:center;gap:8px;min-width:180px}.fx-msg__audio-play{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-full);border:none;background:rgba(0,0,0,.12);color:inherit;cursor:pointer;flex:none}.fx-msg--out .fx-msg__audio-play{background:rgba(255,255,255,.22)}.fx-msg__audio-wave{display:flex;align-items:center;gap:2px;flex:1 1;height:20px}.fx-msg__audio-wave span{width:2px;background:currentColor;opacity:.55;border-radius:1px}.fx-msg__audio-dur{font-size:11px;opacity:.8;flex:none}.fx-msglist-wrap{position:relative;flex:1 1;min-height:0;display:flex}.fx-msglist{display:flex;flex-direction:column;gap:6px;padding:16px;overflow-y:auto;flex:1 1;min-height:0}.fx-msglist__jump{position:absolute;bottom:16px;right:16px;width:38px;height:38px;border-radius:var(--radius-full);border:1px solid var(--surface-border);background:var(--surface-level-1);color:var(--surface-text);box-shadow:0 4px 12px rgba(0,0,0,.2);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;z-index:5}.fx-msglist__jump:hover{background:var(--surface-level-2)}.fx-msglist__divider{align-self:center;font-size:var(--fs-xs);background:var(--surface-level-1);padding:2px 10px;border-radius:var(--radius-full);margin:8px 0}.fx-msglist__divider,.fx-msglist__state{font-family:var(--font-base);color:var(--surface-muted)}.fx-msglist__state{text-align:center;font-size:var(--fs-sm);padding:16px}.fx-msglist__loadmore{align-self:center;background:none;border:none;color:var(--accent);cursor:pointer;font-family:var(--font-base);font-size:var(--fs-sm);padding:8px}.fx-convolist{display:flex;flex-direction:column;gap:2px;padding:8px;overflow-y:auto}.fx-convo{display:flex;gap:10px;padding:10px 12px;border-radius:var(--radius-base);cursor:pointer;align-items:flex-start}.fx-convo:hover{background:var(--surface-hover)}.fx-convo--selected{background:rgba(162,28,175,.1);box-shadow:inset 0 0 0 1px var(--brand-600)}.fx-convo__body{flex:1 1;min-width:0}.fx-convo__top{display:flex;align-items:center;gap:6px}.fx-convo__name{font-family:var(--font-base);font-weight:var(--fw-semibold);font-size:var(--fs-sm);color:var(--surface-text);flex:1 1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fx-convo__time{font-size:11px;color:var(--surface-muted);flex:none}.fx-convo__preview{font-family:var(--font-base);font-size:13px;color:var(--surface-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.fx-convo__typing{color:var(--accent);font-style:italic}.fx-convo__unread{background:var(--brand-600);color:#fff;border-radius:var(--radius-full);min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:var(--fw-bold);padding:0 5px;flex:none}.fx-convo__preview{flex:1 1;min-width:0}.fx-convo__avatar{position:relative;flex:none}.fx-convo__presence{position:absolute;bottom:0;right:0;width:11px;height:11px;border-radius:var(--radius-full);background:var(--success);border:2px solid var(--surface-level-0)}.fx-convo__pin{color:var(--surface-muted);transform:rotate(45deg);flex:none}.fx-convo--pinned{background:var(--surface-level-1)}.fx-convo__sla{font-size:10px;font-weight:var(--fw-semibold);padding:1px 6px;border-radius:var(--radius-full);flex:none;white-space:nowrap}.fx-convo__sla--ok{background:rgba(22,163,74,.15);color:var(--success)}.fx-convo__sla--warn{background:rgba(245,158,11,.16);color:var(--warning)}.fx-convo__sla--late{background:rgba(239,68,68,.16);color:var(--error)}.fx-inbox{display:flex;flex-direction:column;height:100%;min-height:0}.fx-inbox .fx-convolist{flex:1 1;min-height:0}.fx-inbox__toolbar{padding:10px 10px 0;border-bottom:1px solid var(--surface-border);display:flex;flex-direction:column;gap:8px}.fx-inbox__search{display:flex;align-items:center;gap:6px}.fx-inbox__search>:first-child{flex:1 1;min-width:0}.fx-inbox__filter-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-base);border:1px solid var(--surface-border);background:var(--surface-level-0);color:var(--surface-muted);cursor:pointer;flex:none}.fx-inbox__filter-btn:hover{color:var(--surface-text)}.fx-inbox__filter-btn--active{color:var(--accent);border-color:var(--accent)}.fx-inbox__filter-dot{position:absolute;top:-4px;right:-4px;background:var(--accent);color:#fff;border-radius:var(--radius-full);min-width:15px;height:15px;font-size:9px;font-weight:var(--fw-bold);display:inline-flex;align-items:center;justify-content:center;padding:0 3px}.fx-inbox__filter{display:flex;flex-direction:column;gap:14px;min-width:200px}.fx-inbox__filter-group{display:flex;flex-direction:column;gap:8px}.fx-inbox__filter-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--surface-muted);text-transform:uppercase;letter-spacing:.04em}.fx-inbox__sort{text-align:left;border:none;background:transparent;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-sm);padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer}.fx-inbox__sort:hover{background:var(--surface-hover)}.fx-inbox__sort--active{color:var(--accent);font-weight:var(--fw-semibold)}.fx-inbox__segments{display:flex;gap:2px}.fx-inbox__seg{display:inline-flex;align-items:center;gap:5px;background:transparent;color:var(--surface-muted);font-family:var(--font-base);font-size:var(--fs-sm);font-weight:var(--fw-medium);padding:8px 10px;cursor:pointer;border:none;border-bottom:2px solid transparent;margin-bottom:-1px}.fx-inbox__seg:hover{color:var(--surface-text)}.fx-inbox__seg--active{color:var(--accent);border-bottom-color:var(--accent)}.fx-inbox__seg-count{background:var(--surface-level-2);color:var(--surface-muted);border-radius:var(--radius-full);padding:0 6px;font-size:11px}.fx-inbox__seg--active .fx-inbox__seg-count{background:var(--accent);color:#fff}.fx-inbox__empty{padding:32px 16px;text-align:center;color:var(--surface-muted);font-size:var(--fs-sm)}.fx-chathead{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--surface-border);flex:none}.fx-chathead__body{flex:1 1;min-width:0}.fx-chathead__name{font-family:var(--font-base);font-weight:var(--fw-semibold);color:var(--surface-text);display:flex;align-items:center;gap:6px}.fx-chathead__status{font-family:var(--font-base);font-size:var(--fs-xs);color:var(--surface-muted)}.fx-chathead__avatar{position:relative;flex:none}.fx-chathead__presence{position:absolute;bottom:0;right:0;width:11px;height:11px;border-radius:var(--radius-full);background:var(--success);border:2px solid var(--surface-level-0)}.fx-chathead__sub{display:flex;align-items:center;gap:8px;margin-top:1px}.fx-chathead__temp{font-size:11px;font-weight:var(--fw-semibold);padding:1px 8px;border-radius:var(--radius-full)}.fx-chathead__temp--hot{background:rgba(239,68,68,.16);color:var(--error)}.fx-chathead__temp--warm{background:rgba(245,158,11,.16);color:var(--warning)}.fx-chathead__temp--cold{background:var(--surface-level-2);color:var(--surface-muted)}.fx-chathead__menu{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-full);border:none;background:transparent;color:var(--surface-muted);cursor:pointer;flex:none}.fx-chathead__menu:hover{color:var(--surface-text);background:var(--surface-hover)}.fx-ai-suggest{padding:10px 14px;border-top:1px solid var(--surface-border);background:rgba(162,28,175,.05);display:flex;flex-direction:column;gap:8px;flex:none}.fx-ai-suggest__head{display:flex;align-items:center;justify-content:space-between}.fx-ai-suggest__title{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-base);font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--accent);text-transform:uppercase;letter-spacing:.04em}.fx-ai-suggest__x{display:inline-flex;border:none;background:transparent;color:var(--surface-muted);cursor:pointer;padding:0}.fx-ai-suggest__summary,.fx-ai-suggest__x:hover{color:var(--surface-text)}.fx-ai-suggest__summary{margin:0;font-family:var(--font-base);font-size:var(--fs-sm)}.fx-ai-suggest__chips{display:flex;flex-wrap:wrap;gap:6px}.fx-ai-suggest__chip{text-align:left;border:1px solid var(--accent);background:var(--surface-level-0);color:var(--surface-text);border-radius:var(--radius-full);padding:6px 12px;font-family:var(--font-base);font-size:var(--fs-sm);cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-ai-suggest__chip:hover{background:rgba(162,28,175,.08)}.fx-composer-wrap{display:flex;flex-direction:column;border-top:1px solid var(--surface-border);flex:none}.fx-composer-wrap--internal{background:rgba(245,158,11,.06)}.fx-composer__note-bar{display:flex;align-items:center;gap:6px;padding:6px 16px 0;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--warning)}.fx-composer__previews{display:flex;flex-wrap:wrap;gap:8px;padding:10px 16px 0}.fx-composer__preview{display:flex;align-items:center;gap:8px;background:var(--surface-level-1);border:1px solid var(--surface-border);border-radius:var(--radius-base);padding:6px 8px 6px 10px;max-width:220px}.fx-composer__preview--error{border-color:var(--error)}.fx-composer__preview-ico{display:inline-flex;color:var(--surface-muted);flex:none}.fx-composer__preview-name{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1;min-width:0}.fx-composer__preview-bar{display:block;width:40px;height:3px;border-radius:2px;background:var(--surface-level-3);flex:none;overflow:hidden}.fx-composer__preview-bar span{display:block;height:100%;background:var(--accent)}.fx-composer__preview-x{display:inline-flex;border:none;background:transparent;color:var(--surface-muted);cursor:pointer;padding:0;flex:none}.fx-composer__preview-x:hover{color:var(--surface-text)}.fx-composer{display:flex;align-items:flex-end;gap:6px;padding:10px 14px}.fx-composer__tools{display:flex;align-items:center;gap:2px;flex:none}.fx-composer__icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-full);border:none;background:transparent;color:var(--surface-muted);cursor:pointer;flex:none}.fx-composer__icon:hover{color:var(--surface-text);background:var(--surface-hover)}.fx-composer__icon:disabled{opacity:.5;cursor:default}.fx-composer__icon--active{color:var(--warning);background:rgba(245,158,11,.14)}.fx-composer__icon--ai{color:var(--accent)}.fx-composer__emojis{display:flex;flex-wrap:wrap;gap:2px;max-width:264px}.fx-composer__emoji{border:none;background:transparent;cursor:pointer;font-size:20px;line-height:1;padding:4px;border-radius:var(--radius-sm)}.fx-composer__emoji:hover{background:var(--surface-hover)}.fx-composer__canned{display:flex;flex-direction:column;gap:2px;min-width:240px;max-width:300px}.fx-composer__canned-item{display:flex;flex-direction:column;gap:1px;text-align:left;border:none;background:transparent;cursor:pointer;padding:8px 10px;border-radius:var(--radius-sm)}.fx-composer__canned-item:hover{background:var(--surface-hover)}.fx-composer__canned-item strong{font-size:13px;color:var(--surface-text)}.fx-composer__canned-item small{font-size:12px;color:var(--surface-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-composer__input{flex:1 1;min-width:0;resize:none;border:1px solid var(--surface-border);border-radius:var(--radius-lg);padding:9px 14px;background:var(--surface-level-0);color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-sm);outline:none;max-height:120px;line-height:1.4}.fx-composer__input:focus{border-color:var(--brand-600);box-shadow:var(--focus-ring)}.fx-composer__send{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-full);border:none;background:var(--brand-600);color:#fff;cursor:pointer;flex:none}.fx-composer__send:disabled{opacity:.4;cursor:default}.fx-composer__send--mic{background:var(--surface-level-2);color:var(--surface-text)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.fx-convolist,.fx-kanban__list,.fx-modal,.fx-modal__body,.fx-msglist,.fx-sidepanel,.fx-sidepanel__body,.fx-table__scroll{overscroll-behavior:contain}.fx-kanban__col-sum,.fx-msg__meta,.fx-table{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fx-kanban__card{overflow-wrap:anywhere}.fx-kanban{touch-action:pan-x}.fx-kanban__col--collapsed .fx-kanban__col-title{max-height:180px}.fx-shell{display:flex;flex-direction:column;height:100vh;background:var(--app-bg);color:var(--app-text);font-family:var(--font-base)}.fx-shell__header{display:flex;align-items:center;gap:12px;height:56px;flex:none;padding:0 16px;border-bottom:1px solid var(--surface-border);background:var(--surface-level-0)}.fx-shell__burger{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:var(--surface-text);border-radius:var(--radius-base);cursor:pointer;margin-left:-8px;flex:none}.fx-shell__burger:hover{background:var(--surface-hover)}.fx-shell__brand{font-weight:var(--fw-bold);font-size:var(--fs-lg);color:var(--surface-text);flex:none;display:flex;align-items:center;gap:8px}.fx-shell__header-main{flex:1 1;min-width:0;display:flex;align-items:center;gap:12px}.fx-shell__body{display:flex;flex:1 1;min-height:0}.fx-shell__sidebar{width:240px;flex:none;display:flex;flex-direction:column;border-right:1px solid var(--surface-border);background:var(--surface-level-0);transition:width .18s ease}.fx-shell--collapsed .fx-shell__sidebar{width:64px}.fx-shell__nav{flex:1 1;overflow-y:auto;padding:12px 10px;display:flex;flex-direction:column;gap:2px}.fx-shell__collapse{display:flex;align-items:center;gap:8px;padding:10px 14px;border:none;border-top:1px solid var(--surface-border);background:transparent;color:var(--surface-muted);cursor:pointer;font-family:var(--font-base);font-size:var(--fs-sm);flex:none}.fx-shell__collapse:hover{color:var(--surface-text);background:var(--surface-hover)}.fx-shell--collapsed .fx-shell__collapse{justify-content:center}.fx-shell__content{flex:1 1;min-width:0;overflow:auto;background:var(--content-bg)}.fx-shell__rightbar{width:320px;flex:none;border-left:1px solid var(--surface-border);background:var(--surface-level-0);overflow-y:auto}.fx-shell__scrim{display:none}.fx-nav-item{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:var(--radius-base);color:var(--surface-text);text-decoration:none;font-family:var(--font-base);font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;white-space:nowrap;border:none;background:transparent;width:100%;text-align:left}.fx-nav-item:hover{background:var(--surface-hover)}.fx-nav-item--active{background:rgba(162,28,175,.12);color:var(--accent)}.fx-nav-item__icon{flex:none;display:inline-flex}.fx-nav-group{padding:16px 12px 4px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--surface-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.fx-shell--collapsed .fx-nav-item__label,.fx-shell--collapsed .fx-shell__collapse span{display:none}.fx-shell--collapsed .fx-nav-item{justify-content:center;padding:9px}.fx-shell--collapsed .fx-nav-group{display:none}@media (max-width:880px){.fx-shell__burger{display:inline-flex}.fx-shell__sidebar{position:fixed;top:0;bottom:0;left:0;z-index:60;width:260px!important;transform:translateX(-100%);transition:transform .2s ease;box-shadow:8px 0 40px rgba(0,0,0,.4)}.fx-shell--drawer-open .fx-shell__sidebar{transform:none}.fx-shell--collapsed .fx-nav-item__label{display:flex}.fx-shell--collapsed .fx-nav-item{justify-content:flex-start;padding:9px 12px}.fx-shell__collapse{display:none}.fx-shell--drawer-open .fx-shell__scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:55}.fx-shell__rightbar{display:none}}.fx-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fx-gsearch__trigger{display:flex;align-items:center;gap:8px;height:36px;padding:0 8px 0 12px;border:1px solid var(--surface-border);border-radius:var(--radius-base);background:var(--surface-level-1);color:var(--surface-muted);cursor:pointer;font-family:var(--font-base);font-size:var(--fs-sm);min-width:200px}.fx-gsearch__trigger:hover{border-color:var(--surface-muted)}.fx-gsearch__placeholder{flex:1 1;text-align:left}.fx-gsearch__kbd{font-family:var(--font-base);font-size:11px;color:var(--surface-muted);background:var(--surface-level-3);border:1px solid var(--surface-border);border-radius:var(--radius-sm);padding:1px 6px}.fx-gsearch__overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:200}.fx-gsearch__palette{position:fixed;top:13vh;left:50%;transform:translateX(-50%);width:92vw;max-width:560px;background:var(--surface-level-1);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:0 20px 60px rgba(0,0,0,.4);z-index:201;overflow:hidden;animation:fx-view-in .16s ease;color:var(--surface-text);font-family:var(--font-base)}.fx-gsearch__input-wrap{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--surface-border);color:var(--surface-muted)}.fx-gsearch__input{flex:1 1;border:none;outline:none;background:transparent;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-base)}.fx-gsearch__input::placeholder{color:var(--surface-muted)}.fx-gsearch__list{max-height:50vh;overflow-y:auto;padding:6px}.fx-gsearch__empty{padding:28px;text-align:center;color:var(--surface-muted);font-size:var(--fs-sm)}.fx-gsearch__group [cmdk-group-heading]{padding:8px 10px 4px;font-size:var(--fs-xs);color:var(--surface-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:var(--fw-semibold)}.fx-gsearch__item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--radius-sm);color:var(--surface-text);font-size:var(--fs-sm);cursor:pointer}.fx-gsearch__item[data-selected=true]{background:var(--surface-hover)}.fx-gsearch__item-icon{display:inline-flex;color:var(--surface-muted);flex:none}.fx-gsearch__item-label{flex:1 1}.fx-gsearch__hint{font-size:11px;color:var(--surface-muted)}.fx-usermenu__trigger{border:none;background:transparent;padding:2px;border-radius:var(--radius-full);cursor:pointer;display:inline-flex}.fx-usermenu__trigger:hover{box-shadow:0 0 0 2px var(--surface-border)}.fx-usermenu{margin:-14px}.fx-usermenu__head{display:flex;align-items:center;gap:12px;padding:14px;border-bottom:1px solid var(--surface-border)}.fx-usermenu__info{display:flex;flex-direction:column;min-width:0}.fx-usermenu__name{font-size:var(--fs-sm);color:var(--surface-text)}.fx-usermenu__email,.fx-usermenu__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-usermenu__email{font-size:var(--fs-xs);color:var(--surface-muted)}.fx-usermenu__items{padding:6px;display:flex;flex-direction:column}.fx-usermenu__item{display:flex;align-items:center;gap:10px;padding:8px 10px;border:none;background:transparent;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-sm);border-radius:var(--radius-sm);cursor:pointer;text-align:left}.fx-usermenu__item:hover{background:var(--surface-hover)}.fx-usermenu__item-icon{display:inline-flex;color:var(--surface-muted);flex:none}.fx-usermenu__item--danger{color:var(--error)}.fx-usermenu__item--danger:hover{background:rgba(239,68,68,.1)}.fx-usermenu__footer{padding:10px 14px;border-top:1px solid var(--surface-border);font-size:var(--fs-xs);color:var(--surface-muted)}.fx-nav-item__badge{margin-left:auto;background:var(--surface-level-2);color:var(--surface-muted);border-radius:var(--radius-full);min-width:20px;height:18px;padding:0 6px;font-size:11px;font-weight:var(--fw-semibold);display:inline-flex;align-items:center;justify-content:center;flex:none}.fx-nav-item--active .fx-nav-item__badge{background:var(--accent);color:#fff}.fx-shell--collapsed .fx-nav-item__badge{display:none}.fx-ws{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:1px solid var(--surface-border);background:var(--surface-level-1);border-radius:var(--radius-base);cursor:pointer;color:var(--surface-text);text-align:left;margin-bottom:8px}.fx-ws:hover{border-color:var(--surface-muted)}.fx-ws__avatar{width:30px;height:30px;border-radius:var(--radius-base);background:var(--brand-600);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:var(--fw-bold);font-size:13px;flex:none}.fx-ws__body{flex:1 1;min-width:0}.fx-ws__name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-ws__sub{font-size:var(--fs-xs);color:var(--surface-muted)}.fx-shell--collapsed .fx-ws__body,.fx-shell--collapsed .fx-ws__chev{display:none}.fx-shell--collapsed .fx-ws{justify-content:center;padding:8px 0}.fx-shell--rail-right .fx-shell__rightbar{width:56px}.fx-rail{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 0}.fx-rail__btn{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--surface-muted);border-radius:var(--radius-base);cursor:pointer}.fx-rail__btn:hover{background:var(--surface-hover);color:var(--surface-text)}.fx-rail__btn--active{background:rgba(162,28,175,.12);color:var(--accent)}.fx-rail__sep{width:24px;height:1px;background:var(--surface-border);margin:6px 0}.fx-shell--collapsed .fx-hide-collapsed{display:none}.fx-usermenu__avatar{position:relative;display:inline-flex;flex:none}.fx-usermenu__presence{position:absolute;bottom:-1px;right:-1px;width:10px;height:10px;border-radius:var(--radius-full);border:2px solid var(--surface-level-0)}.fx-usermenu__presence--online{background:var(--success)}.fx-usermenu__presence--away{background:var(--warning)}.fx-usermenu__presence--busy{background:var(--error)}.fx-usermenu__presence--offline{background:var(--surface-muted)}.fx-usermenu__toggle{display:flex;align-items:center;gap:9px;padding:5px 8px 5px 6px;border:none;background:transparent;border-radius:var(--radius-base);cursor:pointer;transition:background-color .15s;max-width:220px}.fx-usermenu__toggle:hover{background:var(--surface-hover)}.fx-usermenu__toggle-text{display:flex;flex-direction:column;min-width:0;text-align:left}.fx-usermenu__toggle-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--surface-text)}.fx-usermenu__toggle-name,.fx-usermenu__toggle-role{font-family:var(--font-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-usermenu__toggle-role{font-size:11px;color:var(--surface-muted)}.fx-usermenu__chevron{color:var(--surface-muted);flex:none}.fx-usermenu__role{font-size:var(--fs-xs);color:var(--surface-muted)}.fx-usermenu__section{padding:8px 6px;border-bottom:1px solid var(--surface-border);display:flex;flex-direction:column;gap:2px}.fx-usermenu__section-title{padding:4px 8px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--surface-muted);text-transform:uppercase;letter-spacing:.04em}.fx-usermenu__presence-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:2px;gap:2px}.fx-usermenu__presence-opt{display:flex;align-items:center;gap:8px;padding:7px 8px;border:none;background:transparent;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-sm);border-radius:var(--radius-sm);cursor:pointer;text-align:left}.fx-usermenu__presence-opt:hover{background:var(--surface-hover)}.fx-usermenu__presence-opt .fx-usermenu__presence{position:static;border:none}.fx-usermenu__presence-opt--active{color:var(--accent);font-weight:var(--fw-medium)}.fx-usermenu__ws{display:flex;align-items:center;gap:9px;padding:8px;border:none;background:transparent;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-sm);border-radius:var(--radius-sm);cursor:pointer;text-align:left}.fx-usermenu__ws:hover{background:var(--surface-hover)}.fx-usermenu__ws--active{background:rgba(162,28,175,.1)}.fx-usermenu__ws--active .fx-usermenu__ws-name{color:var(--accent);font-weight:var(--fw-semibold)}.fx-usermenu__ws-dot{width:10px;height:10px;border-radius:var(--radius-sm);flex:none}.fx-usermenu__ws-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-usermenu__ws .lucide-check{color:var(--accent);flex:none}.fx-iconbtn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:none;background:transparent;color:var(--surface-muted);border-radius:var(--radius-base);cursor:pointer;transition:background-color .15s,color .15s;flex:none}.fx-iconbtn:hover{background:var(--surface-hover);color:var(--surface-text)}.fx-iconbtn__badge{position:absolute;top:3px;right:3px;min-width:16px;height:16px;padding:0 4px;background:var(--error);border-radius:var(--radius-full);font-size:10px;font-weight:var(--fw-bold);border:2px solid var(--surface-level-0)}.fx-iconbtn__badge,.fx-quickcreate{color:#fff;display:inline-flex;align-items:center;justify-content:center}.fx-quickcreate{gap:6px;height:38px;min-width:38px;padding:0 10px;border:none;background:var(--brand-600);border-radius:var(--radius-base);cursor:pointer;font-family:var(--font-base);font-size:var(--fs-sm);font-weight:var(--fw-semibold);transition:filter .15s;flex:none}.fx-quickcreate:hover{filter:brightness(1.08)}.fx-quickcreate:not(.fx-quickcreate--labeled){padding:0;width:38px}.fx-notif{margin:-14px}.fx-notif__head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--surface-border)}.fx-notif__head strong{font-size:var(--fs-sm)}.fx-notif__markall{display:inline-flex;align-items:center;gap:4px;border:none;background:transparent;color:var(--accent);font-family:var(--font-base);font-size:var(--fs-xs);cursor:pointer}.fx-notif__list{max-height:380px;overflow-y:auto}.fx-notif__empty{padding:32px;text-align:center;color:var(--surface-muted);font-size:var(--fs-sm)}.fx-notif__item{display:flex;align-items:flex-start;gap:10px;width:100%;padding:11px 14px;border:none;background:transparent;cursor:pointer;text-align:left;border-bottom:1px solid var(--surface-border)}.fx-notif__item:last-child{border-bottom:none}.fx-notif__item:hover{background:var(--surface-hover)}.fx-notif__item--unread{background:rgba(162,28,175,.05)}.fx-notif__icon{display:inline-flex;color:var(--accent);flex:none;margin-top:1px}.fx-notif__body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.fx-notif__title{font-size:var(--fs-sm);color:var(--surface-text)}.fx-notif__desc{font-size:var(--fs-xs);color:var(--surface-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-notif__time{font-size:11px;color:var(--surface-muted);flex:none}.fx-shell__sidebar-inner,.fx-sidebar{flex:1 1;min-height:0;display:flex;flex-direction:column}.fx-sidebar__header{flex:none;padding:10px 10px 4px}.fx-sidebar__nav{flex:1 1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:6px 10px 12px;display:flex;flex-direction:column;gap:1px}.fx-sidebar__nav::-webkit-scrollbar{width:6px}.fx-sidebar__nav::-webkit-scrollbar-thumb{background:var(--surface-border);border-radius:3px}.fx-sidebar__nav:hover::-webkit-scrollbar-thumb{background:var(--surface-muted)}.fx-sidebar__footer{flex:none;padding:8px 10px;border-top:1px solid var(--surface-border)}.fx-nav-group-wrap,.fx-sidebar__footer,.fx-sidebar__section{display:flex;flex-direction:column;gap:1px}.fx-nav-group--toggle{display:flex;align-items:center;gap:6px;border:none;background:transparent;cursor:pointer;width:100%}.fx-nav-group--toggle:hover{color:var(--surface-text)}.fx-nav-group__chev,.fx-nav-group__pin{color:var(--surface-muted);flex:none}.fx-nav-group__chev{margin-left:auto;transition:transform .15s}.fx-nav-item--parent{justify-content:flex-start}.fx-nav-item__chev{margin-left:auto;display:inline-flex;color:var(--surface-muted);transition:transform .15s;flex:none}.fx-nav-item__chev--open{transform:rotate(180deg)}.fx-nav-item--active-trail{color:var(--surface-text);font-weight:var(--fw-semibold)}.fx-nav-sub{display:flex;flex-direction:column;gap:1px;margin:1px 0 3px 16px;padding-left:8px;border-left:1px solid var(--surface-border)}.fx-nav-item--child{font-size:var(--fs-sm)}.fx-nav-item--active{position:relative}.fx-nav-item--active:before{content:"";position:absolute;left:-2px;top:50%;transform:translateY(-50%);width:3px;height:18px;border-radius:0 3px 3px 0;background:var(--accent)}.fx-shell--collapsed .fx-nav-item--active:before{display:none}.fx-shell--collapsed .fx-shell__sidebar{overflow:visible}.fx-shell--collapsed .fx-shell__sidebar:hover{width:240px;box-shadow:10px 0 30px rgba(0,0,0,.28);z-index:30}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-hide-collapsed,.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item__badge,.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item__chev,.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item__label,.fx-shell--collapsed .fx-shell__sidebar:hover .fx-shell__collapse span{display:flex}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-ws__body{display:block}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-group--toggle,.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item{justify-content:flex-start;padding:9px 12px}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-group{display:block;font-size:var(--fs-xs);text-align:left;padding:16px 12px 4px}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-group--toggle{display:flex;align-items:center;padding:12px 12px 4px}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item--active:before{display:block}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-sub{display:flex}.fx-shell--collapsed .fx-nav-sub{display:none}@media (min-width:881px){.fx-shell--collapsed .fx-shell__body{position:relative}.fx-shell--collapsed .fx-shell__sidebar{position:absolute;left:0;top:0;bottom:0;z-index:30}.fx-shell--collapsed .fx-shell__content{margin-left:64px}.fx-shell--collapsed .fx-shell__sidebar:hover{background:var(--brand-700);border-right-color:transparent}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item,.fx-shell--collapsed .fx-shell__sidebar:hover .fx-ws__name{color:#fff}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-group,.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-group__pin,.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item__chev,.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item__icon,.fx-shell--collapsed .fx-shell__sidebar:hover .fx-ws__sub{color:rgba(255,255,255,.72)}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item:hover{background:rgba(255,255,255,.14)}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item--active{background:rgba(255,255,255,.2);color:#fff}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item--active:before{background:#fff}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item__badge{background:rgba(255,255,255,.25);color:#fff}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-ws{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2)}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-sidebar__footer{border-top-color:rgba(255,255,255,.15)}}.fx-nav-group--toggle,.fx-nav-item,.fx-shell__burger,.fx-ws{transition:background-color .13s ease,color .13s ease;touch-action:manipulation}.fx-nav-group--toggle:focus-visible,.fx-nav-item:focus-visible,.fx-ws:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.fx-shell__burger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-group--toggle:focus-visible,.fx-shell--collapsed .fx-shell__sidebar:hover .fx-nav-item:focus-visible{outline-color:#fff}.fx-sidebar__edit-enter{display:flex;align-items:center;gap:8px;margin:4px 10px 10px;padding:8px 10px;border:1px dashed var(--surface-border);background:transparent;color:var(--surface-muted);border-radius:var(--radius-base);cursor:pointer;font-family:var(--font-base);font-size:var(--fs-sm);flex:none}.fx-sidebar__edit-enter:hover{color:var(--surface-text);border-color:var(--surface-muted)}.fx-sidebar__edit-enter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fx-shell--collapsed .fx-sidebar__edit-enter{justify-content:center}.fx-nav-item--editing{cursor:default}.fx-nav-item--editing:hover{background:transparent}.fx-nav-item--off{opacity:.45}.fx-nav-item--off .fx-nav-item__label{text-decoration:line-through}.fx-nav-edit__btn{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:transparent;color:var(--surface-muted);border-radius:var(--radius-sm);cursor:pointer;flex:none}.fx-nav-edit__btn:hover{background:var(--surface-hover);color:var(--surface-text)}.fx-nav-edit__btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.fx-sidebar__edit-bar{flex:none;display:flex;gap:8px;padding:10px;border-top:1px solid var(--surface-border);background:var(--surface-level-1)}.fx-sidebar__edit-bar button{flex:1 1;padding:8px;border-radius:var(--radius-base);font-family:var(--font-base);font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;border:1px solid transparent}.fx-sidebar__edit-cancel{background:transparent;border-color:var(--surface-border);color:var(--surface-text)}.fx-sidebar__edit-cancel:hover{background:var(--surface-hover)}.fx-sidebar__edit-save{background:var(--brand-600);color:#fff}.fx-sidebar__edit-save:hover{filter:brightness(1.08)}.fx-sidebar__edit-bar button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fx-nav-grip{display:inline-flex;align-items:center;justify-content:center;cursor:-webkit-grab;cursor:grab;color:var(--surface-muted);margin:0 2px 0 -4px;flex:none;touch-action:none;border-radius:var(--radius-sm)}.fx-nav-grip:hover{color:var(--surface-text)}.fx-nav-grip:active{cursor:-webkit-grabbing;cursor:grabbing}.fx-nav-grip:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.fx-nav-item--editing .fx-nav-item__label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-sidebar__edit-bar{flex-direction:column}.fx-sidebar__edit-actions,.fx-sidebar__edit-commit{display:flex;gap:8px}.fx-sidebar__edit-actions .fx-sidebar__edit-action{flex:1 1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px;border:1px dashed var(--surface-border);background:transparent;color:var(--surface-muted);border-radius:var(--radius-base);cursor:pointer;font-family:var(--font-base);font-size:var(--fs-sm);font-weight:var(--fw-medium)}.fx-sidebar__edit-actions .fx-sidebar__edit-action:hover{color:var(--surface-text);border-color:var(--surface-muted)}.fx-nav-group--custom{display:flex;align-items:center;gap:7px;text-transform:none;letter-spacing:normal}.fx-nav-group__dot{width:8px;height:8px;border-radius:var(--radius-full);flex:none}.fx-nav-edit__btn--danger:hover{color:var(--error);background:rgba(239,68,68,.1)}.fx-iconpicker{display:flex;flex-direction:column;gap:8px}.fx-iconpicker__search{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--surface-border);border-radius:var(--radius-base);color:var(--surface-muted)}.fx-iconpicker__input{flex:1 1;border:none;outline:none;background:transparent;color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-sm)}.fx-iconpicker__grid{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:4px;gap:4px;max-height:160px;overflow-y:auto;padding:2px}.fx-iconpicker__cell{display:inline-flex;align-items:center;justify-content:center;aspect-ratio:1;border:1px solid transparent;background:var(--surface-level-1);color:var(--surface-text);border-radius:var(--radius-sm);cursor:pointer}.fx-iconpicker__cell:hover{background:var(--surface-hover)}.fx-iconpicker__cell--on{border-color:var(--accent);color:var(--accent);background:rgba(162,28,175,.1)}.fx-iconpicker__cell:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fx-iconpicker__empty{grid-column:1/-1;padding:16px;text-align:center;color:var(--surface-muted);font-size:var(--fs-sm)}.fx-sb-form{gap:14px}.fx-sb-form,.fx-sb-form__field{display:flex;flex-direction:column}.fx-sb-form__field{gap:5px}.fx-sb-form__field>span{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--surface-muted)}.fx-sb-form__select{padding:8px 10px;border:1px solid var(--surface-border);border-radius:var(--radius-base);background:var(--surface-level-1);color:var(--surface-text);font-family:var(--font-base);font-size:var(--fs-sm)}.fx-sb-form__colors{display:flex;gap:8px;flex-wrap:wrap}.fx-sb-form__swatch{width:26px;height:26px;border-radius:var(--radius-full);border:2px solid transparent;cursor:pointer}.fx-sb-form__swatch--on{box-shadow:0 0 0 2px var(--surface-level-0),0 0 0 4px var(--accent)}.fx-sb-form__swatch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fx-rail--full{height:100%}.fx-rail__spacer{flex:1 1}.fx-rail__btn{position:relative;transition:background-color .13s ease,color .13s ease;touch-action:manipulation}.fx-rail__btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.fx-rail__badge{position:absolute;top:3px;right:3px;min-width:16px;height:16px;padding:0 4px;border-radius:var(--radius-full);font-size:10px;font-weight:var(--fw-bold);color:#fff;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--surface-level-0)}.fx-rail__badge--error{background:var(--error)}.fx-rail__badge--warning{background:var(--warning);color:#1a1a1a}.fx-rail__badge--accent{background:var(--accent)}.fx-rail__dot{position:absolute;top:7px;right:7px;width:9px;height:9px;border-radius:var(--radius-full);background:var(--error);border:2px solid var(--surface-level-0)}.fx-alert{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--radius-base);border:1px solid var(--surface-border);font-family:var(--font-base);font-size:var(--fs-sm)}.fx-alert__icon{flex:none;display:inline-flex;margin-top:1px}.fx-alert__body{flex:1 1;min-width:0}.fx-alert__title{font-weight:var(--fw-semibold);color:var(--surface-text);margin-bottom:2px}.fx-alert__close,.fx-alert__text{color:var(--surface-muted)}.fx-alert__close{flex:none;border:none;background:transparent;cursor:pointer;padding:0;display:inline-flex}.fx-alert__close:hover{color:var(--surface-text)}.fx-alert--info{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.3)}.fx-alert--info .fx-alert__icon{color:var(--info)}.fx-alert--success{background:rgba(22,163,74,.1);border-color:rgba(22,163,74,.3)}.fx-alert--success .fx-alert__icon{color:var(--success)}.fx-alert--warning{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.3)}.fx-alert--warning .fx-alert__icon{color:var(--warning)}.fx-alert--error{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3)}.fx-alert--error .fx-alert__icon{color:var(--error)}.fx-spinner{display:inline-block;box-sizing:border-box;border-style:solid;border-color:var(--surface-level-3);border-top-color:var(--accent);border-radius:50%;animation:fx-spin .7s linear infinite}@keyframes fx-spin{to{transform:rotate(1turn)}}.fx-progress{width:100%;height:6px;background:var(--surface-level-3);overflow:hidden}.fx-progress,.fx-progress__bar{border-radius:var(--radius-full)}.fx-progress__bar{height:100%;background:var(--brand-600);transition:width .2s ease}.fx-progress--indeterminate .fx-progress__bar{width:40%;animation:fx-progress-indet 1.2s ease-in-out infinite}@keyframes fx-progress-indet{0%{margin-left:-40%}to{margin-left:100%}}.fx-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 24px;font-family:var(--font-base);gap:4px}.fx-empty__icon{color:var(--surface-muted);margin-bottom:8px;display:inline-flex}.fx-empty__title{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--surface-text)}.fx-empty__desc{font-size:var(--fs-sm);color:var(--surface-muted);max-width:340px}.fx-empty__action{margin-top:12px}.fx-pagination{gap:4px;font-family:var(--font-base)}.fx-pagination,.fx-pagination__btn{display:inline-flex;align-items:center}.fx-pagination__btn{min-width:34px;height:34px;justify-content:center;border:1px solid var(--surface-border);background:var(--surface-level-1);color:var(--surface-text);border-radius:var(--radius-base);cursor:pointer;font-size:var(--fs-sm);padding:0 8px}.fx-pagination__btn:hover:not(:disabled){background:var(--surface-hover)}.fx-pagination__btn:disabled{opacity:.4;cursor:default}.fx-pagination__btn--active{background:var(--brand-600);border-color:var(--brand-600);color:#fff}.fx-pagination__btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.fx-pagination__ellipsis{padding:0 4px;color:var(--surface-muted)}.fx-stepper{display:flex;list-style:none;margin:0;padding:0;font-family:var(--font-base)}.fx-stepper__step{display:flex;align-items:center;gap:8px;flex:1 1}.fx-stepper__step:not(:last-child):after{content:"";flex:1 1;height:2px;background:var(--surface-level-3);margin:0 8px;min-width:16px}.fx-stepper__step--done:not(:last-child):after{background:var(--accent)}.fx-stepper__dot{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:var(--fw-bold);flex:none;background:var(--surface-level-2);color:var(--surface-muted);border:2px solid var(--surface-border)}.fx-stepper__step--active .fx-stepper__dot{background:var(--brand-600);color:#fff;border-color:var(--brand-600)}.fx-stepper__step--done .fx-stepper__dot{background:var(--accent);color:#fff;border-color:var(--accent)}.fx-stepper__text{display:flex;flex-direction:column}.fx-stepper__label{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--surface-text)}.fx-stepper__desc,.fx-stepper__step--todo .fx-stepper__label{color:var(--surface-muted)}.fx-stepper__desc{font-size:var(--fs-xs)}.fx-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:var(--radius-full);outline:none;cursor:pointer}.fx-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--brand-600);border:2px solid var(--surface-level-0);cursor:pointer}.fx-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--brand-600);border:2px solid var(--surface-level-0);cursor:pointer}.fx-slider:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fx-slider:disabled{opacity:.5;cursor:default}