/*!**************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css ***!
  \**************************************************************************************************************/
:root {
    --sidebar-width: 260px;
    --topbar-height: 64px;
}

* {
    box-sizing: border-box;
}

html,
body {
    width: 100%;
    min-width: 0;
    overflow-x: hidden;
}

body {
    margin: 0;
    background-color: #f3f5f9;
}

.app-shell {
    min-height: 100vh;
    width: 100%;
}

.navbar-custom {
    height: var(--topbar-height);
    min-height: var(--topbar-height);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    background: #fff;
    border-bottom: 1px solid #e6e9ef;
    padding: 0.75rem 1rem;
    position: sticky;
    top: 0;
    z-index: 1040;
}

.navbar-custom .user-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
    min-width: 0;
}

.navbar-custom .user-name {
    min-width: 0;
    max-width: 240px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.layout-body {
    display: grid;
    grid-template-columns: var(--sidebar-width) minmax(0, 1fr);
    min-height: calc(100vh - var(--topbar-height));
    width: 100%;
}

.sidebar {
    background: #1b3a57;
    color: #fff;
    padding: 1rem;
    width: var(--sidebar-width);
    min-width: 0;
    overflow-y: auto;
}

.sidebar-header {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    padding-bottom: 0.75rem;
}

.sidebar .nav-link {
    color: rgba(255, 255, 255, 0.85);
    border-radius: 0.5rem;
}

.sidebar .nav-link:hover,
.sidebar .nav-link.active {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
}

.sidebar-backdrop {
    display: none;
}

.content-wrapper {
    min-width: 0;
    width: 100%;
}

main.container-fluid {
    width: 100%;
    max-width: none;
    min-width: 0;
}

.card,
.card-body,
.row,
[class*="col-"] {
    min-width: 0;
}

.kpi-card {
    border: 1px solid #e6e9ef;
}

.form-control,
.form-select,
.btn {
    max-width: 100%;
}

.table-responsive {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.table-responsive table {
    margin-bottom: 0;
}

@media (min-width: 993px) {
    .layout-body {
        grid-template-columns: var(--sidebar-width) minmax(0, 1fr);
    }

    .sidebar {
        position: sticky;
        top: var(--topbar-height);
        height: calc(100vh - var(--topbar-height));
        transform: none !important;
        padding: 1rem !important;
    }

    .app-shell.sidebar-collapsed .layout-body {
        grid-template-columns: var(--sidebar-width) minmax(0, 1fr);
    }

    .app-shell.sidebar-collapsed .sidebar {
        width: var(--sidebar-width);
        overflow-y: auto;
    }
}

@media (max-width: 992px) {
    :root {
        --sidebar-width: min(82vw, 280px);
    }

    .navbar-custom {
        height: auto;
        min-height: var(--topbar-height);
        align-items: stretch;
        flex-direction: column;
        padding: 0.75rem;
    }

    .navbar-custom > .btn {
        width: 100%;
        text-align: left;
    }

    .navbar-custom .btn,
    .navbar-custom .badge {
        white-space: nowrap;
    }

    .navbar-custom .user-actions {
        width: 100%;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .navbar-custom .user-name {
        flex: 1 1 100%;
        max-width: 100%;
    }

    .layout-body {
        display: block;
        min-height: calc(100vh - var(--topbar-height));
    }

    .sidebar {
        position: fixed;
        top: var(--topbar-height);
        left: 0;
        width: var(--sidebar-width);
        height: calc(100vh - var(--topbar-height));
        z-index: 1030;
        transform: translateX(-100%);
        transition: transform 0.2s ease;
        padding: 1rem;
    }

    .app-shell:not(.sidebar-collapsed) .sidebar {
        transform: translateX(0);
    }

    .sidebar-backdrop {
        position: fixed;
        top: var(--topbar-height);
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.35);
        z-index: 1025;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.2s ease;
        display: block;
    }

    .app-shell:not(.sidebar-collapsed) .sidebar-backdrop {
        opacity: 1;
        pointer-events: auto;
    }

    main.container-fluid {
        padding: 0.75rem !important;
    }

    .card {
        border-radius: 0.75rem;
    }

    .card-body {
        padding: 1rem;
    }

    form.row > [class*="col-"],
    .row > [class*="col-md-"],
    .row > [class*="col-lg-"] {
        width: 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .table-responsive {
        overflow-x: visible;
    }

    table.mobile-card-table {
        min-width: 0 !important;
        width: 100%;
        border-collapse: separate;
        border-spacing: 0 0.75rem;
    }

    table.mobile-card-table thead {
        display: none;
    }

    table.mobile-card-table tbody,
    table.mobile-card-table tr,
    table.mobile-card-table td {
        display: block;
        width: 100%;
    }

    table.mobile-card-table tr {
        position: relative;
        background: #fff;
        border: 1px solid #e6e9ef;
        border-radius: 0.75rem;
        padding: 0.75rem 3rem 0.75rem 0.75rem;
        box-shadow: 0 0.125rem 0.35rem rgba(0, 0, 0, 0.04);
    }

    table.mobile-card-table td {
        border: 0 !important;
        padding: 0.2rem 0 !important;
        font-size: 0.92rem;
        word-break: break-word;
    }

    table.mobile-card-table td::before {
        content: attr(data-label);
        display: block;
        font-size: 0.72rem;
        font-weight: 700;
        color: #6c757d;
        text-transform: uppercase;
        letter-spacing: 0.02em;
    }

    table.mobile-card-table td.mobile-hidden-cell {
        display: none;
    }

    table.mobile-card-table tr.mobile-row-open td.mobile-hidden-cell {
        display: block;
        margin-top: 0.35rem;
        padding-top: 0.35rem !important;
        border-top: 1px dashed #d9dee8 !important;
    }

    .mobile-row-toggle {
        position: absolute;
        top: 0.65rem;
        right: 0.65rem;
        width: 2rem;
        height: 2rem;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 999px;
        padding: 0;
    }
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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c0I7SUFDMUI7O0lBRUE7UUFDSSxhQUFhO0lBQ2pCOztJQUVBOzs7UUFHSSxXQUFXO1FBQ1gsY0FBYztRQUNkLGVBQWU7SUFDbkI7O0lBRUE7UUFDSSxtQkFBbUI7SUFDdkI7O0lBRUE7UUFDSSx1QkFBdUI7UUFDdkIsV0FBVztRQUNYLHlCQUF5QjtRQUN6Qix5QkFBeUI7SUFDN0I7O0lBRUE7UUFDSSxhQUFhO0lBQ2pCOztJQUVBOzs7UUFHSSxjQUFjO1FBQ2QsV0FBVztJQUNmOztJQUVBO1FBQ0ksa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQix5QkFBeUI7UUFDekIsc0JBQXNCO1FBQ3RCLHFDQUFxQztRQUNyQyxrREFBa0Q7SUFDdEQ7O0lBRUE7UUFDSSxvQkFBb0I7UUFDcEIsNEJBQTRCO1FBQzVCLGtCQUFrQjtRQUNsQixzQkFBc0I7SUFDMUI7O0lBRUE7UUFDSSx5QkFBeUI7UUFDekIsY0FBYztRQUNkLGtCQUFrQjtRQUNsQixnQkFBZ0I7UUFDaEIsY0FBYztRQUNkLHlCQUF5QjtRQUN6QixzQkFBc0I7SUFDMUI7O0lBRUE7UUFDSSxhQUFhO0lBQ2pCOztJQUVBO1FBQ0ksY0FBYztRQUNkLG1CQUFtQjtRQUNuQiwrQkFBK0I7UUFDL0IseUNBQXlDO0lBQzdDOztJQUVBO1FBQ0ksa0JBQWtCO1FBQ2xCLFlBQVk7UUFDWixjQUFjO1FBQ2QsV0FBVztRQUNYLFlBQVk7UUFDWixvQkFBb0I7UUFDcEIsbUJBQW1CO1FBQ25CLHVCQUF1QjtRQUN2QixvQkFBb0I7UUFDcEIsVUFBVTtJQUNkO0FBQ0oiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9wcmVzdGFtb3MtbXZwLy4vYXNzZXRzL3N0eWxlcy9hcHAuY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJ+Ym9vdHN0cmFwXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1pY29uc1wiO1xuXG46cm9vdCB7XG4gICAgLS1zaWRlYmFyLXdpZHRoOiAyNjBweDtcbiAgICAtLXRvcGJhci1oZWlnaHQ6IDY0cHg7XG59XG5cbioge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG5ib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjVmOTtcbn1cblxuLmFwcC1zaGVsbCB7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5uYXZiYXItY3VzdG9tIHtcbiAgICBoZWlnaHQ6IHZhcigtLXRvcGJhci1oZWlnaHQpO1xuICAgIG1pbi1oZWlnaHQ6IHZhcigtLXRvcGJhci1oZWlnaHQpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAwLjc1cmVtO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU5ZWY7XG4gICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwNDA7XG59XG5cbi5uYXZiYXItY3VzdG9tIC51c2VyLWFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGdhcDogMC41cmVtO1xuICAgIG1pbi13aWR0aDogMDtcbn1cblxuLm5hdmJhci1jdXN0b20gLnVzZXItbmFtZSB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1heC13aWR0aDogMjQwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubGF5b3V0LWJvZHkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiB2YXIoLS1zaWRlYmFyLXdpZHRoKSBtaW5tYXgoMCwgMWZyKTtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tdG9wYmFyLWhlaWdodCkpO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uc2lkZWJhciB7XG4gICAgYmFja2dyb3VuZDogIzFiM2E1NztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIHdpZHRoOiB2YXIoLS1zaWRlYmFyLXdpZHRoKTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLnNpZGViYXItaGVhZGVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xufVxuXG4uc2lkZWJhciAubmF2LWxpbmsge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbn1cblxuLnNpZGViYXIgLm5hdi1saW5rOmhvdmVyLFxuLnNpZGViYXIgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgICBjb2xvcjogI2ZmZjtcbn1cblxuLnNpZGViYXItYmFja2Ryb3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb250ZW50LXdyYXBwZXIge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxubWFpbi5jb250YWluZXItZmx1aWQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtaW4td2lkdGg6IDA7XG59XG5cbi5jYXJkLFxuLmNhcmQtYm9keSxcbi5yb3csXG5bY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgbWluLXdpZHRoOiAwO1xufVxuXG4ua3BpLWNhcmQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNmU5ZWY7XG59XG5cbi5mb3JtLWNvbnRyb2wsXG4uZm9ybS1zZWxlY3QsXG4uYnRuIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTNweCkge1xuICAgIC5sYXlvdXQtYm9keSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdmFyKC0tc2lkZWJhci13aWR0aCkgbWlubWF4KDAsIDFmcik7XG4gICAgfVxuXG4gICAgLnNpZGViYXIge1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICB0b3A6IHZhcigtLXRvcGJhci1oZWlnaHQpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS10b3BiYXItaGVpZ2h0KSk7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmFwcC1zaGVsbC5zaWRlYmFyLWNvbGxhcHNlZCAubGF5b3V0LWJvZHkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHZhcigtLXNpZGViYXItd2lkdGgpIG1pbm1heCgwLCAxZnIpO1xuICAgIH1cblxuICAgIC5hcHAtc2hlbGwuc2lkZWJhci1jb2xsYXBzZWQgLnNpZGViYXIge1xuICAgICAgICB3aWR0aDogdmFyKC0tc2lkZWJhci13aWR0aCk7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAgIC0tc2lkZWJhci13aWR0aDogbWluKDgydncsIDI4MHB4KTtcbiAgICB9XG5cbiAgICAubmF2YmFyLWN1c3RvbSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWluLWhlaWdodDogdmFyKC0tdG9wYmFyLWhlaWdodCk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgIH1cblxuICAgIC5uYXZiYXItY3VzdG9tID4gLmJ0biB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIC5uYXZiYXItY3VzdG9tIC5idG4sXG4gICAgLm5hdmJhci1jdXN0b20gLmJhZGdlIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAubmF2YmFyLWN1c3RvbSAudXNlci1hY3Rpb25zIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cblxuICAgIC5uYXZiYXItY3VzdG9tIC51c2VyLW5hbWUge1xuICAgICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5sYXlvdXQtYm9keSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tdG9wYmFyLWhlaWdodCkpO1xuICAgIH1cblxuICAgIC5zaWRlYmFyIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IHZhcigtLXRvcGJhci1oZWlnaHQpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tc2lkZWJhci13aWR0aCk7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLXRvcGJhci1oZWlnaHQpKTtcbiAgICAgICAgei1pbmRleDogMTAzMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICB9XG5cbiAgICAuYXBwLXNoZWxsOm5vdCguc2lkZWJhci1jb2xsYXBzZWQpIC5zaWRlYmFyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cblxuICAgIC5zaWRlYmFyLWJhY2tkcm9wIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IHZhcigtLXRvcGJhci1oZWlnaHQpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICAgICAgICB6LWluZGV4OiAxMDI1O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5hcHAtc2hlbGw6bm90KC5zaWRlYmFyLWNvbGxhcHNlZCkgLnNpZGViYXItYmFja2Ryb3Age1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG5cbiAgICBtYWluLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuY2FyZCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNzVyZW07XG4gICAgfVxuXG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgfVxuXG4gICAgZm9ybS5yb3cgPiBbY2xhc3MqPVwiY29sLVwiXSxcbiAgICAucm93ID4gW2NsYXNzKj1cImNvbC1tZC1cIl0sXG4gICAgLnJvdyA+IFtjbGFzcyo9XCJjb2wtbGctXCJdIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgICAgICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIHRhYmxlLm1vYmlsZS1jYXJkLXRhYmxlIHtcbiAgICAgICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAgICAgICBib3JkZXItc3BhY2luZzogMCAwLjc1cmVtO1xuICAgIH1cblxuICAgIHRhYmxlLm1vYmlsZS1jYXJkLXRhYmxlIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICB0YWJsZS5tb2JpbGUtY2FyZC10YWJsZSB0Ym9keSxcbiAgICB0YWJsZS5tb2JpbGUtY2FyZC10YWJsZSB0cixcbiAgICB0YWJsZS5tb2JpbGUtY2FyZC10YWJsZSB0ZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICB0YWJsZS5tb2JpbGUtY2FyZC10YWJsZSB0ciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTllZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAzcmVtIDAuNzVyZW0gMC43NXJlbTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjM1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gICAgfVxuXG4gICAgdGFibGUubW9iaWxlLWNhcmQtdGFibGUgdGQge1xuICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMC4ycmVtIDAgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAwLjkycmVtO1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgIH1cblxuICAgIHRhYmxlLm1vYmlsZS1jYXJkLXRhYmxlIHRkOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtbGFiZWwpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAwLjcycmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgICB9XG5cbiAgICB0YWJsZS5tb2JpbGUtY2FyZC10YWJsZSB0ZC5tb2JpbGUtaGlkZGVuLWNlbGwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIHRhYmxlLm1vYmlsZS1jYXJkLXRhYmxlIHRyLm1vYmlsZS1yb3ctb3BlbiB0ZC5tb2JpbGUtaGlkZGVuLWNlbGwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMC4zNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuMzVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCAjZDlkZWU4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1yb3ctdG9nZ2xlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDAuNjVyZW07XG4gICAgICAgIHJpZ2h0OiAwLjY1cmVtO1xuICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/