:root{--df-grid-border-color:var(--bs-border-color);--df-grid-row-stripe-bg:#80808005;--df-sub-title-font-size:1.25rem;--df-form-font-size:.875rem;--df-toolbar-font-size:.875rem;--df-compact-font-size:.8125rem;--df-info-font-size:.75rem;--df-dropdown-icon-font-size:.625rem;--df-badge-font-size:.6875rem;--df-tiny-font-size:.625rem;--df-grid-filter-row-bg:#d4d4d422;--df-max-set-view-height:1024px;--df-list-indent:2rem;--df-list-row-height:2rem;--df-report-chart-height-sm:clamp(220px, 30vh, 300px);--df-report-chart-height-m:clamp(280px, 38vh, 420px);--df-report-chart-height-l:clamp(340px, 46vh, 540px);--df-report-chart-height-xl:clamp(420px, 56vh, 680px);--df-button-border-color:var(--bs-border-color);--df-shadow-color:#00000014}@keyframes btn-spinner{to{transform:rotate(360deg)}}button.loading{pointer-events:none;opacity:.75}button.loading:before{content:"";vertical-align:-.125em;border:2px solid;border-right-color:#0000;border-radius:50%;width:1em;height:1em;margin-right:.5em;animation:.6s linear infinite btn-spinner;display:inline-block}.df-control{width:100%;font-size:var(--df-form-font-size);color:var(--bs-body-color);appearance:none;background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius-sm);background-clip:padding-box;border:none;padding:.25rem .5rem;font-weight:400;line-height:1.5;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;display:block}.df-control[type=number]{padding-right:0}.df-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:var(--bs-primary);box-shadow:0 0 0 .2rem rgba(var(--bs-primary-rgb), .25);outline:0}.df-control::placeholder{color:var(--bs-secondary-color);opacity:1}.is-empty-date::-webkit-datetime-edit{color:var(--bs-tertiary-color,#adb5bd)}.is-empty-date::-webkit-datetime-edit-text{color:var(--bs-tertiary-color,#adb5bd)}.is-empty-date::-webkit-datetime-edit-year-field{color:var(--bs-tertiary-color,#adb5bd)}.is-empty-date::-webkit-datetime-edit-month-field{color:var(--bs-tertiary-color,#adb5bd)}.is-empty-date::-webkit-datetime-edit-day-field{color:var(--bs-tertiary-color,#adb5bd)}.is-empty-date::-webkit-datetime-edit-hour-field{color:var(--bs-tertiary-color,#adb5bd)}.is-empty-date::-webkit-datetime-edit-minute-field{color:var(--bs-tertiary-color,#adb5bd)}.is-empty-date::-webkit-datetime-edit-second-field{color:var(--bs-tertiary-color,#adb5bd)}.is-empty-date::-webkit-datetime-edit-ampm-field{color:var(--bs-tertiary-color,#adb5bd)}.df-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.df-select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:12px 9px;padding-right:1.75rem}.df-control-static{border:var(--bs-border-width) solid transparent;width:100%;padding:.25rem .5rem;line-height:1.5;display:block}.df-control-tags.df-control-static{padding:.125rem .5rem}.df-control-static>.code-field{height:100%}.df-field-shell{min-height:2rem;font-size:var(--df-form-font-size);border:1px solid var(--bs-border-color);background-color:var(--bs-tertiary-bg);border-radius:.25rem;align-items:center;padding:0;line-height:1.5;display:flex}.df-field-shell>*{border:none;flex:1;min-width:0}.df-field-shell-resizable{resize:horizontal;align-items:stretch;overflow:hidden}.df-field-shell-multiline{resize:both;align-items:stretch;min-height:3rem;max-height:80vh;overflow:auto}.df-field-shell-resizable .df-control-static,.df-field-shell-multiline .df-control-static{overflow:visible}.df-field-shell-multiline textarea{resize:none}.df-field-shell-multiline>.df-control-textarea,.df-field-shell-multiline>.df-control-richtext{flex-direction:column;width:100%;height:100%;display:flex}.df-field-shell-multiline>.df-control-textarea>textarea,.df-field-shell-multiline>.df-control-richtext>textarea{flex:1 1 0;min-height:0}.df-field-inline{align-items:center;min-height:2rem;display:flex}.df-field-inline>*{flex:none;min-width:0}.modal-body,.dropdown-menu{font-size:var(--df-form-font-size)}.dropdown-menu{border:1px solid var(--bs-border-color);box-shadow:0 8px 24px var(--df-shadow-color);border-radius:10px;flex-direction:column;gap:4px;padding:.35rem;display:flex}.dropdown-item{font-size:var(--df-form-font-size);color:var(--bs-body-color);border-radius:8px;align-items:center;gap:.5rem;padding:.4rem .6rem;display:flex}.dropdown-item:hover,.dropdown-item:focus{background-color:var(--bs-tertiary-bg);color:var(--bs-body-color)}.dropdown-item.active{color:var(--bs-body-color);background-color:#0000}.dropdown-item.active:hover,.dropdown-item.active:focus{background-color:var(--bs-tertiary-bg)}.dropdown-item:active{background-color:var(--bs-tertiary-bg);color:var(--bs-body-color)}.dropdown-divider{margin:.25rem 0}.df-topbar-btn{color:var(--bs-secondary-color);font-size:var(--df-compact-font-size);white-space:nowrap;background:0 0;border:none;border-radius:4px;align-items:center;gap:.35rem;padding:.25rem .5rem;display:inline-flex}.df-topbar-btn:hover,.df-topbar-btn:focus{background-color:var(--bs-tertiary-bg);color:var(--bs-body-color)}.df-topbar-group .df-topbar-btn{padding:.25rem .45rem}.df-topbar-btn.is-active,.df-topbar-btn:disabled{background-color:var(--bs-primary-bg-subtle);color:var(--bs-primary);cursor:default}.sidebar-section-action{width:1.5rem;height:1.5rem;color:var(--bs-secondary-color);cursor:pointer;font-size:var(--df-form-font-size);box-shadow:none;background:0 0;border:none;border-radius:4px;outline:none;justify-content:center;align-items:center;display:inline-flex}.sidebar-section-action:hover,.sidebar-section-action:focus-visible{background-color:var(--bs-tertiary-bg);color:var(--bs-body-color);box-shadow:none;outline:none}.sidebar-section-action-active,.sidebar-section-action-active:hover,.sidebar-section-action-active:focus-visible{background-color:var(--bs-primary-bg-subtle);color:var(--bs-primary)}.grid-striped .grid-row-even{background-color:var(--df-grid-row-stripe-bg)}.grid-striped .grid-row:hover{background-color:var(--bs-secondary-bg)}.grid-striped .grid-row-even.grid-row-selected,.grid-striped .grid-row-even.grid-row-current{background-color:var(--bs-primary-bg-subtle)}.card-body-striped>.row:nth-child(2n){background-color:var(--df-grid-row-stripe-bg)}.card-label-required:after{content:" *";color:var(--bs-danger);font-weight:600}:root{--df-card-field-width:450px;--df-card-field-lim-width:220px}.card-default-width{width:var(--df-card-field-width);max-width:100%}.card-lim-width{width:var(--df-card-field-lim-width);max-width:100%}.grid-col-lines .grid-cell,.grid-col-lines .grid-header-cell,.grid-col-lines .grid-filter-cell,.grid-col-lines .grid-agg-cell{border-right:1px solid var(--df-grid-border-color)}.dropdown-menu-panel .bi-arrows-expand{transform:rotate(90deg)}.vt-btn{color:var(--bs-secondary-color);font-size:var(--df-compact-font-size);cursor:pointer;white-space:nowrap;border:none;border:1px solid var(--df-button-border-color);background:0 0;border-radius:4px;align-items:center;gap:.25rem;padding:.25rem .5rem;display:flex;position:relative}.vt-btn>.bi{font-size:1rem}.vt-btn:hover:not(:disabled){background-color:var(--bs-tertiary-bg);color:var(--bs-body-color)}.vt-btn:disabled{opacity:.4;cursor:default}.vt-btn.vt-active{background-color:var(--bs-primary-bg-subtle);color:var(--bs-primary)}.vt-btn-accent{color:var(--bs-primary)}.vt-btn-accent:hover:not(:disabled){background-color:var(--bs-primary-bg-subtle)}.vt-btn-danger{color:var(--bs-danger)}.vt-btn-danger:hover:not(:disabled){background-color:var(--bs-danger-bg-subtle)}.vt-btn-danger:disabled{opacity:.4;cursor:default}.vt-label{font-weight:500}.vt-badge{min-width:1.1rem;height:1.1rem;font-size:var(--df-badge-font-size);background-color:var(--bs-primary);color:#fff;pointer-events:none;border-radius:99px;justify-content:center;align-items:center;padding:0 .25rem;font-weight:600;line-height:1;display:inline-flex;position:absolute;top:-.3rem;right:-.3rem}.vt-sep{background-color:var(--bs-border-color);width:1px;height:1.25rem;margin:0 .25rem}.df-fn-badge{font-size:var(--df-form-font-size);white-space:nowrap;background-color:var(--bs-primary-bg-subtle);color:var(--bs-primary);border-radius:.25rem;align-items:center;gap:.25rem;padding:.125rem .5rem;font-weight:500;display:inline-flex}.df-fn-trigger{min-width:8rem;height:28px;font-size:var(--df-form-font-size);color:var(--bs-body-color);background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);cursor:pointer;white-space:nowrap;align-items:center;padding:.15rem .5rem;display:inline-flex}.df-fn-trigger:hover{border-color:var(--bs-primary)}.df-fn-trigger-value{flex:1}.df-fn-trigger-actions{color:var(--bs-secondary-color);font-size:var(--df-info-font-size);align-items:center;gap:.25rem;margin-left:.5rem;display:flex}.df-fn-clear{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1rem;line-height:1;display:inline-flex}.df-fn-clear:hover{opacity:1}.tp-panel{padding:.5rem 0}.tp-empty{font-size:var(--df-compact-font-size);color:var(--bs-secondary-color);padding:.5rem .75rem}.tp-row{flex-wrap:wrap;align-items:center;gap:.375rem;padding:.25rem .75rem;display:flex}.tp-header{border-bottom:1px solid var(--bs-border-color);gap:.75rem;padding:0 .75rem .5rem;display:flex}.tp-footer{border-top:1px solid var(--bs-border-color);margin-top:.25rem;padding:.375rem .75rem}.tp-link{color:var(--bs-primary);font-size:var(--df-compact-font-size);cursor:pointer;background:0 0;border:none;padding:0}.tp-link:hover{text-decoration:underline}.form-check-input[type=checkbox]{vertical-align:baseline}:root{--sidebar-width:280px;--header-height:52px}body{min-height:100vh}.btn-outline-secondary{--bs-btn-color:#495057;--bs-btn-border-color:var(--df-button-border-color);--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#6c757d;--bs-btn-hover-border-color:var(--df-button-border-color);--bs-btn-focus-shadow-rgb:108, 117, 125;--bs-btn-active-color:#fff;--bs-btn-active-bg:#5c636a;--bs-btn-active-border-color:var(--df-button-border-color);--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:var(--df-button-border-color)}.btn-outline-secondary:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}[data-bs-theme=dark]{--bs-body-bg:#1a1a1a;--bs-tertiary-bg:#242424;--bs-secondary-bg:#2a2a2a;--bs-border-color:#333}[data-bs-theme=dark] .sidebar,[data-bs-theme=dark] .app-header{background-color:var(--bs-body-bg)}[data-bs-theme=dark] .workspace-trigger{background-color:var(--bs-secondary-bg)}[data-bs-theme=dark] .workspace-trigger:hover{background-color:var(--bs-border-color)}[data-bs-theme=dark] .workspace-menu{background-color:var(--bs-tertiary-bg);border-color:var(--bs-border-color)}.card-hover:hover{transition:box-shadow .15s ease-in-out;box-shadow:0 .5rem 1rem #00000026}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--bs-secondary-bg);border-radius:4px}::-webkit-scrollbar-thumb:hover{background-color:var(--bs-secondary)}[data-bs-theme=dark] ::-webkit-scrollbar-thumb{background-color:#444}[data-bs-theme=dark] ::-webkit-scrollbar-thumb:hover{background-color:#555}.df-md{line-height:1.6}.df-md h1,.df-md h2,.df-md h3{margin-top:1rem;margin-bottom:.5rem}.df-md h1:first-child,.df-md h2:first-child{margin-top:0}.df-md p{margin-bottom:.5rem}.df-md table{border-collapse:collapse;width:100%;margin-bottom:1rem}.df-md th,.df-md td{border:1px solid var(--bs-border-color);padding:.35rem .75rem}.df-md th{background-color:var(--bs-tertiary-bg);font-weight:600}.df-md code{background-color:var(--bs-tertiary-bg);border-radius:3px;padding:.15em .35em;font-size:.85em}.df-md pre{border-radius:var(--bs-border-radius);background-color:var(--bs-tertiary-bg);margin-bottom:1rem;padding:.75rem 1rem;overflow-x:auto}.df-md pre code{background:0 0;padding:0}.df-md ul,.df-md ol{margin-bottom:.75rem;padding-left:1.5rem}.df-md li{margin-bottom:.15rem}.resizing *{-webkit-user-select:none!important;user-select:none!important}@media (prefers-reduced-motion:no-preference){body,.sidebar,.app-header,.workspace-trigger,.workspace-menu,.nav-module-header,.nav-entity-link,.menu-item{transition:background-color .15s,border-color .15s,color .15s}}
