:root{--color-bg:#fefefe;--color-surface:#fff;--color-border:#d9d9d9;--color-text:#1f1f1f;--color-stripe:#fafafa;--font:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;scrollbar-gutter:stable}*,:before,:after{box-sizing:border-box}body{font-family:var(--font);color:var(--color-text);background:var(--color-bg);margin:0}.debugmode_only{display:none!important}html.app--debug-mode .debugmode_only{display:revert!important}.app{max-width:100%}.app--finance-dashboard,.app--finance-dashboard .app__main{flex-direction:column;display:flex}.app--finance-dashboard .app__dnd-toolbar{flex-shrink:0}.app__header{margin-bottom:0;padding:16px 17px}.app__branding{align-items:center;gap:12px;display:flex}.app--finance-dashboard .app__branding{align-items:flex-start}.app__title-stack{flex-direction:column;gap:4px;min-width:0;display:flex}.app__title-muted{color:#ccc;font-weight:500}.app__title-vat-row{flex-flow:wrap;align-items:center;gap:8px 16px;display:flex}.app__title-vat{color:#555;margin:0;font-size:.875rem}.dashboard__title-vat-row{flex-wrap:wrap;align-items:center;gap:8px 12px;width:100%}.dashboard__title-main{flex-flow:wrap;flex:200px;align-items:center;gap:8px 30px;min-width:0;display:flex}.dashboard__title-main>.app__title{flex:0 auto;min-width:0;margin:0;transform:translateY(-2px)}.dashboard__title-vat-row .dashboard__vat-highlight-cluster{white-space:nowrap;flex-shrink:0;align-self:center;align-items:center;gap:6px;margin-left:auto;display:inline-flex}.dashboard__title-vat-row .dashboard__vat-highlight-cluster .app__title-vat{text-align:right;margin:0;line-height:1.35}.dashboard__highlight-link{color:#8c8c8c;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:1rem;line-height:1;text-decoration:none}.dashboard__highlight-link:hover,.dashboard__highlight-link--on{color:#1677ff}.dashboard__highlight-link--on:hover{color:#0958d9}.dashboard__grouping-gear{color:#8c8c8c;cursor:pointer;border:0;justify-content:center;align-items:center;margin:0 3px 0 0;padding:0;line-height:0;text-decoration:none;display:inline-flex}.dashboard__grouping-gear-icon{opacity:.5;width:12px;height:13px;color:inherit;display:block}.dashboard__grouping-gear:hover,.dashboard__grouping-gear--on{color:#1677ff}.dashboard__grouping-gear--on:hover{color:#0958d9}.app__logo-link{align-items:center;line-height:0;display:inline-flex}.app__logo{width:auto;height:32px;display:block}.app__footer{margin-bottom:0;padding:16px 20px}.app__title{margin:0 0 2px;font-size:1.25rem;font-weight:600}.app__meta{color:#555;margin:0;font-size:.875rem}.app__meta--padded{padding:12px 20px}.app__main{background:var(--color-surface);border-radius:4px}.dnd-toolbar{align-items:center;gap:16px;display:flex}.dnd-tooltip-wrap{position:relative}.dnd-tooltip{z-index:10;color:#003a42;white-space:nowrap;opacity:0;pointer-events:none;background:#87e8de;border-radius:4px;max-width:360px;padding:6px 10px;font-size:12px;line-height:1.2;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + 8px);right:0;transform:translateY(4px);box-shadow:0 4px 12px #00000026}.dnd-tooltip-wrap:hover .dnd-tooltip,.dnd-tooltip-wrap:focus-within .dnd-tooltip{opacity:1;transform:translateY(0)}.dnd-items-area{border-radius:8px;outline:none;flex-wrap:wrap;align-items:center;gap:4px;padding:0 16px 20px;display:flex}.dnd-item-wrap{margin:0 4px}.dnd-item-wrap--off{opacity:.45}.dnd-item-card{border:1px solid var(--color-border);-webkit-user-select:none;user-select:none;background:#fff;border-radius:5px;align-items:center;gap:4px;padding:1px;display:flex}.dnd-item-card__handle{cursor:grab;color:#aaa;flex-shrink:0;align-items:center;padding:2px;display:flex}.dnd-item-card__handle:active{cursor:grabbing}.dnd-item-card__label{white-space:nowrap;flex:1;font-size:12px}.dnd-item-card__mode-btn{border:1px solid var(--color-border);cursor:pointer;color:#555;background:#fff;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;padding:0;display:flex}.dnd-item-card__mode-btn--expanded{color:#1677ff;background:#e6f4ff;border-color:#91caff}.dnd-item-card__mode-btn--collapsed{color:#389e0d;background:#f6ffed;border-color:#b7eb8f}.dnd-item-card__mode-btn--off{color:#aaa;border-color:#ddd}.dnd-item-card__mode-btn:hover{opacity:.8}.dnd-submit-btn{color:#fff;cursor:pointer;background:#1677ff;border:0 solid #1677ff;border-radius:5px;flex-shrink:0;min-height:25px;margin-left:10px;padding:0 9px;font-size:.75em}.dnd-submit-btn:hover{background:#4096ff;border-color:#4096ff}.dnd-submit-btn:focus-visible{outline-offset:2px;outline:2px solid #91caff}.summary-table-wrap{max-width:100%;overflow-x:auto}.summary-table{border-collapse:collapse;width:max-content;min-width:100%;font-size:12px}.summary-table th,.summary-table td{border:1px solid var(--color-border);vertical-align:middle;white-space:nowrap;padding:6px 8px}.summary-table thead th{z-index:2;background:#f0f0f0;font-weight:600;position:sticky;top:0}.summary-table__sticky{z-index:1;background:#fff;position:sticky}.summary-table thead .summary-table__sticky{z-index:3;background:#fff}.summary-table__group{min-width:220px;max-width:420px;left:0}.summary-table__period{min-width:200px;left:220px}.summary-table__total{text-align:right;min-width:120px;left:420px}.summary-table thead .summary-table__group{left:0}.summary-table thead .summary-table__period{left:220px}.summary-table thead .summary-table__total{left:420px}.summary-table__month{text-align:center;min-width:100px}.summary-table__num{text-align:right;font-variant-numeric:tabular-nums}.summary-table__row--even td{background:var(--color-surface)}.summary-table__row--odd td{background:var(--color-stripe)}.summary-table__group-cell{white-space:normal;word-break:break-word;align-items:center;gap:4px;display:flex}.summary-table__toggle{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:2px;flex-shrink:0;width:22px;height:22px;padding:0;font-size:14px;line-height:1}.summary-table__toggle:hover{background:#e6f4ff}.summary-table__toggle-spacer{flex-shrink:0;width:22px;display:inline-block}.summary-table__label{flex:1;min-width:0}.dashboard__header-inner{grid-template-rows:auto;grid-template-columns:auto 1fr;align-items:center;gap:4px 12px;display:grid}.dashboard__header-inner--loading{grid-template-rows:auto}.dashboard__header-cell--logo{grid-area:1/1}.dashboard__header-cell--title{grid-area:1/2;min-width:0}.dashboard__tabs{background:var(--color-bg);flex-wrap:wrap;flex-shrink:0;align-items:stretch;gap:2px 20px;margin-top:-12px;margin-left:180px;padding:0 20px;display:flex}.dashboard__tab{color:#aaa;outline-offset:2px;border-bottom:2px solid #0000;border-radius:4px 4px 0 0;align-items:center;margin-bottom:-1px;padding:8px 0;font-size:.9375rem;font-weight:500;text-decoration:none;display:inline-flex}.dashboard__tab:hover{color:#1677ff}.dashboard__tab--active{color:#5f6368;border-bottom-color:#1677ff}.dashboard__filter-summary{color:#595959;align-items:center;gap:6px;min-width:0;margin:0;font-size:14px;font-weight:400;line-height:1.35;display:flex}.dashboard__filter-summary--inline{align-self:center;align-items:center;max-width:min(100%,36rem);display:inline-flex}.dashboard__filter-summary>span{overflow-wrap:anywhere;min-width:0}.dashboard__title-main .dashboard__filter-summary--inline>span{line-height:1.35;display:inline-block}.dashboard__filter-summary-icon{color:inherit;flex-shrink:0;display:block}.dashboard__filter-summary-link{cursor:pointer;color:#8c8c8c;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;line-height:0;text-decoration:none;display:inline-flex}.dashboard__filter-summary-link:hover,.dashboard__filter-summary-link--on{color:#1677ff}.dashboard__filter-summary-link--on:hover{color:#0958d9}.dashboard__error{color:#a8071a;background:#fff2f0;border:1px solid #ffccc7;border-radius:4px;margin:12px 16px;padding:8px 12px}.vat-toggle{flex-shrink:0;align-items:center;gap:8px;padding:8px 16px 16px;display:flex}.vat-toggle__label{color:#555;font-size:14px}.vat-toggle__btn{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:6px;min-height:32px;padding:4px 12px;font-size:13px}.vat-toggle__btn--active{color:#1677ff;background:#e6f4ff;border-color:#1677ff}.vat-toggle--readonly .vat-toggle__btn{cursor:default}.dashboard-filters{flex-wrap:wrap;gap:12px;padding:0 16px 20px 20px;display:flex}.dashboard-filters--toolbar{flex-wrap:nowrap;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;padding-top:5px}.dashboard-filters__dims{flex:1;min-width:0}.dashboard-filters__dimension-list{flex-wrap:wrap;gap:12px;display:flex}.dashboard__filter-summary--inline .dashboard-filters__reset.dashboard__filter-summary-link{box-sizing:border-box;min-width:16px;min-height:16px;margin:0;padding:0;font-size:1.125rem;font-weight:400;line-height:1}.dashboard-filter-item{flex-direction:column;gap:4px}.dashboard-filter-item__label{color:#666;z-index:1;background:#fff;max-width:fit-content;padding:0 2px;font-size:11px;font-weight:400;position:absolute;transform:translate(10px,-9px)}.dashboard-filter-item__select{border:1px solid var(--color-border);background:#fff;border-radius:4px;outline:none;min-width:140px;padding:4px 8px;font-size:13px}.dashboard-filter-item__select:focus{border-color:#1677ff;box-shadow:0 0 0 2px #1677ff1a}.dashboard-filter-item__select[multiple]{height:32px}.dashboard-table-wrap{--dashboard-sticky-group-width:200px;overflow:clip visible}.dashboard-table-hscroll{z-index:4;border-top:1px solid var(--color-border);background:#f5f5f5;position:sticky;bottom:0;overflow:auto hidden}.dashboard-table-wrap:not(.has-hscroll) .dashboard-table-hscroll{display:none}.dashboard-table-hscroll__sizer{height:1px}.dashboard-table-hscroll::-webkit-scrollbar{height:12px}.dashboard-table-hscroll::-webkit-scrollbar-track{background:#f0f0f0}.dashboard-table-hscroll::-webkit-scrollbar-thumb{background:silver;border-radius:6px}.dashboard-table-hscroll::-webkit-scrollbar-thumb:hover{background:#a0a0a0}.dashboard-table-hscroll{scrollbar-width:auto;scrollbar-gutter:stable;scrollbar-color:silver #f0f0f0}.dashboard-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:11px}.dashboard-table th,.dashboard-table td{border-style:solid;border-color:var(--color-border);vertical-align:middle;white-space:nowrap;border-width:0 1px 0 0;padding:3px 6px}.dashboard-table tbody td:first-child{padding-left:14px}.dashboard-table thead th{z-index:2;background:#f0f0f0;font-weight:600;position:sticky;top:0}.dashboard-table thead tr:last-child th,.dashboard-table thead tr:first-child .dashboard-table__group{box-shadow:0 4px 6px -3px #0000001f}.dashboard-table thead tr:first-child .dashboard-table__budget{box-shadow:0 4px 6px -3px #0000001f,4px 0 6px -3px #0000001a}.dashboard-table__sticky{z-index:1;background:#fff;position:sticky}.dashboard-table thead .dashboard-table__sticky{z-index:3}.dashboard-table__group{box-sizing:border-box;width:var(--dashboard-sticky-group-width);min-width:var(--dashboard-sticky-group-width);max-width:var(--dashboard-sticky-group-width);border-left-width:1px;padding-left:8px;left:0}.dashboard-table__budget{box-sizing:border-box;left:var(--dashboard-sticky-group-width);text-align:right;min-width:100px;box-shadow:4px 0 6px -3px #0000001a}.dashboard-table__period-status-head{white-space:normal;max-width:7.5rem;font-size:10px;font-weight:500;line-height:1.15}.dashboard-table__period-status{box-sizing:border-box;text-align:left;vertical-align:top;min-width:5.5rem;max-width:8rem;line-height:1.2}.dashboard-table thead .dashboard-table__group{text-align:left;vertical-align:middle;padding-left:20px;padding-right:6px;left:0;overflow:hidden}.dashboard-table__group-head{justify-content:flex-start;align-items:center;gap:6px;width:100%;min-width:0;display:flex}.dashboard-table__group-head-label{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.dashboard-table thead .dashboard-table__group .dashboard__grouping-gear{flex-shrink:0}.dashboard-table thead .dashboard-table__budget{left:var(--dashboard-sticky-group-width)}.dashboard-table thead .dashboard-table__subhead{top:21px}.dashboard-table__period-head{text-align:center}.dashboard-table__subhead{text-align:right;font-size:10px;font-weight:500;top:24px}.dashboard-table__num{text-align:right;font-variant-numeric:tabular-nums}.dashboard-table__num--muted{color:#bbb}.dashboard-table__cell--link a{color:inherit;text-decoration:underline}.dashboard-table__row--even td{background:var(--color-surface)}.dashboard-table__row--odd td{background:var(--color-stripe)}.dashboard-table__row--level-0 td{font-size:13px}.dashboard-table__row--expanded td,.dashboard-table__row--after-expanded td{border-top:2px solid #eee;padding-top:1px}.dashboard-table tfoot td{z-index:2;background:#f0f0ee;font-weight:600;transition:bottom .12s;position:sticky;bottom:0;box-shadow:0 -4px 6px -3px #0000001f}.dashboard-table tfoot td:first-child{padding-left:20px}.dashboard-table tfoot .dashboard-table__budget{box-shadow:0 -4px 6px -3px #0000001f,4px 0 6px -3px #0000001a}.dashboard-table-wrap.has-hscroll .dashboard-table tfoot td{bottom:var(--scrollbar-h,17px)}.dashboard-table tfoot .dashboard-table__sticky{z-index:3;background:#f0f0ee}.dashboard-table__footer-label{padding-left:8px}.dashboard-table__group-cell{white-space:normal;word-break:break-word;align-items:center;gap:4px;display:flex}.dashboard-table__toggle{box-sizing:border-box;width:22px;height:12px;color:inherit;font:inherit;text-align:center;cursor:pointer;background:0 0;border:0;border-radius:2px;flex-shrink:0;justify-content:center;align-self:center;align-items:center;padding:0;line-height:1;text-decoration:none;display:inline-flex}.dashboard-table__toggle:hover{color:#1677ff}.dashboard-table__toggle-spacer{flex-shrink:0;width:22px;display:inline-block}.dashboard-table__label{flex:1;min-width:0}.dashboard-table tbody tr[data-depth="0"] .dashboard-table__label{white-space:normal;word-break:break-word;text-overflow:clip;overflow:visible}.dashboard-table tbody tr[data-depth]:not([data-depth="0"]) .dashboard-table__label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nav-table-status{color:#555;padding:24px 20px;font-size:14px}.nav-table{border-collapse:collapse;width:100%;font-size:13px}.nav-table th,.nav-table td{border:1px solid var(--color-border);vertical-align:middle;white-space:nowrap;padding:7px 12px}.nav-table thead th{text-align:left;background:#f0f0f0;font-weight:600}.nav-table__row--project td{background:#fafafa;font-weight:600}.nav-table__row--team td{background:#fff;padding-left:24px}.nav-table__row--segment td{background:#fafafa;padding-left:40px}.nav-table__row--segvar td{background:#fff;padding-left:56px}.nav-table__slice-badge{border-radius:10px;padding:2px 7px;font-size:11px;font-weight:500;display:inline-block}.nav-table__slice-badge--project{color:#0958d9;background:#e6f4ff}.nav-table__slice-badge--team{color:#389e0d;background:#f6ffed}.nav-table__slice-badge--segment{color:#d46b08;background:#fff7e6}.nav-table__slice-badge--segvar{color:#722ed1;background:#f9f0ff}.nav-table__action-col{text-align:center;width:80px}.nav-table__link{color:#1677ff;border:1px solid #1677ff;border-radius:4px;padding:3px 12px;font-size:12px;text-decoration:none;transition:background .15s,color .15s;display:inline-block}.nav-table__link:hover{color:#fff;background:#1677ff}.dropdown-multiselect{min-width:140px;position:relative}.dropdown-multiselect--disabled .dropdown-multiselect__field{cursor:not-allowed;color:#999;background:#f5f5f5}.dropdown-multiselect__field{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:6px;outline:none;align-items:center;gap:6px;min-height:32px;padding:4px;font-size:13px;display:flex}.dropdown-multiselect:not(.dropdown-multiselect--disabled) .dropdown-multiselect__field:hover{border-color:#4096ff}.dropdown-multiselect--open .dropdown-multiselect__field{border-color:#1677ff;box-shadow:0 0 0 2px #1677ff1a}.dropdown-multiselect__tags{flex-wrap:wrap;flex:1;align-items:center;gap:4px;min-width:0;display:flex}.dropdown-multiselect__tag{z-index:2;background:#f5f5f5;border:1px solid #e8e8e8;border-radius:4px;flex-shrink:0;align-items:center;gap:2px;height:22px;padding:0 6px;font-size:12px;display:inline-flex}.dropdown-multiselect__tag-text{white-space:nowrap;text-overflow:ellipsis;max-width:120px;overflow:hidden}.dropdown-multiselect__tag-remove{cursor:pointer;color:#999;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;margin:0;padding:0;font-size:14px;line-height:1;display:flex}.dropdown-multiselect__tag-remove:hover{color:#1f1f1f}.dropdown-multiselect__placeholder{color:#bfbfbf;flex:auto;min-width:60px}.dropdown-multiselect__search{background:0 0;border:none;outline:none;flex:auto;min-width:60px;font-size:13px}.dropdown-multiselect__search::placeholder{color:#bfbfbf}.dropdown-multiselect__suffix{color:#bfbfbf;flex-shrink:0;align-items:center;display:flex}.dropdown-multiselect__dropdown{border:1px solid var(--color-border);z-index:100;background:#fff;border-radius:6px;flex-direction:column;max-height:256px;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 6px 16px #00000014}.dropdown-multiselect__list{max-height:240px;margin:0;padding:4px 0;list-style:none;overflow-y:auto}.dropdown-multiselect__list::-webkit-scrollbar{width:8px}.dropdown-multiselect__list::-webkit-scrollbar-track{background:#f0f0f0}.dropdown-multiselect__list::-webkit-scrollbar-thumb{background:silver;border-radius:4px}.dropdown-multiselect__list::-webkit-scrollbar-thumb:hover{background:#a0a0a0}.dropdown-multiselect__option{cursor:pointer;justify-content:space-between;align-items:center;padding:6px 12px;font-size:13px;display:flex}.dropdown-multiselect__option:hover{background:#f5f5f5}.dropdown-multiselect__option--selected{background:#e6f4ff;font-weight:600}.dropdown-multiselect__option--selected:hover{background:#bae0ff}.dropdown-multiselect__option-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dropdown-multiselect__option-check{color:#1677ff;flex-shrink:0;margin-left:8px;font-size:14px}.dropdown-multiselect__empty{color:#999;text-align:center;padding:16px 12px;font-size:13px}.dropdown-demo{flex-direction:column;gap:24px;padding:24px;display:flex}.dropdown-demo__case{flex-direction:column;gap:8px;max-width:400px;display:flex}.dropdown-demo__case-title{color:#666;text-transform:uppercase;font-size:12px;font-weight:600}.dropdown-demo__case-body{flex-direction:column;gap:6px;display:flex}.dropdown-demo__value{color:#555;word-break:break-word;font-size:12px}
