@charset "UTF-8";

/*!
 *
 * Bryntum Calendar 7.1.0 (TRIAL VERSION)
 *
 * Copyright(c) 2025 Bryntum AB
 * https://bryntum.com/contact
 * https://bryntum.com/license
 *
 * Bryntum incorporates third-party code licensed under the MIT and Apache-2.0 licenses.
 * See the licenses below or visit https://bryntum.com/products/calendar/docs/guide/Calendar/licenses
 *
 * # Third Party Notices
 * 
 * Bryntum uses the following third party libraries:
 * 
 * * [Font Awesome 6 Free](https://fontawesome.com/license/free) (MIT/SIL OFL 1.1)
 * * [Roboto font (for Material theme only)](https://github.com/google/roboto) (Apache-2.0)
 * * [Styling Cross-Browser Compatible Range Inputs with Sass](https://github.com/darlanrod/input-range-sass) (MIT)
 * * [Tree Walker polyfill (only applies to Salesforce)](https://github.com/Krinkle/dom-TreeWalker-polyfill) (MIT)
 * * [chronograph](https://github.com/bryntum/chronograph) (MIT)
 * * [later.js](https://github.com/bunkat/later) (MIT)
 * * [Monaco editor (only used in our demos)](https://microsoft.github.io/monaco-editor) (MIT)
 * * Map/Set polyfill to fix performance issues for Salesforce LWS (MIT)
 * * [Chart.js (when using Chart package)](https://github.com/chartjs/Chart.js) (MIT)
 * 
 * Note: the **chronograph** and **later.js** libraries are used in Bryntum Scheduler Pro and Bryntum Gantt, but they are
 * listed for all Bryntum products since the distribution contains trial versions of the thin bundles for all other
 * products. TreeWalker is only used in the LWC bundle for Salesforce. Roboto font is only used in the material theme.
 * 
 * ## Font Awesome 6 Free
 * 
 * [Font Awesome Free 6 by @fontawesome](https://fontawesome.com/)
 * 
 * Font Awesome Free is free, open source, and GPL friendly. You can use it for commercial projects, open source projects,
 * or really almost whatever you want.
 * 
 * [Full Font Awesome Free license](https://fontawesome.com/license/free)
 * 
 * ## Roboto font
 * 
 * [Apache License Version 2.0, January 2004](https://www.apache.org/licenses/LICENSE-2.0)
 * 
 * TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
 * 
 * 1. Definitions.
 * 
 * "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9
 * of this document.
 * 
 * "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.
 * 
 * "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are
 * under common control with that entity. For the purposes of this definition,
 * "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by
 * contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial
 * ownership of such entity.
 * 
 * "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.
 * 
 * "Source" form shall mean the preferred form for making modifications, including but not limited to software source code,
 * documentation source, and configuration files.
 * 
 * "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including
 * but not limited to compiled object code, generated documentation, and conversions to other media types.
 * 
 * "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as
 * indicated by a copyright notice that is included in or attached to the work
 * (an example is provided in the Appendix below).
 * 
 * "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work
 * and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an
 * original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain
 * separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
 * 
 * "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or
 * additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the
 * Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner.
 * For the purposes of this definition, "submitted"
 * means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including
 * but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems
 * that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding
 * communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a
 * Contribution."
 * 
 * "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received
 * by Licensor and subsequently incorporated within the Work.
 * 
 * 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to
 *    You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce,
 *    prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such
 *    Derivative Works in Source or Object form.
 * 
 * 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a
 *    perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable
 *    (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise
 *    transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are
 *    necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s)
 *    with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (
 *    including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within
 *    the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this
 *    License for that Work shall terminate as of the date such litigation is filed.
 * 
 * 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with
 *    or without modifications, and in Source or Object form, provided that You meet the following conditions:
 * 
 * (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and
 * 
 * (b) You must cause any modified files to carry prominent notices stating that You changed the files; and
 * 
 * (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark,
 * and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the
 * Derivative Works; and
 * 
 * (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute
 * must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that
 * do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file
 * distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the
 * Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices
 * normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You
 * may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the
 * NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the
 * License.
 * 
 * You may add Your own copyright statement to Your modifications and may provide additional or different license terms and
 * conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole,
 * provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this
 * License.
 * 
 * 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for
 *    inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any
 *    additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any
 *    separate license agreement you may have executed with Licensor regarding such Contributions.
 * 
 * 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product
 *    names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and
 *    reproducing the content of the NOTICE file.
 * 
 * 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and
 *    each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
 *    either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT,
 *    MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness
 *    of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this
 *    License.
 * 
 * 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or
 *    otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing,
 *    shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or
 *    consequential damages of any character arising as a result of this License or out of the use or inability to use the
 *    Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or
 *    any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such
 *    damages.
 * 
 * 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose
 *    to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or
 *    rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and
 *    on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and
 *    hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason
 *    of your accepting any such warranty or additional liability.
 * 
 * END OF TERMS AND CONDITIONS
 * 
 * APPENDIX: How to apply the Apache License to your work.
 * 
 * To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by
 * brackets "[]"
 * replaced with your own identifying information. (Don't include the brackets!)  The text should be enclosed in the
 * appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose
 * be included on the same "printed page" as the copyright notice for easier identification within third-party archives.
 * 
 * Copyright [yyyy] [name of copyright owner]
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the
 * License. You may obtain a copy of the License at
 * 
 * [APACHE LICENSE, VERSION 2.0](http://www.apache.org/licenses/LICENSE-2.0)
 * 
 * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "
 * AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific
 * language governing permissions and limitations under the License.
 * 
 * ## Styling Cross-Browser Compatible Range Inputs with Sass
 * 
 * Github: [input-range-sass](https://github.com/darlanrod/input-range-sass)
 * 
 * Author: [Darlan Rod](https://github.com/darlanrod)
 * 
 * Version 1.4.1
 * 
 * The MIT License (MIT)
 * 
 * Copyright (c) 2016 Darlan Rod
 * 
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
 * persons to whom the Software is furnished to do so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
 * Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
 * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 * 
 * ## Tree Walker polyfill
 * 
 * The MIT License (MIT)
 * 
 * [Copyright 2013–2017 Timo Tijhof](https://github.com/Krinkle/dom-TreeWalker-polyfill)
 * 
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
 * persons to whom the Software is furnished to do so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
 * Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
 * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 * 
 * ## chronograph
 * 
 * GitHub: [chronograph](https://github.com/bryntum/chronograph)
 * 
 * The MIT License (MIT)
 * 
 * Copyright (c) 2023 Bryntum
 * 
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
 * persons to whom the Software is furnished to do so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
 * Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
 * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 * 
 * ## later.js
 * 
 * GitHub: [later.js](https://github.com/bunkat/later)
 * 
 * The MIT License (MIT)
 * 
 * Copyright © 2013 BunKat
 * 
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
 * persons to whom the Software is furnished to do so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
 * Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
 * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 * 
 * ## Monaco editor
 * 
 * GitHub: [Monaco editor](https://microsoft.github.io/monaco-editor) (MIT)
 * 
 * The MIT License (MIT)
 * 
 * Copyright (c) 2016 - present Microsoft Corporation
 * 
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
 * persons to whom the Software is furnished to do so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
 * Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
 * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 * 
 * ## Map/Set polyfill to fix performance issues for Salesforce LWS
 * 
 * Copyright © 2024 Certinia Inc.
 * 
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be included in all
 * copies or substantial portions of the Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 * 
 * ## Chart.js
 * 
 * GitHub: [Chart.js](https://github.com/chartjs/Chart.js)
 * 
 * The MIT License (MIT)
 * 
 * Copyright (c) 2014-2022 Chart.js Contributors
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
 * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 * 
 */
:root,
:host {
    --bryntum-version: "7.1.0";
    --b-checkbox-checked-check-content: "\f00c";
    --b-widget-anchor-width: 1.2em;
    --b-widget-anchor-height: .6em;
    --b-widget-font-size: 1em;
    --b-widget-font-weight: 400;
    --b-widget-icon-font-family: "Font Awesome 6 Free";
    --b-widget-sub-menu-icon: "\f0da";
    --b-widget-color: var(--b-text-1);
    --b-widget-border-color: var(--b-border-3);
    --b-widget-disabled-color: var(--b-text-3);
    --b-widget-disabled-background: var(--b-neutral-90);
    --b-widget-padding: 1em;
    --b-widget-padding-large: 1.5em;
    --b-widget-gap: 1em;
    --b-widget-focus-outline-width: 2px;
    --b-widget-focus-outline-color: var(--b-primary);
    --b-widget-floating-box-shadow: var(--b-elevation-2);
    --b-aligned-above-floating-box-shadow: -3px -1px 6px rgba(0, 0, 0, .12), 3px -2px 6px rgba(0, 0, 0, .24);
    --b-widget-floating-border: null;
    --b-label-color: var(--b-widget-color);
    --b-widget-scrollbar-border-color: var(--b-border-7);
    --b-widget-anchor-offset: 1px;
    --b-elevation-0: none;
    --b-elevation-1: 0 1px 3px 0 rgba(0, 0, 0, .12), 0 1px 1px 0 rgba(0, 0, 0, .1), 0 2px 1px -1px rgba(0, 0, 0, .08);
    --b-elevation-2: 0 1px 5px 0 rgba(0, 0, 0, .12), 0 2px 2px 0 rgba(0, 0, 0, .1), 0 3px 1px -2px rgba(0, 0, 0, .08);
    --b-elevation-3: 0 3px 6px rgba(0, 0, 0, .12), 0 3px 6px rgba(0, 0, 0, .24);
    --b-elevation-4: 0 5px 6px -3px rgba(0, 0, 0, .16), 0 8px 10px 1px rgba(0, 0, 0, .1), 0 3px 14px 2px rgba(0, 0, 0, .08);
    --b-default-transition-duration: .15s
}

@media (prefers-reduced-motion: reduce) {
    body:not(.b-siesta-testing) {
        --b-default-transition-duration: 0s
    }
}

@property --bi-widget-grid-column {
    syntax: "*";
    inherits: false;
}

.b-internal {
    --bi-widget-grid-column: null
}

.b-widget {
    display: flex;
    position: relative;
    overflow: hidden;
    color-scheme: var(--b-widget-color-scheme);
    font-weight: var(--b-widget-font-weight);
    font-size: var(--b-widget-font-size);
    grid-column: var(--bi-widget-grid-column)
}

.b-widget,
.b-widget:before,
.b-widget:after,
.b-widget *,
.b-widget *:before,
.b-widget *:after {
    box-sizing: border-box
}

.b-widget.b-hidden.b-hide-mode-clip {
    clip: rect(0, 0, 0, 0) !important
}

.b-widget.b-hidden.b-hide-mode-opacity {
    opacity: 0 !important;
    pointer-events: none
}

.b-widget.b-hidden.b-hide-mode-display {
    display: none !important
}

.b-widget.b-positioned {
    position: absolute;
    inset-inline-start: 0;
    inset-block-start: 0
}

.b-widget.b-positionable {
    position: absolute
}

.b-widget .b-aria-desc-element {
    position: absolute;
    clip-path: polygon(0 0);
    contain: strict
}

.b-widget.b-floating,
.b-widget.b-positioned {
    box-shadow: var(--b-widget-floating-box-shadow)
}

:is(.b-widget.b-floating, .b-widget.b-positioned).b-centered {
    top: 50%;
    inset-inline-start: 50%;
    z-index: 1;
    translate: calc(-50% * var(--b-rtl-negate)) -50%
}

.b-widget.b-maximized {
    position: fixed;
    translate: none !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    top: 0 !important;
    inset-inline-start: 0 !important
}

.b-widget.b-maximized.b-mobile .b-bottom-toolbar {
    order: -1;
    min-height: 3.5em
}

.b-widget.b-maximized.b-mobile .b-bottom-toolbar .b-toolbar-content {
    padding-block: .5em 0;
    padding-inline-start: 1em !important
}

.b-widget>.b-focus-trap {
    position: absolute;
    display: none;
    clip: rect(0, 0, 0, 0)
}

.b-widget.b-focus-trapped.b-contains-focus>.b-focus-trap {
    display: inherit
}

.b-widget.b-initializing * {
    transition: none !important
}

.b-anchor {
    position: absolute
}

.b-anchor svg {
    position: absolute;
    top: 0;
    pointer-events: none;
    overflow: visible
}

.b-anchor.b-anchor-top,
.b-anchor.b-anchor-bottom {
    left: 0;
    height: calc(var(--b-widget-anchor-height) + var(--bi-align-offset-y, 0px));
    width: 100%
}

:is(.b-anchor.b-anchor-top, .b-anchor.b-anchor-bottom) svg {
    width: var(--b-widget-anchor-width);
    height: var(--b-widget-anchor-height)
}

.b-anchor.b-anchor-top {
    bottom: calc(100% - var(--b-widget-anchor-offset))
}

.b-anchor.b-anchor-bottom {
    top: calc(100% - var(--b-widget-anchor-offset))
}

.b-anchor.b-anchor-bottom svg {
    rotate: 180deg
}

.b-anchor.b-anchor-start,
.b-anchor.b-anchor-end {
    top: 0;
    width: calc(var(--b-widget-anchor-height) + var(--bi-align-offset-x, 0px));
    height: 100%
}

:is(.b-anchor.b-anchor-start, .b-anchor.b-anchor-end) svg {
    height: var(--b-widget-anchor-width);
    width: var(--b-widget-anchor-height)
}

.b-anchor.b-anchor-start {
    inset-inline-end: 100%
}

.b-anchor.b-anchor-start svg {
    rotate: 270deg;
    transform-origin: var(--b-widget-anchor-height) var(--b-widget-anchor-height)
}

.b-anchor.b-anchor-end {
    inset-inline-start: 100%
}

.b-anchor.b-anchor-end svg {
    rotate: 90deg;
    transform-origin: calc(var(--b-widget-anchor-height) / 2) calc(var(--b-widget-anchor-height) / 2)
}

.b-anchor.b-anchor-right {
    inset-inline-start: calc(100% - var(--bi-border-width, 0px));
    clip-path: rect(0 100% 100% var(--bi-border-width, 0px))
}

.b-anchor.b-anchor-left {
    inset-inline-end: calc(100% - var(--bi-border-width, 0px));
    clip-path: rect(0 calc(100% - var(--bi-border-width, 0px)) 100% 0)
}

.b-rtl>.b-anchor.b-anchor-right {
    inset-inline-end: calc(100% - var(--bi-border-width, 0px));
    inset-inline-start: auto
}

.b-rtl>.b-anchor.b-anchor-left {
    inset-inline-start: calc(100% - var(--bi-border-width, 0px));
    inset-inline-end: auto
}

.b-float-root {
    position: fixed !important;
    inset: 0;
    pointer-events: none;
    overflow: clip;
    z-index: 14000;
    contain: strict
}

.b-float-root.b-safari {
    user-select: none;
    -webkit-user-select: none
}

.b-float-root>.b-floating {
    position: absolute;
    contain: layout style;
    pointer-events: all;
    transition: opacity .2s;
    top: 0;
    inset-inline-start: 0;
    z-index: 1
}

.b-float-root>.b-floating:not(.b-popup) {
    box-shadow: var(--b-widget-floating-box-shadow);
    border-radius: var(--b-widget-border-radius);
    border: var(--b-widget-floating-border)
}

.b-firefox :is(.b-float-root>.b-floating) {
    contain: layout
}

.b-float-root>.b-floating.b-hidden {
    opacity: 0
}

.b-float-root>.b-floating.b-aligned-above:not(.b-anchored) {
    box-shadow: var(--b-aligned-above-floating-box-shadow)
}

:root,
:host {
    --b-rtl-negate: 1
}

.b-rtl {
    direction: rtl;
    --b-rtl-negate: -1
}

.b-rtl .b-anchor.b-anchor-start svg {
    rotate: 90deg;
    transform-origin: calc(var(--b-widget-anchor-height) / 2) calc(var(--b-widget-anchor-height) / 2)
}

.b-rtl .b-anchor.b-anchor-end svg {
    rotate: 270deg;
    transform-origin: var(--b-widget-anchor-height) var(--b-widget-anchor-height)
}

.b-ltr {
    direction: ltr
}

.b-aria-live-el {
    height: 0;
    width: 0;
    position: absolute;
    inset-inline-start: -9999px;
    contain: strict
}

.b-released,
.b-hide-display,
.b-theme-info {
    display: none !important
}

.b-hide-visibility {
    visibility: hidden !important
}

.b-hide-offscreen {
    visibility: hidden !important;
    position: absolute !important;
    top: -10000em;
    left: -10000em
}

.b-yscroll-pad {
    display: none
}

.b-visible-scrollbar .b-show-yscroll-padding>.b-yscroll-pad {
    display: block;
    order: 9999;
    border-inline-start: 1px solid var(--b-widget-scrollbar-border-color)
}

.b-visible-scrollbar .b-show-yscroll-padding>.b-yscroll-pad .b-yscroll-pad-sizer {
    overflow-x: hidden;
    overflow-y: scroll;
    margin-inline-start: -1px;
    height: 0;
    max-width: var(--bi-scrollbar-width)
}

.b-widget-scroller.b-hide-scroll {
    scrollbar-width: none
}

.b-widget-scroller.b-hide-scroll::-webkit-scrollbar {
    display: none
}

:is(div, span) .b-color-red {
    --b-primary: var(--b-color-red)
}

:is(div, span) .b-color-pink {
    --b-primary: var(--b-color-pink)
}

:is(div, span) .b-color-magenta {
    --b-primary: var(--b-color-magenta)
}

:is(div, span) .b-color-purple {
    --b-primary: var(--b-color-purple)
}

:is(div, span) .b-color-deep-purple {
    --b-primary: var(--b-color-deep-purple)
}

:is(div, span) .b-color-violet {
    --b-primary: var(--b-color-violet)
}

:is(div, span) .b-color-indigo {
    --b-primary: var(--b-color-indigo)
}

:is(div, span) .b-color-blue {
    --b-primary: var(--b-color-blue)
}

:is(div, span) .b-color-light-blue {
    --b-primary: var(--b-color-light-blue)
}

:is(div, span) .b-color-cyan {
    --b-primary: var(--b-color-cyan)
}

:is(div, span) .b-color-teal {
    --b-primary: var(--b-color-teal)
}

:is(div, span) .b-color-green {
    --b-primary: var(--b-color-green)
}

:is(div, span) .b-color-light-green {
    --b-primary: var(--b-color-light-green)
}

:is(div, span) .b-color-lime {
    --b-primary: var(--b-color-lime)
}

:is(div, span) .b-color-yellow {
    --b-primary: var(--b-color-yellow)
}

:is(div, span) .b-color-amber {
    --b-primary: var(--b-color-amber)
}

:is(div, span) .b-color-orange {
    --b-primary: var(--b-color-orange)
}

:is(div, span) .b-color-deep-orange {
    --b-primary: var(--b-color-deep-orange)
}

:is(div, span) .b-color-brown {
    --b-primary: var(--b-color-brown)
}

:is(div, span) .b-color-lighter-gray {
    --b-primary: var(--b-color-lighter-gray)
}

:is(div, span) .b-color-light-gray {
    --b-primary: var(--b-color-light-gray)
}

:is(div, span) .b-color-gray {
    --b-primary: var(--b-color-gray)
}

:is(div, span) .b-color-black {
    --b-primary: var(--b-color-black)
}

@keyframes b-anim-fade-in {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes b-anim-fade-out {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes b-anim-slide-in-from-right {
    30% {
        translate: -50%;
        opacity: .5
    }

    30.01% {
        translate: 50%
    }

    to {
        translate: 0;
        opacity: 1
    }
}

@keyframes b-anim-slide-in-from-left {
    30% {
        translate: 50%;
        opacity: .5
    }

    30.01% {
        translate: -50%
    }

    to {
        translate: 0;
        opacity: 1
    }
}

@keyframes b-anim-slide-in-from-below {
    30% {
        translate: 0 -50%;
        opacity: .5
    }

    30.01% {
        translate: 0 50%
    }

    to {
        translate: 0;
        opacity: 1
    }
}

@keyframes b-anim-slide-in-from-above {
    30% {
        translate: 0 50%;
        opacity: .5
    }

    30.01% {
        translate: 0 -50%
    }

    to {
        translate: 0;
        opacity: 1
    }
}

.b-slide-in-next,
.b-slide-in-previous {
    animation: b-anim-slide-in-from-left .3s ease 0s 1 normal
}

.b-slide-vertical.b-slide-in-next {
    animation-name: b-anim-slide-in-from-below
}

.b-slide-vertical.b-slide-in-previous {
    animation-name: b-anim-slide-in-from-above
}

.b-slide-in-next:not(.b-slide-vertical) {
    animation-name: b-anim-slide-in-from-right
}

.b-slide-in-previous:not(.b-slide-vertical) {
    animation-name: b-anim-slide-in-from-left
}

.b-rtl.b-slide-in-next:not(.b-slide-vertical) {
    animation-name: b-anim-slide-in-from-left
}

.b-rtl.b-slide-in-previous:not(.b-slide-vertical) {
    animation-name: b-anim-slide-in-from-right
}

.b-sliding-child-element {
    overflow: clip
}

.b-transition-expand-collapse.b-aligned-below {
    animation: b-anim-expand-downwards .3s forwards
}

.b-transition-expand-collapse.b-aligned-above {
    animation: b-anim-expand-upwards .3s forwards
}

.b-transition-expand-collapse.b-hiding.b-aligned-below {
    animation: b-anim-collapse-upwards .3s forwards
}

.b-transition-expand-collapse.b-hiding.b-aligned-above {
    animation: b-anim-collapse-downwards .3s forwards
}

@keyframes b-anim-expand-downwards {
    0% {
        clip-path: rect(-25px calc(100% + 25px) 0 -25px);
        opacity: 0
    }

    to {
        clip-path: rect(-25px calc(100% + 25px) calc(100% + 25px) -25px);
        opacity: 1
    }
}

@keyframes b-anim-collapse-upwards {
    0% {
        clip-path: rect(-25px calc(100% + 25px) calc(100% + 25px) -25px);
        opacity: 1
    }

    to {
        clip-path: rect(-25px calc(100% + 25px) 0 -25px);
        opacity: 0
    }
}

@keyframes b-anim-expand-upwards {
    0% {
        clip-path: rect(100% calc(100% + 25px) 100% -25px);
        opacity: 0
    }

    to {
        clip-path: rect(-25px calc(100% + 25px) calc(100% + 25px) -25px);
        opacity: 1
    }
}

@keyframes b-anim-collapse-downwards {
    0% {
        clip-path: rect(-25px calc(100% + 25px) calc(100% + 25px) -25px);
        opacity: 1
    }

    to {
        clip-path: rect(100% calc(100% + 25px) 100% -25px);
        opacity: 0
    }
}

:root,
:host {
    --b-color-red: #e53935;
    --b-color-pink: #d81b60;
    --b-color-magenta: #c200c2;
    --b-color-purple: #8e24aa;
    --b-color-violet: #5e35b1;
    --b-color-deep-purple: #4527a0;
    --b-color-indigo: #3949ab;
    --b-color-blue: #1e88e5;
    --b-color-light-blue: #03a9f4;
    --b-color-cyan: #3bc9db;
    --b-color-teal: #00897b;
    --b-color-green: #43a047;
    --b-color-light-green: #8bc34a;
    --b-color-lime: #c0ca33;
    --b-color-yellow: #fdd835;
    --b-color-amber: #ffb300;
    --b-color-orange: #fb8c00;
    --b-color-deep-orange: #f4511e;
    --b-color-brown: #6d4c41;
    --b-color-lighter-gray: #e0e0e0;
    --b-color-light-gray: #c0c0c0;
    --b-color-gray: #757575;
    --b-color-black: #000000;
    --b-neutral-100: hsl(0 0 100%);
    --b-neutral-99: hsl(0 0 99%);
    --b-neutral-98: hsl(0 0 98%);
    --b-neutral-97: hsl(0 0 97%);
    --b-neutral-96: hsl(0 0 96%);
    --b-neutral-95: hsl(0 0 95%);
    --b-neutral-94: hsl(0 0 94%);
    --b-neutral-93: hsl(0 0 93%);
    --b-neutral-92: hsl(0 0 92%);
    --b-neutral-91: hsl(0 0 91%);
    --b-neutral-90: hsl(0 0 90%);
    --b-neutral-85: hsl(0 0 85%);
    --b-neutral-80: hsl(0 0 80%);
    --b-neutral-75: hsl(0 0 75%);
    --b-neutral-70: hsl(0 0 70%);
    --b-neutral-65: hsl(0 0 65%);
    --b-neutral-60: hsl(0 0 60%);
    --b-neutral-55: hsl(0 0 55%);
    --b-neutral-50: hsl(0 0 50%);
    --b-neutral-45: hsl(0 0 45%);
    --b-neutral-40: hsl(0 0 40%);
    --b-neutral-35: hsl(0 0 35%);
    --b-neutral-30: hsl(0 0 30%);
    --b-neutral-25: hsl(0 0 25%);
    --b-neutral-20: hsl(0 0 20%);
    --b-neutral-15: hsl(0 0 15%);
    --b-neutral-10: hsl(0 0 10%);
    --b-neutral-5: hsl(0 0 5%);
    --b-neutral-2: hsl(0 0 2%);
    --b-neutral-1: hsl(0 0 1%);
    --b-neutral-0: hsl(0 0 0%);
    --b-border-1: var(--b-neutral-10);
    --b-border-2: var(--b-neutral-30);
    --b-border-3: var(--b-neutral-50);
    --b-border-4: var(--b-neutral-60);
    --b-border-5: var(--b-neutral-70);
    --b-border-6: var(--b-neutral-80);
    --b-border-7: var(--b-neutral-90);
    --b-border-8: var(--b-neutral-93);
    --b-border-9: var(--b-neutral-95);
    --b-border-10: var(--b-neutral-100);
    --b-text-1: var(--b-neutral-10);
    --b-text-2: var(--b-neutral-30);
    --b-text-3: var(--b-neutral-50);
    --b-text-4: var(--b-neutral-70);
    --b-text-5: var(--b-neutral-100)
}

.b-colorize,
.b-bryntum {
    --b-primary-100: var(--b-mix);
    --b-primary-99: color-mix(in srgb, var(--b-primary), var(--b-mix) 98%);
    --b-primary-98: color-mix(in srgb, var(--b-primary), var(--b-mix) 96%);
    --b-primary-97: color-mix(in srgb, var(--b-primary), var(--b-mix) 94%);
    --b-primary-96: color-mix(in srgb, var(--b-primary), var(--b-mix) 92%);
    --b-primary-95: color-mix(in srgb, var(--b-primary), var(--b-mix) 90%);
    --b-primary-94: color-mix(in srgb, var(--b-primary), var(--b-mix) 88%);
    --b-primary-93: color-mix(in srgb, var(--b-primary), var(--b-mix) 86%);
    --b-primary-92: color-mix(in srgb, var(--b-primary), var(--b-mix) 84%);
    --b-primary-91: color-mix(in srgb, var(--b-primary), var(--b-mix) 82%);
    --b-primary-90: color-mix(in srgb, var(--b-primary), var(--b-mix) 80%);
    --b-primary-85: color-mix(in srgb, var(--b-primary), var(--b-mix) 70%);
    --b-primary-80: color-mix(in srgb, var(--b-primary), var(--b-mix) 60%);
    --b-primary-75: color-mix(in srgb, var(--b-primary), var(--b-mix) 50%);
    --b-primary-70: color-mix(in srgb, var(--b-primary), var(--b-mix) 40%);
    --b-primary-65: color-mix(in srgb, var(--b-primary), var(--b-mix) 30%);
    --b-primary-60: color-mix(in srgb, var(--b-primary), var(--b-mix) 20%);
    --b-primary-55: color-mix(in srgb, var(--b-primary), var(--b-mix) 10%);
    --b-primary-50: var(--b-primary);
    --b-primary-45: color-mix(in srgb, var(--b-primary), var(--b-opposite) 10%);
    --b-primary-40: color-mix(in srgb, var(--b-primary), var(--b-opposite) 20%);
    --b-primary-35: color-mix(in srgb, var(--b-primary), var(--b-opposite) 30%);
    --b-primary-30: color-mix(in srgb, var(--b-primary), var(--b-opposite) 40%);
    --b-primary-25: color-mix(in srgb, var(--b-primary), var(--b-opposite) 50%);
    --b-primary-20: color-mix(in srgb, var(--b-primary), var(--b-opposite) 60%);
    --b-primary-15: color-mix(in srgb, var(--b-primary), var(--b-opposite) 70%);
    --b-primary-10: color-mix(in srgb, var(--b-primary), var(--b-opposite) 80%);
    --b-primary-5: color-mix(in srgb, var(--b-primary), var(--b-opposite) 90%);
    --b-primary-2: color-mix(in srgb, var(--b-primary), var(--b-opposite) 96%);
    --b-primary-1: color-mix(in srgb, var(--b-primary), var(--b-opposite) 98%);
    --b-primary-0: var(--b-opposite)
}

@supports not (color: color-mix(in srgb, red, blue)) {

    .b-colorize,
    .b-bryntum {
        --b-primary-99: linear-gradient(rgba(255, 255, 255, .98), rgba(255, 255, 255, .98)) var(--b-primary);
        --b-primary-98: linear-gradient(rgba(255, 255, 255, .96), rgba(255, 255, 255, .96)) var(--b-primary);
        --b-primary-97: linear-gradient(rgba(255, 255, 255, .94), rgba(255, 255, 255, .94)) var(--b-primary);
        --b-primary-96: linear-gradient(rgba(255, 255, 255, .92), rgba(255, 255, 255, .92)) var(--b-primary);
        --b-primary-95: linear-gradient(rgba(255, 255, 255, .9), rgba(255, 255, 255, .9)) var(--b-primary);
        --b-primary-94: linear-gradient(rgba(255, 255, 255, .88), rgba(255, 255, 255, .88)) var(--b-primary);
        --b-primary-93: linear-gradient(rgba(255, 255, 255, .86), rgba(255, 255, 255, .86)) var(--b-primary);
        --b-primary-92: linear-gradient(rgba(255, 255, 255, .84), rgba(255, 255, 255, .84)) var(--b-primary);
        --b-primary-91: linear-gradient(rgba(255, 255, 255, .82), rgba(255, 255, 255, .82)) var(--b-primary);
        --b-primary-90: linear-gradient(rgba(255, 255, 255, .8), rgba(255, 255, 255, .8)) var(--b-primary);
        --b-primary-85: linear-gradient(rgba(255, 255, 255, .7), rgba(255, 255, 255, .7)) var(--b-primary);
        --b-primary-80: linear-gradient(rgba(255, 255, 255, .6), rgba(255, 255, 255, .6)) var(--b-primary);
        --b-primary-75: linear-gradient(rgba(255, 255, 255, .5), rgba(255, 255, 255, .5)) var(--b-primary);
        --b-primary-70: linear-gradient(rgba(255, 255, 255, .4), rgba(255, 255, 255, .4)) var(--b-primary);
        --b-primary-65: linear-gradient(rgba(255, 255, 255, .3), rgba(255, 255, 255, .3)) var(--b-primary);
        --b-primary-60: linear-gradient(rgba(255, 255, 255, .2), rgba(255, 255, 255, .2)) var(--b-primary);
        --b-primary-55: linear-gradient(rgba(255, 255, 255, .1), rgba(255, 255, 255, .1)) var(--b-primary);
        --b-primary-45: linear-gradient(rgba(0, 0, 0, .1), rgba(0, 0, 0, .1)) var(--b-primary);
        --b-primary-40: linear-gradient(rgba(0, 0, 0, .2), rgba(0, 0, 0, .2)) var(--b-primary);
        --b-primary-35: linear-gradient(rgba(0, 0, 0, .3), rgba(0, 0, 0, .3)) var(--b-primary);
        --b-primary-30: linear-gradient(rgba(0, 0, 0, .4), rgba(0, 0, 0, .4)) var(--b-primary);
        --b-primary-25: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)) var(--b-primary);
        --b-primary-20: linear-gradient(rgba(0, 0, 0, .6), rgba(0, 0, 0, .6)) var(--b-primary);
        --b-primary-15: linear-gradient(rgba(0, 0, 0, .7), rgba(0, 0, 0, .7)) var(--b-primary);
        --b-primary-10: linear-gradient(rgba(0, 0, 0, .8), rgba(0, 0, 0, .8)) var(--b-primary);
        --b-primary-5: linear-gradient(rgba(0, 0, 0, .9), rgba(0, 0, 0, .9)) var(--b-primary);
        --b-primary-2: linear-gradient(rgba(0, 0, 0, .96), rgba(0, 0, 0, .96)) var(--b-primary);
        --b-primary-1: linear-gradient(rgba(0, 0, 0, .98), rgba(0, 0, 0, .98)) var(--b-primary)
    }
}

.b-fx-highlight {
    z-index: 9999 !important;
    animation: b-anim-fx-highlight 1s ease 0s 1
}

@keyframes b-anim-fx-highlight {
    0% {
        box-shadow: none
    }

    50% {
        box-shadow: 0 0 10px 5px var(--b-primary-50)
    }

    to {
        box-shadow: none
    }
}

.b-dragging,
.b-dragging * {
    pointer-events: none !important
}

.b-dragging:not(.b-widget) {
    z-index: 100;
    opacity: .8;
    box-sizing: border-box
}

.b-dragging:not(.b-widget).b-drag-unified-proxy {
    opacity: .65
}

.b-dragging:not(.b-widget).b-drag-main {
    z-index: 101;
    opacity: 1
}

.b-drag-proxy {
    position: absolute !important;
    top: 0;
    inset-inline-start: 0;
    pointer-events: none !important;
    box-sizing: border-box
}

.b-drag-proxy * {
    box-sizing: border-box
}

.b-aborting,
.b-drag-final-transition {
    transition-duration: .3s;
    transition-property: all !important
}

.b-drag-unified-animation {
    transition: translate .2s
}

.b-drag-original.b-hidden {
    display: none !important
}

.b-drag-helper-active * {
    -webkit-user-select: none !important;
    user-select: none !important
}

.b-resize-grip {
    position: absolute;
    z-index: 1
}

.b-resize-grip-top-start,
.b-resize-grip-top-end,
.b-resize-grip-bottom-start,
.b-resize-grip-bottom-end {
    width: .5em;
    height: .5em
}

.b-resize-grip-top,
.b-resize-grip-top-start,
.b-resize-grip-top-end {
    top: 0
}

.b-resize-grip-bottom,
.b-resize-grip-bottom-start,
.b-resize-grip-bottom-end {
    bottom: 0
}

.b-resize-grip-start,
.b-resize-grip-top-start,
.b-resize-grip-bottom-start {
    inset-inline-start: 0
}

.b-resize-grip-end,
.b-resize-grip-top-end,
.b-resize-grip-bottom-end {
    inset-inline-end: 0
}

.b-resize-grip-top,
.b-resize-grip-bottom {
    height: .5em
}

.b-resize-grip-start,
.b-resize-grip-end {
    width: .5em
}

.b-resize-grip-top-start,
.b-resize-grip-bottom-end {
    cursor: nwse-resize;
    z-index: 2
}

.b-resize-grip-top-end,
.b-resize-grip-bottom-start {
    cursor: nesw-resize;
    z-index: 2
}

.b-resize-grip-top,
.b-resize-grip-bottom {
    cursor: ns-resize;
    width: 100%;
    inset-inline-start: 0
}

.b-resize-grip-start,
.b-resize-grip-end {
    height: 100%;
    top: 0;
    cursor: ew-resize
}

.b-no-resize-observer.b-resize-monitored:not(.b-floating) {
    position: relative
}

.b-no-resize-observer.b-resize-monitored .b-resize-monitors {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    visibility: hidden;
    overflow: hidden
}

.b-no-resize-observer.b-resize-monitored .b-resize-monitors>* {
    width: 100%;
    height: 100%;
    overflow: hidden
}

.b-no-resize-observer.b-resize-monitored .b-resize-monitors>.b-resize-monitor-expand:after {
    content: "";
    display: block;
    width: 100000px;
    height: 100000px
}

.b-no-resize-observer.b-resize-monitored .b-resize-monitors>.b-resize-monitor-shrink:after {
    content: "";
    display: block;
    width: 200%;
    height: 200%;
    min-width: 1px;
    min-height: 1px
}

.simulated-mouse {
    position: absolute;
    z-index: 100;
    top: 10px;
    left: 10px;
    transition: top .5s, left .5s;
    pointer-events: none;
    font-size: 16px
}

.simulated-mouse.quick {
    transition: top .05s, left .05s
}

.simulated-mouse:after {
    position: absolute;
    content: "\f245" / "";
    font-family: var(--b-widget-icon-font-family);
    font-weight: 900;
    z-index: 102
}

.simulated-mouse.drag:before,
.simulated-mouse.mousedown:before,
.simulated-mouse.dblclick:before,
.simulated-mouse.click:before {
    position: absolute;
    content: "";
    border: 2px solid transparent;
    border-radius: 50%;
    animation-name: b-anim-click;
    animation-duration: .2s;
    top: 0;
    left: 0;
    translate: -50% -50%;
    z-index: 101;
    opacity: .7
}

.simulated-mouse.drag:after {
    content: "\f25a" / "";
    left: -3px
}

.simulated-mouse.dblclick:before {
    animation-name: b-anim-dblclick;
    animation-duration: .3s
}

.simulated-mouse.mousedown:before,
.simulated-mouse.drag:before {
    animation-name: none;
    width: 1.5em;
    height: 1.5em;
    border-color: red
}

@keyframes b-anim-click {
    0% {
        width: 0;
        height: 0
    }

    90% {
        width: 1.5em;
        height: 1.5em;
        border-color: red
    }

    to {
        width: 0;
        height: 0;
        border-color: transparent
    }
}

@keyframes b-anim-dblclick {
    0% {
        width: 0;
        height: 0
    }

    40% {
        width: 1.5em;
        height: 1.5em;
        border-color: red
    }

    50% {
        width: 0;
        height: 0
    }

    90% {
        width: 1.5em;
        height: 1.5em;
        border-color: red
    }

    to {
        width: 0;
        height: 0;
        border-color: transparent
    }
}

.b-scroll-hidden {
    visibility: hidden !important;
    position: absolute !important;
    top: -10000em;
    left: -10000em;
    translate: 0 0 !important
}

.b-infinity-scroller {
    overflow: scroll
}

.b-infinity-scroller.b-infinity-scroller-smooth {
    scroll-behavior: smooth
}

.b-infinity-scroller-item {
    position: absolute !important
}

.b-widget-scroller {
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-anchor: none;
    position: relative
}

.b-hide-scroll {
    scrollbar-width: none
}

.b-hide-scroll::-webkit-scrollbar {
    display: none
}

.b-scroller-stretcher {
    position: absolute;
    height: 1px;
    width: 1px;
    top: 0;
    inset-inline-start: 0
}

.b-icon {
    display: inline-flex;
    gap: .5em
}

.b-icon:before,
.b-fw-icon:before {
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    display: grid;
    place-items: center;
    font-family: var(--b-widget-icon-font-family);
    font-weight: var(--b-widget-icon-font-weight, 900);
    content: var(--fa)
}

.b-fw-icon:before {
    width: 1em
}

.b-icon-scroll-left:before {
    content: var(--b-icon-scroll-left, "\f104")
}

.b-icon-scroll-right:before {
    content: var(--b-icon-scroll-right, "\f105")
}

.b-icon-spin-up:before {
    content: var(--b-icon-spin-up, "\f0d8")
}

.b-icon-spin-down:before {
    content: var(--b-icon-spin-down, "\f0d7")
}

.b-icon-add:before {
    content: var(--b-icon-add, "+")
}

.b-icon-clear:before {
    content: var(--b-icon-clear, "\f00d")
}

.b-icon-remove:before {
    content: var(--b-icon-remove, "\f00d")
}

.b-icon-close:before {
    content: var(--b-icon-close, "\f00d")
}

.b-icon-remove-circle:before {
    content: var(--b-icon-remove-circle, "\f057")
}

.b-icon-collapse-down:before {
    content: var(--b-icon-collapse-down, "\f078")
}

.b-icon-collapse-left:before {
    content: var(--b-icon-collapse-left, "\f053")
}

.b-icon-collapse-right:before {
    content: var(--b-icon-collapse-right, "\f054")
}

.b-icon-collapse-up:before {
    content: var(--b-icon-collapse-up, "\f077")
}

.b-icon-filter-disable:before {
    content: var(--b-icon-filter-disable, "\f05e")
}

.b-icon-search:before {
    content: var(--b-icon-search, "\f002")
}

.b-icon-search-plus:before {
    content: var(--b-icon-search-plus, "\f00e")
}

.b-icon-search-minus:before {
    content: var(--b-icon-search-minus, "\f010")
}

.b-icon-hide:before {
    content: var(--b-icon-hide, "\f057")
}

.b-icon-trash:before {
    content: var(--b-icon-trash, "\f1f8")
}

.b-icon-edit:before {
    content: var(--b-icon-edit, "\f303")
}

.b-icon-show-details:before {
    content: var(--b-icon-show-details, "\f002")
}

.b-icon-rename:before {
    content: var(--b-icon-rename, "\f044")
}

.b-icon-copy:before {
    content: var(--b-icon-copy, "\f0c5")
}

.b-icon-cut:before {
    content: var(--b-icon-cut, "\f0c4")
}

.b-icon-paste:before {
    content: var(--b-icon-paste, "\f0ea")
}

.b-icon-expand-row:before {
    content: var(--b-icon-expand-row, "\f107")
}

.b-icon-expand-column:before {
    content: var(--b-icon-expand-column, "\f105")
}

.b-icon-expand {
    content: var(--b-icon-expand, "\f065")
}

.b-icon-first:before {
    content: var(--b-icon-first, "\f100")
}

:is(.b-rtl .b-icon-first, .b-rtl .b-icon-last, .b-rtl .b-icon-next, .b-rtl .b-icon-previous, .b-rtl .b-icon-scroll-left, .b-rtl .b-icon-scroll-right):before {
    scale: -1 1
}

.b-icon-last:before {
    content: var(--b-icon-last, "\f101")
}

.b-icon-redo:before {
    content: var(--b-icon-redo, "\f01e")
}

.b-icon-reload:before {
    content: var(--b-icon-reload, "\f01e")
}

.b-icon-undo:before {
    content: var(--b-icon-undo, "\f0e2")
}

.b-icon-compare:before {
    content: var(--b-icon-compare, "\e13a")
}

.b-icon-split-horizontal:before,
.b-icon-split-vertical:before,
.b-icon-split-both:before {
    min-width: 1em !important;
    width: 1em;
    height: 1em;
    border-radius: 2px;
    border: 2px solid currentColor;
    overflow: hidden
}

.b-icon-split-horizontal:before {
    content: var(--b-icon-split-horizontal, "\2503");
    rotate: 90deg;
    border-left-width: 3px;
    align-items: start;
    line-height: .8
}

.b-icon-split-vertical:before {
    content: var(--b-icon-split-vertical, "\2503");
    border-top-width: 3px;
    align-items: start;
    line-height: .8
}

.b-icon-split-both:before {
    content: var(--b-icon-split-both, "\254b");
    border-top-width: 3px
}

.b-icon-download:before {
    content: var(--b-icon-download, "\f019")
}

.b-icon-code:before {
    content: var(--b-icon-code, "\f121")
}

.b-icon-clipboard:before {
    content: var(--b-icon-clipboard, "\f328")
}

.b-icon-filter:before {
    content: var(--b-icon-filter, "\f0b0")
}

.b-icon-filter-equal:before {
    content: var(--b-icon-filter-equal, "\f0b0")
}

.b-icon-filter-less:before {
    content: var(--b-icon-filter-less, "\f053")
}

.b-icon-filter-before:before {
    content: var(--b-icon-filter-before, "\f053")
}

.b-icon-filter-more:before {
    content: var(--b-icon-filter-more, "\f054")
}

.b-icon-filter-after:before {
    content: var(--b-icon-filter-after, "\f054")
}

.b-icon-check:before {
    content: var(--b-icon-check, "\f00c")
}

.b-icon-checked:before {
    content: var(--b-icon-checked, "\f14a")
}

.b-icon-unchecked:before {
    content: var(--b-icon-unchecked, "\f0c8")
}

.b-icon-radio:before {
    content: var(--b-icon-radio, "\f111")
}

.b-icon-radio-unchecked:before {
    content: var(--b-icon-radio-unchecked, "\f111")
}

.b-icon-radio-checked:before {
    content: var(--b-icon-radio-checked, "\f192")
}

.b-icon-calendar:before {
    content: var(--b-icon-calendar, "\f133")
}

.b-icon-calendar-day:before {
    content: var(--b-icon-calendar-day, "\f783")
}

.b-icon-calendar-plus:before {
    content: var(--b-icon-calendar-plus, "\f271")
}

.b-icon-clock:before {
    content: var(--b-icon-clock, "\f017")
}

.b-icon-recurring:before {
    content: var(--b-icon-recurring, "\f021")
}

.b-icon-duration:before {
    content: var(--b-icon-duration, "\f254")
}

.b-icon-milestone:before {
    content: var(--b-icon-milestone, "\f219")
}

.b-icon-locked:before {
    content: var(--b-icon-locked, "\f023")
}

.b-icon-unlocked:before {
    content: var(--b-icon-unlocked, "\f09c")
}

.b-icon-user:before {
    content: var(--b-icon-user, "\f0c0")
}

.b-icon-menu:before {
    content: var(--b-icon-menu, "\f0c9")
}

.b-icon-menu-horizontal:before {
    content: var(--b-icon-menu-horizontal, "\f141")
}

.b-icon-menu-vertical:before {
    content: var(--b-icon-menu-vertical, "\f142")
}

.b-icon-info:before {
    content: var(--b-icon-info, "\f129")
}

.b-icon-sub-menu:before {
    content: var(--b-widget-sub-menu-icon)
}

.b-icon-star:before {
    content: var(--b-icon-star, "\f005")
}

.b-icon-warning:before {
    content: var(--b-icon-warning, "\f071")
}

.b-icon-columns:before {
    content: var(--b-icon-columns, "\f0db")
}

.b-icon-picker:before {
    content: var(--b-icon-picker, "\f0d7");
    transition: rotate .2s
}

.b-icon-picker-rotated:before {
    content: var(--b-icon-picker-rotated, "\f0d7");
    rotate: 180deg;
    transition: rotate .2s
}

.b-icon-resize-horizontal:before {
    content: var(--b-icon-resize-horizontal, "\f337")
}

.b-icon-fullscreen:before {
    content: var(--b-icon-fullscreen, "\f0b2")
}

.b-icon-cog:before {
    content: var(--b-icon-cog, "\f013")
}

:is(.b-linux, .b-windows) .b-icon-cog:before {
    vertical-align: middle
}

.b-icon-file-download:before {
    content: var(--b-icon-file-download, "\f56d")
}

.b-icon-sync:before {
    content: var(--b-icon-sync, "\f2f1")
}

.b-icon-bad-mood-emoji:before {
    content: var(--b-icon-bad-mood-emoji, "\f119")
}

.b-icon-circle:before {
    content: var(--b-icon-circle, "\f111")
}

.b-icon-square:before {
    content: var(--b-icon-square, "\f0c8")
}

.b-icon-merge-cells:before {
    content: var(--b-icon-merge-cells, "\f5fd")
}

.b-icon-version:before {
    content: var(--b-icon-version, "\e5a0")
}

.b-icon-material:before {
    content: var(--b-icon-material, "\e4e6")
}

.b-icon-cost:before {
    content: var(--b-icon-cost, "\f81d")
}

.b-icon-paper-plane:before {
    content: var(--b-icon-paper-plane, "\f1d8")
}

.b-icon-robot:before {
    content: var(--b-icon-robot, "\f544")
}

.b-icon-mic:before {
    content: var(--b-icon-mic, "\f130")
}

.b-icon-play:before {
    content: var(--b-icon-play, "\f04b")
}

.b-icon-stop:before {
    content: var(--b-icon-stop, "\f04d")
}

.b-icon-message:before {
    content: var(--b-icon-message, "\f27a")
}

.b-icon-volume-high:before {
    content: var(--b-icon-volume-high, "\f028")
}

.b-icon-thumbs-up:before {
    content: var(--b-icon-thumbs-up, "\f164")
}

.b-icon-thumbs-down:before {
    content: var(--b-icon-thumbs-down, "\f165")
}

.b-icon-up:before {
    content: var(--b-icon-up, "\f062")
}

.b-icon-down:before {
    content: var(--b-icon-down, "\f063")
}

.b-icon-left:before {
    content: var(--b-icon-left, "\f060")
}

.b-icon-right:before {
    content: var(--b-icon-right, "\f061")
}

.b-icon-angle-left:before {
    content: var(--b-icon-angle-left, "\f104")
}

.b-icon-angle-right:before {
    content: var(--b-icon-angle-right, "\f105")
}

.b-icon-before:before {
    content: var(--b-icon-before, "\f053")
}

.b-icon-previous:before {
    content: var(--b-icon-previous, "\f053")
}

.b-icon-after:before {
    content: var(--b-icon-after, "\f054")
}

.b-icon-next:before {
    content: var(--b-icon-next, "\f054")
}

.b-icon-move-left-right:before {
    content: var(--b-icon-move-left-right, "\f337")
}

.b-icon-move-up-down:before {
    content: var(--b-icon-move-up-down, "\f338")
}

.b-icon-circle-arrow-up:before {
    content: var(--b-icon-circle-arrow-up, "\f0aa")
}

.b-icon-column-move-left:before {
    content: var(--b-icon-column-move-left, "\f0a8")
}

.b-icon-column-move-right:before {
    content: var(--b-icon-column-move-right, "\f0a9")
}

.b-icon-hide-column:before {
    content: var(--b-icon-hide-column, "\f057")
}

.b-icon-column-pin:before {
    content: var(--b-icon-column-pin, "\f08d")
}

.b-icon-column-unpin:before {
    content: var(--b-icon-column-unpin, "\e68f")
}

.b-icon-sort:before {
    content: var(--b-icon-sort, "\f0dc")
}

.b-icon-sort-asc:before {
    content: var(--b-icon-sort-asc, "\f15e")
}

.b-icon-sort-desc:before {
    content: var(--b-icon-sort-desc, "\f15d")
}

.b-icon-sorted-asc:before {
    content: var(--b-icon-sorted-asc, "\f062")
}

.b-icon-group-asc:before {
    content: var(--b-icon-group-asc, "\f885")
}

.b-icon-group-desc:before {
    content: var(--b-icon-group-desc, "\f160")
}

.b-icon-group-collapse:before {
    content: var(--b-icon-group-collapse, "\f056")
}

.b-icon-group-expand:before {
    content: var(--b-icon-group-expand, "\f055")
}

.b-icon-grouped-asc:before {
    content: var(--b-icon-grouped-asc, "\f012")
}

.b-icon-tree-expand:before {
    content: var(--b-icon-tree-expand, "\f105")
}

.b-icon-tree-collapse:before {
    content: var(--b-icon-tree-collapse, "\f107")
}

.b-icon-tree-folder:before {
    content: var(--b-icon-tree-folder, "\f07b")
}

.b-icon-tree-folder-open:before {
    content: var(--b-icon-tree-folder-open, "\f07c")
}

.b-icon-tree-leaf:before {
    content: var(--b-icon-tree-leaf, "\f111")
}

.b-icon-expand-gridregion:before {
    content: var(--b-icon-expand-gridregion, "\f054")
}

.b-icon-collapse-gridregion:before {
    content: var(--b-icon-collapse-gridregion, "\f053")
}

.b-icon-lock-row:before {
    content: var(--b-icon-lock-row, "\e73a")
}

.b-icon-unlock-row:before {
    content: var(--b-icon-unlock-row, "\e73b")
}

.b-icon-unassign:before {
    content: var(--b-icon-unassign, "\f506")
}

.b-icon-valid:before {
    content: var(--b-icon-valid, "\f00c")
}

.b-icon-invalid:before {
    content: var(--b-icon-invalid, "\f05e")
}

.b-icon-checking:before {
    content: var(--b-icon-checking, "\f110")
}

.b-icon-expand-resource:before {
    content: var(--b-icon-expand-resource, "\f103")
}

.b-icon-note:before {
    content: var(--b-icon-note, "\f249")
}

.b-icon-advanced:before {
    content: var(--b-icon-advanced, "\f085")
}

.b-icon-palette:before {
    content: var(--b-icon-palette, "\f53f")
}

.b-icon-renumber:before {
    content: var(--b-icon-renumber, "\f884")
}

.b-icon-indent:before {
    content: var(--b-icon-indent, "\f03c")
}

.b-icon-outdent:before {
    content: var(--b-icon-outdent, "\f03b")
}

.b-icon-subtask:before {
    content: var(--b-icon-subtask, "\e476")
}

.b-icon-predecessor:before {
    content: var(--b-icon-predecessor, "\e477")
}

.b-icon-successor:before {
    content: var(--b-icon-successor, "\e47a")
}

.b-icon-link:before {
    content: var(--b-icon-link, "\f0c1")
}

.b-icon-unlink:before {
    content: var(--b-icon-unlink, "\f127")
}

.b-icon-calendar-days:before {
    content: var(--b-icon-calendar-days, "\f073")
}

.b-icon-calendar-week:before {
    content: var(--b-icon-calendar-week, "\f784")
}

.b-icon-bold:before {
    content: var(--b-icon-bold, "\f032")
}

.b-icon-underline:before {
    content: var(--b-icon-underline, "\f0cd")
}

.b-icon-italic:before {
    content: var(--b-icon-italic, "\f033")
}

.b-icon-clock-live {
    background-color: currentColor;
    border-radius: 50%;
    width: 1em;
    height: 1em;
    animation-delay: 0s;
    display: grid
}

.b-icon-clock-live:before,
.b-icon-clock-live:after {
    grid-area: 1 / 1 / 1 / 1;
    position: relative;
    font-size: 1em !important;
    content: "";
    width: .1em !important;
    left: .44em;
    background: #fff;
    border-radius: .5em
}

.b-icon-clock-live:before {
    top: .15em;
    height: .4em !important;
    transform-origin: .05em .35em;
    animation: b-anim-rotate 6s infinite linear;
    animation-play-state: paused;
    animation-delay: inherit
}

.b-icon-clock-live:after {
    top: .22em;
    height: .33em;
    transform-origin: .05em .3em;
    animation: b-anim-rotate 72s infinite linear;
    animation-play-state: paused;
    animation-delay: inherit
}

.b-icon-chart:before {
    content: var(--b-icon-chart, "\f201")
}

.b-icon-settings:before {
    content: var(--b-icon-settings, "\f013")
}

.b-icon-spinner:before {
    content: var(--b-icon-spinner, "\f110");
    animation: b-anim-rotate 2s infinite linear
}

@keyframes b-anim-rotate {
    0% {
        rotate: 0deg
    }

    to {
        rotate: 360deg
    }
}

:root,
:host {
    --b-gripper-edge-size: 1em;
    --b-gripper-horz-cursor: ns-resize;
    --b-gripper-border: 1px solid rgba(0, 0, 0, .3);
    --b-gripper-horz-edge-height: var(--b-gripper-edge-size);
    --b-gripper-horz-height: .25em;
    --b-gripper-horz-width: 1.2em;
    --b-gripper-horz-offset: .4em;
    --b-gripper-horz-transition: opacity .2s, margin-inline-start .2s, width .2s;
    --b-gripper-vert-cursor: ew-resize;
    --b-gripper-vert-gradient: repeating-linear-gradient(90deg, rgba(0, 0, 0, .5), rgba(255, 255, 255, .8) 3px);
    --b-gripper-vert-edge-width: var(--b-gripper-edge-size);
    --b-gripper-vert-width: calc(var(--b-gripper-vert-edge-width) / 2);
    --b-gripper-vert-height: 12px;
    --b-gripper-vert-offset: 4px;
    --b-gripper-vert-transition: opacity .2s, margin-top .2s, height .2s
}

.b-gripper {
    position: absolute
}

.b-gripper:after {
    content: " " / "";
    position: absolute;
    opacity: 0
}

.b-hover-top .b-gripper.b-gripper-horz,
.b-hover-bottom .b-gripper.b-gripper-horz {
    cursor: var(--b-gripper-horz-cursor);
    height: var(--b-gripper-horz-edge-height);
    left: 0;
    right: 0
}

.b-hover-bottom .b-gripper.b-gripper-horz {
    bottom: 0
}

.b-gripper.b-gripper-horz:after {
    width: 0;
    left: 50%;
    margin-inline-start: 0;
    border-top: var(--b-gripper-border);
    border-bottom: var(--b-gripper-border);
    height: var(--b-gripper-horz-height)
}

.b-hover-left .b-gripper.b-gripper-vert,
.b-hover-right .b-gripper.b-gripper-vert {
    top: 0;
    bottom: 0;
    cursor: var(--b-gripper-vert-cursor);
    width: var(--b-gripper-vert-edge-width)
}

.b-hover-right .b-gripper.b-gripper-vert {
    right: 0
}

.b-hover-left .b-gripper.b-gripper-vert {
    left: 0
}

.b-gripper.b-gripper-vert:after {
    height: 0;
    top: 50%;
    margin-top: 0;
    background: var(--b-gripper-vert-gradient);
    width: var(--b-gripper-vert-width)
}

.b-hover-anim.b-hover-edge .b-gripper-horz:after {
    opacity: 1;
    margin-inline-start: calc(var(--b-gripper-horz-width) / -2);
    width: var(--b-gripper-horz-width);
    transition: var(--b-gripper-horz-transition)
}

.b-hover-top .b-gripper-horz:after {
    top: var(--b-gripper-horz-offset)
}

.b-hover-bottom .b-gripper-horz:after {
    bottom: var(--b-gripper-horz-offset)
}

.b-hover-anim.b-hover-edge .b-gripper-vert:after {
    opacity: 1;
    margin-top: calc(var(--b-gripper-vert-height) / -2);
    height: var(--b-gripper-vert-height);
    transition: var(--b-gripper-vert-transition)
}

.b-hover-left .b-gripper-vert:after {
    left: var(--b-gripper-vert-offset)
}

.b-hover-right .b-gripper-vert:after {
    right: var(--b-gripper-vert-offset)
}

.b-sftime-picker .b-panel-content {
    background: var(--b-panel-background);
    align-items: stretch;
    padding: .5em;
    gap: .5em
}

.b-sftime-picker .b-panel-content .b-widget {
    margin: 0;
    flex: 0 0 auto;
    width: auto
}

.b-sftime-picker .b-panel-content .b-number-field {
    height: 100%
}

.b-sftime-picker .b-panel-content .b-number-field>.b-label {
    clip-path: polygon(0 0);
    position: absolute;
    contain: strict
}

.b-sftime-picker .b-panel-content .b-number-field:not(.b-first-visible-child):before {
    content: ":";
    align-self: center;
    margin-inline-end: .5em;
    font-weight: 700
}

.b-sftime-picker .b-panel-content .b-number-field input {
    width: 3em
}

.b-sftime-picker .b-panel-content .b-button {
    flex: 0 0 3em;
    padding: 0
}

.b-sftime-picker .b-panel-content .b-button label {
    text-overflow: clip
}

:root,
:host {
    --b-button-box-shadow: null;
    --b-button-text-align: center;
    --b-button-disabled-opacity: .4;
    --b-button-icon-only-border-radius: 50%;
    --b-button-font-weight: 500;
    --b-button-gap: .5em;
    --b-button-height: 3em;
    --b-button-icon-padding-inline: var(--b-widget-padding);
    --b-button-end-icon-padding-inline: var(--b-widget-padding);
    --b-button-menu-padding-inline: var(--b-widget-padding);
    --b-button-opacity: 1;
    --b-button-padding-inline: var(--b-widget-padding);
    --b-button-pressed-box-shadow: none;
    --b-button-focus-outline-width: var(--b-widget-focus-outline-width);
    --b-button-focus-outline-offset: calc(var(--b-widget-focus-outline-width) * -1);
    --b-button-border-radius: var(--b-widget-border-radius);
    --b-button-elevated-active-box-shadow: var(--b-elevation-1);
    --b-button-elevated-box-shadow: var(--b-elevation-1);
    --b-button-elevated-focus-box-shadow: var(--b-elevation-1);
    --b-button-elevated-hover-box-shadow: var(--b-elevation-2);
    --b-button-filled-color: var(--b-text-5);
    --b-button-filled-hover-box-shadow: none;
    --b-button-tonal-hover-box-shadow: none;
    --b-button-outlined-border-width: 1px;
    --b-button-outlined-border-color: var(--b-border-6);
    --b-button-outlined-disabled-background: transparent;
    --b-button-outlined-disabled-border-color: var(--b-border-6);
    --b-button-outlined-background: transparent;
    --b-button-outlined-pressed-color: unset;
    --b-button-type-text-background: transparent;
    --b-button-type-text-disabled-background: transparent;
    --b-button-disabled-background: var(--b-widget-disabled-background);
    --b-button-disabled-color: var(--b-neutral-50);
    --b-button-type-text-focused-background: transparent;
    --b-button-type-text-text-only-border-radius: unset;
    --b-button-focus-outline-color: var(--b-primary)
}

.b-button {
    display: flex;
    align-items: center;
    position: relative;
    transition-property: box-shadow, font-weight, background, color, border, border-radius;
    transition-duration: var(--b-default-transition-duration);
    overflow: hidden;
    flex-shrink: 0;
    font-family: inherit;
    text-decoration: none;
    padding-block: 0;
    contain: style;
    --b-button-border-width: var(--b-button-idle-border-width);
    --b-button-border-color: var(--b-button-idle-border-color);
    --b-widget-font-weight: var(--b-button-font-weight);
    --bi-button-cursor: pointer;
    background: var(--b-button-background);
    border: var(--b-button-border-width) solid var(--b-button-border-color);
    border-radius: var(--b-button-border-radius);
    box-shadow: var(--b-button-box-shadow);
    color: var(--bi-button-applied-color, var(--b-button-color));
    cursor: var(--bi-button-cursor);
    gap: var(--b-button-gap);
    height: var(--b-button-height);
    max-height: var(--b-button-max-height);
    opacity: var(--b-button-opacity);
    padding-inline: var(--b-button-padding-inline);
    justify-content: var(--b-button-text-align)
}

.b-button label,
.b-button i {
    white-space: nowrap;
    text-overflow: ellipsis;
    transition: color .2s;
    z-index: 1;
    margin: 0;
    cursor: var(--bi-button-cursor)
}

.b-button label {
    overflow: hidden
}

.b-button i {
    flex-shrink: 0
}

.b-button.b-button-elevated {
    --b-button-background: var(--b-button-elevated-background, var(--b-primary-98));
    --b-button-hover-background: var(--b-button-elevated-hover-background, var(--b-primary-95));
    --b-button-focused-background: var(--b-button-elevated-focused-background, var(--b-primary-95));
    --b-button-active-background: var(--b-button-elevated-active-background, var(--b-primary-95));
    --b-button-pressed-background: var(--b-button-elevated-pressed-background, var(--b-primary-90));
    --b-button-pressed-hover-background: var(--b-button-elevated-pressed-hover-background, var(--b-primary-92));
    --b-button-box-shadow: var(--b-button-elevated-box-shadow);
    --b-button-hover-box-shadow: var(--b-button-elevated-hover-box-shadow);
    --b-button-focus-box-shadow: var(--b-button-elevated-focus-box-shadow);
    --b-button-active-box-shadow: var(--b-button-elevated-active-box-shadow);
    --b-button-color: var(--b-button-elevated-color, var(--b-primary-40));
    --b-button-split-color: var(--b-button-elevated-split-color, color-mix(in srgb, var(--b-button-color), transparent 70%))
}

.b-button.b-button-filled,
.b-button.b-raised {
    --b-button-background: var(--b-button-filled-background, var(--b-primary-45));
    --b-button-hover-background: var(--b-button-filled-hover-background, var(--b-primary-55));
    --b-button-focused-background: var(--b-button-filled-focused-background, var(--b-primary-60));
    --b-button-active-background: var(--b-button-filled-active-background, var(--b-primary-60));
    --b-button-pressed-background: var(--b-button-filled-pressed-background, var(--b-primary-65));
    --b-button-pressed-hover-background: var(--b-button-filled-pressed-hover-background, var(--b-primary-70));
    --b-button-color: var(--b-button-filled-color);
    --b-button-hover-box-shadow: var(--b-button-filled-hover-box-shadow);
    --b-button-split-color: var(--b-button-filled-split-color, var(--b-button-color))
}

.b-button.b-button-tonal {
    --b-button-background: var(--b-button-tonal-background, var(--b-primary-95));
    --b-button-hover-background: var(--b-button-tonal-hover-background, var(--b-primary-90));
    --b-button-focused-background: var(--b-button-tonal-focused-background, var(--b-primary-90));
    --b-button-active-background: var(--b-button-tonal-active-background, var(--b-primary-85));
    --b-button-pressed-background: var(--b-button-tonal-pressed-background, var(--b-primary-80));
    --b-button-pressed-hover-background: var(--b-button-tonal-pressed-hover-background, var(--b-primary-85));
    --b-button-hover-box-shadow: var(--b-button-tonal-hover-box-shadow);
    --b-button-color: var(--b-button-tonal-color, var(--b-primary-30));
    --b-button-split-color: var(--b-button-tonal-split-color, color-mix(in srgb, var(--b-button-tonal-color, var(--b-primary-30)), transparent 70%));
    --b-button-idle-border-width: var(--b-button-tonal-border-width);
    --b-button-idle-border-color: var(--b-button-tonal-border-color);
    --b-button-focus-border-color: var(--b-button-tonal-border-color);
    --b-button-hover-border-color: var(--b-button-tonal-border-color);
    --b-button-disabled-border-color: var(--b-button-tonal-border-color)
}

.b-button.b-button-outlined {
    --b-button-background: var(--b-button-outlined-background);
    --b-button-hover-background: var(--b-button-outlined-hover-background, var(--b-primary-95));
    --b-button-focused-background: var(--b-button-outlined-focused-background, var(--b-primary-90));
    --b-button-active-background: var(--b-button-outlined-active-background, var(--b-primary-90));
    --b-button-pressed-background: var(--b-button-outlined-pressed-background, var(--b-primary-90));
    --b-button-pressed-hover-background: var(--b-button-outlined-pressed-hover-background, var(--b-primary-92));
    --b-button-color: var(--b-button-outlined-color, var(--b-primary-25));
    --b-button-pressed-color: var(--b-button-outlined-pressed-color);
    --b-button-idle-border-width: var(--b-button-outlined-border-width);
    --b-button-idle-border-color: var(--b-button-outlined-border-color);
    --b-button-focus-border-color: var(--b-button-outlined-focus-border-color, var(--b-primary));
    --b-button-hover-border-color: var(--b-button-outlined-hover-border-color, var(--b-primary-80));
    --b-button-disabled-background: var(--b-button-outlined-disabled-background);
    --b-button-disabled-border-color: var(--b-button-outlined-disabled-border-color);
    --b-button-split-color: var(--b-button-outlined-split-color, var(--b-button-border-color))
}

.b-button.b-button-text,
.b-button.b-transparent {
    --b-button-background: var(--b-button-type-text-background);
    --b-button-hover-background: var(--b-button-type-text-hover-background, var(--b-primary-95));
    --b-button-focused-background: var(--b-button-type-text-focused-background);
    --b-button-active-background: var(--b-button-type-text-active-background, var(--b-primary-90));
    --b-button-pressed-background: var(--b-button-type-text-pressed-background, var(--b-primary-90));
    --b-button-pressed-hover-background: var(--b-button-type-text-pressed-hover-background, var(--b-primary-92));
    --b-button-color: var(--b-button-type-text-color, var(--b-primary-20));
    --b-button-disabled-background: var(--b-button-type-text-disabled-background);
    --b-button-split-color: var(--b-button-type-text-split-color, var(--b-button-color))
}

:is(.b-button.b-button-text, .b-button.b-transparent).b-split-button .b-button-menu-icon {
    align-self: center
}

:is(.b-button.b-button-text, .b-button.b-transparent).b-text:not(:has(.b-button-icon)) {
    border-radius: var(--b-button-type-text-text-only-border-radius, var(--b-button-border-radius))
}

.b-button:focus-visible {
    outline-offset: var(--b-button-focus-outline-offset);
    outline: var(--b-button-focus-outline-color) solid var(--b-button-focus-outline-width)
}

.b-button.b-focus,
.b-button:focus-visible {
    --b-button-background: var(--b-button-focused-background);
    --b-button-box-shadow: var(--b-button-focus-box-shadow);
    --b-button-border-color: var(--b-button-focus-border-color)
}

:is(.b-button:hover, .b-button .b-hover):where(:not(:active, .b-disabled)) {
    --b-button-background: var(--b-button-hover-background);
    --b-button-box-shadow: var(--b-button-hover-box-shadow);
    --b-button-border-color: var(--b-button-hover-border-color)
}

.b-button.b-active,
.b-button:active {
    --b-button-background: var(--b-button-active-background);
    --b-button-box-shadow: var(--b-button-active-box-shadow)
}

.b-button.b-rotate-vertical {
    padding-inline: 0;
    padding-block: var(--b-button-padding-inline);
    width: var(--b-button-height);
    height: auto
}

.b-button.b-rotate-vertical label {
    writing-mode: vertical-lr
}

.b-button.b-rotate-left {
    flex-direction: column-reverse
}

.b-button.b-rotate-left label {
    rotate: 180deg
}

.b-button.b-rotate-left i {
    rotate: 270deg
}

.b-button.b-rotate-right {
    flex-direction: column
}

.b-button.b-rotate-right i {
    rotate: 90deg
}

.b-button.b-pressed {
    --bi-button-applied-color: var(--b-button-pressed-color);
    --b-button-background: var(--b-button-pressed-background);
    --b-button-box-shadow: var(--b-button-pressed-box-shadow)
}

.b-button.b-pressed:hover {
    --b-button-background: var(--b-button-pressed-hover-background)
}

.b-button.b-icon-align-start {
    --b-button-padding-inline: var(--b-button-icon-padding-inline)
}

.b-button.b-icon-align-end {
    --b-button-padding-inline: var(--b-button-end-icon-padding-inline)
}

.b-button.b-icon-align-end .b-button-icon {
    order: 1
}

.b-button.b-disabled {
    --b-button-color: var(--b-button-disabled-color);
    --b-button-background: var(--b-button-disabled-background);
    --b-button-opacity: var(--b-button-disabled-opacity);
    --b-button-box-shadow: none;
    --b-button-border-color: var(--b-button-disabled-border-color);
    --bi-button-cursor: normal
}

.b-button:not(.b-text, .b-has-menu-icon, .b-tab) {
    aspect-ratio: 1 / 1;
    --b-button-padding-inline: 0;
    --b-button-border-radius: var(--b-button-icon-only-border-radius)
}

.b-button.b-has-menu-icon:not(.b-text) {
    --b-button-padding-inline: var(--b-button-menu-padding-inline)
}

.b-button .b-button-menu-icon:before {
    transition: rotate .2s
}

.b-button.b-menu-visible .b-button-menu-icon:before {
    rotate: 180deg
}

.b-button-custom-content {
    display: flex;
    align-items: center
}

.b-using-keyboard .b-button-key {
    text-decoration: underline
}

.b-split-button {
    padding-inline-end: 0
}

.b-split-button .b-button-menu-icon {
    display: grid;
    place-content: center;
    align-self: stretch;
    transition: border .2s;
    padding-inline: var(--b-button-padding-inline);
    border-inline-start: 1px solid var(--b-button-split-color)
}

:root,
:host {
    --b-tab-border-radius: 0;
    --b-tab-indicator-border-radius: 0;
    --b-tab-font-weight: 500;
    --b-tab-padding: 0 var(--b-widget-padding-large);
    --b-tab-icon-only-padding: 0 var(--b-widget-padding);
    --b-tab-indicator-display: block;
    --b-tab-hover-indicator-opacity: 0;
    --b-tab-background: transparent;
    --b-tab-color: var(--b-neutral-40);
    --b-tab-close-color: var(--b-neutral-50);
    --b-tab-close-hover-color: var(--b-neutral-30);
    --b-tab-active-background: var(--b-tab-background);
    --b-tab-border: null;
    --b-tab-active-border: null;
    --b-tab-hover-border: var(--b-tab-border);
    --b-tab-label-position: null;
    --b-tab-indicator-height: .2em;
    --b-tab-hover-color: var(--b-neutral-20);
    --b-tab-active-tab-color: var(--b-neutral-0);
    --b-tab-invalid-indicator-color: var(--b-color-red);
    --b-tab-indicator-hidden-color: transparent;
    --bi-tab-indicator-opacity: 0
}

.b-button.b-tab {
    border: var(--b-tab-border);
    --b-button-background: var(--b-tab-background);
    --b-button-border-radius: var(--b-tab-border-radius);
    --b-button-hover-background: var(--b-tab-hover-background, var(--b-primary-95));
    --b-button-focused-background: var(--b-tab-focus-background, var(--b-primary-90));
    --b-button-color: var(--b-tab-color);
    --b-button-font-weight: var(--b-tab-font-weight);
    --b-button-padding: var(--b-tab-padding);
    --b-tab-indicator-applied-color: var(--b-tab-indicator-hidden-color, transparent)
}

.b-button.b-tab.b-active {
    --b-tab-border: var(--b-tab-active-border);
    --b-button-background: var(--b-tab-active-background);
    --b-tab-color: var(--b-tab-active-tab-color);
    --b-tab-indicator-applied-color: var(--b-tab-indicator-color);
    --bi-tab-indicator-opacity: 1
}

.b-button.b-tab.b-invalid {
    --b-tab-indicator-color: var(--b-tab-invalid-indicator-color);
    --bi-tab-indicator-opacity: 1
}

.b-button.b-tab:hover:not(.b-active) {
    --b-tab-color: var(--b-tab-hover-color);
    --b-tab-border: var(--b-tab-hover-border);
    --b-tab-indicator-applied-color: var(--b-tab-hover-indicator-color, transparent);
    --bi-tab-indicator-opacity: var(--b-tab-hover-indicator-opacity);
    --b-button-background: var(--b-tab-hover-background, var(--b-primary-95))
}

.b-button.b-tab:not(.b-text) {
    --b-button-icon-padding: var(--b-tab-icon-only-padding)
}

.b-button.b-tab label {
    display: grid;
    place-items: center;
    align-self: stretch;
    position: var(--b-tab-label-position)
}

.b-tab-indicator {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    transition: opacity .2s, background .2s;
    opacity: var(--bi-tab-indicator-opacity);
    display: var(--b-tab-indicator-display);
    background: var(--b-tab-indicator-applied-color, var(--b-tab-active-tab-color));
    height: var(--b-tab-indicator-height);
    border-radius: var(--b-tab-indicator-border-radius)
}

.b-tab-close {
    font-size: .8em;
    cursor: pointer;
    color: var(--b-tab-close-color)
}

.b-tab-close:hover {
    color: var(--b-tab-close-hover-color)
}

.b-tab.b-drag-proxy {
    transition: background-color .3s;
    background-color: var(--b-toolbar-background);
    opacity: .9
}

:root,
:host {
    --b-chat-button-color: #FFF
}

.b-bryntum {
    --b-chat-button-background: var(--b-primary)
}

.b-chat-button.b-button {
    position: absolute;
    bottom: 1em;
    inset-inline-end: 1em;
    border: none;
    border-radius: 50%;
    font-size: 1em;
    width: 2.75em;
    height: 2.75em;
    display: grid;
    place-items: center;
    padding: 0;
    margin: 0;
    box-shadow: 0 2px 8px #63636333;
    scale: 1;
    transition: scale .2s;
    min-height: 0;
    z-index: 10000;
    outline: none;
    color: var(--b-chat-button-color);
    background: var(--b-chat-button-background)
}

.b-chat-button.b-button .b-button-menu-icon {
    display: none
}

.b-chat-button.b-button i {
    position: relative;
    display: grid;
    place-items: center;
    font-size: 1.3em
}

.b-chat-button.b-button:hover {
    scale: 1.1
}

.b-chat-button.b-button:active {
    scale: 1
}

.b-using-keyboard .b-chat-button.b-button:focus:not(:active) {
    box-shadow: 0 0 .8em #3183fe
}

.b-chat-button.b-button.b-chat-button-animating i:before {
    animation: b-anim-chat-button-icon-transition .2s
}

.b-chat-button.b-button.b-chat-closed {
    --bi-content: "\f27a"
}

.b-chat-button.b-button.b-chat-closed-previous {
    --bi-previous-content: "\f27a"
}

.b-chat-button.b-button.b-chat-open {
    --bi-content: "\f00d"
}

.b-chat-button.b-button.b-chat-open-previous {
    --bi-previous-content: "\f00d"
}

.b-chat-button.b-button.b-voice-speaking {
    --bi-content: "\e473"
}

.b-chat-button.b-button.b-voice-speaking i {
    animation: b-anim-voice-speaking .7s infinite
}

.b-chat-button.b-button.b-voice-speaking-previous {
    --bi-previous-content: "\e473"
}

.b-chat-button.b-button.b-voice-waiting {
    --bi-content: "\f110";
    animation: b-anim-rotate 2s infinite linear
}

.b-chat-button.b-button.b-voice-waiting-previous {
    --bi-previous-content: "\f110"
}

.b-chat-button.b-button.b-voice-active {
    --bi-content: "\f130"
}

.b-chat-button.b-button.b-voice-active i {
    animation: b-anim-voice-active .9s ease-out infinite
}

.b-chat-button.b-button.b-voice-active-previous {
    --bi-previous-content: "\f130"
}

.b-chat-button.b-button.b-voice-inactive {
    --bi-content: "\f130";
    background: #aaa
}

.b-chat-button.b-button.b-voice-inactive-previous {
    --bi-previous-content: "\f130"
}

.b-chat-button.b-button .b-button-icon:before {
    content: var(--bi-content)
}

@keyframes b-anim-voice-speaking {
    0% {
        transform: none;
        opacity: 1
    }

    49.9% {
        transform: none
    }

    50% {
        transform: scaleX(-1);
        opacity: .5
    }

    to {
        transform: scaleX(-1);
        opacity: 1
    }
}

@keyframes b-anim-voice-active {
    0% {
        transform: scale(1);
        opacity: 1
    }

    25% {
        transform: scale(.95)
    }

    60% {
        transform: scale(1.05);
        opacity: .8
    }

    to {
        transform: scale(1);
        opacity: 1
    }
}

@keyframes b-anim-chat-button-icon-transition {
    0% {
        font-size: 1em;
        content: var(--bi-previous-content)
    }

    50% {
        font-size: .1em
    }

    to {
        font-size: 1em;
        content: var(--bi-content)
    }
}

@starting-style {
    .b-chat-button.b-button {
        scale: 0
    }

    .b-chat-button.b-button i:after {
        opacity: 0
    }
}

:root,
:host {
    --b-chat-panel-border-radius: 1em;
    --b-chat-panel-message-them-align-self: flex-start;
    --b-chat-panel-message-them-background: var(--b-neutral-90);
    --b-chat-panel-message-them-color: var(--b-text-2);
    --b-chat-panel-intro-color: var(--b-neutral-50);
    --b-chat-panel-example-prompt-color: var(--b-neutral-70);
    --b-chat-panel-example-prompt-hover-color: var(--b-neutral-40);
    --b-chat-panel-message-us-align-self: flex-end;
    --b-chat-panel-message-us-color: #FFF;
    --b-chat-panel-message-color: var(--b-chat-panel-message-us-color);
    --b-chat-panel-tool-color: var(--b-color-lighter-gray);
    --b-chat-panel-tool-color-active: var(--b-color-gray);
    --b-chat-panel-tool-hover-color: var(--b-color-light-gray);
    --b-chat-panel-font-size: .8em;
    --b-chat-panel-loading-color: var(--b-text-3);
    --b-chat-panel-option-hover-background: color-mix(in srgb, var(--b-chat-panel-message-us-background), transparent 90%);
    --b-chat-panel-avatar-size: 5em
}

.b-internal {
    --bi-value: null
}

.b-chat-bubbles {
    display: flex;
    flex-flow: column nowrap;
    gap: .5em;
    overflow-x: clip;
    overflow-y: auto
}

.b-chat-bubbles:before {
    content: ""
}

.b-chat-bubbles .b-message {
    display: flex;
    flex-direction: column;
    gap: .2em;
    overflow: clip;
    width: 100%;
    flex-shrink: 0;
    align-self: var(--b-chat-panel-message-align-self)
}

.b-chat-bubbles .b-bubble {
    padding: .5em .75em;
    opacity: 1;
    transition: opacity .2s, translate .2s;
    translate: 0;
    z-index: 1;
    min-height: 2.5em;
    line-height: 1.5em;
    max-width: 80%;
    word-wrap: break-word;
    overflow: auto;
    border-radius: var(--b-chat-panel-border-radius);
    align-self: var(--b-chat-panel-message-align-self);
    background: var(--b-chat-panel-message-background);
    color: var(--b-chat-panel-message-color)
}

.b-chat-bubbles .b-bubble .b-aborted {
    opacity: .3
}

.b-chat-bubbles .b-bubble .b-failed {
    color: var(--b-color-red)
}

.b-chat-bubbles .b-bubble strong {
    font-weight: 600
}

.b-chat-bubbles .b-undone .b-bubble {
    opacity: .3
}

.b-chat-bubbles .b-async .b-bubble {
    width: 3.5em;
    display: flex;
    align-items: center;
    overflow: clip
}

.b-chat-bubbles .b-async .b-asyncstatus {
    font-size: .8em;
    opacity: .8;
    padding-inline-start: .2em
}

.b-chat-bubbles .b-bubble-loading {
    position: relative;
    inset-inline-start: -2em;
    width: .5em;
    height: .5em;
    border-radius: 50%;
    animation: b-anim-jumping-dots 2s infinite;
    box-shadow: 2em 0 0 0 var(--b-chat-panel-loading-color), 2.75em 0 0 0 var(--b-chat-panel-loading-color), 3.5em 0 0 0 var(--b-chat-panel-loading-color)
}

.b-chat-bubbles .b-bubble-tools {
    display: flex;
    padding-inline: .75em;
    gap: .5em;
    align-items: center;
    transition: opacity .2s, translate .2s;
    transition-delay: .2s;
    justify-content: var(--b-chat-panel-message-them-align-self)
}

.b-chat-bubbles .b-bubble-tools .b-undone-tag {
    border-radius: 1em;
    font-size: .75em;
    padding-inline: .5em;
    background: var(--b-color-red);
    color: var(--b-neutral-100)
}

.b-chat-bubbles .b-bubble-tool {
    font-size: var(--b-chat-panel-font-size);
    color: var(--b-chat-panel-tool-color)
}

.b-chat-bubbles .b-bubble-tool:hover {
    --b-chat-panel-tool-color: var(--b-chat-panel-tool-hover-color)
}

.b-chat-bubbles button.b-bubble-tool {
    cursor: pointer;
    border: none;
    background: transparent;
    padding-inline: 0
}

.b-chat-bubbles .b-timestamp {
    font-size: .7em;
    color: var(--b-chat-panel-tool-color)
}

.b-chat-bubbles .b-us {
    --b-chat-panel-message-align-self: var(--b-chat-panel-message-us-align-self);
    --b-chat-panel-message-background: var(--b-chat-panel-message-us-background, var(--b-primary));
    --b-chat-panel-message-color: var(--b-chat-panel-message-us-color)
}

.b-chat-bubbles .b-them {
    --b-chat-panel-message-align-self: var(--b-chat-panel-message-them-align-self);
    --b-chat-panel-message-background: var(--b-chat-panel-message-them-background);
    --b-chat-panel-message-color: var(--b-chat-panel-message-them-color)
}

.b-chat-bubbles .b-confidence {
    position: relative;
    width: 1em;
    height: .6em;
    border-radius: .25em;
    border: 1px solid var(--b-chat-panel-tool-color);
    overflow: clip
}

.b-chat-bubbles .b-confidence:before {
    display: block;
    position: absolute;
    content: "";
    height: 100%;
    opacity: .6;
    width: calc(var(--bi-value) * 100%);
    background: var(--b-chat-panel-tool-color)
}

.b-chat-bubbles .b-options {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .5em;
    opacity: 1;
    transition: height .2s, opacity .2s, gap .2s;
    height: auto;
    overflow: hidden;
    align-items: var(--b-chat-panel-message-us-align-self)
}

.b-chat-bubbles .b-options:has(.b-selected) {
    gap: 0
}

.b-chat-bubbles .b-options:has(.b-selected) .b-option {
    pointer-events: none
}

.b-chat-bubbles .b-options:has(.b-selected) .b-option:not(.b-selected) {
    opacity: 0;
    height: 0;
    min-height: 0;
    padding-block: 0;
    display: none;
    transition-delay: 0s
}

.b-chat-bubbles .b-option {
    background: none;
    font-size: 1em;
    padding: .5em .75em;
    opacity: 1;
    transition: opacity .2s, translate .2s, height .2s, min-height .2s, padding .2s, display .2s;
    transition-delay: .2s;
    translate: 0;
    min-height: 2.5em;
    line-height: 1.5em;
    overflow: hidden;
    transition-behavior: allow-discrete;
    interpolate-size: allow-keywords;
    border: 1px solid var(--b-chat-panel-tool-color);
    border-radius: var(--b-chat-panel-border-radius)
}

.b-chat-bubbles .b-option:not(.b-outdated):hover {
    cursor: pointer;
    background: var(--b-chat-panel-option-hover-background)
}

.b-chat-bubbles .b-option.b-selected {
    border: none;
    background: var(--b-chat-panel-message-us-background, var(--b-primary));
    color: var(--b-chat-panel-message-us-color)
}

.b-chat-bubbles .b-option:nth-child(2) {
    transition-delay: .3s
}

.b-chat-bubbles .b-option:nth-child(3) {
    transition-delay: .4s
}

.b-chat-bubbles .b-option:nth-child(4) {
    transition-delay: .5s
}

.b-chat-bubbles .b-option:nth-child(5) {
    transition-delay: .6s
}

.b-chat-bubbles .b-option:nth-child(6) {
    transition-delay: .7s
}

.b-chat-bubbles .b-option.b-outdated {
    opacity: .3;
    transition-delay: 0s
}

.b-chat-bubbles .b-bottom-anchor {
    min-height: 1px
}

@starting-style {
    .b-chat-bubbles.b-animate .b-bubble {
        opacity: 0;
        translate: 0 1em
    }

    .b-chat-bubbles.b-animate .b-bubble-tools {
        opacity: 0;
        translate: 0 -1em
    }

    .b-chat-bubbles.b-animate .b-option {
        translate: -100% 0;
        opacity: 0
    }
}

@keyframes b-anim-jumping-dots {
    0% {
        box-shadow: 2em 0 0 0 var(--b-chat-panel-loading-color), 2.75em 0 0 0 var(--b-chat-panel-loading-color), 3.5em 0 0 0 var(--b-chat-panel-loading-color)
    }

    16.667% {
        box-shadow: 2em -.5em 0 0 var(--b-chat-panel-loading-color), 2.75em 0 0 0 var(--b-chat-panel-loading-color), 3.5em 0 0 0 var(--b-chat-panel-loading-color)
    }

    33.333% {
        box-shadow: 2em 0 0 0 var(--b-chat-panel-loading-color), 2.75em 0 0 0 var(--b-chat-panel-loading-color), 3.5em 0 0 0 var(--b-chat-panel-loading-color)
    }

    50% {
        box-shadow: 2em 0 0 0 var(--b-chat-panel-loading-color), 2.75em -.5em 0 0 var(--b-chat-panel-loading-color), 3.5em 0 0 0 var(--b-chat-panel-loading-color)
    }

    66.667% {
        box-shadow: 2em 0 0 0 var(--b-chat-panel-loading-color), 2.75em 0 0 0 var(--b-chat-panel-loading-color), 3.5em 0 0 0 var(--b-chat-panel-loading-color)
    }

    83.333% {
        box-shadow: 2em 0 0 0 var(--b-chat-panel-loading-color), 2.75em 0 0 0 var(--b-chat-panel-loading-color), 3.5em -.5em 0 0 var(--b-chat-panel-loading-color)
    }

    to {
        box-shadow: 2em 0 0 0 var(--b-chat-panel-loading-color), 2.75em 0 0 0 var(--b-chat-panel-loading-color), 3.5em 0 0 0 var(--b-chat-panel-loading-color)
    }
}

.b-chat-panel-mixin.b-panel>header {
    gap: .5em
}

.b-chat-panel-mixin.b-panel>header:after {
    display: none
}

.b-chat-panel-mixin.b-panel>header .b-tool {
    font-size: 1.2em
}

.b-float-root>.b-chat-panel-mixin.b-panel.b-floating {
    --b-aligned-above-floating-box-shadow: var(--b-widget-floating-box-shadow)
}

.b-chat-panel-mixin.b-panel .b-chat-panel-mixin-content {
    --b-panel-with-header-padding: 0
}

.b-chat-panel-mixin.b-panel .b-chat-panel-mixin-content>div {
    padding-inline: 1em
}

.b-chat-panel-mixin.b-panel .b-chat-bubbles {
    padding-top: 1em;
    flex: 1
}

.b-chat-panel-mixin.b-panel .b-intro {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .5em;
    text-align: center;
    margin-bottom: 1em;
    color: var(--b-chat-panel-intro-color)
}

.b-chat-panel-mixin.b-panel .b-intro div {
    line-height: 1.5em
}

.b-chat-panel-mixin.b-panel .b-intro .b-chat-avatar {
    border-radius: 50%;
    margin-bottom: 1em;
    background: var(--b-primary);
    width: var(--b-chat-panel-avatar-size)
}

.b-chat-panel-mixin.b-panel .b-example-prompt {
    font-size: .9em;
    font-style: italic;
    cursor: pointer;
    color: var(--b-chat-panel-example-prompt-color)
}

.b-chat-panel-mixin.b-panel .b-example-prompt:before {
    content: '"'
}

.b-chat-panel-mixin.b-panel .b-example-prompt:after {
    content: '"'
}

.b-chat-panel-mixin.b-panel .b-example-prompt:hover {
    color: var(--b-chat-panel-example-prompt-hover-color)
}

.b-chat-panel-mixin.b-panel .b-text-field {
    padding-bottom: 1em
}

.b-chat-panel-mixin.b-panel .b-text-field .b-field-inner {
    border-radius: var(--b-chat-panel-border-radius)
}

.b-chat-panel-mixin.b-panel .b-text-field .b-field-trigger {
    color: var(--b-chat-panel-tool-color)
}

.b-chat-panel-mixin.b-panel .b-text-field .b-field-trigger:before {
    font-size: 1.5em
}

.b-chat-panel-mixin.b-panel .b-text-field .b-field-trigger:hover {
    color: var(--b-chat-panel-tool-hover-color)
}

.b-chat-panel-mixin.b-panel .b-text-field .b-field-trigger.b-send-chat-msg {
    transition: color .2s
}

.b-using-keyboard :is(.b-chat-panel-mixin.b-panel .b-text-field .b-field-trigger).b-icon-mic:focus {
    padding-inline-end: 0;
    margin-inline-end: .6em;
    outline-offset: .4em
}

.b-chat-panel-mixin.b-panel .b-text-field .b-send-chat-msg:not(.b-disabled) {
    color: var(--b-chat-panel-tool-color-active)
}

.b-is-speaking button.b-bubble-tool[data-ref=readAloud],
.b-aichat-panel-mixin.b-panel .b-text-field .b-is-recording,
.b-aichat-panel-mixin.b-panel .b-text-field .b-is-recording:hover {
    color: #00f
}

.b-bubble ul,
.b-bubble ol {
    padding-inline-start: 1em
}

.b-bubble>p:first-child {
    margin-block-start: 0
}

.b-bubble>p:last-child {
    margin-block-end: 0
}

.b-aichat-panel-mixin .b-panel-header .b-tool[data-ref=offline] {
    color: #f99d9d
}

.b-panel.b-checkbox-group .b-fieldset-content.b-inline {
    flex-wrap: wrap
}

.b-panel.b-checkbox-group .b-fieldset-content.b-inline label {
    white-space: nowrap
}

.b-panel.b-checkbox-group.b-invalid .b-checkbox label:before {
    outline-offset: 2px;
    outline: 1px solid var(--b-color-red)
}

:root,
:host {
    --b-container-gap: var(--b-widget-gap);
    --b-container-padding: 0;
    --b-container-color: var(--b-widget-color);
    --b-divider-font-size: .9em;
    --b-divider-line-color: var(--b-border-5);
    --b-divider-text-color: var(--b-border-4);
    --b-divider-font-weight: null;
    --b-dividier-margin-block: 1em
}

.b-internal {
    --bi-container-columns: null
}

.b-container {
    min-width: 0;
    min-height: 0;
    color: var(--b-container-color);
    gap: var(--b-container-gap);
    padding: var(--b-container-padding);
    align-content: var(--b-container-align-content)
}

.b-container:where(:not(.b-panel)) {
    display: grid;
    grid-auto-rows: min-content
}

.b-container:where(:not(.b-panel)).b-columns {
    grid-template-columns: repeat(var(--bi-container-columns), auto)
}

.b-container.b-vbox {
    display: flex;
    flex-direction: column
}

.b-container.b-vbox.b-single-child:not(.b-toolbar-content)>.b-container {
    align-self: stretch;
    flex: 1 1 auto
}

.b-container.b-hbox {
    display: flex;
    flex-flow: row nowrap
}

.b-container.b-hbox.b-single-child:not(.b-toolbar-content)>.b-container {
    align-self: stretch;
    flex: 1 1 auto
}

.b-container.b-field-align-end .b-field-inner {
    justify-content: flex-end;
    justify-self: end
}

.b-content-element:has(>.b-splitter) {
    gap: 0
}

.b-content-element:has(>.b-splitter.b-moving) * {
    transition: none !important
}

:is(.b-container, .b-panel).b-label-align-before {
    --b-field-align-before-label-column: span 1;
    --b-field-align-before-field-column: span 1
}

.b-container.b-label-align-before,
.b-panel.b-label-align-before>.b-panel-body-wrap>.b-panel-content,
.b-panel.b-label-align-before>.b-panel-overlay>.b-panel-body-wrap>.b-panel-content {
    grid-template-columns: repeat(var(--bi-container-columns, 1), max-content 1fr);
    grid-auto-rows: min-content
}

:is(.b-container.b-label-align-before, .b-panel.b-label-align-before>.b-panel-body-wrap>.b-panel-content, .b-panel.b-label-align-before>.b-panel-overlay>.b-panel-body-wrap>.b-panel-content)>.b-has-label {
    display: contents;
    --b-field-label-padding: 0
}

:is(.b-container.b-label-align-before, .b-panel.b-label-align-before>.b-panel-body-wrap>.b-panel-content, .b-panel.b-label-align-before>.b-panel-overlay>.b-panel-body-wrap>.b-panel-content)>.b-has-label>label {
    grid-row: auto
}

:is(.b-container.b-label-align-before, .b-panel.b-label-align-before>.b-panel-body-wrap>.b-panel-content, .b-panel.b-label-align-before>.b-panel-overlay>.b-panel-body-wrap>.b-panel-content)>.b-has-label>.b-field-inner {
    grid-row: auto
}

.b-content-element {
    position: relative
}

.b-content-element.b-text-content {
    display: block;
    overflow: auto
}

.b-divider {
    justify-content: center;
    grid-column: 1 / -1;
    margin-block: var(--b-dividier-margin-block)
}

.b-divider:before {
    content: "";
    width: 100%;
    border-bottom: 1px solid var(--b-divider-line-color);
    position: absolute;
    top: 50%
}

.b-divider[data-text]:after {
    display: flex;
    padding: 0 1em;
    content: attr(data-text);
    z-index: 1;
    color: var(--b-divider-text-color);
    background: var(--b-parent-background-color, var(--b-panel-background));
    font-size: var(--b-divider-font-size);
    font-weight: var(--b-divider-font-weight)
}

.b-undo-redo-base.b-toolbar {
    gap: .5em;
    align-items: center
}

:root,
:host {
    --b-button-group-border-width: 0px;
    --b-button-group-border-radius: var(--b-button-border-radius);
    --b-button-group-box-shadow: none;
    --b-button-group-border-color: transparent;
    --b-button-group-padded-padding: .3em;
    --b-button-group-padded-background: var(--b-neutral-95);
    --b-button-group-padded-active-background: var(--b-neutral-97);
    --b-button-group-padded-pressed-background: var(--b-neutral-100);
    --b-button-group-padded-pressed-hover-background: var(--b-neutral-98);
    --b-button-group-padded-pressed-box-shadow: 0 1px 3px 0 rgb(0 0 0 /.05), 0 1px 1px 0 rgb(0 0 0 /.04), 0 2px 1px -1px rgb(0 0 0 /.03);
    --b-button-group-padded-pressed-border: null;
    --b-button-group-padded-button-opacity: .5;
    --b-button-group-padded-border: null;
    --b-button-group-padded-filled-pressed-color: var(--b-neutral-100)
}

.b-bryntum {
    --b-button-group-padded-filled-pressed-background: var(--b-primary-50);
    --b-button-group-padded-filled-pressed-hover-background: var(--b-primary-55)
}

.b-button-group {
    display: flex;
    gap: 0;
    flex-shrink: 0;
    align-items: center;
    width: min-content;
    height: min-content;
    transition-property: box-shadow, border, opacity, background;
    box-shadow: var(--b-button-group-box-shadow);
    border: var(--b-button-group-border-width) solid var(--b-button-group-border-color);
    opacity: var(--bi-button-group-opacity, 1);
    transition-duration: var(--b-default-transition-duration)
}

.b-button-group.b-columned {
    width: 100%;
    flex-wrap: wrap
}

.b-button-group.b-button-group-tonal .b-button {
    --bi-button-group-button-border-end-width: 1px;
    --b-button-group-border-color: color-mix(in oklab, var(--b-button-tonal-color), transparent 80%)
}

.b-button-group.b-button-group-elevated {
    --b-button-group-box-shadow: var(--b-button-elevated-box-shadow)
}

.b-button-group.b-button-group-outlined {
    --b-button-group-border-color: var(--b-button-outlined-border-color);
    --b-button-group-border-width: var(--b-button-outlined-border-width);
    --bi-button-group-button-border-end-width: var(--b-button-outlined-border-width)
}

.b-button-group.b-button-group-outlined.b-disabled {
    --b-button-group-border-color: var(--b-button-outlined-disabled-border-color);
    --bi-button-group-opacity: var(--b-button-disabled-opacity)
}

.b-button-group.b-button-group-outlined.b-disabled .b-button {
    --b-button-disabled-opacity: 1
}

.b-button-group.b-rotate-vertical {
    flex-direction: column
}

.b-button-group .b-button {
    --b-button-border-width: 0;
    --b-button-box-shadow: none
}

.b-button-group .b-button:not(.b-button-text) {
    --b-button-border-radius: 0
}

.b-button-group .b-button:not(.b-last-visible-child) {
    border-inline-end: var(--bi-button-group-button-border-end-width) solid var(--b-button-group-border-color)
}

.b-button-group .b-button:not(.b-text, .b-button-text) {
    aspect-ratio: unset;
    min-width: 3.25em
}

.b-button-group .b-button:focus {
    z-index: 3
}

.b-button-group .b-pressed {
    z-index: 2
}

.b-button-group:where(.b-no-gap:not(.b-button-group-text, .b-button-group-padded, .b-button-group-padded-filled)) {
    border-radius: var(--b-button-group-border-radius)
}

.b-button-group:where(.b-no-gap:not(.b-button-group-text, .b-button-group-padded, .b-button-group-padded-filled)) .b-first-visible-child {
    border-start-start-radius: calc(var(--b-button-group-border-radius) - var(--b-button-group-border-width));
    border-end-start-radius: calc(var(--b-button-group-border-radius) - var(--b-button-group-border-width))
}

.b-button-group:where(.b-no-gap:not(.b-button-group-text, .b-button-group-padded, .b-button-group-padded-filled)) .b-last-visible-child {
    border-start-end-radius: calc(var(--b-button-group-border-radius) - var(--b-button-group-border-width));
    border-end-end-radius: calc(var(--b-button-group-border-radius) - var(--b-button-group-border-width))
}

.b-button-group-padded,
.b-button-group-padded-filled {
    background: var(--b-button-group-padded-background);
    border-radius: var(--b-button-group-border-radius);
    padding: var(--b-button-group-padded-padding);
    border: var(--b-button-group-padded-border);
    gap: 3px
}

:is(.b-button-group-padded, .b-button-group-padded-filled) .b-button {
    background: transparent;
    transition-property: opacity, background, box-shadow, border;
    transition-duration: var(--b-default-transition-duration);
    border-radius: calc(var(--b-button-group-border-radius) - 1px);
    height: calc(var(--b-button-height) - var(--b-button-group-padded-padding) * 2);
    opacity: var(--b-button-group-padded-button-opacity)
}

:is(.b-button-group-padded, .b-button-group-padded-filled) .b-button:hover,
:is(.b-button-group-padded, .b-button-group-padded-filled) .b-button.b-pressed {
    opacity: 1
}

:is(.b-button-group-padded, .b-button-group-padded-filled) .b-button:active {
    background: var(--b-button-group-padded-active-background)
}

:is(.b-button-group-padded, .b-button-group-padded-filled) .b-button.b-pressed {
    background: var(--b-button-group-padded-pressed-background);
    border: var(--b-button-group-padded-pressed-border);
    box-shadow: var(--b-button-group-padded-pressed-box-shadow)
}

:is(.b-button-group-padded, .b-button-group-padded-filled):not(.b-toggle-group) {
    gap: var(--b-button-group-padded-padding)
}

:is(.b-button-group-padded, .b-button-group-padded-filled):not(.b-toggle-group) .b-button.b-pressed:hover {
    background: var(--b-button-group-padded-pressed-hover-background)
}

.b-button-group-padded-filled .b-button.b-pressed {
    box-shadow: none;
    background: var(--b-button-group-padded-filled-pressed-background);
    color: var(--b-button-group-padded-filled-pressed-color)
}

.b-button-group-padded-filled:not(.b-toggle-group) .b-button.b-pressed:hover {
    background: var(--b-button-group-padded-filled-pressed-hover-background)
}

:root,
:host {
    --b-editor-background: transparent;
    --b-editor-border-radius: var(--b-widget-border-radius)
}

.b-editor {
    display: flex;
    overflow: visible;
    background: var(--b-editor-background);
    border-radius: var(--b-editor-border-radius)
}

.b-editor .b-label {
    display: none
}

.b-editor .b-field {
    display: flex;
    width: 100%;
    height: 100%;
    --b-text-field-input-height: 100%
}

.b-editor .b-field-inner {
    height: 100%
}

.b-field-filter-picker {
    display: flex;
    flex-flow: row wrap;
    overflow: visible;
    --b-container-gap: 1em;
    --b-text-field-default-width: 100%
}

.b-field-filter-picker-property,
.b-field-filter-picker-operator,
.b-field-filter-picker-values,
.b-field-filter-picker-case-sensitive,
.b-field-filter-picker-values-multiple {
    flex: 1;
    min-width: 10em
}

:is(.b-field-filter-picker-property, .b-field-filter-picker-operator, .b-field-filter-picker-values, .b-field-filter-picker-case-sensitive, .b-field-filter-picker-values-multiple).b-hidden {
    display: none
}

.b-field-filter-picker-values-multiple {
    display: flex;
    align-items: center;
    gap: var(--b-container-gap)
}

.b-field-filter-picker-values-multiple .b-field {
    flex: 1
}

.b-combo.b-field-filter-picker-combo-locked {
    margin-top: .25em;
    --b-text-field-border-width: 0;
    --b-text-field-input-padding: 0;
    --b-text-field-input-height: 3em;
    --b-text-field-background: transparent
}

:root,
:host {
    --b-panel-gap: var(--b-widget-gap);
    --b-panel-background: var(--b-neutral-100);
    --b-panel-header-color: var(--b-widget-color);
    --b-panel-overlay-box-shadow: var(--b-elevation-1);
    --b-panel-drawer-box-shadow: var(--b-elevation-4);
    --b-panel-header-font-size: 1.2em;
    --b-panel-header-font-weight: calc(var(--b-widget-font-weight) + 100);
    --b-panel-header-text-align: start;
    --b-panel-header-gap: var(--b-widget-gap);
    --b-panel-padding: var(--b-widget-padding-large);
    --b-panel-with-header-padding: var(--b-panel-padding);
    --b-panel-bottom-toolbar-padding: var(--b-widget-padding-large);
    --b-panel-bottom-toolbar-background: transparent;
    --b-panel-top-toolbar-margin-inline: null;
    --b-panel-top-toolbar-border-radius: null;
    --b-panel-with-header-top-toolbar-background: var(--b-neutral-97);
    --b-panel-header-padding: var(--b-widget-padding-large);
    --b-panel-border: null;
    --b-panel-header-background: transparent;
    --b-drawer-size: 30em;
    --b-panel-overlay-border: null;
    --b-default-panel-transition: background var(--b-default-transition-duration), color var(--b-default-transition-duration), border-color var(--b-default-transition-duration)
}

.b-panel {
    display: flex;
    flex-direction: column;
    gap: 0;
    outline: none;
    transition: var(--b-default-panel-transition);
    overflow: clip;
    background: var(--b-panel-background);
    border: var(--b-panel-border)
}

.b-panel.b-columns .b-panel-content {
    display: grid;
    grid-auto-rows: min-content;
    grid-template-columns: repeat(var(--bi-container-columns), auto)
}

.b-panel.b-panel-has-header .b-top-toolbar:not(.b-tab-bar) {
    margin-inline: var(--b-panel-top-toolbar-margin-inline);
    border-radius: var(--b-panel-top-toolbar-border-radius)
}

.b-panel>.b-panel-overlay,
.b-panel>.b-panel-body-wrap {
    z-index: 0
}

.b-panel>.b-panel-collapse-size-locker {
    position: absolute !important
}

.b-panel .b-panel-overlay-right {
    border-inline-start: var(--b-panel-overlay-border)
}

.b-panel:not(.b-panel-collapsible-overlay).b-collapsed>.b-panel-collapse-size-locker {
    clip: rect(0, 0, 0, 0)
}

:is(.b-panel:not(.b-panel-collapsible-overlay).b-panel-collapse-down:not(.b-panel-has-header), .b-panel:not(.b-panel-collapsible-overlay).b-header-dock-bottom.b-panel-collapse-down, .b-panel:not(.b-panel-collapsible-overlay).b-header-dock-bottom.b-panel-collapse-up)>.b-panel-collapse-size-locker {
    top: 0
}

:is(.b-panel:not(.b-panel-collapsible-overlay).b-panel-collapse-up:not(.b-panel-has-header), .b-panel:not(.b-panel-collapsible-overlay).b-header-dock-top.b-panel-collapse-up, .b-panel:not(.b-panel-collapsible-overlay).b-header-dock-top.b-panel-collapse-down)>.b-panel-collapse-size-locker {
    bottom: 0
}

:is(.b-panel:not(.b-panel-collapsible-overlay).b-panel-collapse-left:not(.b-panel-has-header), .b-panel:not(.b-panel-collapsible-overlay).b-header-dock-left.b-panel-collapse-left, .b-panel:not(.b-panel-collapsible-overlay).b-header-dock-left.b-panel-collapse-right)>.b-panel-collapse-size-locker {
    right: 0
}

:is(.b-panel:not(.b-panel-collapsible-overlay).b-panel-collapse-right:not(.b-panel-has-header), .b-panel:not(.b-panel-collapsible-overlay).b-header-dock-right.b-panel-collapse-left, .b-panel:not(.b-panel-collapsible-overlay).b-header-dock-right.b-panel-collapse-right)>.b-panel-collapse-size-locker {
    left: 0
}

.b-panel.b-panel-collapsible-overlay:not(.b-collapsing, .b-expanding, .b-panel-overlay-revealed, .b-panel-overlay-revealing)>.b-panel-overlay>.b-panel-overlay-header {
    display: none
}

.b-panel.b-panel-collapsible-overlay.b-panel-overlay-revealed>.b-panel-overlay {
    box-shadow: var(--b-panel-overlay-box-shadow);
    overflow: visible
}

.b-panel.b-panel-collapsible-overlay>.b-panel-header {
    transition: translate .2s ease-in-out
}

.b-panel.b-panel-collapsible-overlay.b-collapsed>.b-panel-header>.b-collapsify-hide {
    display: none
}

:is(.b-panel.b-panel-collapsible-overlay.b-collapsing, .b-panel.b-panel-collapsible-overlay.b-expanding)>.b-panel-header {
    opacity: 0
}

.b-panel.b-panel-collapsible-overlay:not(.b-collapsed, .b-collapsing)>.b-panel-overlay>.b-panel-overlay-header {
    display: none
}

.b-panel.b-panel-collapsible-overlay.b-collapsing,
.b-panel.b-panel-collapsible-overlay.b-expanding,
.b-panel.b-panel-collapsible-overlay.b-panel-overlay-revealing,
.b-panel.b-panel-collapsible-overlay.b-panel-overlay-revealed {
    overflow: visible;
    z-index: 1
}

.b-panel.b-panel-collapsible-overlay.b-collapsing {
    overflow: visible
}

.b-panel.b-panel-collapsible-overlay.b-collapsing>.b-panel-header {
    z-index: -1
}

.b-panel.b-panel-collapsible-overlay.b-collapsing.b-panel-collapse-up>.b-panel-header {
    translate: 0 -100%
}

.b-panel.b-panel-collapsible-overlay.b-collapsing.b-panel-collapse-down>.b-panel-header {
    translate: 0 100%
}

.b-panel.b-panel-collapsible-overlay.b-collapsing.b-panel-collapse-right>.b-panel-header {
    translate: 100% 0
}

.b-panel.b-panel-collapsible-overlay.b-collapsing.b-panel-collapse-left>.b-panel-header {
    translate: -100% 0
}

.b-panel.b-panel-collapsible-overlay.b-collapsed:not(.b-expanding) {
    border: none
}

.b-panel.b-panel-collapsible-overlay.b-collapsed:not(.b-expanding)>.b-panel-collapse-size-locker {
    transition: translate .2s cubic-bezier(.06, 1.1, .58, 1), clip-path .2s ease-out, top .2s ease-out, right .2s ease-out, bottom .2s ease-out, left .2s ease-out
}

.b-panel.b-panel-collapsible-overlay.b-collapsed:not(.b-expanding).b-panel-collapse-up>.b-panel-collapse-size-locker {
    translate: 0 -100%
}

.b-panel.b-panel-collapsible-overlay.b-collapsed:not(.b-expanding).b-panel-collapse-up.b-panel-overlay-revealed>.b-panel-collapse-size-locker {
    clip-path: inset(0 0 -20px 0);
    translate: 0 0
}

.b-panel.b-panel-collapsible-overlay.b-collapsed:not(.b-expanding).b-panel-collapse-down>.b-panel-collapse-size-locker {
    translate: 0 100%
}

.b-panel.b-panel-collapsible-overlay.b-collapsed:not(.b-expanding).b-panel-collapse-down.b-panel-overlay-revealed>.b-panel-collapse-size-locker {
    clip-path: inset(-20px 0 0 0);
    translate: 0 0
}

.b-panel.b-panel-collapsible-overlay.b-collapsed:not(.b-expanding).b-panel-collapse-left>.b-panel-collapse-size-locker {
    translate: -100% 0
}

.b-panel.b-panel-collapsible-overlay.b-collapsed:not(.b-expanding).b-panel-collapse-left.b-panel-overlay-revealed>.b-panel-collapse-size-locker {
    clip-path: inset(0 -20px 0 0);
    translate: 0 0
}

.b-panel.b-panel-collapsible-overlay.b-collapsed:not(.b-expanding).b-panel-collapse-right>.b-panel-collapse-size-locker {
    translate: 100% 0
}

.b-panel.b-panel-collapsible-overlay.b-collapsed:not(.b-expanding).b-panel-collapse-right.b-panel-overlay-revealed>.b-panel-collapse-size-locker {
    clip-path: inset(0 0 0 -20px);
    translate: 0 0
}

.b-panel.b-panel-collapsible-overlay.b-expanding {
    flex: none !important;
    overflow: visible
}

.b-panel.b-header-dock-right,
.b-panel.b-header-dock-bottom {
    justify-content: flex-end
}

.b-panel.b-collapsed:not(.b-expanding, .b-panel-overlay-revealed, .b-panel-overlay-revealing) {
    visibility: hidden;
    flex: 0 1 0
}

.b-panel.b-collapsed>.b-panel-collapse-revealer {
    visibility: visible;
    cursor: pointer
}

.b-panel.b-collapsed>.b-panel-collapse-revealer.b-dock-right,
.b-panel.b-collapsed>.b-panel-collapse-revealer .b-dock-left {
    height: 100%;
    border-block: none
}

.b-panel .b-panel-collapser-header {
    display: none
}

.b-panel.b-collapse-unflex {
    flex-grow: unset !important;
    flex-basis: unset !important;
    flex-shrink: 0 !important
}

:is(.b-panel.b-collapsed, .b-panel.b-collapsing) .b-panel-collapser-header {
    display: flex
}

:is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-top,
:is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-bottom {
    min-height: auto !important
}

:is(:is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-top, :is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-bottom).b-panel-collapsible-overlay {
    height: unset !important
}

.b-vbox>:is(:is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-top, :is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-bottom) {
    flex: none !important
}

:is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-right,
:is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-left {
    min-width: auto !important
}

:is(:is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-right, :is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-left).b-panel-collapsible-overlay {
    width: unset !important
}

.b-hbox>:is(:is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-right, :is(.b-panel.b-collapsed, .b-panel.b-collapsing).b-header-dock-left) {
    flex: none !important
}

.b-panel.b-collapsed:not(.b-expanding).b-header-dock-right,
.b-panel.b-collapsed:not(.b-expanding).b-header-dock-left {
    width: unset !important;
    flex: unset !important
}

.b-drawer-panel {
    --b-panel-overlay-box-shadow: var(--b-panel-drawer-box-shadow)
}

.b-drawer-panel:not(.b-positioned, .b-floating) {
    flex: unset
}

.b-drawer-panel.b-panel-overlay-revealed header.b-panel-collapse-revealer {
    display: none
}

.b-drawer-panel header.b-panel-collapse-revealer {
    display: none
}

.b-drawer-panel.b-panel-collapse-up {
    min-height: var(--b-drawer-size);
    height: auto;
    inset: 0 0 auto
}

.b-drawer-panel.b-panel-collapse-right {
    width: var(--b-drawer-size);
    inset: 0 0 0 auto
}

.b-drawer-panel.b-panel-collapse-down {
    min-height: var(--b-drawer-size);
    height: auto;
    inset: auto 0 0
}

.b-drawer-panel.b-panel-collapse-left {
    width: var(--b-drawer-size);
    inset: 0 auto 0 0
}

.b-panel-overlay {
    background: var(--b-panel-background)
}

.b-panel-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-shrink: 0;
    z-index: 1;
    transition: background var(--b-default-transition-duration), color var(--b-default-transition-duration), border var(--b-default-transition-duration);
    background: var(--b-panel-header-background);
    color: var(--b-panel-header-color);
    padding: var(--b-panel-header-padding);
    gap: var(--b-panel-header-gap);
    border-bottom: var(--b-panel-header-border-bottom)
}

.b-panel-header.b-dock-top {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit
}

.b-panel-header.b-dock-right {
    flex-flow: column nowrap;
    border-start-end-radius: inherit;
    border-end-end-radius: inherit;
    order: 100
}

.b-panel-header.b-dock-right,
.b-panel-header.b-dock-bottom {
    order: 100
}

.b-panel-header.b-dock-left {
    flex-flow: column-reverse nowrap;
    border-start-start-radius: inherit;
    border-end-start-radius: inherit
}

.b-panel-header.b-dock-left .b-header-title {
    rotate: 180deg
}

:is(.b-panel-header.b-dock-right, .b-panel-header.b-dock-left) .b-header-title {
    writing-mode: vertical-lr
}

.b-panel-header .b-header-title {
    align-items: center;
    flex: 1;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    font-size: var(--b-panel-header-font-size);
    font-weight: var(--b-panel-header-font-weight);
    text-align: var(--b-panel-header-text-align);
    gap: var(--b-panel-header-gap)
}

.b-panel-header .b-header-title.b-header-html-title,
.b-panel-header .b-header-title.b-panel-ui-toolbar {
    display: flex
}

.b-panel-body-wrap {
    overflow: hidden;
    border-bottom-left-radius: inherit;
    border-bottom-right-radius: inherit
}

.b-panel-body-wrap .b-top-toolbar .b-button.b-button-text {
    --b-button-type-text-color: var(--b-panel-top-toolbar-button-type-text-color, var(--b-primary-20))
}

.b-panel-body-wrap .b-bottom-toolbar {
    background: var(--b-panel-bottom-toolbar-background);
    --b-toolbar-padding: var(--b-panel-bottom-toolbar-padding)
}

.b-panel-collapser {
    z-index: 0
}

.b-panel-content {
    flex: 1;
    overflow: clip;
    border-bottom-left-radius: inherit;
    border-bottom-right-radius: inherit;
    gap: var(--b-panel-gap);
    padding: var(--b-panel-padding)
}

.b-panel-content:where(:not(.b-vbox, .b-hbox)) {
    display: grid;
    grid-auto-rows: min-content;
    align-items: center
}

.b-panel-content.b-vbox {
    --b-text-field-default-width: 100%
}

.b-panel-has-header .b-top-toolbar:not(.b-tab-bar) {
    background: var(--b-panel-with-header-top-toolbar-background)
}

.b-panel-has-header:where(:not(:has(.b-top-toolbar:not(.b-hidden, .b-tab-bar))))>.b-panel-body-wrap>.b-panel-content {
    padding: var(--b-panel-with-header-padding)
}

.b-collapse-tool:before {
    rotate: var(--b-panel-collapse-tool-rotate)
}

.b-collapse-tool:not(.b-collapsing):before {
    transition: all .2s ease-in-out
}

.b-collapse-tool.b-rotate-left,
.b-collapse-tool.b-rotate-right {
    --b-panel-collapse-tool-rotate: 0deg
}

.b-collapse-tool.b-collapsed {
    --b-panel-collapse-tool-rotate: 180deg
}

.b-panel-ui-plain {
    --b-panel-header-background: var(--b-panel-background);
    --b-panel-header-color: var(--b-widget-color)
}

.b-panel-ui-toolbar {
    --b-panel-header-background: var(--b-grid-header-background, var(--b-toolbar-background));
    --b-panel-header-color: var(--b-widget-color);
    --b-panel-header-font-size: var(--b-widget-font-size);
    --b-panel-header-padding: 1em;
    --b-panel-header-border-bottom: 1px solid var(--b-grid-header-border-color, var(--b-border-5))
}

:root,
:host {
    --b-calendar-panel-day-font-size: unset;
    --b-calendar-panel-week-width: 2em;
    --b-calendar-panel-week-number-display: none;
    --b-calendar-panel-cell-display: flex;
    --b-calendar-panel-cell-padding: none;
    --b-calendar-panel-cell-font-size: 1em;
    --b-calendar-panel-cell-font-weight: var(--b-widget-font-weight);
    --b-calendar-panel-disabled-cell-opacity: .4;
    --b-calendar-panel-non-working-cell-display: flex;
    --b-calendar-panel-gap: 0em;
    --b-calendar-panel-day-color: unset;
    --b-calendar-panel-color: var(--b-widget-color);
    --b-calendar-panel-other-month-color: var(--b-neutral-60);
    --b-calendar-panel-weeks-gap: .5em
}

.b-internal {
    --bi-min-column-width: null
}

.b-calendar-panel {
    user-select: none;
    -webkit-user-select: none
}

.b-calendar-panel.b-show-week-column {
    --b-calendar-panel-week-number-display: flex
}

.b-calendar-panel.b-hide-other-month-cells .b-other-month {
    visibility: hidden;
    pointer-events: none
}

.b-calendar-panel.b-disable-other-month-cells .b-other-month {
    pointer-events: none;
    opacity: var(--b-calendar-panel-disabled-cell-opacity)
}

.b-calendar-panel.b-shade-past-dates .b-past-date {
    opacity: var(--b-calendar-panel-disabled-cell-opacity)
}

.b-calendar-panel-content {
    gap: 0;
    padding: 0
}

.b-calendar-panel-content.b-hide-non-working-days .b-non-working-day {
    display: none
}

.b-calendar-panel-row {
    display: flex
}

.b-week-number-cell {
    flex-direction: column;
    justify-content: center;
    display: var(--b-calendar-panel-week-number-display);
    font-size: var(--b-calendar-panel-day-font-size);
    width: var(--b-calendar-panel-week-width)
}

.b-calendar-week-days .b-week-number-cell {
    flex-direction: row;
    font-size: var(--b-calendar-panel-day-font-size)
}

.b-calendar-day-header {
    flex: 1;
    justify-content: center;
    display: var(--b-calendar-panel-cell-display);
    color: var(--b-calendar-panel-day-color);
    font-size: var(--b-calendar-panel-day-font-size);
    min-width: var(--bi-min-column-width)
}

.b-calendar-week-days {
    padding-inline: var(--b-calendar-panel-gap);
    gap: var(--b-calendar-panel-gap)
}

.b-weeks-container {
    display: flex;
    flex-flow: column nowrap;
    padding-block: var(--b-calendar-panel-weeks-gap);
    gap: var(--b-calendar-panel-weeks-gap)
}

.b-weeks-container .b-calendar-panel-row {
    flex: 1;
    min-height: var(--bi-min-row-height, 0)
}

.b-calendar-panel-days {
    display: flex;
    flex: 1;
    gap: var(--b-calendar-panel-gap)
}

.b-calendar-panel-cell {
    flex: 1;
    justify-content: center;
    align-items: center;
    position: relative;
    transition: padding var(--b-default-transition-duration);
    color: var(--b-calendar-panel-color);
    display: var(--b-calendar-panel-cell-display);
    padding: var(--b-calendar-panel-cell-padding);
    background: var(--b-calendar-panel-cell-background);
    font-weight: var(--b-calendar-panel-cell-font-weight);
    font-size: var(--b-calendar-panel-cell-font-size);
    min-width: var(--bi-min-column-width)
}

.b-calendar-panel-cell.b-other-month {
    --b-calendar-panel-color: var(--b-calendar-panel-other-month-color)
}

:root,
:host {
    --b-date-picker-min-width: 25em;
    --b-date-picker-title-font-weight: 600;
    --b-date-picker-day-font-size: 1em;
    --b-date-picker-date-padding: .5em;
    --b-date-picker-date-font-size: 1em;
    --b-date-picker-today-font-weight: inherit;
    --b-date-picker-selected-font-weight: 600;
    --b-date-picker-selected-week-border-radius: 2px;
    --b-date-picker-cell-margin-block: 2px;
    --b-date-picker-toolbar-font-size: 1em;
    --b-date-picker-day-color: var(--b-neutral-30);
    --b-date-picker-date-color: var(--b-neutral-30);
    --b-date-picker-today-background: transparent;
    --b-date-picker-selected-color: var(--b-primary-30);
    --b-date-picker-header-padding: 1.5em 0;
    --b-date-picker-color: var(--b-primary)
}

.b-date-picker {
    position: relative;
    opacity: 1;
    flex-shrink: 0;
    color: var(--b-date-picker-color);
    min-width: var(--b-date-picker-min-width);
    --b-calendar-panel-day-color: var(--b-date-picker-day-color);
    --b-calendar-panel-day-font-size: var(--b-date-picker-day-font-size);
    --b-calendar-panel-color: var(--b-date-picker-date-color);
    --b-calendar-panel-cell-background: transparent;
    --b-calendar-panel-cell-font-size: var(--b-date-picker-date-font-size);
    --b-panel-header-padding: var(--b-date-picker-header-padding)
}

.b-date-picker.b-floating .b-weeks-container {
    max-height: 24em
}

.b-date-picker .b-top-toolbar {
    --b-toolbar-background: transparent;
    --b-toolbar-gap: 0
}

.b-date-picker .b-top-toolbar>.b-toolbar-content>.b-widget {
    font-size: var(--b-date-picker-toolbar-font-size)
}

.b-date-picker .b-top-toolbar .b-button {
    min-width: 2em;
    --b-button-type-text-color: var(--b-date-picker-toolbar-color, var(--b-primary-30))
}

.b-date-picker .b-top-toolbar .b-widget {
    --b-primary: inherit
}

.b-date-picker .b-top-toolbar .b-text-field {
    color: var(--b-date-picker-toolbar-color, var(--b-primary-30));
    --b-text-field-background: transparent
}

.b-date-picker .b-top-toolbar i {
    font-size: .9em
}

:is(.b-date-picker [data-ref=monthButton], .b-date-picker [data-ref=yearButton]) label {
    font-size: 1.1em
}

.b-date-picker .b-calendar-panel-cell {
    cursor: pointer;
    line-height: 1;
    margin-block: var(--b-date-picker-cell-margin-block)
}

.b-date-picker .b-calendar-panel-cell:hover {
    --b-date-picker-date-background: var(--b-date-picker-date-hover-background, var(--b-primary-95));
    color: var(--b-date-picker-date-hover-color)
}

.b-date-picker .b-calendar-panel-cell:focus-visible {
    outline: none
}

.b-date-picker .b-calendar-panel-cell:focus-visible:after {
    content: "";
    position: absolute;
    z-index: 1;
    border-radius: .25em;
    pointer-events: none;
    inset: calc(var(--b-widget-focus-outline-width) * -1) var(--b-widget-focus-outline-width);
    outline: var(--b-widget-focus-outline-width) solid var(--b-widget-focus-outline-color)
}

:is(.b-date-picker .b-calendar-panel-cell:not(.b-range-end):last-child, .b-date-picker .b-calendar-panel-cell:not(.b-range-end).b-last-visible-cell):before {
    clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 50%, calc(100% - 10px) 100%, 0 100%)
}

:is(.b-date-picker .b-calendar-panel-cell:not(.b-range-start):first-child, .b-date-picker .b-calendar-panel-cell:not(.b-range-start).b-first-visible-cell):before {
    clip-path: polygon(10px 0, 100% 0, 100% 100%, 10px 100%, 0 50%)
}

.b-date-picker .b-date-picker-cell-payload {
    pointer-events: none;
    position: absolute;
    inset: auto 0 0;
    display: flex;
    justify-content: center;
    overflow: clip;
    z-index: 1;
    font-weight: var(--b-widget-font-weight)
}

.b-date-picker .b-month-picker,
.b-date-picker .b-year-picker {
    inset: 0;
    z-index: 1
}

.b-date-picker .b-selected-date:not(.b-in-range) {
    --b-date-picker-date-hover-background: var(--b-date-picker-selected-hover-background, var(--b-date-picker-selected-background, var(--b-primary-90)));
    --b-calendar-panel-color: var(--b-date-picker-selected-color);
    --b-date-picker-date-background: var(--b-date-picker-selected-background, var(--b-primary-90));
    --b-calendar-panel-cell-font-weight: var(--b-date-picker-selected-font-weight);
    --b-date-picker-date-border: var(--b-date-picker-selected-border)
}

.b-date-picker .b-today,
.b-date-picker .b-today:not(.b-in-range) {
    --b-date-picker-date-border: var(--b-date-picker-today-border, 1px solid var(--b-date-picker-today-color, var(--b-primary-50)))
}

.b-date-picker .b-today {
    --b-date-picker-date-hover-background: var(--b-date-picker-today-hover-background, var(--b-primary-95));
    --b-calendar-panel-color: var(--b-date-picker-today-color, var(--b-primary-50));
    --b-calendar-panel-date-background: var(--b-date-picker-today-background);
    --b-calendar-panel-cell-font-weight: var(--b-date-picker-today-font-weight)
}

.b-date-picker.b-highlight-selected-week .b-calendar-week:has(.b-selected-date) {
    background: var(--b-date-picker-selected-week-background, var(--b-primary-95));
    border-radius: var(--b-date-picker-selected-week-border-radius)
}

.b-date-picker .b-in-range {
    --b-date-picker-selected-color: var(--b-date-picker-selected-range-color)
}

:is(.b-date-picker .b-range-start:where(:not(.b-range-end)), .b-date-picker .b-range-end:where(:not(.b-range-start)), .b-date-picker .b-in-range):before {
    content: "";
    position: absolute;
    display: block;
    height: 100%;
    inset-inline-start: 0;
    background: var(--b-date-picker-selected-range-background, var(--b-primary-96))
}

.b-date-picker .b-range-start:before {
    inset-inline-start: 50%;
    width: calc(50% + var(--b-calendar-panel-gap))
}

.b-date-picker .b-in-range:before {
    width: calc(100% + var(--b-calendar-panel-gap))
}

.b-date-picker .b-range-end:before {
    width: 50%
}

.b-date-picker .b-out-of-range {
    opacity: var(--b-calendar-panel-disabled-cell-opacity)
}

.b-date-picker-cell-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    height: 100%;
    z-index: 1;
    aspect-ratio: 1 / 1;
    min-width: 2.25em;
    background: var(--b-date-picker-date-background);
    padding: var(--b-date-picker-date-padding);
    outline: var(--b-date-picker-date-border)
}

.b-date-picker-title {
    display: flex;
    flex-direction: row;
    flex: 1;
    align-items: center;
    justify-content: center;
    gap: .3em;
    overflow: visible
}

.b-date-picker-month-button,
.b-date-picker-year-button {
    padding: 0;
    background: transparent;
    border-radius: 1px;
    font-weight: var(--b-date-picker-title-font-weight);
    --b-button-focus-outline-offset: 1px
}

.b-carousel-content:not(.b-carousel-empty) {
    padding: 0
}

.b-carousel-content>.b-carousel-content {
    overflow: clip
}

.b-carousel-content.b-carousel-empty>.b-carousel-inner-ct,
.b-carousel-content:not(.b-carousel-empty)>.b-carousel-empty-text {
    display: none
}

.b-multi-date-picker.b-widget.b-floating,
.b-multi-date-picker.b-widget.b-floating .b-carousel-inner-ct {
    border-radius: var(--b-popup-border-radius)
}

.b-multi-date-picker .b-top-toolbar {
    --b-toolbar-gap: var(--b-date-range-field-gap)
}

.b-multi-date-picker [data-ref=yearButton],
.b-multi-date-picker [data-ref=monthButton] {
    color: var(--b-button-type-text-color);
    opacity: 1
}

.b-multi-date-picker-nav-floating {
    overflow: visible
}

.b-multi-date-picker-nav-floating>.b-multi-date-picker-nav-button {
    position: absolute;
    top: 50%;
    z-index: 1;
    box-shadow: var(--b-elevation-1);
    --b-button-type-text-background: var(--b-panel-background);
    --b-button-type-text-hover-background: var(--b-primary-97)
}

.b-multi-date-picker-nav-floating>.b-multi-date-picker-next-button {
    inset-inline-end: 0;
    translate: calc(50% * var(--b-rtl-negate)) -50%
}

.b-multi-date-picker-nav-floating>.b-multi-date-picker-prev-button {
    inset-inline-start: 0;
    translate: calc(-50% * var(--b-rtl-negate)) -50%
}

.b-multi-date-picker-content>.b-carousel-inner-ct .b-date-picker-content .b-calendar-week,
.b-multi-date-picker-content>.b-carousel-inner-ct .b-date-picker-content .b-calendar-week-days {
    padding-inline: 1.5em
}

.b-multi-date-picker-content>.b-carousel-inner-ct [data-ref=nextMonth],
.b-multi-date-picker-content>.b-carousel-inner-ct [data-ref=prevMonth],
.b-multi-date-picker-content>.b-carousel-inner-ct [data-ref=prevYear],
.b-multi-date-picker-content>.b-carousel-inner-ct [data-ref=nextYear] {
    display: none
}

.b-multi-date-picker-content>.b-carousel-inner-ct .b-date-picker.b-carousel-visible.b-carousel-first>.b-top-focus-trap,
.b-multi-date-picker-content>.b-carousel-inner-ct .b-date-picker.b-carousel-visible.b-carousel-last>.b-end-focus-trap {
    display: none
}

.b-multi-date-picker-content>.b-carousel-inner-ct .b-date-picker.b-carousel-reserve [data-ref=monthField] {
    pointer-events: none
}

.b-multi-date-picker-content>.b-carousel-inner-ct .b-date-picker.b-carousel-reserve [data-ref=yearButton] {
    display: none
}

.b-demo-code-editor {
    width: 490px;
    flex: unset;
    --b-toolbar-padding: .5em;
    --b-panel-padding: 0;
    --b-panel-background: var(--b-neutral-100);
    --b-text-field-input-height: 3em;
    --b-panel-overlay-border: none;
    --b-toolbar-background: transparent
}

.b-demo-code-editor .b-top-toolbar {
    height: 58px;
    --b-toolbar-gap: 0
}

@media (min-width : 2000px) {
    .b-demo-code-editor {
        width: 700px
    }
}

.b-demo-code-editor:not(.b-collapsed) {
    border-inline-start: var(--b-splitter-size, 4px) solid var(--b-border-7)
}

:is(.b-demo-code-editor.b-collapsed, .b-demo-code-editor.b-collapsing) .b-panel-collapse-revealer {
    display: none
}

.b-demo-code-editor:not(.b-resizing) {
    transition: border-width .1s
}

.b-demo-code-editor .b-code-editor-body-wrap,
.b-demo-code-editor .b-panel-overlay {
    overflow: hidden
}

.b-demo-code-editor .b-panel-content {
    direction: ltr
}

.b-demo-code-editor.b-resizing * {
    user-select: none;
    -webkit-user-select: none
}

.b-demo-code-editor.b-over-resize-handle {
    cursor: ew-resize
}

.b-demo-code-editor.b-hidden {
    display: flex !important;
    border-inline-start-width: 0
}

.b-demo-code-editor .b-bottom-toolbar {
    transition: background-color .2s
}

.readonly :is(.b-demo-code-editor .b-bottom-toolbar) {
    background-color: #ff8d46
}

.b-demo-code-editor .b-bottom-toolbar [data-ref=cursorPos] {
    margin-inline-start: auto
}

.b-demo-code-editor .b-bottom-toolbar .b-toolbar-content {
    padding: 1em !important
}

.b-demo-code-editor.invalid .b-bottom-toolbar {
    color: #fff;
    background: #b71c1c
}

.b-demo-code-editor [data-ref=filesCombo] {
    margin-inline-end: .5em
}

.b-demo-code-editor-file-picker {
    --b-list-item-gap: 0
}

.b-demo-code-editor-file-picker .b-editor-file-type {
    margin-inline-end: .5em
}

:root,
:host {
    --b-field-label-padding: 0;
    --b-field-label-default-gap: var(--b-widget-gap);
    --b-field-label-above-gap: .5em;
    --b-field-label-before-gap: var(--b-widget-gap);
    --b-field-default-template-areas: "before inner";
    --b-field-default-template-columns: auto 1fr;
    --b-field-default-label-padding: 0 1em 0 0;
    --b-field-error-tip-primary: var(--b-color-red);
    --b-field-align-before-label-column: unset;
    --b-field-align-before-field-column: unset
}

@property --bi-field-template-areas {
    syntax: "*";
    inherits: false;
}

@property --bi-field-template-columns {
    syntax: "*";
    inherits: false;
}

.b-field,
.b-slider {
    display: grid;
    align-items: center;
    justify-items: start;
    flex-shrink: 0;
    --bi-field-template-areas: "inner";
    --bi-field-template-columns: 1fr;
    grid-template-areas: var(--bi-field-template-areas);
    grid-template-columns: var(--bi-field-template-columns);
    color: var(--b-primary);
    gap: var(--bi-field-gap);
    --b-field-label-grid-area: before
}

:is(.b-field, .b-slider) .b-field-inner {
    display: grid;
    align-items: center;
    justify-items: center;
    grid-area: inner;
    max-height: 100%
}

:is(.b-field, .b-slider) .b-label {
    align-self: center;
    grid-area: var(--b-field-label-grid-area);
    padding: var(--b-field-label-padding)
}

.b-vbox>:is(.b-field, .b-slider).b-label-above .b-label {
    align-self: flex-start
}

:is(.b-field, .b-slider).b-has-label {
    --bi-field-template-areas: var(--b-field-default-template-areas);
    --bi-field-template-columns: var(--b-field-default-template-columns);
    --bi-field-gap: var(--b-field-label-default-gap)
}

:is(.b-field, .b-slider).b-has-label.b-required .b-label:after {
    content: "*"
}

:is(.b-field, .b-slider).b-label-align-before,
:is(.b-field, .b-slider).b-label-before {
    --bi-field-template-columns: auto 1fr;
    --bi-field-template-areas: "before inner";
    --b-field-label-grid-area: before;
    --bi-field-gap: var(--b-field-label-before-gap)
}

:is(.b-field, .b-slider).b-label-above {
    grid-template-rows: auto 1fr;
    --bi-field-template-columns: 1fr;
    --bi-field-template-areas: "above" "inner";
    --b-field-label-grid-area: above;
    --bi-field-gap: var(--b-field-label-above-gap)
}

:is(.b-field, .b-slider).b-label-align-before .b-label {
    grid-column: var(--b-field-align-before-label-column)
}

:is(.b-field, .b-slider).b-label-align-before .b-field-inner {
    grid-column: var(--b-field-align-before-field-column)
}

:is(:is(.b-field, .b-slider).b-read-only, :is(.b-field, .b-slider).b-disabled) .b-field-trigger {
    pointer-events: none;
    opacity: .5
}

.b-field-container-wrap {
    display: flex;
    flex: 1 1 auto;
    overflow: hidden;
    position: relative;
    gap: var(--b-container-gap)
}

.b-field-container-wrap>.b-container {
    width: 100%
}

.b-field.b-collapsed:not(.b-field-container-inline)>.b-field-container-wrap {
    height: 0
}

.b-field.b-collapsed.b-field-container-inline>.b-field-container-wrap {
    opacity: 0
}

.b-field-container:not(.b-field-container-inline) .b-field-container {
    gap: var(--b-container-gap)
}

.b-field-container-inline {
    gap: var(--b-container-gap);
    --bi-field-template-areas: "inner container";
    --bi-field-template-columns: max-content 1fr
}

.b-field-container-inline .b-field-container-wrap {
    grid-area: container;
    width: 100%
}

.b-field-container-inline .b-field-container {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap
}

:root,
:host {
    --b-checkbox-size: 1.25em;
    --b-checkbox-border-radius: calc(var(--b-widget-border-radius) / 2);
    --b-checkbox-check-font-size: .9em;
    --b-checkbox-disabled-opacity: .4;
    --b-checkbox-inner-gap: 1em;
    --b-checkbox-ring-content: none;
    --b-checkbox-border-width: 1px;
    --b-checkbox-border-color: var(--b-widget-border-color);
    --b-checkbox-checked-border-color: var(--b-widget-border-color);
    --b-checkbox-checked-check-color: var(--b-neutral-100);
    --b-checkbox-disabled-checked-check-color: var(--b-neutral-100);
    --b-checkbox-hover-border-color: var(--b-border-3);
    --b-checkbox-focus-outline-width: var(--b-widget-focus-outline-width);
    --b-checkbox-focus-outline-offset: 2px;
    --b-checkbox-focus-outline-color: var(--b-widget-focus-outline-color);
    --bi-checkbox-ring-opacity: 0
}

.b-checkbox {
    width: fit-content;
    overflow: visible
}

.b-checkbox>.b-field-inner>input {
    grid-area: input;
    appearance: none;
    margin: 0
}

.b-checkbox:not(.b-disabled) input {
    cursor: pointer
}

:is(.b-checkbox:focus-within, .b-checkbox.b-focus) input {
    outline: none
}

:is(.b-checkbox:focus-within, .b-checkbox.b-focus) input:focus-visible~.b-checkbox-box,
:is(.b-checkbox:focus-within, .b-checkbox.b-focus).b-focus input~.b-checkbox-box {
    outline: var(--b-checkbox-focus-outline-width) solid var(--b-checkbox-focus-outline-color);
    outline-offset: var(--b-checkbox-focus-outline-offset)
}

.b-checkbox>.b-field-inner {
    grid-template-areas: "input"
}

.b-checkbox.b-text>.b-field-inner {
    grid-template-areas: "input after";
    gap: var(--b-checkbox-inner-gap)
}

.b-checkbox .b-checkbox-label {
    grid-area: after;
    white-space: nowrap;
    justify-self: stretch;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--b-label-color)
}

.b-checkbox label {
    cursor: pointer
}

.b-checkbox:not(.b-disabled):has(input:hover),
.b-checkbox:not(.b-disabled).b-hover {
    --bi-checkbox-ring-opacity: var(--b-checkbox-ring-hover-opacity)
}

.b-checkbox:not(.b-disabled):has(input:focus-visible),
.b-checkbox:not(.b-disabled).b-focus {
    --bi-checkbox-ring-opacity: var(--b-checkbox-ring-focus-opacity)
}

.b-checkbox:not(.b-disabled):has(input:active),
.b-checkbox:not(.b-disabled).b-active {
    --bi-checkbox-ring-opacity: var(--b-checkbox-ring-active-opacity)
}

.b-checkbox:not(.b-slide-toggle)>.b-field-inner {
    grid-template-columns: var(--b-checkbox-size)
}

.b-checkbox:not(.b-slide-toggle)>.b-field-inner input {
    aspect-ratio: 1 / 1;
    width: var(--b-checkbox-size)
}

.b-checkbox:not(.b-slide-toggle).b-text>.b-field-inner {
    grid-template-columns: var(--b-checkbox-size) auto
}

.b-checkbox:not(.b-slide-toggle)>.b-field-inner:before {
    content: var(--b-checkbox-ring-content);
    background: var(--b-primary);
    grid-area: input;
    border-radius: 50%;
    pointer-events: none;
    transition: opacity .3s;
    aspect-ratio: 1 / 1;
    width: calc(var(--b-checkbox-size) * 2.25);
    opacity: var(--bi-checkbox-ring-opacity)
}

.b-checkbox:not(.b-slide-toggle) input:checked~.b-checkbox-box {
    --b-checkbox-background: var(--b-checkbox-checked-background);
    --b-checkbox-border-color: var(--b-checkbox-checked-border-color)
}

.b-checkbox:not(.b-slide-toggle) input:checked~.b-checkbox-box:after {
    scale: 1
}

.b-checkbox:not(.b-slide-toggle).b-disabled {
    --b-checkbox-border-color: var(--b-checkbox-disabled-border-color, var(--b-widget-disabled-color));
    --b-checkbox-checked-border-color: var(--b-checkbox-disabled-background, var(--b-widget-disabled-color));
    --b-checkbox-checked-check-color: var(--b-checkbox-disabled-checked-check-color);
    --b-checkbox-checked-background: var(--b-checkbox-disabled-checked-background, var(--b-widget-disabled-background));
    --b-label-color: var(--b-checkbox-disabled-background, var(--b-widget-disabled-color));
    --b-checkbox-opacity: var(--b-checkbox-disabled-opacity)
}

.b-checkbox:not(.b-slide-toggle):not(.b-disabled):has(input:hover),
.b-checkbox:not(.b-slide-toggle):not(.b-disabled).b-hover {
    --bi-checkbox-ring-opacity: var(--b-checkbox-ring-hover-opacity);
    --b-checkbox-background: var(--b-checkbox-hover-background);
    --b-checkbox-border-color: var(--b-checkbox-hover-border-color)
}

:is(.b-checkbox:not(.b-slide-toggle):not(.b-disabled):has(input:hover), .b-checkbox:not(.b-slide-toggle):not(.b-disabled).b-hover) input:checked~.b-checkbox-box {
    --b-checkbox-background: var(--b-checkbox-checked-hover-background)
}

.b-checkbox:not(.b-slide-toggle):not(.b-disabled):has(input:focus-visible),
.b-checkbox:not(.b-slide-toggle):not(.b-disabled).b-focus {
    --bi-checkbox-ring-opacity: var(--b-checkbox-ring-focus-opacity)
}

.b-checkbox:not(.b-slide-toggle):not(.b-disabled):has(input:active),
.b-checkbox:not(.b-slide-toggle):not(.b-disabled).b-active {
    --bi-checkbox-ring-opacity: var(--b-checkbox-ring-active-opacity)
}

.b-checkbox-box {
    grid-area: input;
    pointer-events: none;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .2s ease, border .2s ease;
    width: var(--b-checkbox-size);
    height: var(--b-checkbox-size);
    border-radius: var(--b-checkbox-border-radius);
    border: var(--b-checkbox-border-width) solid var(--b-checkbox-border-color);
    background: var(--b-checkbox-background);
    opacity: var(--b-checkbox-opacity, 1)
}

.b-checkbox-box:after {
    transition: scale .2s ease, border .2s ease;
    scale: 0;
    font-family: var(--b-widget-icon-font-family);
    content: var(--b-checkbox-checked-check-content);
    color: var(--b-checkbox-checked-check-color);
    font-size: var(--b-checkbox-check-font-size)
}

.b-menu>.b-menu-body-wrap .b-menu-content>.b-checkbox {
    margin-inline-start: var(--b-checkbox-inner-gap)
}

.b-field-container:not(.b-field-container-inline)>.b-field-container-wrap {
    margin-top: .5em;
    margin-inline-start: calc(var(--b-checkbox-size) + var(--b-checkbox-inner-gap))
}

.b-container.b-label-align-before .b-checkbox:not(.b-has-label) {
    grid-column: 2 / 2
}

:root,
:host {
    --b-field-filter-picker-group-gap: 4em
}

.b-field-filter-picker-group .b-no-visible-children {
    display: none
}

.b-field-filter-picker-group [data-ref=pickers] {
    --b-container-gap: 0
}

.b-field-filter-picker-group-row {
    position: relative;
    flex-shrink: 0;
    align-items: baseline;
    overflow: visible;
    padding-top: var(--b-field-filter-picker-group-gap);
    padding-bottom: .5em
}

.b-field-filter-picker-group-row:first-child {
    --b-field-filter-picker-group-gap: 0
}

.b-field-filter-picker-group-row:first-child:before {
    display: none
}

.b-field-filter-picker-group-row:before {
    content: attr(data-separator-text);
    font-size: 85%;
    position: absolute;
    text-align: center;
    width: 100%;
    top: .15em;
    background-position: 0 50%;
    background-size: 100% 1px;
    background-repeat: no-repeat;
    background-image: linear-gradient(to right, var(--b-border-5), var(--b-border-5) 44%, transparent 44%, transparent 56%, var(--b-border-5) 56%);
    height: var(--b-field-filter-picker-group-gap);
    line-height: var(--b-field-filter-picker-group-gap)
}

.b-field-filter-picker-group-row:not(.b-field-filter-picker-group-row-removable) {
    padding-inline-end: 2.25em
}

.b-field-filter-picker-group-row [data-ref=pickers] {
    gap: 0
}

.b-field-filter-picker-group-filter-active {
    width: 2.3em;
    align-self: center
}

.b-field-filter-picker-group-filter-active.b-slide-toggle {
    width: 3.5em
}

.b-field-filter-picker-group-other-filters {
    padding: .5em 0
}

.b-field-filter-picker-group-add-button {
    align-self: center
}

.b-field-filter-picker-group-remove {
    margin-inline-start: .25em
}

:root,
:host {
    --b-radio-check-gap: .2em;
    --b-radio-background: var(--b-neutral-100);
    --b-radio-checked-background: var(--b-radio-background);
    --b-radio-checked-border-color: var(--b-radio-checked-color)
}

.b-radio.b-checkbox {
    --b-checkbox-border-radius: 50%;
    --b-checkbox-checked-check-content: "";
    --b-checkbox-checked-check-color: var(--b-primary);
    --b-checkbox-background: var(--b-radio-background);
    --b-checkbox-checked-background: var(--b-radio-checked-background);
    --b-checkbox-checked-border-color: var(--b-radio-checked-border-color);
    --b-checkbox-checked-hover-background: var(--b-radio-checked-background);
    --b-checkbox-check-font-size: 1em
}

.b-radio.b-checkbox .b-checkbox-box:after {
    border-radius: 50%;
    aspect-ratio: 1 / 1;
    width: 100%;
    background: var(--b-radio-checked-color, var(--b-primary));
    border: var(--b-radio-check-gap) solid var(--b-radio-checked-background)
}

:root,
:host {
    --b-slide-toggle-border-width: var(--b-checkbox-border-width);
    --b-slide-toggle-width: 2.75em;
    --b-slide-toggle-height: 1.75em;
    --b-slide-toggle-thumb-size: 1em;
    --b-slide-toggle-border-radius: calc(var(--b-slide-toggle-height) / 2);
    --b-slide-toggle-checked-thumb-size: 1em;
    --b-slide-toggle-thumb-offset: .15em;
    --b-slide-toggle-font-size: 1em;
    --b-slide-toggle-disabled-opacity: .5;
    --b-slide-toggle-inner-gap: .5em;
    --b-slide-toggle-label-before-padding: 0 .5em 0 0;
    --b-slide-toggle-ring-color: var(--b-neutral-60);
    --b-slide-toggle-disabled-background: var(--b-neutral-85);
    --b-slide-toggle-disabled-thumb-background: var(--b-neutral-100);
    --b-slide-toggle-focus-outline-width: var(--b-checkbox-focus-outline-width);
    --b-slide-toggle-focus-outline-offset: var(--b-checkbox-focus-outline-offset);
    --b-slide-toggle-thumb-border: null;
    --b-slide-toggle-checked-thumb-border: null;
    --b-slide-toggle-thumb-color: var(--b-primary);
    --b-slide-toggle-thumb-background: var(--b-neutral-100);
    --b-slide-toggle-hovered-thumb-background: var(--b-neutral-95);
    --b-slide-toggle-checked-thumb-background: var(--b-neutral-100);
    --b-slide-toggle-checked-border-color: var(--b-slide-toggle-checked-background);
    --b-slide-toggle-checked-ring-color: var(--b-primary);
    --b-slide-toggle-checked-thumb-offset: 4px
}

.b-internal {
    --bi-slidetoggle-thumb-position: null
}

.b-slide-toggle {
    --bi-slidetoggle-thumb-position: calc(var(--b-slide-toggle-thumb-offset) + (var(--b-slide-toggle-checked-thumb-size) - var(--b-slide-toggle-thumb-size)) / 2);
    --b-checkbox-inner-gap: var(--b-slide-toggle-inner-gap);
    --b-checkbox-label-before-padding: var(--b-slide-toggle-label-before-padding)
}

.b-slide-toggle .b-field-inner {
    grid-template-columns: max-content
}

.b-slide-toggle input {
    width: 100%;
    height: 100%
}

.b-slide-toggle input:checked~.b-slide-toggle-toggle {
    --b-slide-toggle-background: var(--b-slide-toggle-checked-background, var(--b-primary));
    --b-slide-toggle-thumb-background: var(--b-slide-toggle-checked-thumb-background);
    --b-slide-toggle-thumb-border: var(--b-slide-toggle-checked-thumb-border);
    --b-slide-toggle-thumb-size: var(--b-slide-toggle-checked-thumb-size);
    --b-slide-toggle-border-color: var(--b-slide-toggle-checked-border-color);
    --b-slide-toggle-ring-color: var(--b-slide-toggle-checked-ring-color);
    --bi-slidetoggle-thumb-position: calc(var(--b-slide-toggle-width) - var(--b-slide-toggle-checked-thumb-size) - var(--b-slide-toggle-checked-thumb-offset))
}

.b-slide-toggle:not(.b-disabled):hover,
.b-slide-toggle:not(.b-disabled).b-hover,
.b-slide-toggle:not(.b-disabled):focus-within,
.b-slide-toggle:not(.b-disabled).b-focus,
.b-slide-toggle:not(.b-disabled).b-active,
.b-slide-toggle:not(.b-disabled):active {
    --b-slide-toggle-thumb-background: var(--b-slide-toggle-hovered-thumb-background);
    --b-slide-toggle-background: var(--b-slide-toggle-hover-background)
}

:is(.b-slide-toggle:not(.b-disabled):hover, .b-slide-toggle:not(.b-disabled).b-hover, .b-slide-toggle:not(.b-disabled):focus-within, .b-slide-toggle:not(.b-disabled).b-focus, .b-slide-toggle:not(.b-disabled).b-active, .b-slide-toggle:not(.b-disabled):active) input:checked~.b-slide-toggle-toggle {
    --b-slide-toggle-thumb-background: var(--b-slide-toggle-checked-hovered-thumb-background);
    --b-slide-toggle-background: var(--b-slide-toggle-checked-hover-background, var(--b-primary))
}

:is(.b-slide-toggle:not(.b-disabled):focus-within, .b-slide-toggle:not(.b-disabled).b-focus):has(:focus-visible) .b-slide-toggle-toggle,
:is(.b-slide-toggle:not(.b-disabled):focus-within, .b-slide-toggle:not(.b-disabled).b-focus).b-focus .b-slide-toggle-toggle {
    outline: var(--b-slide-toggle-focus-outline-width) solid var(--b-slide-toggle-focus-outline-color, var(--b-checkbox-focus-outline-color));
    outline-offset: var(--b-slide-toggle-focus-outline-offset)
}

.b-slide-toggle.b-disabled {
    --b-slide-toggle-opacity: var(--b-slide-toggle-disabled-opacity);
    --b-slide-toggle-border-color: var(--b-slide-toggle-disabled-border-color);
    --b-slide-toggle-checked-border-color: var(--b-slide-toggle-disabled-border-color)
}

.b-slide-toggle.b-disabled input:checked~.b-slide-toggle-toggle {
    --b-slide-toggle-background: var(--b-slide-toggle-disabled-background);
    --b-slide-toggle-thumb-background: var(--b-slide-toggle-disabled-thumb-background);
    --b-slide-toggle-checked-border-color: var(--b-slide-toggle-disabled-background)
}

.b-slide-toggle-toggle {
    display: flex;
    align-items: center;
    pointer-events: none;
    grid-area: input;
    transition: background .2s, border .2s, opacity .2s;
    font-size: var(--b-slide-toggle-font-size);
    width: var(--b-slide-toggle-width);
    height: var(--b-slide-toggle-height);
    background: var(--b-slide-toggle-background);
    border: var(--b-slide-toggle-border-width) solid var(--b-slide-toggle-border-color);
    border-radius: var(--b-slide-toggle-border-radius);
    opacity: var(--b-slide-toggle-opacity, 1)
}

.b-slide-toggle-thumb {
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    transition: background .2s ease, width .2s ease, margin .2s ease;
    position: relative;
    background: var(--b-slide-toggle-thumb-background);
    border: var(--b-slide-toggle-thumb-border);
    color: var(--b-slide-toggle-thumb-color);
    width: var(--b-slide-toggle-thumb-size);
    margin-inline-start: var(--bi-slidetoggle-thumb-position)
}

.b-slide-toggle-thumb:before {
    border-radius: 50%;
    pointer-events: none;
    transition: opacity .5s ease;
    aspect-ratio: 1 / 1;
    display: block;
    position: absolute;
    top: 50%;
    inset-inline-start: 50%;
    translate: calc(-50% * var(--b-rtl-negate)) -50%;
    content: var(--b-checkbox-ring-content);
    background: var(--b-slide-toggle-ring-color);
    opacity: var(--bi-checkbox-ring-opacity);
    width: calc(var(--b-slide-toggle-checked-thumb-size) * 1.7)
}

.b-date-time-field {
    width: unset;
    --b-text-field-default-width: 22em
}

.b-date-time-field.b-field>div.b-field-inner {
    display: flex
}

.b-date-time-field.b-field>div.b-field-inner:has(.b-field-trigger.b-align-start),
.b-date-time-field.b-field>div.b-field-inner:has(.b-field-trigger.b-align-end) {
    padding-inline: 0
}

.b-date-time-field .b-date-field,
.b-date-time-field .b-time-field {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    grid-template-areas: "inner";
    grid-template-columns: 1fr;
    --b-text-field-background: transparent
}

:is(.b-date-time-field .b-date-field, .b-date-time-field .b-time-field) .b-label {
    display: none
}

:is(.b-date-time-field .b-date-field, .b-date-time-field .b-time-field) .b-field-inner:before {
    content: none
}

.b-date-time-field .b-date-field {
    flex: 1 1 53%
}

.b-date-time-field .b-date-field .b-step-trigger-forward.b-align-end {
    padding-inline-end: calc(var(--b-text-field-input-padding) / 2)
}

.b-date-time-field .b-time-field {
    flex: 1 1 46%
}

.b-date-time-field .b-time-field .b-field-trigger.b-align-start {
    padding-inline-start: calc(var(--b-text-field-input-padding) / 2)
}

:root,
:host {
    --b-text-field-font-weight: normal;
    --b-text-field-padding: 0;
    --b-text-field-input-font-size: var(--b-widget-font-size);
    --b-text-field-input-padding: 0;
    --b-text-field-border-style: solid;
    --b-text-field-focus-border-style: solid;
    --b-text-field-disabled-opacity: .4;
    --b-text-field-outlined-border-radius: var(--b-widget-border-radius);
    --b-field-trigger-gap: .75em;
    --b-field-trigger-edge-gap: 1em;
    --b-text-field-default-template-areas: "before inner";
    --b-text-field-default-template-columns: auto 1fr;
    --b-text-field-default-label-padding: 0 var(--b-widget-padding) 0 0;
    --b-text-field-label-grid-area: before;
    --b-text-field-label-color: var(--b-widget-color);
    --b-text-field-input-color: var(--b-widget-color);
    --b-text-field-border-color: var(--b-widget-border-color);
    --b-text-field-label-above-grid-area: above;
    --b-text-field-label-font-size: var(--b-label-font-size);
    --b-text-field-empty-label-font-size: var(--b-text-field-label-font-size);
    --b-text-field-label-scale: 1;
    --b-text-field-empty-label-scale: 1;
    --b-text-field-trigger-read-only-color: var(--b-neutral-85);
    --b-text-field-trigger-disabled-color: var(--b-neutral-40);
    --b-text-field-filled-background: var(--b-neutral-95);
    --b-text-field-filled-hover-background: var(--b-neutral-90);
    --b-text-field-filled-focus-background: var(--b-neutral-90);
    --b-text-field-filled-border-width: 0;
    --b-text-field-filled-border-radius: var(--b-widget-border-radius);
    --b-text-field-filled-input-padding: 1em;
    --b-text-field-filled-no-label-input-padding: 1em;
    --b-text-field-filled-focus-border-width: 0;
    --b-text-field-filled-focus-label-color: var(--b-widget-color);
    --b-text-field-outlined-background: var(--b-neutral-100);
    --b-text-field-outlined-border-width: 1px;
    --b-text-field-outlined-border-color: var(--b-border-5);
    --b-text-field-outlined-input-padding: var(--b-widget-padding);
    --b-text-field-outlined-focus-border-width: var(--b-widget-focus-outline-width);
    --b-text-field-outlined-label-background: transparent;
    --b-text-field-outlined-label-padding: 0;
    --b-text-field-outlined-label-before-padding: 0;
    --b-text-field-outlined-label-above-padding: 0;
    --b-text-field-outlined-hover-border-color: var(--b-border-4);
    --b-text-field-outlined-hover-background: var(--b-neutral-100);
    --b-text-field-outlined-focus-background: var(--b-neutral-100);
    --b-text-field-outlined-focus-label-color: var(--b-widget-color);
    --b-text-field-filled-material-label-position: static;
    --b-field-trigger-color: var(--b-neutral-60);
    --b-spin-trigger-font-size: 1em;
    --b-text-field-invalid-border-color: var(--b-color-red);
    --b-text-field-invalid-label-color: var(--b-color-red);
    --b-text-field-color: var(--b-primary);
    --b-text-field-focus-border-color: var(--b-primary);
    --b-text-field-default-width: 12.5em;
    --bi-text-field-input-width: 100%
}

.b-internal {
    --b-text-field-opacity: null;
    --b-text-field-border-width: null;
    --b-text-field-focus-border-width: null;
    --b-text-field-focus-label-color: null;
    --bi-text-field-empty-label-padding: null
}

.b-text-field,
.b-number-field,
.b-date-time-field,
.b-text-area-field {
    position: relative;
    height: fit-content;
    width: fit-content;
    overflow: visible;
    border-radius: var(--b-text-field-border-radius);
    color: var(--b-text-field-color);
    --b-field-label-grid-area: var(--b-text-field-label-grid-area);
    --b-field-label-padding: var(--b-text-field-label-padding);
    --b-field-default-template-areas: var(--b-text-field-default-template-areas);
    --b-field-default-template-columns: var(--b-text-field-default-template-columns);
    --b-field-default-label-padding: var(--b-text-field-default-label-padding);
    --b-label-color: var(--b-text-field-label-color)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field):where(:not(.b-has-width)) {
    width: var(--b-text-field-default-width)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field)>.b-field-inner {
    display: flex;
    min-width: 0;
    position: relative;
    overflow: hidden;
    transition: background var(--b-default-transition-duration);
    background: var(--b-text-field-background);
    border-radius: var(--b-text-field-border-radius);
    padding: var(--b-text-field-padding);
    opacity: var(--b-text-field-opacity);
    width: var(--bi-text-field-input-width)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field)>.b-field-inner:before {
    content: "";
    position: absolute;
    inset: 0;
    background: transparent;
    border-radius: inherit;
    pointer-events: none;
    transition: border .1s;
    z-index: 1;
    border-width: var(--b-text-field-border-width);
    border-style: var(--b-text-field-border-style);
    border-color: var(--b-text-field-border-color)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) bry-time,
:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) input,
:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) textarea,
:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) .b-display-field-value {
    border: none;
    background: transparent;
    width: 100%;
    font-family: inherit;
    outline: none;
    text-align: inherit;
    color: var(--b-text-field-input-color);
    font-weight: var(--b-text-field-font-weight);
    height: var(--b-text-field-input-height);
    font-size: var(--b-text-field-input-font-size);
    padding: var(--b-text-field-input-padding)
}

:is(:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) bry-time, :is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) input, :is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) textarea, :is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) .b-display-field-value)::selection {
    background: var(--b-text-field-selection-background, var(--b-primary-85))
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) input::placeholder {
    color: var(--bi-text-field-placeholder-color, var(--b-text-4));
    font-style: var(--b-text-field-placeholder-font-style)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-label-above {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    --b-field-label-grid-area: var(--b-text-field-label-above-grid-area)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) label {
    z-index: 2;
    line-height: 1em;
    align-self: start;
    transition: top .2s ease, left .2s ease, font-size .2s ease, padding .2s ease, scale .2s ease;
    transform-origin: top left;
    font-size: var(--b-text-field-label-font-size)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-has-label:not(.b-label-before, .b-label-align-before) {
    --bi-text-field-placeholder-color: var(--b-text-field-label-above-placeholder-color, var(--b-text-4))
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-has-label:not(.b-label-before, .b-label-align-before) label {
    scale: var(--b-text-field-label-scale);
    position: var(--b-text-field-material-label-position);
    top: var(--b-text-field-material-label-top);
    inset-inline-start: var(--b-text-field-material-label-left);
    cursor: var(--b-text-field-material-label-cursor)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) .b-field-trigger {
    display: flex;
    flex-direction: column;
    align-self: stretch;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex: 0 0 auto;
    min-width: 1em;
    gap: 0;
    color: var(--b-field-trigger-color)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) .b-field-trigger.b-align-start {
    padding-inline-start: var(--b-field-trigger-gap)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) .b-field-trigger.b-align-start:first-child {
    padding-inline-start: var(--b-field-trigger-edge-gap)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) .b-field-trigger.b-align-end {
    padding-inline-end: var(--b-field-trigger-gap)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) .b-field-trigger.b-align-end:last-child,
:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) .b-field-trigger.b-align-end.b-last-trigger {
    padding-inline-end: var(--b-field-trigger-edge-gap)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) .b-spin-trigger .b-icon {
    font-size: var(--b-spin-trigger-font-size)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) .b-field-container-wrap {
    grid-row: 1
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-disabled {
    --b-text-field-opacity: var(--b-text-field-disabled-opacity);
    --b-text-field-label-color: var(--b-widget-disabled-color)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-disabled .b-field-trigger {
    cursor: auto;
    color: var(--b-text-field-trigger-disabled-color)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-read-only .b-field-trigger {
    cursor: auto;
    color: var(--b-text-field-trigger-read-only-color)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field):not(.b-has-label) input,
:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field):not(.b-has-label) span {
    padding: var(--b-text-field-no-label-input-padding, var(--b-text-field-input-padding))
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-text-field-filled {
    --b-text-field-background: var(--b-text-field-filled-background);
    --b-text-field-hover-background: var(--b-text-field-filled-hover-background);
    --b-text-field-border-width: var(--b-text-field-filled-border-width);
    --b-text-field-border-radius: var(--b-text-field-filled-border-radius);
    --b-text-field-input-padding: var(--b-text-field-filled-input-padding);
    --b-text-field-no-label-input-padding: var(--b-text-field-filled-no-label-input-padding);
    --b-text-field-focus-border-width: var(--b-text-field-filled-focus-border-width);
    --b-text-field-label-before-padding: var(--b-text-field-filled-label-before-padding);
    --b-text-field-label-above-padding: var(--b-text-field-filled-label-above-padding);
    --b-text-field-hover-border-color: var(--b-text-field-filled-hover-border-color);
    --b-text-field-focus-background: var(--b-text-field-filled-focus-background);
    --b-text-field-focus-label-color: var(--b-text-field-filled-focus-label-color);
    --b-text-field-material-label-position: var(--b-text-field-filled-material-label-position);
    --b-text-field-material-label-top: var(--b-text-field-filled-material-label-top);
    --b-text-field-material-label-left: var(--b-text-field-filled-material-label-left);
    --b-text-field-material-label-cursor: var(--b-text-field-filled-material-label-cursor);
    --b-text-field-material-empty-label-font-size: var(--b-text-field-filled-material-empty-label-font-size);
    --b-text-field-material-empty-label-top: var(--b-text-field-filled-material-empty-label-top);
    --b-text-field-material-empty-label-left: var(--b-text-field-filled-material-empty-label-left)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-text-field-filled:where(.b-has-start-trigger:not(.b-no-steppers)),
:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-text-field-filled:has(.b-has-start-trigger:not(.b-no-steppers)) {
    --b-text-field-material-label-left: var(--b-text-field-filled-material-trigger-label-left);
    --b-text-field-material-empty-label-left: var(--b-text-field-filled-material-trigger-empty-label-left)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-text-field-outlined {
    --b-text-field-background: var(--b-text-field-outlined-background);
    --b-text-field-border-radius: var(--b-text-field-outlined-border-radius);
    --b-text-field-border-width: var(--b-text-field-outlined-border-width);
    --b-text-field-border-color: var(--b-text-field-outlined-border-color);
    --b-text-field-input-padding: var(--b-text-field-outlined-input-padding);
    --b-text-field-focus-border-width: var(--b-text-field-outlined-focus-border-width);
    --b-text-field-label-before-padding: var(--b-text-field-outlined-label-before-padding);
    --b-text-field-label-above-padding: var(--b-text-field-outlined-label-above-padding);
    --b-text-field-hover-border-color: var(--b-text-field-outlined-hover-border-color);
    --b-text-field-hover-background: var(--b-text-field-outlined-hover-background);
    --b-text-field-focus-label-color: var(--b-text-field-outlined-focus-label-color);
    --b-text-field-focus-background: var(--b-text-field-outlined-focus-background);
    --b-text-field-material-label-position: var(--b-text-field-outlined-material-label-position, static);
    --b-text-field-material-label-top: var(--b-text-field-outlined-material-label-top);
    --b-text-field-material-label-left: var(--b-text-field-outlined-material-label-left);
    --b-text-field-material-label-cursor: var(--b-text-field-outlined-material-label-cursor);
    --b-text-field-material-empty-label-background: var(--b-text-field-outlined-material-empty-label-background);
    --b-text-field-material-empty-label-top: var(--b-text-field-outlined-material-empty-label-top);
    --b-text-field-material-empty-label-left: var(--b-text-field-outlined-material-empty-label-left)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-text-field-outlined:where(.b-has-start-trigger:not(.b-no-steppers)) {
    --b-text-field-material-empty-label-left: var(--b-text-field-outlined-material-trigger-empty-label-left)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-text-field-outlined:where(:not(.b-label-before, .b-label-align-before)) {
    --b-text-field-label-padding: var(--b-text-field-outlined-label-padding)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-text-field-outlined:where(:not(.b-label-before, .b-label-align-before)) label:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: var(--b-text-field-outlined-label-background)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field):hover:where(:not(.b-disabled)) {
    --b-text-field-background: var(--b-text-field-hover-background);
    --b-text-field-border-color: var(--b-text-field-hover-border-color)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field):focus-within {
    --b-text-field-background: var(--b-text-field-focus-background);
    --b-text-field-border-width: var(--b-text-field-focus-border-width);
    --b-text-field-border-style: var(--b-text-field-focus-border-style);
    --b-text-field-border-color: var(--b-text-field-focus-border-color)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field):focus-within:not(.b-label-before, .b-label-align-before) {
    --b-text-field-label-color: var(--b-text-field-focus-label-color)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-widget.b-empty:not(:focus-within) {
    --b-text-field-label-font-size: var(--b-text-field-empty-label-font-size);
    --b-text-field-label-padding: var(--b-text-field-empty-label-padding);
    --b-text-field-label-scale: var(--b-text-field-empty-label-scale);
    --b-text-field-outlined-label-above-padding: var(--b-text-field-outlined-material-empty-label-padding);
    --b-text-field-label-background: var(--b-text-field-material-empty-label-background);
    --b-text-field-material-label-top: var(--b-text-field-material-empty-label-top);
    --b-text-field-material-label-left: var(--b-text-field-material-empty-label-left);
    --b-text-field-outlined-label-background: var(--b-text-field-outlined-material-empty-label-background)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field).b-invalid:where(:not(.b-disabled)) {
    --b-text-field-border-color: var(--b-text-field-invalid-border-color);
    --b-text-field-label-color: var(--b-text-field-invalid-label-color);
    --b-text-field-focus-label-color: var(--b-text-field-invalid-label-color)
}

:is(.b-text-field, .b-number-field, .b-date-time-field, .b-text-area-field) .b-field-clear-clone {
    position: absolute;
    animation: b-shrink-width .3s
}

.b-theme-transition .b-text-field .b-field-inner:before {
    transition-duration: var(--b-default-transition-duration)
}

.b-field-hint {
    align-self: stretch;
    overflow: visible;
    pointer-events: none;
    position: relative;
    white-space: nowrap;
    width: 0
}

.b-field-no-hint .b-field-hint {
    display: none
}

.b-field-hint-content {
    position: absolute;
    inset-inline-end: .6em;
    top: 50%;
    translate: 0 -50%;
    color: var(--b-text-field-input-color);
    font-size: var(--b-label-font-size);
    font-weight: var(--b-label-font-weight)
}

.b-container:where(:not(.b-toolbar))>.b-field,
.b-panel:where(:not(.b-toolbar))>.b-panel-body-wrap>.b-panel-content>.b-field,
.b-panel:where(:not(.b-toolbar))>.b-panel-overlay>.b-panel-body-wrap>.b-panel-content>.b-field,
.b-grid-header>.b-field {
    --b-text-field-default-width: 100%
}

@keyframes b-shrink-width {
    0% {
        max-width: 200px
    }

    to {
        max-width: 0
    }
}

:root,
:host {
    --b-combo-filled-chip-view-padding-top: 1.55em;
    --b-combo-filled-label-before-chip-view-padding-top: .5em;
    --b-combo-outlined-chip-view-padding-top: .6em;
    --b-combo-outlined-label-before-chip-view-padding-top: .5em;
    --b-combo-chip-font-size: .9em;
    --b-combo-chip-view-margin-block: 0;
    --b-combo-chip-view-padding: .6em 1em;
    --b-combo-chip-view-min-height: 3em
}

.b-combo [data-ref=expand]:before {
    transition: rotate .2s ease
}

.b-combo.b-open [data-ref=expand]:before {
    rotate: 180deg
}

.b-combo.b-not-editable :not(.b-field-trigger) {
    cursor: pointer
}

.b-combo.b-uses-chip-view .b-field-inner {
    justify-items: start
}

.b-combo.b-uses-chip-view:not(.b-empty) input::placeholder {
    visibility: hidden
}

.b-combo.b-text-field-filled {
    --b-combo-chip-view-padding-top: var(--b-combo-filled-chip-view-padding-top)
}

.b-combo.b-text-field-outlined {
    --b-combo-chip-view-padding-top: var(--b-combo-outlined-chip-view-padding-top)
}

:is(.b-combo.b-label-align-before, .b-combo.b-label-before).b-text-field-filled {
    --b-combo-chip-view-padding-top: var(--b-combo-filled-label-before-chip-view-padding-top)
}

:is(.b-combo.b-label-align-before, .b-combo.b-label-before).b-text-field-outlined {
    --b-combo-chip-view-padding-top: var(--b-combo-outlined-label-before-chip-view-padding-top)
}

:is(.b-combo.b-hide-trigger, .b-combo.b-read-only) .b-field-trigger.b-icon-picker {
    display: none
}

.b-combo-chip-view {
    color: inherit;
    flex: 1;
    align-self: stretch;
    padding-top: var(--b-combo-chip-view-padding-top);
    min-height: var(--b-combo-chip-view-min-height);
    margin-block: var(--b-combo-chip-view-margin-block);
    --b-chip-view-chip-font-size: var(--b-combo-chip-font-size);
    --b-chip-view-padding: var(--b-combo-chip-view-padding)
}

.b-combo-chip-view.b-chip-view input {
    flex: 1;
    height: auto;
    order: 99999;
    padding: 0;
    align-self: center
}

.b-combo-picker.b-empty:not(.b-masked)[data-add-new-value]:after {
    content: attr(data-add-new-value);
    display: block;
    cursor: pointer;
    padding: var(--b-list-item-padding);
    color: var(--b-list-item-color)
}

.b-float-root>.b-combo-picker {
    padding: var(--b-menu-padding)
}

:is(.b-color-field, .b-color-box-combo) .b-color-box {
    grid-area: before;
    width: 1.5em;
    flex-shrink: 0;
    transition: color var(--b-default-transition-duration);
    border-radius: var(--b-color-picker-color-border-radius);
    margin-inline: var(--b-widget-padding) 0
}

:is(.b-color-field, .b-color-box-combo) .b-color-box.b-no-color {
    background: none;
    border: 1px solid var(--b-color-picker-color-no-color-color)
}

.b-color-box {
    width: 1em;
    aspect-ratio: 1 / 1;
    background: currentColor;
    margin-inline-end: .5em;
    color: var(--b-primary)
}

.b-date-field.b-no-steppers .b-step-trigger {
    display: none
}

:root,
:host {
    --b-date-range-field-gap: .5em
}

.b-date-range-field:not(.b-has-width) {
    width: auto
}

.b-date-range-field .b-field-container-wrap {
    grid-area: inner
}

.b-date-range-field .b-field-container {
    --b-container-gap: var(--b-date-range-field-gap)
}

.b-date-range-field .b-field {
    grid-template-areas: "inner";
    grid-template-columns: 1fr
}

.b-date-range-field .b-start-date {
    width: 13em
}

.b-date-range-field .b-end-date {
    width: 11em;
    --b-field-trigger-gap: 0
}

.b-date-range-field .b-end-time,
.b-date-range-field .b-start-time {
    flex: 7 7 auto
}

.b-date-range-picker .b-start-date,
.b-date-range-picker .b-end-date {
    width: 13em
}

.b-date-range-picker.b-date-range-field-picker .b-end-date {
    width: 11em
}

.b-display-field span {
    display: flex;
    min-width: 10em;
    align-items: center
}

:root,
:host {
    --b-text-area-field-padding: var(--b-widget-padding)
}

.b-text-area-field {
    height: auto
}

.b-text-area-field .b-field-inner {
    height: 100%;
    --b-text-field-input-padding: var(--b-text-area-field-padding)
}

.b-text-area-field textarea {
    font-family: inherit;
    height: 100%;
    min-height: var(--b-text-field-input-height)
}

:root,
:host {
    --b-text-area-picker-field-picker-color: var(--b-neutral-20)
}

.b-text-area-picker-field-picker {
    display: flex;
    min-height: 10em;
    border: none;
    outline: none;
    padding: 1em;
    background: var(--b-text-area-picker-field-picker-background, var(--b-primary-98));
    color: var(--b-text-area-picker-field-picker-color)
}

.b-text-area-picker-field-picker:focus {
    border-color: var(--b-primary)
}

.b-time-field bry-time {
    align-items: center;
    --b-time-field-button-background: color-mix(in srgb, currentColor, #fff 85%);
    --b-time-field-input-background: transparent
}

.b-time-field.b-empty .b-field-trigger {
    animation-delay: -300s
}

.b-time-field.b-empty:not(.b-contains-focus) bry-time {
    opacity: 0
}

.b-time-field.b-no-steppers .b-step-trigger {
    display: none
}

.b-time-field .b-step-trigger:before {
    transition: color .3s
}

.b-time-field.b-rtl .b-step-trigger:before {
    transform: scaleX(-1)
}

:root,
:host {
    --b-field-set-border-radius: var(--b-widget-border-radius);
    --b-field-set-border-width: 1px;
    --b-field-set-padding: var(--b-panel-padding);
    --b-field-set-border-color: var(--b-border-3);
    --b-field-set-background: var(--b-neutral-100);
    --b-field-set-label-font-size: .8em
}

.b-field-set {
    position: relative;
    overflow: visible;
    align-items: stretch;
    gap: 0;
    color: var(--b-primary);
    --b-panel-with-header-padding: var(--b-field-set-padding)
}

.b-field-set:not(.b-radio-group) {
    display: flex
}

.b-field-set fieldset {
    background: var(--b-field-set-background);
    border: var(--b-field-set-border-width) solid var(--b-field-set-border-color);
    border-radius: var(--b-field-set-border-radius);
    padding: var(--b-field-set-padding);
    margin: 0
}

.b-field-set fieldset.b-inline {
    display: flex;
    flex-direction: row
}

.b-field-set.b-columns fieldset {
    grid-template-columns: repeat(var(--bi-container-columns), auto)
}

.b-field-set:not(.b-label-align-before)>.b-label {
    position: absolute;
    inset-block-start: 0;
    inset-inline-start: 0;
    translate: calc(1em * var(--b-rtl-negate)) -50%;
    padding-inline: .5em;
    z-index: 1;
    line-height: 1em;
    font-size: var(--b-field-set-label-font-size)
}

.b-field-set:not(.b-label-align-before)>.b-label:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    clip-path: inset(calc(.5em - var(--b-field-set-border-width)) 0 0 0);
    background: var(--b-field-set-background)
}

.b-field-set.b-label-align-before:not(:has(.b-inline))>.b-label {
    align-self: start
}

legend.b-field-set-legend {
    position: absolute;
    top: -10000px;
    clip: rect(0, 0, 0, 0)
}

.b-toolbar-content>.b-field-set {
    --b-field-set-background: var(--b-toolbar-background, var(--b-neutral-100))
}

:root,
:host {
    --b-radio-group-gap: var(--b-widget-gap)
}

.b-radio-group {
    width: fit-content;
    --b-field-set-border-width: 0;
    --b-field-set-border-radius: 0;
    --b-field-set-padding: 0;
    --b-field-label-above-gap: 0;
    --b-field-set-background: transparent;
    --b-panel-background: transparent
}

.b-radio-group>.b-panel-header {
    padding-inline: var(--b-field-set-padding)
}

.b-radio-group:not(:has(.b-inline)) {
    --b-panel-gap: var(--b-radio-group-gap)
}

.b-radio-group:not(:has(.b-inline)) .b-radio-group-content {
    width: fit-content
}

.b-radio-group:has(.b-inline) {
    overflow: visible
}

.b-radio-group:has(.b-inline)>.b-label:not(.b-align-start) {
    scale: var(--b-text-field-label-scale)
}

.b-radio-group:has(.b-inline)>div {
    grid-area: inner
}

.b-radio-group:has(.b-inline) .b-panel-body-wrap {
    overflow: visible
}

.b-radio-group:has(.b-inline) .b-panel-content {
    display: flex;
    flex-direction: row;
    overflow: visible;
    flex-wrap: wrap
}

.b-radio-group .b-radio-group-body-wrap,
.b-radio-group fieldset.b-radio-group-content {
    overflow: visible
}

.b-radio-group.b-label-before {
    flex-direction: row;
    gap: var(--b-field-label-before-gap)
}

.b-radio-group.b-label-above>.b-label {
    align-self: flex-start;
    margin-bottom: .5em
}

.b-radio-group.b-has-label>.b-label {
    position: static;
    translate: none;
    padding-inline: 0;
    font-size: var(--b-label-font-size)
}

.b-radio-group.b-has-label>.b-label:before {
    content: none
}

:root,
:host {
    --b-popup-border-radius: var(--b-widget-border-radius);
    --b-popup-text-popup-width: 25em;
    --b-popup-close-icon-content: "\f00d";
    --b-popup-maximize-icon-content: "\f065";
    --b-popup-padding: var(--b-widget-padding-large);
    --b-popup-background: var(--b-panel-background);
    --b-modal-mask-background: var(--b-mask-background);
    --b-popup-border: null
}

.b-popup.b-panel {
    --b-panel-background: var(--b-popup-background);
    --b-panel-padding: var(--b-popup-padding);
    border: var(--b-popup-border)
}

.b-popup.b-panel .b-panel {
    --b-panel-background: var(--b-popup-background)
}

.b-popup {
    border-radius: var(--b-popup-border-radius)
}

.b-popup .b-panel-body-wrap {
    border-radius: inherit
}

.b-popup .b-panel-body-wrap>.b-bottom-toolbar {
    background: transparent
}

.b-popup.b-header-dock-top .b-panel-body-wrap {
    border-start-start-radius: 0;
    border-start-end-radius: 0
}

.b-popup:where(.b-anchored) {
    overflow: visible
}

.b-popup:where(.b-anchored):where(.b-aligned-below),
.b-popup:where(.b-anchored):where(.b-aligned-above) {
    min-width: 2em
}

.b-text-popup {
    max-width: var(--b-popup-text-popup-width);
    --b-panel-gap: 0
}

.b-text-popup .b-popup-content {
    display: flex;
    flex-direction: column
}

.b-popup-close:before {
    content: var(--b-popup-close-icon-content)
}

.b-popup-expand:before {
    content: var(--b-popup-maximize-icon-content)
}

.b-tooltip-loading .b-icon {
    display: inline-block;
    margin-inline-end: .5em
}

@media (max-width : 480px) {
    .b-popup {
        max-width: 100% !important
    }
}

.b-modal-mask {
    position: fixed;
    inset: 0;
    pointer-events: all;
    z-index: 1;
    background: var(--b-modal-mask-background);
    color: var(--b-modal-mask-color, var(--b-primary))
}

.b-modal-mask.b-modal-transparent {
    --b-modal-mask-background: transparent
}

.b-internal {
    --bi-hint-highlight-color: null;
    --bi-hint-highlight-top: null;
    --bi-hint-highlight-left: null;
    --bi-hint-highlight-width: null;
    --bi-hint-highlight-height: null
}

.b-hint code {
    padding: 2px 4px;
    line-height: 1;
    background: var(--b-neutral-80)
}

.b-hint .b-description {
    line-height: 1.7em
}

.b-hint .b-mask {
    --b-mask-background: color-mix(in srgb, var(--b-neutral-70), transparent 90%);
    --b-mask-text-background: transparent;
    --b-elevation-1: none;
    --b-mask-text-color: transparent
}

.b-hint.b-floating {
    width: max-content;
    max-width: 37em;
    transition: top .5s, inset-inline-start .5s
}

.b-hint.b-floating [data-ref=steps] {
    margin-inline-end: auto
}

.b-hint.b-floating.b-no-title .b-hint-header {
    max-height: 0;
    padding: 0
}

.b-hint.b-floating.b-no-title .b-popup-close {
    position: absolute;
    inset-block-start: var(--b-widget-padding-large);
    inset-inline-end: var(--b-widget-padding-large)
}

.b-hint.b-floating.b-no-title .b-hint-content {
    padding-inline-end: calc(var(--b-widget-padding-large) * 2);
    padding-block: var(--b-widget-padding-large) 0
}

.b-hint.b-floating,
.b-hint.b-floating .b-hint-body-wrap {
    border-radius: .5em
}

.b-hint.b-floating .b-button {
    height: 2.75em
}

.b-hint.b-floating .b-tooltip-header .b-tool {
    position: absolute;
    top: .5em;
    right: .5em
}

.b-float-root .b-hint-highlighter {
    background-color: transparent;
    pointer-events: none !important;
    transition: left .5s, top .5s, width .5s, height .5s, background-color .7s;
    border-radius: 3px;
    outline: 2px solid var(--bi-hint-highlight-color);
    left: var(--bi-hint-highlight-left);
    top: var(--bi-hint-highlight-top);
    width: var(--bi-hint-highlight-width);
    height: var(--bi-hint-highlight-height)
}

.b-float-root .b-hint-highlighter.b-hint-highlighter-ping {
    z-index: 99999;
    animation: b-anim-hint-highlighter-ping 1.2s 3 linear
}

.b-float-root .b-hint-highlighter.b-hint-highlighter-center {
    background-color: var(--bi-hint-highlight-color);
    border-radius: 50%;
    outline-offset: -2px;
    z-index: -1
}

.b-float-root .b-hint-highlighter.b-realigning {
    transition: none !important
}

@keyframes b-anim-hint-highlighter-ping {
    0% {
        outline-color: var(--bi-hint-highlight-color);
        outline-offset: -2px;
        outline-width: 2px
    }

    70% {
        outline-offset: 20px;
        outline-color: color-mix(in srgb, var(--bi-hint-highlight-color) 40%, transparent 60%);
        outline-width: 10px
    }

    95% {
        outline-offset: 20px;
        outline-color: transparent;
        outline-width: 10px
    }

    96% {
        outline-offset: -2px;
        outline-color: transparent;
        outline-width: 2px
    }

    to {
        outline-offset: -2px;
        outline-color: var(--bi-hint-highlight-color);
        outline-width: 2px
    }
}

.b-modal-mask[owned-by*=b-hint] {
    --bi-hint-highlight-radius: var(--b-widget-border-radius, 0px);
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 0% 0%, var(--bi-hint-highlight-left) var(--bi-hint-highlight-top), var(--bi-hint-highlight-left) calc(var(--bi-hint-highlight-top) + var(--bi-hint-highlight-height)), calc(var(--bi-hint-highlight-left) + var(--bi-hint-highlight-width)) calc(var(--bi-hint-highlight-top) + var(--bi-hint-highlight-height)), calc(var(--bi-hint-highlight-left) + var(--bi-hint-highlight-width)) var(--bi-hint-highlight-top), var(--bi-hint-highlight-left) var(--bi-hint-highlight-top));
    transition: all .5s
}

@supports (clip-path: shape(from 0 0, close)) {
    .b-modal-mask[owned-by*=b-hint] {
        clip-path: shape(evenodd from 0% 0%, line to 100% 0%, line to 100% 100%, line to 0% 100%, line to 0% 0%, line to calc(var(--bi-hint-highlight-left) + var(--bi-hint-highlight-radius)) var(--bi-hint-highlight-top), arc to var(--bi-hint-highlight-left) calc(var(--bi-hint-highlight-top) + var(--bi-hint-highlight-radius)) of var(--bi-hint-highlight-radius), line to var(--bi-hint-highlight-left) calc(var(--bi-hint-highlight-top) + var(--bi-hint-highlight-height) - var(--bi-hint-highlight-radius)), arc to calc(var(--bi-hint-highlight-left) + var(--bi-hint-highlight-radius)) calc(var(--bi-hint-highlight-top) + var(--bi-hint-highlight-height)) of var(--bi-hint-highlight-radius), line to calc(var(--bi-hint-highlight-left) + var(--bi-hint-highlight-width) - var(--bi-hint-highlight-radius)) calc(var(--bi-hint-highlight-top) + var(--bi-hint-highlight-height)), arc to calc(var(--bi-hint-highlight-left) + var(--bi-hint-highlight-width)) calc(var(--bi-hint-highlight-top) + var(--bi-hint-highlight-height) - var(--bi-hint-highlight-radius)) of var(--bi-hint-highlight-radius), line to calc(var(--bi-hint-highlight-left) + var(--bi-hint-highlight-width)) calc(var(--bi-hint-highlight-top) + var(--bi-hint-highlight-radius)), arc to calc(var(--bi-hint-highlight-left) + var(--bi-hint-highlight-width) - var(--bi-hint-highlight-radius)) var(--bi-hint-highlight-top) of var(--bi-hint-highlight-radius), line to calc(var(--bi-hint-highlight-left) + var(--bi-hint-highlight-radius)) var(--bi-hint-highlight-top), line to 0% 0%)
    }
}

:root,
:host {
    --b-menu-border-radius: var(--b-widget-border-radius);
    --b-menu-background: var(--b-panel-background);
    --b-menu-padding: 0
}

.b-menu.b-popup {
    min-height: 2em;
    user-select: none;
    -webkit-user-select: none;
    background: var(--b-menu-background);
    --b-panel-padding: var(--b-menu-padding);
    --b-popup-border-radius: var(--b-menu-border-radius)
}

.b-menu.b-popup .b-menu-body-wrap {
    border-radius: 0
}

.b-menu-content {
    gap: 0
}

.b-menu-content>:not(.b-menu-item) {
    margin: 1em
}

.b-menu-custom-content {
    display: flex
}

.b-menu-with-submenu .b-menu-item:not(.b-has-submenu) {
    --bi-menu-item-margin-inline-end: 2em
}

:root,
:host {
    --b-message-dialog-min-width: 20em;
    --b-message-dialog-button-min-width: 6.5em;
    --bi-messagedialog-display: none
}

.b-message-dialog {
    user-select: none;
    -webkit-user-select: none;
    min-width: var(--b-message-dialog-min-width)
}

.b-message-dialog .b-button {
    min-width: var(--b-message-dialog-button-min-width)
}

.b-message-dialog .b-message-dialog-input,
.b-message-dialog .b-message-dialog-ok-button,
.b-message-dialog .b-message-dialog-cancel-button {
    display: var(--bi-messagedialog-display)
}

:is(.b-message-dialog.b-message-dialog-prompt, .b-message-dialog.b-message-dialog-confirm) .b-message-dialog-ok-button,
:is(.b-message-dialog.b-message-dialog-prompt, .b-message-dialog.b-message-dialog-confirm) .b-message-dialog-cancel-button {
    --bi-messagedialog-display: flex
}

.b-message-dialog.b-message-dialog-prompt .b-message-dialog-input,
.b-message-dialog.b-message-dialog-alert .b-message-dialog-ok-button {
    --bi-messagedialog-display: flex
}

.b-message-dialog .b-message-dialog-message {
    display: block
}

:root,
:host {
    --b-tooltip-plain-padding: .5em;
    --b-tooltip-rich-padding: var(--b-widget-padding);
    --b-tooltip-rich-border-radius: var(--b-widget-border-radius-large);
    --b-tooltip-plain-font-size: .9em;
    --b-tooltip-text-gap: 1em;
    --b-tooltip-flex-direction: column;
    --b-tooltip-align-items: flex-start;
    --b-tooltip-content-display: flex;
    --b-tooltip-plain-color: var(--b-widget-color);
    --b-tooltip-rich-color: var(--b-widget-color);
    --b-tooltip-rich-background: var(--b-neutral-100);
    --b-tooltip-z-index: 2
}

.b-tooltip.b-popup {
    color: var(--b-primary);
    z-index: var(--b-tooltip-z-index)
}

.b-tooltip.b-popup:not(.b-allow-over) {
    user-select: none;
    -webkit-user-select: none
}

.b-tooltip.b-popup.b-plain-tooltip {
    --b-popup-background: var(--b-tooltip-plain-background, var(--b-neutral-100));
    --b-panel-padding: var(--b-tooltip-plain-padding);
    --b-tooltip-color: var(--b-tooltip-plain-color);
    --b-widget-font-size: var(--b-tooltip-plain-font-size);
    --b-popup-border-radius: var(--b-widget-border-radius)
}

.b-tooltip.b-popup.b-plain-tooltip .b-tooltip-content {
    display: block;
    text-align: center
}

.b-rich-tooltip {
    --b-popup-background: var(--b-tooltip-rich-background);
    --b-tooltip-color: var(--b-tooltip-rich-color);
    --b-panel-padding: var(--b-tooltip-rich-padding);
    --b-popup-border-radius: var(--b-tooltip-rich-border-radius)
}

.b-rich-tooltip .b-tooltip-content {
    flex-wrap: wrap;
    display: var(--b-tooltip-content-display);
    flex-direction: var(--b-tooltip-flex-direction);
    align-items: var(--b-tooltip-align-items)
}

.b-tooltip-content {
    color: var(--b-tooltip-color)
}

.b-tooltip-content:where(.b-text-content) {
    --b-panel-gap: var(--b-tooltip-text-gap)
}

.b-tooltip-content:where(.b-text-content)>* {
    margin-block: 0
}

:root,
:host {
    --b-year-picker-gap: .5em;
    --b-year-picker-padding: var(--b-year-picker-gap);
    --b-year-picker-title-font-weight: 600;
    --b-year-picker-year-font-weight: var(--b-widget-font-weight);
    --b-year-picker-year-color: var(--b-neutral-30)
}

.b-month-picker-body-wrap,
.b-year-picker-body-wrap {
    height: 100%
}

.b-month-picker-content,
.b-year-picker-content {
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: auto;
    place-items: center;
    height: 100%;
    gap: var(--b-year-picker-gap);
    padding: var(--b-year-picker-padding)
}

:is(.b-month-picker-content, .b-year-picker-content) .b-button {
    width: 100%;
    padding: .5em 0;
    --b-button-font-weight: var(--b-year-picker-year-font-weight);
    --b-button-color: var(--b-year-picker-year-color);
    --b-button-hover-background: var(--b-year-picker-hover-background, var(--b-date-picker-date-hover-background, var(--b-primary-95)))
}

:is(.b-month-picker-content, .b-year-picker-content) .b-button.b-selected {
    --b-button-background: var(--b-year-picker-selected-background, var(--b-date-picker-selected-background, var(--b-primary-90)));
    --b-button-color: var(--b-year-picker-selected-color);
    --b-button-font-weight: var(--b-year-picker-title-font-weight)
}

.b-month-picker-title,
.b-year-picker-title {
    flex: 1;
    background: transparent;
    font-weight: var(--b-year-picker-title-font-weight)
}

:is(.b-month-picker-title, .b-year-picker-title) label {
    font-size: 1.1em
}

.b-time-picker {
    max-height: 39em
}

.b-time-picker .b-list {
    background-color: transparent;
    align-items: center;
    scroll-snap-type: block
}

.b-time-picker-item {
    aspect-ratio: 1;
    flex-shrink: 0;
    width: 3em;
    scroll-snap-align: start;
    display: grid;
    place-content: center;
    cursor: pointer;
    border-radius: var(--b-widget-border-radius)
}

.b-time-picker-item:hover,
.b-time-picker-item[aria-selected=true] {
    outline: var(--b-widget-focus-outline-width) solid var(--b-widget-focus-outline-color);
    outline-offset: calc(var(--b-widget-focus-outline-width) * -1)
}

.b-time-picker-content {
    justify-content: center
}

:root,
:host {
    --b-toolbar-gap: var(--b-widget-gap);
    --b-toolbar-padding: var(--b-widget-padding);
    --b-toolbar-separator-height: 70%;
    --b-toolbar-justify-content: flex-start;
    --b-toolbar-background: var(--b-panel-background);
    --b-toolbar-separator-color: var(--b-neutral-50)
}

.b-toolbar {
    display: flex;
    flex-direction: row;
    gap: 0;
    overflow: hidden;
    flex-shrink: 0;
    transition: background-color .2s;
    background: var(--b-toolbar-background)
}

.b-toolbar.b-dock-left,
.b-toolbar.b-dock-right {
    flex-direction: column;
    --bi-toolbar-min-width: var(--b-toolbar-min-size, unset)
}

.b-toolbar.b-dock-top,
.b-toolbar.b-dock-bottom {
    align-items: center;
    flex-wrap: nowrap;
    --bi-toolbar-min-height: var(--b-toolbar-min-size, unset)
}

:is(.b-toolbar.b-dock-top, .b-toolbar.b-dock-bottom) .b-box-center.b-toolbar-content>.b-button {
    height: 100%;
    min-height: var(--b-button-height)
}

.b-toolbar .b-overflow-button {
    margin: var(--b-toolbar-padding)
}

.b-toolbar .b-box-center.b-toolbar-content,
.b-toolbar .b-html {
    align-items: center
}

.b-box-center.b-toolbar-content {
    flex: 1;
    overflow: hidden;
    gap: var(--b-toolbar-gap);
    padding: var(--b-toolbar-padding);
    min-height: var(--bi-toolbar-min-height);
    min-width: var(--bi-toolbar-min-width);
    justify-content: var(--b-toolbar-justify-content)
}

.b-toolbar-separator {
    border-inline-end: 1px solid var(--b-toolbar-separator-color);
    height: var(--b-toolbar-separator-height)
}

.b-toolbar-fill {
    flex: 1
}

.b-toolbar-overflow-menu>.b-panel-body-wrap>.b-menu-content .b-widget {
    flex: 0 0 auto !important;
    width: auto
}

.b-confirmation-bar {
    --b-toolbar-justify-content: flex-end
}

.b-paging-toolbar [data-ref=pageNumber] {
    width: auto
}

.b-paging-toolbar [data-ref=pageNumber] .b-field-inner {
    width: 3.5em
}

.b-paging-toolbar [data-ref=pageNumber] input {
    text-align: center
}

:root,
:host {
    --b-tab-bar-border-bottom-width: 1px;
    --b-tab-bar-border-bottom-color: var(--b-border-6);
    --b-tab-bar-background: transparent;
    --b-tab-bar-padding: 0
}

.b-tab-bar {
    transition: border var(--b-default-transition-duration), background var(--b-default-transition-duration);
    border-bottom: var(--b-tab-bar-border-bottom-width) solid var(--b-tab-bar-border-bottom-color);
    --b-toolbar-gap: 0;
    --b-toolbar-padding: var(--b-tab-bar-padding);
    --b-toolbar-background: var(--b-tab-bar-background)
}

.demo-header {
    display: flex;
    padding-inline: .7em 0;
    padding-block: 0;
    flex: 0 0 auto;
    background: var(--b-demo-header-background);
    border-bottom: 1px solid var(--b-border-6);
    transition: background-color var(--b-default-transition-duration), padding var(--b-default-transition-duration), font-size .1s, border-color var(--b-default-transition-duration)
}

.demo-header a {
    text-decoration: none
}

.demo-header .b-icon {
    font-size: 1.1em
}

.demo-header .title {
    margin-inline-end: auto;
    display: flex;
    align-items: center;
    white-space: nowrap;
    color: var(--b-text-1)
}

.demo-header .title:focus-visible {
    outline-offset: var(--b-button-focus-outline-offset);
    outline: var(--b-button-focus-outline-width) solid var(--b-widget-focus-outline-color);
    border-radius: var(--b-widget-border-radius)
}

.demo-header .title h1 {
    display: flex;
    align-items: center;
    margin: 0;
    font-weight: 600;
    font-size: 1.1em
}

.demo-header .title svg {
    margin-inline-end: .75em;
    height: 2em;
    width: 2em;
    background: #0076f8;
    padding-inline-end: .2em;
    border-radius: 5px
}

.demo-header .title svg g {
    fill: #fff
}

.demo-header .b-toolbar {
    font-size: .9em;
    --b-toolbar-padding: .7em;
    --b-toolbar-background: transparent
}

:root,
:host {
    --b-histogram-bar-border-width: null;
    --b-histogram-bar0-border-width: null;
    --b-histogram-bar1-border-width: null;
    --b-histogram-bar2-border-width: null;
    --b-histogram-bar3-border-width: null;
    --b-histogram-bar4-border-width: null;
    --b-histogram-bar5-border-width: null;
    --b-histogram-transition-duration: .3s;
    --b-histogram-bar-legend-font-size: .8em;
    --b-histogram-bar-color: var(--b-color-green);
    --b-histogram-bar-border-color: null;
    --b-histogram-bar0-color: var(--b-color-green);
    --b-histogram-bar0-border-color: null;
    --b-histogram-bar1-color: var(--b-color-blue);
    --b-histogram-bar1-border-color: null;
    --b-histogram-bar2-color: var(--b-color-indigo);
    --b-histogram-bar2-border-color: null;
    --b-histogram-bar3-color: var(--b-color-teal);
    --b-histogram-bar3-border-color: null;
    --b-histogram-bar4-color: var(--b-color-orange);
    --b-histogram-bar4-border-color: null;
    --b-histogram-bar5-color: var(--b-color-lime);
    --b-histogram-bar5-border-color: null;
    --b-histogram-exceeds-top-bar-color: var(--b-color-red);
    --b-histogram-outline-color: #f99
}

.b-histogram {
    background-color: #fff;
    padding: 1px;
    contain: strict
}

.b-histogram svg * {
    vector-effect: non-scaling-stroke
}

.b-histogram rect {
    fill: var(--b-histogram-bar-color);
    stroke-width: var(--b-histogram-bar-border-width);
    stroke: var(--b-histogram-bar-border-color);
    transition-property: x, y, width, height, fill;
    transition-duration: var(--b-histogram-transition-duration)
}

.b-histogram rect.b-series-index-0 {
    fill: var(--b-histogram-bar0-color);
    stroke-width: var(--b-histogram-bar0-border-width);
    stroke: var(--b-histogram-bar0-border-color)
}

.b-histogram rect.b-series-index-1 {
    fill: var(--b-histogram-bar1-color);
    stroke-width: var(--b-histogram-bar1-border-width);
    stroke: var(--b-histogram-bar1-border-color)
}

.b-histogram rect.b-series-index-2 {
    fill: var(--b-histogram-bar2-color);
    stroke-width: var(--b-histogram-bar2-border-width);
    stroke: var(--b-histogram-bar2-border-color)
}

.b-histogram rect.b-series-index-3 {
    fill: var(--b-histogram-bar3-color);
    stroke-width: var(--b-histogram-bar3-border-width);
    stroke: var(--b-histogram-bar3-border-color)
}

.b-histogram rect.b-series-index-4 {
    fill: var(--b-histogram-bar4-color);
    stroke-width: var(--b-histogram-bar4-border-width);
    stroke: var(--b-histogram-bar4-border-color)
}

.b-histogram rect.b-series-index-5 {
    fill: var(--b-histogram-bar5-color);
    stroke-width: var(--b-histogram-bar5-border-width);
    stroke: var(--b-histogram-bar5-border-color)
}

.b-histogram rect.b-exceeds-top {
    fill: var(--b-histogram-exceeds-top-bar-color)
}

.b-histogram text.b-bar-legend {
    writing-mode: tb;
    text-anchor: end;
    font-size: var(--b-histogram-bar-legend-font-size);
    pointer-events: none
}

.b-histogram svg {
    overflow: visible
}

.b-histogram path {
    fill: transparent;
    stroke: var(--b-histogram-outline-color);
    transition: d var(--b-histogram-transition-duration);
    pointer-events: none
}

:root,
:host {
    --b-scale-line-color: var(--b-neutral-60);
    --b-scale-label-color: var(--b-neutral-30)
}

.b-scale {
    contain: strict
}

.b-scale svg * {
    vector-effect: non-scaling-stroke
}

.b-scale.b-scale-vertical text.b-scale-tick-label {
    translate: 0 .3em
}

.b-scale.b-scale-vertical.b-align-right {
    text-anchor: end
}

.b-scale.b-scale-horizontal text.b-scale-tick-label {
    text-anchor: middle
}

.b-scale path {
    stroke: var(--b-scale-line-color);
    pointer-events: none
}

.b-scale text {
    fill: var(--b-scale-label-color)
}

:root,
:host {
    --b-label-font-size: var(--b-widget-font-size);
    --b-label-font-weight: 400;
    --b-label-disabled-color: var(--b-neutral-50)
}

.b-label {
    white-space: nowrap;
    align-items: center;
    transition: color var(--b-default-transition-duration);
    color: var(--b-label-color);
    font-size: var(--b-label-font-size);
    font-weight: var(--b-label-font-weight)
}

.b-disabled>.b-label {
    --b-label-color: var(--b-label-disabled-color)
}

.b-hbox,
.b-vbox {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    position: relative
}

:is(.b-hbox, .b-vbox)>.b-box-center {
    flex: 1 1 auto;
    overflow: hidden
}

.b-hbox {
    flex-flow: row nowrap
}

.b-vbox {
    flex-flow: column nowrap
}

.b-box-justify-stretch {
    justify-content: stretch
}

:root,
:host {
    --bi-card-margin: 1em
}

.b-card-container {
    display: flex;
    flex-flow: row nowrap;
    align-items: stretch;
    overflow: hidden;
    padding: 0;
    position: relative
}

.b-card-container.b-animating {
    overflow: hidden
}

.b-card-container>.b-card-item {
    flex: 1 0 100%;
    align-items: stretch;
    max-width: 100%;
    min-width: 100%
}

.b-card-container.b-hide-child-headers>.b-panel:not(.b-positioned)>.b-panel-header {
    display: none
}

.b-slide-in-left {
    animation: b-anim-card-slide-in-left calc(.3s * var(--bi-duration-debug-factor, 1)) ease 0s 1
}

.b-slide-out-right {
    pointer-events: none;
    left: var(--bi-card-margin);
    animation: b-anim-card-slide-out-right calc(.3s * var(--bi-duration-debug-factor, 1)) ease 0s 1
}

.b-slide-in-right {
    animation: b-anim-card-slide-in-right calc(.3s * var(--bi-duration-debug-factor, 1)) ease 0s 1
}

.b-slide-out-left {
    pointer-events: none;
    margin-inline-start: calc(var(--bi-card-margin) * -1);
    margin-inline-end: var(--bi-card-margin);
    animation: b-anim-card-slide-out-left calc(.3s * var(--bi-duration-debug-factor, 1)) ease 0s 1
}

@keyframes b-anim-card-slide-in-left {
    0% {
        translate: -100% 0
    }

    to {
        translate: 0
    }
}

@keyframes b-anim-card-slide-out-right {
    0% {
        translate: -100% 0
    }

    to {
        translate: 0
    }
}

@keyframes b-anim-card-slide-in-right {
    0% {
        translate: 0
    }

    to {
        translate: -100% 0
    }
}

@keyframes b-anim-card-slide-out-left {
    0% {
        translate: 0
    }

    to {
        translate: -100% 0
    }
}

.b-fit-container {
    display: flex;
    flex-flow: row nowrap;
    align-items: stretch;
    overflow: hidden;
    position: relative
}

.b-fit-container>.b-fit-item {
    flex: 1 0 auto;
    margin: 0;
    max-width: 100%;
    align-self: stretch !important
}

:root,
:host {
    --b-list-multi-select-gap: 0;
    --b-list-item-gap: .75em;
    --b-list-item-padding: .75em;
    --b-list-multi-select-item-padding: var(--b-list-item-padding);
    --b-list-item-border-radius: 0;
    --b-list-item-group-padding: .75em .75em .75em 2em;
    --b-list-selected-icon-size: 1.25em;
    --b-list-selected-icon-content: var(--b-checkbox-checked-check-content);
    --b-list-checkbox-checked-check-color: var(--b-text-5);
    --b-list-item-group-header-font-weight: calc(var(--b-widget-font-weight) + 200);
    --b-list-background: transparent;
    --b-list-title-background: var(--b-neutral-100);
    --b-list-item-color: var(--b-widget-color);
    --b-list-title-font-weight: 500
}

.b-list {
    display: flex;
    flex-direction: column;
    padding: 0;
    margin: 0;
    background: var(--b-list-background);
    border-radius: var(--b-list-border-radius)
}

.b-list.b-floating {
    --b-list-border-radius: var(--b-widget-border-radius);
    --b-list-background: var(--b-list-floating-background, var(--b-primary-100))
}

.b-list .b-empty-text {
    pointer-events: none
}

.b-list .b-select-all-item {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--b-list-title-background);
    font-weight: var(--b-list-title-font-weight)
}

:has(.b-list-title)>:is(.b-list .b-select-all-item) {
    top: 2em
}

.b-list.b-multi-select {
    gap: var(--b-list-multi-select-gap)
}

.b-list-item {
    display: flex;
    cursor: pointer;
    overflow: clip;
    user-select: none;
    -webkit-user-select: none;
    flex-shrink: 0;
    background: var(--b-list-item-background);
    color: var(--b-list-item-color);
    font-weight: var(--b-list-item-font-weight);
    padding: var(--b-list-item-padding);
    border-radius: var(--b-list-item-border-radius)
}

.b-list-item .b-selected-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .2s;
    width: var(--b-list-selected-icon-size);
    height: var(--b-list-selected-icon-size);
    border-radius: var(--b-checkbox-border-radius);
    border: var(--b-checkbox-border-width) solid var(--b-checkbox-border-color);
    background: var(--b-checkbox-background)
}

.b-list-item .b-selected-icon:before {
    transition: scale .2s ease;
    scale: 0;
    content: var(--b-checkbox-checked-check-content);
    color: var(--b-list-checkbox-checked-check-color);
    font-size: var(--b-checkbox-check-font-size)
}

.b-multi-select>.b-list-item {
    padding: var(--b-list-multi-select-item-padding)
}

.b-multi-select>.b-list-item.b-selected .b-selected-icon:before {
    scale: 1
}

.b-multi-select>.b-list-item.b-selected .b-list-item-content {
    --b-checkbox-background: var(--b-list-checkbox-checked-background);
    --b-checkbox-border-color: var(--b-list-checkbox-checked-border-color, var(--b-list-checkbox-checked-background))
}

.b-list-item:focus {
    outline: none
}

.b-list-item.b-list-item-group-header {
    --b-list-item-font-weight: var(--b-list-item-group-header-font-weight)
}

.b-list-item.b-out-of-view:before {
    content: "..."
}

.b-grouped>.b-list-item:not(.b-list-item-group-header) {
    --b-list-item-padding: var(--b-list-item-group-padding)
}

.b-list-item.b-selected {
    --b-list-item-background: var(--b-list-item-selected-background, var(--b-primary-95))
}

.b-list-item.b-active,
.b-list-item:focus-visible {
    --b-list-item-background: var(--b-list-item-focus-background, var(--b-primary-85))
}

.b-list-title {
    position: sticky;
    top: 0;
    z-index: 1;
    font-weight: var(--b-list-title-font-weight);
    background: var(--b-list-title-background)
}

.b-list-expander-icon {
    pointer-events: all;
    width: 1.1em;
    height: 1em
}

.b-list-item:is(.b-list-item-group-header, .b-list-item-tree-parent) .b-list-expander-icon {
    margin-inline-start: auto;
    margin-inline-end: 0
}

.b-list-item-content {
    display: flex;
    align-items: center;
    flex: 1;
    gap: var(--b-list-item-gap)
}

:root,
:host {
    --b-chip-view-gap: .25em;
    --b-chip-view-padding: 0;
    --b-chip-view-chip-border-radius: 1.5em;
    --b-chip-view-chip-border-width: 1px;
    --b-chip-view-chip-font-size: 1em;
    --b-chip-view-chip-gap: .5em;
    --b-chip-view-chip-padding-block: .25em;
    --b-chip-view-chip-padding-inline: .75em;
    --b-chip-view-chip-border-color: transparent;
    --b-chip-view-chip-color: var(--b-text-1);
    --b-chip-view-chip-selected-color: var(--b-text-1)
}

.b-chip-view {
    display: flex;
    flex-flow: row wrap;
    background: transparent;
    align-items: center;
    --b-list-multi-select-gap: var(--b-chip-view-gap);
    padding: var(--b-chip-view-padding)
}

.b-chip-view.b-transitioning-height {
    transition: height .2s ease-in-out
}

.b-chip-view.b-adding-item.b-prevent-scroll {
    overflow: clip !important
}

.b-chip {
    display: flex;
    cursor: pointer;
    outline: none;
    overflow: clip;
    opacity: 1;
    transition: opacity .2s linear, translate .2s ease-in, max-width .2s, background .2s;
    translate: 0 0;
    max-width: 15em;
    align-items: center;
    line-height: 1.2em;
    border: var(--b-chip-view-chip-border-width) solid var(--b-chip-view-chip-border-color);
    background: var(--b-chip-view-chip-background, var(--b-primary-90));
    font-size: var(--b-chip-view-chip-font-size);
    border-radius: var(--b-chip-view-chip-border-radius);
    padding-block: var(--b-chip-view-chip-padding-block);
    padding-inline: var(--b-chip-view-chip-padding-inline)
}

.b-chip:hover {
    --b-chip-view-chip-background: var(--b-chip-view-chip-hover-background, var(--b-primary-85))
}

.b-chip.b-selected {
    --b-chip-view-chip-background: var(--b-chip-view-chip-selected-background, var(--b-primary-75));
    --b-chip-view-chip-color: var(--b-chip-view-chip-selected-color)
}

.b-chip.b-active {
    --b-chip-view-chip-background: var(--b-chip-view-chip-active-background, var(--b-primary-85));
    --b-chip-view-chip-color: var(--b-chip-view-chip-selected-color)
}

.b-chip.b-selected.b-active {
    --b-chip-view-chip-background: var(--b-chip-view-chip-active-selected-background, var(--b-primary-75))
}

.b-chip:focus-visible {
    --b-chip-view-chip-border-color: var(--b-chip-view-chip-focus-border-color, var(--b-primary-35))
}

.b-chip.b-removing.b-anim-collapse {
    transition: opacity .2s linear, max-width .2s ease-out;
    opacity: 0;
    max-width: 0
}

.b-chip.b-adding.b-anim-slide-up {
    opacity: 0;
    translate: 0 1em
}

.b-chip.b-adding.b-anim-expand {
    max-width: 0;
    opacity: 0
}

.b-chip-content {
    display: flex;
    overflow: clip;
    white-space: nowrap;
    align-items: center;
    gap: var(--b-chip-view-chip-gap);
    color: var(--b-chip-view-chip-color)
}

:root,
:host {
    --b-color-picker-color-border-radius: var(--b-widget-border-radius);
    --b-color-picker-color-outline-width: 2px;
    --b-color-picker-color-outline: var(--b-color-picker-color-outline-width) solid currentColor;
    --b-color-picker-color-hover-outline: var(--b-color-picker-color-outline-width) solid currentColor;
    --b-color-picker-color-active-outline: var(--b-color-picker-color-outline-width) solid color-mix(in oklab, currentColor, transparent 50%);
    --b-color-picker-color-outline-offset: 2px;
    --b-color-picker-color-size: 2em;
    --b-color-picker-gap: .8em;
    --b-color-picker-padding: var(--b-widget-padding);
    --b-color-picker-color-no-color-color: #ccc;
    --b-color-picker-columns: 5
}

.b-color-picker {
    display: grid;
    overflow: visible;
    --b-menu-padding: var(--b-color-picker-padding);
    grid-gap: var(--b-color-picker-gap);
    grid-template-columns: repeat(var(--b-color-picker-columns), 1fr);
    --b-list-background: transparent
}

.b-color-picker.b-combo-picker,
.b-color-picker.b-color-column-picker {
    grid-template-columns: repeat(auto-fill, minmax(var(--b-color-picker-color-size), 1fr));
    min-width: calc(var(--b-color-picker-color-size) * 4 + var(--b-color-picker-gap) * 3)
}

:is(.b-color-picker.b-combo-picker, .b-color-picker.b-color-column-picker) .b-color-picker-swatch {
    width: 100%
}

.b-color-picker-swatch {
    display: grid;
    aspect-ratio: 1 / 1;
    cursor: pointer;
    background-color: currentColor;
    position: relative;
    place-items: center;
    overflow: clip;
    outline-offset: calc(var(--b-color-picker-color-outline-width) * -1);
    transition: outline-offset .2s;
    outline: var(--b-color-picker-color-hover-outline);
    border-radius: var(--b-color-picker-color-border-radius);
    color: var(--b-primary);
    width: var(--b-color-picker-color-size)
}

.b-color-picker-swatch.b-color-active {
    outline: var(--b-color-picker-color-active-outline);
    outline-offset: var(--b-color-picker-color-outline-offset)
}

.b-color-picker-swatch.b-selected,
.b-color-picker-swatch:hover {
    outline: var(--b-color-picker-color-hover-outline);
    outline-offset: var(--b-color-picker-color-outline-offset)
}

.b-color-picker-swatch.b-no-color {
    background-color: transparent;
    border: 1px solid currentColor;
    color: var(--b-color-picker-color-no-color-color)
}

.b-color-picker-swatch.b-no-color:before {
    content: "";
    position: absolute;
    height: 300%;
    border-inline-end: 1px solid currentColor;
    rotate: 135deg
}

:root,
:host {
    --b-mask-border-radius: var(--b-widget-border-radius);
    --b-mask-padding: var(--b-widget-padding);
    --b-mask-text-background: var(--b-popup-background, var(--b-neutral-100));
    --b-mask-progress-height: .25em;
    --b-mask-background: color-mix(in srgb, var(--b-neutral-0), transparent 85%);
    --b-mask-text-color: var(--b-widget-color);
    --b-mask-progress-color: color-mix(in srgb, var(--b-mask-text-color), transparent 30%);
    --b-mask-color: var(--b-primary);
    --b-mask-transition-duration: .5s
}

.b-mask {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    z-index: 100;
    opacity: 1;
    background: var(--b-mask-background);
    color: var(--b-mask-color);
    transition: opacity var(--b-mask-transition-duration)
}

.b-mask.b-delayed-show {
    opacity: 0
}

@starting-style {
    .b-mask {
        opacity: 0
    }
}

.b-mask-rendition-text {
    --b-mask-color: transparent;
    --b-mask-text-color: var(--b-text-2)
}

.b-mask-rendition-text .b-mask-content {
    box-shadow: none
}

.b-mask-content {
    position: relative;
    overflow: hidden;
    background: var(--b-mask-text-background);
    box-shadow: var(--b-elevation-1);
    border-radius: var(--b-mask-border-radius)
}

.b-mask-progress-bar {
    height: var(--b-mask-progress-height);
    background: var(--b-mask-progress-color)
}

.b-mask-text {
    display: flex;
    gap: .5em;
    user-select: none;
    -webkit-user-select: none;
    align-items: center;
    color: var(--b-mask-text-color);
    padding: var(--b-mask-padding)
}

.b-masked {
    position: relative
}

:root,
:host {
    --b-menu-item-gap: var(--b-widget-gap);
    --b-menu-item-icon-width: 1em;
    --b-menu-item-min-width: 12em;
    --b-menu-item-padding: var(--b-widget-padding);
    --b-menu-item-font-weight: var(--b-widget-font-weight);
    --b-menu-item-separator-border-color: var(--b-border-6);
    --b-menu-item-color: var(--b-widget-color);
    --b-menu-item-icon-color: var(--b-menu-item-color);
    --b-menu-item-disabled-color: var(--b-widget-disabled-color);
    --b-menu-item-disabled-icon-color: var(--b-neutral-70);
    --b-menu-item-background: transparent;
    --b-menu-item-hover-color: var(--b-widget-color);
    --b-menu-item-focus-color: var(--b-widget-color);
    --b-menu-item-hover-icon-color: var(--b-widget-color);
    --b-menu-item-focus-icon-color: var(--b-widget-color);
    --b-menu-item-border-radius: null;
    --b-menu-item-separator-height: 1px;
    --b-menu-item-separator-inset: 0
}

.b-menu-item {
    display: flex;
    align-items: center;
    outline: none;
    overflow: clip;
    flex-shrink: 0;
    background: var(--b-menu-item-background);
    border-radius: var(--b-menu-item-border-radius);
    color: var(--b-menu-item-color);
    font-weight: var(--b-menu-item-font-weight);
    gap: var(--b-menu-item-gap);
    min-width: var(--b-menu-item-min-width);
    padding: var(--b-menu-item-padding)
}

.b-menu-item.b-separator:not(.b-first-visible-child) {
    overflow: visible;
    margin-top: calc(var(--b-menu-item-separator-height) * 2 - 1px)
}

.b-menu-item.b-separator:not(.b-first-visible-child):before {
    content: "";
    display: block;
    position: absolute;
    inset-inline: var(--b-menu-item-separator-inset);
    top: calc(var(--b-menu-item-separator-height) * -1);
    border-top: 1px solid var(--b-menu-item-separator-border-color)
}

.b-menu-item:not(.b-disabled) {
    cursor: pointer
}

.b-menu-item:hover {
    --b-menu-item-color: var(--b-menu-item-hover-color);
    --b-menu-item-background: var(--b-menu-item-hover-background, var(--b-primary-90));
    --b-menu-item-icon-color: var(--b-menu-item-hover-icon-color)
}

.b-menu-item:focus-within {
    --b-menu-item-color: var(--b-menu-item-focus-color);
    --b-menu-item-background: var(--b-menu-item-focus-background, var(--b-primary-90));
    --b-menu-item-icon-color: var(--b-menu-item-focus-icon-color)
}

.b-menu-item.b-disabled {
    --b-menu-item-color: var(--b-menu-item-disabled-color);
    --b-menu-item-icon-color: var(--b-menu-item-disabled-icon-color)
}

.b-menu-item.b-rtl .b-icon-sub-menu:before {
    rotate: 180deg
}

.b-menu-item-icon {
    justify-self: center;
    color: var(--b-menu-item-icon-color);
    width: var(--b-menu-item-icon-width)
}

.b-menu-text {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-inline-start: calc(var(--b-menu-item-icon-width) + var(--b-menu-item-gap));
    margin-inline-end: var(--bi-menu-item-margin-inline-end)
}

.b-menu:not(.b-menu-with-icon) .b-menu-text,
.b-menu-item-icon~.b-menu-text {
    margin-inline-start: 0
}

:root,
:host {
    --b-badge-font-size: .7em;
    --b-badge-height: 1.7em;
    --b-badge-background: var(--b-color-red);
    --b-badge-color: var(--b-neutral-100);
    --b-badge-offset: -.6em
}

.b-widget.b-badge {
    overflow: visible
}

.b-badge:after {
    content: attr(data-badge);
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 5;
    padding-inline: .3em;
    background: var(--b-badge-background);
    border-radius: var(--b-badge-height);
    color: var(--b-badge-color);
    font-size: var(--b-badge-font-size);
    height: var(--b-badge-height);
    min-width: var(--b-badge-height);
    inset-inline-end: var(--b-badge-offset);
    inset-block-start: var(--b-badge-offset)
}

.b-formula-field-list {
    --b-panel-header-padding: var(--b-list-item-padding);
    --b-panel-header-font-size: 1em
}

.b-widget.b-tooltip.b-field-error-tip {
    --b-primary: var(--b-field-error-tip-primary);
    --b-tooltip-plain-background: var(--b-field-error-tip-background);
    --b-tooltip-plain-color: var(--b-field-error-tip-color)
}

.b-rich-text-field {
    overflow: visible;
    height: 10em;
    color: var(--b-text-field-input-color)
}

.b-rich-text-field .b-field-inner {
    overflow: visible;
    align-items: flex-start
}

.b-rich-text-field .b-rich-text-field-container {
    width: 100%;
    height: 100%;
    padding: .5em;
    outline: none
}

.b-cell-editor .b-rich-text-field {
    height: 100%;
    min-height: 100%
}

:root,
:host {
    --b-slider-thumb-size: 1.5em;
    --b-slider-thumb-elevation: var(--b-elevation-1);
    --b-slider-thumb-border: null;
    --b-slider-track-height: .5em;
    --b-slider-step-size: calc(var(--b-slider-track-height) * .4);
    --b-slider-step-width: unset;
    --b-slider-step-height: unset;
    --b-slider-step-opacity: .5;
    --b-slider-ring-content: none;
    --b-slider-value-border-radius: var(--b-widget-border-radius);
    --b-slider-thumb-value-size: 1.75em;
    --b-slider-thumb-text-color: var(--b-neutral-100);
    --b-slider-step-lesser-color: var(--b-neutral-100);
    --b-slider-value-color: var(--b-neutral-100);
    --b-slider-disabled-color: var(--b-neutral-80);
    --b-slider-disabled-thumb-color: var(--b-neutral-80);
    --b-slider-disabled-track-color: var(--b-neutral-90);
    --b-slider-track-color: var(--b-neutral-85);
    --b-slider-track-border: null;
    --b-slider-thumb-focus-outline-offset: 2px;
    --b-slider-thumb-focus-outline-width: var(--b-widget-focus-outline-width);
    --b-slider-step-border-radius: 50%
}

.b-internal {
    --bi-slider-value-percent: null;
    --bi-slider-value: null;
    --bi-slider-max: null;
    --bi-slider-min: null
}

.b-slider {
    place-items: center;
    gap: .75em;
    display: grid;
    overflow: visible;
    min-height: calc(var(--b-slider-thumb-value-size) + var(--b-slider-thumb-focus-outline-width) * 2 + var(--b-slider-thumb-focus-outline-offset) * 2);
    --bi-slider-value-percent: calc(((var(--bi-slider-value) - var(--bi-slider-min)) / (var(--bi-slider-max) - var(--bi-slider-min))) * 100%)
}

.b-slider.b-label-above>.b-label.b-align-start {
    justify-self: start
}

.b-slider .b-field-inner {
    width: 100%;
    grid-template-areas: "track"
}

.b-slider.b-text:not(.b-show-value) .b-field-inner {
    grid-template-areas: "track" "below";
    gap: .5em
}

.b-slider input {
    grid-area: track;
    appearance: none;
    opacity: 0;
    cursor: pointer;
    width: 100%;
    height: 100%
}

.b-slider:not(.b-disabled) .b-field-inner:hover {
    --bi-checkbox-ring-opacity: var(--b-checkbox-ring-hover-opacity)
}

.b-slider:not(.b-disabled) .b-field-inner:has(input:active) {
    --bi-checkbox-ring-opacity: var(--b-checkbox-ring-active-opacity)
}

.b-slider:not(.b-disabled) .b-field-inner:has(input:focus) {
    --bi-checkbox-ring-opacity: var(--b-checkbox-ring-focus-opacity)
}

.b-slider:not(.b-disabled) .b-field-inner:has(input:focus-visible) .b-slider-thumb {
    outline: var(--b-slider-thumb-focus-outline-width) solid var(--b-slider-thumb-focus-outline-color, var(--b-primary-60));
    outline-offset: var(--b-slider-thumb-focus-outline-offset)
}

.b-slider.b-thumb-value {
    --b-slider-thumb-size: var(--b-slider-thumb-value-size)
}

.b-slider.b-thumb-value .b-slider-thumb:after {
    display: grid;
    counter-reset: variable var(--bi-slider-value);
    content: counter(variable);
    font-size: .7em;
    width: 100%;
    height: 100%;
    place-items: center;
    line-height: 1em;
    color: var(--b-slider-thumb-text-color)
}

.b-slider.b-show-value .b-slider-internal-label {
    grid-column: -1;
    padding: .5em;
    font-size: .9em;
    position: relative;
    z-index: 1;
    min-width: 2.75em;
    text-align: center;
    background: var(--b-slider-value-background, var(--b-primary-30));
    border-radius: var(--b-slider-value-border-radius);
    color: var(--b-slider-value-color)
}

.b-slider.b-show-value .b-slider-internal-label:before {
    content: "";
    width: .75em;
    aspect-ratio: 1 / 1;
    background: inherit;
    rotate: 45deg;
    position: absolute;
    inset-inline-start: 0;
    top: 50%;
    translate: calc(-50% * var(--b-rtl-negate)) -50%
}

.b-slider.b-widget.b-disabled {
    --b-slider-color: var(--b-slider-disabled-color);
    --b-slider-thumb-color: var(--b-slider-disabled-thumb-color);
    --b-slider-track-color: var(--b-slider-disabled-track-color);
    --b-slider-value-background: var(--b-slider-disabled-thumb-color)
}

.b-grid-cell .b-slider {
    width: 100%
}

.b-slider-track {
    display: flex;
    align-items: center;
    grid-area: track;
    border-radius: .25em;
    position: relative;
    pointer-events: none;
    transition: background .2s;
    background: var(--b-slider-track-color);
    border: var(--b-slider-track-border);
    height: var(--b-slider-track-height);
    width: calc(100% - var(--b-slider-thumb-size))
}

.b-slider-progress {
    border-radius: inherit;
    height: 100%;
    pointer-events: none;
    transition: background .2s;
    width: var(--bi-slider-value-percent);
    background: var(--b-slider-color, var(--b-primary))
}

.b-slider-thumb {
    position: absolute;
    flex-shrink: 0;
    aspect-ratio: 1/ 1;
    border-radius: 50%;
    translate: calc(-50% * var(--b-rtl-negate));
    background-color: currentColor;
    z-index: 1;
    outline: 0 solid transparent;
    outline-offset: 0;
    transition: color .2s, scale .2s, outline .2s, outline-offset .2s;
    inset-inline-start: var(--bi-slider-value-percent);
    color: var(--b-slider-thumb-color, var(--b-slider-color, var(--b-primary)));
    width: var(--b-slider-thumb-size);
    box-shadow: var(--b-slider-thumb-elevation);
    border: var(--b-slider-thumb-border)
}

.b-slider-thumb:before {
    content: var(--b-slider-ring-content);
    display: block;
    background: currentColor;
    position: absolute;
    top: 50%;
    left: 50%;
    translate: calc(-50% * var(--b-rtl-negate)) -50%;
    transform-origin: center center;
    border-radius: 50%;
    pointer-events: none;
    transition: opacity .5s ease;
    aspect-ratio: 1 / 1;
    opacity: var(--bi-checkbox-ring-opacity);
    width: calc(var(--b-slider-thumb-size) * 1.75)
}

.b-slider-steps {
    display: flex;
    position: absolute;
    width: 100%;
    height: 100%;
    justify-content: space-evenly;
    align-items: center
}

.b-slider-step {
    background-color: var(--b-slider-step-color, var(--b-slider-color, var(--b-primary)));
    border-radius: var(--b-slider-step-border-radius);
    width: var(--b-slider-step-width, var(--b-slider-step-size));
    height: var(--b-slider-step-height, var(--b-slider-step-size));
    opacity: var(--b-slider-step-opacity)
}

.b-slider-step.b-less {
    --b-slider-color: var(--b-slider-step-lesser-color)
}

.b-slider-internal-label {
    color: var(--b-label-color)
}

:root,
:host {
    --b-splitter-size: 4px;
    --b-splitter-hover-size: 8px;
    --b-splitter-touch-hover-size: 16px;
    --b-splitter-disabled-size: 1px;
    --b-splitter-color: var(--b-border-6);
    --b-splitter-hover-color: var(--b-border-7);
    --b-splitter-disabled-color: var(--b-border-7);
    --b-splitter-button-size: 1em;
    --b-splitter-touch-button-size: 1.3em;
    --b-splitter-button-icon-color: var(--b-border-4);
    --b-splitter-button-hover-color: var(--b-border-2);
    --bi-splitter-overflow: visible;
    --bi-splitter-inner-top: 0;
    --bi-splitter-inner-left: 0;
    --bi-splitter-inner-translate: 0 0
}

.b-splitter {
    position: relative;
    touch-action: none;
    background: var(--b-splitter-color);
    flex: 0 0 var(--b-splitter-size);
    overflow: var(--bi-splitter-overflow);
    --bi-splitter-inner-size: var(--b-splitter-size)
}

.b-splitter.b-disabled {
    pointer-events: none;
    --b-splitter-size: var(--b-splitter-disabled-size);
    --b-splitter-color: var(--b-splitter-disabled-color);
    --bi-splitter-overflow: clip
}

:is(.b-splitter.b-hover, .b-splitter.b-moving, .b-splitter.b-show-buttons) .b-splitter-buttons {
    display: flex
}

.b-splitter:after {
    content: "";
    position: absolute;
    z-index: 10000;
    transition: all .2s;
    background: var(--b-splitter-color);
    top: var(--bi-splitter-inner-top);
    left: var(--bi-splitter-inner-left);
    width: var(--bi-splitter-inner-width);
    height: var(--bi-splitter-inner-height);
    translate: var(--bi-splitter-inner-translate)
}

.b-splitter.b-horizontal {
    min-height: var(--b-splitter-size)
}

.b-splitter.b-horizontal:after {
    --bi-splitter-inner-height: var(--bi-splitter-inner-size);
    --bi-splitter-inner-width: 100%
}

.b-splitter.b-horizontal:not(.b-drag-disabled) {
    cursor: ns-resize
}

.b-splitter.b-horizontal:not(.b-drag-disabled):hover,
.b-splitter.b-horizontal:not(.b-drag-disabled).b-hover,
.b-splitter.b-horizontal:not(.b-drag-disabled).b-moving {
    --b-splitter-color: var(--b-splitter-hover-color)
}

:is(.b-splitter.b-horizontal:not(.b-drag-disabled):hover, .b-splitter.b-horizontal:not(.b-drag-disabled).b-hover, .b-splitter.b-horizontal:not(.b-drag-disabled).b-moving):after {
    --bi-splitter-inner-top: 50%;
    --bi-splitter-inner-translate: 0 -50%;
    --bi-splitter-inner-size: var(--b-splitter-hover-size)
}

.b-splitter.b-horizontal .b-splitter-buttons {
    rotate: 90deg
}

.b-splitter.b-vertical {
    min-width: var(--b-splitter-size)
}

.b-splitter.b-vertical:after {
    --bi-splitter-inner-height: 100%;
    --bi-splitter-inner-width: var(--bi-splitter-inner-size)
}

.b-splitter.b-vertical:not(.b-drag-disabled) {
    cursor: ew-resize
}

.b-splitter.b-vertical:not(.b-drag-disabled):hover,
.b-splitter.b-vertical:not(.b-drag-disabled).b-hover,
.b-splitter.b-vertical:not(.b-drag-disabled).b-moving {
    --b-splitter-color: var(--b-splitter-hover-color)
}

:is(.b-splitter.b-vertical:not(.b-drag-disabled):hover, .b-splitter.b-vertical:not(.b-drag-disabled).b-hover, .b-splitter.b-vertical:not(.b-drag-disabled).b-moving):after {
    --bi-splitter-inner-left: 50%;
    --bi-splitter-inner-translate: -50% 0;
    --bi-splitter-inner-size: var(--b-splitter-hover-size)
}

.b-splitter:last-child,
.b-splitter:first-child {
    visibility: hidden;
    flex: 0;
    min-width: 0
}

@media (pointer : coarse) {
    .b-splitter {
        --b-splitter-hover-size: var(--b-splitter-touch-hover-size)
    }
}

.b-splitter.b-rtl .b-splitter-buttons {
    translate: 50% -50%
}

.b-splitter.b-rtl.b-vertical .b-splitter-buttons {
    scale: -1 1
}

.b-splitter.b-rtl .b-splitter-button-expand {
    justify-content: flex-end;
    translate: 100%
}

.b-splitter.b-rtl .b-splitter-button-collapse {
    justify-content: flex-start;
    translate: -100%
}

.b-splitter-buttons {
    display: none;
    position: absolute;
    height: 2.4em;
    width: 2.4em;
    z-index: 10001;
    inset-inline-start: 50%;
    translate: -50% -50%;
    transition: top .2s ease-in-out, inset-inline-start .2s ease-in-out;
    font-size: var(--b-splitter-button-size)
}

.b-splitter-buttons:has(.b-disabled) {
    pointer-events: none
}

.b-splitter-button-collapse,
.b-splitter-button-expand {
    flex: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    position: relative;
    padding-top: .1em;
    background: var(--b-splitter-color)
}

:is(.b-splitter-button-collapse, .b-splitter-button-expand):hover .b-splitter-button-icon {
    color: var(--b-splitter-button-hover-color)
}

:is(.b-splitter-button-collapse, .b-splitter-button-expand).b-disabled {
    cursor: default;
    visibility: hidden !important;
    pointer-events: none
}

:is(.b-splitter-button-collapse, .b-splitter-button-expand):not(.b-disabled) {
    pointer-events: auto
}

.b-splitter-button-collapse {
    border-top-left-radius: 100% 50%;
    border-bottom-left-radius: 100% 50%;
    justify-content: flex-end
}

.b-splitter-button-expand {
    border-top-right-radius: 100% 50%;
    border-bottom-right-radius: 100% 50%
}

.b-splitter-button-icon {
    cursor: pointer;
    height: 1.5em;
    font-size: 1.3em;
    font-weight: 400;
    align-content: center;
    color: var(--b-splitter-button-icon-color)
}

.b-splitter-button-touch-area {
    height: 3em;
    top: -.3em;
    width: 2em;
    position: absolute
}

.b-splitter-button-collapse .b-splitter-button-touch-area {
    inset-inline-start: -.9em
}

.b-splitter-button-expand .b-splitter-button-touch-area {
    inset-inline-end: -.9em
}

:root,
:host {
    --b-toast-padding: var(--b-widget-padding);
    --b-toast-border-radius: var(--b-widget-border-radius);
    --b-toast-transition-duration: .25s;
    --b-toast-progress-height: .25em;
    --b-toast-color: var(--b-widget-color)
}

.b-internal {
    --bi-toast-side: null
}

.b-float-root>.b-toast {
    display: block;
    overflow-x: clip;
    overflow-y: auto;
    top: auto;
    inset-inline-end: 2em;
    inset-inline-start: auto;
    max-width: 60%;
    max-height: 60%;
    line-height: 1.4em;
    cursor: pointer;
    transition: var(--bi-toast-side) var(--b-toast-transition-duration) ease-in, translate var(--b-toast-transition-duration) ease-in, background .2s, color .2s;
    background: var(--b-toast-background, var(--b-primary-98));
    color: var(--b-toast-color);
    padding: var(--b-toast-padding);
    border-radius: var(--b-toast-border-radius)
}

.b-float-root>.b-toast:is(.b-side-top-start, .b-side-top-end) {
    top: 0
}

.b-float-root>.b-toast:is(.b-side-top-start, .b-side-bottom-start) {
    inset-inline-start: 2em;
    inset-inline-end: auto
}

.b-float-root>.b-toast.b-toast-hide.b-side-bottom-end,
.b-float-root>.b-toast.b-toast-hide.b-side-bottom-start {
    bottom: 0 !important;
    translate: 0 100% !important
}

.b-float-root>.b-toast.b-toast-hide.b-side-top-end,
.b-float-root>.b-toast.b-toast-hide.b-side-top-start {
    top: 0 !important;
    translate: 0 -100% !important
}

.b-float-root>.b-toast.b-icon:before {
    margin-inline-end: .5em
}

.b-toast-progress {
    position: absolute;
    top: 0;
    inset-inline-start: 0;
    animation-name: b-toast-progress;
    animation-timing-function: linear;
    height: var(--b-toast-progress-height);
    background: var(--b-toast-progress-color, var(--b-primary-50))
}

@keyframes b-toast-progress {
    0% {
        width: 0
    }

    to {
        width: 100%
    }
}

.b-tool {
    display: grid;
    appearance: none;
    background-color: transparent;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    padding: 0;
    width: 1.25em;
    place-items: center;
    transition: color .2s;
    aspect-ratio: 1 / 1;
    color: var(--b-panel-header-color)
}

.b-tool:focus-visible {
    outline: var(--b-widget-focus-outline-width) solid var(--b-widget-focus-outline-color)
}

:root,
:host {
    --b-avatar-size: 2.5em;
    --b-avatar-initials-text-transform: uppercase;
    --b-avatar-initials-font-weight: 600;
    --b-avatar-border-radius: 50%;
    --b-avatar-aspect-ratio: 1 / 1;
    --b-avatar-icon-font-size: 1.1em;
    --b-avatar-border: null
}

.b-colorize {
    --b-avatar-background: var(--b-primary-85);
    --b-avatar-icon-color: var(--b-primary-30);
    --b-avatar-initials-color: var(--b-primary-30)
}

.b-resource-avatar {
    touch-action: pan-x pan-y;
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: var(--b-avatar-size);
    height: var(--b-avatar-size);
    background: var(--b-avatar-background);
    border-radius: var(--b-avatar-border-radius);
    border: var(--b-avatar-border)
}

.b-resource-avatar.b-resource-icon:before {
    color: var(--b-avatar-icon-color);
    font-size: var(--b-avatar-icon-font-size)
}

i.b-resource-avatar {
    display: grid
}

.b-resource-initials {
    color: var(--b-avatar-initials-color);
    font-weight: var(--b-avatar-initials-font-weight);
    text-transform: var(--b-avatar-initials-text-transform)
}

.b-ripple-clip {
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
    overflow: clip;
    pointer-events: none
}

.b-ripple-clip:before {
    position: absolute;
    content: "";
    width: 0;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    opacity: 0;
    transition: width .2s linear, opacity .1s linear;
    translate: -50% -50%;
    inset-inline-start: var(--b-click-x);
    inset-block-start: var(--b-click-y);
    background: var(--b-ripple-background);
    mix-blend-mode: var(--b-ripple-blend-mode)
}

.b-ripple-clip.b-animate:before {
    opacity: 1;
    width: 200%
}

:root,
:host {
    --b-grid-column-transition-duration: var(--b-default-transition-duration);
    --b-grid-row-transition-duration: var(--b-default-transition-duration);
    --b-grid-empty-padding: var(--b-widget-padding);
    --b-grid-empty-color: var(--b-text-2);
    --b-grid-panel-header-padding: var(--b-panel-header-padding);
    --b-grid-panel-header-border-bottom: var(--b-grid-header-border-width) solid var(--b-grid-header-border-color);
    --b-grid-background: var(--b-neutral-100);
    --b-grid-cell-border-width: 1px;
    --b-grid-cell-focused-outline-width: var(--b-widget-focus-outline-width);
    --b-grid-cell-focused-outline-color: var(--b-widget-focus-outline-color);
    --b-grid-cell-gap: .5em;
    --b-grid-cell-padding-block: 0;
    --b-grid-cell-padding-inline: var(--b-widget-padding);
    --b-grid-cell-font-size: 1em;
    --b-grid-cell-font-weight: var(--b-widget-font-weight);
    --b-grid-row-height: 45px;
    --b-grid-row-border-width: 1px;
    --b-grid-row-zindex: 1;
    --b-grid-splitter-width: 1px;
    --b-grid-cell-border-color: var(--b-border-7);
    --b-grid-cell-background: var(--b-neutral-100);
    --b-grid-cell-color: var(--b-widget-color);
    --b-grid-cell-selected-color: var(--b-widget-color);
    --b-grid-row-border-color: var(--b-grid-cell-border-color);
    --b-grid-cell-dirty-color: var(--b-color-red);
    --b-grid-splitter-narrow-color: var(--b-neutral-80);
    --bi-grid-cell-overflow: clip;
    --b-grid-row-placeholder-color: var(--b-neutral-95);
    --b-grid-cell-highlight-color: color-mix(in srgb, var(--b-color-yellow) 20%, var(--b-neutral-100))
}

.b-grid-base {
    overflow: clip;
    min-width: 0;
    --b-panel-bottom-toolbar-padding: var(--b-grid-header-padding);
    --b-panel-header-border-bottom: var(--b-grid-panel-header-border-bottom);
    --b-panel-header-padding: var(--b-grid-panel-header-padding);
    --b-panel-background: var(--b-grid-background);
    --b-panel-top-toolbar-margin-inline: 0;
    --b-panel-top-toolbar-border-radius: 0
}

.b-grid-base:where(.b-outer:not(.b-auto-height)) {
    height: 100%
}

.b-grid-base.b-auto-height {
    height: auto;
    flex: none
}

.b-grid-base.b-auto-height .b-grid-vertical-scroller {
    position: relative
}

.b-grid-base.b-auto-height.b-grid-empty .b-grid-body-container {
    height: unset !important;
    flex: 1
}

.b-grid-base .b-empty-text {
    display: none
}

.b-grid-base.b-grid-empty .b-empty-text {
    display: block;
    position: relative;
    color: var(--b-grid-empty-color);
    padding: var(--b-grid-empty-padding);
    z-index: 20
}

.b-grid-base .b-editing {
    overflow: visible;
    contain: unset;
    z-index: 1
}

.b-grid-base.b-splicing-rows-toggle .b-grid-row:is(.b-adding, .b-removing, .b-repositioning),
.b-grid-base.b-splicing-rows-remove .b-grid-row:is(.b-removing, .b-repositioning),
.b-grid-base.b-splicing-rows-insert .b-grid-row:is(.b-adding, .b-repositioning) {
    transition: top var(--b-grid-row-transition-duration), left var(--b-grid-row-transition-duration);
    z-index: calc(var(--b-grid-row-zindex) - 1);
    pointer-events: none
}

.b-grid-base.b-collapsing-column .b-collapsing,
.b-grid-base.b-collapsing-column .b-collapsing .b-grid-header:not(:first-child) {
    min-width: 0 !important;
    overflow: clip !important;
    padding: 0
}

.b-grid-base.b-collapsing-column .b-collapsing .b-grid-header:not(:first-child) {
    width: 0 !important
}

.b-grid-base .b-expanding-start .b-grid-header:not(:first-child) {
    min-width: 0 !important;
    width: 0 !important;
    padding: 0
}

.b-grid-base.b-expanding-column .b-expanding .b-grid-header:not(:first-child) {
    min-width: 0 !important
}

:is(.b-grid-base.b-collapsing-column, .b-grid-base.b-expanding-column, .b-grid-base.b-showing-column, .b-grid-base.b-hiding-column, .b-grid-base.b-toggling-columns) .b-grid-header {
    transition-property: min-width, max-width, width, flex, padding;
    transition-duration: var(--b-grid-column-transition-duration)
}

:is(.b-grid-base.b-collapsing-column, .b-grid-base.b-expanding-column, .b-grid-base.b-showing-column, .b-grid-base.b-hiding-column, .b-grid-base.b-toggling-columns) .b-grid-cell {
    transition-property: padding;
    transition-duration: var(--b-grid-column-transition-duration)
}

.b-grid-base .b-grid-header:is(.b-showing, .b-hiding) {
    min-width: 0 !important;
    padding: 0 !important
}

.b-grid-base .b-grid-header:is(.b-showing, .b-hiding).b-flex {
    flex: 0 !important
}

.b-grid-base .b-toggling-all-expand.b-grid-header {
    width: 0 !important
}

.b-fill-last-column .b-grid-footers:not(.b-has-flex, .b-horizontal-overflow) .b-grid-footer:last-child,
.b-fill-last-column .b-grid-headers:not(.b-has-flex, .b-horizontal-overflow) .b-last-parent,
.b-fill-last-column .b-grid-headers:not(.b-has-flex, .b-horizontal-overflow) .b-last-leaf:not(.b-drop-placeholder) {
    flex-grow: 1;
    border-inline-end-color: transparent
}

.b-fill-last-column .b-grid-headers:not(.b-has-flex, .b-horizontal-overflow) .b-last-parent>.b-grid-header-text {
    border-inline-end-color: transparent
}

.b-fill-last-column .b-grid-cell:last-child,
.b-fill-last-column .b-row-expander-row-expanded .b-grid-cell:nth-last-child(2) {
    --b-grid-cell-border-width: 0
}

.b-grid-panel-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    position: relative;
    overflow: hidden
}

.b-grid-panel-body:not(.b-auto-height)>.b-grid-body-container {
    flex: 1 1 0;
    contain: strict
}

.b-grid-panel-body:not(.b-auto-height)>.b-grid-body-container>.b-grid-vertical-scroller {
    min-height: 100%
}

.b-grid-base.b-enable-sticky .b-sticky-cell,
.b-grid-base.b-enable-sticky .b-grid-sub-grid,
.b-grid-base.b-enable-sticky .b-grid-vertical-scroller,
.b-grid-base.b-enable-sticky .b-grid-row {
    overflow: visible !important
}

.b-grid-base>.b-panel-body-wrap {
    --b-toolbar-background: var(--b-grid-toolbar-background)
}

.b-grid-base>.b-panel-body-wrap>.b-top-toolbar {
    transition: background-color var(--b-default-transition-duration), border var(--b-default-transition-duration);
    border-bottom: var(--b-grid-header-container-border-width) solid var(--b-grid-header-border-color)
}

.b-grid-base:not(.b-auto-height)>.b-panel-body-wrap>.b-bottom-toolbar {
    border-top: var(--b-grid-header-container-border-width) solid var(--b-grid-header-border-color)
}

.b-grid-body-container {
    position: relative
}

.b-grid-vertical-scroller {
    display: flex;
    overflow: clip
}

.b-grid-base .fa {
    font-family: inherit
}

.b-grid-base .fa:before {
    font-family: var(--b-widget-icon-font-family)
}

.b-no-transitions .b-grid-row {
    transition: none !important
}

.b-grid-base.b-highlighting-fade .b-grid-cell:not(.b-highlighted):before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .8;
    transition: opacity .4s;
    pointer-events: none;
    background-color: var(--b-grid-cell-background, var(--b-neutral-100))
}

.b-grid-base:not(.b-highlighting-fade) .b-grid-cell.b-highlighted {
    transition: background-color .4s;
    background-color: var(--b-grid-cell-highlight-color)
}

:root,
:host {
    --b-group-bar-separator-icon: "\f054";
    --b-group-bar-separator-color: var(--b-neutral-50)
}

.b-group-bar {
    display: flex;
    flex-wrap: nowrap;
    flex: 1;
    align-self: center;
    gap: 2.2em;
    min-height: 2em;
    --b-chip-view-chip-padding: .5em 1em;
    --b-chip-view-chip-gap: 1em;
    --b-chip-view-chip-border-radius: var(--b-button-border-radius)
}

.b-group-bar .b-chip {
    position: relative;
    overflow: visible
}

.b-group-bar .b-chip:not(:last-child):after {
    position: absolute;
    inset-inline-end: -1.5em;
    color: var(--b-group-bar-separator-color);
    content: var(--b-group-bar-separator-icon);
    font-family: var(--b-widget-icon-font-family)
}

.b-rtl :is(.b-group-bar .b-chip):not(:last-child):after {
    scale: -1 0
}

.b-group-bar .b-drop-target {
    opacity: .5
}

.b-group-bar .b-drop-target .b-chip-content {
    visibility: hidden
}

.b-grid-reordering-columns-with-group-bar.b-grid-header.b-drag-proxy {
    min-width: 10em !important;
    padding-inline: 1em;
    border-radius: var(--b-button-border-radius)
}

.b-grid-reordering-columns-with-group-bar.b-grid-header.b-drag-proxy .b-grid-header-text {
    padding: .5em 0
}

.b-grid-reordering-columns-with-group-bar.b-grid-header.b-drag-proxy,
.b-grid-reordering-columns-with-group-bar.b-grid-header.b-drag-proxy .b-grid-header-text-content {
    width: auto !important
}

.b-grid-base.b-dragging-header:not(.b-tree-group) .b-group-bar .b-drop-target {
    display: none
}

.b-grid-base.b-dragging-header:not(.b-tree-group) .b-group-bar .b-chip:after {
    content: none
}

.b-grid-base.b-dragging-header:not(.b-tree-group) .b-group-bar:hover .b-chip {
    display: none
}

.b-grid-base.b-dragging-header:not(.b-tree-group) .b-group-bar:hover .b-drop-target {
    display: flex
}

.b-sparkline-cell .b-chart {
    background: transparent
}

:root,
:host {
    --b-quick-find-font-weight: var(--b-grid-cell-font-weight);
    --b-quick-find-badge-offset: .4em;
    --b-quick-find-badge-font-size: .7em;
    --b-quick-find-primary: var(--b-secondary);
    --b-quick-find-badge-color: var(--b-grid-header-color)
}

:is(.b-grid-row.b-hover, .b-grid-row.b-selected) .b-colorize {
    --b-quick-find-background: var(--b-quick-find-row-hover-background, var(--b-primary-95))
}

.b-cell-editor {
    --b-widget-floating-box-shadow: none
}

.b-cell-editor .b-field {
    border-radius: 0;
    background: var(--b-grid-cell-applied-background);
    --b-text-field-input-padding: var(--b-grid-cell-padding-block) var(--b-grid-cell-padding-inline)
}

.b-grid-cell.b-editing {
    color: transparent
}

.b-grid-cell.b-editing:not(.b-tree-cell)>:not(.b-editor),
.b-grid-cell.b-editing.b-tree-cell>.b-tree-cell-value {
    visibility: hidden
}

.b-chart-designer-popup>.b-popup-body-wrap>.b-popup-content {
    padding-top: 0
}

.b-chart-cell .b-chart {
    background: none
}

:root,
:host {
    --b-column-drag-toolbar-border-radius: var(--b-popup-border-radius);
    --b-column-drag-toolbar-opacity: .6;
    --b-column-drag-toolbar-hover-opacity: .9;
    --b-column-drag-toolbar-button-border-width: 0;
    --b-column-drag-toolbar-box-shadow: var(--b-widget-floating-box-shadow);
    --b-column-drag-toolbar-disabled-icon-color: var(--b-neutral-85);
    --b-column-drag-toolbar-button-box-shadow: none;
    --b-column-drag-toolbar-button-hover-box-shadow: none;
    --b-column-drag-toolbar-button-color: var(--b-neutral-20);
    --b-column-drag-toolbar-button-background: transparent;
    --b-column-drag-toolbar-title-color: var(--b-neutral-20);
    --b-column-drag-toolbar-background: var(--b-neutral-100)
}

.b-column-drag-toolbar {
    position: absolute;
    top: calc(100% - 3em);
    left: 50%;
    z-index: 100;
    animation-name: b-anim-show-column-drag-toolbar;
    animation-duration: .2s;
    translate: -50%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    transition: opacity .2s, top .2s;
    padding: 1em 1em .5em;
    font-size: .8em;
    border: var(--b-popup-border);
    border-radius: var(--b-column-drag-toolbar-border-radius);
    background: var(--b-column-drag-toolbar-background);
    box-shadow: var(--b-column-drag-toolbar-box-shadow);
    opacity: var(--b-column-drag-toolbar-opacity)
}

.b-column-drag-toolbar.b-closer {
    top: 50%;
    translate: -50% -50%
}

.b-column-drag-toolbar.b-hover {
    --b-column-drag-toolbar-opacity: var(--b-column-drag-toolbar-hover-opacity)
}

.b-column-drag-toolbar.b-remove {
    animation-name: b-anim-hide-column-drag-toolbar;
    animation-duration: .2s;
    top: 100%;
    --b-column-drag-toolbar-opacity: 0
}

.b-column-drag-toolbar.b-remove.b-closer {
    animation-name: b-anim-hide-column-drag-toolbar-closer
}

.b-column-drag-toolbar>.b-title {
    flex-basis: 100%;
    margin-bottom: 1em;
    text-align: center;
    color: var(--b-column-drag-toolbar-title-color)
}

.b-column-drag-toolbar>.b-title:before {
    content: "Drag header downwards"
}

.b-column-drag-toolbar.b-closer>.b-title:before {
    content: "Drop header on a button"
}

.b-column-drag-toolbar .b-group {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    margin-inline-end: 1.5em
}

.b-column-drag-toolbar .b-group:last-child {
    margin-inline-end: 0
}

.b-column-drag-toolbar .b-group .b-title {
    margin-block: .5em;
    color: var(--b-column-drag-toolbar-title-color)
}

.b-column-drag-toolbar .b-buttons {
    display: inline-flex;
    flex-direction: row
}

.b-column-drag-toolbar .b-target-button {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    transition: all .2s;
    padding: 1em 0;
    width: 7.5em;
    margin-inline-end: .5em;
    color: var(--b-column-drag-toolbar-button-color);
    border: var(--b-column-drag-toolbar-button-border-width) solid var(--b-column-drag-toolbar-button-border-color, var(--b-primary-40));
    border-radius: var(--b-column-drag-toolbar-border-radius);
    background: var(--b-column-drag-toolbar-button-background);
    box-shadow: var(--b-column-drag-toolbar-button-box-shadow)
}

.b-column-drag-toolbar .b-target-button:last-child {
    margin-inline-end: 0
}

.b-column-drag-toolbar .b-target-button i {
    font-size: 2.5em;
    pointer-events: none;
    transition: all .2s;
    color: var(--b-column-drag-toolbar-icon-color, var(--b-primary-60))
}

.b-column-drag-toolbar .b-target-button.b-hover:not([data-disabled=true]) {
    --b-column-drag-toolbar-icon-color: var(--b-column-drag-toolbar-default-hover-icon-color, var(--b-primary-60));
    --b-column-drag-toolbar-button-color: var(--b-column-drag-toolbar-default-hover-color, var(--b-primary-60));
    --b-column-drag-toolbar-button-background: var(--b-column-drag-toolbar-default-hover-background, var(--b-primary-95));
    --b-column-drag-toolbar-button-box-shadow: var(--b-column-drag-toolbar-button-hover-box-shadow)
}

.b-column-drag-toolbar .b-target-button.b-hover:not([data-disabled=true]) i {
    scale: 1.1
}

.b-column-drag-toolbar .b-target-button.b-activate i {
    scale: 1.1;
    rotate: 180deg
}

.b-column-drag-toolbar .b-target-button[data-ref^=group] {
    --b-primary: var(--b-secondary)
}

.b-column-drag-toolbar .b-target-button[data-disabled=true] {
    --b-column-drag-toolbar-button-color: var(--b-column-drag-toolbar-disabled-icon-color);
    --b-column-drag-toolbar-icon-color: var(--b-column-drag-toolbar-disabled-icon-color)
}

@keyframes b-anim-show-column-drag-toolbar {
    0% {
        top: 100%;
        opacity: 0
    }

    to {
        top: calc(100% - 3em);
        opacity: .4
    }
}

@keyframes b-anim-hide-column-drag-toolbar {
    0% {
        top: calc(100% - 3em);
        opacity: .4
    }

    to {
        top: 100%;
        opacity: 0
    }
}

@keyframes b-anim-hide-column-drag-toolbar-closer {
    0% {
        top: 50%;
        opacity: .4
    }

    to {
        top: 100%;
        opacity: 0
    }
}

.b-column-rename-editor {
    --b-editor-background: var(--b-grid-header-background);
    --b-text-field-font-weight: var(--b-grid-header-font-weight)
}

:root,
:host {
    --b-column-reorder-invalid-color: var(--b-color-red);
    --b-column-reorder-stretched-background: var(--b-primary-95)
}

.b-grid-header.b-drag-proxy {
    line-height: normal;
    transition: background-color .3s;
    border-inline-end: none;
    font-weight: var(--b-grid-header-font-weight);
    background-color: var(--b-grid-header-background);
    outline: 1px solid var(--b-grid-header-border-color)
}

.b-grid-header.b-drag-proxy.b-grid-header-parent {
    justify-content: stretch
}

.b-grid-header.b-drag-proxy.b-grid-header-parent>.b-grid-header-text {
    border-inline-end: none
}

.b-grid-header.b-drag-proxy .b-grid-header:last-child {
    border-inline-end: none
}

.b-grid-header.b-drop-placeholder {
    opacity: .3
}

.b-grid-header.b-drag-invalid {
    --b-grid-header-color: var(--b-column-reorder-invalid-color);
    outline: 1px solid var(--b-column-reorder-invalid-color)
}

.b-column-reorder-stretched {
    outline: none;
    --b-grid-header-background: var(--b-column-reorder-stretched-background)
}

.b-column-reorder-stretched>* {
    display: none !important
}

:root,
:host {
    --b-column-resize-handle-width: 1em;
    --b-column-resize-touch-handle-width: 1.5em;
    --b-column-resize-header-resizing-background: var(--b-grid-header-hover-background);
    --b-column-resize-touch-resizing-icon: "\f07e"
}

.b-column-resize .b-grid-header-parent {
    overflow: visible
}

.b-column-resize .b-grid-header-resizable:not(.b-last-leaf) {
    overflow: visible
}

.b-column-resize .b-grid-header-resizable .b-grid-header-resize-handle {
    position: absolute;
    inset-block: 0;
    background: transparent;
    z-index: 3;
    cursor: col-resize;
    display: block;
    inset-inline-end: calc(-1 * var(--b-column-resize-handle-width) / 2);
    width: var(--b-column-resize-handle-width)
}

.b-column-resize.b-touch {
    --b-column-resize-handle-width: var(--b-column-resize-touch-handle-width)
}

.b-column-resize.b-touch .b-grid-header.b-resizing {
    overflow: visible;
    z-index: 100
}

.b-column-resize.b-touch .b-grid-header.b-resizing:before {
    position: absolute;
    top: 50%;
    inset-inline-end: 0;
    translate: calc(50% * var(--b-rtl-negate)) -50%;
    border-radius: 50%;
    padding: 1em;
    z-index: 1;
    background: var(--b-neutral-90);
    content: var(--b-column-resize-touch-resizing-icon);
    font-family: var(--b-widget-icon-font-family)
}

.b-grid-header.b-resizing {
    --b-grid-header-background: var(--b-column-resize-header-resizing-background)
}

html.b-export-root,
.b-export-root body {
    margin: 0
}

html.b-print-root,
.b-print-root body {
    margin: 0;
    height: auto;
    overflow: unset;
    display: block;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important
}

html.b-export-root {
    overflow: auto
}

.b-export-root body,
.b-print-root body {
    position: relative
}

body:not(.b-single-page-unscaled) .b-page-wrap {
    contain: strict
}

.b-export .b-time-ranges-canvas {
    display: block;
    contain: strict;
    width: 100%;
    height: 100%;
    position: absolute
}

.b-export .b-grid-base {
    min-height: 0 !important
}

.b-export .b-export-content {
    display: flex;
    flex-direction: column;
    height: 100%
}

.b-export .b-export-body {
    flex: 1;
    contain: strict
}

.b-export .b-grid-header-container {
    margin-inline-end: 0 !important;
    border-inline-end: none !important
}

.b-export .b-grid-body-container.b-widget-scroller {
    overflow-y: hidden !important
}

.b-export .b-grid-footer-container {
    padding-inline-end: 0 !important
}

.b-export .b-virtual-scrollers {
    display: none
}

.b-export.b-visible-scrollbar .b-show-yscroll-padding>.b-yscroll-pad {
    display: none
}

.b-export.b-multi-page .b-export-content {
    width: 100%;
    height: 100%
}

.b-export.b-multi-page .b-export-body {
    overflow: hidden
}

.b-export.b-single-page-unscaled {
    display: flex
}

.b-export.b-single-page-unscaled .b-export-body {
    contain: content
}

.b-export-header,
.b-export-header * {
    box-sizing: border-box
}

@media print {
    .b-page-wrap {
        overflow: hidden
    }

    .b-grid-body-container {
        contain: paint !important
    }
}

.b-export-dialog .b-bottom-toolbar .b-button {
    width: 7.5em
}

.b-float-root .b-export-loading-toast {
    display: flex;
    gap: .5em;
    align-items: center
}

html.b-print-root,
.b-print-root body {
    margin: 0;
    height: auto;
    overflow: unset;
    display: block
}

.b-print-root .b-float-root,
.b-print-root .b-scrollbar-measure-element,
.b-print-root .b-grid-header-resize-handle {
    display: none !important
}

.b-print:not(.b-safari) .b-page-wrap {
    page-break-after: always
}

:root,
:host {
    --b-fill-handle-handle-size: .8em
}

.b-fill-handle-handle {
    translate: -50% -50%;
    position: absolute;
    cursor: crosshair;
    z-index: 200;
    background-clip: content-box;
    user-select: none;
    -webkit-user-select: none;
    background: var(--b-grid-cell-focused-outline-color);
    border: 1px solid var(--b-grid-cell-background);
    width: var(--b-fill-handle-handle-size);
    height: var(--b-fill-handle-handle-size)
}

.b-fill-handle-handle-right-edge {
    border-right: 0;
    translate: -100% -50%;
    width: .5em
}

.b-fill-selection-border {
    position: absolute;
    border-radius: .1em;
    pointer-events: none;
    z-index: 2;
    user-select: none;
    -webkit-user-select: none;
    border: var(--b-grid-cell-focused-outline-width) solid var(--b-grid-cell-focused-outline-color)
}

.b-indicate-crop {
    opacity: .4
}

.b-rtl .b-fill-handle-handle {
    translate: 50% -50%
}

.b-rtl .b-fill-handle-handle.b-fill-handle-handle-left-edge {
    border-right: 0;
    translate: 100% -50%;
    width: .5em
}

:root,
:host {
    --b-grid-filter-icon: "\f0b0";
    --b-grid-header-filtered-font-weight: var(--b-grid-header-font-weight);
    --b-grid-header-filtered-color: var(--b-grid-header-color);
    --bi-grid-filter-icon-opacity: 0;
    --bi-grid-filter-icon-active-opacity: 1;
    --bi-grid-filter-icon-header-hover-opacity: .5;
    --bi-grid-filter-icon-hover-opacity: .8;
    --bi-grid-filter-icon-size: 0;
    --bi-grid-filter-icon-margin-inline-start: 0
}

.b-filter-icon {
    cursor: pointer;
    transition-property: opacity, font-size;
    font-size: var(--bi-grid-filter-icon-size);
    opacity: var(--bi-grid-filter-icon-opacity);
    margin-inline-start: var(--bi-grid-filter-icon-margin-inline-start);
    transition-duration: var(--b-grid-header-icon-transition-duration)
}

.b-filter-icon:before {
    content: var(--b-grid-filter-icon);
    font-family: var(--b-widget-icon-font-family)
}

.b-filter-icon:hover {
    --bi-grid-filter-icon-opacity: var(--bi-grid-filter-icon-hover-opacity)
}

.b-grid-header.b-filter {
    --b-grid-header-font-weight: var(--b-grid-header-filtered-font-weight);
    --b-grid-header-color: var(--b-grid-header-filtered-color);
    --bi-grid-filter-icon-opacity: var(--bi-grid-filter-icon-active-opacity)
}

.b-grid-header.b-filter,
.b-grid-base:not(.b-column-resizing, .b-dragging-header) .b-grid-header.b-filterable:hover {
    --bi-grid-filter-icon-size: var(--b-grid-header-icon-font-size);
    --bi-grid-filter-icon-margin-inline-start: var(--b-grid-header-gap)
}

.b-grid-base:not(.b-column-resizing, .b-dragging-header) .b-grid-header.b-filterable:not(.b-filter):hover {
    --bi-grid-filter-icon-opacity: var(--bi-grid-filter-icon-header-hover-opacity)
}

.b-grid-base:not(.b-filter, .b-multifilter) .b-filter-icon {
    pointer-events: none;
    --bi-grid-filter-icon-opacity: .2
}

.b-filter-popup-legacy-mode .b-field {
    width: 16em
}

.b-filter-popup:not(.b-filter-popup-legacy-mode) .b-panel-content {
    padding-inline: 0
}

.b-filter-popup .b-field-filter-picker-group-row {
    padding-inline: var(--b-panel-padding)
}

.b-filter-popup .b-field-filter-picker-group {
    width: 36em
}

.b-filter-popup .b-field-filter-picker-operator {
    grid-column: 1
}

.b-filter-popup .b-field-filter-picker-values {
    grid-column: 2
}

.b-filter-popup .b-field-filter-picker-values-multiple {
    grid-column: 1
}

.b-filter-popup .b-field-filter-picker-property {
    display: none
}

.b-filter-bar-field {
    margin: 0 0 var(--b-grid-header-padding) 0;
    width: 100%
}

.b-filter-bar-compact .b-grid-header.b-filter-bar-enabled {
    flex-direction: row
}

.b-filter-bar-compact .b-grid-header.b-filter-bar-enabled .b-grid-header-text {
    order: 1;
    min-height: 3.5em
}

.b-filter-bar-compact .b-grid-header.b-filter-bar-enabled .b-sort-icon {
    margin-inline-start: 0
}

.b-filter-bar-compact .b-grid-header.b-filter-bar-enabled .b-grid-header-text-content {
    display: none
}

:is(.b-filter-bar-compact .b-grid-header.b-filter-bar-enabled.b-grid-header-align-end, .b-filter-bar-compact .b-grid-header.b-filter-bar-enabled.b-grid-header-align-right) .b-field {
    order: 100000
}

:is(.b-filter-bar-compact .b-grid-header.b-filter-bar-enabled.b-grid-header-align-end, .b-filter-bar-compact .b-grid-header.b-filter-bar-enabled.b-grid-header-align-right) input {
    text-align: end
}

.b-filter-bar-compact .b-grid-header.b-filter-bar-enabled.b-grid-header-align-center input {
    text-align: center
}

.b-filter-bar-compact .b-grid-header.b-filter-bar-enabled.b-grid-header-align-end .b-field {
    order: 100000
}

.b-filter-bar-compact .b-grid-header.b-filter-bar-enabled.b-grid-header-align-end input {
    text-align: end
}

.b-filter-bar-compact .b-grid-header.b-filter-bar-enabled:hover .b-filter-bar-field input,
.b-filter-bar-compact .b-grid-header.b-filter-bar-enabled:hover .b-filter-bar-field input::placeholder {
    color: var(--b-grid-header-hover-color)
}

.b-filter-bar-compact .b-filter-bar-field {
    margin: 0;
    height: 100%;
    flex: 1;
    --b-text-field-input-padding: 0;
    --b-text-field-border-width: 0;
    --b-text-field-border-radius: 0;
    --b-combo-chip-view-padding-top: 0;
    --b-combo-chip-view-padding: 0;
    --b-text-field-background: transparent;
    --b-field-trigger-color: var(--b-grid-header-icon-color)
}

.b-filter-bar-compact .b-filter-bar-field input::placeholder {
    color: var(--b-grid-header-color);
    font-size: var(--b-grid-header-font-size);
    font-weight: var(--b-grid-header-font-weight);
    text-transform: var(--b-grid-header-text-transform)
}

.b-filter-bar-compact .b-filter-bar-field>.b-field-inner {
    gap: .5em
}

.b-filter-bar-compact .b-filter-bar-field>.b-field-inner:before {
    transition: none
}

.b-filter-bar-compact .b-filter-bar-field:not(:focus-within) .b-field-trigger[data-ref=expand],
.b-filter-bar-compact .b-filter-bar-field:not(:focus-within) .b-field-trigger[data-ref=clear],
.b-filter-bar-compact .b-filter-bar-field:not(:focus-within) .b-field-trigger[data-ref=spin],
.b-filter-bar-compact .b-filter-bar-field:not(:focus-within) .b-field-trigger[data-ref=back],
.b-filter-bar-compact .b-filter-bar-field:not(:focus-within) .b-field-trigger[data-ref=forward] {
    display: none
}

.b-filter-bar-compact .b-filter-bar-field:focus-within:not(.b-empty) .b-icon-remove,
.b-filter-bar-compact .b-filter-bar-field:focus-within .b-field-trigger:not(.b-step-trigger, .b-icon-remove, .b-spintrigger) {
    display: flex
}

.b-filter-bar-compact .b-filter-bar-field:not(.b-empty) input::placeholder {
    color: transparent
}

.b-filter-bar-compact.b-dragging .b-filter-bar-field {
    display: none
}

:root,
:host {
    --b-group-header-font-weight: 500;
    --b-group-header-border-width: var(--b-grid-row-border-width);
    --b-group-header-zindex: 5;
    --b-group-header-collapsing-zindex: 7;
    --b-group-collapse-icon: "\f107";
    --b-group-header-icon: "\f5fd";
    --b-group-header-background: var(--b-neutral-100);
    --b-group-header-color: var(--b-neutral-20);
    --b-group-header-icon-color: var(--b-neutral-20);
    --b-group-header-border-color: var(--b-grid-row-border-color);
    --b-group-header-stripe-background: var(--b-neutral-97);
    --b-group-count-badge-background: var(--b-neutral-95);
    --b-group-count-badge-color: var(--b-text-2)
}

.b-no-row-lines {
    --b-group-header-border-width: 0
}

.b-grid-header.b-group .b-sort-icon:after {
    font-style: normal;
    content: var(--b-group-header-icon);
    font-family: var(--b-widget-icon-font-family)
}

.b-group-row {
    --b-grid-cell-background: var(--b-group-header-background);
    --b-grid-row-border-width: var(--b-group-header-border-width);
    --b-grid-row-border-color: var(--b-group-header-border-color);
    --b-grid-row-zindex: var(--b-group-header-zindex)
}

.b-group-row.b-collapsing,
.b-group-row.b-expanding {
    --b-grid-row-zindex: var(--b-group-header-collapsing-zindex)
}

.b-group-row .b-grid-cell {
    --b-grid-cell-border-color: transparent
}

.b-hide-row-hover .b-group-row {
    --b-grid-cell-hover-background: var(--b-group-header-background);
    --b-grid-cell-selected-background: var(--b-group-header-background);
    --b-grid-cell-hover-selected-background: var(--b-group-header-background)
}

.b-stripe .b-group-row {
    --b-grid-row-border-width: var(--b-stripe-border-width);
    --b-group-header-background: var(--b-group-header-stripe-background)
}

.b-hide-row-hover :is(.b-stripe .b-group-row) {
    --b-grid-cell-hover-background: var(--b-group-header-stripe-background);
    --b-grid-cell-selected-background: var(--b-group-header-stripe-background);
    --b-grid-cell-hover-selected-background: var(--b-group-header-stripe-background)
}

.b-grid-cell.b-group-title {
    contain: size layout style;
    z-index: 1;
    justify-content: flex-start;
    text-align: start;
    --b-grid-cell-color: var(--b-group-header-color);
    --b-grid-cell-font-weight: var(--b-group-header-font-weight);
    --bi-grid-cell-overflow: visible;
    gap: var(--b-widget-gap)
}

.b-group-state-icon {
    display: grid;
    place-items: center;
    font-style: normal;
    cursor: pointer;
    width: 1em;
    transition: rotate .2s;
    color: var(--b-group-header-icon-color)
}

.b-group-state-icon:before {
    content: var(--b-group-collapse-icon);
    font-family: var(--b-widget-icon-font-family)
}

.b-grid-group-collapsed .b-group-state-icon {
    rotate: -90deg
}

.b-group-count {
    display: grid;
    place-items: center;
    min-width: 2em;
    width: 2em;
    height: 2em;
    border-radius: 50%;
    font-size: .7em;
    background: var(--b-group-count-badge-background);
    color: var(--b-group-count-badge-color)
}

:root,
:host {
    --b-group-summary-background: var(--b-neutral-99)
}

.b-grid-row.b-group-footer {
    --b-grid-cell-border-color: transparent;
    --b-grid-cell-background: var(--b-group-summary-background)
}

.b-grid-row.b-group-footer td {
    padding: .25em 0
}

.b-grid-row.b-group-footer .b-grid-summary-label {
    padding-inline-end: 1em
}

.b-grid-row.b-group-footer .b-grid-summary-value {
    width: 100%
}

.b-grid-group-collapsed.b-header-summary .b-group-title {
    --bi-grid-cell-overflow: clip
}

:root,
:host {
    --b-locked-rows-separator-width: 1px;
    --b-locked-rows-separator-color: var(--b-grid-splitter-color, var(--b-grid-splitter-narrow-color))
}

.b-locked-rows {
    z-index: 1
}

.b-locked-rows [aria-rowcount="1"] .b-virtual-scrollers {
    flex-basis: 0
}

.b-locked-rows:has(.b-widget-scroller.b-grid-empty) {
    overflow: visible
}

.b-locked-rows:has(.b-widget-scroller.b-grid-empty) .b-grid-body-wrap,
.b-locked-rows:has(.b-widget-scroller.b-grid-empty) .b-grid-panel-body {
    overflow: visible
}

.b-locked-rows:has(.b-grid-row) {
    box-shadow: var(--b-grid-header-box-shadow);
    border-bottom: var(--b-locked-rows-separator-width) solid var(--b-locked-rows-separator-color)
}

.b-locked-rows .b-widget-scroller.b-grid-empty {
    min-height: 0
}

.b-locked-rows .b-grid-row.b-last {
    --b-grid-row-border-width: 0
}

.b-merge-cells .b-single-child .b-grid-sub-grid:not(.b-grid-sub-grid-collapsed, .b-time-axis-sub-grid, .b-horizontal-overflow) {
    overflow: clip !important
}

.b-merge-cells .b-grid-row:not(.b-selected, .b-hover) .b-merged-cell {
    border-bottom: none
}

.b-merge-cells .b-grid-row:is(.b-selected, .b-hover):has(.b-merged-cell) {
    overflow: visible
}

.b-merge-cells .b-grid-row:is(.b-selected, .b-hover) .b-merged-cell {
    top: -1px;
    height: calc(100% + 1px);
    border-top: var(--b-grid-row-border-width) solid var(--b-grid-row-border-color)
}

.b-grid-merged-cells {
    position: absolute;
    contain: strict;
    z-index: 2;
    display: flex;
    align-items: flex-start;
    border-bottom: var(--b-grid-cell-border-width) solid var(--b-grid-cell-border-color);
    --b-grid-cell-background: transparent;
    --b-grid-row-border-color: transparent;
    --bi-grid-cell-overflow: visible
}

.b-merge-cells-passthrough .b-grid-merged-cells {
    pointer-events: none
}

.b-grid-merged-cells .b-grid-cell {
    position: sticky;
    top: 0;
    flex: 1;
    contain: none
}

.b-grid-merged-cells.b-selected {
    background: var(--b-grid-cell-selected-background)
}

:root,
:host {
    --b-grid-summary-label-font-size: 1em;
    --b-grid-summary-value-font-size: 1em
}

.b-summary-wrap {
    display: grid;
    column-gap: 1em;
    grid-template-columns: min-content auto;
    align-items: center;
    width: 100%
}

.b-summary-wrap .b-grid-summary-label {
    font-size: var(--b-grid-summary-label-font-size)
}

.b-summary-wrap .b-grid-summary-value {
    overflow: clip;
    text-overflow: ellipsis;
    font-size: var(--b-grid-summary-value-font-size)
}

.b-summary-wrap .b-grid-summary-value.b-no-label {
    grid-column: span 2
}

:root,
:host {
    --b-quick-find-header-inset: 0;
    --b-quick-find-hit-padding: .2em 0;
    --b-quick-find-header-badge-color: var(--b-grid-header-color)
}

.b-quick-hit-cell {
    background: var(--b-quick-find-background, var(--b-primary-95))
}

.b-quick-hit-text {
    border-radius: 2px;
    --b-primary: var(--b-quick-find-primary);
    font-weight: var(--b-quick-find-font-weight);
    background: var(--b-quick-find-background, var(--b-primary-95));
    line-height: .8
}

.b-quick-hit-text {
    padding: var(--b-quick-find-hit-padding)
}

.b-quick-hit-header {
    position: absolute;
    z-index: 1;
    display: grid;
    place-items: center;
    --b-primary: var(--b-quick-find-primary);
    inset: var(--b-quick-find-header-inset);
    background: var(--b-quick-find-background, var(--b-primary-95))
}

.b-quick-hit-cell-badge,
.b-quick-hit-header .b-quick-hit-badge {
    position: absolute;
    line-height: 1;
    font-size: var(--b-quick-find-badge-font-size);
    inset-inline-end: var(--b-quick-find-badge-offset);
    top: var(--b-quick-find-badge-offset)
}

.b-quick-hit-header .b-quick-hit-badge {
    color: var(--b-quick-find-header-badge-color)
}

.b-quick-hit-cell-badge {
    color: var(--b-quick-find-badge-color)
}

:root,
:host {
    --b-grid-splitter-zindex: 10;
    --b-region-resize-splitter-width: var(--b-splitter-size);
    --b-region-resize-splitter-width-hover: var(--b-splitter-hover-size);
    --b-region-resize-splitter-touch-width-hover: var(--b-splitter-touch-hover-size);
    --b-region-resize-splitter-collapsed-width: var(--b-region-resize-splitter-width);
    --b-region-resize-splitter-color: var(--b-splitter-color);
    --b-region-resize-button-color: var(--b-splitter-button-icon-color);
    --b-region-resize-splitter-hover-color: var(--b-splitter-hover-color);
    --b-region-resize-button-hover-color: var(--b-splitter-button-hover-color);
    --bi-grid-splitter-button-size: 1em;
    --bi-grid-splitter-button-display: flex
}

.b-grid-base.b-split {
    --b-grid-splitter-color: var(--b-region-resize-splitter-color)
}

.b-grid-base.b-split .b-grid-splitter:not(.b-disabled) {
    --b-grid-splitter-width: var(--b-region-resize-splitter-width)
}

@media (pointer : coarse) {
    .b-grid-base.b-split {
        --b-region-resize-splitter-width-hover: var(--b-region-resize-splitter-touch-width-hover)
    }
}

.b-grid-splitter {
    position: relative;
    pointer-events: var(--bi-grid-splitter-pointer-events, none);
    z-index: var(--b-grid-splitter-zindex)
}

@media (any-pointer : coarse) {
    .b-grid-splitter {
        --bi-grid-splitter-button-size: 1.3em
    }
}

.b-split .b-grid-splitter {
    --bi-grid-splitter-pointer-events: all
}

.b-grid-splitter.b-disabled {
    --bi-grid-splitter-pointer-events: none
}

.b-grid-base.b-split.b-rtl .b-grid-splitter-inner .b-grid-splitter-buttons .b-grid-splitter-button-collapse,
.b-grid-base.b-split.b-rtl .b-grid-splitter-inner .b-grid-splitter-buttons .b-grid-splitter-button-expand {
    scale: -1
}

.b-grid-base.b-split.b-rtl .b-grid-splitter-inner .b-grid-splitter-buttons .b-grid-splitter-button-expand {
    justify-content: flex-end
}

.b-grid-base.b-split.b-rtl .b-grid-splitter-inner .b-grid-splitter-buttons .b-grid-splitter-button-collapse {
    justify-content: flex-start
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)) {
    overflow: visible
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)) .b-grid-splitter-inner {
    position: absolute;
    inset-block: 0;
    left: 50%;
    translate: -50%;
    background: inherit;
    flex-direction: column;
    align-items: center;
    opacity: 0;
    transition: opacity .2s;
    display: var(--bi-grid-splitter-button-display);
    width: var(--b-region-resize-splitter-width-hover)
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-grid-splitter-collapsed {
    cursor: initial;
    --b-grid-splitter-width: var(--b-region-resize-splitter-collapsed-width);
    --b-grid-splitter-color: var(--b-region-resize-splitter-hover-color)
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-grid-splitter-collapsed .b-grid-splitter-inner {
    opacity: 1
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-grid-splitter-collapsed:not(.b-grid-splitter-allow-collapse) .b-grid-splitter-button-collapse,
.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-grid-splitter-collapsed.b-grid-splitter-allow-collapse .b-grid-splitter-button-expand {
    visibility: hidden
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-grid-splitter-collapsed .b-grid-splitter-buttons {
    --bi-grid-splitter-buttons-opacity: 1;
    --bi-grid-splitter-buttons-scale: 1
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-left-only:not(.b-grid-splitter-collapsed) .b-grid-splitter-button-expand,
.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-right-only:not(.b-grid-splitter-collapsed) .b-grid-splitter-button-collapse {
    visibility: hidden
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)) .b-grid-splitter-buttons {
    display: flex;
    position: absolute;
    translate: 0 -50%;
    height: 2.4em;
    width: 2.4em;
    transition: scale .1s, opacity .1s;
    opacity: var(--bi-grid-splitter-buttons-opacity, 0);
    scale: var(--bi-grid-splitter-buttons-scale, 0);
    font-size: var(--bi-grid-splitter-button-size)
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)) .b-grid-splitter-button-collapse,
.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)) .b-grid-splitter-button-expand {
    flex: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    background: var(--b-grid-splitter-color)
}

:is(.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)) .b-grid-splitter-button-collapse, .b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)) .b-grid-splitter-button-expand):hover {
    --b-region-resize-button-color: var(--b-region-resize-button-hover-color)
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)) .b-grid-splitter-button-collapse {
    border-top-left-radius: 100% 50%;
    border-bottom-left-radius: 100% 50%;
    justify-content: flex-end;
    padding-right: .1em
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)) .b-grid-splitter-button-expand {
    border-top-right-radius: 100% 50%;
    border-bottom-right-radius: 100% 50%;
    padding-left: .1em
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)) .b-grid-splitter-button-icon {
    cursor: pointer;
    height: 1.5em;
    fill: var(--b-region-resize-button-color)
}

.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-hover,
.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-partner-splitter-hover,
.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-touching,
.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-moving {
    --b-grid-splitter-color: var(--b-region-resize-splitter-hover-color);
    --bi-region-resize-splitter-inner-width: var(--b-region-resize-splitter-width-hover)
}

:is(.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-hover, .b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-partner-splitter-hover, .b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-touching, .b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-moving) .b-grid-splitter-inner {
    opacity: 1
}

:is(.b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-hover, .b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-partner-splitter-hover, .b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-touching, .b-grid-base.b-split .b-grid-splitter:where(:not(.b-disabled)).b-moving):not(.b-partner-splitter-hover) {
    --bi-grid-splitter-buttons-scale: 1;
    --bi-grid-splitter-buttons-opacity: 1
}

.b-grid-base.b-split:not(.b-grid-splitter-no-drag) .b-grid-splitter:not(.b-disabled, .b-grid-splitter-collapsed) .b-grid-splitter-inner {
    cursor: col-resize
}

.b-grid-header-scroller.b-collapsed,
.b-grid-footer-scroller.b-collapsed,
.b-virtual-scroller.b-collapsed {
    width: 0;
    min-width: 0 !important
}

.b-grid-splitter-button-collapse .b-splitter-button-touch-area {
    left: -.9em
}

.b-grid-splitter-button-expand .b-splitter-button-touch-area {
    right: -.9em
}

.b-drag-helper-active .b-grid-base.b-split .b-grid-splitter {
    pointer-events: none !important
}

.b-hide-splitter-buttons {
    --bi-grid-splitter-button-display: none
}

.b-row-editor .b-bottom-toolbar .b-toolbar-content {
    justify-content: flex-end
}

.b-row-editor.b-read-only [data-ref=save] {
    display: none
}

.b-row-editor :is(.b-panel-overlay-right, .b-panel-overlay-left) .b-toolbar-content>* {
    flex: 1 1 33%;
    max-width: 10em
}

:root,
:host {
    --b-row-expander-border-bottom-width: var(--b-grid-row-border-width);
    --b-row-expander-font-weight: var(--b-grid-cell-font-weight);
    --b-row-expander-border-bottom-color: var(--b-grid-row-border-color);
    --b-row-expander-color: var(--b-grid-cell-color)
}

.b-row-expander-body {
    display: flex;
    inset-inline: 0;
    background: var(--b-row-expander-background);
    color: var(--b-row-expander-color);
    font-weight: var(--b-row-expander-font-weight);
    padding: var(--b-row-expander-padding, 0)
}

.b-row-expander-body,
.b-row-expander-body.b-no-resize-observer.b-resize-monitored {
    position: absolute
}

.b-grid-vertical-scroller>.b-row-expander-body {
    z-index: 100;
    transition: height .3s, top .3s;
    overflow: hidden
}

.b-row-expander-loading {
    justify-content: center;
    align-items: center;
    font-size: 1.2em;
    display: flex;
    width: 100%
}

.b-row-expander-loading .b-icon-spinner {
    margin-inline-end: .5em
}

.b-grid-base .b-grid-row [data-column=expanderActionColumn] .b-icon {
    transition: rotate .15s ease-in-out;
    font-size: 1em;
    rotate: 180deg
}

.b-row-expander-disabled [data-column=expanderActionColumn] {
    opacity: .2;
    pointer-events: none
}

.b-row-expander.b-grid-base.b-animating.b-row-expander-animating.b-auto-height .b-grid-body-container,
.b-row-expander.b-grid-base.b-animating.b-row-expander-animating.b-auto-height .b-grid-vertical-scroller {
    transition: height .3s;
    overflow-y: hidden !important
}

.b-row-expander.b-grid-base.b-animating.b-row-expander-animating.b-auto-height .b-yscroll-pad {
    display: none
}

.b-row-expander.b-grid-base.b-animating.b-row-expander-animating .b-grid-row {
    transition: height .3s, top .3s
}

.b-grid-base .b-row-expander-row-expanded:not(.b-row-is-collapsing) [data-column=expanderActionColumn] .b-icon-collapse-left {
    rotate: 270deg
}

.b-grid-base .b-row-expander-row-expanded:not(.b-row-is-collapsing) [data-column=expanderActionColumn] .b-icon-collapse-right {
    rotate: 90deg
}

.b-row-expander-row-expanded {
    border-bottom: var(--b-row-expander-border-bottom-width) solid var(--b-row-expander-border-bottom-color)
}

:root,
:host {
    --b-row-reorder-indicator-size: 2px;
    --b-row-reorder-grip-icon: "\f58e";
    --b-row-reorder-indicator-color: var(--b-secondary);
    --b-row-reorder-indicator-invalid-color: var(--b-color-red);
    --b-row-reorder-box-shadow: var(--b-elevation-1);
    --b-row-reorder-invalid-background: color-mix(in oklab, var(--b-row-reorder-indicator-invalid-color), transparent 80%);
    --b-row-reorder-proxy-opacity: .5
}

.b-row-drop-indicator {
    display: none;
    pointer-events: none
}

.b-row-reordering .b-row-drop-indicator {
    position: absolute;
    display: block;
    left: 0;
    width: 100%;
    z-index: 2000;
    top: calc(var(--b-row-reorder-indicator-size) / -2);
    height: var(--b-row-reorder-indicator-size);
    background-color: var(--b-row-reorder-indicator-color)
}

.b-row-reordering .b-row-drop-indicator.b-drag-invalid {
    --b-row-reorder-indicator-color: var(--b-row-reorder-indicator-invalid-color)
}

.b-row-reordering .b-grid-body-container {
    z-index: 4
}

.b-row-reordering .b-drag-original {
    opacity: .3
}

.b-row-reordering .b-grid-group-collapsed.b-row-reordering-target {
    --b-grid-cell-background: var(--b-grid-cell-hover-background)
}

.b-row-reordering .b-row-reordering-target {
    z-index: 9999;
    box-shadow: 0 1px 0 0 var(--b-row-reorder-indicator-color) inset, 0 -1px 0 0 var(--b-row-reorder-indicator-color) inset
}

.b-row-reorder-grip {
    display: grid;
    grid-template-columns: auto 1fr
}

.b-row-reorder-grip.b-grid-cell-align-end {
    justify-items: end
}

.b-row-reorder-grip.b-grid-cell-align-end:before {
    margin-inline-end: auto
}

.b-row-reorder-grip.b-grid-cell-align-right {
    justify-items: right
}

.b-row-reorder-grip.b-grid-cell-align-center {
    justify-items: center
}

.b-row-reorder-grip:before {
    display: inline-flex;
    align-self: stretch;
    align-items: center;
    cursor: move;
    font-size: .8em;
    content: var(--b-row-reorder-grip-icon);
    font-family: var(--b-widget-icon-font-family);
    padding-inline: var(--b-grid-cell-padding-inline);
    margin-inline-start: calc(var(--b-grid-cell-padding-inline) * -1)
}

:is(.b-show-grip-on-hover.b-row-reordering, .b-show-grip-on-hover .b-grid-row:not(:hover, .b-hover)) .b-row-reorder-grip:before {
    visibility: hidden
}

.b-row-reorder-proxy {
    display: flex;
    flex-direction: column;
    width: auto !important;
    height: auto !important;
    z-index: 10000;
    overflow: visible
}

.b-row-reorder-proxy .b-grid-row {
    position: relative
}

.b-row-reorder-proxy.b-drag-copy .b-row-proxy-copy {
    display: flex
}

.b-row-reorder-proxy .b-row-proxy-copy {
    display: none;
    height: 1em;
    width: 1em;
    align-items: center;
    justify-content: center;
    position: absolute;
    inset-inline-start: -.5em;
    top: -.5em;
    border-radius: 50%;
    padding: .75em;
    z-index: 20000;
    background: var(--b-panel-background);
    box-shadow: var(--b-row-reorder-box-shadow)
}

.b-row-reorder-proxy .b-grid-row {
    width: 100%;
    position: relative
}

.b-row-reorder-proxy.b-dragging {
    transition: margin-top .2s, opacity .2s;
    background: transparent;
    opacity: var(--b-row-reorder-proxy-opacity)
}

.b-row-reorder-proxy.b-dragging.b-drag-invalid {
    --b-grid-cell-background: var(--b-row-reorder-invalid-background)
}

.b-row-reorder-proxy.b-dragging .b-grid-row {
    transition: transform .2s, background-color .2s
}

.b-row-drag-count-indicator:before {
    inset-inline-end: -.7em
}

.b-grid-tree-grouped .b-tree-parent-row .b-row-reorder-grip:before {
    content: none
}

.b-row-resize .b-grid-row.b-resize-handle {
    cursor: row-resize !important
}

.b-row-resize .b-grid-row.b-resizing {
    z-index: 2
}

.b-row-resize.b-row-resizing .b-grid-row {
    pointer-events: none
}

.b-row-resize.b-row-resizing * {
    cursor: row-resize !important
}

.b-search-hit-cell {
    background: var(--b-quick-find-background, var(--b-primary-95))
}

.b-search-hit-text {
    padding: .3em 0;
    --b-primary: var(--b-quick-find-primary);
    font-weight: var(--b-quick-find-font-weight);
    background: var(--b-quick-find-background, var(--b-primary-95))
}

.b-search-hit-field {
    position: absolute;
    inset: 0;
    padding: .5em 0;
    background: var(--b-quick-find-background, var(--b-primary-95))
}

.b-search-hit-cell-badge {
    position: absolute;
    line-height: 1;
    color: var(--b-quick-find-badge-color);
    font-size: var(--b-quick-find-badge-font-size);
    inset-inline-end: var(--b-quick-find-badge-offset);
    top: var(--b-quick-find-badge-offset)
}

:root,
:host {
    --b-sort-header-icon: "\f062";
    --b-sort-header-index-font-size: .6em;
    --b-sort-header-index-color: inherit;
    --bi-grid-sort-icon-rotate: 0;
    --bi-grid-sort-icon-opacity: 0;
    --bi-grid-sort-icon-size: 0;
    --bi-grid-sort-icon-margin-inline-start: 0
}

.b-sort-hover-icon .b-grid-header.b-sortable {
    cursor: pointer
}

.b-sort-hover-icon .b-grid-header.b-sortable:not(.b-sort, .b-resizing):hover {
    --bi-grid-sort-icon-opacity: .5;
    --bi-grid-sort-icon-size: var(--b-grid-header-icon-font-size);
    --bi-grid-sort-icon-margin-inline-start: var(--b-grid-header-gap)
}

.b-grid-base.b-sort.b-dragging-header .b-grid-header:not(.b-sort) {
    --bi-grid-sort-icon-opacity: 0;
    --bi-grid-sort-icon-size: 0;
    --bi-grid-sort-icon-margin-inline-start: 0
}

.b-sort-icon {
    transition-property: opacity, color, font-size, margin;
    overflow: hidden;
    white-space: nowrap;
    color: var(--b-grid-header-icon-color);
    opacity: var(--bi-grid-sort-icon-opacity);
    font-size: var(--bi-grid-sort-icon-size);
    margin-inline-start: var(--bi-grid-sort-icon-margin-inline-start);
    transition-duration: var(--b-grid-header-icon-transition-duration)
}

.b-sort-icon:before {
    display: inline-block;
    transition: rotate .2s;
    content: var(--b-sort-header-icon);
    font-family: var(--b-widget-icon-font-family);
    rotate: var(--bi-grid-sort-icon-rotate)
}

:is(.b-grid-header.b-asc, .b-grid-header.b-desc) .b-sort-icon {
    --bi-grid-sort-icon-opacity: 1;
    --bi-grid-sort-icon-size: var(--b-grid-header-icon-font-size);
    --bi-grid-sort-icon-margin-inline-start: var(--b-grid-header-gap)
}

.b-grid-header.b-desc .b-sort-icon {
    --bi-grid-sort-icon-rotate: 180deg
}

.b-sort .b-grid-header-text[data-sort-index]:before {
    content: attr(data-sort-index);
    position: relative;
    top: 1em;
    z-index: 30;
    order: 1;
    color: var(--b-sort-header-index-color);
    font-size: var(--b-sort-header-index-font-size)
}

.b-split-container {
    display: flex;
    height: 100%;
    position: relative;
    overflow: hidden
}

.b-split-container.b-split-horizontal,
.b-split-container.b-split-both {
    flex-direction: column
}

.b-split-container.b-split-vertical {
    flex-direction: row
}

.b-split-container .b-split-top,
.b-split-container .b-split-bottom {
    display: flex;
    flex: 1
}

.b-split-container>.b-grid-base,
.b-split-container>div>.b-grid-base {
    flex: 1;
    flex-basis: 0;
    height: unset !important
}

.b-sticky-cells .b-grid-sticky-row {
    position: absolute;
    top: 0;
    left: 0;
    min-width: auto;
    border: 0 none;
    padding: 0;
    contain: initial
}

.b-sticky-cells .b-grid-sticky-row .b-grid-cell {
    width: min-content;
    contain: initial;
    padding: 0;
    border: 0 none
}

.b-sticky-cells .b-sticky-cells-current-top-row .b-sticky-content-el {
    visibility: hidden
}

.b-sticky-cells .b-sticky-cells-current-top-row.b-not-enough-height .b-sticky-content-el {
    visibility: visible;
    align-self: flex-end
}

:root,
:host {
    --b-stripe-odd-color: var(--b-neutral-98);
    --b-stripe-even-color: var(--b-neutral-100);
    --b-stripe-border-width: 0
}

.b-stripe {
    --b-grid-row-border-width: var(--b-stripe-border-width)
}

.b-stripe .b-grid-row.b-odd {
    --b-grid-cell-background: var(--b-stripe-odd-color)
}

.b-stripe .b-grid-row.b-even {
    --b-grid-cell-background: var(--b-stripe-even-color)
}

.b-stripe .b-hide-row-hover .b-grid-row.b-odd {
    --b-grid-cell-hover-background: var(--b-stripe-odd-color);
    --b-grid-cell-selected-background: var(--b-stripe-odd-color);
    --b-grid-cell-hover-selected-background: var(--b-stripe-odd-color)
}

.b-stripe .b-hide-row-hover .b-grid-row.b-even {
    --b-grid-cell-hover-background: var(--b-stripe-even-color);
    --b-grid-cell-selected-background: var(--b-stripe-even-color);
    --b-grid-cell-hover-selected-background: var(--b-stripe-even-color)
}

.b-summary-disabled .b-grid-footer-container {
    display: none
}

.b-grid-footer.b-focused:focus-visible {
    outline: var(--b-grid-cell-focused-outline-width) solid var(--b-grid-cell-focused-outline-color);
    outline-offset: var(--b-grid-cell-focused-outline-offset, calc(var(--b-grid-cell-focused-outline-width) * -1))
}

.b-generated-parent .b-grid-cell .b-grid-tree-group-summary {
    display: flex;
    justify-content: inherit
}

:root,
:host {
    --b-grid-footer-outline-width: var(--b-grid-header-border-width);
    --b-grid-footer-outline-color: var(--b-grid-header-border-color);
    --b-grid-footer-box-shadow: none;
    --b-grid-footer-border-width: var(--b-grid-header-border-width);
    --b-grid-footer-padding: var(--b-grid-header-padding);
    --b-grid-footer-background: var(--b-neutral-100);
    --b-grid-footer-border-color: var(--b-grid-header-border-color);
    --b-grid-footer-color: var(--b-grid-header-color)
}

.b-grid-footer-container {
    outline: var(--b-grid-footer-outline-width) solid var(--b-grid-footer-outline-color);
    box-shadow: var(--b-grid-footer-box-shadow)
}

.b-grid-footer-container.b-hidden {
    display: none
}

.b-grid-footer-scroller {
    display: flex;
    position: relative;
    overflow: clip;
    flex-shrink: 0;
    min-width: 0
}

.b-grid-footers {
    display: inline-flex;
    align-items: stretch;
    height: 100%;
    white-space: nowrap;
    line-height: initial
}

.b-grid-footer {
    display: flex;
    flex-shrink: 0;
    align-items: stretch;
    transition: background-color .2s;
    color: var(--b-grid-footer-color);
    background: var(--b-grid-footer-background);
    border-inline-end: var(--b-grid-footer-border-width) solid var(--b-grid-footer-border-color);
    font-weight: var(--b-grid-footer-font-weight);
    padding: var(--b-grid-footer-padding);
    text-align: var(--b-grid-footer-text-align)
}

.b-grid-footer:last-child {
    --b-grid-footer-border-width: 0
}

.b-grid-footer-align-start,
.b-grid-footer-align-left {
    --b-grid-footer-text-align: start
}

.b-grid-footer-align-center {
    --b-grid-footer-text-align: center
}

.b-grid-footer-align-end,
.b-grid-footer-align-right {
    --b-grid-footer-text-align: end
}

:root,
:host {
    --b-grid-header-font-size: inherit;
    --b-grid-header-font-weight: 500;
    --b-grid-header-padding: var(--b-grid-cell-padding-inline);
    --b-grid-header-text-transform: none;
    --b-grid-header-text-align: start;
    --b-grid-header-gap: .5em;
    --b-grid-header-icon-font-size: 1em;
    --b-grid-header-border-width: var(--b-grid-cell-border-width);
    --b-grid-header-container-border-width: 1px;
    --b-grid-header-zindex: 1;
    --b-grid-header-icon-transition-duration: var(--b-default-transition-duration);
    --b-grid-header-background: var(--b-neutral-100);
    --b-grid-header-box-shadow: var(--b-elevation-0);
    --b-grid-header-color: var(--b-widget-color);
    --b-grid-header-icon-color: var(--b-grid-header-color);
    --b-grid-header-border-color: var(--b-grid-cell-border-color);
    --b-grid-header-hover-color: var(--b-widget-color)
}

.b-grid-headers,
.b-grid-footers {
    contain: paint style layout;
    flex: 1 1 auto;
    z-index: var(--b-grid-header-zindex)
}

div.b-grid-header-container,
.b-grid-footer-container {
    display: flex;
    z-index: var(--b-grid-header-zindex)
}

div.b-grid-header-container.b-hidden {
    clip-path: inset(0 0 100% 0);
    contain: strict;
    border-bottom: none
}

div.b-grid-header-container .b-yscroll-pad {
    border-bottom: var(--b-grid-header-container-border-width) solid var(--b-grid-header-border-color)
}

.b-grid-header-scroller {
    display: flex;
    position: relative;
    overflow: clip;
    min-width: 0;
    box-shadow: var(--b-grid-header-box-shadow)
}

.b-grid-headers {
    display: flex;
    flex-flow: row nowrap;
    align-items: stretch;
    overflow: clip;
    line-height: initial;
    position: relative
}

.b-grid-header {
    position: relative;
    display: flex;
    user-select: none;
    -webkit-user-select: none;
    flex-direction: column;
    flex-shrink: 0;
    align-items: stretch;
    justify-content: center;
    overflow: clip;
    transition: background-color var(--b-default-transition-duration), border var(--b-default-transition-duration);
    contain: style;
    --b-grid-header-applied-background: var(--b-grid-header-background);
    background: var(--b-grid-header-applied-background);
    border-inline-end: var(--b-grid-header-border-width) solid var(--b-grid-header-border-color);
    color: var(--b-grid-header-color);
    font-size: var(--b-grid-header-font-size);
    font-weight: var(--b-grid-header-font-weight);
    text-transform: var(--b-grid-header-text-transform)
}

.b-grid-header.b-depth-0:hover {
    color: var(--b-grid-header-hover-color);
    --b-grid-header-applied-background: var(--b-grid-header-hover-background, var(--b-primary-98));
    --b-grid-header-icon-color: var(--b-grid-header-hover-color)
}

.b-grid-header.b-focused:focus-visible {
    outline: var(--b-grid-cell-focused-outline-width) solid var(--b-grid-cell-focused-outline-color);
    outline-offset: calc(var(--b-grid-cell-focused-outline-width) * -1)
}

.b-grid-header.b-depth-0 {
    width: 0;
    padding-inline: var(--b-grid-header-padding);
    border-block-end: var(--b-grid-header-container-border-width) solid var(--b-grid-header-border-color)
}

.b-fill-last-column .b-grid-header.b-last-leaf:not(.b-drop-placeholder) {
    border-inline-end: none
}

.b-grid-header:has(.b-widget) .b-grid-header-text-content:empty {
    display: none
}

.b-grid-header-parent {
    border-inline-end: none;
    flex-basis: auto;
    padding-inline: 0
}

.b-grid-header-parent>.b-grid-header-text {
    flex: 1 1 auto;
    padding: var(--b-grid-header-padding)
}

.b-grid-header-parent:where(:not(.b-last-parent))>.b-grid-header-text {
    transition: background-color var(--b-default-transition-duration), border var(--b-default-transition-duration);
    border-inline-end: var(--b-grid-header-border-width) solid var(--b-grid-header-border-color)
}

.b-grid-header-children {
    display: flex;
    flex-flow: row nowrap;
    flex: 1 1 auto;
    transition: border var(--b-default-transition-duration);
    border-top: var(--b-grid-header-border-width) solid var(--b-grid-header-border-color)
}

.b-grid-header-children>* {
    width: inherit
}

.b-grid-header-text {
    display: flex;
    align-items: center;
    padding-block: var(--b-grid-header-padding)
}

.b-grid-header-text:has(.b-widget) {
    gap: var(--b-grid-header-gap)
}

.b-grid-header-text-content {
    flex: 1;
    overflow: clip;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 0;
    text-align: var(--b-grid-header-text-align)
}

.b-grid-header-text-content.b-has-text>* {
    margin-inline-end: var(--b-grid-header-gap)
}

.b-grid-header-align-right,
.b-grid-header-align-end {
    --b-grid-header-text-align: end
}

.b-grid-header-align-center {
    --b-grid-header-text-align: center
}

:is(.b-writing-mode-sideways-lr, .b-writing-mode-sideways-rl, .b-writing-mode-vertical-lr, .b-writing-mode-vertical-rl) .b-grid-header-text-content {
    display: flex;
    text-align: start;
    align-items: var(--b-grid-header-text-align)
}

.b-writing-mode-sideways-lr .b-grid-header-text-content {
    writing-mode: sideways-lr
}

.b-writing-mode-sideways-rl .b-grid-header-text-content {
    writing-mode: sideways-rl
}

.b-writing-mode-horizontal-tb .b-grid-header-text-content {
    writing-mode: horizontal-tb
}

.b-writing-mode-vertical-lr .b-grid-header-text-content {
    writing-mode: vertical-lr
}

.b-writing-mode-vertical-rl .b-grid-header-text-content {
    writing-mode: vertical-rl
}

.b-grid-header-collapse-button {
    background: transparent;
    --b-button-height: 1em;
    --b-button-type-text-color: var(--b-neutral-60)
}

.b-grid-header-collapse-button:hover {
    --b-button-color: var(--b-grid-header-color)
}

.b-check-header-with-checkbox {
    align-items: center
}

.b-check-header-with-checkbox .b-grid-header-text {
    display: none
}

:root {
    --bi-grid-cell-dirty-indicator-clip-path: polygon(0% 50%, 0% 0%, 50% 0%);
    --bi-grid-cell-dirty-indicator-clip-path-rtl: polygon(100% 50%, 50% 0%, 100% 0%);
    --b-grid-cell-auto-height-padding-block: var(--b-grid-cell-padding-inline)
}

.b-no-column-lines,
.b-no-column-lines .b-grid-sub-grid {
    --b-grid-cell-border-width: 0;
    --b-grid-header-border-width: 0
}

.b-no-row-lines {
    --b-grid-row-border-width: 0
}

.b-grid-sub-grid {
    position: relative
}

.b-grid-sub-grid.b-hidden {
    display: none
}

.b-grid-sub-grid-collapsed {
    width: 0;
    min-width: 0 !important;
    overflow: hidden !important
}

.b-animating .b-grid-header-scroller,
.b-animating .b-grid-sub-grid {
    transition-property: width, flex, min-width;
    transition-duration: .3s
}

.b-grid-row {
    position: absolute;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    inset-inline-start: 0;
    overflow: clip;
    contain: layout;
    height: var(--b-grid-row-height);
    z-index: var(--b-grid-row-zindex)
}

.b-grid-sub-grid .b-grid-row {
    min-width: 100%
}

.b-grid-row.b-hover .b-grid-cell {
    --b-grid-cell-applied-background: var(--b-grid-cell-hover-background, var(--b-primary-98));
    --b-grid-cell-color: var(--b-grid-cell-selected-color);
    --b-grid-link-color: var(--b-grid-row-hover-link-color, var(--b-primary-30))
}

.b-selected :is(.b-grid-row .b-grid-cell),
.b-grid-row .b-grid-cell.b-selected {
    --b-grid-cell-applied-background: var(--b-grid-cell-selected-background, var(--b-primary-96));
    --b-grid-cell-color: var(--b-grid-cell-selected-color);
    --b-grid-link-color: var(--b-grid-row-hover-link-color, var(--b-primary-30));
    transition: background-color var(--b-default-transition-duration), color var(--b-default-transition-duration)
}

.b-grid-row.b-hover.b-selected .b-grid-cell {
    --b-grid-cell-applied-background: var(--b-grid-cell-hover-selected-background, var(--b-primary-94))
}

.b-grid-row.fa {
    display: flex
}

.b-grid-row.fa:before {
    content: none
}

.b-grid-row.b-row-placeholder .b-grid-cell {
    color: transparent;
    clip-path: inset(1em 1em 1em 1em)
}

.b-grid-row.b-row-placeholder .b-grid-cell>*:not(.b-editor) {
    display: none
}

.b-grid-row.b-row-placeholder .b-grid-cell:after {
    content: "";
    position: absolute;
    inset: 1em;
    border-radius: 5px;
    background: var(--b-grid-row-placeholder-color)
}

.b-hide-row-hover {
    --b-grid-cell-hover-background: var(--b-grid-cell-background);
    --b-grid-cell-selected-background: var(--b-grid-cell-background);
    --b-grid-cell-hover-selected-background: var(--b-grid-cell-background)
}

.b-grid-body-container.b-vertical-overflow .b-grid-row.b-last .b-grid-cell {
    --b-grid-row-border-color: transparent
}

.b-grid-cell {
    position: absolute;
    display: flex;
    flex-shrink: 0;
    contain: strict;
    align-items: center;
    white-space: nowrap;
    height: 100%;
    background: var(--b-grid-cell-applied-background, var(--b-grid-cell-background));
    color: var(--b-grid-cell-color);
    border-inline-end: var(--b-grid-cell-border-width) solid var(--b-grid-cell-border-color);
    border-bottom: var(--b-grid-row-border-width) solid var(--b-grid-row-border-color);
    font-size: var(--b-grid-cell-font-size);
    font-weight: var(--b-grid-cell-font-weight);
    gap: var(--b-grid-cell-gap);
    overflow: var(--bi-grid-cell-overflow);
    padding-inline: var(--b-grid-cell-padding-inline);
    padding-block: var(--b-grid-cell-padding-block)
}

.b-grid-cell:not(.b-focused) *,
.b-grid-cell:not(.b-focused) *:before,
.b-grid-cell:not(.b-focused) *:after {
    transition: none
}

.b-theme-transition .b-grid-cell {
    transition: background-color var(--b-default-transition-duration), border var(--b-default-transition-duration)
}

.b-windows .b-grid-cell {
    contain: layout
}

.b-grid-cell.b-focused:focus-visible {
    outline: var(--b-grid-cell-focused-outline-width) solid var(--b-grid-cell-focused-outline-color);
    outline-offset: var(--b-grid-cell-focused-outline-offset, calc(var(--b-grid-cell-focused-outline-width) * -1))
}

.b-grid-cell.b-hover {
    --b-grid-cell-applied-background: var(--b-grid-cell-hover-background, var(--b-primary-98));
    --b-grid-cell-color: var(--b-grid-cell-selected-color)
}

.b-grid-cell.b-selected {
    --b-grid-cell-applied-background: var(--b-grid-cell-selected-background, var(--b-primary-96));
    --b-grid-cell-color: var(--b-grid-cell-selected-color)
}

.b-grid-cell.b-auto-height {
    white-space: normal
}

.b-grid-cell.b-auto-height:not(.b-tree-cell) {
    --b-grid-cell-padding-block: var(--b-grid-cell-auto-height-padding-block)
}

.b-grid-cell.b-measuring-auto-height {
    contain: paint style layout;
    align-self: baseline;
    height: auto
}

.b-grid-no-text-selection .b-grid-cell {
    user-select: none;
    -webkit-user-select: none
}

.b-grid-cell a {
    color: var(--b-grid-link-color, var(--b-primary-30))
}

.b-supports-has.b-use-ellipsis:not(.b-grid-measuring) .b-grid-row {
    height: var(--b-grid-row-height)
}

.b-supports-has.b-use-ellipsis:not(.b-grid-measuring) .b-grid-row .b-grid-cell:not(.b-auto-height, .b-row-reorder-grip, :has(*)) {
    display: block;
    text-overflow: ellipsis;
    line-height: var(--b-grid-row-height)
}

.b-grid-cell-align-right,
.b-grid-cell-align-end {
    justify-content: flex-end;
    text-align: end
}

.b-grid-cell-align-center {
    justify-content: center;
    text-align: center
}

.b-rtl {
    --bi-grid-cell-dirty-indicator-clip-path: var(--bi-grid-cell-dirty-indicator-clip-path-rtl)
}

.b-show-dirty .b-cell-dirty:not(.b-editing):after,
.b-show-dirty-during-edit .b-cell-dirty:after {
    content: "";
    z-index: 2;
    position: absolute;
    top: 0;
    inset-inline-start: 1px;
    width: 1.2em;
    height: 1.2em;
    background-color: var(--b-grid-cell-dirty-color);
    clip-path: var(--bi-grid-cell-dirty-indicator-clip-path)
}

.b-grid-splitter {
    transition: background var(--b-default-transition-duration);
    background: var(--b-grid-splitter-color, var(--b-grid-splitter-narrow-color));
    flex: 0 0 var(--b-grid-splitter-width)
}

.b-grid-splitter .b-grid-splitter-inner {
    display: none
}

.b-virtual-scrollers {
    z-index: 3;
    display: flex;
    flex-direction: row;
    contain: paint style layout
}

.b-firefox .b-virtual-scrollers {
    contain: paint layout
}

.b-overlay-scrollbar.b-firefox.b-windows .b-virtual-scrollers,
.b-overlay-scrollbar.b-firefox.b-windows .b-virtual-scrollers .b-virtual-scroller {
    pointer-events: auto
}

.b-overlay-scrollbar .b-virtual-scrollers {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none
}

.b-overlay-scrollbar .b-virtual-scrollers .b-virtual-scroller {
    height: 16px;
    pointer-events: none
}

.b-virtual-scrollers .b-virtual-scroller {
    overflow-x: scroll;
    overflow-y: hidden
}

.b-virtual-scrollers .b-virtual-width {
    height: 1px
}

.b-overlay-scrollbar .b-virtual-scroller:hover,
.b-overlay-scrollbar .b-virtual-scroller.b-show-virtual-scroller {
    pointer-events: all;
    opacity: 1;
    transition: opacity .5s
}

:root,
:host {
    --b-action-column-button-size: 1.1em;
    --b-action-column-color: var(--b-widget-color);
    --b-action-column-row-hover-color: var(--b-widget-color);
    --b-action-column-readonly-color: var(--b-widget-disabled-color);
    --b-action-column-hover-color: var(--b-neutral-10)
}

.b-action-ct {
    display: flex;
    flex-flow: row nowrap;
    gap: .5em
}

.b-action-item {
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    font-size: var(--b-action-column-button-size);
    color: var(--b-action-column-color);
    pointer-events: var(--bi-action-column-pointer-events, auto)
}

.b-action-item:hover {
    --b-action-column-color: var(--b-action-column-hover-color)
}

.b-action-item:focus-visible {
    outline-offset: 3px;
    outline: currentColor solid 3px
}

.b-grid-base.b-read-only.b-action-column-readonly {
    --b-action-column-color: var(--b-action-column-readonly-color);
    --bi-action-column-pointer-events: none
}

.b-grid-row.b-hover,
.b-grid-row.b-selected {
    --b-action-column-color: var(--b-action-column-row-hover-color)
}

:root,
:host {
    --b-color-column-border-width: 0;
    --b-color-column-empty-border-width: 1px;
    --b-color-column-border-color: transparent;
    --b-color-column-empty-border-color: var(--b-border-7);
    --b-color-column-picker-width: 11em
}

.b-color-cell-swatch {
    border-radius: 1em;
    cursor: pointer;
    width: 1.5em;
    height: 1.5em;
    margin-inline: 1em;
    flex-shrink: 0;
    --b-primary: transparent;
    background: var(--b-primary);
    border: var(--b-color-column-border-width) solid var(--b-color-column-border-color)
}

.b-color-cell-swatch.b-empty {
    --b-color-column-border-width: var(--b-color-column-empty-border-width);
    --b-color-column-border-color: var(--b-color-column-empty-border-color)
}

.b-color-cell-swatch.b-show-color-name {
    margin-inline: 0
}

.b-color-column-picker {
    width: var(--b-color-column-picker-width)
}

:root,
:host {
    --b-percent-column-bar-border-radius: var(--b-widget-border-radius);
    --b-percent-column-bar-max-height: .6em;
    --b-percent-column-bar-border: none;
    --b-percent-column-circle-thickness: .5em;
    --b-percent-column-circle-label-font-size: .8em;
    --b-percent-column-bar-background: var(--b-neutral-95);
    --b-percent-column-low-fill-background: var(--b-color-orange);
    --b-percent-column-wide-value-color: var(--b-neutral-100);
    --b-percent-column-low-value-color: var(--b-secondary);
    --b-percent-column-zero-value-color: transparent;
    --b-percent-column-circle-background: var(--b-grid-cell-border-color);
    --b-percent-column-circle-label-color: var(--b-grid-cell-color);
    --bi-percent-column-transition: none
}

.b-percent-bar-outer {
    display: flex;
    height: 30%;
    overflow: hidden;
    width: 100%;
    outline-offset: -1px;
    background: var(--b-percent-column-bar-background);
    outline: var(--b-percent-column-bar-border);
    border-radius: var(--b-percent-column-bar-border-radius);
    max-height: var(--b-percent-column-bar-max-height)
}

.b-percent-bar-outer.b-low {
    --b-percent-column-fill-background: var(--b-percent-column-low-value-color);
    --b-percent-column-value-color: var(--b-percent-column-low-value-color)
}

.b-percent-bar-outer.b-zero {
    --b-percent-column-value-color: var(--b-percent-column-zero-value-color)
}

.b-percent-bar-outer .b-percent-bar {
    z-index: 1;
    background: var(--b-percent-column-fill-background, var(--b-primary-50));
    width: var(--bi-percent-bar-value);
    transition: var(--bi-percent-column-transition)
}

.b-percent-bar-value {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex: 1;
    font-size: .6em;
    container-name: percent-column-value;
    container-type: size;
    z-index: 1
}

.b-percent-bar-value label {
    transition: translate .5s, color .5s;
    margin-inline-start: .5em;
    color: var(--b-percent-column-value-color, var(--b-primary-50));
    translate: var(--bi-percent-column-value-translate, 0)
}

@property --bi-percent-column-circle-angle {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0turn;
}

.b-percent-done-circle {
    --bi-percent-column-circle-angle: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    max-height: 3em;
    max-width: 3em;
    border-radius: 50%;
    background: conic-gradient(var(--b-percent-column-circle-done-color, var(--b-primary)) 0 var(--bi-percent-column-circle-angle), transparent var(--bi-percent-column-circle-angle) 1turn) var(--b-percent-column-circle-background)
}

.b-percent-done-circle:after {
    content: attr(data-value);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: calc(100% - var(--b-percent-column-circle-thickness));
    height: calc(100% - var(--b-percent-column-circle-thickness));
    background: var(--b-percent-column-circle-label-background, var(--b-grid-cell-background));
    font-size: var(--b-percent-column-circle-label-font-size);
    color: var(--b-percent-column-circle-label-color)
}

.b-animating .b-percent-done-circle {
    transition: --bi-percent-column-circle-angle .3s, height .3s, width .3s
}

@container percent-column-value (width < 2em) {
    label {
        margin-inline-start: -.5em !important;
        --b-percent-column-value-color: var(--b-percent-column-wide-value-color);
        --bi-percent-column-value-translate: -100%
    }
}

.b-grid-body-container.b-scrolling .b-percent-bar,
.b-grid-body-container.b-scrolling .b-percent-bar * {
    transition: none
}

.b-animating,
.b-grid-row-updating {
    --bi-percent-column-transition: width .5s, padding .5s, background-color .5s
}

:root,
:host {
    --b-rating-column-icon-size: 1.2em;
    --b-rating-column-empty-color: var(--b-neutral-95);
    --b-rating-column-filled-color: var(--b-color-yellow)
}

.b-rating-cell .b-rating-icon {
    font-size: var(--b-rating-column-icon-size);
    color: var(--bi-rating-column-icon-color);
    opacity: var(--bi-rating-column-icon-opacity, 1);
    transition: var(--bi-rating-column-icon-transition, all var(--b-default-transition-duration) linear)
}

.b-theme-transition :is(.b-rating-cell .b-rating-icon) {
    transition: color var(--b-default-transition-duration)
}

.b-rating-cell .b-empty {
    --bi-rating-column-icon-color: var(--b-rating-column-empty-color);
    --bi-rating-column-icon-opacity: var(--bi-rating-column-empty-opacity, 1)
}

.b-rating-cell .b-filled {
    --bi-rating-column-icon-color: var(--b-rating-column-filled-color)
}

.b-rating-cell-inner {
    display: flex
}

.b-grid-base:not(.b-read-only) .b-rating-cell-inner:not(.b-not-editable) .b-rating-icon {
    cursor: pointer
}

.b-grid-base:not(.b-read-only) .b-rating-cell-inner:not(.b-not-editable) .b-rating-icon:hover~.b-icon {
    --bi-rating-column-icon-color: var(--b-rating-column-empty-color);
    --bi-rating-column-empty-opacity: 1
}

.b-grid-base:not(.b-read-only) .b-rating-cell-inner:not(.b-not-editable):hover .b-rating-icon {
    --bi-rating-column-icon-color: var(--b-rating-column-filled-color);
    --bi-rating-column-empty-opacity: .4
}

.b-grid-body-container.b-scrolling .b-rating-icon {
    --bi-rating-column-icon-transition: none
}

:root,
:host {
    --b-row-number-column-background: var(--b-neutral-97)
}

.b-grid-base .b-grid-cell.b-row-number-cell {
    --b-grid-cell-background: var(--b-row-number-column-background)
}

:root,
:host {
    --b-tree-loading-icon: "\f110";
    --b-tree-icon-width: 1.25em;
    --b-tree-cell-gap: var(--b-widget-gap);
    --b-tree-parent-font-weight: 500;
    --b-tree-indent-size: 1.7em;
    --b-tree-leaf-icon-font-size: .3em;
    --b-tree-expander-icon-font-size: 1.2em;
    --b-tree-expander-color: var(--b-text-3);
    --b-tree-expander-row-hover-color: var(--b-tree-expander-color);
    --b-tree-parent-color: var(--b-grid-cell-color);
    --b-tree-icon-color: var(--b-tree-expander-color);
    --b-tree-icon-row-hover-color: var(--b-tree-expander-color);
    --b-tree-line-width: 2px;
    --b-tree-line-color: var(--b-neutral-85);
    --b-tree-line-offset: .45em
}

.b-internal {
    --b-tree-level: null
}

.b-tree-expander {
    position: relative;
    top: 1px;
    cursor: pointer;
    display: grid;
    place-items: center
}

.b-loading-children .b-tree-expander.b-icon:before {
    animation: b-anim-rotate 2s infinite linear;
    content: var(--b-tree-loading-icon)
}

.b-grid-cell.b-tree-cell {
    align-items: stretch;
    gap: 0
}

.b-grid-cell.b-tree-cell.b-selected,
.b-grid-cell.b-tree-cell.b-hover {
    --b-grid-cell-color: var(--b-grid-cell-selected-color)
}

.b-tree-cell-inner {
    gap: var(--b-tree-cell-gap)
}

.b-tree-leaf-cell .b-tree-cell-inner:before {
    margin-inline-end: .6em;
    text-align: center;
    font-family: var(--b-widget-icon-font-family);
    color: var(--b-tree-expander-color);
    width: var(--b-tree-icon-width);
    min-width: var(--b-tree-icon-width)
}

.b-tree-icon,
.b-icon-tree-leaf,
.b-icon-tree-folder,
.b-icon-tree-folder-open,
.b-icon-tree-expand,
.b-icon-tree-collapse {
    text-align: center;
    color: var(--b-tree-expander-color);
    width: var(--b-tree-icon-width);
    min-width: var(--b-tree-icon-width)
}

.b-tree-icon {
    color: var(--b-tree-icon-color)
}

.b-icon-tree-leaf:before {
    vertical-align: middle;
    width: 100%;
    font-size: var(--b-tree-leaf-icon-font-size)
}

.b-icon-tree-folder:before,
.b-icon-tree-folder-open:before {
    margin-inline-start: .1em
}

:is(.b-icon-tree-expand, .b-icon-tree-collapse).b-empty-parent {
    visibility: hidden
}

:is(.b-icon-tree-expand, .b-icon-tree-collapse):before {
    font-size: var(--b-tree-expander-icon-font-size)
}

.b-tree:not(.b-show-tree-lines) .b-tree-cell-inner {
    padding-inline-start: calc(var(--b-tree-indent-size) * var(--b-tree-level))
}

.b-tree:not(.b-show-tree-lines) .b-tree-leaf-cell .b-tree-parent-has-icon {
    padding-inline-start: calc(var(--b-tree-indent-size) * (var(--b-tree-level) - 1) + var(--b-tree-icon-width) + var(--b-tree-cell-gap))
}

.b-tree-line {
    flex-shrink: 0;
    transition: border-color var(--b-default-transition-duration);
    border-color: var(--b-tree-line-color);
    width: var(--b-tree-indent-size)
}

.b-tree-line:before {
    content: "";
    display: block;
    border-inline-start-color: inherit;
    border-inline-start-style: solid;
    height: 100%;
    position: relative;
    border-inline-start-width: var(--b-tree-line-width);
    inset-inline-start: var(--b-tree-line-offset)
}

.b-tree-cell-inner {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    flex-grow: 1;
    padding-block: .5em
}

.b-tree-cell-inner.b-text-value {
    flex-shrink: 1;
    overflow: hidden
}

.b-tree-cell-inner.b-text-value .b-tree-cell-value {
    display: initial;
    overflow: hidden;
    text-overflow: ellipsis
}

.b-tree-cell.b-auto-height .b-tree-cell-inner,
.b-tree-cell.b-auto-height {
    flex-shrink: 1
}

a.b-tree-cell-inner {
    text-decoration: none
}

a.b-tree-cell-inner:hover .b-tree-cell-value {
    text-decoration: underline
}

.b-tree-parent-row .b-grid-cell {
    font-weight: var(--b-tree-parent-font-weight);
    --b-grid-cell-color: var(--b-tree-parent-color)
}

.b-tree-parent-row .b-grid-cell.b-selected,
.b-tree-parent-row .b-grid-cell.b-hover {
    --b-grid-cell-color: var(--b-grid-cell-selected-color)
}

.b-tree-cell-value {
    flex: 1;
    display: flex;
    align-items: center;
    gap: var(--b-grid-cell-gap)
}

.b-touch .b-tree-expander {
    width: 1.1em
}

.b-touch .b-icon-tree-expand:before,
.b-touch .b-icon-tree-collapse:before {
    font-size: 1.8em
}

.b-touch .b-icon-tree-leaf:before {
    font-size: .6em
}

.b-touch .b-tree-icon,
.b-touch .b-tree-leaf-cell:not(.b-tree-parent-cell):before {
    font-size: 1.2em
}

:is(.b-grid-row, .b-grid-cell).b-hover,
:is(.b-grid-row, .b-grid-cell).b-selected {
    --b-tree-expander-color: var(--b-tree-expander-row-hover-color);
    --b-tree-icon-color: var(--b-tree-icon-row-hover-color)
}

.b-widget-cell {
    --b-button-max-height: 80%
}

.b-aifilter-field .b-mask-text {
    padding: .5em
}

.b-aifilter-field-result-popup {
    --b-primary: var(--b-color-yellow);
    --b-popup-background: var(--b-primary-95)
}

.b-checklist-filter-combo-picker.b-panel {
    padding: 0;
    --b-panel-padding: 0;
    --b-list-item-padding: .75em var(--b-widget-padding)
}

.b-checklist-filter-combo-picker.b-panel [data-ref=searchField] {
    width: 100%
}

.b-checklist-filter-combo-picker.b-panel .b-list-item-content {
    display: flex
}

.b-checklist-filter-combo-picker.b-panel .b-checklist-filter-combo-item-text {
    flex-grow: 1
}

.b-checklist-filter-combo-picker.b-panel .b-bottom-toolbar {
    --b-toolbar-padding: var(--b-widget-padding)
}

.b-resource-collapse-cell .b-icon {
    background: transparent;
    border: none;
    transition: rotate .2s;
    cursor: pointer
}

.b-resource-collapse-cell .b-icon.b-flip {
    rotate: 180deg
}

:root,
:host {
    --b-resource-info-column-name-font-weight: 600;
    --b-resource-info-column-role-font-size: .8em;
    --b-resource-info-column-role-color: var(--b-neutral-65);
    --b-resource-info-column-role-row-hover-color: var(--b-neutral-65)
}

.b-colorize {
    --b-resource-info-column-avatar-background-color: var(--b-primary-85)
}

.b-resource-info {
    flex: 1;
    height: 100%;
    display: grid;
    grid-template-columns: min-content 1fr;
    overflow: clip;
    column-gap: 1em;
    align-items: center;
    --b-primary: var(--b-resource-event-color);
    --b-avatar-background: var(--b-resource-info-column-avatar-background-color)
}

.b-resource-info div {
    overflow: clip;
    text-overflow: ellipsis
}

.b-resource-info .b-resource-avatar {
    grid-column: 1
}

.b-resource-info:has(.b-resource-role, .b-resource-events, .b-resource-meta) .b-resource-avatar {
    grid-row: span 2
}

.b-resource-info .b-resource-name {
    grid-column: 2;
    align-self: end;
    font-weight: var(--b-resource-info-column-name-font-weight)
}

.b-resource-info .b-resource-role,
.b-resource-info .b-resource-events,
.b-resource-info .b-resource-meta {
    grid-column: 2;
    align-self: start;
    font-size: var(--b-resource-info-column-role-font-size);
    color: var(--b-resource-info-column-role-color)
}

.b-resource-info .b-resource-meta {
    display: flex;
    align-items: center;
    gap: .5em
}

.b-resource-info .b-resource-icon {
    display: grid;
    place-items: center
}

:is(.b-grid-row, .b-grid-cell).b-selected,
:is(.b-grid-row, .b-grid-cell).b-hover {
    --b-resource-info-column-role-color: var(--b-resource-info-column-role-row-hover-color)
}

.b-scale-cell {
    padding-inline: 0 !important
}

.b-scale-cell .b-scale {
    background-color: transparent;
    font-weight: var(--b-grid-cell-font-weight)
}

.b-scale-cell .b-scale-tick-label {
    font-size: 70%
}

:root,
:host {
    --b-resource-time-range-zindex: 5;
    --b-resource-time-range-font-size: .85em;
    --b-resource-time-range-align-items: flex-end;
    --b-resource-time-range-padding-block: .25em;
    --b-resource-time-range-padding-inline: .5em;
    --b-resource-time-range-background-transparency: 95%
}

.b-resource-time-range-canvas {
    z-index: var(--b-resource-time-range-zindex)
}

.b-sch-canvas.b-interactive .b-sch-resource-time-range {
    pointer-events: auto
}

.b-sch-resource-time-range {
    display: flex;
    position: absolute;
    inset-inline-start: 0;
    justify-content: center;
    align-items: center;
    user-select: none;
    -webkit-user-select: none;
    opacity: 1;
    --b-primary: var(--b-secondary);
    --b-sch-event-padding-block: var(--b-resource-time-range-padding-block);
    --b-sch-event-padding-inline: var(--b-resource-time-range-padding-inline);
    --b-resource-time-range-background: color-mix(in srgb, var(--b-primary), transparent var(--b-resource-time-range-background-transparency));
    --b-resource-time-range-color: var(--b-primary);
    background: var(--b-resource-time-range-background);
    color: var(--b-resource-time-range-color);
    transition: var(--b-sch-event-transition)
}

.b-sch-resource-time-range [data-task-feature] {
    display: flex;
    height: 100%;
    align-items: center;
    font-size: var(--b-resource-time-range-font-size)
}

.b-animating .b-sch-resource-time-range {
    transition: var(--b-sch-event-animating-transition)
}

.b-sch-resource-time-range.b-removing {
    transition: opacity .3s;
    opacity: 0
}

.b-sch-resource-time-range.b-remove-remove,
.b-sch-resource-time-range.b-toggle-remove {
    transition: opacity .2s;
    opacity: 0
}

.b-sch-resource-time-range.b-toggle-add {
    animation: b-anim-toggle-add .3s !important
}

.b-sch-resource-time-range .b-sch-event-content {
    align-items: var(--b-resource-time-range-align-items)
}

:root,
:host {
    --b-column-lines-zindex: 2;
    --b-column-lines-tick-style: solid;
    --b-column-lines-major-style: solid;
    --b-column-lines-tick-color: var(--b-neutral-95);
    --b-column-lines-major-color: var(--b-grid-cell-border-color);
    --b-column-lines-resource-color: var(--b-grid-cell-border-color)
}

.b-column-lines-canvas {
    z-index: var(--b-column-lines-zindex)
}

.b-column-line,
.b-column-line-major {
    height: 100%;
    position: absolute;
    border-inline-start-width: 1px
}

.b-theme-transition :is(.b-column-line, .b-column-line-major) {
    transition: border-color var(--b-default-transition-duration)
}

.b-column-line {
    border-color: var(--b-column-lines-tick-color);
    border-inline-start-style: var(--b-column-lines-tick-style)
}

.b-column-line-major {
    z-index: 1;
    border-color: var(--b-column-lines-major-color);
    border-inline-start-style: var(--b-column-lines-major-style)
}

.b-resource-column-line {
    border-color: var(--b-column-lines-resource-color)
}

.b-sch-vertical .b-column-line:not(.b-resource-column-line),
.b-sch-vertical .b-column-line-major {
    height: auto;
    width: 100%;
    position: absolute;
    border-inline-start: none;
    border-top-width: 1px;
    border-top-style: var(--b-column-lines-tick-style)
}

.b-sch-vertical .b-resource-group-divider {
    border-color: var(--b-grid-header-border-color)
}

:root,
:host {
    --b-dependency-zindex: 5;
    --b-dependency-stroke-width: 1;
    --b-dependency-hover-stroke-width: 2;
    --b-dependency-tooltip-terminal-size: .35em;
    --b-dependency-color: var(--b-border-5);
    --b-dependency-selected-color: var(--b-color-red)
}

.b-internal {
    --b-dependency-marker: null
}

.b-sch-dependencies-canvas {
    --bi-dependency-marker: url(#arrowEnd);
    contain: unset;
    overflow: visible;
    z-index: var(--b-dependency-zindex)
}

.b-sch-dependency-arrow {
    fill: var(--b-dependency-color);
    fill: context-stroke
}

.b-sch-dependency {
    pointer-events: visibleStroke;
    fill: transparent;
    transition: stroke-width .2s linear, stroke .2s linear;
    stroke: var(--b-dependency-color);
    stroke-width: var(--b-dependency-stroke-width)
}

.b-sch-dependency.b-sch-dependency-over {
    stroke-dasharray: 0;
    --b-dependency-stroke-width: var(--b-dependency-hover-stroke-width)
}

.b-sch-dependency.b-sch-released {
    display: none
}

.b-sch-dependency.b-click-area {
    stroke: transparent;
    stroke-dasharray: none !important;
    marker-end: none
}

.b-sch-dependency {
    marker-end: var(--b-dependency-marker)
}

.b-sch-dependency.b-sch-bidirectional-line {
    marker-start: var(--b-dependency-marker)
}

.b-sch-dependency.b-sch-dependency-markerless {
    marker-end: none
}

.b-sch-dependency-tooltip {
    display: grid;
    grid-template-columns: auto auto auto;
    grid-column-gap: .5em;
    align-items: center
}

.b-sch-dependency-tooltip label {
    font-size: .8em
}

:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box {
    width: 1em;
    height: .8em;
    border-radius: 2px;
    display: none;
    position: relative;
    background: var(--b-dependency-tooltip-event-background, var(--b-primary-85))
}

:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-start,
:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-end,
:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-right,
:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-left,
:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-top,
:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-bottom {
    display: block
}

:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box:after {
    content: "";
    border-radius: 50%;
    position: absolute;
    background-color: var(--b-dependency-tooltip-terminal-color, var(--b-primary-50));
    width: var(--b-dependency-tooltip-terminal-size);
    height: var(--b-dependency-tooltip-terminal-size)
}

:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-end:after,
:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-right:after {
    inset-inline-end: calc(-.5 * var(--b-dependency-tooltip-terminal-size));
    top: 50%;
    translate: 0 -50%
}

:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-start:after,
:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-left:after {
    inset-inline-start: calc(-.5 * var(--b-dependency-tooltip-terminal-size));
    top: 50%;
    translate: 0 -50%
}

:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-top:after {
    top: calc(-.5 * var(--b-dependency-tooltip-terminal-size));
    inset-inline-start: 50%;
    translate: -50%
}

:is(.b-sch-dependency-creation-tooltip, .b-sch-dependency-tooltip) .b-sch-box.b-bottom:after {
    bottom: calc(-.5 * var(--b-dependency-tooltip-terminal-size));
    inset-inline-start: 50%;
    translate: -50%
}

.b-sch-dependency.b-selected {
    stroke: var(--b-dependency-selected-color);
    stroke-width: 2
}

.b-sch-dependency-remove-icon {
    position: absolute;
    height: 1em;
    width: 1em;
    display: flex;
    translate: -50% -50%;
    pointer-events: all;
    cursor: pointer;
    z-index: 1000;
    animation: b-anim-show-dependency-remove-icon .2s ease-in-out 1;
    font-size: 1.1em;
    color: var(--b-dependency-selected-color)
}

.b-sch-dependency-remove-icon:before {
    border-radius: 50%;
    background: radial-gradient(circle, #fff 0%, #fff 60%, transparent 60%, transparent 100%)
}

.b-sch-dependency-remove-icon.b-removing {
    animation: b-anim-hide-dependency-remove-icon .15s linear 1
}

:is(.b-sch-event, .b-gantt-task).b-sch-terminals-visible {
    z-index: 2
}

@keyframes b-anim-show-dependency-remove-icon {
    0% {
        scale: 0;
        opacity: 0
    }

    to {
        scale: 1;
        opacity: 1
    }
}

@keyframes b-anim-hide-dependency-remove-icon {
    0% {
        scale: 1;
        opacity: 1
    }

    to {
        scale: 0;
        opacity: 0
    }
}

.b-sch-event.b-cut-item {
    opacity: .4
}

.b-timeline-base.b-drag-creating {
    user-select: none;
    -webkit-user-select: none
}

.b-timeline-base.b-drag-creating .b-sch-time-axis-cell,
.b-timeline-base.b-drag-creating .b-sch-event-wrap,
.b-timeline-base.b-drag-creating .b-gantt-task-wrap {
    pointer-events: none
}

.b-timeline-base.b-drag-creating * {
    transition: none
}

.b-sch-drag-creating.b-too-narrow {
    opacity: .25
}

:root,
:host {
    --b-event-drag-select-border-width: 1px;
    --b-event-drag-select-border-style: dashed;
    --b-event-drag-select-border-radius: var(--b-widget-border-radius);
    --b-event-drag-select-border-color: var(--b-neutral-50)
}

.b-drag-select-rect {
    position: absolute;
    left: 0;
    top: 0;
    transform-origin: 0 0;
    pointer-events: none;
    z-index: 100;
    border: var(--b-event-drag-select-border-width) var(--b-event-drag-select-border-style) var(--b-event-drag-select-border-color);
    border-radius: var(--b-event-drag-select-border-radius)
}

.b-event-editor {
    width: 28em
}

.b-event-editor.b-collapsed .b-panel-collapse-revealer {
    display: none
}

.b-event-editor [data-ref=saveButton],
.b-event-editor [data-ref=cancelButton],
.b-event-editor [data-ref=deleteButton] {
    min-width: 5.5em
}

.b-event-editor-content {
    grid-template-columns: minmax(min-content, 1fr) minmax(min-content, 1fr);
    align-items: end
}

.b-event-editor-content .b-widget {
    grid-column: span 2
}

.b-event-editor-content [data-ref=startDateField],
.b-event-editor-content [data-ref=endDateField] {
    grid-column: span 1;
    min-width: 10em
}

.b-event-editor-content [data-ref=startTimeField],
.b-event-editor-content [data-ref=endTimeField] {
    grid-column: span 1;
    min-width: 12em
}

:root,
:host {
    --b-event-non-working-time-opacity: .7
}

.b-timeline-base .b-sch-event-wrap .b-sch-non-working-time {
    z-index: 0;
    --b-time-range-opacity: var(--b-event-non-working-time-opacity)
}

.b-dragging-event .b-sch-event-wrap.b-dragging .b-sch-non-working-time {
    display: none
}

.b-animating .b-sch-event-wrap .b-sch-time-range {
    transition: none
}

.b-sch-vertical .b-sch-event-wrap .b-sch-non-working-time {
    inset-inline-start: 0
}

.b-sch-event-tooltip {
    --b-tooltip-text-gap: .5em
}

.b-time-axis-group-summary {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%
}

.b-time-axis-group-summary .b-time-axis-tick {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center
}

.b-time-axis-group-summary .b-time-axis-summary-value {
    text-align: center
}

:root,
:host {
    --b-event-label-font-size: .9em;
    --b-event-label-font-weight: var(--b-sch-event-font-weight);
    --b-event-label-gap: .5em;
    --b-event-label-color: var(--b-sch-event-color);
    --b-selected-event-label-color: var(--b-sch-event-color);
    --b-event-label-background: null
}

:is(.b-sch-event-wrap, .b-gantt-task-wrap) .b-sch-label {
    text-align: center;
    white-space: nowrap;
    z-index: 1;
    min-width: 1em;
    pointer-events: all;
    user-select: none;
    -webkit-user-select: none;
    background: var(--b-event-label-background);
    color: var(--b-event-label-color);
    font-size: var(--b-event-label-font-size);
    font-weight: var(--b-event-label-font-weight)
}

:is(.b-sch-event-wrap, .b-gantt-task-wrap).b-sch-event-selected .b-sch-label {
    --b-event-label-color: var(--b-selected-event-label-color)
}

:is(.b-sch-event-wrap, .b-gantt-task-wrap) .b-sch-label-top {
    grid-area: top;
    justify-self: center;
    margin-bottom: .2em
}

:is(.b-sch-event-wrap, .b-gantt-task-wrap) .b-sch-label-bottom {
    grid-area: bottom;
    justify-self: center;
    margin-top: .2em
}

:is(.b-sch-event-wrap, .b-gantt-task-wrap) .b-sch-label-before {
    grid-area: before;
    align-self: center;
    justify-self: end;
    margin-inline-end: var(--b-event-label-gap)
}

:is(.b-sch-event-wrap, .b-gantt-task-wrap) .b-sch-label-after {
    grid-area: after;
    align-self: center;
    justify-self: start;
    margin-inline-start: var(--b-event-label-gap)
}

.b-sch-event-wrap.b-measure-label {
    height: 1em;
    position: fixed;
    top: -10000px;
    inset-inline-start: -10000px;
    visibility: hidden
}

.b-sch-event-wrap.b-measure-label label {
    padding-inline-start: var(--b-event-label-gap);
    grid-area: none
}

.b-sch-label-editor {
    background: var(--b-neutral-100)
}

:root,
:host {
    --b-dependency-terminal-size: 14px;
    --b-dependency-terminal-offset: -4px;
    --b-dependency-terminal-z-index: calc(var(--b-event-resize-handle-zindex) + 1);
    --b-dependency-terminal-border-width: 1px;
    --b-dependency-terminal-border-style: solid;
    --b-dependency-terminal-border-color: inherit;
    --b-dependency-valid-color: var(--b-color-green);
    --b-dependency-invalid-color: var(--b-color-red);
    --b-dependency-tooltip-valid-header-color: var(--b-dependency-valid-color);
    --b-dependency-tooltip-valid-header-background: color-mix(in srgb, var(--b-dependency-tooltip-valid-header-color), var(--b-mix) 90%);
    --b-dependency-tooltip-invalid-header-color: var(--b-dependency-invalid-color);
    --b-dependency-tooltip-invalid-header-background: color-mix(in srgb, var(--b-dependency-tooltip-invalid-header-color), var(--b-mix) 90%)
}

.b-dependencies .b-sch-event-wrap.b-hover {
    z-index: calc(var(--b-events-zindex) + 101)
}

.b-dependencies .b-sch-event.b-sch-terminals-visible,
.b-dependencies .b-gantt-task.b-sch-terminals-visible {
    overflow: visible
}

.b-dependencies.b-highlighting .b-sch-event-wrap .b-sch-event:where(:not(.b-sch-event-segment)),
.b-dependencies.b-highlighting .b-sch-dependency {
    opacity: .3
}

:is(.b-dependencies.b-highlighting .b-sch-event-wrap .b-sch-event:where(:not(.b-sch-event-segment)), .b-dependencies.b-highlighting .b-sch-dependency).b-highlight {
    opacity: 1
}

.b-dependencies.b-highlighting .b-sch-resource-time-range {
    opacity: .3
}

.b-sch-terminals-visible .b-sch-terminal {
    border-color: var(--b-dependency-terminal-border-color, inherit)
}

.b-sch-terminal {
    border-style: var(--b-dependency-terminal-border-style);
    border-radius: 50%;
    position: absolute;
    cursor: pointer;
    background-color: var(--b-dependency-terminal-color, var(--b-primary-100));
    border-width: var(--b-dependency-terminal-border-width);
    height: var(--b-dependency-terminal-size);
    width: var(--b-dependency-terminal-size);
    z-index: var(--b-dependency-terminal-z-index);
    --bi-terminal-start-end-offset: 80%
}

@media (pointer : coarse) {
    .b-sch-terminal {
        --bi-terminal-start-end-offset: 115%
    }

    .b-sch-terminal:after {
        content: "";
        height: calc(var(--b-dependency-terminal-size) * 2);
        width: calc(var(--b-dependency-terminal-size) * 2);
        border-radius: 50%;
        position: absolute;
        transform: translate(calc(var(--b-dependency-terminal-size) * -.5 - 1), calc(var(--b-dependency-terminal-size) * -.5 - 1))
    }
}

.b-sch-terminal.b-sch-terminal:hover {
    --b-dependency-terminal-color: var(--b-dependency-terminal-hover-color, var(--b-primary-90))
}

.b-dragging .b-sch-terminal,
.b-sch-event-resizing .b-sch-terminal {
    display: none
}

.b-creating-dependency .b-sch-terminal:hover,
.b-creating-dependency .b-sch-terminal-active {
    --b-dependency-terminal-color: var(--b-dependency-terminal-hover-color, var(--b-primary-90))
}

:is(.b-creating-dependency .b-sch-terminal:hover, .b-creating-dependency .b-sch-terminal-active).b-valid {
    --b-dependency-terminal-border-color: var(--b-dependency-valid-color);
    --b-dependency-terminal-color: var(--b-dependency-terminal-valid-color, color-mix(in oklab, var(--b-color-green), var(--b-mix) 70%))
}

:is(.b-creating-dependency .b-sch-terminal:hover, .b-creating-dependency .b-sch-terminal-active).b-invalid {
    --b-dependency-terminal-border-color: var(--b-dependency-invalid-color);
    --b-dependency-terminal-color: var(--b-dependency-terminal-invalid-color, color-mix(in oklab, var(--b-color-red), var(--b-mix) 70%))
}

.b-creating-dependency * {
    touch-action: none
}

.b-sch-terminal-top {
    top: var(--b-dependency-terminal-offset);
    inset-inline-start: 50%;
    translate: -50% -80%
}

.b-sch-terminal-bottom {
    bottom: var(--b-dependency-terminal-offset);
    inset-inline-start: 50%;
    translate: -50% 80%
}

.b-sch-terminal-start {
    inset-inline-start: var(--b-dependency-terminal-offset);
    top: 50%;
    translate: calc((var(--bi-terminal-start-end-offset) * -1) * var(--b-rtl-negate)) -50%
}

.b-sch-terminal-end {
    inset-inline-end: var(--b-dependency-terminal-offset);
    top: 50%;
    translate: calc(var(--bi-terminal-start-end-offset) * var(--b-rtl-negate)) -50%
}

.b-sch-terminal-hover-area {
    grid-area: body;
    width: calc(100% + var(--b-dependency-terminal-offset) * -2 + var(--b-dependency-terminal-size) * .8);
    height: calc(100% + var(--b-dependency-terminal-offset) * -2 + var(--b-dependency-terminal-size) * .8);
    justify-self: center;
    align-self: center
}

.b-labels-topbottom :is(:is(.b-schedulerbase:not(.b-sch-layout-milestones) .b-milestone:not(.b-sch-event-with-icon), .b-gantt:not(.b-sch-layout-milestones) .b-milestone:not(.b-gantt-task-withicon)) .b-sch-terminal-start) {
    translate: calc(-.35em * var(--b-rtl-negate)) -50%
}

.b-labels-topbottom :is(:is(.b-schedulerbase:not(.b-sch-layout-milestones) .b-milestone:not(.b-sch-event-with-icon), .b-gantt:not(.b-sch-layout-milestones) .b-milestone:not(.b-gantt-task-withicon)) .b-sch-terminal-end) {
    translate: calc(.35em * var(--b-rtl-negate)) -50%
}

.b-sch-dependency-connector {
    position: absolute;
    contain: strict;
    border-top: 2px dashed var(--b-dependency-color);
    z-index: 10;
    transform-origin: 0 0;
    pointer-events: none
}

.b-sch-dependency-connector.b-removing {
    transition: width .2s ease-out
}

.b-sch-dependency-connector.b-valid {
    border-color: var(--b-dependency-valid-color);
    border-top-style: solid
}

.b-sch-dependency-creation-tooltip {
    --b-panel-header-font-size: .8em;
    --b-panel-with-header-padding: 1em;
    --b-panel-header-gap: .5em
}

.b-sch-dependency-creation-tooltip.b-popup {
    max-width: none
}

.b-sch-dependency-creation-tooltip .b-popup-header {
    padding: .25em;
    color: var(--b-dependency-tooltip-valid-header-color);
    background: var(--b-dependency-tooltip-valid-header-background)
}

.b-safari :is(.b-sch-dependency-creation-tooltip .b-popup-header),
.b-firefox :is(.b-sch-dependency-creation-tooltip .b-popup-header) {
    width: 1.5em
}

.b-sch-dependency-creation-tooltip .b-popup-header i {
    rotate: 90deg
}

.b-sch-dependency-creation-tooltip .b-header-title {
    justify-content: center
}

.b-sch-dependency-creation-tooltip.b-invalid .b-popup-header {
    color: var(--b-dependency-tooltip-invalid-header-color);
    background: var(--b-dependency-tooltip-invalid-header-background)
}

.b-sch-dependency-creation-tooltip.b-checking .b-popup-header {
    background-color: var(--b-neutral-50)
}

:root,
:host {
    --b-dependency-tooltip-label-font-size: .8em
}

.b-sch-dependency-tooltip,
.b-sch-dependency-creation-tooltip {
    --b-tooltip-content-display: grid;
    --b-tooltip-align-items: center
}

:is(.b-sch-dependency-tooltip, .b-sch-dependency-creation-tooltip) .b-tooltip-content {
    grid-template-columns: auto auto auto
}

:is(.b-sch-dependency-tooltip, .b-sch-dependency-creation-tooltip) .b-tooltip-content label {
    font-size: var(--b-dependency-tooltip-label-font-size)
}

.b-colorize {
    --b-header-drag-select-background: color-mix(in srgb, var(--b-primary), transparent 70%)
}

.b-header-drag-selection-rect {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    transform-origin: 0 0;
    pointer-events: none;
    z-index: 100;
    background: var(--b-header-drag-select-background)
}

:root,
:host {
    --b-tick-cell-focused-outline-color: var(--b-grid-cell-focused-outline-color);
    --b-tick-cell-focused-outline-offset: -2px;
    --b-tick-cell-focused-outline-width: 1px;
    --b-active-tick-cell-focused-outline-color: var(--b-grid-cell-focused-outline-color);
    --b-active-tick-cell-focused-outline-offset: -2px;
    --b-active-tick-cell-focused-outline-width: var(--b-grid-cell-focused-outline-width)
}

.b-schedule-selected-tick {
    position: absolute;
    justify-content: center;
    overflow: hidden;
    z-index: 7
}

.b-schedule-selected-tick.b-widget,
.b-schedule-selected-tick .b-contains-widget {
    z-index: 7;
    box-shadow: none
}

.b-schedule-selected-tick:not(.b-widget, .b-contains-widget) {
    pointer-events: none
}

.b-schedule-context-navigation-enabled .b-schedule-selected-tick:not(.b-widget, .b-contains-widget) {
    outline: var(--b-tick-cell-focused-outline-width) solid var(--b-tick-cell-focused-outline-color);
    outline-offset: var(--b-tick-cell-focused-outline-offset)
}

.b-schedule-context-navigation-enabled .b-schedule-selected-tick:not(.b-widget, .b-contains-widget).b-active-tick {
    --b-tick-cell-focused-outline-width: var(--b-active-tick-cell-focused-outline-width);
    --b-active-tick-cell-focused-outline-offset: var(--b-active-tick-cell-focused-outline-offset)
}

.b-sch-hover-tip-msg {
    margin-top: .5em
}

:root,
:host {
    --b-scroll-button-border-radius: var(--b-widget-border-radius);
    --b-scroll-button-border-width: 1px;
    --b-scroll-button-color: var(--b-text-4);
    --b-scroll-button-background: var(--b-neutral-98);
    --b-scroll-button-hover-color: var(--b-text-3);
    --b-scroll-button-font-size: .9em;
    --b-scroll-buttons-zindex: 9
}

.b-scroll-buttons-canvas {
    z-index: var(--b-scroll-buttons-zindex)
}

.b-scroll-buttons-container {
    position: absolute;
    display: flex;
    width: 100%;
    pointer-events: none;
    align-items: center
}

.b-scroll-button-wrap {
    position: sticky;
    display: flex;
    flex-direction: row;
    align-items: baseline;
    justify-content: center;
    gap: .5em;
    padding: .1em .5em;
    pointer-events: all;
    cursor: pointer;
    transition: color .2s, background-color .2s;
    min-width: 3.1em;
    background: var(--b-scroll-button-background);
    border: var(--b-scroll-button-border-width) solid var(--b-scroll-button-color);
    border-radius: var(--b-scroll-button-border-radius);
    color: var(--b-scroll-button-color);
    font-size: var(--b-scroll-button-font-size)
}

.b-scroll-button-wrap:hover {
    --b-scroll-button-color: var(--b-scroll-button-hover-color)
}

.b-scroll-button-wrap.b-scroll-backward {
    inset-inline-start: 1em
}

.b-scroll-button-wrap.b-scroll-forward {
    margin-inline-start: auto;
    inset-inline-end: 1em
}

.b-simple-event-editor {
    --b-simple-event-edit-editor-background: var(--b-primary-100)
}

.b-simple-event-editor {
    border-radius: inherit;
    z-index: 15;
    --b-widget-floating-box-shadow: none
}

.b-simple-event-editor.b-target-has-border .b-field {
    --b-text-field-border-width: 0
}

.b-simple-event-editor .b-field {
    --b-text-field-background: var(--b-simple-event-edit-editor-background);
    align-items: stretch
}

.b-simple-event-editor .b-field-inner {
    border-radius: inherit
}

.b-sch-horizontal .b-simple-event-editor .b-field {
    height: 100%
}

.b-sticky-events.b-sch-horizontal .b-sch-event-wrap:where(:not(.b-disable-sticky, .b-milestone-wrap)),
.b-sticky-events.b-sch-horizontal .b-sch-resource-time-range {
    --b-sch-event-content-width: auto
}

:is(.b-sticky-events.b-sch-horizontal .b-sch-event-wrap:where(:not(.b-disable-sticky, .b-milestone-wrap)), .b-sticky-events.b-sch-horizontal .b-sch-resource-time-range) .b-sch-event-content {
    position: sticky;
    inset-inline-start: var(--b-sch-event-padding-inline)
}

.b-sticky-events.b-sch-horizontal .b-sch-resource-time-range {
    justify-content: flex-start
}

.b-sticky-events.b-sch-horizontal .b-sch-resource-time-range>div {
    overflow: clip;
    width: 100%
}

.b-firefox.b-sticky-events.b-sch-horizontal .b-sch-foreground-canvas {
    contain: none
}

.b-sticky-events.b-sch-vertical .b-sch-event-wrap:where(:not(.b-disable-sticky, .b-milestone-wrap)),
.b-sticky-events.b-sch-vertical .b-sch-resource-time-range {
    --b-sch-event-content-height: auto
}

:is(.b-sticky-events.b-sch-vertical .b-sch-event-wrap:where(:not(.b-disable-sticky, .b-milestone-wrap)), .b-sticky-events.b-sch-vertical .b-sch-resource-time-range) .b-sch-event {
    align-items: flex-start
}

.b-sch-tick-cell {
    position: absolute;
    contain: strict;
    display: grid;
    align-items: center;
    justify-content: center;
    pointer-events: all;
    font-size: 1em
}

.b-sch-time-axis-menu-date-range-popup {
    width: 22em
}

.b-sch-time-axis-menu-date-range-popup .b-popup-content {
    grid-template-columns: auto 1fr auto
}

:root,
:host {
    --b-time-axis-footer-cell-border-color: var(--b-grid-cell-border-color)
}

.b-sch-summary-bar {
    padding: 0;
    flex-direction: row;
    justify-content: flex-start;
    flex-grow: unset !important
}

.b-sch-summary-bar .b-time-axis-tick {
    display: flex;
    flex-direction: column;
    text-align: center;
    overflow: hidden;
    justify-content: center;
    align-items: stretch
}

.b-sch-summary-bar:not(.b-sch-vertical) .b-time-axis-tick {
    padding: .5em 0
}

.b-sch-summary-bar:not(.b-sch-vertical) .b-time-axis-tick:not(:last-child) {
    border-inline-end: 1px solid var(--b-time-axis-footer-cell-border-color)
}

.b-sch-vertical .b-sch-summary-bar {
    flex-direction: column;
    align-items: stretch;
    gap: 0
}

.b-sch-vertical .b-sch-summary-bar .b-time-axis-tick {
    padding: 0 .5em
}

.b-time-axis-summary-tip {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap
}

.b-time-axis-summary-tip header {
    width: 100%;
    text-align: center;
    font-weight: 700;
    margin-bottom: 1em
}

.b-time-axis-summary-tip label {
    flex: 1 1 50%
}

.b-time-axis-summary-tip .b-time-axis-summary-value {
    flex: 0 0 auto
}

:root,
:host {
    --b-time-range-range-zindex: 4;
    --b-time-range-line-zindex: 10;
    --b-time-range-header-gap: .5em;
    --b-time-range-header-font-size: .9em;
    --b-time-range-header-font-weight: 500;
    --b-time-range-label-offset: .5em;
    --b-time-range-label-font-size: .7em;
    --b-time-range-opacity: .5;
    --b-time-range-line-header-border-radius: .25em;
    --b-time-range-line-header-padding-inline: .5em;
    --b-time-range-line-width: 2px;
    --b-time-range-line-style: solid;
    --b-time-range-line-opacity: 1;
    --b-time-range-line-label-border-radius: var(--b-widget-border-radius);
    --b-time-range-line-label-padding: .5em;
    --b-time-range-line-label-font-size: .7em;
    --b-time-range-line-label-offset: var(--b-time-range-label-offset);
    --b-time-range-color: #fff;
    --b-time-range-background: var(--b-neutral-95);
    --b-time-range-line-primary: var(--b-color-amber);
    --b-time-range-line-label-color: #fff;
    --b-current-time-color: var(--b-color-deep-orange)
}

.b-colorize {
    --b-time-range-header-background: var(--b-primary-75);
    --b-time-range-line-color: var(--b-primary-50);
    --b-time-range-line-header-background: var(--b-time-range-line-color);
    --b-time-range-line-label-background: var(--b-time-range-line-color)
}

.b-time-ranges-canvas {
    display: contents
}

.b-sch-time-range {
    position: absolute;
    z-index: var(--b-time-range-range-zindex);
    transition: var(--b-sch-event-transition, var(--b-gantt-task-transition))
}

.b-animating .b-sch-time-range {
    transition: var(--b-sch-event-animating-transition, var(--b-gantt-task-animating-transition))
}

.b-sch-line {
    margin-inline-start: -1px
}

.b-time-ranges-header-canvas .b-sch-time-range {
    display: flex;
    align-items: center;
    justify-content: center;
    bottom: 0;
    background: var(--b-time-range-header-background);
    color: var(--b-time-range-color);
    font-weight: var(--b-time-range-header-font-weight);
    height: calc(100% / var(--bi-header-levels));
    gap: var(--b-time-range-header-gap)
}

.b-time-ranges-header-canvas .b-sch-time-range label {
    white-space: nowrap;
    font-size: var(--b-time-range-header-font-size);
    font-weight: var(--b-time-range-header-font-weight)
}

.b-time-ranges-header-canvas .b-sch-time-range.b-dragging {
    opacity: 1
}

.b-time-ranges-header-canvas .b-sch-line {
    --b-primary: var(--b-time-range-line-primary);
    --b-time-range-header-background: var(--b-time-range-line-header-background)
}

.b-time-ranges-header-canvas .b-sch-current-time {
    z-index: calc(var(--b-time-range-range-zindex) + 1);
    --b-primary: var(--b-current-time-color)
}

.b-time-ranges-body-canvas {
    display: contents
}

.b-timeline-sub-grid .b-sch-time-range {
    inset-block: 0;
    background: var(--b-time-range-background);
    opacity: var(--b-time-range-opacity)
}

.b-timeline-sub-grid .b-sch-time-range label {
    position: relative;
    font-size: var(--b-time-range-label-font-size);
    font-weight: var(--b-time-range-header-font-weight)
}

.b-timeline-sub-grid .b-sch-time-range:not(.b-sch-line) {
    display: flex;
    justify-content: center
}

.b-timeline-sub-grid .b-narrow-range label {
    writing-mode: tb;
    inset-inline-start: var(--b-time-range-label-offset)
}

.b-timeline-sub-grid .b-sch-line {
    --b-primary: var(--b-time-range-line-primary);
    width: 0;
    overflow: visible;
    border-inline-start: var(--b-time-range-line-width) var(--b-time-range-line-style) var(--b-time-range-line-color);
    z-index: var(--b-time-range-line-zindex);
    opacity: var(--b-time-range-line-opacity);
    --b-time-range-label-font-size: var(--b-time-range-line-label-font-size)
}

.b-timeline-sub-grid .b-sch-line:before {
    display: none
}

.b-timeline-sub-grid .b-sch-line label {
    width: fit-content;
    white-space: nowrap;
    color: var(--b-time-range-line-label-color);
    background: var(--b-time-range-line-label-background);
    border-start-end-radius: var(--b-time-range-line-label-border-radius);
    border-end-end-radius: var(--b-time-range-line-label-border-radius);
    inset-block-start: var(--b-time-range-line-label-offset);
    padding: var(--b-time-range-line-label-padding)
}

.b-timeline-sub-grid .b-sch-current-time {
    --b-primary: var(--b-current-time-color)
}

:is(.b-gantt-base, .b-sch-horizontal) .b-time-ranges-header-canvas .b-sch-line {
    padding-inline: var(--b-time-range-line-header-padding-inline);
    border-start-end-radius: var(--b-time-range-line-header-border-radius);
    border-end-end-radius: var(--b-time-range-line-header-border-radius)
}

.b-sch-vertical .b-time-ranges-header-canvas .b-sch-line {
    padding-block: var(--b-time-range-line-header-padding-inline);
    border-start-start-radius: var(--b-time-range-line-header-border-radius);
    border-end-start-radius: var(--b-time-range-line-header-border-radius)
}

.b-sch-vertical .b-sch-time-range {
    inset-inline-start: auto;
    inset-block-start: 0;
    justify-content: flex-start;
    bottom: auto
}

.b-sch-vertical .b-sch-time-range label {
    -webkit-writing-mode: vertical-lr;
    writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    rotate: 180deg
}

.b-sch-vertical .b-sch-time-range.b-over-resize-handle {
    cursor: ns-resize
}

.b-sch-vertical .b-timeline-sub-grid .b-sch-time-range {
    height: auto;
    width: inherit
}

.b-sch-vertical .b-timeline-sub-grid .b-sch-line {
    border-top: var(--b-time-range-line-width) var(--b-time-range-line-style) var(--b-time-range-line-color);
    color: #fff;
    padding: 0;
    height: 1px
}

.b-sch-vertical .b-timeline-sub-grid .b-sch-line label {
    border-radius: 0;
    border-start-start-radius: var(--b-time-range-line-label-border-radius);
    border-end-start-radius: var(--b-time-range-line-label-border-radius)
}

.b-sch-vertical .b-grid-sub-grid-locked .b-sch-time-range {
    flex-direction: column;
    justify-content: center;
    inset-inline-end: 0;
    width: 2em
}

.b-interaction-tooltip .b-tooltip-content>div {
    display: flex;
    flex-direction: column;
    gap: .5em
}

:root,
:host {
    --b-non-working-time-zindex: 3;
    --b-non-working-time-opacity: .4;
    --b-non-working-time-background: var(--b-neutral-95)
}

.b-colorize {
    --b-non-working-time-header-background: color-mix(in oklab, var(--b-color-red), transparent 95%)
}

.b-timeline-base.b-widget .b-sch-non-working-time {
    --b-time-range-header-background: var(--b-non-working-time-header-background);
    --b-time-range-background: var(--b-non-working-time-background);
    --b-time-range-opacity: var(--b-non-working-time-opacity);
    --b-time-range-range-zindex: var(--b-non-working-time-zindex)
}

.b-time-ranges-header-canvas .b-sch-non-working-time {
    pointer-events: none
}

:root,
:host {
    --b-time-selection-opacity: .2
}

.b-sch-time-axis-column .b-selected-time-span,
.b-vertical-time-axis-column .b-selected-time-span {
    color: #fff;
    justify-content: space-between;
    padding: .4em;
    opacity: 1;
    line-height: 1em;
    background: var(--b-time-selection-header-background, var(--b-primary-60))
}

:is(.b-sch-time-axis-column .b-selected-time-span, .b-vertical-time-axis-column .b-selected-time-span) span {
    white-space: nowrap;
    overflow: hidden
}

:is(.b-sch-time-axis-column .b-selected-time-span, .b-vertical-time-axis-column .b-selected-time-span) .b-selection-start,
:is(.b-sch-time-axis-column .b-selected-time-span, .b-vertical-time-axis-column .b-selected-time-span) .b-selection-end {
    align-self: flex-end
}

:is(.b-sch-time-axis-column .b-selected-time-span, .b-vertical-time-axis-column .b-selected-time-span) .b-icon-close {
    position: absolute;
    top: .2em;
    inset-inline-end: .4em;
    cursor: pointer
}

.b-sch-time-axis-column .b-selected-time-span {
    font-size: .7em
}

.b-vertical-time-axis-column .b-selected-time-span {
    width: calc(100% - 2em)
}

.b-vertical-time-axis-column .b-selected-time-span span {
    font-size: .7em
}

.b-vertical-time-axis-column .b-selected-time-span .b-icon-close {
    inset-inline-start: .4em
}

:is(.b-grid-header, .b-timeline-sub-grid, .b-vertical-time-axis-column) .b-selected-time-span {
    transition: none;
    z-index: 10
}

.b-timeline-sub-grid .b-selected-time-span {
    --b-time-range-background: var(--b-time-selection-background, var(--b-primary-85));
    --b-time-range-opacity: var(--b-time-selection-opacity)
}

:root,
:host {
    --b-tree-summary-zindex: 4
}

.b-tree-summary .b-tick-cell-canvas {
    z-index: var(--b-tree-summary-zindex)
}

.b-sch-tick-summary-cell {
    display: flex;
    position: absolute;
    contain: strict;
    pointer-events: all
}

.b-animating .b-sch-tick-summary-cell {
    transition: top var(--b-grid-row-transition-duration)
}

.b-tree-summary-cell {
    display: flex;
    flex: 1;
    justify-content: center;
    align-items: center;
    font-weight: 400
}

.b-tree-summary-cell:empty {
    visibility: hidden
}

:root,
:host {
    --b-clock-size: 1.5em;
    --b-clock-hand-width: 3
}

.b-sch-clock-wrap svg {
    width: var(--b-clock-size);
    height: var(--b-clock-size)
}

.b-sch-clock-wrap circle {
    stroke: var(--b-clock-hand-color, var(--b-primary-30));
    stroke-width: var(--b-clock-hand-width);
    fill: var(--b-clock-dial-background, var(--b-primary-95))
}

.b-sch-clock-wrap line {
    stroke: var(--b-clock-hand-color, var(--b-primary-30));
    stroke-width: var(--b-clock-hand-width);
    transform-origin: center
}

.b-sch-clock-wrap line.b-hour-hand {
    rotate: calc(var(--bi-sch-clock-hour, 0) * 30deg)
}

.b-sch-clock-wrap line.b-minute-hand {
    rotate: calc(var(--bi-sch-clock-minute, 0) * 6deg)
}

.b-sch-clock-text {
    white-space: nowrap
}

.b-sch-clock-wrap,
.b-sch-date-wrap {
    display: flex;
    gap: .5em;
    align-items: center
}

.b-sch-date {
    overflow: clip;
    background: color-mix(in srgb, var(--b-primary), transparent 90%);
    border-radius: .25em
}

.b-sch-date-month {
    font-size: .6em;
    background: color-mix(in srgb, var(--b-primary), transparent 70%);
    width: 3em;
    text-align: center
}

.b-sch-date-date {
    font-size: .8em;
    text-align: center
}

:root,
:host {
    --b-horizontal-time-axis-border-width: var(--b-grid-header-border-width);
    --b-horizontal-time-axis-cell-padding-inline: var(--b-sch-event-padding-inline, var(--b-gantt-task-padding-inline));
    --b-horizontal-time-axis-cell-padding-block: 0;
    --b-horizontal-time-axis-lowest-font-size: .9em
}

.b-no-column-lines {
    --b-horizontal-time-axis-border-width: 0
}

.b-sch-time-axis-column.b-grid-header.b-depth-0 {
    border-block-end: none;
    --b-grid-header-padding: 0
}

.b-sch-time-axis-column.b-grid-header.b-depth-0:hover {
    background: var(--b-grid-header-background);
    color: var(--b-grid-header-color)
}

.b-horizontal-time-axis {
    flex-direction: column;
    flex: 1 0 100%;
    user-select: none;
    -webkit-user-select: none;
    overflow: clip
}

.b-sch-header-row {
    position: relative;
    flex: 1 0 2em;
    contain: strict;
    overflow: clip
}

.b-sch-header-row.b-sch-header-row-0.b-lowest {
    flex: 1
}

.b-sch-header-row.b-sticky-header .b-sch-header-text {
    position: sticky;
    inset-inline-start: var(--b-horizontal-time-axis-cell-padding-inline)
}

.b-sch-header-time-axis-cell {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    inset-block: 0;
    cursor: pointer;
    overflow: clip;
    white-space: nowrap;
    contain: strict;
    transition: background-color var(--b-default-transition-duration), border var(--b-default-transition-duration);
    border-block-end: var(--b-horizontal-time-axis-border-width) solid var(--b-grid-header-border-color);
    border-inline-start: var(--b-horizontal-time-axis-border-width) solid var(--b-grid-header-border-color);
    color: var(--b-grid-header-color);
    font-size: var(--b-grid-header-font-size);
    font-weight: var(--b-grid-header-font-weight)
}

.b-sch-header-time-axis-cell.fa {
    display: flex;
    font-weight: var(--b-grid-header-font-weight)
}

.b-sch-header-time-axis-cell.b-align-start {
    justify-content: flex-start;
    padding-inline: var(--b-horizontal-time-axis-cell-padding-inline)
}

.b-sch-header-time-axis-cell.b-align-end {
    justify-content: flex-end
}

.b-horizontal-time-axis .b-sch-header-time-axis-cell:hover {
    background: var(--b-grid-header-hover-background);
    color: var(--b-grid-header-hover-color)
}

.b-sch-header-time-axis-cell.b-last .b-sch-header-text {
    overflow: hidden
}

.b-lowest>.b-sch-header-time-axis-cell {
    border-block-end-width: var(--b-grid-header-container-border-width);
    font-size: var(--b-horizontal-time-axis-lowest-font-size)
}

.b--grid-header-container .b-sch-time-axis-column {
    flex-grow: unset !important;
    background: var(--b-grid-header-background);
    border-inline-end: 0 none
}

.b--sch-timeaxiscolumn-levels-1 {
    min-height: 1.5em
}

.b--sch-timeaxiscolumn-levels-2 {
    min-height: 3em
}

.b--sch-timeaxiscolumn-levels-3 {
    min-height: 4.5em
}

.b--sch-header-time-axis-cell {
    padding-block: var(--b-horizontal-time-axis-cell-padding-block)
}

:is(.b--sch-header-time-axis-cell.b-align-start, .b--sch-header-time-axis-cell.b-align-end) .b-sch-header-text {
    padding-inline: var(--b-horizontal-time-axis-cell-padding-inline)
}

.b--sch-header-time-axis-cell.b-align-start {
    justify-content: flex-start
}

.b--sch-header-time-axis-cell.b-align-end {
    justify-content: flex-end
}

.b--schedulerbase.b-fill-last-column .b-sch-time-axis-column:last-child {
    border-inline-end-color: var(--b-grid-header-border-color)
}

.b--sch-header-time-axis-cell[data-tick-index="0"] {
    border-inline-start: 0
}

.b--timelinebase:not(.b-sch-vertical) .b-grid-header-container {
    border-bottom: 0
}

.b--timelinebase:not(.b-sch-vertical) .b-header:not(.b-grid-header-scroller-normal) .b-grid-headers,
.b--timelinebase:not(.b-sch-vertical) .b-horizontal-time-axis {
    border-bottom: 1px solid var(--b-grid-header-border-color)
}

:root,
:host {
    --b-sch-event-font-weight: 400;
    --b-sch-event-padding-inline: var(--b-widget-padding);
    --b-sch-event-padding-block: 0em;
    --b-sch-event-transition: border var(--b-default-transition-duration), border-radius var(--b-default-transition-duration), color var(--b-default-transition-duration), padding var(--b-default-transition-duration), opacity var(--b-default-transition-duration);
    --b-sch-event-animating-transition: border var(--b-default-transition-duration), border-radius var(--b-default-transition-duration), background-color var(--b-default-transition-duration), color var(--b-default-transition-duration), padding var(--b-default-transition-duration), opacity var(--b-default-transition-duration), inset var(--b-default-transition-duration), width var(--b-default-transition-duration), height var(--b-default-transition-duration);
    --b-sch-event-cursor: pointer;
    --b-sch-event-opacity: 1;
    --b-sch-event-border-width: 0px;
    --b-sch-event-width-reduction: 1px;
    --b-sch-event-min-size: 6px;
    --b-sch-event-content-width: 100%;
    --b-sch-event-content-height: 100%;
    --b-sch-event-border-radius: null;
    --b-sch-event-border-style: null;
    --b-sch-event-box-shadow: null;
    --b-sch-event-font-size: null;
    --b-sch-milestone-gap: .5em;
    --b-sch-milestone-border-width: var(--b-sch-event-border-width);
    --b-sch-event-border-color: var(--b-sch-event-background)
}

.b-grid-row {
    --b-resource-event-color: var(--b-primary)
}

.b-scrolling {
    --b-sch-event-transition: none
}

.b-sch-event-wrap {
    position: absolute;
    display: grid;
    outline: none;
    contain: layout style;
    align-items: center;
    pointer-events: all;
    z-index: 1;
    grid-template-areas: "top    top    top    top    top" "before start  body   end  after" "bottom bottom bottom bottom bottom";
    grid-template-columns: 0 auto 1fr auto 0;
    grid-template-rows: min-content auto min-content;
    opacity: var(--b-sch-event-opacity);
    transition: var(--b-sch-event-transition)
}

.b-sch-event-wrap:where(:not(.b-milestone-wrap)) {
    min-width: var(--b-sch-event-min-size)
}

.b-animating:not(.b-event-buffer-transition, .b-sub-grid-width-transition) .b-sch-event-wrap:not(.b-dragging, .b-sch-event-wrap-resizing, .b-reusing-own) {
    --b-sch-event-transition: var(--b-sch-event-animating-transition)
}

.b-sch-event-wrap:hover,
.b-sch-event-wrap.b-hover,
.b-sch-event-wrap.b-sch-event-wrap-resizing {
    --b-sch-event-background: var(--b-sch-event-hover-background)
}

.b-sch-event-wrap.b-selected {
    --b-sch-event-background: var(--b-sch-event-selected-background)
}

.b-using-keyboard .b-sch-event-wrap.b-active .b-sch-event {
    outline: var(--b-grid-cell-focused-outline-width) solid var(--b-grid-cell-focused-outline-color)
}

.b-sch-event-wrap.b-removing {
    transition: opacity .3s;
    opacity: 0
}

.b-sch-event-wrap.b-remove-remove,
.b-sch-event-wrap.b-toggle-remove {
    transition: opacity var(--b-default-transition-duration), max-height var(--b-default-transition-duration);
    opacity: 0;
    max-height: 0
}

.b-sch-event-wrap.b-toggle-add {
    animation: b-anim-toggle-add .3s !important
}

.b-sch-event-wrap.b-sch-vertical {
    grid-template-areas: "top    top    top" "above  above  above" "start  start  start" "before body   after" "end    end    end" "below  below  below" "bottom bottom bottom";
    grid-template-columns: min-content auto min-content;
    grid-template-rows: 0 auto auto 1fr auto auto 0
}

.b-sch-event-wrap.b-sch-vertical:where(:not(.b-milestone-wrap)) {
    --b-sch-event-padding-inline: 1em;
    --b-sch-event-padding-block: 1em
}

.b-sch-event-wrap.b-sch-vertical:where(:not(.b-milestone-wrap)) .b-sch-event-content {
    white-space: normal;
    line-height: normal;
    align-items: flex-start
}

.b-sch-event-wrap.b-sch-vertical:where(:not(.b-milestone-wrap)) .b-sch-event-narrow .b-sch-event-content {
    flex-direction: column;
    align-items: center
}

.b-sch-event-wrap.b-sch-vertical .b-sch-event-narrow .b-event-text-wrap {
    white-space: nowrap;
    writing-mode: vertical-rl
}

.b-grid-body-container.b-scrolling .b-sch-event-wrap {
    pointer-events: none
}

.b-timeline-base:not(.b-sch-vertical.b-event-layout-mixed, .b-dragging-event) .b-sch-event-wrap.b-hover,
.b-timeline-base:not(.b-sch-vertical.b-event-layout-mixed, .b-dragging-event) .b-sch-event-wrap.b-selected,
.b-timeline-base:not(.b-sch-vertical.b-event-layout-mixed, .b-dragging-event) .b-sch-event-wrap:focus {
    z-index: 100 !important
}

.b-sch-vertical.b-event-layout-mixed .b-sch-event-wrap:focus {
    z-index: 100 !important
}

.b-sch-event-wrap:where(:not(.b-sch-vertical)) {
    max-height: calc(var(--b-event-size) * 1px)
}

@keyframes b-anim-toggle-add {
    0% {
        opacity: 0;
        max-height: 0
    }

    to {
        opacity: 1;
        max-height: calc(var(--b-event-size) * 1px)
    }
}

.b-sch-event {
    display: flex;
    align-items: center;
    white-space: nowrap;
    grid-area: body;
    position: relative;
    min-height: 0;
    height: 100%;
    opacity: 1;
    z-index: 1;
    transition: opacity var(--b-default-transition-duration);
    border-color: var(--b-sch-event-border-color);
    min-width: var(--b-sch-event-min-size);
    width: calc(100% - var(--b-sch-event-width-reduction))
}

.b-sch-event:where(:not(.b-milestone)),
.b-sch-event.b-milestone .b-sch-event-content:before {
    border-width: var(--b-sch-event-border-width);
    border-style: var(--b-sch-event-border-style);
    border-radius: var(--b-sch-event-border-radius);
    box-shadow: var(--b-sch-event-box-shadow);
    color: var(--b-sch-event-color);
    cursor: var(--b-sch-event-cursor);
    font-weight: var(--b-sch-event-font-weight);
    transition: var(--b-sch-event-transition)
}

.b-sch-event:where(:not(.b-milestone)) {
    overflow: clip;
    background: var(--b-sch-event-background)
}

.b-sch-event-content {
    display: flex;
    overflow: clip;
    text-overflow: ellipsis;
    position: relative;
    line-height: 1.2em;
    align-items: center;
    min-width: 0;
    gap: .5em;
    font-size: var(--b-sch-event-font-size);
    margin-inline: var(--b-sch-event-padding-inline);
    padding-block: var(--b-sch-event-padding-block);
    width: var(--b-sch-event-content-width);
    height: var(--b-sch-event-content-height)
}

.b-sch-event-content>i {
    line-height: inherit
}

.b-milestone-wrap:where(.b-sch-vertical) {
    justify-items: center
}

.b-milestone-wrap:where(.b-sch-vertical) .b-milestone .b-sch-event-content {
    display: grid
}

.b-milestone-wrap:where(.b-sch-vertical) .b-milestone label {
    justify-self: center;
    inset-block-start: calc(var(--b-event-size) * .8px + var(--b-sch-milestone-border-width, 0))
}

.b-milestone-wrap.b-measure {
    height: 1em;
    position: fixed;
    top: -10000px;
    inset-inline-start: -10000px;
    visibility: hidden
}

.b-milestone-wrap.b-measure label {
    font-weight: 400
}

.b-sch-layout-milestones .b-milestone-wrap {
    margin: 0;
    min-width: 0;
    flex-direction: row
}

.b-using-keyboard :is(.b-sch-layout-milestones .b-milestone-wrap).b-active {
    outline-offset: 3px
}

.b-sch-layout-milestones .b-milestone-wrap.b-active .b-sch-event.b-milestone,
.b-sch-layout-milestones .b-milestone-wrap.b-active .b-sch-event.b-milestone:before {
    outline: none
}

.b-sch-layout-milestones .b-milestone-wrap .b-sch-event.b-milestone {
    position: relative;
    min-width: 0;
    padding: 0;
    align-self: stretch;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--b-sch-event-background);
    inset-inline-start: calc(.5 * var(--b-milestone-size));
    width: calc(100% - var(--b-milestone-size))
}

.b-sch-layout-milestones .b-milestone-wrap .b-sch-event.b-milestone .b-sch-event-content {
    justify-content: center;
    z-index: 1
}

.b-sch-layout-milestones .b-milestone-wrap .b-sch-event.b-milestone .b-sch-event-content:before {
    content: none
}

.b-sch-layout-milestones .b-milestone-wrap .b-sch-event.b-milestone:before,
.b-sch-layout-milestones .b-milestone-wrap .b-sch-event.b-milestone:after {
    background: inherit;
    position: absolute;
    content: " ";
    height: calc(var(--b-milestone-size) * .707107);
    aspect-ratio: 1 / 1;
    z-index: 0
}

.b-sch-layout-milestones .b-milestone-wrap .b-sch-event.b-milestone:before {
    top: 50%;
    inset-inline-start: 0;
    transform-origin: 50% 50%;
    transform: translate(-50%, -50%) rotate(45deg)
}

.b-sch-layout-milestones .b-milestone-wrap .b-sch-event.b-milestone:after {
    top: 0;
    inset-inline-end: 0;
    rotate: -45deg;
    transform-origin: 100% 0
}

.b-sch-layout-milestones .b-milestone-wrap.b-measure .b-sch-event.b-milestone {
    width: calc(100% + var(--b-milestone-size))
}

.b-sch-layout-milestone-text-position-inside .b-milestone-wrap .b-milestone label {
    margin-inline-start: 0;
    inset-inline-start: 50%;
    translate: -50%
}

.b-initial-fade-in .b-sch-dependency,
.b-initial-fade-in .b-sch-event-wrap {
    opacity: 0;
    animation-name: b-anim-initial-fade-in;
    animation-duration: .5s;
    animation-fill-mode: forwards
}

@keyframes b-anim-initial-fade-in {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.b-initial-zoom-in .b-sch-event-wrap {
    animation-name: b-anim-initial-zoom-in;
    animation-duration: .4s;
    animation-timing-function: ease-in
}

@keyframes b-anim-initial-zoom-in {
    0% {
        transform: scale(.01)
    }

    to {
        transform: scale(1)
    }
}

.b-initial-slide-from-left .b-sch-event-wrap {
    transform: translate(-100vw);
    animation-name: b-anim-initial-slide-from-left;
    animation-duration: .7s;
    animation-fill-mode: forwards
}

@keyframes b-anim-initial-slide-from-left {
    to {
        transform: translate(0)
    }
}

.b-initial-slide-from-top .b-sch-event-wrap {
    transform: translateY(-100vh);
    animation-name: b-anim-initial-slide-from-top;
    animation-duration: .7s;
    animation-fill-mode: forwards
}

@keyframes b-anim-initial-slide-from-top {
    to {
        transform: translateY(0)
    }
}

.b-sch-event-wrap.b-aborting,
.b-sch-event-wrap.b-drag-unified-animation {
    transition: var(--b-sch-event-transition), transform .2s, left .2s, top .2s
}

.b-sch-event-wrap.b-dragging {
    z-index: 200 !important
}

.b-sch-event-wrap.b-dragging.b-drag-main {
    z-index: 201 !important
}

.b-event-drag-tooltip .b-tooltip-content>div {
    display: flex;
    flex-direction: column;
    gap: .5em
}

.b-sch-tip-message .b-icon:first-child {
    margin-inline-end: .5em;
    justify-content: center;
    color: var(--b-clock-hand-color);
    width: var(--b-clock-size)
}

.b-float-root>.b-tooltip.b-event-drag-tooltip {
    pointer-events: none
}

:root,
:host {
    --b-event-resize-handle-other-size: 3px;
    --b-event-resize-handle-hover-other-size: 3px;
    --b-event-resize-handle-border-radius: 3px;
    --b-event-resize-handle-inset: 7px;
    --b-event-resize-handle-size: 60%;
    --b-event-resize-handle-hover-size: 70%;
    --b-event-resize-handle-max-size: 3em;
    --b-event-resize-handle-zindex: 1;
    --b-event-resize-handle-background: #ffffff70;
    --b-event-resize-handle-hover-background: #ffffffdd;
    --bi-event-resize-handle-content: "";
    --bi-event-resize-handle-start-translate: 0 -50%;
    --bi-event-resize-handle-end-translate: 0 50%;
    --bi-event-resize-handle-inset-inline: var(--b-event-resize-handle-inset);
    --bi-event-resize-handle-inset-block: 50%;
    --bi-event-resize-handle-height: var(--b-event-resize-handle-size);
    --bi-event-resize-handle-width: var(--b-event-resize-handle-other-size);
    --bi-event-resize-handle-hover-height: var(--b-event-resize-handle-hover-size);
    --bi-event-resize-handle-hover-width: var(--b-event-resize-handle-hover-other-size);
    --bi-event-resize-handle-cursor: ew-resize
}

:is(:is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing)>.b-sch-event-resizable-true, :is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing)>.b-sch-event-resizable-start, :is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing)>.b-sch-event-resizable-end):before,
:is(:is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing)>.b-sch-event-resizable-true, :is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing)>.b-sch-event-resizable-start, :is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing)>.b-sch-event-resizable-end):after {
    position: absolute;
    transition: background .2s, height .3s, width .3s, opacity .2s;
    opacity: 1;
    background: var(--b-event-resize-handle-background);
    border-radius: var(--b-event-resize-handle-border-radius);
    height: var(--bi-event-resize-handle-height);
    width: var(--bi-event-resize-handle-width);
    z-index: var(--b-event-resize-handle-zindex)
}

:is(:is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing)>.b-sch-event-resizable-true, :is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing)>.b-sch-event-resizable-start):before {
    content: var(--bi-event-resize-handle-content);
    inset-inline-start: var(--bi-event-resize-handle-inset-inline);
    inset-block-start: var(--bi-event-resize-handle-inset-block);
    translate: var(--bi-event-resize-handle-start-translate)
}

:is(:is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing)>.b-sch-event-resizable-true, :is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing)>.b-sch-event-resizable-end):after {
    content: var(--bi-event-resize-handle-content);
    inset-inline-end: var(--bi-event-resize-handle-inset-inline);
    inset-block-end: var(--bi-event-resize-handle-inset-block);
    translate: var(--bi-event-resize-handle-end-translate)
}

:is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing).b-over-start-handle {
    --b-sch-event-cursor: var(--bi-event-resize-handle-cursor)
}

:is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing).b-over-start-handle>:before {
    --b-event-resize-handle-background: var(--b-event-resize-handle-hover-background);
    --b-event-resize-handle-width: var(--bi-event-resize-handle-hover-width);
    --b-event-resize-handle-height: var(--bi-event-resize-handle-hover-height)
}

:is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing).b-over-end-handle {
    --b-sch-event-cursor: var(--bi-event-resize-handle-cursor)
}

:is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing).b-over-end-handle>:after {
    --b-event-resize-handle-background: var(--b-event-resize-handle-hover-background);
    --b-event-resize-handle-width: var(--bi-event-resize-handle-hover-width);
    --b-event-resize-handle-height: var(--bi-event-resize-handle-hover-height)
}

:is(.b-event-resize .b-sch-event-wrap.b-hover, .b-event-resize .b-sch-event-wrap:hover, .b-event-resize .b-sch-event-wrap.b-unhover, .b-event-resize .b-sch-event-wrap-resizing):where(.b-sch-vertical) {
    --bi-event-resize-handle-inset-inline: 50%;
    --bi-event-resize-handle-inset-block: var(--b-event-resize-handle-inset);
    --bi-event-resize-handle-start-translate: -50% 0;
    --bi-event-resize-handle-end-translate: 50% 0;
    --bi-event-resize-handle-height: var(--b-event-resize-handle-other-size);
    --bi-event-resize-handle-width: var(--b-event-resize-handle-size);
    --bi-event-resize-handle-hover-height: var(--b-event-resize-handle-hover-other-size);
    --bi-event-resize-handle-hover-width: var(--b-event-resize-handle-hover-size);
    --bi-event-resize-handle-cursor: ns-resize
}

@starting-style {

    :is(:is(.b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap:hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap-resizing)>.b-sch-event-resizable-true, :is(.b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap:hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap-resizing)>.b-sch-event-resizable-start, :is(.b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap:hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap-resizing)>.b-sch-event-resizable-end):before,
    :is(:is(.b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap:hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap-resizing)>.b-sch-event-resizable-true, :is(.b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap:hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap-resizing)>.b-sch-event-resizable-start, :is(.b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap:hover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-horizontal .b-sch-event-wrap-resizing)>.b-sch-event-resizable-end):after {
        height: 0;
        opacity: 0
    }

    :is(:is(.b-event-resize.b-sch-vertical .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap:hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-vertical .b-sch-event-wrap-resizing)>.b-sch-event-resizable-true, :is(.b-event-resize.b-sch-vertical .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap:hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-vertical .b-sch-event-wrap-resizing)>.b-sch-event-resizable-start, :is(.b-event-resize.b-sch-vertical .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap:hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-vertical .b-sch-event-wrap-resizing)>.b-sch-event-resizable-end):before,
    :is(:is(.b-event-resize.b-sch-vertical .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap:hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-vertical .b-sch-event-wrap-resizing)>.b-sch-event-resizable-true, :is(.b-event-resize.b-sch-vertical .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap:hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-vertical .b-sch-event-wrap-resizing)>.b-sch-event-resizable-start, :is(.b-event-resize.b-sch-vertical .b-sch-event-wrap.b-hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap:hover, .b-event-resize.b-sch-vertical .b-sch-event-wrap.b-unhover, .b-event-resize.b-sch-vertical .b-sch-event-wrap-resizing)>.b-sch-event-resizable-end):after {
        width: 0;
        opacity: 0
    }
}

.b-scheduler-base.b-read-only .b-sch-event-wrap {
    --bi-event-resize-handle-content: null
}

:is(.b-sch-event-wrap.b-unhover .b-sch-event-resizable-true, .b-sch-event-wrap.b-unhover .b-sch-event-resizable-start, .b-sch-event-wrap.b-unhover .b-sch-event-resizable-end):before,
:is(.b-sch-event-wrap.b-unhover .b-sch-event-resizable-true, .b-sch-event-wrap.b-unhover .b-sch-event-resizable-start, .b-sch-event-wrap.b-unhover .b-sch-event-resizable-end):after {
    transition: opacity .2s;
    opacity: 0
}

.b-resizing-event {
    cursor: ew-resize
}

.b-resizing-event.b-sch-vertical {
    cursor: ns-resize
}

.b-resizing-event .b-sch-time-axis-cell,
.b-resizing-event .b-sch-event-wrap {
    pointer-events: none
}

.b-sch-event-wrap-resizing {
    z-index: 2
}

.b-sch-event-resize-tip .b-tooltip-content>div {
    display: flex;
    flex-direction: column;
    gap: .5em
}

.b-sch-event-resize-tip .b-sch-tip-message:empty {
    display: none
}

.b-style-gantt,
.b-style-gantt .b-sch-event-segment {
    --b-sch-event-border-radius: .25em;
    --b-sch-event-color: var(--b-text-5);
    --b-sch-event-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 50%);
    --b-sch-event-hover-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 40%);
    --b-sch-event-selected-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 30%);
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-mix) 20%)
}

@supports not (color: color-mix(in srgb, red, blue)) {

    .b-style-gantt,
    .b-style-gantt .b-sch-event-segment {
        --b-sch-event-background: var(--b-primary-75);
        --b-sch-event-hover-background: var(--b-primary-70);
        --b-sch-event-selected-background: var(--b-primary-65)
    }
}

.b-style-tonal {
    --b-sch-event-border-radius: .5em;
    --b-sch-event-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 40%);
    --b-sch-event-background: var(--b-sch-event-tonal-background);
    --b-sch-event-hover-background: var(--b-sch-event-tonal-hover-background);
    --b-sch-event-selected-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 50%);
    --b-sch-event-font-weight: 600;
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 40%)
}

@supports not (color: color-mix(in srgb, red, blue)) {
    .b-style-tonal {
        --b-sch-event-color: var(--b-primary-40);
        --b-sch-event-background: var(--b-primary-93);
        --b-sch-event-hover-background: var(--b-primary-85);
        --b-sch-event-selected-background: var(--b-primary-75)
    }
}

:is(.b-style-filled, .b-style-plain),
:is(.b-style-filled, .b-style-plain) .b-sch-event-segment {
    --b-sch-event-border-radius: .25em;
    --b-sch-event-color: var(--b-text-5);
    --b-sch-event-background: var(--b-primary);
    --b-sch-event-hover-background: color-mix(in srgb, var(--b-primary), var(--b-opposite) 20%);
    --b-sch-event-selected-background: color-mix(in srgb, var(--b-primary), var(--b-opposite) 40%);
    --b-sch-event-border-color: var(--b-sch-event-background)
}

@supports not (color: color-mix(in srgb, red, blue)) {

    :is(.b-style-filled, .b-style-plain),
    :is(.b-style-filled, .b-style-plain) .b-sch-event-segment {
        --b-sch-event-hover-background: var(--b-primary-40);
        --b-sch-event-selected-background: var(--b-primary-30)
    }
}

.b-style-traced,
.b-style-traced .b-sch-event-segment {
    --b-sch-event-border-radius: .75em;
    --b-sch-event-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 40%);
    --b-sch-event-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 90%);
    --b-sch-event-hover-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 86%);
    --b-sch-event-selected-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 70%);
    --b-sch-event-font-weight: 600;
    --b-sch-event-border-width: 1px;
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 40%);
    --b-sch-event-border-style: solid;
    --b-sch-milestone-border-width: 1px
}

@supports not (color: color-mix(in srgb, red, blue)) {

    .b-style-traced,
    .b-style-traced .b-sch-event-segment {
        --b-sch-event-background: var(--b-primary-95);
        --b-sch-event-hover-background: var(--b-primary-93);
        --b-sch-event-selected-background: var(--b-primary-85)
    }
}

:is(.b-style-bordered, .b-style-border),
:is(.b-style-bordered, .b-style-border) .b-sch-event-segment {
    --b-sch-event-border-radius: .5em;
    --b-sch-event-color: #fff;
    --b-sch-event-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 20%);
    --b-sch-event-hover-background: var(--b-primary);
    --b-sch-event-selected-background: color-mix(in srgb, var(--b-primary), var(--b-opposite) 10%);
    --b-sch-event-font-weight: 600;
    --b-sch-event-border-width: 1px;
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 40%);
    --b-sch-event-border-style: solid;
    --b-sch-milestone-border-width: 1px;
    --b-percent-bar-background: color-mix(in srgb, var(--b-primary), transparent 30%)
}

@supports not (color: color-mix(in srgb, red, blue)) {

    :is(.b-style-bordered, .b-style-border),
    :is(.b-style-bordered, .b-style-border) .b-sch-event-segment {
        --b-sch-event-background: var(--b-primary-60);
        --b-sch-event-selected-background: var(--b-primary-45)
    }
}

.b-style-outlined,
.b-style-hollow {
    --b-sch-event-border-radius: .5em;
    --b-sch-event-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 20%);
    --b-sch-event-background: transparent;
    --b-sch-event-hover-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 90%);
    --b-sch-event-selected-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 70%);
    --b-sch-event-border-width: 2px;
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 20%);
    --b-sch-event-border-style: solid;
    --b-sch-milestone-border-width: 2px
}

@supports not (color: color-mix(in srgb, red, blue)) {

    .b-style-outlined,
    .b-style-hollow {
        --b-sch-event-hover-background: var(--b-primary-95);
        --b-sch-event-selected-background: var(--b-primary-85)
    }
}

:is(.b-style-outlined, .b-style-hollow) .b-segmented {
    --b-sch-event-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 98%)
}

:is(.b-style-indented, .b-style-colored),
:is(.b-style-indented, .b-style-colored) .b-sch-event-segment {
    --b-sch-event-border-radius: .15em;
    --b-sch-event-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 40%);
    --b-sch-event-background: var(--b-sch-event-indented-background);
    --b-sch-event-hover-background: var(--b-sch-event-indented-hover-background);
    --b-sch-event-selected-background: var(--b-sch-event-indented-selected-background);
    --b-sch-event-border-width: 0 0 0 6px;
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 40%);
    --b-sch-event-border-style: solid;
    --b-sch-milestone-border-width: 6px
}

.b-sch-vertical :is(:is(.b-style-indented, .b-style-colored), :is(.b-style-indented, .b-style-colored) .b-sch-event-segment) {
    --b-sch-event-border-width: 6px 0 0 0
}

@supports not (color: color-mix(in srgb, red, blue)) {

    :is(.b-style-indented, .b-style-colored),
    :is(.b-style-indented, .b-style-colored) .b-sch-event-segment {
        --b-sch-event-background: var(--b-primary-95);
        --b-sch-event-hover-background: var(--b-primary-91);
        --b-sch-event-selected-background: var(--b-primary-85)
    }
}

.b-style-calendar {
    --b-sch-event-border-radius: var(--b-calendar-event-border-radius, .5em);
    --b-sch-event-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 40%);
    --b-sch-event-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 90%);
    --b-sch-event-hover-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 80%);
    --b-sch-event-selected-background: var(--b-primary);
    --b-sch-event-border-width: 0 0 0 var(--b-day-view-event-border-inline-start-width, 4px);
    --b-sch-event-border-color: var(--b-primary);
    --b-sch-event-border-style: solid;
    --b-sch-milestone-border-width: 6px;
    --b-sch-event-padding-inline: var(--b-day-view-event-body-padding, .35em);
    --b-sch-event-padding-block: var(--b-day-view-event-body-padding, .35em);
    --b-sch-event-font-weight: var(--b-calendar-event-font-weight, 500);
    --b-sch-event-font-size: var(--b-calendar-event-font-size, .9em)
}

@supports not (color: color-mix(in srgb, red, blue)) {
    .b-style-calendar {
        --b-sch-event-background: var(--b-primary-97);
        --b-sch-event-hover-background: var(--b-primary-95);
        --b-sch-event-selected-background: var(--b-primary-90)
    }
}

.b-sch-vertical .b-style-calendar {
    --b-sch-event-border-width: var(--b-day-view-event-border-inline-start-width, 4px) 0 0 0
}

.b-style-calendar .b-sch-event-content {
    align-items: flex-start
}

.b-style-calendar.b-selected {
    --b-sch-event-color: var(--b-neutral-100)
}

.b-style-interday {
    --b-sch-event-border-radius: .25em;
    --b-sch-event-color: var(--b-primary);
    --b-sch-event-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 80%);
    --b-sch-event-hover-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 80%);
    --b-sch-event-selected-background: color-mix(in srgb, var(--b-primary), var(--b-opposite) 20%);
    --b-sch-event-border-color: var(--b-sch-event-background);
    --b-sch-event-opacity: var(--b-calendar-event-solid-bar-opacity, .8);
    --b-sch-event-font-weight: var(--b-calendar-solid-bar-font-weight, 500);
    --b-sch-event-font-size: var(--b-calendar-solid-bar-font-size, .9em)
}

@supports not (color: color-mix(in srgb, red, blue)) {
    .b-style-interday {
        --b-sch-event-hover-background: var(--b-primary-40);
        --b-sch-event-selected-background: var(--b-primary-30)
    }
}

.b-style-interday.b-selected {
    --b-sch-event-color: var(--b-neutral-100)
}

.b-style-interday:hover {
    --b-sch-event-opacity: 1
}

.b-style-rounded {
    --b-sch-event-border-radius: 1000em;
    --b-sch-event-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 40%);
    --b-sch-event-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 86%);
    --b-sch-event-hover-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 60%);
    --b-sch-event-selected-background: var(--b-primary);
    --b-sch-event-font-weight: 500;
    --b-percent-bar-background: color-mix(in srgb, var(--b-primary), transparent 70%)
}

@supports not (color: color-mix(in srgb, red, blue)) {
    .b-style-rounded {
        --b-sch-event-background: var(--b-primary-93);
        --b-sch-event-hover-background: var(--b-primary-80)
    }
}

.b-style-rounded.b-selected {
    --b-sch-event-color: color-mix(in srgb, var(--b-primary), var(--b-mix) 90%)
}

.b-style-line {
    --b-sch-event-background: transparent;
    --b-sch-event-padding-inline: 0;
    --b-sch-event-border-width: 5px 0 0 0;
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-mix) 20%);
    --b-sch-event-border-style: solid;
    --b-sch-event-font-size: .8em;
    --b-sch-milestone-border-width: 5px
}

.b-style-line.b-hover {
    --b-sch-event-border-color: var(--b-primary)
}

.b-style-line.b-selected {
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 30%)
}

.b-style-line:not(.b-milestone-wrap) {
    translate: 0 .7em
}

.b-style-line:not(.b-milestone-wrap) .b-sch-event {
    justify-content: center;
    height: calc(1.5em + 5px)
}

.b-sch-vertical .b-style-line {
    --b-sch-event-border-width: 0 0 0 5px
}

.b-sch-vertical .b-style-line .b-sch-event {
    height: 100%
}

.b-style-dashed {
    --b-sch-event-background: transparent;
    --b-sch-event-padding-inline: 0;
    --b-sch-event-border-width: 5px 0 0 0;
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-mix) 20%);
    --b-sch-event-border-style: dashed;
    --b-sch-event-font-size: .8em;
    --b-sch-milestone-border-width: 5px
}

.b-style-dashed.b-hover {
    --b-sch-event-border-color: var(--b-primary)
}

.b-style-dashed.b-selected {
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 30%)
}

.b-style-dashed:not(.b-milestone-wrap) {
    translate: 0 .7em
}

.b-style-dashed:not(.b-milestone-wrap) .b-sch-event {
    justify-content: center;
    height: calc(1.5em + 5px)
}

.b-sch-vertical .b-style-dashed {
    --b-sch-event-border-width: 0 0 0 5px
}

.b-sch-vertical .b-style-dashed .b-sch-event {
    height: 100%
}

.b-style-minimal {
    --b-sch-event-background: transparent;
    --b-sch-event-padding-inline: 0;
    --b-sch-event-border-width: 0 0 1px 0;
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-mix) 20%);
    --b-sch-event-border-style: solid;
    --b-sch-event-font-size: .9em;
    --b-sch-milestone-border-width: 1px
}

.b-style-minimal.b-hover {
    --b-sch-event-border-color: var(--b-primary)
}

.b-style-minimal.b-selected {
    --b-sch-event-border-color: color-mix(in srgb, var(--b-primary), var(--b-opposite) 30%)
}

.b-sch-vertical .b-style-minimal {
    --b-sch-event-border-width: 0 0 0 1px
}

.b-style-minimal>.b-sch-event {
    height: 60%
}

.b-sch-event-wrap,
.b-gantt-task-wrap {
    --b-sch-event-tonal-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 86%);
    --b-sch-event-tonal-hover-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 70%);
    --b-sch-event-indented-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 90%);
    --b-sch-event-indented-hover-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 82%);
    --b-sch-event-indented-selected-background: color-mix(in srgb, var(--b-primary), var(--b-mix) 70%)
}

:is(.b-time-axis-sub-grid.b-is-highlighting .b-sch-canvas>.b-sch-event-wrap, .b-time-axis-sub-grid.b-is-highlighting .b-sch-canvas>.b-gantt-task-wrap):not(.b-highlighted) {
    transition: opacity .4s;
    opacity: .2
}

.b-milestone-wrap {
    justify-content: center;
    --b-milestone-size: calc(var(--b-event-size) * 1px - var(--b-sch-milestone-border-width, 0) * 2)
}

.b-milestone-wrap.b-sch-event-wrap,
.b-milestone-wrap.b-sch-event-wrap.b-sch-vertical,
.b-milestone-wrap.b.gantt-task-wrap {
    --b-sch-event-border-width: var(--b-sch-milestone-border-width)
}

.b-milestone-wrap .b-milestone {
    overflow: visible;
    box-shadow: none;
    background-color: transparent;
    width: var(--b-milestone-size)
}

.b-milestone-wrap .b-milestone.b-sch-event-with-icon .b-sch-event-content {
    overflow: visible;
    justify-content: center
}

.b-milestone-wrap .b-milestone.b-sch-event-with-icon i {
    font-size: var(--b-milestone-size)
}

.b-milestone-wrap .b-milestone label {
    position: absolute
}

.b-labels-topbottom :is(.b-milestone-wrap .b-milestone:not(.b-sch-event-with-icon)) {
    --b-milestone-size: calc(var(--b-event-size) * .4px)
}

.b-milestone-wrap .b-milestone:not(.b-sch-event-with-icon) .b-gantt-task-content:before,
.b-milestone-wrap .b-milestone:not(.b-sch-event-with-icon) .b-sch-event-content:before {
    position: absolute;
    translate: 20%;
    content: "";
    border-radius: 0;
    background: inherit;
    height: calc(var(--b-milestone-size) * .707107);
    aspect-ratio: 1/ 1;
    rotate: 45deg
}

.b-milestone-wrap:where(:not(.b-sch-vertical)) .b-milestone label {
    margin-inline-start: .5em;
    inset-inline-start: var(--b-milestone-size)
}

.b-milestone-wrap .b-gantt-task-content,
.b-milestone-wrap .b-sch-event-content {
    overflow: visible;
    margin: 0;
    height: 0;
    width: 100%;
    display: flex;
    align-items: center;
    background: var(--b-sch-event-background)
}

.b-using-keyboard .b-milestone-wrap.b-active .b-sch-event.b-sch-event-with-icon {
    outline-offset: 3px
}

.b-using-keyboard .b-milestone-wrap.b-active .b-sch-event:not(.b-sch-event-with-icon) .b-sch-event-content:before {
    outline-offset: 3px
}

:root,
:host {
    --b-events-zindex: 6
}

.b-recurrence-editor-panel {
    --b-panel-padding: 0
}

.b-recurrence-editor-panel>.b-recurrence-editor-panel-body-wrap {
    overflow: visible
}

.b-recurrence-editor-panel>.b-recurrence-editor-panel-body-wrap>.b-recurrence-editor-panel-content {
    overflow: visible
}

:is(.b-recurrence-editor-panel>.b-recurrence-editor-panel-body-wrap>.b-recurrence-editor-panel-content [data-ref=monthDaysNumberRadioField], .b-recurrence-editor-panel>.b-recurrence-editor-panel-body-wrap>.b-recurrence-editor-panel-content [data-ref=monthDaysRadioField], .b-recurrence-editor-panel>.b-recurrence-editor-panel-body-wrap>.b-recurrence-editor-panel-content [data-ref=positionAndDayRadioField]).b-has-label.b-field {
    display: grid
}

.b-recurrence-editor-panel [data-ref=positionsCombo],
.b-recurrence-editor-panel [data-ref=daysCombo] {
    grid-column: 2
}

.b-recurrence-editor-panel .b-button-group {
    gap: 1px;
    width: 100%;
    height: auto;
    overflow: hidden;
    --b-button-focus-outline-offset: -2px
}

.b-recurrence-editor-panel .b-button-group .b-button {
    border: none;
    min-height: 2.5em;
    border-radius: 0
}

.b-recurrence-editor-panel .b-button-group.b-recurrence-days-button-group .b-button {
    flex: 1 1 100%;
    min-width: auto;
    padding-inline: 0
}

.b-recurrence-editor-panel .b-button-group.b-recurrence-months-button-group {
    display: grid;
    grid-template-columns: repeat(4, 1fr)
}

.b-recurrence-editor-panel .b-button-group.b-recurrence-month-days-button-group {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    --b-button-padding: .25em
}

:root,
:host {
    --b-resource-header-avatar-size: 2.5em;
    --b-resource-header-gap: .5em
}

.b-colorize {
    --b-resource-header-avatar-background-color: var(--b-primary-85)
}

.b-sch-vertical .b-sch-time-axis-column {
    flex-direction: row;
    min-height: 3em
}

.b-resource-header {
    flex: 1;
    position: relative;
    contain: strict
}

.b-resource-header.b-has-images {
    min-height: 3em
}

.b-resource-header.b-grouped {
    height: 6em
}

.b-resource-header .b-resource-avatar {
    --b-avatar-size: var(--b-resource-header-avatar-size)
}

.b-resource-header-group-cell {
    position: absolute;
    display: flex;
    align-items: stretch;
    flex-direction: column;
    height: 100%
}

.b-resource-header-group-cell>.b-resource-header-group-text-wrap {
    padding: .5em 0;
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    transition: border var(--b-default-transition-duration);
    border-bottom: 1px solid var(--b-grid-header-border-color);
    border-inline-end: 1px solid var(--b-grid-header-border-color)
}

.b-resource-header-group-cell>.b-resource-header-group-text-wrap>span {
    position: sticky;
    inset-inline-start: 0;
    padding-inline: var(--b-horizontal-time-axis-cell-padding-inline)
}

.b-resource-header-group-cell .b-resource-header-group-children {
    position: relative;
    height: 100%
}

.b-resource-header-cell {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    white-space: nowrap;
    contain: strict;
    height: 100%;
    user-select: none;
    -webkit-user-select: none;
    transition: background-color var(--b-default-transition-duration), color var(--b-default-transition-duration), border var(--b-default-transition-duration);
    border-inline-end: 1px solid var(--b-grid-header-border-color);
    border-bottom: 1px solid var(--b-grid-header-border-color);
    color: var(--b-grid-header-color);
    font-size: var(--b-grid-header-font-size);
    font-weight: var(--b-grid-header-font-weight);
    gap: var(--b-resource-header-gap);
    --bi-resource-avatar-color: var(--b-resource-event-color, var(--b-primary))
}

.b-animating .b-resource-header-cell {
    transition: width .2s, left .2s, right .2s
}

.b-resource-header-cell:hover {
    cursor: pointer;
    background: var(--b-grid-header-hover-background)
}

.b-resource-header-cell.b-align-start,
.b-resource-header-cell.b-align-end {
    padding-inline: .3em
}

.b-resource-header-cell.b-align-start {
    justify-content: flex-start
}

.b-resource-header-cell.b-align-end {
    justify-content: flex-end
}

.b-resource-header-cell i {
    margin-inline-end: .5em
}

.b-resource-header-cell .b-resource-name {
    overflow: hidden
}

.b-resource-header-cell .b-resource-avatar {
    transition: background var(--b-default-transition-duration);
    background-color: var(--b-resource-header-avatar-background-color);
    --b-primary: var(--bi-resource-avatar-color)
}

:root,
:host {
    --b-top-canvas-zindex: 1000
}

.b-timeline-base.b-animating .b-grid-row {
    transition: height .2s, translate .2s, inset .2s
}

.b-time-axis-cell:not(.b-group-title) {
    --b-grid-cell-padding-inline: 0;
    --b-grid-cell-focused-outline-width: 0
}

.b-sch-canvas {
    position: absolute;
    inset: 0;
    pointer-events: none;
    contain: strict;
    overflow: clip;
    height: max(1px, 100%);
    width: var(--bi-total-column-width)
}

.b-sch-foreground-canvas {
    z-index: var(--b-events-zindex)
}

.b-sch-top-canvas {
    z-index: var(--b-top-canvas-zindex)
}

.b-calculation-progress-wrap,
.b-timeline-loading-indicator-wrap {
    position: absolute;
    bottom: 0;
    display: flex;
    width: 100%;
    height: 2px;
    z-index: 100
}

.b-timeline-loading-indicator-wrap {
    background: color-mix(in srgb, var(--b-color-green), transparent 80%)
}

.b-calculation-progress,
.b-timeline-loading-indicator {
    opacity: .6;
    background: var(--b-color-green)
}

.b-timeline-loading-indicator {
    animation: b-anim-line-loop 3s linear infinite
}

@keyframes b-anim-line-loop {
    0% {
        width: 0;
        margin-inline-start: 0
    }

    50% {
        width: 100%;
        margin-inline-start: 0
    }

    to {
        width: 100%;
        margin-inline-start: 100%
    }
}

.b-timeline-histogram .b-grid-row {
    --b-grid-row-zindex: calc(var(--b-column-lines-zindex) + 2)
}

.b-timeline-histogram .b-timeline-histogram-cell {
    padding: 0;
    border-inline-end-width: 0
}

.b-timeline-histogram .b-timeline-sub-grid .b-grid-cell.b-focused:after {
    display: none
}

.b-timeline-histogram-histogram {
    padding: 0;
    background-color: transparent
}

:root,
:host {
    --b-vertical-time-axis-background: var(--b-neutral-100)
}

.b-vertical-time-axis-column {
    flex-flow: column nowrap;
    align-items: stretch;
    padding: 0;
    border-inline-end: none;
    background-color: var(--b-vertical-time-axis-background) !important
}

.b-vertical-time-axis-column.b-grid-cell.b-focused:after {
    display: none
}

.b-vertical-time-axis {
    flex: 1 0 100%;
    contain: strict
}

.b-vertical-time-axis .b-sch-header-row {
    flex-direction: column;
    flex: 1
}

.b-vertical-time-axis .b-sch-header-time-axis-cell {
    width: 100%;
    padding: 0;
    border-inline-start: 0 none;
    overflow: visible;
    text-transform: var(--b-grid-header-text-transform)
}

.b-vertical-time-axis .b-sch-header-row.b-lowest .b-sch-header-time-axis-cell {
    border-inline-end: none;
    border-bottom: none;
    justify-content: flex-end;
    align-items: flex-start;
    contain: unset
}

.b-vertical-time-axis .b-sch-header-row.b-lowest .b-sch-header-time-axis-cell .b-sch-header-text {
    padding-inline-end: .5em;
    margin-top: -.75em
}

.b-vertical-time-axis .b-sch-header-row:not(.b-lowest) {
    --b-grid-header-hover-background: var(--b-vertical-time-axis-background)
}

.b-vertical-time-axis .b-sch-header-row:not(.b-lowest) {
    flex: 0 0 2em
}

.b-vertical-time-axis .b-sch-header-row:not(.b-lowest) .b-sch-header-time-axis-cell {
    align-items: flex-start;
    border-inline-end: 1px solid var(--b-grid-header-border-color)
}

.b-vertical-time-axis .b-sch-header-row:not(.b-lowest) .b-sch-header-text {
    padding-inline: .5em;
    writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    rotate: 180deg
}

.b-vertical-time-axis .b-sticky-header .b-sch-header-text {
    inset-inline-start: 0
}

.b-firefox .b-sticky-headers .b-resource-header {
    contain: style paint layout
}

.b-sch-vertical .b-sticky-headers .b-sch-header-row,
.b-sch-vertical .b-sticky-headers .b-sch-header-time-axis-cell {
    overflow: visible
}

.b-sch-vertical .b-sticky-headers .b-content-element,
.b-sch-vertical .b-sticky-headers .b-grid-sub-grid-locked,
.b-sch-vertical .b-sticky-headers .b-vertical-time-axis-row,
.b-sch-vertical .b-sticky-headers .b-vertical-time-axis-column,
.b-sch-vertical .b-sticky-headers .b-vertical-time-axis,
.b-sch-vertical .b-sticky-headers .b-resource-header,
.b-sch-vertical .b-sticky-headers .b-resource-header-group-cell,
.b-sch-vertical .b-sticky-headers .b-resource-header-group-text-wrap {
    overflow: clip
}

.b-resource-combo .b-resource-icon {
    display: none;
    margin-inline: var(--b-text-field-input-padding) 0
}

.b-resource-combo>.b-field-inner {
    padding-inline-start: 0
}

.b-resource-combo.b-show-event-color:not(.b-uses-chip-view) .b-resource-icon {
    display: block
}

.b-resource-combo-picker .b-icon {
    display: none;
    pointer-events: all
}

:is(.b-resource-combo-picker.b-multi-select, .b-resource-combo-picker.b-show-event-color) .b-icon {
    display: block
}

:is(.b-resource-combo-picker.b-multi-select, .b-resource-combo-picker.b-show-event-color) .b-selected .b-icon-square:before {
    content: "\f14a"
}

.b-resource-combo-picker.b-show-event-color .b-icon {
    color: var(--b-primary)
}

.b-resource-combo-picker.b-show-event-color .b-icon:before {
    background: radial-gradient(var(--b-neutral-100) 60%, transparent 60%);
    font-size: var(--b-list-selected-icon-size)
}

:root,
:host {
    --b-resource-filter-item-selected-background: null
}

.b-resource-filter .b-list-item.b-selected:not(:focus-visible) {
    --b-list-item-background: var(--b-resource-filter-item-selected-background)
}

:root,
:host {
    --b-date-picker-cell-badge-font-size: .7em;
    --b-date-picker-cell-badge-background: var(--b-color-red);
    --b-date-picker-cell-badge-color: #fff;
    --b-date-picker-cell-badge-size: 1.7em;
    --b-date-picker-1-to-3-events-color: var(--b-color-yellow);
    --b-date-picker-4-to-6-events-color: var(--b-color-orange);
    --b-date-picker-7-or-more-events-color: var(--b-color-red);
    --b-date-picker-dots-padding-bottom: .75em
}

.b-date-picker .b-cell-events-badge {
    display: grid;
    place-items: center;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
    inset: auto auto -2px;
    font-size: var(--b-date-picker-cell-badge-font-size);
    background: var(--b-date-picker-cell-badge-background);
    color: var(--b-date-picker-cell-badge-color);
    width: var(--b-date-picker-cell-badge-size)
}

.b-date-picker .b-calendar-panel-cell.b-date-picker-1-to-3-events:hover,
.b-date-picker .b-calendar-panel-cell.b-date-picker-4-to-6-events:hover,
.b-date-picker .b-calendar-panel-cell.b-date-picker-7-or-more-events:hover {
    border-radius: 0
}

:is(.b-date-picker .b-calendar-panel-cell.b-date-picker-1-to-3-events:hover, .b-date-picker .b-calendar-panel-cell.b-date-picker-4-to-6-events:hover, .b-date-picker .b-calendar-panel-cell.b-date-picker-7-or-more-events:hover) .b-calendar-cell-inner {
    background-color: var(--b-year-view-heatmap-hover-background, var(--b-primary-75))
}

.b-date-picker .b-calendar-panel-cell.b-has-bullet .b-date-picker-cell-inner {
    justify-content: flex-start;
    padding-top: 2px
}

.b-date-picker .b-calendar-panel-cell.b-has-bullet .b-date-picker-cell-payload {
    bottom: 2px
}

.b-date-picker .b-calendar-panel-cell.b-has-badge .b-date-picker-cell-inner {
    justify-content: flex-start;
    padding-top: 2px
}

.b-date-picker .b-show-events-heatmap .b-calendar-panel-cell:not(:hover) {
    --b-date-picker-heatmap-background: var(--b-neutral-95)
}

.b-date-picker .b-show-events-heatmap .b-calendar-panel-cell:not(:hover).b-date-picker-1-to-3-events .b-date-picker-cell-inner {
    background: color-mix(in srgb, var(--b-date-picker-1-to-3-events-color), var(--b-date-picker-heatmap-background))
}

.b-date-picker .b-show-events-heatmap .b-calendar-panel-cell:not(:hover).b-date-picker-4-to-6-events .b-date-picker-cell-inner {
    background: color-mix(in srgb, var(--b-date-picker-4-to-6-events-color), var(--b-date-picker-heatmap-background))
}

.b-date-picker .b-show-events-heatmap .b-calendar-panel-cell:not(:hover).b-date-picker-7-or-more-events .b-date-picker-cell-inner {
    background: color-mix(in srgb, var(--b-date-picker-7-or-more-events-color), var(--b-date-picker-heatmap-background))
}

.b-date-picker .b-show-events-dots .b-calendar-panel-cell {
    --bi-extra-cell-padding: calc(var(--bi-event-count-margin-top) + var(--bi-event-count-dot-size));
    padding-bottom: var(--bi-extra-cell-padding);
    flex-direction: column;
    justify-content: flex-start
}

.b-date-picker .b-show-events-dots .b-calendar-panel-cell:is(.b-in-range, .b-range-start, .b-range-end):before {
    height: calc(100% - var(--bi-extra-cell-padding))
}

.b-date-picker .b-show-events-dots .b-date-picker-cell-inner {
    height: auto
}

.b-month-agenda-view {
    --b-agenda-view-cell-padding: 0;
    --b-date-picker-min-width: 0
}

.b-month-agenda-view .b-calendar-day-header {
    padding-block: .7em .5em
}

.b-month-agenda-view .b-calendar-week .b-calendar-cell .b-date-picker-cell-inner {
    margin-bottom: .2em
}

.b-month-agenda-view .b-weeks-container {
    z-index: 1;
    border-bottom: 1px solid var(--b-calendar-border-color)
}

.b-month-agenda-view .b-month-agenda-agenda[data-duration="1"] .b-cal-agenda-date,
.b-month-agenda-view .b-month-agenda-agenda[data-duration="1"] .b-calendar-row-header {
    display: none
}

.b-month-agenda-view .b-month-agenda-agenda[data-duration="1"] .b-grid-row {
    border: 0 none;
    min-height: 100%
}

.b-month-agenda-view .b-month-agenda-agenda[data-duration="1"] .b-grid-row.b-hover,
.b-month-agenda-view .b-month-agenda-agenda[data-duration="1"] .b-grid-row .b-grid-cell:not(:focus-visible) {
    background-color: inherit !important
}

.b-month-agenda-view .b-month-agenda-agenda:not([data-duration="1"]) .b-cal-agenda-date-date-number {
    font-size: 2em
}

@media (max-height : 600px) {
    .b-month-agenda-view .b-weeks-container {
        font-size: 85%
    }

    .b-month-agenda-view .b-calendar-week .b-calendar-cell .b-date-picker-cell-inner {
        margin: 0
    }

    .b-month-agenda-view .b-panel-header {
        padding-block: .5em
    }

    .b-month-agenda-view .b-cal-agenda-event-row {
        margin-bottom: calc(var(--bi-event-row-spacing) / 2)
    }
}

@media (max-width : 450px) {
    .b-month-agenda-view .b-agenda-view .b-cal-event-bar-container {
        margin-inline-start: 1em
    }
}

.b-hover-top.b-starts-above .b-gripper-horz,
.b-hover-bottom.b-ends-below .b-gripper-horz {
    display: none
}

:is(.b-cal-event-wrap:not(.b-rtl).b-hover-left.b-continues-past, .b-cal-event-wrap:not(.b-rtl).b-hover-right.b-continues-future) .b-gripper-vert {
    display: none
}

:is(.b-cal-event-wrap.b-rtl.b-hover-right.b-continues-past, .b-cal-event-wrap.b-rtl.b-hover-left.b-continues-future) .b-gripper-vert {
    display: none
}

.b-cal-drag-proxy {
    position: absolute;
    pointer-events: none;
    opacity: .8;
    max-width: 17em
}

:is(.b-day-view-content, .b-month-view-content) .b-cal-tentative-event {
    pointer-events: none
}

.b-day-view-day-container .b-cal-tentative-event:not(.b-cal-tentative-event-first) .b-event-header,
.b-day-view-day-container .b-cal-tentative-event:not(.b-cal-tentative-event-first) .b-cal-event-desc {
    display: none
}

.b-draggable-started:not(.b-year-view-content) {
    cursor: pointer
}

.b-draggable-started:not(.b-year-view-content) .b-week-num,
.b-draggable-started:not(.b-year-view-content) .b-day-num,
.b-draggable-started:not(.b-year-view-content) .b-cal-cell-overflow {
    pointer-events: none
}

.b-cal-event-wrap.b-resizing {
    display: none
}

.b-cal-tentative-event.b-cal-event-footer-desc-overlap .b-cal-event-footer,
.b-cal-event-wrap:not(.b-cal-tentative-event-last) .b-cal-event-footer {
    display: none
}

.b-cal-event-footer {
    position: absolute;
    bottom: .5em;
    right: .7em;
    white-space: nowrap;
    font-size: .7em
}

.b-rtl .b-cal-event-footer {
    right: auto;
    left: .7em
}

:root,
:host {
    --b-calendar-event-buffer-background: var(--b-neutral-100);
    --b-calendar-event-buffer-border-color: var(--b-border-5);
    --b-calendar-event-buffer-color: var(--b-text-2)
}

.b-day-view {
    --bi-preamble-line-color: var(--b-calendar-event-buffer-border-color);
    --bi-event-preamble-background: linear-gradient(90deg, transparent, transparent calc(50% - .5px), var(--bi-preamble-line-color) calc(50% - .5px), var(--bi-preamble-line-color) calc(50% + .5px), transparent calc(50% + .5px), transparent 100%), linear-gradient(180deg, var(--bi-preamble-line-color) 1px, transparent 1px);
    --bi-event-postamble-background: linear-gradient(90deg, transparent, transparent calc(50% - .5px), var(--bi-preamble-line-color) calc(50% - .5px), var(--bi-preamble-line-color) calc(50% + .5px), transparent calc(50% + .5px), transparent 100%), linear-gradient(0deg, var(--bi-preamble-line-color) 1px, transparent 1px)
}

.b-cal-event-buffer {
    position: absolute;
    width: 100%;
    display: grid;
    grid-template-rows: 0;
    grid-template-columns: auto auto;
    place-items: center;
    place-content: center;
    background-size: 1em 100%;
    background-repeat: no-repeat;
    background-position: 50% 0%;
    color: #aaa;
    font-size: 10px;
    min-height: 1.5em;
    pointer-events: none
}

.b-cal-event-buffer .b-travel-time-label[data-btip] {
    pointer-events: all
}

.b-cal-event-buffer i {
    margin-inline-end: .5em
}

.b-cal-preamble {
    bottom: 100%;
    background-image: var(--bi-event-preamble-background)
}

.b-cal-postamble {
    top: 100%;
    background-image: var(--bi-event-postamble-background)
}

.b-travel-time-label {
    border-radius: .7em;
    padding: .1em .7em;
    text-align: center;
    background: var(--b-calendar-event-buffer-background);
    color: var(--b-calendar-event-buffer-color);
    border: 1px solid var(--b-calendar-event-buffer-border-color)
}

.b-grid-to-cal-drag-proxy {
    position: absolute;
    z-index: 10;
    pointer-events: none;
    opacity: .9;
    width: 15em;
    height: 25px;
    align-items: center;
    display: flex;
    overflow: hidden;
    text-overflow: ellipsis;
    background: var(--b-calendar-solid-bar-background);
    border-radius: var(--b-calendar-event-border-radius);
    color: var(--b-calendar-solid-bar-color);
    font-size: var(--b-month-view-event-bar-font-size);
    padding: 0 var(--b-calendar-event-bar-padding-start)
}

.b-grid-row.b-drop-above:before {
    content: "";
    position: absolute;
    height: 1px;
    width: 100%;
    z-index: 1;
    background-color: var(--b-row-reorder-indicator-color, var(--b-secondary))
}

:is(.b-grid-row, .b-grid-header-container).b-drop-below:before {
    content: "";
    position: absolute;
    top: calc(100% - 1px);
    height: 1px;
    width: 100%;
    background-color: red;
    z-index: 1
}

.b-calendar-print-iframe {
    position: absolute;
    top: -1000em;
    left: -1000em
}

.b-calendar.b-shrinkwrap-row-heights .b-print-content .b-weeks-container {
    flex: 0 0 auto
}

.b-calendar .b-print-content {
    font-family: Helvetica Neue, Arial, Helvetica, sans-serif;
    position: absolute;
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%
}

.b-calendar .b-print-content .b-print-header {
    font-size: 1.4em
}

.b-calendar .b-print-content .b-print-body {
    flex: 1;
    display: flex
}

.b-calendar .b-print-content .b-print-body .b-print-viewport {
    display: flex;
    flex: 1
}

.b-calendar .b-print-content .b-print-body .b-print-viewport header {
    display: none
}

.b-calendar .b-print-content .b-print-body .b-print-viewport .b-calendar-mixin {
    padding: 0
}

.b-calendar .b-print-content .b-print-body .b-print-viewport .b-day-view,
.b-calendar .b-print-content .b-print-body .b-print-viewport .b-week-view,
.b-calendar .b-print-content .b-print-body .b-print-viewport .b-month-view {
    flex: 1 0 100%
}

:is(.b-calendar .b-print-content .b-print-body .b-print-viewport .b-day-view, .b-calendar .b-print-content .b-print-body .b-print-viewport .b-week-view, .b-calendar .b-print-content .b-print-body .b-print-viewport .b-month-view) .b-month-view-content {
    padding: 0
}

:is(.b-calendar .b-print-content .b-print-body .b-print-viewport .b-day-view, .b-calendar .b-print-content .b-print-body .b-print-viewport .b-week-view) .b-expand-all-day-button,
:is(.b-calendar .b-print-content .b-print-body .b-print-viewport .b-day-view, .b-calendar .b-print-content .b-print-body .b-print-viewport .b-week-view) .b-yscroll-pad {
    display: none
}

:is(.b-calendar .b-print-content .b-print-body .b-print-viewport .b-day-view, .b-calendar .b-print-content .b-print-body .b-print-viewport .b-week-view) .b-day-view-day-content {
    overflow-y: hidden !important
}

.b-calendar .b-print-content .b-print-body .b-print-viewport .b-agenda-view .b-grid-body-container.b-widget-scroller {
    overflow-y: hidden !important
}

.b-calendar .b-print-content .b-print-body .b-print-viewport .b-year-view .b-yearv-iew-content {
    padding: 0;
    overflow-y: hidden !important
}

.b-calendar .b-print-content .b-print-body .b-print-viewport .b-year-view .b-year-view-month:nth-child(9),
.b-calendar .b-print-content .b-print-body .b-print-viewport .b-year-view .b-year-view-month:nth-child(10),
.b-calendar .b-print-content .b-print-body .b-print-viewport .b-year-view .b-year-view-month:nth-child(11),
.b-calendar .b-print-content .b-print-body .b-print-viewport .b-year-view .b-year-view-month:nth-child(12) {
    margin-bottom: 0
}

:root,
:host {
    --b-calendar-time-range-border-width: .15em;
    --b-calendar-time-range-line-size: .2em;
    --b-calendar-time-range-line-zoom-scale: 2
}

.b-colorize {
    --b-calendar-time-range-header-background: var(--b-primary-97);
    --b-calendar-time-range-border-color: var(--b-primary)
}

.b-internal {
    --bi-time-range-header-width: null
}

:where(.b-day-view-day-detail:not(.b-day-view-inset-before, .b-day-view-inset-after) .b-cal-time-range-body) {
    background-color: var(--b-primary)
}

.b-day-view .b-day-view-day-detail.b-day-view-inset-before {
    --bi-start-inset: var(--bi-day-view-cell-inset-size)
}

.b-day-view .b-day-view-day-detail.b-day-view-inset-after {
    --bi-end-inset: var(--bi-day-view-cell-inset-size)
}

.b-day-view .b-cal-time-range {
    position: absolute;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    left: 0;
    right: 0
}

.b-day-view .b-cal-time-range.b-cal-time-range-overlay-gutter {
    min-width: calc(100% + var(--bi-day-view-cell-gutter))
}

.b-day-view .b-cal-time-range:not(.b-cal-time-range-stretch, .b-cal-time-range-overlay-gutter) .b-cal-time-range-body {
    max-width: calc(100% - calc(var(--bi-start-inset, 0) + var(--bi-end-inset, 0)))
}

.b-day-view .b-cal-time-range.b-cal-time-range-line {
    border-style: solid;
    transition: scale .3s ease-in-out;
    z-index: 1;
    border-color: var(--b-calendar-time-range-border-color);
    border-width: calc(var(--b-calendar-time-range-border-width)) 0 0 0;
    margin-top: calc(var(--b-calendar-time-range-line-size) / -2);
    min-height: var(--b-calendar-time-range-line-size);
    margin-inline-end: calc(-1 * var(--bi-day-view-cell-gutter))
}

.b-day-view .b-cal-time-range.b-cal-time-range-line.b-cal-time-range-hover-zoom:hover {
    scale: var(--b-calendar-time-range-line-zoom-scale)
}

.b-day-view .b-cal-time-range.b-cal-time-range-has-header:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    opacity: .5;
    inset-inline: 0;
    background-color: var(--b-calendar-time-range-border-color);
    width: var(--b-calendar-time-range-border-width)
}

.b-day-view .b-cal-time-range .b-cal-time-range-body {
    flex: 0 1 100%;
    pointer-events: none;
    z-index: -1
}

:is(.b-day-view .b-cal-time-range .b-cal-time-range-header, .b-day-view .b-cal-time-range .b-cal-time-range-footer):not(:empty) {
    flex: 0 0 var(--bi-day-view-cell-inset-size);
    display: flex;
    gap: .5em;
    align-items: center;
    justify-content: center
}

.b-day-view .b-cal-time-range .b-cal-time-range-header {
    transition: background-color .1s;
    position: relative;
    background: var(--b-calendar-time-range-header-background);
    min-width: var(--bi-time-range-header-width)
}

.b-day-view .b-cal-time-range:not(.b-cal-time-range-narrow) .b-cal-time-range-header-text {
    font-size: .9em
}

.b-day-view .b-cal-time-range-rotate-neg {
    align-self: center;
    writing-mode: vertical-lr;
    rotate: 180deg
}

.b-day-view .b-cal-time-range-rotate-neg .b-cal-time-range-header i:before {
    rotate: 180deg
}

.b-day-view .b-cal-time-range-rotate-pos {
    align-self: center;
    writing-mode: vertical-rl
}

.b-day-view .b-cal-time-range-align-start {
    flex-direction: column-reverse
}

.b-calendar.b-time-ranges-disabled .b-cal-time-range {
    display: none
}

:is(.b-week-expander .b-has-overflow, .b-week-expander .b-shrinkwrapped) .b-week-number-cell {
    position: relative
}

:is(.b-week-expander .b-has-overflow, .b-week-expander .b-shrinkwrapped) .b-week-number-cell .b-week-toggle-tool-wrap {
    order: 9999;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    padding-bottom: 4px
}

:is(.b-week-expander .b-has-overflow, .b-week-expander .b-shrinkwrapped) .b-week-number-cell .b-week-toggle-tool-wrap .b-week-toggle-tool {
    height: 1.5em;
    width: 1.5em;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer
}

@media (pointer : coarse) {
    :is(.b-week-expander .b-has-overflow, .b-week-expander .b-shrinkwrapped) .b-week-number-cell .b-week-toggle-tool-wrap .b-week-toggle-tool {
        font-size: 1.5em;
        align-self: stretch
    }
}

.b-week-expander .b-has-overflow .b-week-toggle-tool:before {
    content: "\f107"
}

.b-week-expander .b-shrinkwrapped.b-expanded .b-week-toggle-tool:before {
    content: "\f106"
}

:root,
:host {
    --b-calendar-view-padding-top: 1.2em;
    --b-calendar-event-border-radius: 5px;
    --b-calendar-overflow-popup-visible-z-index: 10;
    --b-calendar-cell-overflow-hover-border-radius: 4px;
    --b-calendar-foreground-color: var(--b-widget-color);
    --b-calendar-background: transparent;
    --b-calendar-border-color: var(--b-border-7);
    --b-calendar-date-hover-background: var(--b-neutral-95);
    --b-calendar-today-font-weight: null;
    --b-calendar-cell-overflow-color: var(--b-text-3);
    --b-calendar-cell-overflow-hover-background: var(--b-neutral-90);
    --b-calendar-cell-overflow-hover-color: null;
    --b-calendar-cell-active-overflow-color: var(--b-neutral-50);
    --b-calendar-selected-date-border: null;
    --b-calendar-week-cell-color: var(--b-text-1);
    --b-calendar-week-cell-background: null;
    --b-calendar-week-cell-hover-color: var(--b-neutral-20);
    --b-calendar-week-cell-hover-border-radius: 3px;
    --b-calendar-non-working-day-background: var(--b-neutral-98);
    --b-calendar-view-desc-color: var(--b-widget-color);
    --b-calendar-view-desc-font-size: 1.4em;
    --b-calendar-view-desc-font-weight: 400;
    --b-calendar-toolbar-border-bottom: 1px solid var(--b-calendar-border-color);
    --b-calendar-other-month-foreground-color: var(--b-text-4);
    --b-calendar-week-cell-hover-background: var(--b-calendar-date-hover-background)
}

.b-calendar.b-outer {
    height: 100%
}

.b-calendar,
.b-calendar-content {
    overflow: hidden
}

.b-calendar {
    user-select: none;
    -webkit-user-select: none
}

.b-calendar :is([role=gridcell], [role=columnheader]):focus-visible {
    outline: none;
    background-color: var(--b-calendar-focused-cell-background-color, var(--b-primary-95)) !important
}

.b-calendar.b-overflow-popup-visible {
    z-index: var(--b-calendar-overflow-popup-visible-z-index)
}

.b-calendar .b-calendar-content {
    gap: 0
}

.b-calendar .b-calendar-view-desc-text {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-transform: capitalize;
    color: var(--b-calendar-view-desc-color);
    font-size: var(--b-calendar-view-desc-font-size);
    font-weight: var(--b-calendar-view-desc-font-weight)
}

.b-calendar .b-calendar-toolbar {
    --bi-adjacent-button-border-radius: var(--b-button-icon-only-border-radius);
    --bi-adjacent-button-border-width: var(--b-button-border-width);
    --bi-prev-button-margin-start: inherit;
    background: transparent;
    border-bottom: var(--b-calendar-toolbar-border-bottom)
}

.b-calendar .b-calendar-toolbar:has([data-ref=prevButton]+[data-ref=nextButton]) {
    --bi-adjacent-button-border-radius: 0;
    --bi-adjacent-button-border-width: 0;
    --bi-prev-button-margin-start: calc(var(--b-toolbar-gap) * -1)
}

.b-calendar .b-calendar-toolbar [data-ref=nextButton] {
    margin-inline-start: var(--bi-prev-button-margin-start)
}

.b-calendar .b-calendar-toolbar [data-ref=prevButton].b-button-outlined {
    border-start-end-radius: var(--bi-adjacent-button-border-radius);
    border-end-end-radius: var(--bi-adjacent-button-border-radius);
    border-inline-end-width: var(--bi-adjacent-button-border-width)
}

.b-calendar .b-calendar-toolbar [data-ref=nextButton].b-button-outlined {
    border-start-start-radius: var(--bi-adjacent-button-border-radius);
    border-end-start-radius: var(--bi-adjacent-button-border-radius)
}

.b-calendar:not(.b-calendar-nav-toolbar) .b-calendar-toolbar .b-cal-nav-item {
    display: none
}

.b-calendar:not(.b-calendar-nav-sidebar) .b-sidebar .b-cal-nav-item {
    display: none
}

.b-calendar.b-responsive-small .b-calendar-view-desc {
    margin-inline-start: .5em
}

.b-calendar.b-responsive-small .b-calendar-toolbar {
    --b-toolbar-min-size: 2em;
    --b-toolbar-padding: .2em
}

.b-calendar.b-responsive-small .b-calendar-toolbar .b-calendar-view-desc-text {
    font-size: 120%
}

.b-calendar.b-responsive-small .b-calendar-toolbar>.b-toolbar-content {
    gap: unset
}

.b-calendar.b-responsive-small .b-calendar-toolbar button {
    --b-button-padding-inline: 1em;
    aspect-ratio: unset
}

.b-calendar.b-responsive-small .b-calendar-toolbar button:not(.b-pressed) {
    background-color: transparent;
    border-color: transparent
}

.b-calendar.b-responsive-small .b-calendar-toolbar .b-sidebar-toggle {
    margin-inline-end: .5em
}

:is(.b-calendar.b-responsive-small .b-calendar-toolbar .b-calendar-mode-button, .b-calendar.b-responsive-small .b-calendar-toolbar .b-calendar-today-button)>.b-button-menu-icon,
:is(.b-calendar.b-responsive-small .b-calendar-toolbar .b-calendar-mode-button, .b-calendar.b-responsive-small .b-calendar-toolbar .b-calendar-today-button)>label {
    display: none
}

.b-calendar:not(.b-responsive-small) .b-calendar-toolbar .b-calendar-mode-button>.b-button-icon {
    display: none
}

:is(.b-calendar .b-calendar-view-container>.b-month-view, .b-calendar .b-calendar-view-container>.b-year-view)>.b-panel-body-wrap>.b-panel-content {
    padding-top: var(--b-calendar-view-padding-top)
}

.b-notransition:is(.b-calendar-mixin, .b-calendar) * {
    transition: none !important
}

.b-panel-ui-calendar-banner.b-panel-header {
    --b-panel-header-padding: 2em 1em;
    --b-panel-header-border-bottom: var(--b-calendar-toolbar-border-bottom);
    --b-panel-header-color: var(--b-calendar-view-desc-color);
    --b-panel-header-font-size: var(--b-calendar-view-desc-font-size);
    --b-panel-header-font-weight: var(--b-calendar-view-desc-font-weight);
    --b-panel-header-background: var(--b-grid-toolbar-background);
    height: 42px
}

.b-calendar-keyboard-actions-popup {
    --b-popup-background: var(--b-neutral-95);
    width: 44em;
    max-width: 90vw;
    max-height: min(90dvh, 58em)
}

.b-calendar-keyboard-actions-popup .b-header-title {
    text-align: center;
    font-size: 150%
}

.b-calendar-keyboard-actions-popup .b-panel-content {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 1em
}

.b-calendar-keyboard-actions-popup .b-panel-content .b-kbd-help-column-1 {
    justify-self: end;
    text-align: end;
    text-wrap-style: balance
}

.b-calendar-keyboard-actions-popup .b-panel-content kbd {
    display: inline-block;
    border-radius: .25em;
    padding: .2em .5em;
    margin: 0 .2em;
    line-height: 1;
    border: 1px solid var(--b-neutral-80);
    box-shadow: 0 1px 0 var(--b-neutral-80);
    background-color: var(--b-neutral-97)
}

:root,
:host {
    --b-calendar-event-bar-gap: .5em;
    --b-calendar-event-bar-padding-start: .5em;
    --b-calendar-intraday-event-color: var(--b-primary-30);
    --b-calendar-focused-event-color: var(--b-neutral-100);
    --b-calendar-focused-event-background: var(--b-color-green);
    --b-calendar-intraday-event-hover-background: var(--b-neutral-95);
    --b-calendar-event-icon-size: 1em;
    --b-calendar-event-circle-icon-size: .5em;
    --b-calendar-solid-bar-opacity: .8;
    --b-calendar-event-avatar-size: 2em;
    --b-calendar-solid-bar-font-weight: 500;
    --b-calendar-solid-bar-font-size: 1em;
    --b-calendar-solid-bar-selected-color: var(--b-neutral-100);
    --b-calendar-event-font-size: .9em;
    --b-calendar-event-font-weight: 500;
    --b-overflow-button-background: unset;
    --bi-calendar-event-bar-background-fade: linear-gradient(color-mix(in srgb, var(--b-neutral-100), transparent 20%), color-mix(in srgb, var(--b-neutral-100), transparent 20%));
    --bi-calendar-event-bar-hover-background-fade: linear-gradient(color-mix(in srgb, var(--b-neutral-100), transparent 30%), color-mix(in srgb, var(--b-neutral-100), transparent 30%));
    --bi-calendar-event-bar-selected-background-fade: linear-gradient(color-mix(in srgb, var(--b-neutral-100), transparent 40%), color-mix(in srgb, var(--b-neutral-100), transparent 40%));
    --b-calendar-event-reveal-color: #fff
}

.b-colorize {
    --b-calendar-event-color: var(--b-primary);
    --b-calendar-solid-bar-background: var(--b-primary-90);
    --b-calendar-solid-bar-selected-background: var(--b-primary-40);
    --b-calendar-solid-bar-color: var(--b-primary-40)
}

.b-internal {
    --bi-arrow-margin: null;
    --bi-arrow-width: null;
    --bi-event-count-dot-size: null;
    --bi-event-count-dot-gap: null;
    --bi-event-height: null
}

.b-cal-view-readonly {
    filter: grayscale(75%);
    transition: filter .5s
}

.b-show-events-dots {
    --bi-event-count-dot-size: 4px
}

.b-cal-event-wrap {
    display: flex;
    transition: opacity var(--b-default-transition-duration);
    font-size: var(--b-calendar-event-font-size);
    font-weight: var(--b-calendar-event-font-weight)
}

.b-cal-event-wrap.b-read-only {
    filter: grayscale(75%);
    transition: filter .5s
}

.b-grid-row .b-cal-event-wrap {
    transition: opacity var(--b-default-transition-duration)s
}

.b-draggable-started .b-cal-event-wrap:not(.b-dragging-item) {
    pointer-events: none
}

.b-draggable-started .b-cal-event-wrap.b-dragging-item {
    opacity: .5;
    outline: none;
    pointer-events: none
}

.b-cal-event-wrap:hover {
    cursor: pointer
}

.b-cal-event-wrap.b-intraday:not(.b-solid-bar, .b-custom-event-background) .b-cal-event .b-cal-event-body {
    --b-calendar-event-color: var(--b-calendar-intraday-event-color)
}

.b-cal-event-wrap.b-intraday:not(.b-solid-bar, .b-custom-event-background) .b-cal-event:hover {
    background: var(--b-calendar-intraday-event-hover-background)
}

.b-cal-event-wrap:focus-visible {
    z-index: 3 !important;
    outline: none
}

.b-cal-event-wrap:focus-visible .b-cal-event {
    clip-path: none !important;
    outline: var(--b-widget-focus-outline-width) solid var(--b-widget-focus-outline-color);
    outline-offset: calc(var(--b-widget-focus-outline-width) * -1)
}

.b-cal-event-wrap.b-active:not(.b-dragging-item, .b-cut-item) {
    clip: unset;
    z-index: 10 !important
}

.b-offset-continues-past .b-cal-event-wrap.b-continues-past {
    margin-inline-start: var(--bi-arrow-margin)
}

.b-cal-event-wrap.b-continues-past:not(.b-rtl) .b-cal-event {
    padding-left: calc(var(--bi-arrow-width) + var(--b-calendar-event-bar-padding-start));
    clip-path: polygon(var(--bi-left-arrow-clip-path))
}

.b-cal-event-wrap.b-continues-past.b-rtl .b-cal-event {
    padding-right: calc(var(--bi-arrow-width) + var(--b-calendar-event-bar-padding-start));
    clip-path: polygon(var(--bi-right-arrow-clip-path))
}

.b-cal-event-wrap.b-continues-future:not(.b-rtl) .b-cal-event {
    padding-right: calc(var(--bi-arrow-width) + var(--b-calendar-event-bar-padding-start));
    clip-path: polygon(var(--bi-right-arrow-clip-path))
}

.b-cal-event-wrap.b-continues-future.b-rtl .b-cal-event {
    padding-left: calc(var(--bi-arrow-width) + var(--b-calendar-event-bar-padding-start));
    clip-path: polygon(var(--bi-left-arrow-clip-path))
}

.b-cal-event-wrap.b-continues-past.b-continues-future .b-cal-event {
    clip-path: polygon(var(--bi-arrow-left-arrow-right-clip-path))
}

.b-cal-event-wrap.b-focused .b-cal-event {
    background-color: var(--b-calendar-focused-event-background) !important;
    color: var(--b-calendar-focused-event-color) !important
}

.b-cal-event-wrap .b-cal-event {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    overflow: hidden;
    line-height: 1;
    transition: background var(--b-default-transition-duration), color var(--b-default-transition-duration);
    contain: content;
    border-radius: var(--b-calendar-event-border-radius);
    color: var(--b-calendar-intraday-event-color);
    --b-avatar-size: var(--b-calendar-event-avatar-size)
}

.b-cal-event-wrap .b-cal-event .b-icon:where(:not(.b-tool)) {
    flex-shrink: 0;
    display: flex
}

.b-cal-event-wrap img.b-resource-avatar {
    border: var(--b-resource-avatar-border-width) solid var(--b-calendar-event-color)
}

.b-cal-event-wrap.b-solid-bar .b-cal-event {
    background: var(--b-calendar-solid-bar-background);
    font-weight: var(--b-calendar-solid-bar-font-weight);
    font-size: var(--b-calendar-solid-bar-font-size)
}

.b-cal-event-wrap.b-solid-bar .b-resource-avatar {
    border: var(--b-resource-avatar-border-width) solid var(--b-resource-avatar-border-color)
}

.b-cal-event-wrap .b-cal-event-resource-avatars {
    gap: inherit;
    display: flex;
    flex-direction: row;
    flex-shrink: 0
}

.b-cal-event-wrap :not(.b-calendar-cell)[data-resource-id] {
    cursor: pointer
}

.b-cal-event-wrap .b-cal-event-body {
    white-space: nowrap;
    overflow: hidden;
    line-height: var(--b-day-view-event-name-line-height)
}

.b-cal-event-wrap .b-cal-event-body .b-cal-event-desc {
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.2
}

.b-cal-event-wrap .b-draggable-active .b-calendar-cell {
    user-select: none;
    -webkit-user-select: none
}

.b-cal-event-name {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: var(--b-day-view-event-name-line-height);
    min-height: 1lh
}

.b-cal-event-desc-complex {
    display: flex;
    align-items: center;
    gap: var(--b-calendar-event-bar-gap)
}

.b-cal-event-bar-container {
    --bi-left-arrow-clip-path: 0 50%, var(--bi-arrow-width) 0, 100% 0, 100% 100%, var(--bi-arrow-width) 100%;
    --bi-right-arrow-clip-path: 0 0, calc(100% - var(--bi-arrow-width)) 0, 100% 50%, calc(100% - var(--bi-arrow-width)) 100%, 0 100%;
    --bi-arrow-left-arrow-right-clip-path: 0 50%, var(--bi-arrow-width) 0, calc(100% - var(--bi-arrow-width)) 0, 100% 50%, calc(100% - var(--bi-arrow-width)) 100%, var(--bi-arrow-width) 100%;
    flex: 1;
    display: flex;
    flex-flow: column;
    overflow: visible
}

:is(.b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-cal-event-reveal, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-editing, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-selected, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-active) .b-cal-event {
    background: var(--b-calendar-event-color)
}

:is(.b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-cal-event-reveal, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-editing, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-selected, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-active) .b-cal-event:hover {
    background: var(--b-calendar-event-color)
}

:is(.b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-cal-event-reveal, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-editing, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-selected, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-active) .b-cal-event .b-cal-event-icon,
:is(.b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-cal-event-reveal, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-editing, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-selected, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-active) .b-cal-event .b-cal-recurrence-icon,
:is(.b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-cal-event-reveal, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-editing, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-selected, .b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar).b-active) .b-cal-event .b-cal-event-body {
    color: var(--b-calendar-event-reveal-color)
}

.b-cal-event-bar-container .b-cal-event-wrap.b-solid-bar {
    opacity: var(--b-calendar-solid-bar-opacity)
}

.b-cal-event-bar-container .b-cal-event-wrap.b-solid-bar.b-cal-event-reveal,
.b-cal-event-bar-container .b-cal-event-wrap.b-solid-bar.b-editing,
.b-cal-event-bar-container .b-cal-event-wrap.b-solid-bar:hover {
    opacity: 1
}

.b-cal-event-bar-container .b-cal-event-wrap.b-solid-bar.b-selected {
    --b-calendar-solid-bar-background: var(--b-calendar-solid-bar-selected-background)
}

.b-cal-event-bar-container .b-cal-event-wrap.b-solid-bar.b-selected .b-cal-event-body {
    --b-calendar-solid-bar-color: var(--b-calendar-solid-bar-selected-color)
}

.b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar) .b-cal-event .b-icon {
    justify-content: center;
    color: var(--b-primary);
    width: var(--b-calendar-event-icon-size)
}

.b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar) .b-cal-event .b-icon:before {
    font-size: var(--b-calendar-event-icon-size)
}

.b-cal-event-bar-container .b-cal-event-wrap:not(.b-solid-bar) .b-cal-event .b-icon.b-icon-circle:before {
    font-size: var(--b-calendar-event-circle-icon-size)
}

.b-cal-event-bar-container .b-cal-event {
    padding: 0 var(--b-calendar-event-bar-padding-start);
    gap: var(--b-calendar-event-bar-gap)
}

.b-cal-event-bar-container .b-event-name {
    display: flex;
    align-items: center;
    gap: .4em
}

.b-cal-event-bar-container .b-solid-bar .b-event-time,
.b-cal-event-bar-container .b-solid-bar .b-cal-event-desc,
.b-cal-event-bar-container .b-solid-bar .b-icon {
    color: var(--b-calendar-solid-bar-color)
}

.b-custom-event-background .b-cal-event {
    background: var(--bi-calendar-event-bar-background-fade), var(--bi-calendar-event-bar-background);
    --b-calendar-event-color: var(--bi-calendar-event-bar-background-fade), var(--bi-calendar-event-bar-background);
    --b-calendar-event-reveal-color: var(--b-neutral-0)
}

.b-custom-event-background:hover {
    --bi-calendar-event-bar-background-fade: var(--bi-calendar-event-bar-hover-background-fade)
}

.b-custom-event-background.b-selected {
    --bi-calendar-event-bar-background-fade: var(--bi-calendar-event-bar-selected-background-fade)
}

.b-day-cell-renderer {
    --b-overflow-button-height: var(--bi-event-height)
}

.b-day-cell-renderer .b-cal-event-bar-container {
    flex-grow: 1;
    contain: style
}

.b-day-cell-renderer .b-cal-event-bar-container .b-cal-event-wrap {
    position: absolute;
    padding-right: calc(var(--b-month-view-cell-border-width) + var(--b-month-view-event-padding));
    padding-left: var(--b-month-view-event-padding);
    z-index: 1
}

.b-day-cell-renderer .b-cal-event-bar-container .b-cal-event-wrap.b-overflow {
    opacity: 0;
    pointer-events: none;
    max-width: 14%
}

.b-day-cell-renderer .b-cal-event-bar-container .b-cal-event-wrap.b-overflow:focus-visible {
    opacity: 1;
    outline: var(--b-widget-focus-outline-width) solid var(--b-widget-focus-outline-color);
    outline-offset: calc(var(--b-widget-focus-outline-width) * -1)
}

.b-day-cell-renderer .b-cal-event-bar-container .b-cal-event-wrap.b-overflow:focus-visible .b-cal-event {
    outline: none
}

.b-day-cell-renderer .b-cal-cell-overflow:not(.b-calendar-cell),
.b-day-cell-renderer .b-cal-cell-no-content {
    flex: 0 0 auto;
    align-self: stretch;
    text-align: center;
    white-space: nowrap;
    cursor: pointer;
    font-family: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0 none;
    background: var(--b-overflow-button-background);
    text-overflow: ellipsis;
    overflow: hidden;
    border-radius: var(--b-calendar-cell-overflow-hover-border-radius);
    color: var(--b-calendar-cell-overflow-color);
    line-height: var(--b-overflow-button-height);
    margin: 0 var(--b-month-view-event-padding) var(--bi-event-spacing);
    padding: 0 var(--b-calendar-event-bar-padding-start)
}

:is(.b-day-cell-renderer .b-cal-cell-overflow:not(.b-calendar-cell), .b-day-cell-renderer .b-cal-cell-no-content):hover,
:is(.b-day-cell-renderer .b-cal-cell-overflow:not(.b-calendar-cell), .b-day-cell-renderer .b-cal-cell-no-content):focus-within {
    background: var(--b-calendar-cell-overflow-hover-background);
    color: var(--b-calendar-cell-overflow-hover-color)
}

:is(.b-day-cell-renderer .b-cal-cell-overflow:not(.b-calendar-cell), .b-day-cell-renderer .b-cal-cell-no-content).b-active {
    font-weight: 700;
    letter-spacing: normal;
    color: var(--b-calendar-cell-active-overflow-color)
}

@media (max-width : 420px) {

    .b-day-cell-renderer .b-cal-cell-overflow:not(.b-calendar-cell),
    .b-day-cell-renderer .b-cal-cell-no-content {
        font-size: 80%
    }
}

.b-day-cell-renderer .b-cal-cell-no-content {
    padding: .1em 0;
    white-space: normal;
    display: inline-block;
    line-height: initial;
    letter-spacing: .3px
}

.b-day-cell-renderer .b-calendar-cell:last-child .b-cal-event-bar-container .b-cal-event-wrap.b-overflow {
    right: 0
}

.b-cal-minimal-event-container {
    flex-wrap: wrap;
    row-gap: 1px;
    opacity: .6;
    column-gap: var(--bi-event-count-dot-gap);
    min-height: var(--bi-extra-cell-padding);
    align-content: end
}

.b-cal-minimal-event-container .b-cal-event-wrap {
    position: static !important;
    border-radius: 50%;
    padding: 0 !important;
    height: var(--bi-event-count-dot-size);
    width: var(--bi-event-count-dot-size);
    --b-calendar-solid-bar-background: var(--b-calendar-event-color)
}

.b-cal-minimal-event-container .b-cal-event {
    padding: 0;
    background-color: var(--b-calendar-event-color)
}

.b-event-count-dots-striped .b-cal-minimal-event-container {
    column-gap: 0;
    flex-wrap: nowrap;
    inset: auto auto -2px;
    border-radius: var(--bi-event-count-dot-size);
    min-height: fit-content
}

.b-event-count-dots-striped .b-cal-minimal-event-container .b-cal-event-wrap,
.b-event-count-dots-striped .b-cal-minimal-event-container .b-cal-event {
    border-radius: 0
}

:root,
:host {
    --b-calendar-row-non-working-day-background: transparent;
    --b-calendar-row-compact-header-font-size: 1em
}

.b-internal {
    --bi-min-day-width: null;
    --bi-cell-container-overflow: null
}

div.b-calendar-row {
    display: flex;
    flex-flow: column nowrap;
    align-items: stretch;
    overflow: hidden;
    flex: 1 0 0%;
    background: var(--b-month-view-background)
}

div.b-calendar-row.b-animating:not(.b-day-view-initializing) .b-calendar-row-cell-container {
    transition: height var(--b-day-view-all-day-height-transition-duration)
}

div.b-calendar-row .b-calendar-row-header,
div.b-calendar-row .b-calendar-row-body {
    flex: 0 0 auto;
    display: flex;
    flex-flow: row nowrap
}

div.b-calendar-row .b-calendar-row-body {
    flex: 1 1 0%;
    overflow: hidden
}

div.b-calendar-row .b-calendar-row-body.b-zero-height {
    max-height: 0px
}

div.b-calendar-row .b-calendar-row-body:not(.b-zero-height) {
    border-top: 1px solid var(--b-calendar-border-color)
}

div.b-calendar-row .b-calendar-row-header-container,
div.b-calendar-row .b-calendar-row-cell-container {
    flex: 1 0 0%;
    display: flex;
    flex-flow: row nowrap;
    align-items: stretch;
    overflow: hidden
}

div.b-calendar-row .b-calendar-row-cell-container {
    position: relative;
    overflow: var(--bi-cell-container-overflow, hidden)
}

div.b-calendar-row .b-cal-cell-header {
    padding: var(--b-calendar-view-padding-top) 0 .2em;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    background: var(--b-month-view-background);
    cursor: pointer
}

div.b-calendar-row .b-cal-cell-header .b-week-num {
    display: none
}

div.b-calendar-row .b-cal-cell-header .b-day-name-date {
    background: var(--bi-calendar-date-background)
}

div.b-calendar-row .b-cal-cell-header .b-day-name-date:focus-visible {
    outline: var(--b-widget-focus-outline-width) solid var(--b-widget-focus-outline-color)
}

div.b-calendar-row .b-cal-cell-header:hover {
    --bi-calendar-date-background: var(--b-calendar-date-hover-background)
}

.b-draggable-started :is(div.b-calendar-row .b-cal-cell-header):hover {
    --bi-calendar-date-background: initial
}

div.b-calendar-row .b-cal-cell-header .b-day-name-day {
    font-size: .8em;
    margin-bottom: .2em
}

div.b-calendar-row .b-cal-cell-header .b-day-name-day.b-day-name-short {
    font-size: 1.1em
}

div.b-calendar-row .b-cal-cell-header .b-day-name-date {
    font-size: 1.8em;
    border-radius: 50%;
    width: 1.8em;
    height: 1.8em;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: .1em 0 .2em;
    transition: background-color .3s, width .3s, height .3s, font-weight .3s, color .3s
}

.b-no-transitions :is(div.b-calendar-row .b-cal-cell-header .b-day-name-date) {
    transition: none
}

div.b-calendar-row .b-cal-cell-header.b-weekend .b-day-name-part {
    color: var(--b-month-view-header-cell-weekend-color)
}

div.b-calendar-row .b-cal-cell-header.b-today {
    --bi-calendar-date-background: var(--b-calendar-today-background, var(--b-date-picker-today-background, transparent))
}

div.b-calendar-row .b-cal-cell-header.b-today .b-day-name-date {
    border: var(--b-calendar-today-border, var(--b-date-picker-today-border, 1px solid var(--b-date-picker-today-color, var(--b-primary-50))));
    color: var(--b-calendar-today-color, var(--b-date-picker-today-color, var(--b-primary-50)))
}

div.b-calendar-row .b-cal-cell-header.b-today:hover {
    --bi-calendar-date-background: var(--b-calendar-today-hover-background, var(--b-primary-90))
}

div.b-calendar-row .b-cal-cell-header.b-selected-date .b-day-name-date {
    border: var(--b-calendar-selected-date-border)
}

div.b-calendar-row .b-cal-cell-header.b-selected-date,
div.b-calendar-row .b-cal-cell-header.b-current-date {
    --bi-calendar-date-background: var(--b-date-picker-selected-background)
}

:is(div.b-calendar-row .b-cal-cell-header.b-selected-date, div.b-calendar-row .b-cal-cell-header.b-current-date) .b-day-name-date {
    color: var(--b-date-picker-selected-color)
}

:is(div.b-calendar-row .b-cal-cell-header.b-selected-date, div.b-calendar-row .b-cal-cell-header.b-current-date):hover {
    --bi-calendar-date-background: var(--b-date-picker-date-hover-background)
}

div.b-calendar-row.b-shifted-day .b-day-name-date {
    width: 3em
}

div.b-calendar-row.b-hide-all-day-header .b-cal-cell-header:not(:last-child) {
    border-inline-end: var(--b-month-view-cell-border-width) solid var(--b-month-view-border-color)
}

div.b-calendar-row.b-hide-all-day-header .b-calendar-row-body {
    display: none
}

div.b-calendar-row .b-cal-cell-header,
div.b-calendar-row .b-calendar-cell {
    flex: 1 1 100%;
    min-width: var(--bi-min-day-width, 0);
    color: var(--b-month-view-cell-color);
    display: flex;
    flex-flow: column nowrap
}

div.b-calendar-row .b-calendar-cell {
    overflow: visible
}

div.b-calendar-row .b-calendar-cell.b-non-working-day {
    background: var(--b-month-view-non-working-day-background)
}

div.b-calendar-row .b-calendar-cell.b-weekend {
    color: var(--b-month-view-cell-weekend-color)
}

div.b-calendar-row .b-calendar-cell.b-today .b-day-num {
    border-radius: 50%;
    background: var(--b-month-view-today-day-num-background, var(--b-calendar-today-background, var(--b-date-picker-today-background, transparent)));
    color: var(--b-month-view-today-day-num-color, var(--b-calendar-today-color, var(--b-date-picker-today-color, var(--b-primary-50))));
    font-weight: var(--b-month-view-today-day-num-font-weight)
}

div.b-calendar-row .b-calendar-cell.b-non-working-day .b-cal-event-bar-container {
    background: var(--b-calendar-row-non-working-day-background)
}

div.b-calendar-row .b-calendar-cell:not(:last-child) {
    border-inline-end: var(--b-month-view-cell-border-width) solid var(--b-month-view-border-color)
}

div.b-calendar-row .b-cal-event-bar-container {
    flex: 1 1 100%
}

div.b-calendar-row.b-responsive-small .b-cal-cell-header {
    padding-block-start: .4em
}

div.b-calendar-row.b-responsive-small .b-cal-cell-header .b-day-name-date {
    font-size: 1.5em
}

div.b-calendar-row.b-responsive-small .b-cal-cell-header .b-dayname-date {
    flex-direction: row;
    justify-content: center
}

div.b-calendar-row.b-responsive-small .b-cal-cell-header .b-dayname-date>* {
    font-size: 1.5em
}

div.b-calendar-row.b-compact-header .b-cal-cell-header {
    flex-flow: row nowrap;
    gap: .25em;
    padding-block: .5em;
    font-weight: 500
}

div.b-calendar-row.b-compact-header .b-cal-cell-header * {
    font-size: var(--b-calendar-row-compact-header-font-size) !important;
    margin: 0 !important
}

div.b-calendar-row.b-compact-header .b-cal-cell-header .b-day-name-date {
    background: transparent;
    width: 1em;
    height: 1.8em
}

div.b-calendar-row.b-compact-header .b-cal-cell-header.b-selected-date .b-day-name-date {
    width: 1.8em;
    background: var(--bi-calendar-date-background)
}

div.b-calendar-row.b-compact-header .b-cal-cell-header.b-weekend * {
    color: var(--b-month-view-header-cell-weekend-color)
}

:root,
:host {
    --b-day-resource-calendar-row-border-color: var(--b-calendar-border-color)
}

.b-internal {
    --bi-visible-resource-count: null
}

div.b-day-resource-calendar-row.b-hide-all-day-header .b-day-resource-calendar-row-column,
div.b-day-resource-calendar-row .b-day-resource-calendar-row-column {
    position: relative;
    display: flex;
    flex-flow: row;
    flex: 1 0 auto
}

:is(div.b-day-resource-calendar-row.b-hide-all-day-header .b-day-resource-calendar-row-column, div.b-day-resource-calendar-row .b-day-resource-calendar-row-column):not(:last-child) {
    border-inline-end: var(--b-month-view-cell-border-width) solid var(--b-day-resource-calendar-row-border-color)
}

:is(div.b-day-resource-calendar-row.b-hide-all-day-header .b-day-resource-calendar-row-column, div.b-day-resource-calendar-row .b-day-resource-calendar-row-column) .b-resource-calendar-row-column-resource-cell {
    flex: 1 1 100%;
    min-width: var(--bi-min-resource-width);
    display: flex;
    flex-flow: column nowrap
}

:is(div.b-day-resource-calendar-row.b-hide-all-day-header .b-day-resource-calendar-row-column, div.b-day-resource-calendar-row .b-day-resource-calendar-row-column) .b-resource-calendar-row-column-resource-cell:not(:last-child) {
    border-inline-end: var(--b-month-view-cell-border-width) solid var(--b-day-view-border-color)
}

:is(div.b-day-resource-calendar-row.b-hide-all-day-header .b-day-resource-calendar-row-column, div.b-day-resource-calendar-row .b-day-resource-calendar-row-column) .b-cal-event-bar-container {
    position: relative
}

div.b-day-resource-calendar-row.b-hide-all-day-header .b-cal-cell-header,
div.b-day-resource-calendar-row .b-cal-cell-header {
    align-items: stretch;
    padding-bottom: 0;
    flex: 1 0 var(--bi-min-day-width, auto);
    display: grid;
    grid-template-columns: repeat(max(var(--bi-visible-resource-count), 1), 1fr);
    contain: unset;
    width: auto
}

:is(div.b-day-resource-calendar-row.b-hide-all-day-header .b-cal-cell-header, div.b-day-resource-calendar-row .b-cal-cell-header):not(:last-child) {
    border-inline-end: var(--b-month-view-cell-border-width) solid var(--b-day-resource-calendar-row-border-color)
}

div.b-day-resource-calendar-row .b-dayname-date {
    grid-row: 1;
    grid-column: 1/-1;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    padding: .5em 0;
    max-width: var(--bi-min-resource-width);
    justify-self: center
}

div.b-day-resource-calendar-row.b-compact-header .b-cal-cell-header {
    gap: 0;
    padding: 0
}

div.b-day-resource-calendar-row.b-compact-header .b-dayname-date {
    flex-flow: row nowrap;
    gap: .3em
}

div.b-day-resource-calendar-row:not(.b-compact-header) .b-day-name,
div.b-day-resource-calendar-row:not(.b-compact-header) .b-day-date {
    flex: 1;
    display: flex;
    justify-content: center
}

div.b-day-resource-calendar-row .b-day-resource-calendar-row-resource-header {
    grid-row: 2/2;
    display: flex;
    gap: .8em;
    justify-content: center;
    align-items: center;
    padding-block: 1em;
    padding-inline: .5em;
    overflow: hidden;
    contain: inline-size layout;
    border-top: var(--b-month-view-cell-border-width) solid var(--b-calendar-border-color);
    min-width: var(--bi-min-resource-width)
}

.b-no-visible-resources :is(div.b-day-resource-calendar-row .b-day-resource-calendar-row-resource-header) {
    max-height: 0;
    padding: 0;
    border: 0 none
}

div.b-day-resource-calendar-row .b-day-resource-calendar-row-resource-header.b-has-info {
    display: grid;
    grid-template-areas: "avatar name" "info info";
    grid-template-columns: auto 1fr
}

div.b-day-resource-calendar-row .b-day-resource-calendar-row-resource-header .b-resource-avatar {
    grid-area: avatar;
    border-color: var(--b-calendar-border-color)
}

div.b-day-resource-calendar-row .b-day-resource-calendar-row-resource-header.b-avatar-after .b-resource-avatar {
    order: 1
}

div.b-day-resource-calendar-row .b-day-resource-calendar-row-resource-header:not(:last-child) {
    border-inline-end: var(--b-month-view-cell-border-width) solid var(--b-calendar-border-color)
}

div.b-day-resource-calendar-row .b-day-resource-calendar-row-resource-header .b-day-resource-calendar-row-resource-info {
    grid-area: info
}

div.b-day-resource-calendar-row.b-narrow-resource-header .b-day-resource-calendar-row-resource-header .b-resource-avatar {
    display: none
}

div.b-day-resource-calendar-row.b-narrow-resource-header.b-hide-resource-name-when-narrow .b-day-resource-calendar-row-resource-header .b-resource-avatar {
    display: flex
}

div.b-day-resource-calendar-row.b-narrow-resource-header.b-hide-resource-name-when-narrow .b-day-resource-calendar-row-resource-header .b-day-resource-calendar-row-resource-name {
    display: none
}

div.b-day-resource-calendar-row .b-day-resource-calendar-row-resource-name {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    line-height: var(--b-avatar-size);
    grid-area: name
}

div.b-day-resource-calendar-row .b-cal-event-wrap {
    max-width: 100%;
    opacity: 1;
    pointer-events: all
}

.b-day-selector .b-calendar-row-header-container {
    border-bottom: 1px solid var(--b-calendar-border-color)
}

.b-day-selector .b-calendar-row-header-container .b-cal-cell-header:not(:hover) div.b-day-name-date {
    background-color: inherit;
    color: inherit
}

.b-day-selector .b-calendar-row-header-container .b-cal-cell-header.b-selected-date div.b-day-name-date {
    background: var(--b-event-list-day-selector-selected-date-background);
    color: var(--b-event-list-day-selector-selected-date-color)
}

.b-day-selector .b-calendar-row-body {
    display: none
}

:is(.b-day-view-with-day-selector, .b-week-view-with-day-selector) .b-calendar-row-header-container {
    border-inline-start: var(--b-day-view-split-width) solid var(--b-day-view-border-color);
    margin-inline-start: var(--bi-time-axis-width)
}

:is(.b-day-view-with-day-selector, .b-week-view-with-day-selector):not(.b-has-all-day-events) .b-calendar-row-header-container {
    border-bottom-width: 0
}

:root,
:host {
    --b-day-view-event-desc-line-height: null;
    --b-day-view-event-body-padding: .4em;
    --b-day-view-event-border: null;
    --b-day-view-event-border-inline-start-width: 4px;
    --b-day-view-event-border-radius: var(--b-calendar-event-border-radius);
    --b-day-view-event-name-line-height: 1.4;
    --b-day-view-split-width: 1px;
    --b-day-view-all-day-height-transition-duration: .3s;
    --b-day-view-border-color: var(--b-calendar-border-color);
    --b-day-view-hour-line-color: var(--b-neutral-90);
    --b-day-view-half-hour-line-color: var(--b-neutral-92);
    --b-day-view-outside-core-hours-color: color-mix(in srgb, var(--b-neutral-90), transparent 70%);
    --b-day-view-foreground-color: var(--b-text-2);
    --b-day-view-inset-background: color-mix(in srgb, var(--b-neutral-90), transparent 80%);
    --b-day-view-time-axis-color: var(--b-neutral-60);
    --b-day-view-time-axis-hour-color: var(--b-text-3);
    --b-day-view-non-working-day-background: color-mix(in srgb, var(--b-neutral-90), transparent 80%);
    --b-day-view-time-indicator-color: var(--b-color-deep-orange);
    --b-day-view-body-hover-mask-color: rgba(100, 100, 100, .1);
    --b-day-view-body-selected-mask-color: rgba(50, 50, 50, .1);
    --b-day-view-background: var(--b-neutral-100);
    --b-day-view-resource-avatar-hover-scale: 1.1;
    --b-day-view-today-background: null;
    --b-day-view-event-selected-color: var(--b-neutral-100);
    --b-day-view-day-change-line-color: var(--b-neutral-70)
}

.b-colorize {
    --b-day-view-event-color: var(--b-primary-30);
    --b-day-view-event-border-inline-start-color: var(--b-primary-50);
    --b-day-view-body-background: var(--b-primary-95);
    --b-day-view-event-hover-body-background: var(--b-primary-90);
    --b-day-view-event-selected-body-background: var(--b-primary-50);
    --b-day-view-focus-outline-color: var(--b-primary-30)
}

.b-internal {
    --bi-range-magnitude: null;
    --bi-current-time-seconds: null;
    --bi-current-time-position: null;
    --bi-current-time: null;
    --bi-second-height: null;
    --bi-time-axis-width: null;
    --bi-day-view-cell-gutter: null;
    --bi-day-view-cell-inset-size: null;
    --bi-day-view-min-event-height: null;
    --bi-half-hour-height: null;
    --bi-hour-height: null;
    --bi-fifteen-minute-height: null;
    --bi-ten-minute-height: null;
    --bi-five-minute-height: null;
    --bi-twelve-minute-height: null;
    --bi-six-minute-height: null;
    --bi-subtick-background: null;
    --bi-tick-background: null;
    --bi-tick-height: null;
    --bi-leaf-tick-height: null;
    --bi-day-start-offset: null;
    --bi-day-height: null;
    --bi-dashed-subtick-background: null;
    --bi-tick-rowspan: null;
    --bi-tick-index: null;
    --bi-day-length: null
}

.b-day-view {
    --bi-subtick-count: 1;
    --b-panel-background: var(--b-day-view-background);
    --b-panel-gap: 0;
    --b-panel-padding: 0;
    --b-panel-with-header-padding: 0
}

.b-day-view.b-day-view-with-day-selector.b-has-all-day-events .b-calendar-row-body {
    border-top-width: 0
}

.b-day-view.b-day-view-with-day-selector .b-day-view-content .b-calendar-row-header {
    display: none
}

.b-day-view .b-cal-event-desc {
    line-height: var(--b-day-view-event-desc-line-height)
}

.b-day-view .b-event-action-buttons {
    position: absolute;
    inset-inline-end: .25em;
    inset-block-start: 0;
    display: flex;
    flex-flow: row wrap
}

.b-day-view .b-event-action-buttons .b-tool {
    color: inherit;
    width: 2em;
    height: 2em;
    font-size: calc(150% - (25%*min(var(--bi-range-magnitude), 2)))
}

.b-day-view.b-no-days .b-empty-text {
    padding: 1em;
    pointer-events: none
}

.b-day-view.b-no-days .b-time-axis-container {
    display: none
}

.b-day-view.b-no-days .b-day-view-day-container {
    background-image: none;
    --bi-day-height: auto;
    border: 0 none
}

.b-day-view.b-no-days .b-day-view-day-container:before {
    background-image: none
}

.b-day-cell-collecter .b-day-view-content {
    --bi-tick-height: var(--bi-half-hour-height);
    --bi-total-tick-count: calc(var(--bi-subtick-count) * var(--bi-day-length));
    --bi-leaf-tick-size: calc(var(--bi-day-height) / var(--bi-total-tick-count));
    --bi-current-time-position: calc(var(--bi-current-time-seconds) * var(--bi-second-height) - 1px);
    display: flex;
    align-items: stretch;
    padding: 0;
    flex: 1 1 0;
    overflow: hidden;
    outline: none;
    background: var(--b-day-view-background);
    color: var(--b-day-view-foreground-color)
}

.b-day-cell-collecter .b-day-view-content.b-day-view-hour-height-level-1 {
    --bi-subtick-count: 2
}

.b-day-cell-collecter .b-day-view-content.b-day-view-hour-height-level-1 .b-day-view-tick-level-1 {
    opacity: 1
}

.b-day-cell-collecter .b-day-view-content.b-day-view-hour-height-level-2 {
    --bi-subtick-count: 4;
    --bi-tick-height: var(--bi-fifteen-minute-height)
}

.b-day-cell-collecter .b-day-view-content.b-day-view-hour-height-level-2 .b-day-view-tick-level-2 {
    opacity: 1
}

.b-day-cell-collecter .b-day-view-content.b-day-view-hour-height-level-3 {
    --bi-subtick-count: 6;
    --bi-tick-height: var(--bi-ten-minute-height)
}

.b-day-cell-collecter .b-day-view-content.b-day-view-hour-height-level-3 .b-day-view-tick-level-3 {
    opacity: 1
}

.b-day-cell-collecter .b-day-view-content.b-day-view-hour-height-level-4 {
    --bi-subtick-count: 12;
    --bi-tick-height: var(--bi-five-minute-height)
}

.b-day-cell-collecter .b-day-view-content.b-day-view-hour-height-level-4 .b-day-view-tick-level-4 {
    opacity: 1
}

.b-six-minute-ticks :is(.b-day-cell-collecter .b-day-view-content).b-day-view-hour-height-level-2 {
    --bi-subtick-count: 6;
    --bi-tick-height: var(--bi-twelve-minute-height)
}

.b-six-minute-ticks :is(.b-day-cell-collecter .b-day-view-content).b-day-view-hour-height-level-3 {
    --bi-subtick-count: 10;
    --bi-tick-height: var(--bi-six-minute-height)
}

.b-day-cell-collecter .b-day-view-content .b-day-view-subtick {
    position: absolute;
    inset-inline: 0;
    height: calc(var(--bi-leaf-tick-size) * var(--bi-tick-rowspan, 1));
    top: calc(var(--bi-tick-index) * var(--bi-leaf-tick-size))
}

.b-day-cell-collecter .b-day-view-content .b-virtual-scrollers {
    padding-inline-start: var(--bi-time-axis-width)
}

.b-day-cell-collecter .b-day-view-content .b-virtual-scrollers .b-virtual-scroller {
    flex: 1 1 0;
    border-inline-start: var(--b-day-view-split-width) solid var(--b-day-view-border-color)
}

.b-day-cell-collecter .b-day-view-content .b-virtual-scrollers .b-virtual-scroller .b-scroller-stretcher {
    position: relative
}

.b-day-cell-collecter .b-day-view-content .b-day-view-day-detail {
    z-index: 0;
    position: relative
}

.b-day-cell-collecter .b-day-view-content .b-day-view-day-detail.b-day-view-inset-before .b-day-view-inset:before {
    content: " ";
    left: 0
}

.b-day-cell-collecter .b-day-view-content .b-day-view-day-detail.b-day-view-inset-before .b-day-view-event-container {
    margin-inline-start: calc(var(--bi-day-view-cell-inset-size))
}

.b-day-cell-collecter .b-day-view-content .b-day-view-day-detail.b-day-view-inset-after .b-day-view-inset:after {
    content: " ";
    right: 0
}

.b-day-cell-collecter .b-day-view-content .b-day-view-day-detail.b-day-view-inset-after .b-day-view-event-container {
    margin-inline-end: calc(var(--bi-day-view-cell-inset-size))
}

.b-day-cell-collecter .b-day-view-content .b-day-view-event-container,
.b-day-cell-collecter .b-day-view-content .b-day-view-inset {
    position: absolute;
    inset-block: 0;
    inset-inline: 0 var(--bi-day-view-cell-gutter)
}

.b-day-cell-collecter .b-day-view-content .b-day-view-inset:after,
.b-day-cell-collecter .b-day-view-content .b-day-view-inset:before {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: -1;
    background: var(--b-day-view-inset-background);
    width: var(--bi-day-view-cell-inset-size)
}

.b-day-cell-collecter .b-day-view-content .b-cal-event-wrap:is(.b-starts-above, .b-ends-below):before,
.b-day-cell-collecter .b-day-view-content .b-cal-event-wrap:is(.b-starts-above, .b-ends-below):after {
    translate: -50% -2px;
    margin-inline-start: 50%;
    position: absolute;
    font-size: 80%;
    opacity: .7;
    z-index: 1;
    pointer-events: none;
    font-family: var(--b-widget-icon-font-family)
}

.b-day-cell-collecter .b-day-view-content .b-cal-event-wrap.b-starts-above:before {
    content: "\f106";
    top: 0
}

.b-day-cell-collecter .b-day-view-content .b-cal-event-wrap.b-ends-below:after {
    content: "\f107";
    bottom: 0
}

.b-day-cell-collecter .b-day-view-content .b-cal-event-desc-complex {
    display: flex;
    flex-direction: column;
    flex: 1;
    align-items: normal
}

.b-rtl .b-day-cell-collect .b-day-view-content .b-day-view-day-detail.b-day-view-inset-before .b-day-view-inset:before {
    left: unset;
    right: 0
}

.b-rtl .b-day-cell-collect .b-day-view-content .b-day-view-day-detail.b-day-view-inset-after .b-day-view-inset:after {
    left: 0;
    right: unset
}

.b-rtl .b-day-cell-collect .b-day-view-content .b-cal-event-wrap:is(.b-starts-above, .b-ends-below):before,
.b-rtl .b-day-cell-collect .b-day-view-content .b-cal-event-wrap:is(.b-starts-above, .b-ends-below):after {
    translate: 50% -2px
}

.b-day-view-all-day-row {
    display: flex;
    flex-flow: row nowrap;
    max-height: 50%;
    z-index: 2;
    box-shadow: 0 3px 3px rgba(var(--b-calendar-border-color), .2)
}

.b-day-view-day-detail .b-cal-event-wrap {
    min-height: var(--bi-day-view-min-event-height)
}

.b-day-view-day-detail .b-cal-event-wrap.b-cal-tentative-event {
    min-height: 10px
}

.b-day-view-day-detail .b-cal-event-wrap:focus-visible .b-cal-event {
    outline: none
}

.b-day-view-day-detail .b-cal-event-wrap:focus-visible .b-cal-event-body {
    outline: var(--b-widget-focus-outline-width) solid var(--b-day-view-focus-outline-color);
    outline-offset: calc(var(--b-widget-focus-outline-width) * -1)
}

.b-day-view-all-day-row-start {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: flex-end;
    padding: .5em 0;
    flex: 0 0 var(--bi-time-axis-width);
    min-width: var(--bi-time-axis-width)
}

.b-day-view-all-day-row-start .b-day-view-all-day-text {
    flex: 1 1 auto;
    display: none;
    flex-flow: column nowrap;
    justify-content: center;
    font-size: .7em;
    color: var(--b-day-view-time-axis-color)
}

.b-day-view-all-day-row-start .b-expand-all-day-button {
    display: none;
    height: 1.5em;
    width: 1.5em;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    cursor: inherit;
    border: 0 none;
    background-color: transparent;
    color: var(--b-day-view-time-axis-color)
}

.b-day-view-all-day-row-start .b-expand-all-day-button:focus {
    outline: none;
    background-color: #e8e8e8
}

.b-day-view-all-day-row-start .b-expand-all-day-button :before {
    line-height: inherit
}

.b-day-view-all-day-row-start.b-has-cell-overflow:not(.b-day-view-all-day-auto-height) {
    cursor: pointer
}

.b-day-view-all-day-row-start.b-has-cell-overflow:not(.b-day-view-all-day-auto-height) .b-expand-all-day-button {
    display: flex
}

.b-day-view-all-day-row-start.b-has-cell-overflow:not(.b-day-view-all-day-auto-height).b-expanded .b-expand-all-day-button {
    rotate: -180deg
}

.b-day-view-schedule-container {
    flex: 1 0 0;
    contain: style;
    border-inline-start: var(--b-day-view-split-width) solid var(--b-day-view-border-color)
}

.b-day-view-day-content {
    --bi-tick-background: linear-gradient(to bottom, transparent, transparent calc(var(--bi-hour-height) - 1px), var(--b-day-view-hour-line-color) 1px);
    --bi-subtick-background: repeating-linear-gradient(to bottom, transparent, transparent calc(var(--bi-tick-height)), var(--b-day-view-half-hour-line-color) var(--bi-tick-height), transparent calc(var(--bi-tick-height) + 1px));
    --bi-dashed-subtick-background: conic-gradient(at 50% 1px, transparent 75%, var(--b-day-view-hour-line-color) 0turn);
    display: flex;
    flex-flow: row nowrap;
    flex: 1 1 0;
    align-items: flex-start;
    outline: none;
    position: relative;
    z-index: 1;
    border-top: 1px solid var(--b-day-view-border-color)
}

.b-day-view-day-content:not(.b-hide-current-time) .b-calendar-cell.b-today:before {
    content: "";
    position: absolute;
    width: calc(100% + 1px);
    inset-inline-start: -1px;
    top: var(--bi-current-time-position);
    border-top: 2px solid var(--b-day-view-time-indicator-color)
}

.b-day-view-day-content:not(.b-hide-current-time) .b-calendar-cell.b-today:after {
    content: "";
    position: absolute;
    height: 10px;
    width: 10px;
    border-radius: 50%;
    translate: -50% calc(-50% - 1px);
    top: calc(var(--bi-current-time-position) + 2px);
    background-color: var(--b-day-view-time-indicator-color)
}

.b-day-view-day-content.b-show-current-time .b-time-axis-container {
    overflow: visible;
    z-index: 1
}

.b-day-view-day-content.b-show-current-time .b-calendar-cell:first-of-type:after {
    display: none
}

.b-day-view-day-content.b-show-time-full-width:has(.b-today) .b-calendar-cell:before {
    content: "";
    position: absolute;
    width: calc(100% + 1px);
    inset-inline-start: -1px;
    border-top: 2px solid var(--b-day-view-time-indicator-color);
    top: var(--bi-current-time-position)
}

.b-day-view-day-content.b-show-time-full-width:has(.b-today) .b-calendar-cell.b-past-date:before {
    border-top-style: dashed;
    width: 100%
}

.b-day-view-day-content.b-show-time-on-top .b-calendar-cell:before,
.b-day-view-day-content.b-show-time-on-top .b-calendar-cell:after {
    z-index: 3
}

.b-day-view-day-content .b-time-axis-current-time {
    position: absolute;
    pointer-events: none;
    width: 100%;
    z-index: 1;
    translate: 0 calc(var(--bi-current-time-position) - 50% + 1px)
}

.b-day-view-day-content .b-time-axis-current-time .b-current-time-text {
    border-radius: .7em;
    display: grid;
    place-content: center;
    line-height: 20px;
    background-color: var(--b-day-view-time-indicator-color)
}

.b-day-view-day-content .b-time-axis-current-time .b-current-time-text:after {
    color: #fff;
    font-size: .7em;
    content: var(--bi-current-time, "")
}

.b-day-view-day-content .b-time-axis-current-time:after {
    content: "";
    position: absolute;
    inset-inline-start: 100%;
    width: 1px;
    top: calc(50% - 1px);
    border-top: 2px solid var(--b-day-view-time-indicator-color)
}

.b-day-view-day-content:not(.b-show-current-time) .b-time-axis-current-time {
    visibility: hidden
}

:is(.b-day-view-day-content.b-hide-current-time, .b-day-view-day-content.b-custom-current-time) .b-calendar-cell.b-today:before,
:is(.b-day-view-day-content.b-hide-current-time, .b-day-view-day-content.b-custom-current-time) .b-calendar-cell.b-today:after {
    display: none
}

.b-day-view-day-container {
    flex: 1 0 0;
    display: flex;
    flex-flow: row nowrap;
    align-items: stretch;
    overscroll-behavior: contain auto;
    contain: layout style;
    background-repeat: repeat-y;
    border-inline-start: var(--b-day-view-split-width) solid var(--b-day-view-border-color);
    min-height: max(100%, var(--bi-day-height, 100%));
    background-image: var(--bi-subtick-background), var(--bi-tick-background);
    background-size: 100% var(--bi-hour-height);
    background-position-y: var(--bi-day-start-offset);
    clip-path: polygon(0px 0px, 100% 0px, 100% var(--bi-day-height), 0px var(--bi-day-height))
}

.b-day-view-day-container.b-dashed-subticks {
    background-image: var(--bi-tick-background)
}

.b-day-view-day-container.b-dashed-subticks:before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--bi-tick-background);
    background: var(--bi-dashed-subtick-background);
    background-size: 10px calc(var(--bi-tick-height) + 1px);
    background-position: 1px var(--bi-tick-height)
}

.b-day-view-day-container:after {
    content: "";
    position: absolute;
    top: var(--bi-day-change-offset, -10000px);
    width: 100%;
    height: 1px;
    background-color: var(--b-day-view-day-change-line-color);
    box-shadow: 0 0 3px 0 var(--b-day-view-day-change-line-color);
    z-index: -1
}

.b-day-view-day-container .b-overflow {
    opacity: 0
}

.b-day-view-day-container .b-cal-event-body {
    transition: background-color .1s
}

.b-day-view-day-container .b-cal-event-wrap.b-starts-above .b-event-header {
    visibility: hidden
}

.b-day-view-day-container .b-calendar-cell {
    flex: 1 1 100%;
    position: relative;
    overflow: visible;
    height: var(--bi-day-height);
    min-width: var(--bi-min-day-width)
}

.b-day-view-day-container .b-calendar-cell:not(:last-of-type) {
    border-inline-end: 1px solid var(--b-day-view-border-color)
}

.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event,
.b-day-view-day-container .b-calendar-cell .b-cal-event-wrap {
    position: absolute;
    z-index: 2;
    left: 0;
    width: 100%;
    transition: left .1s, right .1s, width .1s, opacity .1s, top .2s, height .2s
}

.b-rtl :is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap) {
    left: auto;
    right: 0
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-cal-tentative-event {
    transition: left .1s, right .1s, width .1s, opacity .1s
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-editing {
    left: 0 !important;
    z-index: 3;
    opacity: 1;
    width: calc(100% + var(--bi-day-view-cell-gutter)) !important
}

.b-rtl :is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-editing {
    left: auto !important;
    right: 0 !important
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-cal-in-cluster .b-cal-event {
    box-shadow: #aaaaaa20 -2px 1px 3px, #aaaaaa20 0 -1px 3px
}

.b-multi-day-view :is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-cal-in-cluster.b-cal-event-reveal {
    left: 0 !important;
    z-index: 3;
    opacity: 1;
    width: calc(100% + var(--bi-day-view-cell-gutter)) !important
}

.b-rtl :is(.b-multi-day-view :is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-cal-in-cluster.b-cal-event-reveal) {
    left: auto !important;
    right: 0 !important
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event .b-event-header {
    margin: 0 0 0 auto
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event .b-event-header .b-icon {
    margin-inline-start: auto
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event .b-cal-event-body {
    padding-block: 0;
    align-items: center;
    flex-flow: row-reverse nowrap;
    justify-content: flex-end;
    gap: .2em
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event .b-cal-event-body .b-cal-event-desc {
    font-size: .8em;
    white-space: nowrap;
    flex: 0 1 auto;
    padding-block-end: 0
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event .b-event-time {
    text-transform: lowercase;
    line-height: var(--b-day-view-event-desc-line-height)
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event .b-event-time:not(:last-child) {
    display: none
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event .b-cal-event-footer,
:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event .b-cal-event-resource-avatars {
    display: none
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event .b-event-action-buttons {
    inset-block-start: calc(50% - .5em)
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event .b-event-action-buttons .b-tool {
    font-size: 65%;
    height: 1.4em;
    width: 3.8em
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event.b-milestone {
    clip-path: polygon(0 0, 100% 0, calc(100% - .5em) 100%, .5em 100%)
}

:is(.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event, .b-day-view-day-container .b-calendar-cell .b-cal-event-wrap).b-short-event.b-milestone .b-cal-event-body {
    padding: 0 .5em
}

.b-day-view-day-container .b-calendar-cell .b-cal-tentative-event {
    z-index: 20
}

.b-day-view-day-container .b-calendar-cell .b-cal-event {
    align-items: stretch;
    position: relative;
    color: var(--b-day-view-event-color)
}

.b-day-view-day-container .b-calendar-cell .b-cal-event .b-cal-event-resource-avatars {
    display: grid;
    column-gap: 0;
    grid-template-columns: repeat(auto-fill, minmax(1.6em, 1fr));
    padding-inline-end: .6em;
    padding-block: var(--b-calendar-event-bar-gap)
}

.b-day-view-day-container .b-calendar-cell .b-cal-event .b-cal-event-resource-avatars .b-resource-avatar {
    width: 2em;
    height: 2em;
    transition: scale .2s
}

.b-day-view-day-container .b-calendar-cell .b-cal-event .b-cal-event-resource-avatars .b-resource-avatar:hover {
    z-index: 1;
    scale: var(--b-day-view-resource-avatar-hover-scale)
}

.b-day-view-day-container .b-calendar-cell .b-cal-event-body {
    flex: 1 1 0;
    white-space: normal;
    display: flex;
    flex-direction: column;
    transition: background .2s, color .2s;
    background: var(--b-day-view-body-background);
    border: var(--b-day-view-event-border);
    border-inline-start: var(--b-day-view-event-border-inline-start-width) solid var(--b-day-view-event-border-inline-start-color);
    border-radius: var(--b-day-view-event-border-radius);
    padding: var(--b-day-view-event-body-padding)
}

.b-day-view-day-container .b-calendar-cell .b-custom-event-background .b-cal-event-body {
    background: transparent;
    --b-day-view-event-selected-body-background: transparent;
    --b-day-view-event-hover-body-background: transparent
}

.b-day-view-day-container .b-calendar-cell.b-non-working-day {
    background: var(--b-day-view-non-working-day-background)
}

.b-day-view-day-container .b-calendar-cell.b-today {
    background: var(--b-day-view-today-background)
}

.b-day-view-day-container .b-event-header {
    display: flex;
    align-items: center;
    white-space: nowrap;
    font-size: .7em;
    gap: var(--b-calendar-event-bar-gap)
}

.b-day-view-day-container .b-event-header .b-event-time {
    flex: 1
}

.b-day-view-day-container .b-cal-event-wrap:hover .b-cal-event-body {
    background: var(--b-day-view-event-hover-body-background)
}

:is(.b-day-view-day-container .b-cal-event-wrap.b-selected:not(.b-dragging-item):hover, .b-day-view-day-container .b-cal-event-wrap.b-selected:not(.b-dragging-item)) .b-cal-event-body {
    background: var(--b-day-view-event-selected-body-background);
    color: var(--b-day-view-event-selected-color, var(--b-day-view-event-color))
}

.b-day-view-day-container .b-cal-event-wrap.b-custom-body-color:hover .b-cal-event-body {
    background: linear-gradient(var(--b-day-view-body-hover-mask-color), var(--b-day-view-body-hover-mask-color)) var(--b-day-view-body-background)
}

:is(.b-day-view-day-container .b-cal-event-wrap.b-custom-body-color.b-selected:not(.b-dragging-item):hover, .b-day-view-day-container .b-cal-event-wrap.b-custom-body-color.b-selected:not(.b-dragging-item), .b-day-view-day-container .b-cal-event-wrap.b-custom-body-color.b-cal-tentative-event) .b-cal-event-body {
    background: linear-gradient(var(--b-day-view-body-selected-mask-color), var(--b-day-view-body-selected-mask-color)) var(--b-day-view-body-background)
}

.b-day-view.b-no-transitions * {
    transition: none !important
}

.b-time-axis-container {
    display: flex;
    flex-flow: column nowrap;
    overflow: hidden;
    background-position-x: 100%;
    background-repeat: repeat-y;
    flex: 0 0 var(--bi-time-axis-width);
    min-width: var(--bi-time-axis-width);
    height: var(--bi-day-height);
    background-image: var(--bi-subtick-background), var(--bi-tick-background);
    background-size: .5em var(--bi-hour-height);
    background-position-y: var(--bi-day-start-offset);
    position: relative
}

.b-rtl .b-time-axis-container {
    background-position-x: 0
}

.b-time-axis-container .b-day-view-time-axis-background {
    pointer-events: none;
    position: absolute;
    inset: 0
}

.b-day-view-time-axis-tick {
    opacity: 0;
    transition: opacity .4s;
    flex: 1 0 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: relative;
    top: 1ex;
    max-height: calc(var(--bi-leaf-tick-height) + 1px)
}

.b-fit-hours .b-day-view-time-axis-tick {
    transition: none
}

.b-day-view-hour-tick {
    opacity: 1;
    color: var(--b-day-view-time-axis-hour-color)
}

.b-day-view-hour-tick.b-day-view-start-hour {
    position: absolute;
    max-height: fit-content;
    top: -3px
}

.b-day-view-time-axis-time {
    display: flex;
    flex-flow: column nowrap;
    align-items: flex-end;
    font-size: .7em;
    white-space: nowrap;
    position: relative;
    padding-inline-end: 1em;
    pointer-events: none;
    color: var(--b-day-view-time-axis-color);
    flex: 0 0 var(--bi-hour-height, 0);
    min-height: var(--bi-hour-height, 0)
}

.b-day-view-time-axis-time:last-child .b-day-view-hour-tick {
    display: none
}

.b-day-column-header {
    display: none
}

.b-has-day-header .b-day-column-header {
    display: flex;
    flex-flow: row nowrap;
    border-top: 1px solid var(--b-calendar-border-color)
}

.b-has-day-header .b-day-column-header:before {
    content: "";
    min-width: var(--bi-time-axis-width)
}

.b-has-day-header .b-day-column-header .b-day-column-header-scroller {
    flex: 1 1 0;
    border-inline-start: 1px solid var(--b-calendar-border-color)
}

.b-has-day-header .b-day-column-header .b-day-column-content {
    flex: 1 0 0;
    display: flex;
    flex-flow: row nowrap
}

.b-day-column-header-cell {
    padding-inline-start: .5em;
    display: flex;
    overflow: hidden;
    text-wrap: nowrap;
    flex: 1 0 var(--bi-min-day-width, 0);
    min-width: var(--bi-min-day-width, 0)
}

.b-day-column-header-cell:not(:last-of-type) {
    border-inline-end: 1px solid var(--b-calendar-border-color)
}

:root,
:host {
    --b-day-agenda-view-hour-hover-background: var(--b-neutral-95)
}

.b-internal {
    --bi-gutter-width: null;
    --bi-min-event-width: null
}

.b-day-agenda-view {
    --bi-hour-cell-padding-inline-start: .5em;
    --bi-hour-event-padding-top: .5em;
    --bi-hour-border-width: 1px;
    --bi-hour-border-color: var(--b-day-view-hour-line-color);
    --bi-event-flow-direction: column;
    --bi-event-spacing: 5px;
    --bi-hour-width: var(--bi-time-axis-width)
}

.b-day-agenda-view .b-day-view-day-content {
    flex: 1 1 auto
}

.b-day-agenda-view .b-day-view-day-container {
    background-image: none;
    clip-path: none
}

.b-day-agenda-view .b-day-agenda-hour-time {
    font-size: 70%;
    display: flex;
    justify-content: center;
    border-inline-end: var(--bi-hour-border-width) solid var(--bi-hour-border-color)
}

.b-day-agenda-view .b-day-agenda-hour-time,
.b-day-agenda-view .b-day-agenda-hour-events {
    padding-top: var(--bi-hour-event-padding-top);
    padding-bottom: var(--bi-event-spacing)
}

.b-day-agenda-view .b-day-view-day-detail.b-calendar-cell {
    display: flex;
    flex-direction: column;
    height: auto
}

.b-day-agenda-view .b-day-view-day-detail.b-calendar-cell .b-day-agenda-hour {
    display: grid;
    position: relative;
    grid-template-columns: var(--bi-hour-width) 1fr;
    border-bottom: var(--bi-hour-border-width) solid var(--bi-hour-border-color);
    flex: 0 0 var(--bi-hour-height)
}

.b-day-agenda-view .b-day-view-day-detail.b-calendar-cell .b-day-agenda-hour.b-hover-hour:before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: -1;
    background: var(--b-day-agenda-view-hour-hover-background)
}

.b-day-agenda-view .b-day-view-day-detail.b-calendar-cell .b-day-agenda-hour-events {
    display: flex;
    overflow: hidden;
    flex-direction: var(--bi-event-flow-direction);
    gap: var(--bi-event-spacing);
    padding-inline: var(--bi-hour-cell-padding-inline-start) var(--bi-gutter-width)
}

.b-day-agenda-view .b-day-view-day-detail.b-calendar-cell .b-day-agenda-hour-events .b-cal-event-wrap {
    position: relative
}

.b-event-flow-row :is(.b-day-agenda-view .b-day-view-day-detail.b-calendar-cell .b-day-agenda-hour-events) {
    flex-wrap: wrap
}

.b-day-agenda-view .b-day-view-day-detail.b-calendar-cell .b-cal-event-body {
    padding: .5em
}

.b-day-agenda-view .b-day-view-day-detail.b-calendar-cell .b-cal-drag-proxy {
    opacity: 1
}

.b-day-agenda-view .b-day-view-day-detail.b-calendar-cell:has(.b-cal-drag-proxy) {
    z-index: 1
}

.b-day-agenda-view .b-day-view-day-detail.b-calendar-cell:has(.b-cal-drag-proxy) .b-cal-event {
    background-image: none;
    padding: 0
}

.b-day-agenda-view.b-multi-day-view:is(.b-hide-time-axis, :not(.b-synced-hour-heights)) .b-day-view-all-day-row-start {
    display: none
}

.b-day-agenda-view.b-multi-day-view:not(.b-synced-hour-heights, .b-hide-time-axis) .b-day-view-day-detail.b-calendar-cell:before {
    content: "";
    position: absolute;
    top: 0;
    width: 1px;
    height: 100%;
    inset-inline-start: calc(var(--bi-time-axis-width) - 1px);
    background-color: var(--b-day-view-hour-line-color)
}

.b-day-agenda-view:not(.b-multi-day-view).b-hide-time-axis .b-day-view-all-day-row-start {
    display: none
}

.b-day-agenda-view:not(.b-multi-day-view):not(.b-hide-time-axis) .b-day-view-day-detail.b-calendar-cell:before {
    content: "";
    position: absolute;
    top: 0;
    width: 1px;
    height: 100%;
    inset-inline-start: calc(var(--bi-time-axis-width) - 1px);
    background-color: var(--b-day-view-hour-line-color)
}

.b-day-agenda-view:not(.b-multi-day-view):not(.b-hide-time-axis) .b-day-view-day-container {
    border-inline-start-color: transparent
}

.b-day-agenda-view.b-event-flow-row .b-day-view-day-detail.b-calendar-cell .b-day-agenda-hour-events {
    flex-wrap: wrap
}

.b-day-agenda-view.b-event-flow-row .b-day-view-day-detail.b-calendar-cell .b-day-agenda-hour-events .b-cal-event-wrap {
    flex: 1;
    width: auto;
    min-width: clamp(var(--bi-min-event-width), 100%)
}

.b-day-agenda-view.b-hide-borders {
    --bi-hour-border-width: 0
}

.b-day-agenda-view.b-hide-borders .b-calendar-cell .b-day-agenda-hour-events {
    padding-bottom: 0
}

.b-day-agenda-view.b-hide-borders .b-day-view-day-detail.b-calendar-cell .b-day-agenda-hour-events .b-cal-event-wrap {
    margin-bottom: 0
}

.b-day-agenda-view.b-hide-borders .b-day-agenda-hour.b-hover-hour:before {
    inset-block: calc(var(--bi-hour-event-padding-top) / 2)
}

.b-day-agenda-view .b-time-axis-container {
    display: none;
    height: fit-content;
    background-image: none
}

.b-day-agenda-view .b-time-axis-container .b-day-agenda-hour {
    display: grid;
    border-bottom: var(--bi-hour-border-width) solid var(--bi-hour-border-color);
    flex: 0 0 var(--bi-hour-height)
}

.b-day-agenda-view .b-time-axis-container .b-day-agenda-hour-events {
    display: none
}

:is(.b-day-agenda-view.b-hide-time-axis, .b-day-agenda-view.b-multi-day-view.b-synced-hour-heights):not(.b-hide-time-axis) .b-time-axis-container,
:is(.b-day-agenda-view.b-hide-time-axis, .b-day-agenda-view.b-multi-day-view.b-synced-hour-heights):not(.b-hide-time-axis) .b-day-view-all-day-row-start {
    display: flex
}

:is(.b-day-agenda-view.b-hide-time-axis, .b-day-agenda-view.b-multi-day-view.b-synced-hour-heights) .b-day-view-day-detail.b-calendar-cell .b-day-agenda-hour-time {
    display: none
}

:is(.b-day-agenda-view.b-hide-time-axis, .b-day-agenda-view.b-multi-day-view.b-synced-hour-heights) .b-day-view-day-detail.b-calendar-cell .b-day-agenda-hour {
    grid-template-columns: 1fr
}

:is(.b-day-agenda-view.b-hide-time-axis, .b-day-agenda-view.b-multi-day-view.b-synced-hour-heights) .b-day-view-day-detail.b-calendar-cell .b-cal-tentative-event {
    margin-left: 0
}

.b-day-agenda-view .b-day-view-day-container,
.b-day-agenda-view .b-day-view-schedule-container {
    border-inline-start: 0 none
}

.b-day-agenda-view.b-hide-empty-hours .b-day-agenda-hour:not(.b-has-events) {
    display: none
}

.b-internal {
    --bi-min-day-width: null;
    --bi-day-height: null;
    --bi-min-resource-width: null
}

.b-day-resource-view-column {
    display: flex;
    flex: 1 0 var(--bi-min-day-width, auto);
    height: var(--bi-day-height);
    position: relative
}

.b-day-resource-view-column .b-calendar-cell {
    min-width: var(--bi-min-resource-width)
}

.b-day-resource-view-column:not(.b-last-cell),
.b-day-resource-view-column .b-day-resource-all-day {
    border-inline-end: var(--b-month-view-cell-border-width) solid var(--b-day-resource-calendar-row-border-color)
}

.b-day-column-header-cell:not(:last-of-type) {
    border-inline-end: 1px solid var(--b-day-resource-calendar-row-border-color)
}

:root,
:host {
    --b-event-list-day-selector-selected-date-background: var(--b-calendar-today-background, var(--b-date-picker-today-background, transparent));
    --b-event-list-day-selector-selected-date-color: var(--b-calendar-today-color, var(--b-date-picker-today-color, var(--b-primary-50)));
    --b-event-list-event-column-resource-row-gap: .3em
}

@media print {
    .b-cal-widget-settings-button {
        display: none
    }
}

.b-event-list .b-grid-panel-body {
    background: var(--b-calendar-background)
}

.b-event-list:has(.b-grid-body-container.b-vertical-overflow) {
    --bi-settings-button-extra-inset: var(--bi-scrollbar-width)
}

.b-event-list .b-cal-widget-settings-button {
    position: absolute;
    font-size: 110%;
    border-radius: 50%;
    inset-inline-start: auto;
    inset-inline-end: calc(1em + var(--bi-settings-button-extra-inset, 0px));
    margin-top: 1em;
    z-index: 100;
    width: 3em;
    height: 3em;
    box-shadow: none
}

.b-event-list [data-column=name] .b-icon-circle:before {
    font-size: var(--b-calendar-event-circle-icon-size)
}

.b-calendar-events-cell {
    padding: 1em;
    gap: 1em;
    flex-wrap: wrap;
    align-items: flex-start
}

.b-calendar-events-cell .b-cal-event-resource-avatars {
    flex-basis: 30%;
    flex-direction: column;
    min-width: var(--b-avatar-size);
    gap: var(--b-event-list-event-column-resource-row-gap)
}

.b-cal-event-resource-avatar-row {
    display: flex;
    flex-flow: row nowrap;
    gap: 1em;
    align-items: center
}

.b-cal-event-resource-avatar-desc {
    display: flex;
    flex-flow: column;
    gap: .3em
}

.b-cal-event-column-event-desc {
    margin-inline-start: auto;
    display: flex;
    flex-direction: column !important;
    flex-flow: row nowrap;
    justify-content: center;
    height: var(--b-avatar-size)
}

.b-cal-event-column-times {
    display: flex;
    flex-direction: column
}

.b-event-column-resource-role {
    font-size: 80%;
    font-weight: 300
}

.b-cal-event-list-event-time {
    display: flex;
    align-items: center;
    min-height: var(--b-avatar-size)
}

.b-cal-event-column-event-name {
    font-weight: 700
}

:root,
:host {
    --b-agenda-view-non-working-day-background: var(--b-neutral-98);
    --b-agenda-view-cell-color: var(--b-calendar-foreground-color);
    --b-agenda-view-cell-padding-inline: 0;
    --b-agenda-view-cell-padding-block: 1.5em;
    --b-agenda-view-date-width: 14em;
    --b-agenda-view-time-width: 12em;
    --b-agenda-view-time-width-small: 7.5em;
    --b-agenda-view-date-padding: .2em 1em 0 1em;
    --b-agenda-view-date-number-margin: 0 .1em 0 0;
    --b-agenda-view-date-number-font-size: 3em;
    --b-agenda-view-today-date-number-font-size: 75%;
    --b-agenda-view-header-padding: .5em 0 .5em .5em;
    --b-agenda-view-date-margin: 0px
}

.b-internal {
    --bi-event-row-spacing: null
}

.b-agenda-view.b-grid-base.b-enable-sticky .b-grid-sub-grid.b-grid-horizontal-scroller {
    overflow: visible !important
}

.b-agenda-view.b-grid-base.b-enable-sticky .b-virtual-scrollers {
    display: none !important
}

.b-agenda-view.b-grid-base.b-enable-sticky .b-cal-agenda-date {
    position: sticky;
    top: calc(var(--b-agenda-view-cell-padding-block) + var(--b-agenda-view-date-margin));
    z-index: 12
}

.b-agenda-view.b-grid-base.b-enable-sticky.b-responsive-small {
    --b-agenda-view-cell-padding-inline: 1em;
    --b-agenda-view-cell-padding-block: 1em
}

.b-agenda-view.b-grid-base.b-enable-sticky.b-responsive-small .b-agenda-cell {
    border: 0 none
}

.b-agenda-view.b-grid-base.b-enable-sticky.b-responsive-small .b-agenda-cell .b-cal-agenda-date {
    top: 0;
    min-height: 4em;
    background: var(--b-panel-background);
    box-shadow: 0 3px 3px rgba(var(--b-calendar-border-color), .4)
}

.b-agenda-view.b-grid-base.b-enable-sticky.b-responsive-small .b-agenda-cell.b-non-working-day .b-cal-agenda-date {
    background: var(--b-agenda-view-non-working-day-background)
}

.b-agenda-view.b-grid-base.b-enable-sticky.b-responsive-small .b-cal-agenda-event-row:last-of-type {
    padding-bottom: calc(var(--b-agenda-view-cell-padding-block) / 2)
}

.b-agenda-view .b-cal-event-bar-container {
    contain: inline-size
}

.b-agenda-view .b-cal-event-bar-container .b-cal-event-desc {
    display: block
}

.b-agenda-view .b-grid-cell:after {
    content: "";
    display: table;
    clear: both
}

.b-agenda-view .b-cal-event-list-event-time {
    min-height: auto;
    white-space: nowrap;
    flex: 0 0 var(--b-agenda-view-time-width)
}

.b-agenda-view.b-responsive-small .b-cal-event-list-event-time {
    flex: 0 0 var(--b-agenda-view-time-width-small)
}

.b-agenda-view.b-responsive-small .b-cal-agenda-grid-row .b-calendar-cell {
    display: block
}

.b-agenda-view.b-grid-empty .b-empty-text {
    position: static
}

.b-new-month .b-agenda-column-cell {
    box-shadow: inset #aaa 0 10px 15px -15px
}

.b-new-month .b-cal-agenda-date-date-text :nth-child(2) {
    font-weight: 700
}

.b-agenda-view-day-selector .b-calendar-row-body {
    display: none
}

.b-cal-agenda-grid-row.b-selected,
.b-grid-body-container:focus .b-cal-agenda-grid-row.b-selected,
.b-grid-base .b-cal-agenda-grid-row.b-grid-row.b-hover .b-grid-cell.b-calendar-cell,
.b-grid-base .b-cal-agenda-grid-row.b-grid-row.b-hover .b-grid-cell.b-calendar-cell:not(.b-non-working-day):hover {
    background-color: transparent
}

:is(.b-cal-agenda-grid-row.b-selected, .b-grid-body-container:focus .b-cal-agenda-grid-row.b-selected, .b-grid-base .b-cal-agenda-grid-row.b-grid-row.b-hover .b-grid-cell.b-calendar-cell, .b-grid-base .b-cal-agenda-grid-row.b-grid-row.b-hover .b-grid-cell.b-calendar-cell:not(.b-non-working-day):hover) .b-calendar-cell.b-non-working-day {
    background: var(--b-agenda-view-non-working-day-background)
}

.b-agenda-view .b-cal-agenda-grid-row .b-calendar-cell {
    flex-direction: row;
    contain: style;
    font-weight: inherit;
    flex: 1 1 100%;
    margin: 0;
    align-items: flex-start;
    color: var(--b-agenda-view-cell-color);
    padding-inline: var(--b-agenda-view-cell-padding-inline);
    padding-block: var(--b-agenda-view-cell-padding-block)
}

.b-agenda-view .b-cal-agenda-grid-row .b-calendar-cell.b-non-working-day {
    background: var(--b-agenda-view-non-working-day-background)
}

.b-agenda-view .b-cal-agenda-grid-row .b-calendar-cell:focus-within {
    outline: 0 none !important
}

.b-agenda-view-with-day-selector :is(.b-agenda-view .b-cal-agenda-grid-row .b-calendar-cell) {
    padding-inline-start: 1.5em
}

.b-cal-agenda-grid-row .b-cal-event-bar-container .b-cal-event-wrap {
    position: relative;
    overflow: hidden
}

.b-cal-agenda-event-row {
    flex: 1;
    display: flex;
    flex-flow: row nowrap;
    align-self: stretch
}

.b-cal-agenda-event-row:not(:last-child) {
    margin-bottom: var(--bi-event-row-spacing)
}

.b-cal-agenda-date {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    height: 2.6em;
    flex: 0 0 var(--b-agenda-view-date-width);
    padding: var(--b-agenda-view-date-padding);
    margin: var(--b-agenda-view-date-margin)
}

.b-agenda-view-with-day-selector .b-cal-agenda-date {
    display: none
}

.b-cal-agenda-date-date-number {
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    width: 1.5em;
    height: 1.5em;
    border-radius: 50%;
    margin: var(--b-agenda-view-date-number-margin);
    font-size: var(--b-agenda-view-date-number-font-size)
}

.b-cal-agenda-date-date-number:hover {
    background: var(--b-calendar-date-hover-background)
}

.b-today .b-cal-agenda-date-date-number {
    background: var(--b-calendar-today-background, var(--b-date-picker-today-background, transparent));
    border: var(--b-calendar-today-border, var(--b-date-picker-today-border, 1px solid var(--b-date-picker-today-color, var(--b-primary-50))));
    color: var(--b-calendar-today-color, var(--b-date-picker-today-color, var(--b-primary-50)))
}

.b-cal-agenda-header {
    flex: 1;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    padding: var(--b-agenda-view-header-padding)
}

.b-cal-agenda-header-date {
    width: var(--b-agenda-view-date-width)
}

.b-cal-agenda-header-time {
    width: var(--b-agenda-view-time-width)
}

:root,
:host {
    --b-month-view-background: var(--b-calendar-background);
    --b-month-view-border-inline-width: 1px;
    --b-month-view-cell-border-width: 1px;
    --b-month-view-border-color: var(--b-calendar-border-color);
    --b-month-view-event-padding: 1px;
    --b-month-view-padding: .6em 0 0 0;
    --b-month-view-event-bar-font-size: .9em;
    --b-month-view-header-cell-color: var(--b-calendar-foreground-color);
    --b-month-view-header-cell-weekend-color: var(--b-color-red);
    --b-month-view-week-cell-background: var(--b-calendar-week-cell-background);
    --b-month-view-week-cell-color: var(--b-calendar-week-cell-color);
    --b-month-view-week-cell-hover-background: var(--b-calendar-week-cell-hover-background);
    --b-month-view-week-cell-hover-color: var(--b-calendar-week-cell-hover-color);
    --b-month-view-week-cell-hover-border-radius: var(--b-calendar-week-cell-hover-border-radius);
    --b-month-view-week-column-width: 2em;
    --b-month-view-weekrow-toggle-tool-hover-color: rgba(90, 90, 90, .2);
    --b-month-view-cell-header-padding: 2px 2px 0 0;
    --b-month-view-cell-header-background: null;
    --b-month-view-cell-header-color: var(--b-text-2);
    --b-month-view-cell-header-hover-background: var(--b-calendar-date-hover-background);
    --b-month-view-cell-header-hover-color: null;
    --b-month-view-cell-header-hover-border-radius: 3px;
    --b-month-view-cell-header-week-color: var(--b-calendar-week-cell-color);
    --b-month-view-cell-header-content-height: 2em;
    --b-month-view-cell-header-day-num-font-size: .9em;
    --b-month-view-cell-header-dayname-height: 1.8em;
    --b-month-view-cell-color: var(--b-calendar-foreground-color);
    --b-month-view-cell-weekend-color: var(--b-calendar-foreground-color);
    --b-month-view-cell-other-month-color: var(--b-calendar-other-month-foreground-color);
    --b-month-view-today-day-num-font-weight: var(--b-calendar-today-font-weight);
    --b-month-view-non-working-day-background: var(--b-calendar-non-working-day-background)
}

.b-internal {
    --bi-visible-week-count: null;
    --bi-min-row-height: null;
    --bi-week-length: null;
    --bi-min-column-width: null
}

.b-month-view {
    background: transparent;
    --bi-week-length: 7;
    --bi-min-column-width: calc(100% / var(--bi-week-length, 7));
    --b-calendar-panel-weeks-gap: 0;
    --bi-week-column-decrement: 0px
}

.b-month-view.b-show-week-column {
    --bi-week-column-decrement: calc(var(--b-month-view-week-column-width) / var(--bi-week-length))
}

.b-visible-scrollbar .b-month-view .b-show-yscroll-padding>.b-yscroll-pad {
    visibility: hidden
}

.b-month-view.b-hide-other-month-cells .b-calendar-panel-row[data-row-index="0"] .b-calendar-cell[data-date$="-01"]:not([data-column-index="0"]) {
    border-inline-start: var(--b-month-view-cell-border-width) solid var(--b-month-view-border-color);
    margin-inline-start: calc(var(--b-month-view-cell-border-width) * -1)
}

.b-month-view.b-disable-other-month-cells .b-calendar-cell.b-other-month .b-cal-event-wrap:not(.b-overflow) {
    opacity: 1;
    pointer-events: all
}

.b-month-view .b-calendar-panel-row.b-calendar-week-days {
    flex: 0 0 auto
}

.b-month-view .b-calendar-panel-row.b-calendar-week-days .b-week-number-cell {
    flex: 0 0 var(--b-month-view-week-column-width)
}

.b-month-view .b-calendar-day-header {
    flex: 1;
    min-width: calc(var(--bi-min-column-width) - var(--bi-week-column-decrement));
    display: flex;
    justify-content: flex-end;
    padding-inline-end: .5em;
    padding-bottom: .25em;
    color: var(--b-month-view-header-cell-color)
}

.b-month-view .b-calendar-day-header.b-weekend {
    color: var(--b-month-view-header-cell-weekend-color)
}

.b-month-view .b-week-number-cell,
.b-month-view .b-calendar-cell:not(.b-grid-cell) {
    flex-direction: column;
    contain: size style
}

:is(.b-month-view .b-week-number-cell, .b-month-view .b-calendar-cell:not(.b-grid-cell)).b-other-month .b-day-num {
    color: var(--b-month-view-cell-other-month-color)
}

.b-month-view .b-day-num[data-start-of] {
    padding-inline: .5em
}

.b-month-view .b-day-num[data-start-of]:before {
    content: attr(data-start-of);
    color: initial;
    font-weight: 700;
    margin-inline-end: .5em
}

@media screen and (max-width: 450px) {
    .b-month-view.b-show-week-number .b-calendar-cell:first-child .b-day-num[data-start-of] {
        padding-inline: 0 .2em
    }

    .b-month-view.b-show-week-number .b-calendar-cell:first-child .b-day-num[data-start-of]:before {
        margin-inline-end: .1em
    }
}

.b-month-view .b-week-num,
.b-month-view .b-day-num {
    margin-inline-end: 0;
    align-self: flex-end;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--b-month-view-cell-header-day-num-font-size);
    height: var(--b-month-view-cell-header-content-height);
    min-width: var(--b-month-view-cell-header-content-height)
}

:is(.b-month-view .b-week-num, .b-month-view .b-day-num):focus-visible {
    outline: var(--b-widget-focus-outline-width) solid var(--b-widget-focus-outline-color);
    outline-offset: calc(var(--b-widget-focus-outline-width) * -1)
}

.b-month-view .b-week-num {
    display: none
}

.b-month-view.b-show-week-number .b-week-num {
    display: flex
}

.b-month-view .b-calendar-cell {
    display: flex;
    flex-direction: column
}

.b-month-view .b-calendar-cell .b-week-num {
    margin-inline-end: auto;
    color: var(--b-month-view-cell-header-week-color)
}

.b-month-view .b-weeks-container {
    flex: 1 0 0%;
    --bi-min-week-height: max(var(--bi-min-row-height, 0px), var(--bi-two-event-row-height, 0px));
    --bi-flexed-row-height: max(calc(100% / var(--bi-visible-week-count)), var(--bi-min-week-height));
    border-inline: var(--b-month-view-border-inline-width) solid var(--b-month-view-border-color);
    border-block: var(--b-month-view-cell-border-width) solid var(--b-month-view-border-color)
}

.b-month-view .b-weeks-container .b-calendar-panel-row {
    transition: flex-basis .5s, min-height .5s;
    flex: 0 0 var(--bi-flexed-row-height);
    min-width: max(calc(var(--bi-min-column-width) * var(--bi-week-length)), 100%);
    border-bottom: var(--b-month-view-cell-border-width) solid var(--b-month-view-border-color)
}

.b-month-view .b-weeks-container .b-calendar-panel-row:last-child {
    border-bottom: 0 none
}

.b-month-view .b-weeks-container .b-calendar-panel-row.b-shrinkwrapped {
    overflow: hidden
}

.b-month-view .b-weeks-container .b-calendar-panel-row.b-shrinkwrapped:not(.b-has-overflow) .b-cal-cell-overflow {
    display: none
}

.b-month-view .b-weeks-container .b-calendar-panel-row.b-shrinkwrapped.b-flexing .b-cal-cell-overflow {
    display: initial
}

.b-month-view .b-weeks-container .b-calendar-panel-row.b-empty-row {
    flex: 1 1 var(--bi-flexed-row-height);
    min-height: max(var(--bi-one-event-row-height), var(--bi-min-row-height, 0px))
}

.b-month-view .b-weeks-container .b-calendar-panel-row .b-week-number-cell,
.b-month-view .b-weeks-container .b-calendar-panel-row .b-calendar-cell {
    flex: 1;
    color: var(--b-month-view-cell-color);
    border-inline-end: var(--b-month-view-cell-border-width) solid var(--b-month-view-border-color);
    overflow: hidden
}

:is(.b-month-view .b-weeks-container .b-calendar-panel-row .b-week-number-cell, .b-month-view .b-weeks-container .b-calendar-panel-row .b-calendar-cell):last-child {
    border-inline-end: 0 none
}

:is(.b-month-view .b-weeks-container .b-calendar-panel-row .b-week-number-cell, .b-month-view .b-weeks-container .b-calendar-panel-row .b-calendar-cell).b-weekend {
    color: var(--b-month-view-cell-weekend-color)
}

:is(.b-month-view .b-weeks-container .b-calendar-panel-row .b-week-number-cell, .b-month-view .b-weeks-container .b-calendar-panel-row .b-calendar-cell).b-today .b-day-num {
    border-radius: 50%;
    font-size: 85%;
    background: var(--b-month-view-today-day-num-background, var(--b-calendar-today-background, var(--b-date-picker-today-background, transparent)));
    border: var(--b-month-view-today-day-num-border, var(--b-calendar-today-border, var(--b-date-picker-today-border, 1px solid var(--b-date-picker-today-color, var(--b-primary-50)))));
    color: var(--b-month-view-today-day-num-color, var(--b-calendar-today-color, var(--b-date-picker-today-color, var(--b-primary-50))));
    font-weight: var(--b-month-view-today-day-num-font-weight)
}

:is(.b-month-view .b-weeks-container .b-calendar-panel-row .b-week-number-cell, .b-month-view .b-weeks-container .b-calendar-panel-row .b-calendar-cell).b-non-working-day {
    background: var(--b-month-view-non-working-day-background)
}

:is(.b-month-view .b-weeks-container .b-calendar-panel-row .b-week-number-cell, .b-month-view .b-weeks-container .b-calendar-panel-row .b-calendar-cell).b-non-working-day.b-dynamic-non-working-day {
    display: flex !important
}

.b-month-view .b-weeks-container .b-calendar-panel-row .b-week-number-cell {
    padding-top: 5px;
    text-align: center;
    cursor: pointer;
    flex: 0 0 auto;
    flex-flow: column nowrap;
    justify-content: space-between;
    min-width: var(--b-month-view-week-column-width);
    background: var(--b-month-view-week-cell-background);
    color: var(--b-month-view-week-cell-color)
}

.b-month-view .b-weeks-container .b-calendar-panel-row .b-week-number-cell:hover {
    background: var(--b-month-view-week-cell-hover-background);
    color: var(--b-month-view-week-cell-hover-color);
    border-radius: var(--b-month-view-week-cell-hover-border-radius)
}

.b-month-view .b-weeks-container.b-measuring-container-height .b-calendar-panel-row {
    transition: none !important;
    flex-shrink: 0 !important;
    min-height: var(--bi-flexed-row-height) !important
}

.b-month-view .b-weeks-container .b-calendar-panel-days {
    position: relative
}

.b-month-view .b-hide-non-working-days .b-weeks-container .b-last-working-day {
    border-inline-end: 0 none
}

.b-month-view .b-cal-cell-header {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    background: var(--b-month-view-cell-header-background);
    color: var(--b-month-view-cell-header-color);
    padding: var(--b-month-view-cell-header-padding);
    max-height: var(--b-month-view-cell-header-dayname-height)
}

.b-month-view .b-cal-cell-header .b-day-name {
    display: flex;
    align-items: center;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    height: var(--b-month-view-cell-header-dayname-height)
}

.b-month-view .b-cal-cell-header .b-day-num {
    z-index: 10;
    margin-inline-start: auto;
    position: relative;
    overflow: visible;
    height: var(--b-month-view-cell-header-content-height)
}

.b-month-view .b-cal-cell-header .b-day-num strong {
    position: absolute;
    inset-inline-end: calc(100% + .3em);
    color: initial
}

.b-month-view.b-day-number-center .b-cal-cell-header {
    justify-content: center
}

.b-month-view.b-show-week-column .b-week-num {
    display: none
}

.b-month-view.b-show-week-column .b-cal-cell-header {
    cursor: pointer
}

.b-month-view.b-show-week-column .b-cal-cell-header:hover {
    background: var(--b-month-view-cell-header-hover-background);
    color: var(--b-month-view-cell-header-hover-color);
    border-radius: var(--b-month-view-cell-header-hover-border-radius)
}

.b-month-view:not(.b-show-week-column) .b-day-name {
    cursor: pointer
}

:is(.b-month-view:not(.b-show-week-column) .b-week-num, .b-month-view:not(.b-show-week-column) .b-day-num):hover,
:is(.b-month-view:not(.b-show-week-column) .b-week-num, .b-month-view:not(.b-show-week-column) .b-day-num):focus-visible {
    cursor: pointer;
    background: var(--b-month-view-cell-header-hover-background);
    color: var(--b-month-view-cell-header-hover-color);
    border-radius: calc(var(--b-month-view-cell-header-content-height) / 2)
}

.b-month-view .b-month-view-content {
    contain: strict;
    flex-basis: 0;
    justify-content: flex-start;
    background: var(--b-month-view-background);
    padding: var(--b-month-view-padding)
}

.b-month-view .b-cal-event-bar-container,
.b-month-view .b-cal-cell-overflow {
    font-size: var(--b-month-view-event-bar-font-size)
}

.b-cal-event-list .b-panel-header .b-header-title {
    font-size: 1em;
    cursor: pointer
}

.b-notransition .b-month-view .b-weeks-container .b-calendar-panel-row {
    transition: none
}

:root,
:host {
    --b-resource-view-header-height: 4.5em
}

.b-internal {
    --bi-view-gap: null;
    --bi-resource-width: null
}

.b-resource-view {
    align-items: stretch;
    --b-panel-gap: 0;
    --b-panel-header-font-size: 1em;
    --b-panel-with-header-padding: 0
}

.b-resource-view .b-cal-widget-settings-button {
    display: none
}

.b-resource-view:has(.b-day-view:not(.b-resource-day-view-time-axis) .b-day-view-all-day-row-start.b-has-cell-overflow:not(.b-day-view-all-day-auto-height)) .b-resource-day-view-time-axis {
    cursor: pointer
}

.b-resource-view:has(.b-day-view:not(.b-resource-day-view-time-axis) .b-day-view-all-day-row-start.b-has-cell-overflow:not(.b-day-view-all-day-auto-height)) .b-resource-day-view-time-axis .b-expand-all-day-button {
    display: flex
}

.b-resource-view:has(.b-day-view:not(.b-resource-day-view-time-axis) .b-day-view-all-day-row-start.b-expanded) .b-expand-all-day-button {
    rotate: -180deg
}

.b-resource-view-content {
    flex-flow: row nowrap;
    align-items: stretch;
    padding: 0
}

.b-resource-view-content .b-day-view[data-duration="1"]:not(:focus-within) {
    --b-calendar-selected-date-border: 0 none
}

.b-resource-view-content>* {
    flex: 1 0 0;
    margin-inline-end: var(--bi-view-gap)
}

.b-resource-view-content>*.b-resource-view-resource {
    min-width: var(--bi-resource-width)
}

.b-resource-view-content>*.b-filtered-hiding {
    min-width: 0;
    width: 0;
    flex: none;
    border: 0 none;
    transition: width .3s
}

.b-resource-view-content>*:last-child,
.b-resource-view-content>*.b-last-resource-view {
    margin-inline-end: 0
}

.b-resource-view-content .b-panel-header {
    background: var(--b-day-view-background);
    border: 1px solid var(--b-day-view-border-color);
    border-block: none;
    border-radius: 0;
    color: var(--b-month-view-cell-color);
    height: var(--b-resource-view-header-height)
}

.b-resource-view-content .b-day-view.b-first-resource-view>.b-panel-header {
    border-inline-start: none
}

.b-resource-view-content>.b-day-view.b-resource-day-view-time-axis {
    position: sticky;
    z-index: 3
}

.b-resource-view-content>.b-day-view.b-resource-day-view-time-axis:first-child {
    inset-inline-start: 0;
    border-inline-end: 1px solid var(--b-day-view-border-color)
}

.b-resource-view-content>.b-day-view.b-resource-day-view-time-axis:first-child .b-day-view-day-container {
    display: none
}

.b-resource-view-content>.b-day-view.b-resource-day-view-time-axis .b-virtual-scrollers {
    display: none
}

.b-resource-view-content>.b-day-view.b-first-resource-view .b-day-view-schedule-container,
.b-resource-view-content>.b-day-view.b-first-resource-view .b-day-view-day-container {
    border-inline-start: 0 none
}

.b-resource-view-content>.b-day-view.b-last-resource-view .b-panel-header {
    border-inline-end: 0 none
}

.b-resource-view-content>.b-day-view.b-resource-day-view-scroller {
    inset-inline-end: 0;
    background: var(--b-day-view-background) !important;
    z-index: 1;
    border-inline-start: var(--b-day-view-split-width) solid var(--b-day-view-border-color)
}

.b-resource-view-content>.b-day-view.b-resource-day-view-scroller .b-day-view-time-axis-time,
.b-resource-view-content>.b-day-view.b-resource-day-view-scroller .b-day-view-all-day-row-start {
    display: none
}

.b-resource-view-content>.b-day-view.b-resource-day-view-scroller .b-day-view-day-container {
    visibility: hidden
}

.b-resource-view-content>.b-day-view.b-resource-day-view-scroller .b-time-axis-container {
    display: none
}

.b-resource-view-content>.b-day-view.b-resource-day-view-scroller .b-yscroll-pad {
    visibility: hidden
}

.b-resource-view-content>.b-day-view:not(.b-resource-day-view-time-axis, .b-resource-day-view-scroller):not(.b-last-resource-view) .b-day-view-day-container,
.b-resource-view-content>.b-day-view:not(.b-resource-day-view-time-axis, .b-resource-day-view-scroller):not(.b-last-resource-view) .b-day-view-schedule-container {
    border-inline-end: var(--b-day-view-split-width) solid var(--b-day-view-border-color)
}

.b-resource-view-content>.b-day-view:not(.b-resource-day-view-time-axis, .b-resource-day-view-scroller) .b-day-view-all-day-row-start,
.b-resource-view-content>.b-day-view:not(.b-resource-day-view-time-axis, .b-resource-day-view-scroller) .b-time-axis-container {
    display: none
}

.b-resource-view-content>.b-day-view.b-resource-day-view-time-axis,
.b-resource-view-content>.b-day-view.b-resource-day-view-scroller {
    flex: 0 0 auto;
    margin-inline-end: 0
}

:is(.b-resource-view-content>.b-day-view.b-resource-day-view-time-axis, .b-resource-view-content>.b-day-view.b-resource-day-view-scroller) .b-day-view-header {
    visibility: hidden;
    padding-inline: 0
}

:is(.b-resource-view-content>.b-day-view.b-resource-day-view-time-axis, .b-resource-view-content>.b-day-view.b-resource-day-view-scroller) .b-day-view-schedule-container {
    display: flex;
    max-width: 0;
    border: 0 none
}

.b-resource-view-content .b-day-view-day-container {
    overscroll-behavior: auto
}

.b-resource-view-content .b-month-view-content {
    padding-top: 0
}

.b-resource-view-content .b-month-view-content .b-calendar-week-days {
    padding: .5em 0;
    border-inline: 1px solid var(--b-day-view-border-color)
}

.b-resource-view-content .b-month-view-content .b-calendar-week-days .b-calendar-day-header {
    padding-bottom: 0
}

.b-resource-view-content>.b-event-list>.b-panel-body-wrap {
    border-inline: 1px solid var(--b-day-view-border-color)
}

.b-calendar .b-resource-view-title {
    display: grid;
    column-gap: 1em;
    row-gap: 0;
    align-items: center;
    justify-content: flex-start
}

.b-calendar .b-resource-view-title .b-resource-avatar {
    font-size: 1.2em
}

.b-calendar .b-resource-view-title.b-has-meta .b-resource-avatar {
    grid-row: 1 / span 2
}

.b-calendar .b-resource-view-title .b-resource-name,
.b-calendar .b-resource-view-title .b-resource-meta {
    grid-column: 2
}

.b-calendar .b-resource-view-title .b-resource-name {
    font-size: 1.1em
}

.b-calendar .b-resource-view-title .b-resource-meta {
    font-size: .7em;
    font-weight: 400
}

:root,
:host {
    --b-year-view-font-size: .9em;
    --b-year-view-font-size-big: 1.3em;
    --b-year-view-foreground-font-weight: 300;
    --b-year-view-background: var(--b-calendar-background);
    --b-year-view-foreground-color: var(--b-calendar-foreground-color);
    --b-year-view-row-gap: 3em;
    --b-year-view-column-gap: 1em;
    --b-year-view-content-padding: var(--b-panel-padding);
    --b-year-view-day-cell-size: 2em;
    --b-year-view-day-cell-color: var(--b-text-3);
    --b-year-view-month-max-width: 20em;
    --b-year-view-month-min-width: 16em;
    --b-year-view-month-name-font-size: 1.3em;
    --b-year-view-month-name-max-width: calc(var(--b-year-view-month-max-width) / var(--b-year-view-month-name-font-size));
    --b-year-view-month-name-cell-background: null;
    --b-year-view-month-name-cell-color: var(--b-calendar-week-cell-color);
    --b-year-view-month-name-cell-hover-background: var(--b-calendar-week-cell-hover-background);
    --b-year-view-month-name-cell-hover-color: var(--b-calendar-week-cell-hover-color);
    --b-year-view-week-cell-background: var(--b-neutral-98);
    --b-year-view-week-cell-color: var(--b-neutral-60);
    --b-year-view-week-cell-hover-background: var(--b-calendar-week-cell-hover-background);
    --b-year-view-week-cell-hover-color: var(--b-calendar-week-cell-hover-color);
    --b-year-view-cell-background: null;
    --b-year-view-cell-color: var(--b-calendar-foreground-color);
    --b-year-view-cell-hover-background: var(--b-calendar-week-cell-hover-background);
    --b-year-view-cell-hover-color: var(--b-text-2);
    --b-year-view-other-month-cell-color: var(--b-calendar-other-month-foreground-color);
    --b-year-view-1-to-3-events-color: var(--b-color-yellow);
    --b-year-view-4-to-6-events-color: var(--b-color-orange);
    --b-year-view-7-or-more-events-color: var(--b-color-red);
    --b-year-view-events-hover-blend-mode: multiply;
    --b-year-view-dragproxy-background: linear-gradient(rgba(255, 255, 255, .8), rgba(255, 255, 255, .8)) currentColor
}

.b-colorize {
    --b-year-view-heatmap-background: var(--b-primary-85);
    --b-year-view-heatmap-hover-background: var(--b-primary-75);
    --b-year-view-tentative-event-color: var(--b-primary-75);
    --b-year-view-tentative-event-color2: var(--b-primary-90);
    --b-year-view-today-cell-font-weight: var(--b-calendar-today-font-weight)
}

.b-year-view {
    background: transparent
}

.b-year-view-content {
    flex-basis: 0;
    display: flex;
    flex-flow: row wrap;
    align-content: flex-start;
    justify-content: space-around;
    font-size: var(--b-year-view-font-size);
    font-weight: var(--b-year-view-foreground-font-weight);
    padding: var(--b-year-view-content-padding);
    column-gap: var(--b-year-view-column-gap);
    row-gap: var(--b-year-view-row-gap);
    padding-inline-start: max(calc((25% - var(--b-year-view-month-max-width) + var(--b-year-view-row-gap)) - var(--b-year-view-content-padding) * 2), var(--b-year-view-content-padding))
}

.b-year-view-content.b-show-events-dots .b-calendar-cell {
    height: 2.3em
}

.b-year-view-content.b-show-events-count .b-cell-events-badge {
    position: absolute;
    inset-block-start: 1.6EM;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    flex-shrink: 0;
    font-size: var(--b-date-picker-cell-badge-font-size);
    background: var(--b-date-picker-cell-badge-background);
    color: var(--b-date-picker-cell-badge-color);
    width: var(--b-date-picker-cell-badge-size);
    height: var(--b-date-picker-cell-badge-size);
    transform: var(--b-date-picker-cell-badge-transform)
}

.b-year-view-body-wrap .b-year-view-content {
    background: var(--b-year-view-background);
    color: var(--b-year-view-foreground-color)
}

.b-year-view.b-responsive-small .b-year-view-content {
    font-size: var(--b-year-view-font-size-big)
}

.b-year-view-content .b-year-view-month {
    display: flex;
    flex-flow: column nowrap;
    height: min-content;
    flex-basis: calc(25% - var(--b-year-view-column-gap));
    min-width: var(--b-year-view-month-min-width)
}

.b-year-view-content .b-year-view-month-name {
    margin-bottom: .4em;
    padding: .1em 0 .2em .3em;
    border: 0 none;
    text-align: start;
    font-family: inherit;
    font-weight: inherit;
    font-size: var(--b-year-view-month-name-font-size);
    color: var(--b-year-view-month-name-cell-color);
    background: var(--b-year-view-month-name-cell-background);
    max-width: var(--b-year-view-month-name-max-width)
}

.b-year-view-content .b-year-view-month-name:hover {
    cursor: pointer;
    background: var(--b-year-view-month-name-cell-hover-background);
    color: var(--b-year-view-month-name-cell-hover-color)
}

.b-year-view-content .b-calendar-week-days {
    height: 2.1em
}

.b-year-view.b-responsive-small .b-year-view-content .b-calendar-week {
    max-width: 100%
}

.b-year-view-content .b-calendar-week {
    display: flex;
    flex-flow: row nowrap;
    max-width: var(--b-year-view-month-max-width)
}

.b-year-view-content .b-calendar-week:last-child {
    margin-bottom: var(--b-year-view-content-padding)
}

.b-year-view-content .b-calendar-week>* {
    flex: 1 1 auto;
    display: flex;
    justify-content: center;
    align-items: center
}

.b-year-view-content .b-year-view-weekday-cell {
    color: var(--b-year-view-day-cell-color)
}

.b-year-view-content.b-hide-week-numbers .b-week-number-cell {
    display: none
}

.b-year-view-content .b-cal-cell-overflow.b-active {
    outline: 0 none;
    opacity: 1 !important;
    z-index: 10 !important;
    box-shadow: 5px 5px 10px #0003, -5px 2px 5px #0003
}

.b-year-view-content .b-cal-cell-overflow:hover {
    background-color: inherit
}

.b-year-view-content:not(.b-draggable-active) .b-calendar-cell.b-date-picker-1-to-3-events:hover,
.b-year-view-content:not(.b-draggable-active) .b-calendar-cell.b-date-picker-4-to-6-events:hover,
.b-year-view-content:not(.b-draggable-active) .b-calendar-cell.b-date-picker-7-or-more-events:hover {
    border-radius: 0
}

:is(.b-year-view-content:not(.b-draggable-active) .b-calendar-cell.b-date-picker-1-to-3-events:hover, .b-year-view-content:not(.b-draggable-active) .b-calendar-cell.b-date-picker-4-to-6-events:hover, .b-year-view-content:not(.b-draggable-active) .b-calendar-cell.b-date-picker-7-or-more-events:hover) .b-calendar-cell-inner {
    background-color: var(--b-year-view-heatmap-hover-background)
}

.b-year-view-content:not(.b-draggable-active) .b-calendar-cell .b-calendar-cell-inner:hover {
    cursor: pointer;
    background: var(--b-year-view-cell-hover-background);
    color: var(--b-year-view-cell-hover-color)
}

.b-year-view-content.b-show-events-heatmap .b-date-picker-1-to-3-events,
.b-year-view-content.b-show-events-heatmap .b-date-picker-4-to-6-events,
.b-year-view-content.b-show-events-heatmap .b-date-picker-7-or-more-events {
    background: var(--b-year-view-heatmap-background)
}

.b-year-view-content.b-show-events-heatmap .b-date-picker-1-to-3-events {
    --b-primary: var(--b-year-view-1-to-3-events-color)
}

.b-year-view-content.b-show-events-heatmap .b-date-picker-4-to-6-events {
    --b-primary: var(--b-year-view-4-to-6-events-color)
}

.b-year-view-content.b-show-events-heatmap .b-date-picker-7-or-more-events {
    --b-primary: var(--b-year-view-7-or-more-events-color)
}

.b-year-view-content .b-calendar-cell {
    position: relative
}

.b-year-view-content .b-calendar-cell.b-cal-tentative-event {
    background-color: var(--b-year-view-tentative-event-color)
}

.b-year-view-content .b-calendar-cell.b-cal-tentative-event.b-other-month {
    background-color: var(--b-year-view-tentative-event-color2)
}

.b-year-view-content .b-calendar-cell .b-cal-minimal-event-container {
    inset: auto 0 0;
    position: absolute;
    display: flex;
    justify-content: center
}

.b-year-view-content .b-calendar-cell .b-calendar-cell-inner {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--b-year-view-cell-background);
    height: var(--b-year-view-day-cell-size);
    width: var(--b-year-view-day-cell-size)
}

.b-year-view-content .b-calendar-cell.b-today .b-calendar-cell-inner {
    border-radius: 50%;
    background: var(--b-year-view-today-cell-background, var(--b-calendar-today-background, var(--b-date-picker-today-background, transparent)));
    border: var(--b-year-view-today-cell-border, var(--b-calendar-today-border, var(--b-date-picker-today-border, 1px solid var(--b-date-picker-today-color, var(--b-primary-50)))));
    color: var(--b-year-view-today-cell-color, var(--b-calendar-today-color, var(--b-date-picker-today-color, var(--b-primary-50))));
    font-weight: var(--b-year-view-today-cell-font-weight)
}

.b-year-view-content .b-calendar-cell.b-other-month .b-calendar-cell-inner {
    color: var(--b-year-view-other-month-cell-color)
}

.b-year-view-content .b-week-number-cell {
    border: 0 none;
    padding: 0;
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    flex: 0 0 var(--b-year-view-day-cell-size);
    background: var(--b-year-view-week-cell-background);
    color: var(--b-year-view-week-cell-color)
}

.b-year-view-content .b-week-number-cell:hover {
    cursor: pointer;
    background: var(--b-year-view-week-cell-hover-background);
    color: var(--b-year-view-week-cell-hover-color)
}

:is(.b-year-view-content .b-calendar-cell, .b-year-view-content .b-week-number-cell).b-active {
    outline: 0 none;
    background-color: #e8e8e8;
    border-radius: 50%
}

.b-year-view-content.b-hide-non-working-days .b-non-working-day {
    display: none
}

.b-year-view-content .b-calendar-week:not([data-week]) .b-week-number-cell {
    background-color: inherit
}

.b-year-view-content :is(.b-year-view-month-name, .b-week-number-cell, .b-calendar-cell-inner):focus-visible {
    outline: var(--b-widget-focus-outline-width) solid var(--b-widget-focus-outline-color)
}

:root,
:host {
    --b-month-grid-month-background-color: var(--b-neutral-98);
    --b-month-grid-event-container-background-color: transparent;
    --b-month-grid-event-group-background-color: var(--b-neutral-100);
    --b-month-grid-event-group-border-color: var(--b-calendar-border-color);
    --b-month-grid-event-group-border-radius: var(--b-widget-border-radius);
    --b-month-grid-event-group-expand-icon-color: var(--b-text-4);
    --b-month-grid-event-group-active-expand-icon-color: var(--b-text-5);
    --b-month-grid-month-header-background: transparent;
    --b-month-grid-month-header-hover-background: transparent;
    --b-month-grid-month-header-color: var(--b-text-1)
}

.b-internal {
    --bi-min-month-height: null
}

.b-month-grid {
    --b-calendar-view-padding-top: 0
}

.b-month-grid.b-responsive-small {
    font-size: .7em
}

.b-month-grid .b-hide-event-scroll .b-month-grid-content-wrap:before,
.b-month-grid .b-hide-event-scroll .b-month-grid-content-wrap:after {
    pointer-events: none;
    transition: opacity .3s ease;
    opacity: 0;
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    z-index: 12;
    height: 20px
}

.b-month-grid .b-hide-event-scroll .b-month-grid-content-wrap.b-cal-event-container-overflow-top:before {
    opacity: 1;
    top: 0;
    background: linear-gradient(to bottom, var(--b-month-grid-month-background-color) 0%, transparent 100%)
}

.b-month-grid .b-hide-event-scroll .b-month-grid-content-wrap.b-cal-event-container-overflow-bottom:after {
    opacity: 1;
    bottom: 0;
    background: linear-gradient(to bottom, transparent 0%, var(--b-month-grid-month-background-color) 100%)
}

.b-month-grid .b-hide-event-scroll.b-has-scrollbars .b-cal-event-bar-container {
    scrollbar-width: none
}

.b-month-grid .b-month-grid-content {
    overflow: auto
}

.b-month-grid-body-wrap {
    container: month-grid / inline-size
}

.b-month-grid-content {
    display: grid;
    gap: var(--bi-view-gap, 0);
    padding: var(--bi-view-gap, 0);
    align-items: stretch;
    grid-template-columns: repeat(var(--bi-column-count), 1fr);
    grid-template-rows: repeat(var(--bi-row-count), 1fr);
    --bi-column-count: 1;
    --bi-row-count: 12
}

@container month-grid (min-width: 380px) {
    .b-month-grid-content {
        --bi-column-count: 2;
        --bi-row-count: 6
    }
}

@container month-grid (min-width: 570px) {
    .b-month-grid-content {
        --bi-column-count: 3;
        --bi-row-count: 4
    }
}

@container month-grid (min-width: 760px) {
    .b-month-grid-content {
        --bi-column-count: 4;
        --bi-row-count: 3
    }
}

@container month-grid (min-width: 1140px) {
    .b-month-grid-content {
        --bi-column-count: 6;
        --bi-row-count: 2
    }
}

.b-has-view-gap .b-month-grid-content {
    --b-calendar-view-padding-top: var(--bi-view-gap)
}

.b-month-grid-content .b-month-grid-month {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-style: solid;
    border-color: var(--b-calendar-border-color);
    border-width: 0 0 1px 1px;
    min-height: var(--bi-min-month-height);
    background-color: var(--b-month-grid-month-background-color)
}

.b-has-view-gap :is(.b-month-grid-content .b-month-grid-month) {
    border-width: 1px;
    border-radius: var(--b-widget-border-radius)
}

.b-month-grid-content .b-month-grid-month-name {
    display: flex;
    padding: 1em 1em .5em;
    font-size: 1em;
    font-weight: 500;
    max-width: unset;
    margin: 0;
    justify-content: space-between;
    cursor: pointer;
    align-items: baseline;
    background: var(--b-month-grid-month-header-background);
    color: var(--b-month-grid-month-header-color)
}

.b-month-grid-content .b-month-grid-month-name:hover {
    background: var(--b-month-grid-month-header-hover-background)
}

.b-month-grid-content .b-month-grid-month-name:focus-visible {
    outline-offset: -1px
}

.b-month-grid-content .b-month-grid-month-header-event-count {
    font-size: .8em
}

.b-month-grid-content .b-month-grid-content-wrap {
    flex-grow: 1;
    display: flex;
    position: relative;
    overflow: hidden;
    margin: var(--bi-event-spacing)
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container {
    overflow-x: visible;
    overflow-y: auto;
    gap: var(--bi-event-spacing);
    background-color: var(--b-month-grid-event-container-background-color)
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-cal-event-bar-group {
    display: flex;
    background-color: var(--b-month-grid-event-group-background-color);
    border: 1px solid var(--b-month-grid-event-group-border-color);
    border-radius: var(--b-month-grid-event-group-border-radius);
    --bi-expand-icon-color: var(--b-month-grid-event-group-expand-icon-color)
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-cal-event-bar-group.b-active {
    --bi-expand-icon-color: var(--b-month-grid-event-group-active-expand-icon-color)
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-cal-event-bar-count {
    margin-inline-start: auto
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-cal-event-body,
.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-cal-event-desc {
    justify-content: space-between;
    display: flex;
    flex-basis: 100%
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-icon-group-expand:before {
    transition: rotate .3s ease
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-icon-group-expand.b-rtl:before {
    rotate: -180deg
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-icon-group-expand {
    color: var(--bi-expand-icon-color)
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container:hover {
    color: currentColor
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container[aria-expanded=true] .b-icon-group-expand:before {
    rotate: 90deg
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container[aria-expanded=true] .b-icon-group-expand.b-rtl:before {
    rotate: -270deg
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-cal-event-wrap {
    position: relative;
    padding-inline: 0;
    margin-inline: 3px
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-cal-event-wrap:first-child {
    margin-block-start: 3px
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-cal-event-wrap.b-cal-event-bar-adding .b-cal-event {
    animation: b-anim-grow-height .3s ease-out forwards
}

.b-month-grid-content .b-month-grid-month .b-cal-event-bar-container .b-cal-event-wrap.b-cal-event-bar-removing .b-cal-event {
    animation: b-anim-shrink-height .3s ease-out forwards
}

.b-month-grid-content .b-cal-event-bar-name,
.b-month-grid-content .b-cal-event-desc>:first-child {
    overflow: hidden;
    text-overflow: ellipsis
}

@keyframes b-anim-grow-height {
    0% {
        height: 0;
        opacity: 0
    }

    to {
        height: var(--bi-event-height);
        opacity: 1
    }
}

@keyframes b-anim-shrink-height {
    0% {
        height: var(--bi-event-height);
        opacity: 1
    }

    90% {
        opacity: 0
    }

    to {
        height: 0;
        opacity: 0
    }
}

.b-cal-tooltip-duration,
.b-cal-tooltip-recurrence {
    display: flex;
    gap: .5em
}

:is(.b-cal-tooltip-duration, .b-cal-tooltip-recurrence) i {
    justify-content: center;
    color: var(--b-clock-hand-color);
    width: var(--b-clock-size)
}

.b-calendar-full-week-button {
    margin-inline-end: 1em
}

.b-calendar:not(.b-calendar-include-weekends-button) .b-calendar-full-week-button {
    display: none
}

.b-mode-selector {
    flex-basis: min-content;
    flex-shrink: 0
}

.b-mode-selector.b-minified>:not(.b-calendar-mode-button) {
    display: none
}

.b-mode-selector:not(.b-minified)>.b-calendar-mode-button {
    display: none
}

.b-menu-item-key {
    margin-inline-start: auto
}

.b-overflow-popup {
    min-width: 13em;
    max-width: 30em;
    z-index: 20;
    position: fixed !important
}

.b-overflow-popup .b-widget.b-cal-event-bar-container {
    flex: 0 0 auto
}

.b-overflow-popup .b-widget.b-cal-event-bar-container .b-cal-event-wrap {
    flex-shrink: 0
}

.b-overflow-popup-content:has(>.b-calendar-mixin) {
    --b-agenda-view-cell-padding-block: .5em;
    --b-agenda-view-cell-padding-inline: .5em;
    padding: 0 !important
}

.b-overflow-popup-content:has(>.b-calendar-mixin) .b-calendar-row-header,
.b-overflow-popup-content:has(>.b-calendar-mixin) .b-cal-agenda-date {
    display: none !important
}

.b-visible-scrollbar .b-overflow-popup-content:has(>.b-cal-event-bar-container.b-vertical-overflow) {
    padding-inline-end: 0
}

.b-day-cell-collecter .b-overflow-popup-content {
    contain: style !important;
    flex-flow: column nowrap;
    align-items: stretch
}

.b-day-cell-collecter .b-overflow-popup-content .b-cal-event-wrap {
    flex-shrink: 0;
    position: relative !important
}

:root,
:host {
    --b-sidebar-border-inline-end: null;
    --b-sidebar-width: auto
}

.b-internal {
    --bi-scrollbar-width: null
}

.b-sidebar {
    flex-shrink: 0;
    border-inline-end: var(--b-sidebar-border-inline-end);
    flex-basis: var(--b-sidebar-width);
    --b-panel-padding: 1em;
    --b-toolbar-padding: 0 0 1em 0;
    --b-toolbar-gap: .5em;
    --b-date-picker-day-font-size: .85em;
    --b-date-picker-date-font-size: .85em;
    --b-date-picker-toolbar-font-size: .9em;
    --b-date-picker-min-width: 0;
    --b-calendar-panel-weeks-gap: 0;
    --b-year-picker-padding: 0;
    transition: var(--b-default-panel-transition), flex-basis var(--b-default-transition-duration) ease
}

.b-sidebar .b-calendar-date-picker {
    margin-top: .5em;
    --b-button-height: auto
}

.b-sidebar.b-has-date-picker {
    --b-sidebar-width: 17.5em
}

.b-sidebar.b-date-picker-with-events {
    --b-sidebar-width: 20em
}

.b-sidebar.b-collapsed,
.b-sidebar.b-collapsing {
    --b-sidebar-width: 0 !important;
    --bi-scrollbar-width: 0 !important
}

.b-sidebar .b-has-date-picker {
    flex-basis: var(--b-sidebar-width)
}

.b-sidebar .b-has-date-picker:has(.b-sidebar-content.b-vertical-overflow) {
    flex-basis: calc(var(--b-sidebar-width) + var(--bi-scrollbar-width))
}

.b-sidebar [data-ref=resourceFilter]:not(.b-empty) {
    min-height: 8em
}

.b-calendar:has(.b-sidebar+.b-splitter.b-moving) .b-sidebar {
    transition: none
}

.b-chart-content {
    position: absolute;
    width: 100%;
    top: 0;
    bottom: 0
}

.b-chart-show-controls {
    padding-top: 1em
}

.b-chart-controls {
    position: absolute;
    z-index: 1;
    top: 0;
    inset-inline-end: 0;
    gap: 0
}

.b-chart {
    transition: background var(--b-default-transition-duration);
    background: var(--b-neutral-100)
}

:root,
:host {
    --b-chart-designer-labels-list-padding-block: 1em
}

.b-grid-chart-designer-content {
    padding: 0
}

.b-grid-chart-designer-content .b-chart[data-ref=preview] {
    background: var(--b-primary-100);
    border-radius: var(--b-widget-border-radius)
}

.b-chart-designer-settings {
    flex: 0 0 22em;
    overflow: clip;
    transition: flex-basis .3s
}

.b-chart-designer-settings .b-list {
    background: transparent
}

.b-chart-designer-settings .b-tab-panel-item {
    padding: 1em .5em .5em;
    --b-panel-header-padding: 0
}

.b-chart-designer-settings .b-chart-layout-tab {
    padding-top: 0
}

.b-chart-designer-settings .b-chart-appearance-tab {
    padding-block: 0
}

.b-chart-designer-settings .b-chart-appearance-tab .b-panel-header {
    background: transparent
}

.b-chart-designer-settings [data-ref=labelsSeriesList] {
    padding-block: var(--b-chart-designer-labels-list-padding-block)
}

.b-chart-designer-settings [data-ref=seriesList] {
    gap: 1em;
    padding-block: 1em;
    --b-list-item-multi-select-hover-background: transparent;
    --b-list-item-padding: 0
}

.b-chart-designer-settings [data-ref=labelsSeriesList],
.b-chart-designer-settings [data-ref=seriesList] {
    padding-inline: 1em;
    border: 1px solid var(--b-text-field-outlined-border-color);
    border-radius: var(--b-widget-border-radius)
}

.b-chart-designer-minimal .b-chart-designer-settings {
    flex-basis: 0
}

.b-chart-type-list {
    display: grid;
    grid-template-columns: 4.5em 4.5em 4.5em;
    width: 100%;
    column-gap: 1em;
    overflow: visible;
    --b-list-item-selected-background: var(--b-primary-97);
    --b-list-item-focus-background: var(--b-primary-97);
    --b-list-item-multi-selected-focus-background: var(--b-primary-97)
}

.b-chart-type-list .b-list-item-group-header {
    font-weight: 500;
    grid-column: 1 / -1
}

.b-chart-type-list .b-list-item:not(.b-list-item-group-header) {
    padding: 0;
    border: 1px solid var(--b-text-field-outlined-border-color);
    border-radius: var(--b-widget-border-radius)
}

.b-chart-type-list .b-list-item:not(.b-list-item-group-header).b-selected {
    outline: 1px solid var(--b-widget-focus-outline-color);
    outline-offset: 2px
}

.b-chart-type-thumbnail {
    width: 4em;
    height: 3em
}

.b-chart-appearance-tab {
    gap: 0
}

.b-chart-appearance-tab .b-multi-section .b-panel {
    --b-panel-header-font-weight: 400
}

.b-chart-appearance-tab .b-panel {
    flex-shrink: 0;
    --b-panel-header-font-size: 1em;
    --b-panel-with-header-padding: 0;
    --b-panel-header-padding: 1em 0
}

.b-slider-with-field.b-hbox {
    margin-top: 1px;
    flex-wrap: wrap
}

.b-slider-with-field.b-hbox>.b-label {
    min-width: 100%
}

.b-slider-with-field.b-hbox .b-slider {
    flex: 1
}

.b-slider-with-field.b-hbox .b-number-field {
    gap: 0;
    width: 6em
}

.b-slider-with-field.b-hbox .b-number-field .b-label {
    display: none
}

.b-font-picker [data-ref=family] {
    flex: 1 1 60%
}

.b-font-picker [data-ref=size] {
    flex: 1 0 30%
}

.b-font-picker.b-hbox {
    flex-wrap: wrap
}

.b-font-picker,
.b-font-picker>.b-container {
    gap: .6em
}