/* Webin: approved visual direction. Brand assets and fonts are served locally. */
@font-face { font-family: 'Webin Open Sans'; src: url('fonts/OpenSans-Regular.ttf') format('truetype'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Webin Open Sans'; src: url('fonts/OpenSans-Semibold.ttf') format('truetype'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'Webin Open Sans'; src: url('fonts/OpenSans-Bold.ttf') format('truetype'); font-weight: 700; font-style: normal; font-display: swap; }
:root { --webin-purple: #603b7b; --webin-deep: #523671; --webin-accent: #774c97; --webin-ink: #282331; --webin-muted: #625c6c; --webin-border: #e4e1e9; --webin-surface: #f6f7fa; --webin-soft: #f2edf6; --webin-red: #b93649; --webin-green: #21714f; }
body, .x-body, .x-component, .x-form-item-label, .x-form-field, .x-btn-inner, .x-tab-inner, .x-column-header, .x-grid-item, .x-menu-item-text, .x-window-header-title, .x-panel-header-title, .x-toolbar-text { font-family: 'Webin Open Sans', 'Open Sans', sans-serif; font-weight: 400; }
html, body, .webin-shell, .webin-content, .webin-desktop { background: var(--webin-surface); color: var(--webin-ink); }
.webin-desktop-header { background: #fff; border-color: var(--webin-border) !important; padding: 10px 26px; }
.webin-desktop-brand { line-height: 1; }
.webin-desktop-brand img { display: block; width: 155px; height: auto; max-width: 100%; }
.webin-desktop-header .x-btn-inner { color: var(--webin-ink); font-weight: 600; }
.webin-desktop-header .webin-organization-trigger .x-btn-inner { color: var(--webin-ink); text-transform: none; font-size: 14px; }
.webin-context-label { color: var(--webin-muted); letter-spacing: 1.2px; font-weight: 600; }
.webin-sidebar, .webin-sidebar > .x-panel-body, .webin-sidebar .x-panel-body, .webin-sidebar .x-panel-header, .webin-navigation .x-grid-view { background: #fff; }
.webin-sidebar { border-right: 1px solid var(--webin-border) !important; }
.webin-sidebar-identity { color: var(--webin-ink); padding: 21px 18px; }
.webin-sidebar-identity div > span { color: var(--webin-muted); }
.webin-sidebar-identity strong { font-size: 13px; }
.webin-avatar { background: var(--webin-soft); color: var(--webin-deep); border: 0; font-size: 15px; font-weight: 600; }
.webin-sidebar .x-form-text-default { background: #faf9fc; color: var(--webin-ink); font-size: 12px; }
.webin-sidebar input::placeholder { color: var(--webin-muted); }
.webin-sidebar .x-form-trigger-wrap-default { border-color: var(--webin-border); border-radius: 6px; }
.webin-navigation .x-grid-item { background: #fff; color: var(--webin-ink); }
.webin-navigation .x-grid-item-over { background: #faf9fc; }
.webin-navigation .x-grid-item-selected { background: var(--webin-soft); color: var(--webin-purple); box-shadow: inset 3px 0 var(--webin-purple); }
.webin-navigation .x-grid-item-selected .x-tree-node-text { color: var(--webin-purple) !important; font-weight: 600; }
.webin-navigation .x-grid-cell-inner { padding-top: 10px; padding-bottom: 10px; font-size: 12px; }
.webin-navigation .x-tree-icon, .webin-navigation .x-tree-elbow-img { color: var(--webin-muted); }
.webin-navigation .x-tree-elbow-plus:before, .webin-navigation .x-tree-elbow-minus:before { color: var(--webin-muted); }
.webin-navigation .x-grid-tree-node-expanded > .x-grid-cell .x-tree-node-text { color: var(--webin-muted); font-weight: 700; font-size: 10px; letter-spacing: 1.1px; }
.webin-work-tabs > .x-tab-bar, .webin-work-tabs > .x-panel-bodyWrap > .x-tab-bar { background: #f0edf3; padding-left: 18px; border-bottom: 1px solid var(--webin-border); }
.webin-work-tabs .x-tab-default-top { background: transparent; border-radius: 7px 7px 0 0; padding-top: 11px; padding-bottom: 11px; }
.webin-work-tabs .x-tab-default-top .x-tab-inner, .webin-work-tabs .x-tab-default-top .x-tab-icon-el { color: var(--webin-muted); font-size: 12px; }
.webin-work-tabs .x-tab-active.x-tab-default-top { background: var(--webin-surface); box-shadow: inset 0 2px var(--webin-purple); }
.webin-work-tabs .x-tab-active.x-tab-default-top .x-tab-inner, .webin-work-tabs .x-tab-active.x-tab-default-top .x-tab-icon-el { color: var(--webin-purple); }
.webin-work-tabs .x-tab-close-btn { color: var(--webin-muted); }
.webin-work-view, .webin-work-view > .x-panel-body, .webin-work-view > .x-panel-bodyWrap > .x-panel-body, .webin-financial-titles > .x-panel-bodyWrap > .x-panel-body { background: var(--webin-surface); }
.webin-work-view .x-panel-body-default { border-color: var(--webin-border); }
.webin-page-heading { margin-bottom: 23px; }
.webin-page-heading > span, .webin-eyebrow { color: var(--webin-muted); font-size: 10px; font-weight: 600; letter-spacing: 1.3px; }
.webin-page-heading h1, .webin-work-view .webin-heading h1, .webin-heading h1 { color: var(--webin-ink); font-size: 26px; font-weight: 700; letter-spacing: -.6px; }
.webin-page-heading p, .webin-heading p, .webin-form-help, .webin-note, .webin-cash-note { color: var(--webin-muted); font-weight: 400; line-height: 1.65; }
.webin-work-view .x-toolbar-default { background: #fff; border-color: var(--webin-border); padding: 12px; }
.webin-work-view .x-grid { border: 1px solid var(--webin-border) !important; border-radius: 8px; overflow: hidden; background: #fff; }
.webin-work-view .x-grid .x-panel-body { background: #fff; }
.webin-work-view .x-grid-item { color: var(--webin-ink); font-size: 13px; font-weight: 400; border-color: #f0edf3; }
.webin-work-view .x-grid-item-alt { background: #fff; }
.webin-work-view .x-grid-cell-inner { padding-top: 14px; padding-bottom: 14px; font-variant-numeric: tabular-nums; }
.webin-work-view .x-grid-item-over { background: #fcfbfd; }
.webin-work-view .x-grid-item-selected { background: var(--webin-soft); }
.webin-work-view .x-column-header { background: #faf9fc; color: var(--webin-muted); font-size: 11px; font-weight: 600; border-color: var(--webin-border); }
.webin-work-view .x-column-header-inner { padding-top: 12px; padding-bottom: 12px; }
.webin-work-view .x-grid-header-ct { background: #faf9fc; border-color: var(--webin-border); }
.webin-work-view .x-grid-row-summary .x-grid-cell { background: #faf9fc; color: var(--webin-ink); border-top: 1px solid var(--webin-border); font-weight: 600; }
.webin-work-view .x-grid-row-summary .x-grid-cell-inner { padding-top: 11px; padding-bottom: 11px; }
.webin-work-view .x-toolbar-text { color: var(--webin-muted); font-size: 12px; }
.webin-work-view .x-btn-default-toolbar-small, .webin-work-view .x-btn-default-small, .x-window .x-btn-default-small { border: 1px solid #d6d1dd; border-radius: 6px; background: #fff; }
.webin-work-view .x-btn-inner, .x-window .x-btn-inner { color: var(--webin-ink); font-weight: 600; }
.webin-work-view .x-btn-icon-el, .x-window .x-btn-icon-el { color: var(--webin-muted); }
.webin-work-view .x-btn-over, .x-window .x-btn-over { background: #f4f1f7; }
body .webin-primary.x-btn, body .webin-login-card .webin-login-submit.x-btn-default-medium { background: var(--webin-purple) !important; border-color: var(--webin-purple) !important; background-image: none !important; border-radius: 6px; }
body .webin-primary.x-btn-over, body .webin-primary.x-btn-pressed { background: var(--webin-deep) !important; border-color: var(--webin-deep) !important; }
body .webin-primary .x-btn-inner, body .webin-primary .x-btn-icon-el { color: #fff !important; }
body .webin-accent-red.x-btn { background: var(--webin-red); border-color: var(--webin-red); border-radius: 6px; }
body .webin-accent-red.x-btn-over { background: #a62b3e; border-color: #a62b3e; }
.webin-required-indicator { color: var(--webin-red); }
.x-form-item-label-default, .x-form-item-label-text, .x-form-cb-label { color: var(--webin-ink); font-weight: 400; }
.x-form-text-default { color: var(--webin-ink); font-weight: 400; background: #fff; }
.x-form-trigger-wrap-default { border-color: #d6d1dd; border-radius: 5px; }
.x-form-trigger-wrap-focus { border-color: var(--webin-accent); box-shadow: 0 0 0 2px #603b7b1a; }
.x-form-trigger-wrap-invalid { border-color: var(--webin-red); }
.x-form-empty-field-default { color: #797281; }
.x-form-trigger-default { color: var(--webin-muted); }
.x-window-default { background: #fff; border-color: var(--webin-border); border-radius: 10px; box-shadow: 0 22px 65px #25172c30; padding: 0; }
.x-window-header-default { background: #fff; border-color: var(--webin-border); padding: 20px 22px; }
.x-window-header-title-default { color: var(--webin-ink); font-size: 19px; font-weight: 600; }
.x-window-header-default .x-tool-img { color: var(--webin-muted); }
.x-window-body-default { border-color: var(--webin-border); }
.x-window .x-toolbar-footer { background: #faf9fc; border-top: 1px solid var(--webin-border); padding: 13px 20px; }
.x-mask { background: #201529; opacity: .30; }
.webin-finance-summary { margin: 12px 0 18px; background: #fff; border: 1px solid var(--webin-border); border-radius: 8px; color: var(--webin-muted); padding: 17px 20px; }
.webin-finance-summary strong { color: var(--webin-ink); font-weight: 600; }
.webin-cash-summary > div, .webin-summary > div { background: #fff; border-color: var(--webin-border); border-radius: 8px; box-shadow: none; }
.webin-cash-summary span, .webin-summary span { color: var(--webin-muted); }
.webin-cash-summary strong, .webin-summary strong { color: var(--webin-ink); font-variant-numeric: tabular-nums; font-weight: 600; }
.webin-cash-tabs > .x-tab-bar, .webin-cash-tabs > .x-panel-bodyWrap > .x-tab-bar, .webin-cash-tabs .x-tab-default-top { background: #f0edf3; }
.webin-cash-tabs .x-tab-active.x-tab-default-top { background: #fff; }
.webin-cash-tabs .x-tab-default-top .x-tab-inner { color: var(--webin-purple); }
.webin-empty-state { background: #fff; border-color: var(--webin-border); }
.webin-empty-state h2 { color: var(--webin-ink); }
.webin-empty-state p { color: var(--webin-muted); }
.webin-section-title { color: var(--webin-ink); }
.webin-link, .webin-login-footer a { color: var(--webin-purple); }
.webin-card { border-color: var(--webin-border) !important; box-shadow: 0 4px 20px #30213e06; }
.webin-card .x-form-item-label-text, .webin-card .x-grid-item { color: var(--webin-ink); }
.webin-login-page, .webin-login-page .webin-content { background: var(--webin-surface); background-image: none; }
.webin-login-card { border: 1px solid var(--webin-border) !important; border-top: 3px solid var(--webin-purple) !important; border-radius: 10px; box-shadow: 0 12px 45px #30213e0c; }
.webin-login-brand { padding-top: 28px; }
.webin-login-brand img { height: auto; }
.webin-login-brand h1 { color: var(--webin-ink); font-weight: 700; letter-spacing: -.6px; }
.webin-login-brand p { color: var(--webin-muted); }
.webin-login-card .x-form-item-label-text { color: var(--webin-ink); font-weight: 400; }
.webin-login-field .x-form-text-default { color: var(--webin-ink); font-weight: 400; }
.webin-login-field .x-form-trigger-wrap-default { border-color: #d6d1dd; }
.webin-login-footer { background: #faf9fc; color: var(--webin-muted); border-color: var(--webin-border); }
.webin-register-help { color: var(--webin-muted); }
.webin-login-intro { background: #f1edf5; position: relative; overflow: hidden; display: flex; align-items: center; }
.webin-login-intro::after { content: ''; position: absolute; width: 420px; height: 420px; border: 1px solid #603b7b19; transform: rotate(45deg); right: -210px; bottom: -140px; pointer-events: none; }
.webin-login-intro-inner { padding: 55px clamp(35px,5vw,80px); }
.webin-login-intro .webin-brand-asset { display: block; margin-bottom: 40px; }
.webin-login-intro h1 { color: var(--webin-deep); font-size: clamp(32px,3vw,43px); font-weight: 600; letter-spacing: -1.5px; line-height: 1.25; margin: 0 0 22px; }
.webin-login-intro p { font-size: 15px; color: var(--webin-muted); line-height: 1.9; max-width: 400px; }
.webin-login-intro span { display: block; margin-top: 65px; font-size: 10px; letter-spacing: 1.5px; color: var(--webin-purple); }
.webin-login-split, .webin-login-split .webin-content { background: #fff; }
.webin-login-split .webin-login-card { border: 0 !important; box-shadow: none; background: #fff; }
.webin-login-split .webin-login-brand { text-align: left; padding: 15px 32px 28px; }
.webin-login-split .webin-login-brand h1 { font-size: 28px; }
.webin-login-split .webin-login-brand .webin-brand-asset { display: none; }
.webin-login-split .webin-login-footer { background: #fff; border: 0; padding-top: 0; }
.webin-login-split .webin-link { text-decoration: none; font-weight: 600; }
.webin-password-trigger { color: var(--webin-muted); }
.webin-organization-menu { background: #fff; border-color: var(--webin-border); border-radius: 9px; box-shadow: 0 16px 50px #30213e20; }
.webin-organization-menu .x-menu-body, .webin-organization-list .x-grid-view { background: #fff; }
.webin-organization-menu::before { background: #fff; border-color: var(--webin-border); }
.webin-organization-menu-title { color: var(--webin-ink); font-size: 17px; }
.webin-organization-menu-hint, .webin-organization-count { color: var(--webin-muted); }
.webin-organization-option { color: var(--webin-ink); border-color: var(--webin-border); border-radius: 6px; }
.webin-organization-list .x-grid-item-selected .webin-organization-option { background: var(--webin-soft); color: var(--webin-purple); border-color: #cdbbdc; }
.webin-organization-current { background: #e9dff0; color: var(--webin-deep); }
.x-btn-focus, .x-tab-focus { outline: 2px solid #b69bc9; outline-offset: -2px; }
@media (max-width: 899px) { .webin-login-split .webin-login-brand .webin-brand-asset { display: block; margin-bottom: 28px; } .webin-login-split .webin-login-brand { text-align: center; } .webin-login-split .webin-login-brand h1 { font-size: 25px; } }
@media (max-width: 640px) { .webin-desktop-header { padding-left: 12px; padding-right: 12px; } .webin-page-heading h1 { font-size: 24px; } }
.webin-finance-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; background: transparent; border: 0; padding: 0; }
.webin-finance-summary > div { background: #fff; border: 1px solid var(--webin-border); padding: 16px 19px; border-radius: 8px; }
.webin-finance-summary > div > span { display: block; font-size: 12px; color: var(--webin-muted); margin-bottom: 9px; }
.webin-finance-summary > div > strong { display: block; font-size: 22px; font-variant-numeric: tabular-nums; }
@media (max-width: 640px) { .webin-finance-summary { gap: 8px; } .webin-finance-summary > div { padding: 12px 10px; } .webin-finance-summary > div > strong { font-size: 17px; } }
.webin-badge { display: inline-block; padding: 4px 8px; border-radius: 5px; font-size: 11px; font-weight: 600; line-height: 18px; }
.webin-badge-neutral { color: var(--webin-purple); background: var(--webin-soft); }
.webin-badge-positive { color: #226343; background: #eaf4ee; }
.webin-badge-negative { color: #a62b3e; background: #fcecef; }
.webin-badge-pending { color: #7b5b16; background: #f8f1df; }

/* Shared outline icons for navigation. Module headings always use a folder. */
.webin-nav-icon { display: inline-block; width: 18px; height: 20px; color: var(--webin-muted); background-color: currentColor !important; background-image: none !important; -webkit-mask-size: 18px 18px; mask-size: 18px 18px; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; }
.webin-nav-icon::before { content: none !important; }
.webin-icon-grid { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%203h7v7H3zM14%203h7v7h-7zM3%2014h7v7H3zM14%2014h7v7h-7z%22%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%203h7v7H3zM14%203h7v7h-7zM3%2014h7v7H3zM14%2014h7v7h-7z%22%2F%3E%3C%2Fsvg%3E"); }
.webin-icon-folder { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%205h6l2%203h10v12H3z%22%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%205h6l2%203h10v12H3z%22%2F%3E%3C%2Fsvg%3E"); }
.webin-icon-file { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%202H4v20h16V8zM14%202v6h6M8%2013h8M8%2017h5%22%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%202H4v20h16V8zM14%202v6h6M8%2013h8M8%2017h5%22%2F%3E%3C%2Fsvg%3E"); }
.webin-icon-wallet { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%206h17v14H3zM3%206l14-3v3M16%2011h5v5h-5z%22%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%206h17v14H3zM3%206l14-3v3M16%2011h5v5h-5z%22%2F%3E%3C%2Fsvg%3E"); }
.webin-icon-chart { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%203v18h18M7%2015l4-5%204%203%205-7%22%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%203v18h18M7%2015l4-5%204%203%205-7%22%2F%3E%3C%2Fsvg%3E"); }
.webin-icon-users { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M16%2021v-2a4%204%200%200%200-4-4H6a4%204%200%200%200-4%204v2M9%2011a4%204%200%201%200%200-8%204%204%200%200%200%200%208M17%204a4%204%200%200%201%200%208M22%2021v-2a4%204%200%200%200-3-4%22%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M16%2021v-2a4%204%200%200%200-4-4H6a4%204%200%200%200-4%204v2M9%2011a4%204%200%201%200%200-8%204%204%200%200%200%200%208M17%204a4%204%200%200%201%200%208M22%2021v-2a4%204%200%200%200-3-4%22%2F%3E%3C%2Fsvg%3E"); }
.webin-icon-tag { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013l-7%207L3%2010V3h7zM7%207h.01%22%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013l-7%207L3%2010V3h7zM7%207h.01%22%2F%3E%3C%2Fsvg%3E"); }
.webin-icon-arrows { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%207h16m-4-4%204%204-4%204M20%2017H4m4-4-4%204%204%204%22%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%207h16m-4-4%204%204-4%204M20%2017H4m4-4-4%204%204%204%22%2F%3E%3C%2Fsvg%3E"); }
.webin-icon-shield { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%202l9%204v6c0%205-9%2010-9%2010S3%2017%203%2012V6z%22%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%202l9%204v6c0%205-9%2010-9%2010S3%2017%203%2012V6z%22%2F%3E%3C%2Fsvg%3E"); }
.webin-icon-lock { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2010h14v12H5zM8%2010V6a4%204%200%200%201%208%200v4%22%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2010h14v12H5zM8%2010V6a4%204%200%200%201%208%200v4%22%2F%3E%3C%2Fsvg%3E"); }
.webin-icon-mail { -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%204h18v16H3zM3%205l9%208%209-8%22%2F%3E%3C%2Fsvg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%204h18v16H3zM3%205l9%208%209-8%22%2F%3E%3C%2Fsvg%3E"); }

.webin-dashboard-button.x-btn { background: transparent; border: 0; border-radius: 6px; padding: 10px 12px; }
.webin-dashboard-button .x-btn-inner { color: var(--webin-ink); font-size: 13px; font-weight: 400; text-align: left; }
.webin-dashboard-button .x-btn-wrap { text-align: left; }
.webin-dashboard-button.x-btn-over, .webin-dashboard-active.x-btn { background: var(--webin-soft); }
.webin-dashboard-active.x-btn { box-shadow: inset 3px 0 var(--webin-purple); }
.webin-dashboard-active .x-btn-inner, .webin-dashboard-active .webin-nav-icon { color: var(--webin-purple); }
.webin-desktop-header .webin-profile-button.x-btn { padding: 5px 8px; border-radius: 6px; }
.webin-desktop-header .webin-profile-button .x-btn-inner { overflow: visible; }
.webin-profile { display: inline-flex; align-items: center; gap: 11px; text-align: left; max-width: 225px; vertical-align: middle; }
.webin-profile-avatar { position: relative; flex-shrink: 0; width: 34px; height: 34px; border-radius: 50%; background: var(--webin-soft); color: var(--webin-deep); display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 700; overflow: hidden; }
.webin-profile-photo { position: absolute; inset: 0; width: 34px; height: 34px; object-fit: cover; visibility: hidden; }
.webin-profile-photo-ready { visibility: visible; }
.webin-profile-description { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.webin-profile-name { display: block; font-weight: 400; color: var(--webin-ink); font-size: 12px; line-height: 15px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.webin-profile-role { display: block; color: var(--webin-muted); font-weight: 400; font-size: 10px; line-height: 14px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.webin-dashboard-button .x-btn-button { justify-content: flex-start; }
/* Shared component states: neutral surfaces and purple focus replace Triton's blue states. */
:root { --webin-panel: #fff; --webin-hover: #faf9fc; }
.x-grid-view, .x-grid-item { background-color: var(--webin-panel); color: var(--webin-ink); }
.x-grid-item-alt { background-color: var(--webin-panel); }
.x-grid-item-over { background-color: var(--webin-hover); }
.x-grid-item-selected { background-color: var(--webin-soft); }
.x-toolbar-default { background: var(--webin-panel); border-color: var(--webin-border); }
.x-toolbar-text-default { color: var(--webin-muted); }
.x-panel-header-default { background: var(--webin-soft); border-color: var(--webin-border); }
.x-panel-header-title-default { color: var(--webin-ink); }
.x-panel-body-default { color: var(--webin-ink); }
.x-tree-icon, .x-tree-elbow-img, .x-tree-checkbox { color: var(--webin-purple); }
.x-tree-icon.webin-nav-icon { height: 32px; line-height: 32px; width: 18px; vertical-align: top; margin-top: -7px; margin-bottom: -6px; }
.webin-navigation .x-tree-elbow-img { color: var(--webin-muted); }
.x-keyboard-mode .x-grid-item-focused { color: var(--webin-ink); }
.x-keyboard-mode .x-grid-item-focused .x-grid-cell-inner:before { border-color: var(--webin-purple); border-radius: 3px; }
.x-keyboard-mode .x-btn.x-btn-focus, .x-btn.x-btn-pressed, .x-btn.x-btn-menu-active { background-color: var(--webin-soft); border-color: var(--webin-accent); background-image: none; box-shadow: none; }
.x-keyboard-mode .x-btn.x-btn-focus { outline: 2px solid var(--webin-accent); outline-offset: -2px; }
.x-keyboard-mode .webin-dashboard-button.x-btn-focus, .webin-dashboard-button.x-btn-pressed, .webin-dashboard-button.x-btn-menu-active { background: var(--webin-soft); border-color: transparent; }
.webin-dashboard-button.x-btn-focus .x-btn-inner { color: var(--webin-purple); }
.x-splitter-collapsed .x-collapse-el, .x-splitter .x-collapse-el { background-color: var(--webin-soft); color: var(--webin-purple); }
.x-form-checkbox-default, .x-form-radio-default, .x-keyboard-mode .x-form-checkbox-focus { color: var(--webin-purple); }
.x-grid-checkcolumn-checked:after, .x-column-header-checkbox .x-column-header-checkbox-checked:after { color: var(--webin-purple); }
.x-grid-item-selected .x-grid-row-checker:after { color: var(--webin-purple); }
.x-datepicker-header { background: #603b7b; }
.x-datepicker-today { border-color: var(--webin-purple); }
.x-datepicker-selected .x-datepicker-date { background: #603b7b; color: #fff; }
.x-boundlist-item-over, .x-boundlist-selected { background: var(--webin-soft); border-color: var(--webin-accent); }
.x-boundlist-item { color: var(--webin-ink); }
.x-menu-default { background: var(--webin-panel); border: 1px solid var(--webin-border); border-radius: 9px; box-shadow: 0 12px 35px #20152920; overflow: hidden; }
.x-menu-body-default { background: var(--webin-panel); padding: 5px; }
.x-menu-item-default { border-radius: 5px; }
.x-menu-item-default .x-menu-item-text-default { color: var(--webin-ink); font-weight: 400; font-family: 'Webin Open Sans',sans-serif; }
.x-menu-item-default.x-menu-item-focus, .x-menu-item-default.x-menu-item-active { background: var(--webin-soft); }
.x-menu-item-default.x-menu-item-focus .x-menu-item-text-default, .x-menu-item-default.x-menu-item-active .x-menu-item-text-default { color: var(--webin-purple); }
.x-menu-item-icon-default, .x-menu-item-arrow-default, .x-menu-item-checkbox-default,
.x-menu-item-focus .x-menu-item-icon-default, .x-menu-item-active .x-menu-item-icon-default,
.x-menu-item-focus .x-menu-item-arrow-default, .x-menu-item-active .x-menu-item-arrow-default { color: var(--webin-purple); }
.x-menu-item-separator { border-color: var(--webin-border); }
.webin-account-menu .x-menu-item-text-default { line-height: 40px; font-size: 13px; }
.webin-account-menu .x-menu-item-icon-default { top: 9px; left: 8px; }
.webin-account-menu .x-menu-item-arrow-default { top: 13px; right: 5px; }
.webin-account-menu .x-menu-item-checkbox-default { top: 9px; }
.webin-account-menu .webin-signout-item .x-menu-item-text-default, .webin-account-menu .webin-signout-item .x-menu-item-icon-default { color: #a62b3e; }
.webin-permission-tree { border-color: var(--webin-border) !important; border-radius: 7px; overflow: hidden; }
.webin-permission-tree .x-grid-view, .webin-permission-tree .x-grid-item { background-color: var(--webin-panel); color: var(--webin-ink); }
.webin-permission-tree .x-grid-item-over { background: var(--webin-hover); }
.webin-permission-tree .x-grid-item-selected { background: var(--webin-soft); }
.webin-permission-tree .x-tree-node-text { color: var(--webin-ink); font-weight: 400; }
.webin-permission-tree .x-grid-cell-inner { padding-top: 9px; padding-bottom: 9px; }
.webin-permission-tree .x-toolbar-default { background: var(--webin-panel); border-color: var(--webin-border); padding: 9px; }
.webin-permission-tree .x-btn-default-toolbar-small { background: var(--webin-panel); border-color: var(--webin-border); border-radius: 5px; }
.webin-permission-tree .x-btn-icon-el { color: var(--webin-muted); }

.webin-icon-appearance { -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203a9%209%200%201%200%200%2018%209%209%200%200%200%200-18zM12%203v18%22%2F%3E%3C%2Fsvg%3E"); mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203a9%209%200%201%200%200%2018%209%209%200%200%200%200-18zM12%203v18%22%2F%3E%3C%2Fsvg%3E"); }
.webin-icon-exit { -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%203H3v18h6M13%207l5%205-5%205M8%2012h13%22%2F%3E%3C%2Fsvg%3E"); mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.65%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%203H3v18h6M13%207l5%205-5%205M8%2012h13%22%2F%3E%3C%2Fsvg%3E"); }
.x-panel-default, .x-panel-body-default, .x-panel-body-default-framed { border-color: var(--webin-border); }
.x-tree-arrows .x-tree-expander, .x-tree-arrows .x-grid-tree-node-expanded .x-tree-expander { color: var(--webin-purple); }
.x-keyboard-mode .x-view-item-focused { outline-color: var(--webin-accent) !important; }
.x-keyboard-mode .x-grid-cell-inner-action-col :focus, .x-keyboard-mode .x-grid-checkcolumn-cell-inner :focus, .x-keyboard-mode .x-grid-row-expander:focus { outline-color: var(--webin-accent); }
.x-keyboard-mode .x-btn.x-btn-focus.x-btn-over, .x-keyboard-mode .x-btn.x-btn-focus.x-btn-pressed, .x-keyboard-mode .x-btn.x-btn-focus.x-btn-menu-active { box-shadow: none; }
.x-keyboard-mode .x-btn-default-toolbar-small.x-arrow-focus .x-btn-arrow-el { border-color: var(--webin-accent); }
.x-grid-scrollbar-clipper > .x-grid-view, .x-grid-scrollbar-clipper > .x-tree-view { background-color: var(--webin-panel); }
/* ExtJS adds edge-specific border classes to docked toolbars and grid bodies. */
[class*="x-panel-default-outer-border-"] { border-color: var(--webin-border) !important; }
/* Cover medium/large actions and widgets outside the main workspace toolbars too. */
.x-btn-default-small, .x-btn-default-medium, .x-btn-default-large { background: var(--webin-panel); border-color: var(--webin-border); border-radius: 6px; }
.x-btn-inner-default-small, .x-btn-inner-default-medium, .x-btn-inner-default-large,
.x-btn-icon-el-default-small, .x-btn-icon-el-default-medium, .x-btn-icon-el-default-large { color: var(--webin-ink); font-weight: 600; }
.x-btn.x-btn-over { background-color: var(--webin-soft); border-color: var(--webin-accent); }
.x-btn.webin-dashboard-button { border: 0; }
.x-form-trigger-wrap.x-form-trigger-wrap-focus { border-color: var(--webin-accent); box-shadow: 0 0 0 2px #9f76ba20; }
.x-tip-default { background: var(--webin-panel); border-color: var(--webin-border); border-radius: 6px; box-shadow: 0 5px 18px #20152920; }
.x-tip-body-default, .x-tip-header-text-default { color: var(--webin-ink); font-weight: 400; }
.x-grid-with-row-lines .x-grid-item.x-grid-item-selected,
.x-grid-with-row-lines .x-grid-item-selected + .x-grid-item,
.x-grid-with-row-lines .x-grid-item.x-grid-item-over,
.x-grid-with-row-lines .x-grid-item-over + .x-grid-item,
.x-grid-with-row-lines .x-grid-item:first-child { border-color: var(--webin-border); }
/* Summaries, empty grids and numeric controls need explicit surfaces in both themes. */
.x-grid-row-summary .x-grid-cell, .x-grid-row-summary .x-grid-rowwrap, .x-grid-row-summary .x-grid-cell-rowbody { background-color: var(--webin-hover) !important; color: var(--webin-ink); border-color: var(--webin-border); font-weight: 600; }
.x-docked-summary, .x-docked-summary .x-grid-item { background: var(--webin-hover); border-color: var(--webin-border); }
.x-grid-empty { background-color: var(--webin-panel); color: var(--webin-muted); font: 400 13px/1.7 'Webin Open Sans',sans-serif; }
.x-form-spinner-default { background-color: var(--webin-panel); color: var(--webin-muted); }
.x-form-spinner-default.x-form-spinner-over { background-color: var(--webin-soft); color: var(--webin-purple); }
.x-box-scroller-tab-bar-default { background-color: var(--webin-soft); color: var(--webin-purple); border-radius: 4px; }
.x-grid-with-col-lines .x-grid-cell { border-right-color: var(--webin-border); }
:root { --webin-incoming-bg: #f0f8f4; --webin-incoming: #21714f; --webin-outgoing-bg: #fff3f4; --webin-outgoing: #a62b3e; --webin-balance-bg: #f7f2fb; --webin-balance: #603b7b; --webin-projected-bg: #f3f1fb; --webin-projected: #64518c; }
.webin-cash-summary > .webin-metric-card, .webin-finance-summary > .webin-metric-card { border-left-width: 3px; }
.webin-cash-summary > .webin-metric-incoming, .webin-finance-summary > .webin-metric-incoming { background: var(--webin-incoming-bg); border-left-color: var(--webin-incoming); }
.webin-cash-summary > .webin-metric-incoming strong, .webin-finance-summary > .webin-metric-incoming strong { color: var(--webin-incoming); }
.webin-cash-summary > .webin-metric-outgoing, .webin-cash-summary > .webin-metric-negative, .webin-finance-summary > .webin-metric-outgoing { background: var(--webin-outgoing-bg); border-left-color: var(--webin-outgoing); }
.webin-cash-summary > .webin-metric-outgoing strong, .webin-cash-summary > .webin-metric-negative strong, .webin-finance-summary > .webin-metric-outgoing strong { color: var(--webin-outgoing); }
.webin-cash-summary > .webin-metric-balance { background: var(--webin-balance-bg); border-left-color: var(--webin-balance); }
.webin-cash-summary > .webin-metric-balance strong { color: var(--webin-balance); }
.webin-cash-summary > .webin-metric-projected { background: var(--webin-projected-bg); border-left-color: var(--webin-projected); }
.webin-cash-summary > .webin-metric-projected strong { color: var(--webin-projected); }
.x-docked-summary, .x-docked-summary > :first-child { background-color: var(--webin-hover) !important; }
.x-grid-inner-locked { border-right-color: var(--webin-border); }
.x-grid-scrollbar-clipper-locked { border-right-color: var(--webin-border); }
.webin-dashboard-metrics { padding: 18px 0 8px; }
.webin-dashboard-metrics > div { min-width: 210px; }
.webin-dashboard-metrics p { margin: 9px 0 0; color: var(--webin-muted); font-size: 11px; line-height: 1.6; }
.webin-dashboard-due { margin-top: 12px; }
.webin-dashboard-due-grid .x-panel-header-title-default { font-weight: 600; font-size: 15px; }
/* Compact page chrome: preserve instructions while reducing repeated spacing. */
.webin-work-view .webin-page-heading { margin-bottom: 14px; }
.webin-work-view .webin-page-heading h1 { font-size: 24px; margin-bottom: 4px; }
.webin-work-view .webin-page-heading p { font-size: 12px; line-height: 1.5; }
.webin-work-view .x-toolbar-default { padding: 8px 10px; }
.webin-work-view .x-grid-cell-inner { padding-top: 10px; padding-bottom: 10px; }
.webin-dashboard-header .webin-page-heading { margin: 0; }
.webin-work-view .webin-dashboard-tools.x-toolbar { background: transparent; padding: 0; }
.webin-dashboard-tools .x-btn { border-color: transparent; background: transparent; }
.webin-dashboard-tools .x-toolbar-text { margin-right: 10px; color: var(--webin-muted); font-size: 11px; }
.webin-dashboard-metrics { padding: 8px 0 12px; gap: 12px; }
.webin-dashboard-metrics > div { padding: 13px 15px; }
.webin-dashboard-due-tabs { margin-top: 6px; }
.webin-dashboard-due-tabs > .x-tab-bar, .webin-dashboard-due-tabs > .x-panel-bodyWrap > .x-tab-bar { background: transparent; padding: 0; }
.webin-dashboard-due-tabs .webin-due-tab-incoming .x-tab-inner, .webin-dashboard-due-tabs .webin-due-tab-incoming .x-tab-icon-el { color: var(--webin-incoming) !important; }
.webin-dashboard-due-tabs .webin-due-tab-outgoing .x-tab-inner, .webin-dashboard-due-tabs .webin-due-tab-outgoing .x-tab-icon-el { color: var(--webin-outgoing) !important; }
.webin-dashboard-due-tabs .webin-due-tab-incoming.x-tab-active { background: var(--webin-incoming-bg) !important; box-shadow: inset 0 2px var(--webin-incoming); }
.webin-dashboard-due-tabs .webin-due-tab-outgoing.x-tab-active { background: var(--webin-outgoing-bg) !important; box-shadow: inset 0 2px var(--webin-outgoing); }
.webin-desktop-header .webin-privacy-toggle.x-btn { margin-right: 8px; padding: 7px; border-radius: 6px; }
.webin-privacy-toggle .x-btn-icon-el { color: var(--webin-muted); }
.webin-privacy-toggle.x-btn-pressed .x-btn-icon-el { color: var(--webin-purple); }
/* Column hover, sorting and menu triggers share the Webin palette. */
.x-column-header-over, .x-column-header-open, .x-column-header-sort-ASC, .x-column-header-sort-DESC { background-color: var(--webin-soft); color: var(--webin-ink); }
.webin-work-view .x-column-header-over, .webin-work-view .x-column-header-open { background: var(--webin-soft); color: var(--webin-ink); }
.x-column-header-trigger { background-color: var(--webin-soft); color: var(--webin-purple); border-left-color: var(--webin-border); }
.x-column-header-trigger-over, .x-column-header-trigger-pressed { background-color: var(--webin-soft); }
.x-column-header-sort-ASC .x-column-header-text:after, .x-column-header-sort-DESC .x-column-header-text:after { color: var(--webin-purple); }
.webin-plan-history .x-toolbar-default { padding: 8px; }

/* Dialogs inherit the same component palette, including nested grids and tabs. */
.x-window-body-default { background: var(--webin-panel); color: var(--webin-ink); }
.x-window .x-column-header, .x-window .x-grid-header-ct { background: var(--webin-hover); color: var(--webin-muted); border-color: var(--webin-border); }
.x-window .x-grid-item { border-color: var(--webin-border); }
.x-window .x-tab-bar-default { background: var(--webin-soft); border-color: var(--webin-border); }
.x-window .x-tab-default-top { background: transparent; border-radius: 6px 6px 0 0; }
.x-window .x-tab-default-top .x-tab-inner { color: var(--webin-muted); }
.x-window .x-tab-active.x-tab-default-top { background: var(--webin-panel); box-shadow: inset 0 2px var(--webin-purple); }
.x-window .x-tab-active.x-tab-default-top .x-tab-inner { color: var(--webin-purple); }
.x-window .x-btn-default-toolbar-small { background: var(--webin-panel); border: 1px solid var(--webin-border); border-radius: 6px; }
.x-window .x-btn-default-toolbar-small.x-btn-over { background: var(--webin-soft); }
.x-window .x-btn-disabled { opacity: .6; }
.x-window .x-btn-disabled .x-btn-inner, .x-window .x-btn-disabled .x-btn-icon-el { color: var(--webin-muted); }
.x-window .x-form-item.x-item-disabled { opacity: 1; }
.x-window .x-item-disabled .x-form-item-label, .x-window .x-item-disabled .x-form-field { color: var(--webin-muted); }
.x-window .x-item-disabled .x-form-trigger-wrap { border-color: var(--webin-border); }
.x-window .x-column-header-over, .x-window .x-column-header-open { background: var(--webin-soft); color: var(--webin-ink); }
.x-window .x-message-box-icon { font-family: FontAwesome; color: var(--webin-purple); }
.x-window .x-message-box-warning { color: var(--webin-outgoing); }
.x-window .x-message-box-error { color: var(--webin-red); }

/* Field groups and their controls share the active palette in forms and dialogs. */
.x-fieldset { background: var(--webin-panel); border-color: var(--webin-border); border-top-color: var(--webin-border) !important; }
.x-fieldset-header-default > .x-fieldset-header-text { color: var(--webin-muted); font-family: 'Webin Open Sans', sans-serif; }
.x-fieldset-body { color: var(--webin-ink); }
.x-form-checkbox-default { font-family: ExtJS; }
.x-form-radio-default { font-family: FontAwesome; }
.x-window .x-item-disabled .x-form-cb-label, .x-window .x-item-disabled .x-form-item-label-text { color: var(--webin-muted); }
.webin-account-section > .x-panel-body, .webin-account-section > .x-panel-bodyWrap > .x-panel-body { background: var(--webin-panel); border: 1px solid var(--webin-border); border-radius: 9px; }
.webin-account-section h2 { margin: 0 0 10px; font-size: 16px; font-weight: 600; color: var(--webin-ink); }
.webin-account-profile p { margin: 0 0 10px; overflow-wrap: anywhere; color: var(--webin-muted); }
.webin-account-profile .webin-profile { margin-bottom: 15px; }
.webin-account-profile .webin-profile-avatar, .webin-account-profile .webin-profile-photo { width: 56px; height: 56px; }
.webin-account-profile .webin-profile-avatar { font-size: 18px; }
.webin-account-status { font-size: 11px; color: var(--webin-purple); }
.webin-account-org-name { font-weight: 600; }
.webin-account-section .x-grid-cell-inner { padding-top: 14px; padding-bottom: 14px; }

/* Approved Forma mark: vector outlines, transparent surfaces and theme-specific colors. */
.webin-brand-asset { display: inline-block; position: relative; max-width: 100%; vertical-align: middle; line-height: 0; }
.webin-brand-asset img { width: 100%; height: 100%; object-fit: contain; margin: 0; background: transparent; padding: 0; border-radius: 0; mix-blend-mode: normal; }
.webin-brand-asset .webin-brand-light { display: block; }
.webin-brand-asset .webin-brand-dark { display: none; }
.webin-desktop-header .webin-desktop-brand .webin-brand-asset { display: inline-block; line-height: 0; }
.webin-login-brand .webin-brand-asset { display: block; margin: 0 auto 17px; }
.webin-register-card .webin-login-brand .webin-brand-asset { margin-bottom: 11px; }
[data-webin-theme=dark] .webin-brand-asset .webin-brand-light { display: none; }
[data-webin-theme=dark] .webin-brand-asset .webin-brand-dark { display: block; }
/* Compensa a margem interna do SVG para alinhar o símbolo ao texto. */
.webin-login-intro .webin-brand-asset { margin-top: 0; transform: translateX(-3.51%); }
