@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.ds-breadcrumb{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ds-text-tertiary)}.ds-breadcrumb a{color:var(--ds-text-secondary);text-decoration:none;transition:color var(--ds-transition)}.ds-breadcrumb a:hover{color:var(--ds-text)}.ds-breadcrumb-sep{font-size:11px;color:var(--ds-text-tertiary);-webkit-user-select:none;user-select:none}.ds-breadcrumb-current{color:var(--ds-text);font-weight:500}.ds-chip{display:inline-flex;align-items:center;gap:5px;height:var(--ds-height-sm);padding:0 10px;font-family:var(--font-family);font-size:11.5px;font-weight:500;line-height:1;color:var(--ds-text-secondary);background:transparent;border:1px solid var(--ds-border);border-radius:var(--ds-radius-full);cursor:pointer;transition:all var(--ds-transition);-webkit-user-select:none;user-select:none;white-space:nowrap}.ds-chip:hover{border-color:var(--ds-border-strong);color:var(--ds-text)}.ds-chip-active{background:#ffd70014;border-color:var(--ds-accent);color:var(--ds-text)}.ds-chip-count{display:inline-flex;align-items:center;justify-content:center;background:var(--ds-surface);padding:1px 5px;border-radius:var(--ds-radius-full);font-size:10px;font-weight:600;color:var(--ds-text-secondary);font-family:var(--ds-font-mono);min-width:18px}.ds-chip-active .ds-chip-count{background:#ffd70026;color:var(--ds-accent-text)}.ds-status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:var(--ds-radius-sm);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0}.ds-status-badge:before{content:"";width:6px;height:6px;border-radius:50%}.ds-status-badge-active{background:var(--ds-accent-warm);color:var(--ds-bg)}.ds-status-badge-active:before{background:#fff9}.ds-status-badge-success{background:var(--ds-success-bg);color:var(--ds-success-dark)}.ds-status-badge-success:before{background:var(--ds-success)}.ds-status-badge-warning{background:var(--ds-warning-bg);color:var(--ds-warning-dark)}.ds-status-badge-warning:before{background:var(--ds-warning)}.ds-status-badge-draft{background:#f5f5f5;color:var(--ds-text-tertiary)}.ds-status-badge-draft:before{background:#ccc}.ds-status-badge-review{background:var(--ds-info-bg);color:#1d4ed8}.ds-status-badge-review:before{background:var(--ds-info)}.ds-status-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--ds-radius-full);font-size:11px;font-weight:600;line-height:1.4;text-transform:uppercase;letter-spacing:0;white-space:nowrap}.ds-status-pill-active{background:var(--ds-warning-bg);color:var(--ds-warning-dark)}.ds-status-pill-done{background:var(--ds-success-bg);color:var(--ds-success-dark)}.ds-status-pill-draft{background:#f5f5f5;color:var(--ds-text-tertiary)}.ds-status-pill-overdue{background:var(--ds-error-bg);color:var(--ds-error)}.ds-act-status{display:inline-block;padding:2px 10px;border-radius:var(--ds-radius-sm);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0}.ds-act-status-signed{background:var(--ds-success-bg);color:var(--ds-success-dark)}.ds-act-status-pending{background:var(--ds-warning-bg);color:var(--ds-warning-dark)}.ds-act-status-unsigned{background:#f5f5f5;color:var(--ds-text-tertiary)}.ds-section-heading{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--ds-text);margin-bottom:18px;padding-bottom:10px;border-bottom:2px solid var(--ds-text);display:inline-block}.ds-page-title,.company-page h1.ds-page-title{margin:0;font-size:20px;line-height:1.55;font-weight:800;letter-spacing:0;color:var(--ds-text)}.ds-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px 28px}.ds-info-grid-full{grid-column:1 / -1}.ds-info-label{font-size:10.5px;font-weight:600;color:var(--ds-text-tertiary);text-transform:uppercase;letter-spacing:0;margin-bottom:4px}.ds-info-value{font-size:15px;font-weight:700;color:var(--ds-text)}.ds-info-value a{color:var(--ds-accent-warm);text-decoration:none;font-weight:700}.ds-info-value a:hover{text-decoration:underline}.ds-info-sub{font-size:11px;color:var(--ds-text-tertiary);font-weight:400;margin-top:2px}.ds-card{position:relative;overflow:hidden;background:var(--ds-bg);border:1px solid #e5e5e5;border-radius:var(--ds-radius-xl);box-shadow:var(--ds-shadow-card);padding:24px 28px}.ds-card-hover{transition:all var(--ds-transition-slow);cursor:pointer}.ds-card-hover:hover{box-shadow:var(--ds-shadow-md);border-color:var(--ds-border-strong)}.ds-card-accent-left{border-left:1px solid #e5e5e5}.ds-card-accent-left:after,.ds-card-accent-success:after,.ds-card-accent-warning:after,.ds-card-accent-error:after{content:"";position:absolute;top:0;left:0;width:100%;height:3px}.ds-card-accent-left:after{background:var(--ds-accent)}.ds-card-accent-success{border-left:1px solid #e5e5e5}.ds-card-accent-success:after{background:var(--ds-success)}.ds-card-accent-warning{border-left:1px solid #e5e5e5}.ds-card-accent-warning:after{background:var(--ds-warning)}.ds-card-accent-error{border-left:1px solid #e5e5e5}.ds-card-accent-error:after{background:var(--ds-error)}.ds-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.ds-detail-list{display:flex;flex-direction:column}.ds-detail-list__row{display:flex;align-items:baseline;gap:16px;padding:11px 0;border-bottom:1px solid var(--ds-border)}.ds-detail-list__row:last-child{border-bottom:none}.ds-detail-list__label{min-width:160px;flex-shrink:0;font-size:12px;font-weight:600;color:var(--ds-text-tertiary);text-transform:uppercase;letter-spacing:0}.ds-detail-list__value{margin:0;font-size:14px;font-weight:500;color:var(--ds-text)}.ds-detail-list__value a{color:var(--ds-text);text-decoration:none;border-bottom:1px dashed var(--ds-accent-warm);transition:all var(--ds-transition)}.ds-detail-list__value a:hover{color:var(--ds-accent-warm)}.ds-detail-list__muted{margin-left:6px;color:var(--ds-text-tertiary)}.ds-action-menu{position:relative;display:inline-block}.ds-action-menu__trigger.ui-btn{padding-right:12px}.ds-action-menu__chevron{display:inline-flex;align-items:center;justify-content:center;font-size:14px;line-height:1;transform:translateY(-1px);transition:transform var(--ds-transition)}.ds-action-menu--open .ds-action-menu__chevron{transform:translateY(-1px) rotate(180deg)}.ds-action-menu__popup{position:absolute;top:calc(100% + 6px);z-index:100;min-width:220px;padding:6px;background:var(--ds-bg);border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);box-shadow:0 8px 24px #0000001a}.ds-action-menu__popup--right{right:0}.ds-action-menu__popup--left{left:0}.ds-action-menu__item{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:9px 12px;border:0;border-radius:var(--ds-radius-sm);font-family:var(--font-family);font-size:13px;font-weight:500;color:var(--ds-text);text-align:left;cursor:pointer;transition:background var(--ds-transition),color var(--ds-transition)}.ds-action-menu__item:hover:not(:disabled){background:var(--ds-surface)!important}.ds-action-menu__item:disabled{opacity:.45;cursor:not-allowed}.ds-action-menu__item--danger{color:var(--ds-error)}.ds-action-menu__item--danger:hover:not(:disabled){background:var(--ds-error-bg)!important}.ds-action-menu__item--success{color:var(--ds-success-dark)}.ds-action-menu__item--success:hover:not(:disabled){background:var(--ds-success-bg)!important}.ds-action-menu__item--warning{color:var(--ds-warning-dark)}.ds-action-menu__item--warning:hover:not(:disabled){background:var(--ds-warning-bg)!important}.ds-action-menu__icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ds-action-menu__divider{height:1px;margin:4px;background:var(--ds-border)}.ds-toast{position:fixed;left:50%;bottom:24px;z-index:1100;display:inline-flex;align-items:center;gap:8px;max-width:min(420px,calc(100vw - 32px));padding:10px 18px;border-radius:var(--ds-radius-md);background:var(--ds-text);color:var(--ds-bg);box-shadow:0 8px 28px #0000002e;font-size:13px;font-weight:600;line-height:1.3;pointer-events:none;opacity:0;transform:translate(-50%) translateY(40px);transition:opacity .2s ease,transform .2s ease}.ds-toast--show{opacity:1;transform:translate(-50%) translateY(0)}.ds-toast__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;border-radius:var(--ds-radius-full);background:var(--ds-accent)}.ds-toast__icon img{filter:none}.ds-stage-card,.ds-act-card{padding:16px 18px;margin-bottom:8px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);transition:border-color var(--ds-transition-slow);cursor:pointer}.ds-stage-card:hover,.ds-act-card:hover{border-color:var(--ds-accent-warm)}.ds-stage-card:last-child,.ds-act-card:last-child{margin-bottom:0}.ds-stage-card-overdue{border-color:#fecaca;background:var(--ds-error-bg)}.ds-stage-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.ds-stage-card-name{font-weight:700;font-size:14px}.ds-stage-card-row{display:flex;justify-content:space-between;padding:3px 0;font-size:12px}.ds-stage-card-label{color:var(--ds-text-secondary)}.ds-stage-card-value{font-weight:600;color:var(--ds-text)}.ds-form-footer{display:flex;align-items:center;justify-content:space-between;padding-top:24px;margin-top:8px;border-top:1px solid var(--ds-border)}.ds-form-footer-right{display:flex;gap:8px}.ds-textarea{width:100%;min-height:80px;padding:10px 12px;background:var(--ds-bg);border:1.5px solid var(--ds-border);border-radius:var(--ds-radius-md);font-family:var(--font-family);font-size:13px;color:var(--ds-text);outline:none;resize:vertical;transition:border-color var(--ds-transition-slow);box-sizing:border-box}.ds-textarea::placeholder{color:var(--ds-text-tertiary)}.ds-textarea:hover{border-color:var(--ds-border-strong)}.ds-textarea:focus{border-color:var(--ds-accent);box-shadow:var(--ds-shadow-focus)}.ds-textarea:disabled{background:var(--ds-surface);color:var(--ds-text-tertiary);cursor:not-allowed}.ds-table-shell{border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);overflow:hidden;box-shadow:var(--ds-shadow-sm)}.ds-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:var(--ds-surface);border-bottom:1px solid var(--ds-border)}.ds-table-toolbar-left{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ds-table-toolbar-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.ds-showing-count{font-size:11px;color:var(--ds-text-tertiary);font-family:var(--ds-font-mono);margin-left:6px;white-space:nowrap}.ds-data-table{width:100%;border-collapse:collapse;table-layout:fixed}.ds-data-table thead{position:static}.ds-data-table th{padding:0 14px 8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0;color:var(--ds-text-tertiary);background:transparent;border-bottom:1px solid var(--ds-border);text-align:left;white-space:nowrap;-webkit-user-select:none;user-select:none}.ds-data-table th.ds-sortable{cursor:pointer;transition:color var(--ds-transition)}.ds-data-table th.ds-sortable:hover{color:var(--ds-text)}.ds-data-table th .ds-sort-icon{display:inline-flex;margin-left:3px;font-size:10px;color:var(--ds-text-tertiary);vertical-align:middle}.ds-data-table th.ds-sorted .ds-sort-icon{color:var(--ds-accent-dark)}.ds-data-table th.ds-align-right,.ds-data-table td.ds-align-right{text-align:right}.ds-data-table th.ds-align-center,.ds-data-table td.ds-align-center{text-align:center}.ds-data-table td{padding:10px 14px;font-size:13.5px;border-bottom:1px solid var(--ds-border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;background:transparent}.ds-data-table tbody tr{transition:background var(--ds-transition)}.ds-data-table tbody tr:hover{background:#ffd7000a}.ds-data-table tbody tr:last-child td{border-bottom:none}.ds-data-table td.ds-mono{font-family:var(--ds-font-mono);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;text-align:right;letter-spacing:0}.ds-data-table input[type=checkbox]{width:15px;height:15px;accent-color:var(--ds-accent);cursor:pointer;vertical-align:middle}.ds-cell-link{font-weight:600;color:var(--ds-text);text-decoration:none;transition:color var(--ds-transition)}.ds-cell-link:hover{color:#b8960a}.ds-data-table td.ds-row-actions{text-align:right;opacity:0;transition:opacity var(--ds-transition);white-space:nowrap}.ds-data-table tbody tr:hover td.ds-row-actions{opacity:1}.ds-row-action-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--ds-height-sm);height:var(--ds-height-sm);border:none;background:transparent;color:var(--ds-text-secondary);border-radius:var(--ds-radius-xs);cursor:pointer;transition:all var(--ds-transition);font-size:14px;padding:0}.ds-row-action-btn:hover{background:#f5f5f5;color:var(--ds-text)}.ds-amount-match{color:var(--ds-success)}.ds-amount-less{color:var(--ds-warning)}.ds-table-pagination{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--ds-surface);border-top:1px solid var(--ds-border)}.ds-pagination-info{font-size:11px;font-family:var(--ds-font-mono);color:var(--ds-text-tertiary);font-variant-numeric:tabular-nums}.ds-pagination-controls{display:flex;align-items:center;gap:4px}.ds-income-table-wrap{border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);overflow:hidden}.ds-income-table{width:100%;border-collapse:collapse;table-layout:fixed}.ds-income-table th{padding:0 14px 8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0;color:var(--ds-text-tertiary);background:transparent;border-bottom:1px solid var(--ds-border);text-align:left;white-space:nowrap}.ds-income-table th.ds-col-amount{width:150px;text-align:right}.ds-income-table th.ds-col-pct{width:100px;text-align:right}.ds-income-table td{padding:10px 14px;font-size:13.5px;border-bottom:1px solid var(--ds-border);vertical-align:middle}.ds-income-table td.ds-amount,.ds-income-table td.ds-mono{text-align:right;font-family:var(--ds-font-mono);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:0}.ds-income-table td.ds-pct-cell{text-align:right}.ds-income-table tbody tr:last-child td{border-bottom:none}.ds-income-table tfoot td{padding-top:14px;border-top:2px solid var(--ds-text);border-bottom:none;background:transparent;font-size:14px;font-weight:800}.ds-income-table tfoot td.ds-amount,.ds-income-table tfoot td.ds-mono{font-size:14px;font-weight:800}.ds-income-table tr.ds-row-dept{background:var(--ds-surface)}.ds-income-table tr.ds-row-dept td{font-weight:700;font-size:13px}.ds-income-table tr.ds-row-team td{font-weight:600;font-size:12.5px;color:var(--ds-text-secondary)}.ds-income-table tr.ds-row-team td:first-child{padding-left:32px}.ds-income-table tr.ds-row-employee td{font-weight:400}.ds-income-table tr.ds-row-employee td:first-child{padding-left:52px}.ds-income-table tr.ds-row-employee{cursor:pointer;transition:background var(--ds-transition)}.ds-income-table tr.ds-row-employee:hover{background:#ffd7000f}.ds-pct-bar{display:flex;align-items:center;gap:8px;justify-content:flex-end}.ds-pct-track{width:48px;height:5px;background:#f0f0f0;border-radius:var(--ds-radius-full);overflow:hidden;flex-shrink:0}.ds-pct-fill{height:100%;border-radius:var(--ds-radius-full)}.ds-pct-fill-green{background:var(--ds-success)}.ds-pct-fill-orange{background:var(--ds-warning)}.ds-pct-fill-grey{background:var(--ds-border-strong)}.ds-pct-value{font-family:var(--ds-font-mono);font-size:12px;font-weight:600;min-width:32px;text-align:right}.ds-pct-value-green{color:var(--ds-success)}.ds-pct-value-orange{color:var(--ds-warning)}.ds-pct-value-grey{color:var(--ds-text-tertiary)}.ds-tabs{display:flex;gap:0;background:transparent;background-color:transparent;border-bottom:2px solid var(--ds-border)}.ds-tab{padding:10px 20px;font-family:var(--font-family);font-size:13px;font-weight:600;color:var(--ds-text-tertiary);background:none;background-color:transparent!important;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:all var(--ds-transition);white-space:nowrap}button.ds-tab{background-color:transparent!important}.ds-tab:hover{background:transparent!important;background-color:transparent!important;color:var(--ds-text-secondary)}.ds-tab:focus,.ds-tab:focus-visible{background:transparent!important;background-color:transparent!important}.ds-tab-active{background:transparent!important;background-color:transparent!important;color:var(--ds-text);border-bottom-color:var(--ds-accent)}.ds-tab-summary{font-family:var(--ds-font-mono);font-size:11px;font-weight:400;color:var(--ds-text-tertiary);margin-left:6px}.ds-tab-active .ds-tab-summary{color:var(--ds-text-secondary)}.ds-segmented{display:inline-flex;max-width:100%;overflow:hidden;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:var(--ds-bg)}.ds-segmented-option{min-width:0;height:32px;padding:0 14px;border:0;border-right:1px solid var(--ds-border);background:transparent;color:var(--ds-text-secondary);font-family:var(--font-family);font-size:12.5px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background var(--ds-transition),color var(--ds-transition)}.ds-segmented-option:last-child{border-right:0}.ds-segmented .ds-segmented-option:hover:not(:disabled){background-color:var(--ds-surface)!important;color:var(--ds-text)}.ds-segmented .ds-segmented-option-active{background-color:var(--ds-accent)!important;color:var(--ds-accent-text)!important;box-shadow:inset 0 0 0 1px var(--ds-accent-dark)}.ds-segmented .ds-segmented-option-active:hover:not(:disabled){background-color:var(--ds-accent)!important;color:var(--ds-accent-text)!important}.ds-segmented-option:disabled{cursor:not-allowed;opacity:.5}.ds-segmented-sm .ds-segmented-option{height:30px;padding:0 12px;font-size:12px}.ds-view-toggle-group{display:flex;border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);overflow:hidden}.ds-view-toggle{width:34px;height:30px;display:flex;align-items:center;justify-content:center;border:none;background:var(--ds-bg);color:var(--ds-text-tertiary);cursor:pointer;transition:all var(--ds-transition)}.ds-view-toggle:not(:last-child){border-right:1px solid var(--ds-border)}.ds-view-toggle:hover{color:var(--ds-text);background:#f5f5f5}.ds-view-toggle-active{color:var(--ds-text);background:var(--ds-surface)}.ds-avatar{border-radius:50%;background:var(--ds-accent);display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:var(--ds-accent-text);flex-shrink:0;position:relative}.ds-avatar-lg{width:40px;height:40px;font-size:14px}.ds-avatar-md{width:32px;height:32px;font-size:11px}.ds-avatar-sm{width:28px;height:28px;font-size:10px}.ds-avatar-status{position:absolute;bottom:0;right:0;width:8px;height:8px;border-radius:50%;border:2px solid var(--ds-bg)}.ds-avatar-status-online{background:var(--ds-success)}.ds-avatar-status-offline{background:var(--ds-border-strong)}.ds-avatar-status-away{background:var(--ds-warning)}.ds-team-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-full);font-size:13px;font-weight:500;color:var(--ds-text);cursor:pointer;transition:all var(--ds-transition);text-decoration:none;background:var(--ds-bg)}.ds-team-pill:hover{border-color:var(--ds-accent-warm);background:#ffd7000a}.ds-history-item{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--ds-border);font-size:13px}.ds-history-item:last-child{border-bottom:none}.ds-history-date{font-family:var(--ds-font-mono);font-size:11px;color:var(--ds-text-tertiary);white-space:nowrap;min-width:90px;padding-top:1px}.ds-history-body{color:var(--ds-text-secondary)}.ds-history-user{font-weight:600;color:var(--ds-text)}.ds-search-wrap{position:relative;display:inline-flex;align-items:center}.ds-search-wrap .ds-search-icon{position:absolute;left:9px;pointer-events:none;color:var(--ds-text-tertiary);display:flex;align-items:center}.ds-search-wrap .ds-search-icon svg{width:14px;height:14px}.ds-search-wrap .ds-input-compact{padding-left:30px;width:220px}.ds-input-compact{height:var(--ds-height-md);padding:5px 10px;border-width:1px;border-radius:var(--ds-radius-sm);border:1px solid var(--ds-border);font-family:var(--font-family);font-size:13px;color:var(--ds-text);background:var(--ds-bg);outline:none;box-sizing:border-box}.ds-input-compact:focus{border-color:var(--ds-accent);box-shadow:var(--ds-shadow-focus)}.ds-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 28px}.ds-form-grid-full{grid-column:1 / -1}@media (max-width: 992px){.ds-info-grid{grid-template-columns:repeat(2,1fr)}.ds-form-grid{grid-template-columns:1fr}}@media (max-width: 768px){.ds-info-grid{grid-template-columns:1fr}.ds-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.ds-tab{padding:10px 14px;font-size:12px;flex-shrink:0}.ds-table-shell,.ds-income-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.ds-data-table{min-width:600px}.ds-data-table th,.ds-income-table th{padding:0 8px 8px}.ds-data-table td,.ds-income-table td{padding:9px 8px;font-size:12.5px}.ds-detail-list__row{flex-direction:column;gap:4px;padding:10px 0}.ds-detail-list__label{min-width:0}.ds-action-menu,.ds-action-menu__trigger.ui-btn{width:100%}.ds-action-menu__popup{left:0;right:0;min-width:0}.ds-income-table{min-width:500px}.ds-table-toolbar{flex-direction:column;align-items:flex-start}.ds-showing-count{display:none}.ds-form-footer{flex-direction:column;gap:12px}.ds-form-footer-right{width:100%;justify-content:flex-end}.ds-search-wrap .ds-input-compact,.ds-search-wrap{width:100%}}.ui-input,.ui-select{margin:0;padding:0 12px;border:1.5px solid var(--color-border);border-radius:var(--ds-radius-md);font-size:13px;line-height:1.25;font-family:var(--font-family);font-weight:var(--font-weight-normal);background:var(--color-bg);color:var(--color-text);height:var(--ds-height-lg);min-height:var(--ds-height-lg);box-sizing:border-box;transition:border-color var(--ds-transition-slow),box-shadow var(--ds-transition-slow);vertical-align:middle}.ui-input:hover,.ui-select:hover{border-color:var(--ds-border-strong)}.ui-input:focus,.ui-select:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--ds-shadow-focus)}.ui-input::placeholder{color:var(--color-text-tertiary)}.ui-input:disabled,.ui-select:disabled{background:var(--color-secondary-bg)!important;color:var(--color-text-tertiary);opacity:.85;cursor:not-allowed}.ui-input.ui-input-search{padding-left:2.25rem}.ui-input-wrapper{position:relative;display:inline-block}.ui-input-wrapper .ui-input-icon{position:absolute;left:var(--spacing-sm);top:50%;transform:translateY(-50%);pointer-events:none;color:var(--color-text-secondary)}.ui-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23A3A3A3' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-md) center;padding-right:2rem}.ui-searchable-select{position:relative;display:flex;flex-direction:column;gap:6px;width:100%;min-width:0}.ui-searchable-select__label{font-size:12px;font-weight:600;color:var(--color-text-secondary)}.ui-searchable-select__control{position:relative;width:100%}.ui-searchable-select__input{width:100%;padding-right:40px}.ui-searchable-select__toggle{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--ds-radius-sm);background:transparent;color:var(--color-text-secondary);cursor:pointer}.ui-searchable-select__toggle:hover{background:var(--color-secondary-bg);color:var(--color-text)}.ui-searchable-select__toggle:disabled{cursor:not-allowed;opacity:.5}.ui-searchable-select__list{position:absolute;top:100%;left:0;right:0;z-index:100;max-height:260px;margin:2px 0 0;padding:4px;overflow-y:auto;list-style:none;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--ds-radius-md);box-shadow:0 4px 12px #00000026}.ui-searchable-select__option{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:var(--ds-radius-sm);cursor:pointer;transition:background var(--ds-transition-slow),color var(--ds-transition-slow)}.ui-searchable-select__option:hover,.ui-searchable-select__option.is-active{background:var(--color-bg-hover, rgba(0, 0, 0, .06))}.ui-searchable-select__option[aria-selected=true]{background:#ffd70024}.ui-searchable-select__option-label{font-size:13px;font-weight:500;color:var(--color-text)}.ui-searchable-select__option-description{font-size:12px;line-height:1.3;color:var(--color-text-secondary)}.ui-searchable-select__empty{padding:10px;font-size:13px;color:var(--color-text-secondary)}.ui-form-group{display:flex;flex-direction:column;gap:0}.ui-form-group-label{display:block;margin-bottom:6px;font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.ui-form-group-label .ui-tooltip-wrapper{margin-left:var(--spacing-xs);vertical-align:baseline}.ui-form-group-label.required:after{content:" *";color:var(--color-error)}.ui-form-group-error{font-size:12px;color:var(--color-error);margin-top:4px}.ui-btn{margin:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--ds-height-lg);min-height:var(--ds-height-lg);padding:0 18px;font-family:var(--font-family);font-size:13px;line-height:1.25;font-weight:var(--font-weight-semibold);border-radius:var(--ds-radius-md);border:1px solid transparent;cursor:pointer;transition:background var(--ds-transition-slow),border-color var(--ds-transition-slow),color var(--ds-transition-slow),transform var(--ds-transition-slow),box-shadow var(--ds-transition-slow);box-sizing:border-box;vertical-align:middle}.ui-btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.ui-btn-primary{background:var(--color-accent);color:var(--ds-accent-text);border-color:var(--color-accent);box-shadow:var(--ds-shadow-sm)}.ui-btn-primary:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.ui-btn-primary:active:not(:disabled){transform:scale(.98)}.ui-btn-secondary{background:var(--color-bg);color:var(--color-text);border-color:var(--ds-border-strong)}.ui-btn-secondary:hover:not(:disabled){border-color:var(--color-text);background:var(--color-secondary-bg)}.ui-btn-success{background:var(--ds-success, #16a34a);color:#fff;border-color:var(--ds-success, #16a34a);box-shadow:var(--ds-shadow-sm)}.ui-btn-success:hover:not(:disabled){background:var(--ds-success-dark, #15803d);border-color:var(--ds-success-dark, #15803d);color:#fff}.ui-btn-success:active:not(:disabled){transform:scale(.98)}.ui-btn-danger{background:var(--ds-error-bg)!important;color:var(--ds-error)!important;border:1px solid #fecaca!important}.ui-btn-danger:hover:not(:disabled){background:var(--ds-error)!important;color:var(--ds-bg)!important;border-color:var(--ds-error)!important}.ui-btn-ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.ui-btn-ghost:hover:not(:disabled){background:#f0f0f0;color:var(--color-text)}.ui-btn-ghost:active:not(:disabled){background:#ebebeb}.ui-btn-outline{background:transparent;color:var(--color-text);border:1px solid var(--ds-border-strong)}.ui-btn-outline:hover:not(:disabled){background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.ui-btn-outline:disabled{border-width:1px}.ui-btn-link{background:transparent!important;border:none!important;box-shadow:none!important;color:var(--color-text);font-weight:var(--font-weight-normal);text-decoration:underline;text-underline-offset:2px;text-decoration-color:var(--color-border);padding:0 2px;min-height:auto;height:auto;line-height:inherit}.ui-btn-link:hover:not(:disabled){color:var(--color-accent);text-decoration-color:var(--color-accent);background:transparent!important}.ui-btn-link:active:not(:disabled){transform:none}.ui-btn-sm{height:var(--ds-height-sm);min-height:var(--ds-height-sm);padding:0 10px;font-size:11.5px;border-radius:var(--ds-radius-sm)}.ui-role-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .2s ease;border:1px solid transparent}.ui-role-badge-admin{background-color:#9c27b033;color:#7b1fa2;border-color:#9c27b066}.ui-role-badge-management{background-color:#ffd70033;color:#b8860b;border-color:#ffd70066}.ui-role-badge-head{background-color:#2196f333;color:#1565c0;border-color:#2196f366}.ui-role-badge-accountant{background-color:#4caf5033;color:#2e7d32;border-color:#4caf5066}.ui-role-badge-employee{background-color:#9e9e9e33;color:#616161;border-color:#9e9e9e66}.ui-tag-badge{display:inline-flex;align-items:center;font-size:.75em;padding:.125rem .5rem;border-radius:12px;font-weight:500;white-space:nowrap}.ui-tag-badge-default{background-color:#eff6ff;color:#1d4ed8}.ui-tag-badge-success{background-color:#4caf5026;color:var(--color-success, #2e7d32)}.ui-tag-badge-warning{background-color:#ff980026;color:var(--color-warning, #e65100)}.ui-tag-badge-blue{background-color:#eff6ff;color:#1d4ed8}.ui-tag-badge-green{background-color:#f0fdf4;color:#15803d}.ui-tag-badge-amber{background-color:#fef3c7;color:#92400e}.ui-tag-badge-purple{background-color:#f3e8ff;color:#7c3aed}.ui-tag-badge-grey{background-color:#f5f5f5;color:#616161}.ui-card{background:var(--color-bg);border:1px solid #e5e5e5;border-radius:var(--ds-radius-xl);padding:var(--spacing-md);box-shadow:var(--ds-shadow-card);transition:border-color var(--ds-transition-slow),box-shadow var(--ds-transition-slow)}.ui-card-hover:hover{border-color:var(--ds-border-strong);box-shadow:var(--ds-shadow-md)}.ui-table{width:100%;border-collapse:collapse;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--ds-radius-md);overflow:hidden;box-shadow:var(--ds-shadow-sm)}.ui-table thead{background:var(--color-secondary-bg)}.ui-table th{padding:0 12px;height:var(--ds-height-md);text-align:left;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border)}.ui-table td{padding:0 12px;height:var(--ds-height-lg);border-bottom:1px solid var(--color-border);font-size:13px}.ui-table td.text-right,.data-table td.text-right{font-family:var(--ds-font-mono, ui-monospace, monospace);font-variant-numeric:tabular-nums}.ui-table tbody tr:last-child td{border-bottom:none}.ui-table tbody tr{background:var(--color-bg)}.ui-table tbody tr:hover{background:#ffd70014}.ui-tooltip-wrapper{position:relative;display:inline-flex;align-items:center;cursor:help}.ui-tooltip-icon{color:var(--color-text-secondary, #888);flex-shrink:0;transition:color .15s ease}.ui-tooltip-wrapper:hover .ui-tooltip-icon{color:var(--color-accent)}.ui-tooltip{position:absolute;z-index:1000;left:50%;transform:translate(-50%);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-text, #1a1a2e);color:var(--color-bg, #fff);font-size:.8rem;font-weight:var(--font-weight-normal);line-height:1.4;border-radius:var(--radius-sm);white-space:normal;min-width:120px;max-width:280px;pointer-events:none;box-shadow:0 4px 12px #00000040}.ui-tooltip-top{bottom:calc(100% + 8px)}.ui-tooltip-bottom{top:calc(100% + 8px)}@media (max-width: 992px){.ui-input,.ui-select{font-size:16px}}@media (max-width: 768px){.ui-btn{height:34px;min-height:34px;padding:0 14px;font-size:12px}.ui-btn-sm{height:26px;min-height:26px;font-size:11px}.ui-input,.ui-select{height:34px;min-height:34px}.ui-card{padding:var(--spacing-md);border-radius:var(--ds-radius-md)}.ui-table th,.ui-table td{padding:0 8px;font-size:12px}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-secondary-bg)}.login-container{background:var(--color-bg);padding:var(--spacing-xl);border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-logo{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.login-logo-image{width:auto;height:44px;object-fit:contain;flex-shrink:0}.login-logo-text{display:flex;flex-direction:column;line-height:1.2;text-align:left}.login-logo-text-line1,.login-logo-text-line2{font-size:16px;font-weight:600;color:var(--color-text);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;margin:0}.login-logo-text-line1{margin-bottom:2px}.login-header h2{font-size:16px;font-weight:400;color:var(--color-text-secondary);letter-spacing:var(--letter-spacing-normal);margin-top:var(--spacing-sm)}.login-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.error-message{padding:var(--spacing-md);background:#ffebee;color:var(--color-error);border-radius:var(--radius-sm);border:1px solid var(--color-error)}.admin-page{padding:var(--spacing-lg)}.admin-page h1{font-size:32px;margin-bottom:var(--spacing-lg)}.admin-header{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.admin-header h1{display:flex;align-items:center;gap:var(--spacing-sm);font-size:32px;margin:0}.admin-subtitle{font-size:14px;color:var(--color-text-secondary);margin:0}.admin-filter-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--spacing-md)}.admin-filter-row .ui-form-group{margin-bottom:0}.admin-section-title{font-size:1.125rem;font-weight:600;margin:0 0 var(--spacing-md) 0;color:var(--color-text)}.admin-external-link{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--color-accent);text-decoration:none;font-weight:500;font-size:14px}.admin-external-link:hover{text-decoration:underline}.admin-settings-panel{max-width:600px;margin-bottom:var(--spacing-xl);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--ds-shadow-sm)}.admin-settings-panel--wide{max-width:min(100%,1200px);width:100%;box-sizing:border-box}.admin-settings-panel h2{margin-top:0;font-size:1.125rem;font-weight:600}.admin-table-frame{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--ds-shadow-sm);background:var(--color-bg)}.admin-table-frame .table-responsive{border:none!important;box-shadow:none!important;border-radius:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-table-frame .ui-table.data-table{border:none;border-radius:0;box-shadow:none}.admin-row-actions{display:flex;gap:var(--spacing-xs);align-items:center;flex-wrap:wrap}.budget-rule-table-frame{box-shadow:var(--ds-shadow-card)}.budget-rule-stage-table{width:100%;min-width:780px;border-collapse:collapse;table-layout:fixed}.budget-rule-stage-table__col-name{width:46%}.budget-rule-stage-table__col-type{width:28%}.budget-rule-stage-table__col-percent{width:20%}.budget-rule-stage-table__col-action{width:48px}.budget-rule-stage-table th{height:40px;padding:0 14px;border-bottom:2px solid var(--ds-border);background:var(--ds-surface);color:var(--ds-text-tertiary);font-size:11px;font-weight:800;letter-spacing:0;text-align:left;text-transform:uppercase;white-space:nowrap}.budget-rule-stage-table td{height:42px;padding:0 14px;border-bottom:1px solid var(--ds-border);color:var(--ds-text);font-size:13px;vertical-align:middle}.budget-rule-stage-table .stage-budget-align-right{text-align:right;font-family:var(--ds-font-mono);font-variant-numeric:tabular-nums}.budget-rule-stage-table .stage-budget-row-team:hover td,.budget-rule-stage-table .stage-budget-row-expense:hover td,.budget-rule-stage-table .stage-budget-row-tax:hover td{background:#ffd7000d}.budget-rule-stage-table .stage-budget-row-section td{height:38px;border-bottom:0;background:var(--ds-text);color:var(--ds-bg);font-size:11px;font-weight:900;letter-spacing:1px;text-transform:uppercase}.budget-rule-stage-table .stage-budget-row-total td{height:48px;border-bottom:0;background:var(--ds-text);color:var(--ds-bg);font-size:14px;font-weight:900}.budget-rule-stage-table .stage-budget-row-total .stage-budget-align-right{color:var(--ds-accent)}.budget-rule-stage-table .stage-budget-row-expense,.budget-rule-stage-table .stage-budget-row-expense td,.budget-rule-stage-table .stage-budget-expense--production,.budget-rule-stage-table .stage-budget-expense--production td{background:#fffdf2}.budget-rule-stage-table .stage-budget-row-tax,.budget-rule-stage-table .stage-budget-row-tax td{background:var(--ds-warning-bg)}.budget-rule-stage-table .stage-budget-row-tax td,.budget-rule-stage-table .stage-budget-row-tax .stage-budget-category{color:var(--ds-warning);font-weight:800}.budget-rule-stage-table .stage-budget-expense--non-production,.budget-rule-stage-table .stage-budget-expense--non-production td{background:var(--ds-error-bg)}.budget-rule-stage-table .stage-budget-expense--non-production td,.budget-rule-stage-table .stage-budget-expense--non-production .stage-budget-category{color:var(--ds-error)}.budget-rule-stage-table .stage-budget-category{display:inline-flex;align-items:center;gap:7px;min-width:0;font-weight:800}.budget-rule-stage-table .stage-budget-category__icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:var(--ds-radius-xs);background:var(--ds-surface);color:var(--ds-text-tertiary);font-size:10px;font-weight:900}.budget-rule-stage-table .stage-budget-category__icon--arch{background:#eff6ff;color:#2563eb}.budget-rule-stage-table .stage-budget-category__icon--eng{background:#f0fdf4;color:#15803d}.budget-rule-stage-table .stage-budget-category__icon--design{background:#f3e8ff;color:#7c3aed}.budget-rule-stage-table .stage-budget-category__icon--mgmt{background:#fef3c7;color:#92400e}.budget-rule-stage-table .stage-budget-category__icon--fin{background:var(--ds-error-bg);color:var(--ds-error)}.budget-rule-stage-table .stage-budget-category__icon--sales{background:#ecfeff;color:#0891b2}.budget-rule-stage-table .stage-budget-category__icon--expense{border:1px solid currentColor;border-radius:50%;background:transparent;font-family:var(--ds-font-mono)}.budget-rule-stage-table .stage-budget-category__icon--expense-tax,.budget-rule-stage-table .stage-budget-category__icon--expense-production{color:var(--ds-warning)}.budget-rule-stage-table .stage-budget-category__icon--expense-non-production{color:var(--ds-error)}.budget-rule-name-cell{width:100%}.budget-rule-inline-input.ui-input,.budget-rule-inline-select.ui-select{min-height:32px}.budget-rule-inline-input.ui-input{width:min(100%,280px)}.budget-rule-inline-select.ui-select{width:min(100%,260px)}.budget-rule-percent-input.ui-input{width:112px;min-height:32px;margin-left:auto;text-align:right}.budget-rule-action-cell{text-align:center}.budget-rule-type-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:var(--ds-radius-xs);background:var(--ds-surface);color:var(--ds-text-secondary);font-size:12px;font-weight:700}.budget-rule-delete.ui-btn{width:28px;height:28px;min-width:28px;padding:0;color:var(--ds-error);font-size:18px;line-height:1;border-radius:50%}.admin-page .admin-table-frame:not(.admin-table-frame--plain-first) .ui-table.data-table tbody td:first-child{font-weight:600;color:var(--color-text)}.admin-form{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.admin-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-form label{font-weight:500}.admin-form input,.admin-form select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg)!important;color:var(--color-text)}.admin-form input:focus,.admin-form select:focus{outline:none;border-color:var(--color-accent);border-width:2px}.admin-form--borderless{border:none;box-shadow:none;background:transparent;padding:0;margin-bottom:var(--spacing-md)}.user-action-icon.ui-btn{padding:0 12px;min-width:var(--ds-height-lg)}.modal-body-ds{display:flex;flex-direction:column;gap:var(--spacing-md)}.modal-body-ds .modal-actions{margin-top:var(--spacing-sm)}.admin-field-form{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:var(--ds-shadow-sm)}.admin-field-form h3{margin:0 0 var(--spacing-md) 0;font-size:1.125rem;font-weight:600;color:var(--color-text)}.admin-field-form .admin-field-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--spacing-md)}@media (max-width: 768px){.admin-field-form .admin-field-form-grid{grid-template-columns:1fr}}.user-form-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:0 2px 8px #0000001a}.user-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.user-form h2{margin:0 0 var(--spacing-md) 0;font-size:24px;font-weight:600}.user-form .form-fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}@media (max-width: 768px){.user-form .form-fields{grid-template-columns:1fr}}.user-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.user-form .form-group.checkbox-group{flex-direction:row;align-items:center;gap:var(--spacing-sm)}.user-form .form-group.checkbox-group label{margin:0;cursor:pointer}.user-form label{font-weight:500;font-size:14px}.user-form input,.user-form select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;background:var(--color-bg)!important;color:var(--color-text)}.user-form input:focus,.user-form select:focus{outline:none;border-color:var(--color-accent);border-width:2px}.user-form input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent);background:var(--color-bg)!important;border:1px solid var(--color-border)}.user-form input[type=checkbox]:checked{background:var(--color-accent)!important;border-color:var(--color-accent)}.user-form .form-actions{display:flex;justify-content:flex-end;align-items:center;padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.user-form .form-actions .button-group{display:flex;align-items:center;gap:var(--spacing-md)}.user-form .form-actions .button-group button,.user-form .form-actions .button-group .btn-primary,.user-form .form-actions .button-group .btn-secondary{min-height:40px!important;height:40px!important;padding:var(--spacing-sm) var(--spacing-md)!important;font-size:14px!important;font-weight:500!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;margin:0!important}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);box-sizing:border-box}.modal-content{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);max-width:min(100%,520px);width:100%;box-shadow:var(--ds-shadow-md);box-sizing:border-box}.sync-log-details-modal{max-width:700px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.modal-header h3{margin:0;font-size:20px;font-weight:600}.modal-close{background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:var(--color-text);padding:0 4px}.modal-close:hover{color:var(--color-primary)}.modal-body{margin-top:var(--spacing-md)}.modal-content h3{margin:0 0 var(--spacing-md) 0;font-size:1.125rem;font-weight:600;color:var(--color-text)}.modal-content--ds h3{margin-bottom:var(--spacing-md)}.modal-content p{margin:0 0 var(--spacing-lg) 0;color:var(--color-text);line-height:1.5}.modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md)}.modal-error{color:var(--color-error, #c00)}.budget-employees-dept-block{margin-bottom:var(--spacing-lg)}.budget-employees-dept-block:last-child{margin-bottom:0}.budget-employees-dept-title{margin:0 0 var(--spacing-md) 0;font-size:16px;font-weight:600;color:var(--color-text)}.budget-employees-team-card{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md);background:var(--color-secondary-bg)}.budget-employees-team-card:last-child{margin-bottom:0}.budget-employees-team-header{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.budget-employees-list{list-style:none;margin:0;padding:0}.budget-employees-row{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xs) 0;border-bottom:1px solid var(--color-border)}.budget-employees-row:last-child{border-bottom:none}.budget-employees-row span:first-child{flex:1}.budget-employees-row span:last-child{display:flex;gap:var(--spacing-xs)}.budget-employees-row .icon-button{padding:var(--spacing-xs);min-width:auto}.percentage-groups-list{display:grid;gap:var(--spacing-sm)}.percentage-group-row{width:100%;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);padding:var(--spacing-md);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);text-align:left;cursor:pointer}.percentage-group-row.active{border-color:var(--color-primary);background:var(--color-primary-light, #eef5ff)}.percentage-group-row-main{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.percentage-group-row-meta{color:var(--color-text-secondary);white-space:nowrap}.percentage-period-form{display:grid;grid-template-columns:minmax(160px,220px) minmax(160px,220px) auto;gap:var(--spacing-md);align-items:end;margin-bottom:var(--spacing-lg)}.percentage-group-linked{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.percentage-linked-list{list-style:none;padding:0;margin:var(--spacing-sm) 0 0 0;border-top:1px solid var(--color-border)}.percentage-linked-list li{display:flex;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border)}.percentage-linked-list li span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis}@media (max-width: 760px){.percentage-group-row,.percentage-linked-list li{align-items:flex-start;flex-direction:column}.percentage-period-form,.percentage-group-linked{grid-template-columns:1fr}}.user-actions-cell{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.user-actions-cell .btn-toggle-active{border-color:var(--color-success);color:var(--color-success)}.user-actions-cell .btn-toggle-inactive{border-color:var(--color-warning);color:var(--color-warning)}.admin-table table,.logs-table table,.preview-table table,.mapping-form table{width:100%;border-collapse:collapse;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.admin-table th,.logs-table th,.preview-table th,.mapping-form th{background:var(--color-secondary-bg);padding:var(--spacing-md);text-align:left;font-weight:600;border-bottom:1px solid var(--color-border)}.admin-table td,.logs-table td,.preview-table td,.mapping-form td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border)}.admin-table tr:hover,.logs-table tr:hover{background:#fff9e6}.error-row{background:#ffebee!important}.status-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:12px;font-weight:600}.status-success{background:#e8f5e9;color:var(--color-success)}.status-error{background:#ffebee;color:var(--color-error)}.status-running{background:#fff3e0;color:var(--color-warning)}.btn-primary,.btn-secondary,.btn-danger{padding:var(--spacing-sm) var(--spacing-md)!important;min-height:40px!important;height:40px!important;border:2px solid var(--color-accent);background:transparent;color:var(--color-text);border-radius:var(--radius-sm);cursor:pointer;font-weight:500;font-size:14px;transition:all .3s ease;text-decoration:none;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important}.btn-primary:hover{background:var(--color-accent);color:var(--color-text)}.btn-secondary{border-color:var(--color-border)}.btn-secondary:hover{background:var(--color-secondary-bg)}.btn-danger{border-color:var(--color-error);color:var(--color-error)}.btn-danger:hover{background:var(--color-error);color:#fff}.sync-section{margin-bottom:var(--spacing-xl)}.sync-section h2{font-size:24px;margin-bottom:var(--spacing-md)}.sheets-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.sheets-table{margin-bottom:var(--spacing-lg)}.sheets-table table{width:100%;border-collapse:collapse;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.sheets-table th{background:var(--color-secondary-bg);padding:var(--spacing-md);text-align:left;font-weight:600;border-bottom:1px solid var(--color-border)}.sheets-table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border)}.sheets-table tr:hover{background:#fff9e6}.sheet-row{transition:background-color .2s ease}.sheet-row:hover{background:#fff9e6!important}.sheet-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:0 2px 8px #0000001a}.sheet-card h3{margin-bottom:var(--spacing-md)}.sheet-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;align-items:center}.icon-button{background:transparent;border:none;cursor:pointer;font-size:20px;padding:5px 8px;border-radius:var(--radius-sm);transition:background-color .2s ease;display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px}.icon-button img{width:18px;height:18px;display:block}.icon-button:hover{background:var(--color-secondary-bg)}.icon-button:active{background:var(--color-border)}.collapsible-header{padding:var(--spacing-md);background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm)}.collapsible-header:hover{background:#f5f5f5}.mapping-section{margin-bottom:var(--spacing-xl)}.mapping-section h2{font-size:24px;margin-bottom:var(--spacing-md)}.mapping-form input[type=text],.mapping-form input[type=text]:focus{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;color:var(--color-text)}.mapping-form input[type=text]:focus{outline:none;border-color:var(--color-accent);border-width:2px}.mapping-form select,.mapping-form select:focus{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg)!important;color:var(--color-text)}.mapping-form select option{background:var(--color-bg)!important;color:var(--color-text)}.mapping-form select:focus{outline:none;border-color:var(--color-accent);border-width:2px}.mapping-form input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent);background:#fff!important;appearance:none;-webkit-appearance:none;-moz-appearance:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);position:relative}.mapping-form input[type=checkbox]:checked{background:var(--color-accent)!important;border-color:var(--color-accent)}.mapping-form input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--color-text);font-size:14px;font-weight:700}.admin-page .section-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:0 2px 8px #0000000f}.admin-page .section-card-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.admin-page .section-card-header h2{margin:0;font-size:18px;font-weight:600}.admin-page{overflow-x:hidden;max-width:100%;box-sizing:border-box}.admin-search-wrap{margin-bottom:15px}.admin-search-input{padding:8px 12px;border:1px solid var(--color-border);border-radius:4px;width:300px;max-width:100%;font-size:14px;box-sizing:border-box}@media (max-width: 768px){.admin-page{padding-left:var(--spacing-md);padding-right:var(--spacing-md);max-width:100vw}.admin-search-input{width:100%;max-width:300px}}.entity-history-section{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.entity-history-title{font-size:18px;font-weight:600;margin-bottom:var(--spacing-md);color:var(--color-text)}.entity-history-loading,.entity-history-error,.entity-history-empty{padding:var(--spacing-md);color:var(--color-text-secondary);font-size:14px}.entity-history-error{color:var(--color-error)}.entity-history-table{width:100%;font-size:14px}.entity-history-table th{text-align:left;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);font-weight:600;color:var(--color-text-secondary)}.entity-history-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);vertical-align:top}.entity-history-changes{max-width:280px}.entity-history-summary{display:block;margin-bottom:var(--spacing-xs)}.entity-history-toggle{background:none;border:none;color:var(--color-accent);cursor:pointer;font-size:13px;padding:0;text-decoration:underline;min-height:unset}.entity-history-toggle:hover{color:var(--color-accent-hover)}.entity-history-detail{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-secondary-bg);border-radius:var(--radius-sm);font-size:12px}.entity-history-detail pre{margin:var(--spacing-xs) 0 0;white-space:pre-wrap;word-break:break-word;overflow-x:auto}.entity-history-diff-list{margin:var(--spacing-xs) 0 0;padding-left:var(--spacing-md);font-size:13px}.entity-history-action{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:13px;font-weight:500}.entity-history-action--create{background:#4caf5026;color:var(--color-success)}.entity-history-action--update{background:#2196f326;color:var(--color-info)}.entity-history-action--delete{background:#f4433626;color:var(--color-error)}.roles-table-container{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 2px 8px #0000000d}.roles-table-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-secondary-bg);display:flex;justify-content:flex-end;align-items:center;gap:var(--spacing-md)}.roles-changes-indicator{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:#ff98001a;border:1px solid #FF9800;border-radius:var(--radius-sm);color:#ff9800;font-size:14px;font-weight:500;flex-shrink:0}.roles-table-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0;height:36px}.roles-table-actions button{min-width:120px;height:36px!important;display:inline-flex!important;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:0 var(--spacing-md)!important;margin:0!important;font-size:14px;font-weight:500;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all .2s ease;box-sizing:border-box;line-height:1!important;vertical-align:middle}.roles-table-actions .btn-secondary{background:var(--color-secondary-bg)!important;color:var(--color-text)!important;border:1px solid var(--color-border)!important;height:36px!important}.roles-table-actions .btn-secondary:hover:not(:disabled){background:var(--color-bg)!important;border-color:var(--color-accent)!important;color:var(--color-text)!important}.roles-table-actions .btn-secondary:disabled{opacity:.5;cursor:not-allowed;background:var(--color-secondary-bg)!important;color:var(--color-text-secondary)!important}.roles-table-actions .btn-primary{background:var(--color-accent)!important;color:var(--color-text)!important;border:1px solid var(--color-accent)!important;height:36px!important}.roles-table-actions .btn-primary:hover:not(:disabled){background:gold!important;border-color:gold!important;transform:translateY(-1px);box-shadow:0 2px 8px #ffd7004d;color:var(--color-text)!important}.roles-table-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none;background:var(--color-accent)!important;border-color:var(--color-accent)!important}.roles-table-wrapper{overflow-x:auto;max-height:calc(100vh - 300px);overflow-y:auto}.roles-table{width:100%;border-collapse:collapse;background:var(--color-bg)}.roles-table thead{position:sticky;top:0;z-index:10;background:var(--color-secondary-bg)}.roles-table th{padding:var(--spacing-md);text-align:left;font-weight:600;color:var(--color-text);border-bottom:2px solid var(--color-border);white-space:nowrap}.roles-table-permission-col{min-width:300px;max-width:400px;position:sticky;left:0;background:var(--color-secondary-bg);z-index:5}.roles-table-role-col{min-width:150px;text-align:center}.role-header{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.role-header-name{font-size:14px;font-weight:600;color:var(--color-text)}.role-header-code{font-size:12px;color:var(--color-text-secondary);font-family:monospace;padding:2px 6px;background:var(--color-bg);border-radius:var(--radius-sm)}.roles-table tbody tr{border-bottom:1px solid var(--color-border);transition:background-color .2s ease}.roles-table tbody tr:hover{background:#ffd70008}.roles-table-category-row{background:var(--color-secondary-bg)}.roles-table-category{padding:var(--spacing-sm) var(--spacing-md);font-weight:600;font-size:14px;color:var(--color-text);border-bottom:2px solid var(--color-border);position:sticky;left:0;z-index:3}.roles-table-category{display:flex;align-items:center;gap:var(--spacing-xs)}.roles-table-permission-row{background:var(--color-bg)}.roles-table-permission{padding:var(--spacing-md);position:sticky;left:0;background:var(--color-bg);z-index:2;border-right:1px solid var(--color-border)}.permission-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.permission-name{font-size:14px;font-weight:500;color:var(--color-text)}.permission-code{font-size:11px;color:var(--color-text-secondary);font-family:monospace;padding:2px 4px;background:var(--color-secondary-bg);border-radius:var(--radius-sm);display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roles-table-checkbox{padding:var(--spacing-md);text-align:center;vertical-align:middle}.permission-checkbox-label{display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}.permission-checkbox-label.disabled{cursor:not-allowed;opacity:.7}.permission-checkbox{position:absolute;opacity:0;cursor:pointer;width:0;height:0}.permission-checkbox-custom{width:20px;height:20px;border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);position:relative;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.permission-checkbox-label:hover .permission-checkbox-custom{border-color:var(--color-accent);background:#ffd7001a}.permission-checkbox:checked~.permission-checkbox-custom{background:var(--color-accent);border-color:var(--color-accent)}.permission-checkbox:checked~.permission-checkbox-custom:after{content:"";position:absolute;width:6px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg);margin-top:-2px}.permission-checkbox:focus~.permission-checkbox-custom{box-shadow:0 0 0 3px #ffd70033}.admin-message{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.admin-message-success{background:#4caf501a;border:1px solid var(--color-success);color:var(--color-success)}.admin-message-error{background:#f443361a;border:1px solid var(--color-error);color:var(--color-error)}.message-close{background:none;border:none;font-size:20px;cursor:pointer;color:inherit;padding:0;margin-left:var(--spacing-md);opacity:.7;transition:opacity .2s ease}@media (max-width: 1024px){.roles-table-wrapper{max-height:calc(100vh - 250px)}.roles-table-permission-col{min-width:250px}.roles-table-role-col{min-width:120px}}@media (max-width: 768px){.roles-table-header{padding:var(--spacing-sm)}.roles-table-actions{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.roles-table-actions button{width:100%}.roles-table-permission-col{min-width:200px}.roles-table-role-col{min-width:100px}.role-header-name{font-size:12px}.role-header-code{font-size:10px}.permission-name{font-size:13px}.permission-code{font-size:10px}}.employee-avatar-wrapper{position:relative;display:inline-flex;align-items:center;vertical-align:middle}.employee-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:600;flex-shrink:0;overflow:hidden;vertical-align:middle}.avatar-image{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar-small{width:32px;height:32px;font-size:12px}.avatar-medium{width:48px;height:48px;font-size:16px}.avatar-large{width:80px;height:80px;font-size:28px}.avatar-initials{-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1}.avatar-status{position:absolute;bottom:0;right:0;width:12px;height:12px;border-radius:50%;border:2px solid white}.avatar-status-online{background-color:var(--color-success)}.avatar-status-offline{background-color:var(--color-border)}.avatar-status-away{background-color:var(--color-warning)}.has-tooltip{position:relative}.avatar-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-8px);padding:6px 12px;background-color:#1a1a1a;color:#fff;font-size:12px;font-weight:500;white-space:nowrap;border-radius:6px;opacity:0;pointer-events:none;z-index:100000;box-shadow:0 4px 12px #0006;visibility:hidden;transition:opacity 0s,visibility 0s,transform 0s;margin-bottom:8px}.avatar-tooltip:before{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1a1a1a}.has-tooltip:hover .avatar-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.workload-indicator{display:flex;flex-direction:column;gap:var(--spacing-xs)}.workload-label{display:flex;justify-content:space-between;align-items:center;font-size:12px}.workload-text{color:var(--color-text-secondary);font-weight:500}.workload-percentage{color:var(--color-text);font-weight:600}.workload-bar-container{width:100%;height:8px;background-color:var(--color-secondary-bg);border-radius:var(--radius-sm);overflow:hidden}.workload-medium .workload-bar-container{height:10px}.workload-large .workload-bar-container{height:12px}.workload-bar{height:100%;transition:width .3s ease,background-color .3s ease;border-radius:var(--radius-sm)}.contact-info{width:100%}.contact-info-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.contact-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);border-radius:var(--radius-sm);transition:background-color .2s}.contact-item:hover{background-color:var(--color-secondary-bg)}.contact-item.contact-placeholder{opacity:.6}.contact-icon{font-size:20px;width:24px;text-align:center;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-icon img{width:20px;height:20px;display:block}.contact-details{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.contact-label{font-size:12px;color:var(--color-text-secondary);font-weight:500}.contact-value{font-size:14px;color:var(--color-text);text-decoration:none}.contact-value:hover{color:var(--color-accent);text-decoration:underline}.contact-value.contact-empty{color:var(--color-text-secondary);font-style:italic}.contact-action{background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;font-size:14px;color:var(--color-text);transition:all .2s}.contact-action:hover{border-color:var(--color-accent);background-color:var(--color-accent);color:var(--color-text)}.project-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);transition:all .2s}.project-card.clickable{cursor:pointer}.project-card.clickable:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.project-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.project-card-title{font-size:16px;font-weight:600;margin:0;flex:1}.project-card-status{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:12px;font-weight:500;color:#fff;white-space:nowrap}.project-card-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.project-detail-item{display:flex;gap:var(--spacing-sm);font-size:14px}.project-detail-label{font-weight:500;color:var(--color-text-secondary);min-width:80px}.project-detail-value{color:var(--color-text)}@media (max-width: 768px){.avatar-large{width:64px;height:64px;font-size:24px}.contact-item{flex-wrap:wrap}.project-card-header{flex-direction:column;align-items:flex-start}}.company-page{padding:var(--spacing-lg)}.company-page h1{font-size:32px;font-weight:600;letter-spacing:var(--letter-spacing-tight);margin-bottom:var(--spacing-lg)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing-sm)}.page-header h1{margin:0}.page-header-left{display:flex;align-items:center;gap:var(--spacing-md)}.client-section-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:column}.client-section-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.client-section-header img,.client-section-header svg{flex-shrink:0;vertical-align:middle;align-self:center}.page-header-actions{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap}.client-card-hero{margin-bottom:var(--spacing-lg)}.client-card-hero-name{font-size:28px;font-weight:700;letter-spacing:var(--letter-spacing-tight);margin:0 0 var(--spacing-sm) 0;color:var(--color-text)}.client-card-hero-meta{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;color:var(--color-text-secondary);font-size:14px}.client-card-hero-meta-item{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.client-card-hero-meta-dot{width:4px;height:4px;border-radius:50%;background:var(--color-border)}.client-section-header.client-section-header-actions{justify-content:space-between;flex-wrap:wrap}.client-section-header-left{display:flex;align-items:center;gap:var(--spacing-sm)}.client-section-header-left img,.client-section-header-left svg{vertical-align:middle;align-self:center}.client-section-header h2{margin:0;font-size:18px;font-weight:600}.section-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:column}.section-card-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.section-card-header h2{margin:0;font-size:18px;font-weight:600}.section-card-header.section-card-header-actions{justify-content:space-between;flex-wrap:wrap}.employee-projects-export-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.client-contacts-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-secondary-bg);color:var(--color-text-secondary);min-height:120px;flex:1;width:100%}.client-contacts-empty>*:first-child{margin-bottom:var(--spacing-sm);opacity:.7}.client-contacts-empty p{margin:0;font-size:14px;font-weight:500}.client-objects-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-secondary-bg);color:var(--color-text-secondary);min-height:120px;flex:1;width:100%}.client-objects-empty>*:first-child{margin-bottom:var(--spacing-sm);opacity:.7}.client-objects-empty p{margin:0;font-size:14px;font-weight:500}.contract-two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.contract-two-col .section-card{display:flex;flex-direction:column;min-height:0}.stage-detail-redesign .contract-two-col{gap:16px;align-items:start}.stage-detail-redesign .section-card{border-radius:var(--ds-radius-xl)}.stage-detail-redesign .section-card-header,.stage-budget-progress{margin-bottom:18px}.stage-budget-progress .progress-label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}.stage-budget-progress .progress-label-left{color:var(--ds-text-secondary);font-size:14px;font-weight:600}.stage-budget-progress .progress-label-right{color:var(--ds-success);font-family:var(--ds-font-mono);font-size:13px;font-weight:800}.stage-budget-link-list{display:flex;flex-direction:column;gap:10px}.stage-budget-link-card{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-lg);background:var(--ds-bg);color:inherit;text-align:left;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .12s ease}.stage-budget-link-card:hover{background:var(--ds-surface);border-color:var(--ds-border-strong);transform:translateY(-1px)}.stage-budget-link-card__left{min-width:0;display:flex;align-items:center;gap:12px}.stage-budget-link-card__icon{width:34px;height:34px;border-radius:var(--ds-radius-md);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.stage-budget-link-card--production .stage-budget-link-card__icon{background:#ffd70024;color:var(--ds-accent-warm)}.stage-budget-link-card--service .stage-budget-link-card__icon{background:var(--ds-info-bg);color:var(--ds-info)}.stage-budget-link-card__title{color:var(--ds-text);font-size:14px;font-weight:800}.stage-budget-link-card__sub{margin-top:2px;color:var(--ds-text-tertiary);font-size:12px;line-height:1.35}.stage-budget-link-card__right{text-align:right}.stage-budget-link-card__amount{color:var(--ds-text);font-family:var(--ds-font-mono);font-size:14px;font-weight:800;white-space:nowrap}.stage-budget-link-card__pct{margin-top:2px;color:var(--ds-accent-warm);font-size:12px;font-weight:800}.stage-budget-link-card__arrow{color:var(--ds-text-tertiary);font-size:20px;line-height:1}.stage-act-list{display:flex;flex-direction:column}.stage-act-row{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:44px;padding:11px 0;border-bottom:1px solid var(--ds-border);color:inherit;cursor:pointer}.stage-act-row:hover{color:var(--ds-accent-text)}.stage-act-row:focus-visible{outline:2px solid var(--ds-accent);outline-offset:3px;border-radius:var(--ds-radius-sm)}.stage-act-row__info{min-width:0;display:flex;align-items:center;gap:14px}.stage-act-row__number{min-width:72px;color:var(--ds-text);font-size:14px;font-weight:800;white-space:nowrap}.stage-act-row__date{color:var(--ds-text-tertiary);font-family:var(--ds-font-mono);font-size:12px;white-space:nowrap}.stage-act-row__side{display:flex;justify-content:flex-end;align-items:center;gap:16px;flex:0 0 auto}.stage-act-row__amount{color:var(--ds-text);font-family:var(--ds-font-mono);font-size:13px;font-weight:700;white-space:nowrap}.stage-act-status{display:inline-flex;align-items:center;justify-content:center;min-width:78px;padding:3px 9px;border-radius:var(--ds-radius-sm);font-size:10.5px;font-weight:800;line-height:1.3;text-transform:uppercase;letter-spacing:0;white-space:nowrap}.stage-act-status--signed{background:var(--ds-success-bg);color:var(--ds-success-dark)}.stage-act-status--pending{background:var(--ds-warning-bg);color:var(--ds-warning-dark)}.stage-act-status--unsigned{background:var(--ds-surface);color:var(--ds-text-tertiary)}.stage-act-total{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:14px;padding-top:14px;color:var(--ds-text-secondary);font-size:13px;font-weight:700}.stage-act-total strong{color:var(--ds-text);font-family:var(--ds-font-mono);font-size:14px;font-weight:800;white-space:nowrap}.contract-stages-empty,.contract-acts-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-secondary-bg);color:var(--color-text-secondary);min-height:120px;flex:1;width:100%}.contract-stages-empty>*:first-child,.contract-acts-empty>*:first-child{margin-bottom:var(--spacing-sm);opacity:.7}.contract-stages-empty p,.contract-acts-empty p{margin:0;font-size:14px;font-weight:500}.contract-scroll-list{max-height:506px;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;scrollbar-gutter:stable}.stage-act-list.contract-scroll-list{max-height:380px}.entity-act-list.contract-scroll-list{max-height:452px}.department-page .entity-history-section.card-section{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:0 2px 8px #0000000f}.client-object-card .list-card-title-wrap{display:flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap}.client-object-card .list-card-title-wrap .list-card-title{flex:0 1 auto}.client-object-stats{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;justify-content:flex-start;padding-top:var(--spacing-sm);border-top:1px solid var(--color-border);margin-top:var(--spacing-sm)}.client-object-stat{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:14px;color:var(--color-text-secondary)}.client-object-stat img,.client-object-stat svg{flex-shrink:0;opacity:.8}.info-item-empty-text{font-style:italic!important}.client-passport-grid{grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-md) var(--spacing-lg)}.client-passport-grid .info-item-col-2{grid-column:span 2}.client-passport-grid .info-item-full{grid-column:1 / -1}.client-passport-grid .info-item-text{font-size:14px;line-height:1.5;color:var(--color-text-secondary)}.client-two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.client-object-card .list-card-main{flex:1;min-width:0}.client-object-card .list-card-footer{display:flex;justify-content:flex-end;align-items:center;padding-top:var(--spacing-sm);border-top:1px solid var(--color-border);margin-top:var(--spacing-sm)}.client-object-card .list-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm)}.th-actions,.td-actions{text-align:right;width:60px}.company-page .font-medium{font-weight:var(--font-weight-medium)}@media (max-width: 992px){.client-two-col,.contract-two-col,.client-passport-grid{grid-template-columns:1fr}.client-passport-grid .info-item-col-2{grid-column:1}}@media (max-width: 768px){.client-card-hero-name{font-size:22px}.stage-budget-link-card{grid-template-columns:minmax(0,1fr) 16px}.stage-budget-link-card__right{grid-column:1 / -1;grid-row:2;padding-left:46px;text-align:left}.stage-act-row{align-items:stretch;flex-direction:column;gap:8px}.stage-act-row__info,.stage-act-row__side{width:100%;justify-content:space-between}.stage-act-row__number{min-width:0}.page-header{flex-wrap:wrap;gap:var(--spacing-sm)}.page-header-left{flex-wrap:wrap}}.create-act-modal-content{margin-top:var(--spacing-md);display:flex;flex-direction:column;gap:14px}.company-page .create-act-modal-content .ui-searchable-select{width:100%;min-width:0}.company-page .create-act-modal-content .ui-input{width:100%;min-width:0;box-sizing:border-box;height:40px;min-height:40px}.filters-section{margin-bottom:var(--spacing-lg)}.filters{display:flex;gap:var(--spacing-md);flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:200px}.filter-group-search{min-width:280px;flex:1;max-width:400px;position:relative}.filter-group-search .ui-input,.filter-group-search input{width:100%;min-width:0;box-sizing:border-box}.search-suggestions{position:absolute;top:100%;left:0;right:0;margin:0;padding:0;list-style:none;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;z-index:100;max-height:240px;overflow-y:auto}.search-suggestion-item{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.search-suggestion-item:hover{background:var(--color-secondary-bg)}.search-suggestion-name{font-weight:500}.search-suggestion-inn{font-size:12px;color:var(--color-text-secondary, #666)}.filter-group label{font-weight:500;font-size:14px}.filter-group input,.filter-group select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;background-color:var(--color-bg);color:var(--color-text)}.filter-group select.ui-select{padding-right:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-md) center}.date-picker-wrapper{width:100%}.date-picker-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;background:var(--color-bg)!important;color:var(--color-text)}.date-picker-input:focus{outline:none;border-color:var(--color-accent);border-width:2px}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:var(--color-accent);border-width:2px}.table-section{margin-top:var(--spacing-lg)}.company-page .table-responsive{border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--ds-shadow-sm);overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--color-bg)}.company-page .table-responsive .ui-table.data-table{border:none;border-radius:0;box-shadow:none}.company-page .table-wrapper{border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--ds-shadow-sm);overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--color-bg)}.company-page .table-wrapper .ui-table.data-table{border:none;border-radius:0;box-shadow:none}.company-page .company-table-frame{border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--ds-shadow-sm);overflow:hidden;background:var(--color-bg)}.company-page .company-table-frame .table-responsive,.company-page .company-table-frame .table-wrapper{border:none;box-shadow:none;border-radius:0}.company-page .company-table-frame .ui-pagination.ds-table-pagination{margin:0;border:none;border-top:1px solid var(--color-border);border-radius:0;background:var(--ds-surface)}.company-page .company-pagination-bar-wrap{margin-top:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--ds-shadow-sm);overflow:hidden;background:var(--color-bg)}.company-page .company-pagination-bar-wrap .ui-pagination.ds-table-pagination{border-top:none}.company-page .list-primary-name{font-weight:600;color:var(--color-text);text-decoration:none;transition:color var(--ds-transition, .15s ease)}.company-page .list-primary-name:hover{color:#b8960a}.company-page .client-name-link{font-weight:600;color:var(--color-text);text-decoration:none;transition:color var(--ds-transition, .15s ease)}.company-page .client-name-link:hover{color:#b8960a}.company-page .ui-table.data-table tbody td,.company-page .data-table tbody td .amount-bold{font-weight:400}.company-page .data-table tbody td .ui-table-entity-link,.company-page .data-table tbody td.ui-table-entity-link{color:var(--color-text);font-weight:400;text-decoration:none;border:none;border-radius:0;padding:0;display:inline;max-width:100%;background:none;cursor:pointer;font:inherit;text-align:inherit;vertical-align:baseline;transition:color var(--ds-transition, .15s ease)}.company-page .data-table tbody td .ui-table-entity-link:hover,.company-page .data-table tbody td.ui-table-entity-link:hover{color:var(--color-accent)}.company-page .data-table tbody td a.ui-table-entity-link{box-sizing:border-box}.company-page .data-table td.mono,.company-page .mono{font-family:var(--ds-font-mono, ui-monospace, monospace);font-variant-numeric:tabular-nums}.company-page .filters-section{padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.team-filters-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);flex-wrap:wrap}.team-filters-actions{display:flex;align-items:center;justify-content:flex-end;margin-left:auto}.company-page .filters{align-items:center;gap:12px;margin-bottom:0}.company-page .filter-group{flex-direction:row;align-items:center;gap:6px;min-width:0;flex:0 1 auto}.company-page .filter-group>label{font-size:12px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap;margin:0}.company-page .filter-group>label:after{content:":"}.company-page .filter-group .ui-input,.company-page .filter-group .ui-select,.company-page .filter-group select.ui-select{height:32px;min-height:32px;padding:0 10px;font-size:13px;border-radius:var(--radius-sm)}.company-page .filter-group select.ui-select{padding-right:28px;background-position:right 10px center}.company-page .filter-group .stage-type-filter-select{width:178px;flex:0 0 178px;gap:0}.company-page .filter-group .stage-type-filter-select .ui-searchable-select__input{height:32px;min-height:32px;padding:0 28px 0 10px;border-radius:var(--radius-sm);font-size:13px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.company-page .filter-group .stage-type-filter-select .ui-searchable-select__toggle{right:0;width:28px;height:32px;border-radius:0 var(--radius-sm) var(--radius-sm) 0}.company-page .filter-group .stage-type-filter-select .ui-searchable-select__toggle img,.company-page .filter-group .stage-type-filter-select .ui-searchable-select__toggle svg{opacity:0}.company-page .filter-group .date-picker-input{height:32px;min-height:32px;padding:0 10px;font-size:13px}.company-page .filter-group input:focus,.company-page .filter-group select:focus,.company-page .filter-group .ui-input:focus,.company-page .filter-group .ui-select:focus{border-width:1px;box-shadow:0 0 0 2px #ffd70026}.company-page .filter-group-search{flex:1 1 240px;min-width:min(100%,200px);max-width:320px}.company-page .filter-group-search>div:has(.ui-input){flex:1 1 auto;min-width:0}.company-page .filter-group-search .ui-input{padding-left:30px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16' fill='none'%3E%3Ccircle cx='7' cy='7' r='4.5' stroke='%23A3A3A3' stroke-width='1.5'/%3E%3Cpath d='M10.2 10.2L14 14' stroke='%23A3A3A3' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 9px center;background-size:14px 14px}.company-page .filter-bar__toggle.ui-btn.ui-btn-secondary,.company-page .filters-toggle-btn.ui-btn.ui-btn-secondary{border-radius:var(--radius-sm);height:32px;min-height:32px;padding:0 14px;font-size:13px}.company-page .filter-bar{margin-bottom:0}.company-page .filter-bar__content{padding-top:0;padding-bottom:0}.company-page .filter-bar__fields{align-items:center;gap:12px;margin-bottom:0}.company-page .filter-bar__fields .filter-group{flex-direction:row;align-items:center;gap:6px;min-width:0}.company-page .filter-bar__fields .filter-group label{font-size:12px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap;margin:0}.company-page .filter-bar__fields .filter-group label:after{content:":"}.company-page .filter-bar__fields .filter-group .ui-input,.company-page .filter-bar__fields .filter-group .ui-select,.company-page .filter-bar__fields .filter-group select.ui-select{height:32px;min-height:32px;padding:0 10px;font-size:13px}.company-page .filter-bar__fields .filter-group select.ui-select{padding-right:28px;background-position:right 10px center}.company-page .filter-bar__fields .filter-group .date-picker-input{height:32px;min-height:32px;padding:0 10px;font-size:13px}.company-page .filter-bar__fields .filter-group-search .ui-input{padding-left:30px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16' fill='none'%3E%3Ccircle cx='7' cy='7' r='4.5' stroke='%23A3A3A3' stroke-width='1.5'/%3E%3Cpath d='M10.2 10.2L14 14' stroke='%23A3A3A3' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 9px center;background-size:14px 14px}.company-page .filter-bar__fields .filter-group-search{flex:1 1 240px;min-width:min(100%,200px);max-width:320px}.company-page .filters-dates-row{align-items:center;gap:12px}.company-page .filters-dates-row .filter-group{flex-direction:row;align-items:center;gap:6px}.company-page .filters-main{align-items:center;padding:0;margin-bottom:20px;background:transparent;border:none;border-radius:0;gap:12px}.company-page .filters-main .filters-dates-row{margin-top:0;width:auto;flex:1 1 100%}.company-page .filters-main-mobile{gap:8px}.company-page .filters-main-mobile .filter-group{flex-direction:row;align-items:center;gap:6px;width:100%}.company-page .filters-main-mobile .filter-group>label{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.company-page .filters-main-mobile .filter-group .ui-input,.company-page .filters-main-mobile .filter-group .ui-select{height:32px;min-height:32px;font-size:13px}.department-income-section .department-income-filters{display:flex;gap:var(--spacing-lg);flex-wrap:wrap;align-items:flex-end;justify-content:space-between;margin-bottom:var(--spacing-md)}.department-income-filter-year{min-width:120px;flex-shrink:0}.department-income-filter-search{flex:1;min-width:min(100%,420px);max-width:640px;margin-left:auto}.department-income-planned-note{margin-bottom:var(--spacing-md);font-size:13px;color:var(--color-text-secondary)}.department-income-total{margin-bottom:var(--spacing-md);font-size:15px;color:var(--color-text)}.department-income-comparison{background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.income-comparison-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.income-comparison-label{font-weight:500;font-size:14px;color:var(--color-text-secondary)}.income-comparison-percent{font-weight:700;font-size:18px;color:var(--color-text)}.income-comparison-bar{height:8px;background:var(--color-border);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-sm)}.income-comparison-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-success) 0%,var(--color-accent) 100%);border-radius:var(--radius-sm);transition:width .3s ease}.income-comparison-values{display:flex;justify-content:space-between;font-size:13px;color:var(--color-text-secondary)}.department-income-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-lg);text-align:center}.department-income-empty .empty-icon{color:var(--color-text-secondary);opacity:.5;margin-bottom:var(--spacing-sm)}.info-note-hint{font-size:13px;color:var(--color-text-secondary);margin-top:var(--spacing-xs);font-style:normal}.income-accordion-count{font-size:12px;font-weight:400;color:var(--color-text-secondary);margin-left:var(--spacing-sm)}.department-income-filter-sort{min-width:140px;flex-shrink:0}.department-income-export-btn{align-self:flex-end;white-space:nowrap;display:flex;align-items:center;gap:var(--spacing-xs)}.department-income-section{margin-top:var(--spacing-lg)}.department-income-tabs-active{margin-top:var(--spacing-md)}.department-income-section.card-section{border-bottom:none}@media (max-width: 768px){.department-income-filters{flex-direction:column;align-items:stretch}.department-income-filter-search{max-width:none;min-width:0;margin-left:0}}.income-accordion{display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg)}.income-accordion-item{border-bottom:1px solid var(--color-border)}.income-accordion-item:last-child{border-bottom:none}.income-accordion-summary{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;list-style:none;font-weight:500;background:var(--color-bg);transition:background-color .15s ease}.income-accordion-summary::-webkit-details-marker,.income-accordion-summary::marker{display:none}.income-accordion-summary:hover{background:var(--color-secondary-bg)}.income-accordion-chevron{flex-shrink:0;transition:transform .2s ease;color:var(--color-text-secondary)}.income-accordion-item[open] .income-accordion-chevron{transform:rotate(180deg)}.income-accordion-title{flex:1;min-width:0}.income-accordion-sum{flex-shrink:0;font-weight:600;color:var(--color-text)}.income-accordion-content{padding:0 var(--spacing-md) var(--spacing-md);background:var(--color-secondary-bg)}.income-accordion-item-nested{border:none;border-radius:var(--radius-sm);margin-bottom:var(--spacing-xs);background:var(--color-bg)}.income-accordion-item-nested:last-child{margin-bottom:0}.income-accordion-item-stage-only .income-accordion-summary-nested{cursor:default}.income-accordion-summary-nested{padding:var(--spacing-sm) var(--spacing-md);font-weight:400}.income-stage-name{flex:1;min-width:0;white-space:normal;word-break:break-word;overflow-wrap:break-word}.income-stage-list,.income-employee-list{margin:0;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) var(--spacing-xl);list-style:none}.income-stage-list li,.income-employee-list li{display:flex;justify-content:space-between;align-items:baseline;gap:var(--spacing-md);padding:var(--spacing-xs) 0;border-bottom:1px solid var(--color-border);font-size:.9rem}.income-stage-list li:last-child,.income-employee-list li:last-child{border-bottom:none}.income-employee-sum{flex-shrink:0;font-weight:500}.income-previously-act{font-size:.85rem;color:var(--color-text-secondary);font-weight:400}@media (max-width: 768px){.income-accordion-summary{padding:var(--spacing-md);flex-wrap:wrap}.income-accordion-sum{width:100%;text-align:right;margin-top:var(--spacing-xs)}.income-accordion-title{white-space:normal;word-break:break-word}.income-stage-name{white-space:normal;word-break:break-word;max-width:100%}.income-accordion-content{padding:0 var(--spacing-sm) var(--spacing-md)}.income-stage-list,.income-employee-list{padding-left:var(--spacing-md)}}.table-summary-compact{font-size:14px;color:var(--color-text-secondary);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) 0}.summary-item{display:flex;align-items:center;gap:var(--spacing-sm)}.summary-label{font-weight:500;font-size:14px;color:var(--color-text-secondary)}.summary-value{font-size:16px;font-weight:600;color:var(--color-text)}.data-table{width:100%;border-collapse:collapse;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.data-table th{padding:var(--spacing-md);text-align:left;font-weight:600;font-size:14px;border-bottom:2px solid var(--color-border)}.data-table th.sortable{position:relative;transition:background-color .2s}.data-table th.sortable:hover{background:var(--color-secondary-bg)}.data-table th.sortable:active{opacity:.8}.data-table th:first-child,.data-table td:first-child{min-width:90px;width:90px;white-space:nowrap}.data-table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:14px}.data-table tbody tr:hover{background:#ffd70014}.clickable-row:hover{background:#ffd70014!important}.data-table tbody tr.act-row-mismatch,.data-table tbody tr.act-row-mismatch:hover,.clickable-row.act-row-mismatch,.clickable-row.act-row-mismatch:hover{background:#dc26261f!important}.act-card.act-card-mismatch,.act-card.act-card-mismatch:hover{background:#dc262614;border-color:#dc262680}.employee-card-header,.department-card-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.employee-card-header h1,.department-card-header h1{margin:0}.employee-card,.department-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:0 2px 8px #0000001a;transition:all .2s ease}.employee-card:hover,.department-card:hover{box-shadow:0 4px 12px #00000026}.card-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border);transition:all .2s ease}.card-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.card-section h2{font-size:24px;font-weight:600;letter-spacing:var(--letter-spacing-tight);margin-bottom:var(--spacing-md);transition:color .2s ease}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.info-item label{font-weight:500;font-size:14px;color:var(--color-text-secondary)}.info-item span{font-size:16px}.info-note{color:var(--color-text-secondary);font-style:italic;margin:0}.form-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:0 2px 8px #0000001a}.department-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.department-form h2{margin:0 0 var(--spacing-md) 0;font-size:24px;font-weight:600}.department-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.department-form label{font-weight:500;font-size:14px}.department-form .checkbox-inline{display:inline-flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.department-form .checkbox-inline input[type=checkbox]{width:16px;height:16px;margin:0}.department-load-preview{display:flex;align-items:center;gap:var(--spacing-sm);width:100%}.department-load-progress{width:100%;max-width:220px;height:10px;border-radius:999px;background:var(--color-secondary-bg);border:1px solid var(--color-border);overflow:hidden}.department-load-progress-fill{height:100%;border-radius:999px;transition:width .2s ease}.department-load-progress-fill.is-low{background:var(--color-success)}.department-load-progress-fill.is-medium{background:var(--color-warning)}.department-load-progress-fill.is-high{background:var(--color-error)}.department-form input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;background:var(--color-bg)!important;color:var(--color-text)}.department-form input:focus{outline:none;border-color:var(--color-accent);border-width:2px}.department-form .form-actions{display:flex;justify-content:flex-end;align-items:center;padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.department-form .form-actions .button-group{display:flex;align-items:center;gap:var(--spacing-md)}.action-buttons{display:flex;gap:var(--spacing-sm);align-items:center}.btn-icon{background:transparent;border:none;cursor:pointer;font-size:18px;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:background-color .2s}.btn-icon:hover{background:var(--color-secondary-bg)}.btn-icon.btn-danger:hover{background:#ff00001a}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);overflow-y:auto}.modal-content{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);max-width:500px;width:90%;box-shadow:0 4px 16px #0003}.modal-content h3{margin:0 0 var(--spacing-md) 0;font-size:20px;font-weight:600}.modal-content p{margin:0 0 var(--spacing-lg) 0;line-height:1.5}.modal-content .modal-error{color:var(--color-danger, #dc3545);margin-top:var(--spacing-sm)}.warning-text{color:var(--color-accent);font-weight:500}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.modal-actions button,.modal-actions .btn-primary,.modal-actions .btn-secondary{min-height:40px!important;height:40px!important;padding:var(--spacing-sm) var(--spacing-md)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;margin:0!important;line-height:1!important;vertical-align:middle!important}.modal-actions button:disabled,.modal-actions .btn-primary:disabled,.modal-actions .btn-secondary:disabled{opacity:.6!important;cursor:not-allowed!important}.modal-actions button:not(:disabled),.modal-actions .btn-primary:not(:disabled),.modal-actions .btn-secondary:not(:disabled){cursor:pointer!important}.message{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-md)}.message-success{background-color:#e8f5e9;color:#2e7d32;border:1px solid #4caf50}.message-error{background-color:#ffebee;color:#c62828;border:1px solid #f44336}.message-close{margin-left:var(--spacing-md);background:none;border:none;cursor:pointer;font-size:1.2em;color:inherit;padding:0;line-height:1}.message-close:hover{opacity:.8}.employee-pending-budget-banner{display:block;border-left:4px solid var(--color-warning);background:var(--color-secondary-bg);margin-bottom:var(--spacing-lg)}.employee-pending-budget-banner__title{margin:0 0 var(--spacing-sm);font-weight:var(--font-weight-semibold);color:var(--color-text)}.employee-pending-budget-banner__list{margin:0;padding-left:var(--spacing-lg);color:var(--color-text)}.loading{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}.no-data{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary);font-style:italic}.percentage-summary{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md)}.summary-content{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.summary-label{font-weight:500;font-size:16px}.summary-value{font-size:20px;font-weight:600;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);background:var(--color-bg);border:2px solid var(--color-border)}.summary-value.correct{color:#28a745;border-color:#28a745}.summary-value.warning{color:#ffc107;border-color:#ffc107}.summary-status{font-size:14px;font-weight:500;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.summary-status.correct{color:#28a745;background:#28a7451a}.summary-status.warning{color:#ffc107;background:#ffc1071a}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap;color:#fff}.status-badge.status-paid{background-color:#4caf50}.status-badge.status-issued{background-color:#ff9800}.status-badge.status-signed{background-color:#2196f3}.table-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.summary-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 2px 4px #0000000d;transition:all .2s}.summary-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.summary-icon{font-size:32px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-secondary-bg);border-radius:var(--radius-md);flex-shrink:0}.summary-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.summary-label{font-size:14px;font-weight:500;color:var(--color-text-secondary)}.summary-value-large{font-size:24px;font-weight:600;color:var(--color-text)}.acts-cards{display:flex;flex-direction:column;gap:var(--spacing-md)}.act-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000000d}.act-card:hover{border-color:var(--color-accent);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.act-card-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.act-card-title{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);flex-wrap:wrap}.act-number{font-size:18px;font-weight:600;color:var(--color-text)}.act-card-body{display:flex;flex-direction:column;gap:var(--spacing-sm)}.act-card-row{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xs) 0}.act-card-row-highlight{background:var(--color-secondary-bg);padding:var(--spacing-sm);border-radius:var(--radius-sm);margin:var(--spacing-xs) 0}.act-card-label{font-size:14px;font-weight:500;color:var(--color-text-secondary);flex-shrink:0}.act-card-value{font-size:14px;color:var(--color-text);text-align:right;flex:1}.act-card-amount{font-weight:600;font-size:16px;color:var(--color-text)}.list-cards{display:flex;flex-direction:column;gap:var(--spacing-md)}.list-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000000d}.list-card:hover{border-color:var(--color-accent);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.list-card-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.list-card-title{font-size:18px;font-weight:600;color:var(--color-text);word-break:break-word;flex:1;min-width:0}.act-stage-number-link{color:var(--color-accent-hover);cursor:pointer;text-decoration:underline;transition:color .2s;word-break:break-word}.entity-detail-page .info-item .act-stage-number-link{font-size:15px;font-weight:700}.act-stage-number-link:hover{color:var(--color-text)}.act-stage-number-link:visited{color:var(--color-accent-hover)}.act-stage-number-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.list-card-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.btn-icon-danger:hover{color:var(--color-danger, #F44336)}.list-card-body{display:flex;flex-direction:column;gap:var(--spacing-sm)}.list-card-row{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xs) 0}.list-card-label{font-size:14px;font-weight:500;color:var(--color-text-secondary);flex-shrink:0}.list-card-value{font-size:14px;color:var(--color-text);text-align:right;flex:1;word-break:break-word}.list-card-value.clickable-link{cursor:pointer;color:var(--color-info)}.list-card-value.clickable-link:hover{text-decoration:underline}.company-page .list-card-value.clickable-link{color:var(--color-text);text-decoration:none;border:1px solid var(--color-border);border-radius:var(--radius-xs);padding:2px 8px;display:inline-block;max-width:100%;box-sizing:border-box;vertical-align:middle;transition:color var(--ds-transition, .15s ease),border-color var(--ds-transition, .15s ease),background-color var(--ds-transition, .15s ease)}.company-page .list-card-value.clickable-link:hover{color:var(--color-accent);border-color:var(--color-accent);background-color:#ffd70014;text-decoration:none}.list-card-with-thumb{display:flex;align-items:flex-start;gap:var(--spacing-md)}.list-card-thumb{flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-sm);overflow:hidden;background:var(--color-secondary-bg);border:1px solid var(--color-border)}.list-card-thumb img{width:100%;height:100%;object-fit:cover}.td-thumb{padding:var(--spacing-xs)!important;vertical-align:middle;width:52px}.td-thumb img{width:40px;height:40px;object-fit:cover;border-radius:var(--radius-sm);background:var(--color-secondary-bg)}.object-card-hero{padding:0;margin:0 0 var(--spacing-md) 0;border-radius:var(--radius-md);overflow:hidden;max-height:240px;background:var(--color-secondary-bg)}.object-card-hero img{width:100%;height:100%;max-height:240px;object-fit:cover}.object-card-hero-placeholder{padding:var(--spacing-lg);display:flex;align-items:center;justify-content:center;min-height:120px}.object-card-hero-placeholder img{max-width:120px;max-height:120px;opacity:.7}.amount-bold{font-weight:700}.amount-acts-equal{color:var(--ds-success)}.amount-acts-less{color:var(--ds-warning)}.object-status-badge{display:inline-flex;align-items:center;font-size:.75em;padding:.125rem .5rem;border-radius:12px;font-weight:500;line-height:1.5;white-space:nowrap}.object-status-not-started{background-color:#e8e8e8;color:#555}.object-status-in-progress{background-color:#fff3e0;color:#e65100}.object-status-completed,.contract-status-active{background-color:#e8f5e9;color:#2e7d32}.contract-status-completed{background-color:#e3f2fd;color:#1565c0}.contract-status-paused{background-color:#fff8e1;color:#f57c00}.contract-status-default{background-color:#e8e8e8;color:#555}.filters-main-mobile{display:none;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md)}.filters-main-mobile.expanded{display:flex}.filters-main-mobile .filters-dates-row{flex-direction:column;width:100%}.filters-toggle-btn{width:100%;padding:var(--spacing-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:500;color:var(--color-text);transition:all .2s;margin-bottom:var(--spacing-md)}.filters-toggle-btn:hover{border-color:var(--color-accent);background:var(--color-secondary-bg)}.filter-count{color:var(--color-accent);font-weight:600}.filter-icon{font-size:12px;color:var(--color-text-secondary)}.filters-additional-mobile{max-height:0;overflow:hidden;transition:max-height .3s ease-out;display:flex;flex-direction:column;gap:var(--spacing-md)}.filters-additional-mobile.expanded{max-height:1000px;transition:max-height .5s ease-in;margin-bottom:var(--spacing-md)}.clear-filters-btn{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:14px;color:var(--color-text);transition:all .2s;margin-top:var(--spacing-sm)}.clear-filters-btn:hover{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text)}.filters-main{display:none;gap:var(--spacing-md);flex-wrap:wrap;align-items:flex-end;margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md)}.filters-main.expanded{display:flex}.filters-dates-row{width:100%;display:flex;gap:var(--spacing-md);flex-wrap:wrap;align-items:flex-end}.filters-main .filters-dates-row{flex-basis:100%;margin-top:var(--spacing-sm)}.filters-section>.filters-toggle-btn{margin-bottom:var(--spacing-sm)}.clear-filters-btn-desktop{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:14px;color:var(--color-text);transition:all .2s;height:fit-content}.clear-filters-btn-desktop:hover{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text)}.filters-dates{display:flex;gap:var(--spacing-md);flex-wrap:wrap;align-items:flex-end;margin-top:var(--spacing-md)}.date-filters-toggle{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:500;color:var(--color-text);transition:all .2s;margin-bottom:var(--spacing-sm)}.date-filters-toggle:hover{background:var(--color-bg);border-color:var(--color-accent)}.date-filters-content{max-height:0;overflow:hidden;transition:max-height .3s ease-out;display:flex;gap:var(--spacing-md);flex-wrap:wrap;align-items:flex-end}.date-filters-content.expanded{max-height:500px;transition:max-height .5s ease-in;margin-bottom:var(--spacing-md)}.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-sm)}.table-wrapper::-webkit-scrollbar{height:8px}.table-wrapper::-webkit-scrollbar-track{background:var(--color-secondary-bg);border-radius:var(--radius-sm)}.table-wrapper::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-sm)}.table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--color-accent)}.data-table{width:100%;border-collapse:collapse;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;min-width:1000px}.data-table thead{background:var(--color-secondary-bg)}.data-table th{height:32px;padding:0 12px;text-align:left;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);white-space:nowrap}.data-table th.text-right{text-align:right}.data-table td{height:44px;padding:0 12px;border-bottom:1px solid var(--color-border);font-size:13px;vertical-align:middle}.data-table td.text-right{text-align:right}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background var(--ds-transition, .12s ease)}.data-table tbody tr:hover{background:#ffd70014!important;box-shadow:none;transform:none}.clickable-row{cursor:pointer}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding:var(--spacing-md);flex-wrap:wrap}.pagination-btn{display:flex;align-items:center;gap:var(--spacing-sm);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-size:14px;color:var(--color-text);transition:all .2s;min-height:40px}.pagination-btn:hover:not(:disabled){border-color:var(--color-accent);background-color:var(--color-accent);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-arrow{font-size:16px;font-weight:600}.pagination-info{font-size:14px;color:var(--color-text-secondary);padding:0 var(--spacing-sm)}.no-data{text-align:center;padding:var(--spacing-xl);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.no-data-icon{font-size:64px;opacity:.5;margin-bottom:var(--spacing-sm)}.no-data-text{font-size:18px;color:var(--color-text-secondary);font-weight:500}.no-data-button{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-bg);border:1px solid var(--color-accent);border-radius:var(--radius-sm);cursor:pointer;font-size:14px;color:var(--color-text);transition:all .2s;margin-top:var(--spacing-sm)}.no-data-button:hover{background:var(--color-accent);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.loading-skeleton{padding:var(--spacing-lg)}.skeleton-header{height:40px;background:linear-gradient(90deg,var(--color-secondary-bg) 25%,rgba(255,255,255,.5) 50%,var(--color-secondary-bg) 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg)}.skeleton-filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.skeleton-filter{height:40px;width:200px;background:linear-gradient(90deg,var(--color-secondary-bg) 25%,rgba(255,255,255,.5) 50%,var(--color-secondary-bg) 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton-table{display:flex;flex-direction:column;gap:var(--spacing-sm)}.skeleton-row{height:56px;background:linear-gradient(90deg,var(--color-secondary-bg) 25%,rgba(255,255,255,.5) 50%,var(--color-secondary-bg) 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 1024px){.table-wrapper{position:relative}.table-wrapper:after{content:"→";position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:24px;color:var(--color-accent);pointer-events:none;opacity:.5}}@media (max-width: 768px){.company-page{padding:var(--spacing-md);width:100%;max-width:min(100%,100vw);overflow-x:hidden;box-sizing:border-box}.table-section{width:100%;max-width:100%;min-width:0}.page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.page-header h1{word-break:break-word;overflow-wrap:break-word}.page-header .btn-back{width:100%;max-width:100%;box-sizing:border-box}.filters{flex-direction:column;align-items:stretch}.filter-group{width:100%;min-width:unset;max-width:100%}.company-page .filter-bar__fields{flex-direction:column;align-items:stretch}.company-page .filter-group-search,.company-page .filter-bar__fields .filter-group-search{max-width:none;flex:1 1 auto}.filter-group input,.filter-group select{max-width:100%;box-sizing:border-box}.table-summary{grid-template-columns:1fr}.summary-card{flex-direction:row}.summary-icon{width:40px;height:40px;font-size:24px}.summary-value-large{font-size:20px}.table-responsive{display:block!important;width:100%!important;max-width:100vw!important;min-width:0!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;box-sizing:border-box!important}.data-table{font-size:12px;min-width:800px}.data-table th,.data-table td{padding:var(--spacing-sm)}.pagination{gap:var(--spacing-sm)}.pagination-btn{padding:var(--spacing-sm);min-width:44px}.info-grid{grid-template-columns:1fr}.info-item{min-width:0}.info-item span{word-break:break-word;overflow-wrap:break-word}.employee-card-header{flex-direction:column;align-items:flex-start}}.view-controls{display:flex;gap:var(--spacing-xs)}.view-toggle{background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--spacing-sm);cursor:pointer;font-size:18px;transition:all .2s}.view-toggle:hover{border-color:var(--color-accent);background-color:var(--color-secondary-bg)}.view-toggle.active{border-color:var(--color-accent);background-color:var(--color-accent);color:var(--color-text)}.employees-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.employee-card-preview{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);cursor:pointer;transition:all .2s}.employee-card-preview:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.employee-card-header-preview{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.employee-card-info{flex:1}.department-tags-wrap{display:flex;gap:.25rem;flex-wrap:wrap;margin-top:.25rem}.employee-card-name{font-size:18px;font-weight:600;margin:0 0 var(--spacing-xs) 0}.employee-card-role{font-size:14px;color:var(--color-text-secondary);margin:0 0 var(--spacing-xs) 0}.employee-card-department{font-size:12px;color:var(--color-text-secondary);margin:0}.employee-card-stats{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.employee-stat-item{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.stat-label{font-size:12px;color:var(--color-text-secondary);font-weight:500}.stat-value{font-size:16px;font-weight:600}.stat-value-large{width:100%}.employee-card-actions{display:flex;gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.btn-icon-small{background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--spacing-xs);cursor:pointer;font-size:16px;transition:all .2s;flex:1;display:inline-flex;align-items:center;justify-content:center}.btn-icon-small img{width:16px;height:16px;display:block}.btn-icon-small:hover{border-color:var(--color-accent);background-color:var(--color-accent)}.stage-team-groups{display:flex;flex-direction:column;gap:var(--spacing-md)}.stage-team-group h3{margin:0 0 var(--spacing-sm) 0;font-size:15px}.stage-team-members{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.stage-team-member{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-secondary-bg);color:var(--color-text);font:inherit;line-height:inherit;text-align:left}.stage-team-member-clickable{cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.stage-team-member-clickable:hover{border-color:var(--color-accent);background:var(--color-bg)}.stage-allocation-edit-page .page-header{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.stage-allocation-edit-page .page-header-actions{margin-left:auto;display:flex;gap:var(--spacing-sm)}.stage-allocation-team-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.stage-allocation-team-card{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.stage-allocation-team-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm)}.stage-allocation-team-card-head h3{margin:0}.stage-allocation-team-members{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-xs) var(--spacing-sm)}.stage-allocation-member-option{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.stage-allocation-selected-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.stage-allocation-selected-card{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-secondary-bg);padding:var(--spacing-sm)}.stage-allocation-selected-card h3{margin:0 0 var(--spacing-xs) 0;font-size:14px}.stage-allocation-selected-members{display:flex;flex-direction:column;gap:var(--spacing-xs)}.stage-allocation-selected-member{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.stage-allocation-remove-btn{background:none;border:none;cursor:pointer;color:var(--color-text-secondary);font-size:1rem;line-height:1;padding:0 2px;margin-left:auto;opacity:.6;transition:opacity .15s}.stage-allocation-remove-btn:hover{opacity:1;color:var(--color-error)}.stage-allocation-modal{width:min(1100px,96vw);max-width:100%;max-height:calc(100dvh - 2 * var(--spacing-md));display:flex;flex-direction:column;overflow:hidden}.stage-allocation-modal-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--spacing-lg);margin:var(--spacing-md) 0;flex:1;min-height:0;overflow:hidden}.stage-allocation-column h4{margin:0 0 var(--spacing-sm) 0}.stage-allocation-column{min-height:0;display:flex;flex-direction:column}.stage-allocation-teams{display:flex;flex-direction:column;gap:var(--spacing-sm);overflow:auto;min-height:0}.stage-allocation-team-row{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--spacing-sm)}.stage-allocation-dept-group{margin-bottom:var(--spacing-md)}.stage-allocation-dept-group h5{margin:0 0 var(--spacing-xs) 0}.stage-allocation-employee-list{display:flex;flex-direction:column;gap:var(--spacing-xs);overflow:auto;min-height:0;flex:1;padding-right:var(--spacing-xs)}.stage-allocation-employee-option{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.stage-allocation-selected{margin-top:var(--spacing-md);overflow:auto;max-height:30vh}.stage-allocation-selected h4{margin:0 0 var(--spacing-sm) 0}.stage-allocation-selected-group{margin-bottom:var(--spacing-sm)}.stage-allocation-selected-group h5{margin:0 0 var(--spacing-xs) 0}.stage-allocation-selected-avatars{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.stage-allocation-modal .modal-actions{margin-top:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border);background:var(--color-bg);flex-shrink:0}.employee-allocation-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--spacing-md)}.employee-allocation-column{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--spacing-sm);background:var(--color-secondary-bg)}.employee-allocation-column-droppable{border-style:dashed}.employee-allocation-column h3{margin:0 0 var(--spacing-sm) 0;display:flex;justify-content:space-between;align-items:center;font-size:15px}.employee-allocation-count{font-size:12px;color:var(--color-text-secondary)}.employee-allocation-cards{display:flex;flex-direction:column;gap:var(--spacing-sm)}.employee-allocation-card{padding:var(--spacing-sm);cursor:grab}.employee-allocation-card:active{cursor:grabbing}.employee-allocation-card-head{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:var(--spacing-xs)}.employee-allocation-card-head>strong,.employee-allocation-card-head>span{display:block}.employee-allocation-card-title{display:flex;flex-direction:column;gap:2px}.employee-allocation-card-head strong{font-size:14px}.employee-allocation-card-head span{font-size:12px;color:var(--color-text-secondary)}.employee-allocation-card-body{display:flex;flex-direction:column;gap:4px;margin-top:var(--spacing-sm)}.employee-allocation-row{display:flex;justify-content:space-between;gap:var(--spacing-sm);font-size:13px}.employee-allocation-row .label{color:var(--color-text-secondary)}.employee-allocation-card-foot{margin-top:var(--spacing-sm)}.employee-allocation-menu-wrap{position:relative;flex-shrink:0}.employee-allocation-menu-button{width:28px;height:28px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);cursor:pointer}.employee-allocation-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:2;min-width:160px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);box-shadow:0 8px 24px #00000026;overflow:hidden}.employee-allocation-menu-item{width:100%;border:0;border-bottom:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);text-align:left;padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer}.employee-allocation-menu-item:last-child{border-bottom:0}.employee-allocation-menu-item:hover:not(:disabled){background:var(--color-secondary-bg)}@media (max-width: 992px){.stage-allocation-modal{width:100%;max-height:calc(100dvh - 2 * var(--spacing-sm));padding:var(--spacing-md);align-self:flex-start;margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.stage-allocation-modal-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.stage-allocation-team-row{flex-direction:column;align-items:flex-start}.stage-allocation-team-row .ui-btn{width:100%}.stage-allocation-selected{max-height:24vh}.employee-allocation-board,.stage-allocation-team-cards,.stage-allocation-selected-grid,.stage-allocation-team-members{grid-template-columns:1fr}.stage-allocation-team-card-head{flex-direction:column;align-items:flex-start}.stage-allocation-edit-page .page-header-actions{width:100%;margin-left:0}}.table-cell-with-avatar{display:flex;align-items:center;gap:var(--spacing-sm)}.employee-card-header-visual{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);box-shadow:0 2px 8px #00000014}.employee-header-info{flex:1}.employee-header-info h1{margin:0 0 var(--spacing-sm) 0;font-size:32px}.employee-header-meta{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.employee-role-badge,.employee-department-badge,.employee-team-badge{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:13px;font-weight:500;color:var(--color-text);transition:all .2s ease;box-shadow:0 1px 3px #0000000d}.employee-role-badge{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-hover) 100%);color:var(--color-text);border-color:var(--color-accent)}.employee-department-badge{background:var(--color-secondary-bg);border-color:var(--color-border)}.employee-team-badge{background:#2196f31a;border-color:#2196f34d;color:#1976d2}.employee-header-actions{display:flex;gap:var(--spacing-sm)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.stat-card{background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);text-align:center}.stat-card .stat-label{font-size:14px;margin-bottom:var(--spacing-sm)}.stat-card .stat-value{font-size:24px;font-weight:600}.workload-chart-placeholder{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-secondary-bg);border-radius:var(--radius-md);text-align:center}.skills-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.skill-tag{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-accent);color:var(--color-text);border-radius:var(--radius-sm);font-size:14px;font-weight:500}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-md)}.departments-type-section{margin-bottom:var(--spacing-xl)}.departments-type-heading{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:var(--spacing-lg) 0 0;padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--color-border)}.departments-type-section:first-child .departments-type-heading{margin-top:0}.departments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.department-card-preview{position:relative;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);cursor:pointer;transition:all .2s}.department-drag-handle{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);z-index:2;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs);border:none;margin:0;font:inherit;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:grab;background:var(--color-secondary-bg)}.department-drag-handle:active{cursor:grabbing}.department-card-preview:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.department-card-header-preview{display:flex;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.department-icon{font-size:32px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-secondary-bg);border-radius:var(--radius-md);flex-shrink:0}.department-icon img{width:32px;height:32px;display:block}.department-info{flex:1}.department-name{font-size:20px;font-weight:600;margin:0 0 var(--spacing-xs) 0}.department-meta{font-size:14px;color:var(--color-text-secondary);margin:0}.department-actions{display:flex;gap:var(--spacing-xs)}.department-stats-preview{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.department-stat-item{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.department-employees-preview{padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.preview-label{font-size:12px;color:var(--color-text-secondary);font-weight:500;margin-bottom:var(--spacing-sm);display:block}.employees-avatars{display:flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap}.employees-avatars .employee-avatar-wrapper{display:inline-flex;align-items:center;vertical-align:middle}.more-employees{font-size:12px;color:var(--color-text-secondary);padding:var(--spacing-xs);background:var(--color-secondary-bg);border-radius:var(--radius-sm)}.department-card-header-visual{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.department-icon-large{font-size:64px;width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:var(--color-secondary-bg);border-radius:var(--radius-md);flex-shrink:0}.department-icon-large img{width:64px;height:64px;display:block}.department-header-info{flex:1}.department-header-info h1{margin:0 0 var(--spacing-sm) 0;font-size:32px}.department-header-meta{display:flex;gap:var(--spacing-md);flex-wrap:wrap;font-size:14px;color:var(--color-text-secondary)}.department-head-info{margin-bottom:var(--spacing-md)}.department-head-label{font-size:14px;font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.department-head-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-secondary-bg);border-radius:var(--radius-md)}.department-head-details{display:flex;flex-direction:column;gap:var(--spacing-xs)}.department-head-name{font-size:16px;font-weight:600}.department-head-role{font-size:14px;color:var(--color-text-secondary)}.employees-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg);overflow:visible}.employee-card-mini{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:var(--spacing-md);position:relative;overflow:visible}.employee-card-mini:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #0000001a}.employee-mini-info{flex:1}.employee-mini-name{font-size:16px;font-weight:600;margin:0 0 var(--spacing-xs) 0}.employee-mini-role{font-size:14px;color:var(--color-text-secondary);margin:0 0 var(--spacing-sm) 0}.employee-mini-stats{width:100%}.percentage-distribution{margin-top:var(--spacing-md)}.percentage-bars{display:flex;flex-direction:column;gap:var(--spacing-md)}.percentage-bar-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.percentage-bar-label{display:flex;justify-content:space-between;align-items:center;font-size:14px}.percentage-bar-value{font-weight:600;color:var(--color-accent)}.percentage-bar-container{width:100%;height:24px;background-color:var(--color-secondary-bg);border-radius:var(--radius-sm);overflow:hidden}.percentage-bar{height:100%;transition:width .3s ease;border-radius:var(--radius-sm)}@media (max-width: 768px){.employees-grid,.departments-grid{grid-template-columns:1fr}.employee-card-header-visual,.department-card-header-visual{flex-direction:column;align-items:flex-start}.stats-grid,.projects-grid,.employees-cards-grid{grid-template-columns:1fr}.department-team-subsection{gap:var(--spacing-md)}.department-page-header{grid-template-columns:1fr}.department-page-header h1,.department-page-header .page-header-actions{justify-self:stretch;text-align:left}.department-page-header .btn-back{width:auto;max-width:max-content}.department-teams-grid,.department-team-members-grid,.org-teams-grid{grid-template-columns:1fr}.department-team-member-card{align-items:center}.department-income-section .department-income-filters{display:grid;grid-template-columns:1fr;gap:var(--spacing-md);align-items:stretch;justify-content:stretch}.department-income-filter-year,.department-income-filter-sort,.department-income-filter-search{width:100%;min-width:0;max-width:100%;margin-left:0}.department-income-filters .ui-form-group{width:100%;margin-bottom:0}.department-income-export-btn{width:100%;justify-content:center;align-self:stretch}}.btn-back,.btn-back-enhanced{display:inline-flex;align-items:center;gap:6px;height:var(--ds-height-lg);min-height:var(--ds-height-lg);padding:0 18px;border:none;border-radius:var(--ds-radius-md);background:transparent;color:var(--color-text-secondary);font-size:13px;font-weight:var(--font-weight-semibold);line-height:1.25;transition:background var(--ds-transition-slow),color var(--ds-transition-slow);box-shadow:none}.btn-back:hover,.btn-back-enhanced:hover{background:var(--color-secondary-bg);color:var(--color-text);transform:none}.btn-back:active,.btn-back-enhanced:active{transform:none}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding:var(--spacing-md)}.pagination button{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-size:14px;color:var(--color-text);transition:all .2s}.pagination button:hover:not(:disabled){border-color:var(--color-accent);background-color:var(--color-accent)}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination span{font-size:14px;color:var(--color-text-secondary)}.clickable-link{color:var(--color-accent-hover);cursor:pointer;text-decoration:underline;transition:color .2s}.clickable-link:hover{color:var(--color-text)}.overdue{background-color:#ffebee!important;color:#f44336!important}.employee-page{padding-bottom:var(--spacing-lg);width:100%;max-width:100%;overflow-x:hidden;box-sizing:border-box}.employee-page-v2{min-width:0;overflow-x:hidden;box-sizing:border-box;width:100%;max-width:100%}.employee-page .section-card[hidden],.employee-page-v2 .section-card[hidden]{display:none!important}.employee-stats-2025{margin-bottom:var(--spacing-xl)}.employee-stats-2025>div{display:flex;align-items:flex-start;justify-content:flex-start;gap:.5rem;margin-bottom:.5rem}.employee-stats-year-row{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.stats-year-label{font-weight:600;color:var(--color-text)}.employee-year-select{padding:var(--spacing-sm) var(--spacing-md);padding-right:2rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-md) center;color:var(--color-text);font-size:1rem;min-width:5rem}.employee-year-select:focus{outline:none;border-color:var(--color-accent)}.stats-year-title{font-size:20px;font-weight:600;margin-bottom:var(--spacing-md);color:var(--color-text)}.employee-stats-2025>div>span{background-clip:unset;-webkit-background-clip:unset;color:red;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:800;font-style:italic;margin-left:.5rem;font-size:inherit}.stats-vertical{display:flex;flex-direction:column;gap:var(--spacing-md)}.stat-item-vertical{padding:var(--spacing-md);background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md)}.stat-label-vertical{font-size:14px;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs);line-height:1.4}.stat-value-vertical{font-size:24px;font-weight:600;color:var(--color-text)}.stats-grid-enhanced{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.stats-grid-enhanced.stats-grid-single-column{grid-template-columns:1fr!important}.stat-card-enhanced{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all .2s ease;box-shadow:0 2px 4px #0000000d}.stat-card-enhanced:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px);border-color:var(--color-accent)}.stat-card-enhanced.stat-card-success{border-left:4px solid var(--color-success)}.stat-card-enhanced.stat-card-warning{border-left:4px solid var(--color-warning)}.stat-card-icon-wrapper{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--color-bg);border-radius:var(--radius-md);flex-shrink:0;box-shadow:0 2px 4px #0000000d}.stat-card-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.stat-label-enhanced{font-size:13px;color:var(--color-text-secondary);font-weight:500;line-height:1.4}.stat-value-enhanced{font-size:22px;font-weight:600;color:var(--color-text);line-height:1.2}.quarterly-chart-container{margin-top:var(--spacing-xl);padding:var(--spacing-md);background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all .2s ease}.quarterly-chart-container:hover{box-shadow:0 4px 8px #0000001a}.quarterly-chart-container h3{margin:0 0 var(--spacing-md) 0;font-size:18px;font-weight:600}.chart-container-responsive{overflow-x:auto}.chart-responsive-wrapper{min-height:250px}.chart-x-axis,.chart-y-axis{font-size:12px;font-weight:700!important}.chart-x-axis text,.chart-y-axis text{font-weight:700!important}.chart-legend{font-size:12px;font-weight:700!important}.chart-legend text{font-weight:700!important}.chart-bar-label{font-size:14px!important;fill:#333!important;font-weight:700!important}.data-table.my-projects-table{width:100%!important;font-size:14px!important;table-layout:fixed!important}.data-table.my-projects-table th{white-space:normal!important;padding:var(--spacing-sm)!important;text-align:left!important;font-weight:600!important;background:var(--color-secondary-bg)!important;border-bottom:2px solid var(--color-border)!important;line-height:1.3!important;word-wrap:break-word!important}.data-table.my-projects-table th{width:auto!important}.data-table.my-projects-table td{padding:var(--spacing-sm)!important;border-bottom:1px solid var(--color-border)!important;vertical-align:top!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.data-table.my-projects-table td.stage-name-cell{min-width:300px;max-width:500px;width:300px;word-wrap:break-word;word-break:break-word;white-space:normal;line-height:1.4;padding:var(--spacing-sm);overflow-wrap:break-word}.object-group-row-desktop .object-group-row-cell{background:var(--color-secondary-bg);font-weight:700;padding:var(--spacing-sm)!important;border-top:2px solid var(--color-border)}.data-table.my-projects-table tfoot .my-projects-table-totals-row td{background:var(--color-secondary-bg);font-weight:600;border-top:2px solid var(--color-border)}.data-table.my-projects-table td.overdue-date{color:#dc3545!important;font-weight:600!important;background-color:#fff5f5!important;position:relative!important}.data-table.my-projects-table td.overdue-date:before{content:"⚠️";margin-right:4px}.data-table.my-projects-table td.status-in-progress{font-weight:700!important;color:#f57c00!important;background-color:#ffc1071a!important;padding:4px 8px!important;border-radius:var(--radius-sm)!important}.data-table.my-projects-table td.status-completed{color:#155724!important;font-weight:500!important;background-color:#d4edda!important;padding:4px 8px!important;border-radius:var(--radius-sm)!important}.work-percentage-input{width:60px;padding:4px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;margin-right:4px;transition:all .2s ease;background:var(--color-bg)}.work-percentage-input:focus{outline:none;border-color:var(--color-accent);border-width:2px;box-shadow:0 0 0 3px #ffd7001a}.work-percentage-input:hover{border-color:var(--color-accent)}.table-responsive{display:block;width:100%;max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 992px){.table-responsive{max-width:100vw}}.projects-cards-mobile{display:none;flex-direction:column;gap:var(--spacing-md)}.projects-filters-row{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.projects-status-filter,.projects-stage-type-filter,.projects-due-date-filter{padding:var(--spacing-xs) var(--spacing-sm);padding-right:2rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-md) center;color:var(--color-text);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:150px}.projects-status-filter:hover,.projects-stage-type-filter:hover,.projects-due-date-filter:hover{border-color:var(--color-accent)}.projects-status-filter:focus,.projects-stage-type-filter:focus,.projects-due-date-filter:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #2196f31a}.group-cell{background-color:#2196f30d;font-weight:600;vertical-align:middle;border-right:2px solid rgba(33,150,243,.2)}.object-group-cell{background-color:#2196f31a;font-size:15px;padding:var(--spacing-md) var(--spacing-sm);word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;white-space:normal;line-height:1.4;max-width:150px;min-width:100px}.object-group-cell strong{word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;white-space:normal;display:block}.employee-projects-table-link{color:var(--color-text);text-decoration:none;font-weight:inherit}.employee-projects-table-link:hover{text-decoration:underline}.object-group-cell .employee-projects-table-link strong{color:var(--color-text)}.employee-projects-mobile-object-link{color:inherit;text-decoration:none}.employee-projects-mobile-object-link:hover{color:var(--color-accent);text-decoration:underline}.employee-page .employee-projects-filters{margin-bottom:var(--spacing-md)}.team-group-cell{background-color:#2196f30d;font-size:14px;padding:var(--spacing-sm);word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;white-space:normal;max-width:150px;min-width:100px}.object-group-mobile{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-border)}.object-group-mobile:last-child{border-bottom:none}.object-group-title{font-size:18px;font-weight:700;color:var(--color-text);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background-color:#2196f31a;border-radius:var(--radius-md);border-left:4px solid var(--color-accent)}.team-group-mobile{margin-bottom:var(--spacing-lg);padding-left:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.team-group-title{font-size:15px;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background-color:#2196f30d;border-radius:var(--radius-sm)}.projects-header-with-search{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);gap:var(--spacing-md);flex-wrap:wrap}.projects-search-input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;min-width:300px;max-width:100%;background:var(--color-bg);color:var(--color-text);transition:border-color .2s ease}.projects-search-input:focus{outline:none;border-color:var(--color-accent);border-width:2px}.projects-search-input::placeholder{color:var(--color-text-secondary)}.projects-table-desktop{display:block}@media (max-width: 992px){.projects-table-desktop{display:none!important}.projects-cards-mobile{display:flex!important;flex-direction:column;gap:var(--spacing-md)}.employee-page .employee-projects-filters .filter-group,.employee-page .employee-projects-filters .filter-group-search{min-width:0;width:100%;max-width:100%}}.project-card-mobile{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:0 2px 4px #0000000d;transition:all .2s ease}.project-card-mobile:hover{box-shadow:0 4px 8px #0000001a;border-color:var(--color-accent)}.employee-page-v2 .card-section{scroll-margin-top:1rem}.employee-page-nav{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-wrap:wrap;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border)}.employee-page-nav-link{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;font-weight:500;color:var(--color-text);cursor:pointer;transition:background .2s,border-color .2s}.employee-page-nav-link:hover{background:var(--color-border);border-color:var(--color-accent)}.income-by-team{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-lg)}.income-by-team h3{margin:0 0 var(--spacing-md) 0;font-size:18px;font-weight:600}.income-by-team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--spacing-md)}.income-by-team-card{padding:var(--spacing-md);background:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md)}.income-by-team-name{font-weight:600;margin-bottom:var(--spacing-sm);font-size:15px}.income-by-team-row{display:flex;justify-content:space-between;gap:var(--spacing-sm);font-size:13px;margin-top:var(--spacing-xs)}.employee-section-income .income-section-title{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.income-diz-notice{font-size:12px;font-weight:400;color:#c0392b}.employee-section-link{margin-top:var(--spacing-lg);margin-bottom:0}.link-button{background:none;border:none;padding:0;font-size:inherit;color:var(--color-accent);text-decoration:underline;cursor:pointer}.link-button:hover{text-decoration:none}.link-primary{color:var(--color-accent);text-decoration:none}.link-primary:hover{text-decoration:underline}.stage-distribution-grid{max-width:100%}.stage-distribution-subtitle{font-size:.95em;font-weight:600;margin:0 0 var(--spacing-sm) 0;color:var(--color-text-secondary)}.stage-rules-compact th,.stage-rules-compact td{padding:var(--spacing-xs) var(--spacing-sm)}.stage-dept-group-header td{border-top:1px solid var(--color-border)}.stage-distribution-parent{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:0;margin-bottom:var(--spacing-lg);box-shadow:0 2px 8px #0000000f;overflow:hidden}.stage-distribution-parent .stage-distribution-intro,.stage-distribution-parent .stage-distribution-child{margin-bottom:0;border-radius:0;border:none;border-bottom:1px solid var(--color-border);box-shadow:none}.stage-distribution-parent .stage-distribution-child:last-child{border-bottom:none}.stage-distribution-intro .section-card-header{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.stage-budget-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.stage-budget-dept-card{background:var(--color-bg-secondary, #f5f5f5);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)}.stage-budget-dept-card__title{font-size:.95em;font-weight:600;margin:0 0 var(--spacing-sm) 0;color:var(--color-text);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--color-border)}.stage-budget-dept-card__list{list-style:none;margin:0;padding:0}.stage-budget-dept-card__row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0;gap:var(--spacing-sm);font-size:.9em}.stage-budget-dept-card__team{flex:1;min-width:0}.stage-budget-dept-card__pct{flex-shrink:0;font-weight:500;color:var(--color-text-secondary)}@media (max-width: 1024px){.stage-budget-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.stage-budget-cards{grid-template-columns:1fr}}.stage-distribution-badge{font-size:.85em;font-weight:500;color:var(--color-text-secondary);background:var(--color-bg-secondary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.stage-distribution-empty{margin:0;color:var(--color-text-secondary)}.stage-unique-percents-list{font-size:.9em}.stage-unique-dept{margin-bottom:var(--spacing-md)}.stage-unique-dept:last-child{margin-bottom:0}.stage-unique-dept-name{display:block;margin-bottom:var(--spacing-xs)}.stage-unique-employees{margin:.25rem 0 0 var(--spacing-md);padding:0;list-style:none}.stage-unique-employees li{padding:.15rem 0}@media (max-width: 768px){.stage-distribution-grid{grid-template-columns:1fr!important}}.employee-section-placeholder{color:var(--color-text-secondary);font-style:italic;margin:var(--spacing-sm) 0 0 0}.projects-team-filter{padding:var(--spacing-sm) var(--spacing-md);padding-right:2rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;background-color:var(--color-bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-md) center;color:var(--color-text);min-width:180px}.btn-secondary-link-v2 .link-text-mobile{display:none}@media (max-width: 480px){.btn-secondary-link-v2 .link-text-desktop{display:none}.btn-secondary-link-v2 .link-text-mobile{display:inline}}.no-projects-message{color:var(--color-text-secondary);margin:var(--spacing-md) 0}.project-card-mobile-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-border)}.project-card-mobile-title h4{margin:0 0 var(--spacing-xs) 0;font-size:16px;font-weight:600;color:var(--color-text)}.project-card-mobile-stage{font-size:12px;color:var(--color-text-secondary);font-weight:500}.project-card-mobile-team{padding:var(--spacing-xs) var(--spacing-sm);background:#2196f31a;border:1px solid rgba(33,150,243,.3);border-radius:var(--radius-sm);font-size:11px;font-weight:600;color:#1976d2;white-space:nowrap}.project-card-mobile-body{display:flex;flex-direction:column;gap:var(--spacing-sm)}.project-card-mobile-row{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) 0}.project-card-mobile-label{font-size:13px;color:var(--color-text-secondary);font-weight:500;flex-shrink:0}.project-card-mobile-value{font-size:14px;font-weight:600;color:var(--color-text);text-align:right;flex:1}.project-card-mobile-value-success{color:var(--color-success)}.project-card-mobile-value-overdue{color:#dc3545;font-weight:700;background-color:#fff5f5;padding:2px 6px;border-radius:var(--radius-sm)}.project-card-mobile-input-wrapper{display:flex;align-items:center;gap:4px}.work-percentage-input-mobile{width:60px;padding:4px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;text-align:center}.work-percentage-input-mobile:focus{outline:none;border-color:var(--color-accent)}.project-card-mobile-status{font-size:13px;font-weight:500;padding:2px 8px;border-radius:var(--radius-sm);text-align:right}.project-card-mobile-status.status-in-progress{background-color:#ffc1071a;color:#f57c00;font-weight:700}.project-card-mobile-status.status-completed{background-color:#d4edda;color:#155724;font-weight:500}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.employee-card{animation:fadeIn .3s ease-out}.stat-card-enhanced{animation:fadeIn .4s ease-out}.project-card-mobile{animation:fadeIn .3s ease-out}.employee-card-header-visual{transition:all .2s ease}.employee-card-header-visual:hover{box-shadow:0 4px 12px #0000001f}@media (max-width: 992px){.employee-page-v2 .stats-grid-enhanced,.employee-page .stats-grid-enhanced,.employee-page-v2 .stat-card-section-grid,.employee-page .stat-card-section-grid{grid-template-columns:1fr!important}}@media (max-width: 768px){.employee-page-v2 .employee-card-header{flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.employee-page-v2 .employee-card-header .btn-secondary{margin-left:0!important;margin-top:0;flex:1 1 auto;min-width:0;text-align:center;font-size:13px}.employee-page-v2 .employee-card{padding:var(--spacing-md);margin-left:0;margin-right:0}.employee-page-v2 .card-section{padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-md)}.employee-page-v2 .card-section h2{font-size:20px}.employee-page-v2 .employee-page-nav{gap:var(--spacing-xs);padding:var(--spacing-xs) 0;margin-bottom:var(--spacing-md);flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.employee-page-v2 .employee-page-nav::-webkit-scrollbar{display:none}.employee-page-v2 .employee-page-nav-link{padding:var(--spacing-xs) var(--spacing-sm);font-size:13px;flex-shrink:0}.employee-page-v2 .employee-stats-year-row{flex-wrap:wrap}.employee-page-v2 .income-by-team-grid{grid-template-columns:1fr}.employee-page-v2 .employee-projects-filters .filter-group,.employee-page-v2 .employee-projects-filters .filter-group-search{min-width:0;width:100%;max-width:100%;box-sizing:border-box}.employee-page-v2 .quarterly-chart-container{margin-left:0;margin-right:0;padding:var(--spacing-sm);width:100%;max-width:100%;box-sizing:border-box}.employee-page-v2 .chart-container-responsive{max-width:100%;width:100%;margin:0;box-sizing:border-box}.employee-page-v2 .chart-responsive-wrapper{width:100%!important;min-width:0}.employee-card-header-visual{flex-direction:column;text-align:center;gap:var(--spacing-md);padding:var(--spacing-md);align-items:center}.employee-card-header-visual .employee-avatar-wrapper{width:80px!important;height:80px!important}.employee-card-header-visual .employee-avatar{width:80px!important;height:80px!important;display:flex!important;align-items:center!important;justify-content:center!important}.employee-card-header-visual .employee-avatar-wrapper img{width:80px!important;height:80px!important}.employee-card-header-visual .employee-avatar-wrapper .avatar-initials{width:100%!important;height:100%!important;font-size:28px!important;display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important}.employee-header-info{width:100%;text-align:center}.employee-header-info h1{font-size:24px;margin-bottom:var(--spacing-sm)}.employee-header-meta{justify-content:center;gap:var(--spacing-sm);flex-wrap:wrap}.stats-vertical{gap:var(--spacing-sm)}.stat-item-vertical{padding:var(--spacing-sm)}.stat-label-vertical{font-size:12px}.stat-value-vertical{font-size:20px}.quarterly-chart-container{padding:var(--spacing-sm)}.chart-responsive-wrapper{min-height:250px}.projects-table-desktop{display:none}.projects-cards-mobile{display:flex}.stats-grid-enhanced{grid-template-columns:1fr;gap:var(--spacing-sm)}.employee-page-v2 .stats-grid-enhanced,.employee-page .stats-grid-enhanced{grid-template-columns:1fr!important}.employee-page-v2 .stat-card-section-grid,.employee-page .stat-card-section-grid{grid-template-columns:1fr!important;width:100%;min-width:0;box-sizing:border-box}.employee-page-v2 .stats-grid-enhanced .stat-card-enhanced,.employee-page .stats-grid-enhanced .stat-card-enhanced,.employee-page-v2 .stat-card-content,.employee-page .stat-card-content,.employee-page-v2 .stat-card-section-grid .stat-card-section,.employee-page .stat-card-section-grid .stat-card-section,.employee-page-v2 .stat-card-section__content,.employee-page .stat-card-section__content{min-width:0}.stat-card-enhanced{padding:var(--spacing-sm)}.stat-card-icon-wrapper{width:40px;height:40px}.stat-label-enhanced{font-size:12px}.stat-value-enhanced{font-size:20px;white-space:nowrap}}@media (max-width: 480px){.company-page{padding:var(--spacing-sm)}.employee-page-v2.company-page{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.employee-page-v2 .employee-card-header{flex-direction:column;align-items:stretch}.employee-page-v2 .employee-card-header .btn-back-enhanced{width:100%;justify-content:center}.employee-page-v2 .employee-card-header .btn-secondary{width:100%}.employee-page-v2 .employee-card{padding:var(--spacing-sm);border-radius:var(--radius-sm)}.employee-page-v2 .card-section{padding-bottom:var(--spacing-sm)}.employee-page-v2 .card-section h2{font-size:18px}.employee-page-v2 .stats-year-title{font-size:17px}.employee-page-v2 .employee-section-income h2{margin-bottom:var(--spacing-sm)}.employee-page-v2 .income-by-team-card{padding:var(--spacing-sm)}.employee-page-v2 .income-by-team-name{font-size:14px}.employee-page-v2 .income-by-team-row{font-size:12px}.employee-card-header-visual{padding:var(--spacing-md);gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.employee-card-header-visual .employee-avatar-wrapper{width:64px!important;height:64px!important}.employee-card-header-visual .employee-avatar{width:64px!important;height:64px!important;display:flex!important;align-items:center!important;justify-content:center!important}.employee-card-header-visual .employee-avatar-wrapper img{width:64px!important;height:64px!important}.employee-card-header-visual .employee-avatar-wrapper .avatar-initials{width:100%!important;height:100%!important;font-size:22px!important;display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important}.employee-header-info{width:100%}.employee-header-info h1{font-size:20px;margin-bottom:var(--spacing-xs);line-height:1.3}.employee-header-meta{justify-content:center;gap:6px;flex-wrap:wrap}.employee-role-badge,.employee-department-badge,.employee-team-badge{font-size:11px;padding:4px 10px;line-height:1.4}.stat-label-vertical{font-size:11px}.stat-value-vertical{font-size:18px}.employee-page-v2 .stats-grid-enhanced,.employee-page .stats-grid-enhanced,.employee-page-v2 .stat-card-section-grid,.employee-page .stat-card-section-grid{grid-template-columns:1fr!important}.stat-label-enhanced{font-size:11px}.stat-value-enhanced{font-size:18px;white-space:nowrap}.stat-card-enhanced{padding:var(--spacing-xs);gap:var(--spacing-sm)}.stat-card-icon-wrapper{width:36px;height:36px}.quarterly-chart-container{padding:var(--spacing-sm)}.quarterly-chart-container h3{font-size:16px}.chart-responsive-wrapper{min-height:200px}.chart-x-axis,.chart-y-axis{font-size:10px}.chart-bar-label{font-size:12px!important;font-weight:700!important;fill:#333!important}.project-card-mobile{padding:var(--spacing-sm)}.project-card-mobile-title h4{font-size:14px}.project-card-mobile-label{font-size:12px}.project-card-mobile-value{font-size:13px}.work-percentage-input-mobile{width:50px;font-size:12px}.btn-back,.btn-back-enhanced{padding:var(--spacing-xs) var(--spacing-sm);font-size:13px}}@media (max-width: 430px){.company-page{padding-left:8px;padding-right:8px;box-sizing:border-box;max-width:100vw;overflow-x:hidden}.employee-page-v2.company-page,.employee-page.company-page{padding-left:8px;padding-right:8px}.employee-page-v2 .employee-card-header,.employee-page .employee-card-header{padding:0;margin-bottom:8px;gap:8px}.employee-page-v2 .employee-card,.employee-page .employee-card{padding:8px;margin-left:0;margin-right:0;border-radius:8px;box-sizing:border-box;max-width:100%}.employee-page-v2 .card-section,.employee-page .card-section{padding-left:0;padding-right:0;padding-bottom:12px}.employee-page-v2 .employee-card-header-visual,.employee-page .employee-card-header-visual{padding:8px}.employee-page-v2 .stats-grid-enhanced .stat-card-enhanced,.employee-page .stats-grid-enhanced .stat-card-enhanced{min-width:0;padding:8px}.employee-page-v2 .stat-card-content,.employee-page .stat-card-content{min-width:0}.employee-page-v2 .stat-card-section-grid .stat-card-section,.employee-page .stat-card-section-grid .stat-card-section{min-width:0;padding:8px}.employee-page-v2 .stat-card-section__content,.employee-page .stat-card-section__content{min-width:0}.employee-page-v2 .stat-card-section__value,.employee-page .stat-card-section__value,.employee-page-v2 .stat-value-enhanced,.employee-page .stat-value-enhanced{white-space:nowrap;font-size:16px}.employee-page-v2 .income-by-team-card,.employee-page .income-by-team-card{min-width:0;padding:8px}.employee-page-v2 .quarterly-chart-container,.employee-page .quarterly-chart-container{padding:8px;margin-left:0;margin-right:0;max-width:100%}.employee-page-v2 .stats-grid-enhanced,.employee-page .stats-grid-enhanced{grid-template-columns:1fr!important;gap:8px}.employee-page-v2 .stat-card-section-grid,.employee-page .stat-card-section-grid{grid-template-columns:1fr!important;gap:8px;width:100%;min-width:0;box-sizing:border-box}.employee-page-v2 .employee-page-nav,.employee-page .employee-page-nav{padding:4px 0;gap:4px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.employee-page-v2 .employee-page-nav-link,.employee-page .employee-page-nav-link{padding:6px 10px;font-size:12px;flex-shrink:0}}.object-stat-item{width:100px}.act-card-page .act-card-title{font-size:1.5rem;margin:0;word-break:break-word}.act-card-page.entity-detail-page .act-info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.act-card-page .info-item-full{grid-column:1 / -1}.act-distribution-by-team{display:flex;flex-direction:column;gap:var(--spacing-lg)}.act-team-block{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);background:var(--color-secondary-bg)}.entity-detail-page .act-team-block{background:var(--color-bg);box-shadow:none}.act-team-name{margin:0 0 var(--spacing-sm) 0;font-size:1rem;font-weight:600;color:var(--color-text)}.act-employees-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.act-employee-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border);gap:var(--spacing-md)}.act-employee-row:last-child{border-bottom:none}.act-employee-name{flex:1;min-width:0;word-break:break-word}.act-employee-amount{flex-shrink:0;font-weight:500;white-space:nowrap}.act-team-pct-of-act{font-weight:400;font-size:.9em;color:var(--color-text-secondary)}.act-employee-pct{font-weight:400;font-size:.85em;color:var(--color-text-secondary)}@media (max-width: 768px){.act-card-page .act-card-header{flex-wrap:wrap;gap:var(--spacing-sm)}.act-card-page .act-card-title{font-size:1.25rem}.act-card-page.entity-detail-page .act-info-grid{grid-template-columns:1fr}.act-employee-row{flex-wrap:wrap}.act-employee-amount{width:100%;text-align:right}}.org-teams-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.department-page-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--spacing-md)}.department-page-header h1{justify-self:center;text-align:center}.department-page-header .page-header-actions{justify-self:end}.department-page-header .btn-back{justify-self:start;width:auto;max-width:max-content}.org-teams-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--spacing-md)}.department-teams-section .client-section-header{margin-bottom:var(--spacing-md)}.department-teams-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-lg)}.department-team-subsection{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000000f}.department-team-subsection-title{font-size:18px;font-weight:600;margin:0;color:var(--color-text)}.employee-card-team-stats{display:flex;flex-direction:column;gap:var(--spacing-xs);font-size:12px;color:var(--color-text-secondary)}.employee-card-stat{display:block}.department-team-members-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.department-team-member-card{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);min-height:92px}.department-team-member-card .employee-mini-info{min-width:0}.department-team-member-card .employee-mini-name{font-size:14px;margin-bottom:var(--spacing-xs)}.org-team-card{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md)}.org-team-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-sm)}.org-team-card__meta{margin:0;color:var(--color-text-muted);font-size:13px}.org-team-card__actions{display:flex;gap:var(--spacing-xs)}.org-team-card__warning{margin:0;color:var(--color-error);font-size:13px;display:flex;align-items:center;gap:var(--spacing-xs)}.org-team-card__message{margin:0;color:var(--color-text-muted);font-size:13px}.org-team-card__footer{display:flex;flex-direction:column;gap:var(--spacing-sm)}.org-team-card__members{overflow-x:auto}.org-team-card__members .data-table{width:100%;min-width:720px}.org-team-card__lead-toggle{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text);font-size:13px;font-weight:600;white-space:nowrap}.org-team-card__lead-toggle input{width:16px;height:16px;accent-color:var(--ds-accent, var(--color-primary))}.org-team-card__delete-btn{border-color:#d93a3a59;color:var(--color-error)}.org-team-card__delete-btn:hover{border-color:var(--color-error);background:#d93a3a0f}.org-team-card__add-member{display:grid;grid-template-columns:1fr 120px auto;gap:var(--spacing-xs)}.org-employee-assignments{display:flex;flex-direction:column;gap:var(--spacing-xs)}.org-employee-assignment-row{display:grid;grid-template-columns:1fr 120px auto;gap:var(--spacing-xs);align-items:center}@media (max-width: 768px){.department-page .department-teams-grid,.department-page .department-team-members-grid{grid-template-columns:1fr}}.contract-approvals-page .page-header{margin-bottom:var(--spacing-lg)}.contract-approvals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.contract-approvals-column{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md)}.contract-approvals-column__title{font-size:1rem;font-weight:600;margin:0 0 var(--spacing-md) 0;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.contract-approvals-column__list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.contract-approvals-empty{margin:0;color:var(--color-text-secondary);font-size:.9em}.contract-approvals-card{padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-secondary-bg)}.contract-approvals-card__name{font-weight:500;margin-bottom:var(--spacing-xs)}.contract-approvals-card__meta,.contract-approvals-card__comment{font-size:.85em;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.contract-approvals-card__comment{font-style:italic}.contract-approvals-card__actions{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-sm);flex-wrap:wrap}.contract-approvals-form-group{margin-bottom:var(--spacing-md)}.contract-approvals-page textarea.ui-input{min-height:80px;height:auto;resize:vertical}@media (max-width: 900px){.contract-approvals-grid{grid-template-columns:1fr}}.entity-detail-page .section-card,.entity-detail-page .client-section-card{border-radius:var(--radius-lg);border-color:var(--color-border);box-shadow:0 1px 3px #0000000f}.entity-detail-page .section-card-header h2,.entity-detail-page .client-section-header h2{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;display:inline-block;padding-bottom:8px;border-bottom:2px solid var(--color-text)}.entity-detail-page .info-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--spacing-md) var(--spacing-lg)}.entity-detail-page .info-grid.client-passport-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.entity-detail-page .info-item label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary)}.entity-detail-page .info-item span{font-size:15px;font-weight:700}.entity-detail-page .list-cards{gap:var(--spacing-sm)}.entity-detail-page .list-card{border-radius:var(--radius-md);box-shadow:none;transition:border-color .15s ease}.entity-detail-page .list-card:hover{transform:none;box-shadow:none;border-color:var(--color-accent)}.entity-detail-page .list-card-title{font-size:14px;font-weight:700}.entity-detail-page .list-card-header{margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.entity-detail-page .list-card-label,.entity-detail-page .list-card-value{font-size:12px}.entity-detail-page .list-card-label{color:var(--color-text-secondary)}@media (max-width: 1200px){.entity-detail-page .info-grid,.entity-detail-page .info-grid.client-passport-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.entity-detail-page .info-grid.client-passport-grid .info-item-col-2{grid-column:1 / -1}}@media (max-width: 600px){.entity-detail-page .info-grid{grid-template-columns:1fr}.entity-detail-page .info-grid.client-passport-grid .info-item-col-2{grid-column:1}}.contract-card-page .contract-page-header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border);align-items:center}.contract-card-page .page-header-left{display:flex;align-items:center;gap:var(--spacing-md)}.contract-card-page .page-title{margin:0;font-size:20px;font-weight:800;letter-spacing:-.02em;line-height:1.25;min-height:var(--ds-height-lg);display:flex;align-items:center}.contract-card-page .btn-back{margin-bottom:0;height:var(--ds-height-lg);min-height:var(--ds-height-lg);padding:0 18px;font-size:13px;font-weight:600;border:none;background:transparent;color:var(--color-text-secondary)}.contract-card-page .btn-back:hover{background:#0000000a;color:var(--color-text)}.contract-card-page .contract-header-action-btn{height:var(--ds-height-lg);min-height:var(--ds-height-lg)}.contract-card-page .contract-status-row{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.contract-card-page .contract-status-approvals-btn{padding:var(--spacing-xs) var(--spacing-sm)}.contract-card-page .contract-stage-overdue{border-color:var(--color-danger);background:#ef444414}.contract-income-card .section-card-header{margin-bottom:var(--spacing-lg)}.contract-income-tabs{border-bottom:2px solid var(--color-border);margin-bottom:var(--spacing-lg);padding-bottom:2px}.contract-income-tabs-scroll{display:flex;gap:0;background:transparent;overflow-x:auto;-webkit-overflow-scrolling:touch;min-height:44px;align-items:flex-end;padding-bottom:2px}.contract-income-tabs-scroll::-webkit-scrollbar{height:6px}.employee-page-v2 .contract-income-tabs-scroll,.employee-page .contract-income-tabs-scroll{scrollbar-width:none}.employee-page-v2 .contract-income-tabs-scroll::-webkit-scrollbar,.employee-page .contract-income-tabs-scroll::-webkit-scrollbar{display:none}.contract-income-tab{border:none;background:transparent!important;background-color:transparent!important;cursor:pointer;padding:var(--spacing-sm) var(--spacing-md);padding-bottom:calc(var(--spacing-sm) + 4px);color:var(--color-text-secondary);font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;position:relative;margin-bottom:0;box-sizing:border-box}.contract-income-tab:hover{background:transparent!important;background-color:transparent!important;color:var(--color-text)}.contract-income-tab.active{background:transparent!important;background-color:transparent!important;color:var(--color-text);box-shadow:inset 0 -3px 0 0 var(--color-accent)}.contract-income-tab.active:after{content:none}.contract-income-tab-summary{font-size:11px;font-weight:500;color:var(--color-text-secondary)}.contract-income-stage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.contract-income-stage-type{color:var(--ds-text);font-size:16px;font-weight:800;line-height:1.25}.contract-income-stage-name{margin-top:2px;color:var(--ds-text-tertiary);font-size:12px;line-height:1.35}.contract-act-filter-bar{display:flex;align-items:center;gap:14px;padding:12px 14px;margin-bottom:12px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:#fafafa}.contract-act-filter-label{flex:0 0 auto;color:var(--ds-muted);font-size:12px;font-weight:800;line-height:1.2;text-transform:uppercase}.contract-act-chips{display:flex;flex-wrap:wrap;gap:8px}.contract-act-chip{display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;min-height:38px;padding:6px 12px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);background:#fff;color:var(--ds-text);cursor:pointer;text-align:left}.contract-act-chip:hover{border-color:var(--ds-accent)}.contract-act-chip.active{border-color:var(--ds-accent);background:#fff8d7;box-shadow:inset 0 0 0 1px var(--ds-accent)}.contract-act-chip span{font-size:12px;font-weight:800;line-height:1.15}.contract-act-chip small{color:var(--ds-muted);font-size:11px;font-weight:600;line-height:1.15}.contract-budget-act-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.contract-budget-act-chip{display:inline-flex;align-items:center;gap:8px;min-height:30px;padding:6px 10px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:var(--ds-surface);color:var(--ds-text);font-size:12px;cursor:pointer}.contract-budget-act-chip strong{font-family:var(--ds-font-mono);font-size:12px}.contract-income-panel{display:none}.contract-income-panel.active{display:block}.budget-table-wrap-compact{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto;overflow-y:hidden}.budget-table-compact{width:100%;min-width:720px;border-collapse:collapse;table-layout:fixed;background:var(--color-bg)}.budget-table-compact th{height:38px;padding:8px 12px;vertical-align:bottom;background:#f7f7f7;border-bottom:1px solid var(--color-border);color:var(--ds-muted);font-size:11px;font-weight:800;line-height:1.15;text-align:left;text-transform:uppercase}.budget-table-compact th.col-amount{width:150px;text-align:right}.budget-table-compact th.col-pct{width:88px;text-align:right}.budget-table-compact td{height:36px;padding:0 12px;border-bottom:1px solid var(--color-border);color:var(--ds-text);font-size:13px;line-height:1.25}.budget-table-compact tbody tr:last-child td{border-bottom:none}.budget-table-compact .amount,.budget-table-compact .pct-cell{text-align:right;font-family:var(--ds-font-mono);font-weight:700}.budget-table-compact .actirovano-col{background:#fffaf0}.budget-table-compact .actirovano-col.zero{color:var(--ds-muted)}.actirovano-th-wrap{display:inline-flex;flex-direction:column;align-items:flex-end;gap:3px}.actirovano-th-badge{max-width:130px;overflow:hidden;color:var(--ds-accent-strong);font-size:10px;font-weight:800;line-height:1.1;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.budget-table-compact .row-section td{height:34px;background:var(--ds-text);color:#fff;font-size:11px;font-weight:900;letter-spacing:0;text-transform:uppercase}.budget-table-compact .row-budget--employee td:nth-child(2){color:var(--ds-muted)}.budget-table-compact .row-budget--expense td{background:#fffdf5}.budget-table-compact .row-budget--expense .actirovano-col{background:#fff7e8}.budget-table-compact .row-budget.is-clickable{cursor:pointer}.budget-table-compact .row-budget.is-clickable:hover td{background:#ffd70014}.budget-table-compact .row-total td{height:38px;background:#fff7d6;color:var(--ds-text);font-weight:900;text-transform:uppercase}.budget-table-compact .row-total .actirovano-col{background:#fff1b5}.contract-income-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto;overflow-y:hidden}.contract-income-table{width:100%;min-width:720px;border-collapse:collapse;table-layout:fixed;background:var(--color-bg)}.contract-income-table th{height:34px;padding:0 var(--spacing-md);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);text-align:left;background:var(--color-secondary-bg);border-bottom:1px solid var(--color-border)}.contract-income-table th.col-amount{width:140px;text-align:right}.contract-income-table th.col-pct{width:128px;text-align:right}.contract-income-table td{border-bottom:1px solid var(--color-border);padding:0 var(--spacing-md);font-size:13px;color:var(--color-text)}.contract-income-table tbody tr:last-child td{border-bottom:none}.contract-income-table td.amount,.contract-income-table td.pct-cell{text-align:right}.contract-income-table .row-section td{height:36px;background:var(--ds-text);color:var(--ds-bg);font-size:11px;font-weight:900;text-transform:uppercase}.contract-income-table .row-budget td{height:36px}.contract-income-table .row-budget--team td{font-weight:700}.contract-income-table .row-budget--employee td{color:var(--color-text-secondary)}.contract-income-table .row-budget--employee td:nth-child(2){padding-left:calc(var(--spacing-md) + 12px)}.contract-income-table .row-budget--expense td{background:#fffdf5}.contract-income-table .row-budget--expense td:nth-child(2){color:var(--ds-text);font-weight:700}.contract-income-table .row-budget.is-clickable{cursor:pointer}.contract-income-table .row-budget.is-clickable:hover td{background:#ffd70014}.contract-income-table .row-total td{height:38px;background:#fff8df;color:var(--ds-text);font-weight:900;text-transform:uppercase}.contract-income-table .pct-bar{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.contract-income-table .pct-track{width:48px;height:5px;border-radius:999px;background:var(--color-border);overflow:hidden}.contract-income-table .pct-fill{height:100%;border-radius:999px}.contract-income-table .pct-fill.green{background:var(--color-success)}.contract-income-table .pct-fill.orange{background:var(--color-warning)}.contract-income-table .pct-fill.grey{background:var(--color-text-secondary)}.contract-income-table .pct-value{min-width:32px;text-align:right;font-size:12px;font-weight:600;font-family:var(--ds-font-mono)}.contract-income-table .pct-value.green{color:var(--color-success)}.contract-income-table .pct-value.orange{color:var(--color-warning)}.contract-income-table .pct-value.grey{color:var(--color-text-secondary)}.act-detail-page.company-page{max-width:1120px}.act-detail-breadcrumb{margin-bottom:16px;flex-wrap:wrap}.act-detail-back-link{border:0;background:transparent!important;color:var(--color-text-secondary);font-weight:600;cursor:pointer;margin-bottom:16px}.act-detail-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--ds-border)}.act-detail-header__left,.act-detail-header__right{display:inline-flex;align-items:center;gap:14px}.act-detail-header__right{gap:10px}.act-detail-icon{width:48px;height:48px;border-radius:var(--ds-radius-md);background:var(--ds-accent);color:var(--ds-accent-text);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.act-detail-title{max-width:100%}.act-detail-subtitle{margin:2px 0 0;font-size:13px;color:var(--ds-text-secondary)}.act-detail-hero{position:relative;overflow:hidden;background:var(--ds-bg);border:1px solid var(--ds-border);border-radius:var(--ds-radius-xl);box-shadow:var(--ds-shadow-card);padding:32px 36px;margin-bottom:16px}.act-detail-hero:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--ds-accent)}.act-detail-hero__overline{margin-bottom:12px;font-size:11px;font-weight:700;color:var(--ds-text-tertiary);text-transform:uppercase;letter-spacing:1px}.act-detail-hero__amount{display:flex;align-items:baseline;gap:6px;margin-bottom:18px;font-size:56px;line-height:1;font-weight:800;letter-spacing:0;color:var(--ds-text);font-variant-numeric:tabular-nums}.act-detail-hero__currency{font-size:28px;font-weight:700;color:var(--ds-text-secondary)}.act-detail-hero__notice{display:flex;align-items:center;gap:10px;width:fit-content;max-width:100%;box-sizing:border-box;padding:12px 16px;border-radius:var(--ds-radius-md);font-size:13.5px;font-weight:600;color:var(--ds-text)}.act-detail-hero__notice img{flex-shrink:0}.act-detail-hero__notice span{min-width:0}.act-detail-hero__notice.is-complete{background:#ffd70014;border:1px solid rgba(255,215,0,.3)}.act-detail-hero__notice.is-warning{background:var(--ds-warning-bg);border:1px solid rgba(245,158,11,.3)}.act-detail-hero__notice.is-error{background:var(--ds-error-bg);border:1px solid rgba(239,68,68,.3);color:var(--ds-text)}.act-detail-section.ds-card{margin-bottom:16px;padding:22px 26px}.act-detail-section__head.ds-card-header{align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:16px}.act-detail-section__head h2{margin:0;font-size:15px;line-height:1.25;font-weight:700;letter-spacing:0;color:var(--ds-text)}.act-detail-section__meta{font-size:12px;color:var(--ds-text-tertiary)}.act-distribution-table-wrap{border-radius:var(--ds-radius-md)}.act-distribution-table{width:100%;border-collapse:collapse;table-layout:fixed;background:var(--ds-bg)}.act-distribution-table__col-dept{width:32%}.act-distribution-table__col-person{width:38%}.act-distribution-table__col-amount{width:16%}.act-distribution-table__col-percent{width:14%}.act-distribution-table th{height:38px;padding:0 16px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--ds-text-secondary);background:var(--ds-surface);border-bottom:2px solid var(--ds-border);text-align:left;white-space:nowrap}.act-distribution-table td{height:42px;padding:0 16px;font-size:13px;border-bottom:1px solid var(--ds-border);vertical-align:middle}.act-distribution-table tbody tr:hover:not(.act-distribution-total):not(.act-distribution-section-row){background:#ffd7000d}.act-align-right{text-align:right!important}.act-distribution-dept{background:var(--ds-surface);border-right:1px solid var(--ds-border);font-weight:700}.act-category-tag{display:inline-flex;align-items:center;gap:6px;min-width:0;font-weight:600}.act-category-icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--ds-radius-xs);font-size:10px;font-weight:700}.act-category-icon--arch,.act-category-icon--default{background:var(--ds-info-bg);color:var(--ds-info)}.act-category-icon--eng{background:#f0fdf4;color:#15803d}.act-category-icon--des{background:#f3e8ff;color:#7c3aed}.act-category-icon--mgmt{background:#fef3c7;color:#92400e}.act-category-icon--fin{background:var(--ds-error-bg);color:var(--ds-error)}.act-person-link,.act-distribution-mobile-row{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.act-person-link:hover .act-person-name,.act-distribution-mobile-row:hover .act-person-name{color:var(--ds-accent-warm)}.act-person-text{display:flex;flex-direction:column;min-width:0}.act-person-name{font-weight:500;color:var(--ds-text);transition:color var(--ds-transition)}.act-person-role{margin-top:1px;font-size:11px;color:var(--ds-text-tertiary);font-weight:500}.act-pct-value{font-family:var(--ds-font-mono);font-size:12.5px;font-weight:600;color:var(--ds-text);font-variant-numeric:tabular-nums}.act-distribution-row--mismatch,.act-distribution-table tbody tr.act-distribution-row--mismatch:hover,.act-distribution-mobile-row.act-distribution-row--mismatch:hover{background:var(--ds-error-bg)}.act-distribution-value--mismatch{color:var(--ds-error)!important;font-weight:800}.act-distribution-section-row td{height:34px;background:var(--ds-text);color:var(--ds-bg);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:1px}.act-distribution-expense-name{background:var(--ds-bg);border-right:1px solid var(--ds-border);font-weight:600;color:var(--ds-text)}.act-distribution-other-row--tax,.act-distribution-other-row--tax td,.act-distribution-other-row--tax .act-distribution-expense-name{background:var(--ds-warning-bg)}.act-distribution-other-row--tax .act-distribution-expense-name,.act-distribution-other-row--tax .act-pct-value{color:var(--ds-warning);font-weight:800}.act-distribution-other-row--production,.act-distribution-other-row--production td,.act-distribution-other-row--production .act-distribution-expense-name{background:#fffdf2}.act-distribution-other-row--non-production,.act-distribution-other-row--non-production td,.act-distribution-other-row--non-production .act-distribution-expense-name{background:var(--ds-error-bg)}.act-distribution-other-row--non-production .act-distribution-expense-name,.act-distribution-other-row--non-production .act-pct-value{color:var(--ds-error)}.act-expense-marker{width:16px;height:16px;margin-right:7px;display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;font-family:var(--ds-font-mono);font-size:10px;font-weight:800;vertical-align:-2px}.act-expense-marker--tax,.act-expense-marker--production{color:var(--ds-warning)}.act-expense-marker--non-production{color:var(--ds-error)}.act-distribution-expense-empty{background:var(--ds-bg)}.act-distribution-total td{height:48px;background:var(--ds-text);color:var(--ds-bg);border-bottom:none;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.4px}.act-distribution-total td.amount-mono,.act-distribution-total .act-pct-value{color:var(--ds-accent);font-size:14px;text-transform:none;letter-spacing:0}.act-distribution-total--employees td{background:#2f2f2f}.act-distribution-total--act td{background:#111827}.act-distribution-total--act.is-error td{background:var(--ds-error);color:#fff}.act-distribution-total--act.is-error .act-pct-value,.act-distribution-total--act.is-error td.amount-mono{color:#fff}.act-distribution-mobile-list{display:none}@media (max-width: 768px){.act-detail-page.company-page{padding-left:16px;padding-right:16px}.act-detail-header,.act-detail-header__left,.act-detail-header__right{width:100%;align-items:flex-start}.act-detail-header__right{flex-direction:column}.act-detail-hero{padding:22px 18px}.act-detail-hero__amount{font-size:38px}.act-detail-hero__currency{font-size:22px}.act-detail-hero__notice{align-items:flex-start}.act-detail-section.ds-card{padding:18px}.act-distribution-table-wrap{display:none}.act-distribution-mobile-list{display:flex;flex-direction:column;gap:12px}.act-distribution-mobile-group{border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);overflow:hidden;background:var(--ds-bg)}.act-distribution-mobile-group__head{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--ds-surface);border-bottom:1px solid var(--ds-border);font-weight:700}.act-distribution-mobile-row{padding:10px 12px;border-bottom:1px solid var(--ds-border)}.act-distribution-mobile-row:last-child{border-bottom:none}.act-distribution-mobile-row__amount{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap}.act-distribution-mobile-total{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:var(--ds-radius-md);background:#111827;color:#fff;font-weight:800}.act-distribution-mobile-total>span:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap}.act-distribution-mobile-total .act-pct-value{color:var(--ds-accent)}.act-distribution-mobile-total.is-error{background:var(--ds-error)}.act-distribution-mobile-total.is-error .act-pct-value{color:#fff}}.department-detail-page{--department-detail-gap: 16px}.department-detail-header{margin-bottom:18px}.department-detail-breadcrumb{margin-bottom:16px}.department-detail-titlebar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--ds-border)}.department-detail-titlebar-main{min-width:0;display:flex;align-items:center;gap:14px}.department-detail-mark{width:48px;height:48px;flex:0 0 48px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ds-radius-md);background:var(--ds-accent);color:var(--ds-accent-text);font-size:14px;font-weight:800;letter-spacing:0}.department-detail-titlecopy{min-width:0}.department-detail-subtitle{margin:2px 0 0;color:var(--ds-text-secondary);font-size:13px;line-height:1.45}.department-detail-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.department-team-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:8px;margin-bottom:16px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-lg);background:var(--ds-surface)}.department-team-tab{min-width:0;display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border:1px solid transparent;border-radius:var(--ds-radius-sm);background:transparent;background-color:transparent!important;color:var(--ds-text-secondary);font-family:var(--font-family);cursor:pointer;transition:background var(--ds-transition),border-color var(--ds-transition),box-shadow var(--ds-transition)}button.department-team-tab{background-color:transparent!important}.department-team-tab:hover{background:var(--ds-bg);background-color:var(--ds-bg)!important}button.department-team-tab:hover{background-color:var(--ds-bg)!important}.department-team-tab-active{background:var(--ds-bg);background-color:var(--ds-bg)!important;border-color:var(--ds-accent);box-shadow:var(--ds-shadow-sm)}button.department-team-tab-active{background-color:var(--ds-bg)!important}.department-team-tab-code{font-size:14px;font-weight:800;color:inherit;letter-spacing:0;white-space:nowrap}.department-team-tab-active .department-team-tab-code{color:var(--ds-text)}.department-team-tab-meta{overflow:hidden;color:var(--ds-text-tertiary);font-size:11.5px;text-overflow:ellipsis;white-space:nowrap}.department-team-tab-active .department-team-tab-meta{color:var(--ds-text-secondary)}.department-detail-main-tabs{margin-bottom:22px}.department-detail-panel-heading{margin:0 0 14px;color:var(--ds-text);font-size:14px;font-weight:700;letter-spacing:0;text-transform:uppercase}.department-detail-periodbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:20px}.department-detail-period-label{align-self:center;color:var(--ds-text-tertiary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0}.department-income-filter-sort{width:170px}.department-income-filter-search{flex:1 1 280px}.department-income-filter-search .ui-input-wrapper,.department-income-filter-search .ui-input{width:100%}.department-income-hero{position:relative;overflow:hidden;padding:32px 36px;margin-bottom:16px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-xl);background:var(--ds-bg);box-shadow:var(--ds-shadow-card)}.department-income-hero:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--ds-accent)}.department-income-hero-overline{margin:0 0 12px;color:var(--ds-text-tertiary);font-size:11px;font-weight:700;letter-spacing:0;text-transform:uppercase}.department-income-hero-amount{margin-bottom:18px;color:var(--ds-text);font-size:clamp(36px,6vw,56px);font-weight:800;line-height:1;letter-spacing:0;font-variant-numeric:tabular-nums}.department-income-hero-amount span{margin-left:6px;color:var(--ds-text-secondary);font-size:.5em;font-weight:700}.department-income-hero-empty .department-income-hero-amount{color:var(--ds-text-tertiary)}.department-income-hero-note{display:flex;align-items:center;gap:10px;max-width:640px;padding:12px 16px;border:1px solid rgba(255,215,0,.3);border-radius:var(--ds-radius-md);background:#ffd70014;color:var(--ds-text);font-size:13.5px;font-weight:600}.department-income-mode{margin:4px 0 16px}.department-detail-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:16px}.department-detail-section{padding:24px 28px;margin-bottom:16px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-xl);background:var(--ds-bg);box-shadow:var(--ds-shadow-card)}.department-detail-section-soft{background:#fcfcfc}.department-detail-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}.department-detail-section-head h2{margin:0;color:var(--ds-text);font-size:14px;font-weight:700;letter-spacing:0;text-transform:uppercase}.department-detail-section-head span{color:var(--ds-text-tertiary);font-family:var(--ds-font-mono);font-size:12px}.department-detail-table{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.department-detail-table-scroll{max-height:320px;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.department-detail-table-scroll thead th{position:sticky;top:0;z-index:2;background:var(--ds-bg);box-shadow:inset 0 -1px 0 var(--ds-border)}.department-detail-section-soft .department-detail-table-scroll thead th{background:#fcfcfc}.department-detail-table-scroll tfoot td{position:sticky;bottom:0;z-index:2;background:var(--ds-bg);box-shadow:inset 0 2px 0 var(--ds-text)}.department-detail-section-soft .department-detail-table-scroll tfoot td{background:#fcfcfc}.department-detail-data-table tfoot td{height:auto;padding:14px 14px 0;border-top:2px solid var(--ds-text);border-bottom:0;background:transparent;font-size:14px;font-weight:800}.department-detail-table-scroll .department-detail-data-table tfoot td{background:var(--ds-bg)}.department-detail-section-soft .department-detail-table-scroll .department-detail-data-table tfoot td{background:#fcfcfc}.department-project-income-table .department-income-project-row td{background:#fcfcfc;font-weight:700}.department-income-stage-row td{border-top:0}.department-income-stage-row td:first-child{padding-left:26px}.department-income-link{padding:0;border:0;background:transparent;color:var(--ds-text);font:inherit;font-weight:700;text-align:left;cursor:pointer;transition:color var(--ds-transition)}.department-income-link-stage{font-weight:700}.department-income-link:hover{color:var(--ds-accent-warm);text-decoration:underline}.department-income-act-row td{background:var(--ds-surface);color:var(--ds-text-secondary);font-size:12px}.department-income-matrix-stage-row td{background:#fcfcfc;font-weight:700}.department-income-matrix-table{min-width:760px}.department-income-matrix-col-name{width:56%}.department-income-matrix-col-amount{width:24%}.department-income-matrix-col-percent{width:20%}.department-remaining-income-table{min-width:820px}.department-remaining-col-name{width:46%}.department-remaining-col-status{width:18%}.department-remaining-col-date{width:16%}.department-remaining-col-amount{width:20%}.department-income-act-row td:first-child{padding-left:48px}.department-income-subrow td{background:var(--ds-surface);color:var(--ds-text-secondary);font-size:12.5px}.department-income-subrow td:first-child{padding-left:36px}.department-detail-empty-cell{color:var(--ds-text-tertiary);text-align:center}.department-detail-empty-state{display:grid;min-height:78px;place-items:center;padding:16px;border:1px dashed var(--ds-border-strong);border-radius:var(--ds-radius-md);color:var(--ds-text-tertiary);font-size:13px;text-align:center}.department-income-entity,.department-income-stage-cell{min-width:0;display:flex;align-items:center;gap:10px}.department-income-stage-cell{align-items:flex-start;flex-direction:column;gap:2px}.department-income-entity strong,.department-income-stage-cell strong{display:block;min-width:0;overflow:hidden;color:var(--ds-text);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.department-income-entity small,.department-income-stage-cell small{display:block;overflow:hidden;color:var(--ds-text-tertiary);font-size:11.5px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.department-income-matrix-stage-cell{gap:3px}.department-income-matrix-objectline{display:flex;align-items:center;min-width:0;max-width:100%;gap:10px}.department-income-matrix-objectline strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.department-income-matrix-contract{display:block;overflow:hidden;color:var(--ds-text);font-size:12.5px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.department-income-employee-cell{display:inline-flex;align-items:center;min-width:0;gap:8px}.department-income-employee-arrow{color:var(--ds-text-tertiary);font-size:13px;line-height:1}.department-income-dot{width:6px;height:26px;flex:0 0 6px;border-radius:3px;background:var(--ds-accent)}.department-income-dot-project{background:var(--ds-info)}.department-income-dot-object{flex:0 0 6px}.department-income-dot-palette-1{background:#ffd000}.department-income-dot-palette-2{background:#2f80ed}.department-income-dot-palette-3{background:#27ae60}.department-income-dot-palette-4{background:#f2994a}.department-income-dot-palette-5{background:#eb5757}.department-income-dot-palette-6{background:#00a3a3}.department-income-dot-palette-7{background:#7b61ff}.department-remaining-income-table .ds-status-pill{max-width:100%}.department-remain-filter{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.department-remain-chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-full);background:transparent;color:var(--ds-text-secondary);cursor:pointer;font-size:12px;font-weight:600}.department-remain-chip:hover{border-color:var(--ds-border-strong);color:var(--ds-text)}.department-remain-chip-active{border-color:var(--ds-accent);background:var(--ds-accent-soft);color:var(--ds-text)}.department-remain-chip span{min-width:18px;padding:1px 6px;border-radius:var(--ds-radius-full);background:var(--ds-surface);color:var(--ds-text-secondary);font-family:var(--ds-font-mono);font-size:10.5px;font-weight:700;text-align:center}.department-stages-filterbar{display:grid;grid-template-columns:150px 130px 150px minmax(220px,1fr);gap:12px;align-items:end;margin-bottom:16px}.department-stage-filter,.department-stage-filter .ui-input-wrapper,.department-stage-filter .ui-input,.department-stage-filter .ui-select{width:100%}.department-stages-table .department-stage-col-name{width:22%}.department-stages-table .department-stage-col-income{width:18%}.department-stages-table .department-stage-col-progress{width:10%}.department-stages-table .department-stage-col-earned{width:14%}.department-stages-table .department-stage-col-remaining{width:12%}.department-stages-table .department-stage-col-due{width:11%}.department-stages-table .department-stage-col-status{width:13%}.department-stages-table{width:100%;table-layout:fixed}.department-stages-table th{overflow:hidden;text-overflow:ellipsis}.department-stages-table td{overflow:visible;text-overflow:clip}.department-stage-group-row td{background:var(--ds-surface);color:var(--ds-text);padding:8px 12px;font-size:13px;font-weight:700;letter-spacing:0;text-transform:none}.department-stage-group-cell{display:inline-flex;align-items:center;gap:8px}.department-stage-group-toggle{width:22px;height:22px;min-height:22px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--ds-radius-sm);background:transparent;background-color:transparent!important;cursor:pointer;transition:background var(--ds-transition)}.department-stage-group-toggle:hover{background:var(--ds-accent-soft);background-color:var(--ds-accent-soft)!important}.department-stage-group-toggle img{opacity:.58}.department-stage-object-link,.department-stage-link{min-height:0;display:inline;padding:0;border:0;background:transparent;background-color:transparent!important;color:var(--ds-text);font:inherit;text-align:left;cursor:pointer;transition:color var(--ds-transition)}.department-stage-object-link{font-weight:700}.department-stage-link{font-weight:600;font-size:12.5px;overflow-wrap:anywhere;white-space:normal}.department-stage-object-link:hover,.department-stage-link:hover{color:var(--ds-accent-warm);text-decoration:underline}.department-stages-panel button.department-stage-group-toggle{min-height:22px;background-color:transparent!important}.department-stages-panel button.department-stage-group-toggle:hover{background-color:var(--ds-accent-soft)!important}.department-stages-panel button.department-stage-object-link,.department-stages-panel button.department-stage-link{min-height:0;background-color:transparent!important}.department-stage-group-count{min-width:22px;display:inline-flex;align-items:center;justify-content:center;margin-left:2px;padding:1px 7px;border-radius:var(--ds-radius-full);background:var(--ds-accent-soft);color:var(--ds-accent-text);font-family:var(--ds-font-mono);font-size:11px;font-weight:700}.department-stages-table .department-stage-amount{color:var(--ds-text)}.department-stages-table .department-stage-amount-earned{color:var(--ds-success-dark)}.department-stage-budget-sub{display:block;margin-top:3px;color:var(--ds-text-tertiary);font-family:var(--font-family);font-size:11px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.department-stage-progress{min-width:94px;display:inline-grid;grid-template-columns:minmax(44px,1fr) auto;align-items:center;gap:8px}.department-stage-progress-track{overflow:hidden;height:6px;border-radius:var(--ds-radius-full);background:var(--ds-surface)}.department-stage-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--ds-accent)}.department-stages-mobile-list{display:none}.department-stage-mobile-group{display:grid;gap:10px}.department-stage-mobile-group+.department-stage-mobile-group{margin-top:14px}.department-stage-mobile-group-head,.department-stage-mobile-title{display:flex;align-items:center;gap:12px}.department-stage-mobile-group-head{color:var(--ds-text);font-size:13px;font-weight:700;letter-spacing:0;text-transform:none}.department-stage-mobile-group-head span,.department-stage-mobile-title span{margin-left:auto;color:var(--ds-text-tertiary);font-family:var(--ds-font-mono);font-size:12px;font-weight:700;text-align:right}.department-stage-mobile-card{padding:14px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:var(--ds-bg)}.department-stage-mobile-title strong{min-width:0;color:var(--ds-text);font-size:14px}.department-stage-mobile-title span{color:var(--ds-text-secondary);font-family:var(--font-family);white-space:nowrap}.department-stage-mobile-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:12px;color:var(--ds-text);font-family:var(--ds-font-mono);font-size:12px;font-weight:800}.department-stage-mobile-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 0}.department-stage-mobile-metrics div{min-width:0}.department-stage-mobile-metrics dt{margin-bottom:3px;color:var(--ds-text-tertiary);font-size:10.5px;font-weight:700;letter-spacing:0;text-transform:uppercase}.department-stage-mobile-metrics dd{margin:0;color:var(--ds-text);font-family:var(--ds-font-mono);font-size:13px;font-weight:800}.department-stage-mobile-budget{margin:12px 0 0;color:var(--ds-text-tertiary);font-size:12px}.department-detail-members{background:#fcfcfc}@media (max-width: 992px){.department-detail-split{grid-template-columns:1fr}}@media (max-width: 768px){.department-detail-titlebar{align-items:flex-start;flex-direction:column}.department-detail-actions{width:100%;justify-content:flex-start}.department-detail-actions .ui-btn{flex:1 1 auto}.department-team-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.department-team-tab{min-width:220px;justify-content:flex-start}.department-detail-periodbar{align-items:stretch;flex-direction:column}.department-detail-periodbar .ds-segmented,.department-income-filter-sort,.department-income-filter-search,.department-income-export-btn{width:100%}.department-income-filter-search{flex:0 0 auto}.department-detail-periodbar .ds-segmented-option{flex:1}.department-stages-filterbar{grid-template-columns:1fr 1fr}.department-stage-filter-grow{grid-column:1 / -1}.department-income-hero,.department-detail-section{padding:22px 18px}.department-detail-table{overflow-x:auto}.department-detail-table-scroll{overflow:auto}.department-stages-table-shell{display:none}.department-stages-mobile-list{display:block}.department-income-hero-note{align-items:flex-start}}@media (max-width: 560px){.department-stages-filterbar{grid-template-columns:1fr}.department-stage-filter-grow{grid-column:auto}}.employee-pr-section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.employee-detail-page .employee-projects-panel{display:block;padding:24px 28px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-xl);background:var(--ds-bg);box-shadow:var(--ds-shadow-card)}.employee-detail-page .employee-projects-panel[hidden]{display:none!important}.employee-detail-page .employee-projects-panel .employee-pr-section-heading{justify-content:flex-end;margin-bottom:14px}.employee-detail-page .employee-projects-panel .employee-pr-section-title-row{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.employee-detail-page .employee-projects-panel .employee-projects-filters{padding:0 0 14px;margin:0 0 16px;border-bottom:1px solid var(--ds-border)}.employee-detail-page .employee-projects-panel .filters{align-items:end;gap:12px}.employee-detail-page .employee-projects-panel .filter-group{min-width:140px}.employee-detail-page .employee-projects-panel .filter-group-search{flex:1 1 280px;min-width:240px}.employee-detail-page .employee-projects-panel .employee-pr-table-wrap{border-radius:var(--ds-radius-md);box-shadow:none}.employee-pr-section-title-row{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;min-width:0}.employee-pr-section-title{margin:0;font-size:16px;font-weight:700;color:var(--color-text)}.employee-pr-section-count{font-size:12px;font-family:var(--ds-font-mono);color:var(--ds-text-tertiary);background:var(--color-secondary-bg);border:1px solid var(--color-border);padding:2px 8px;border-radius:var(--ds-radius-full)}.employee-pr-section-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.employee-pr-export-btn.ui-btn{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:0 10px;font-size:11.5px;font-weight:600}.employee-pr-table-wrap{border:1px solid var(--color-border);border-radius:0 0 var(--ds-radius-md) var(--ds-radius-md);overflow:hidden;box-shadow:var(--ds-shadow-sm);overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.employee-pr-table{width:100%;min-width:880px;border-collapse:collapse;table-layout:fixed;background:var(--color-bg)}.employee-pr-table thead{position:sticky;top:0;z-index:2}.employee-pr-table th{height:32px;padding:0 10px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);background:var(--color-secondary-bg);border-bottom:1px solid var(--color-border);text-align:left;white-space:nowrap}.employee-pr-table th.employee-pr-th--right{text-align:right}.employee-pr-table td{height:42px;padding:6px 10px;font-size:12.5px;border-bottom:1px solid var(--color-border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;background:var(--color-bg)}.employee-pr-table td.employee-pr-td--right{text-align:right;font-family:var(--ds-font-mono);font-size:12px}.employee-pr-table tbody tr:last-child td{border-bottom:none}.employee-pr-table tbody tr.employee-pr-data-row:hover td{background:color-mix(in srgb,var(--ds-accent) 6%,var(--color-bg))}.employee-pr-group-row td{background:var(--color-secondary-bg);font-weight:700;font-size:12px;color:var(--color-text);border-bottom:1px solid var(--color-border);padding:8px 10px;height:auto;white-space:normal;overflow:visible;text-overflow:clip}.employee-pr-group-inner{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.employee-pr-group-chevron{color:var(--ds-text-tertiary);font-size:10px;flex-shrink:0}.employee-pr-group-link{color:var(--ds-accent-warm);font-weight:700;text-decoration:none}.employee-pr-group-link:hover{text-decoration:underline}.employee-pr-group-count{font-size:10px;font-family:var(--ds-font-mono);color:var(--ds-text-tertiary);background:var(--color-secondary-bg);border:1px solid var(--color-border);padding:1px 6px;border-radius:var(--ds-radius-full);font-weight:500}.employee-pr-stage-link{color:var(--color-text);font-weight:600;text-decoration:none}.employee-pr-stage-link:hover{color:var(--ds-accent-warm)}.employee-pr-type-badge{display:inline-block;padding:1px 7px;border-radius:var(--ds-radius-full);font-size:10.5px;font-weight:700;letter-spacing:.02em;background:var(--color-secondary-bg);border:1px solid var(--color-border);color:var(--color-text-secondary);max-width:100%;overflow:hidden;text-overflow:ellipsis}.employee-pr-budget-sub{display:block;font-size:10px;color:var(--ds-text-tertiary);font-weight:500;margin-top:2px}.employee-pr-progress-cell{display:flex;align-items:center;gap:6px;min-width:0}.employee-pr-progress-track{width:50px;min-width:50px;height:5px;background:var(--color-secondary-bg);border:1px solid var(--color-border);box-sizing:border-box;border-radius:var(--ds-radius-full);overflow:hidden;flex-shrink:0}.employee-pr-progress-fill{height:100%;border-radius:var(--ds-radius-full);background:var(--ds-success);min-width:0}.employee-pr-progress-val{font-family:var(--ds-font-mono);font-size:11px;font-weight:600;color:var(--color-text-secondary);flex-shrink:0}.employee-pr-progress-input{width:44px!important;min-width:44px;padding:2px 4px!important;font-size:12px!important;margin:0!important}.employee-pr-earned{color:var(--ds-success-dark);font-weight:600}.employee-pr-overrun{color:var(--ds-error);font-weight:700}.employee-pr-date-ok{color:var(--color-text-secondary)}.employee-pr-date-invalid{color:var(--ds-text-tertiary);text-decoration:line-through;font-size:11px}.employee-pr-table td.overdue-date{color:var(--ds-error)!important;font-weight:600;background-color:var(--ds-error-bg)!important;position:relative}.employee-pr-table td.overdue-date:before{content:"⚠️";margin-right:4px}.employee-pr-status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--ds-radius-sm);font-size:11px;font-weight:700;white-space:nowrap}.employee-pr-status-badge:before{content:"";width:5px;height:5px;border-radius:50%;flex-shrink:0}.employee-pr-status-badge--active{background:color-mix(in srgb,var(--ds-accent) 14%,var(--color-bg));color:var(--ds-accent-text);border:1px solid color-mix(in srgb,var(--ds-accent) 35%,var(--color-border))}.employee-pr-status-badge--active:before{background:var(--ds-accent-warm)}.employee-pr-status-badge--done{background:var(--ds-success-bg);color:var(--ds-success-dark);border:1px solid transparent}.employee-pr-status-badge--done:before{background:var(--ds-success)}.employee-pr-status-badge--neutral{background:var(--color-secondary-bg);color:var(--color-text-secondary);border:1px solid var(--color-border)}.employee-pr-status-badge--neutral:before{background:var(--ds-text-tertiary)}.employee-pr-summary-row td{background:var(--color-secondary-bg);font-weight:700;font-size:12px;font-family:var(--ds-font-mono);border-top:2px solid var(--color-border);height:38px}.employee-pr-summary-remain-warm{color:var(--ds-accent-warm);font-weight:700}@media (max-width: 992px){.employee-pr-table{min-width:820px}.employee-pr-section-heading{flex-direction:column;align-items:flex-start}.employee-pr-section-actions{width:100%}}.employee-detail-page{color:var(--ds-color-text, #2d2d2d)}.employee-detail-breadcrumbs{margin-bottom:16px}.employee-detail-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 18px;margin-bottom:20px;border-bottom:1px solid var(--ds-border)}.employee-detail-header__identity{display:flex;align-items:center;gap:14px;min-width:0}.employee-detail-header .employee-avatar{width:48px;height:48px;border-radius:50%;background:var(--ds-accent)!important;color:var(--ds-accent-text)!important;font-size:16px;font-weight:800}.employee-detail-header h1{margin:0;color:var(--ds-text);font-size:20px;font-weight:800;line-height:1.1;letter-spacing:0}.employee-detail-subtitle{margin-top:4px;color:var(--ds-text-secondary);font-size:13px;line-height:1.35}.employee-detail-header__right{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto;flex-wrap:wrap}.employee-detail-team-control{display:inline-flex;align-items:center;gap:10px}.employee-detail-team-label{color:var(--ds-text-tertiary);font-size:11px;font-weight:700;letter-spacing:0;text-transform:uppercase}.employee-detail-team-segment{flex-shrink:0}.employee-header-actions{display:inline-flex;align-items:center;gap:8px}.employee-page-main-tabs{margin-bottom:24px}.employee-main-tab-summary{margin-left:6px;color:var(--ds-text-tertiary);font-family:var(--ds-font-mono);font-size:11px;font-weight:400}.contract-income-tab.active .employee-main-tab-summary{color:var(--ds-text-secondary)}.employee-detail-panel{display:flex;flex-direction:column;gap:16px}.employee-detail-page [role=tabpanel][hidden]{display:none!important}.employee-detail-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.employee-detail-periodbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:4px}.employee-detail-period-label{color:var(--ds-text-tertiary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0}.employee-detail-period-label-year{margin-left:8px}.employee-income-hero{position:relative;overflow:hidden;padding:32px 36px;margin-bottom:0;border:1px solid var(--ds-border);border-radius:var(--ds-radius-xl);background:var(--ds-bg);box-shadow:var(--ds-shadow-card)}.employee-income-hero:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--ds-accent)}.employee-income-hero-overline{margin:0 0 12px;color:var(--ds-text-tertiary);font-size:11px;font-weight:700;letter-spacing:0;text-transform:uppercase}.employee-income-hero-amount{margin-bottom:18px;color:var(--ds-text);font-size:clamp(36px,6vw,56px);font-weight:800;line-height:1;letter-spacing:0;font-variant-numeric:tabular-nums}.employee-income-hero-amount span{margin-left:6px;color:var(--ds-text-secondary);font-size:.5em;font-weight:700}.employee-income-hero--empty .employee-income-hero-amount{color:var(--ds-text-tertiary)}.employee-income-hero-note{display:flex;align-items:center;gap:10px;max-width:640px;padding:12px 16px;border:1px solid rgba(255,215,0,.3);border-radius:var(--ds-radius-md);background:#ffd70014;color:var(--ds-text);font-size:13.5px;font-weight:600}.employee-income-hero-note-muted{border-color:var(--ds-border);background:var(--ds-surface);color:var(--ds-text-secondary)}.employee-detail-section{padding:24px 28px;margin-bottom:0;border:1px solid var(--ds-border);border-radius:var(--ds-radius-xl);background:var(--ds-bg);box-shadow:var(--ds-shadow-card)}.employee-detail-section-soft{background:#fcfcfc}.employee-detail-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}.employee-detail-section-head h2{margin:0;color:var(--ds-text);font-size:14px;font-weight:700;letter-spacing:0;text-transform:uppercase}.employee-detail-section-head span{color:var(--ds-text-tertiary);font-family:var(--ds-font-mono);font-size:12px}.employee-detail-table{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.employee-detail-table-scroll{max-height:360px;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.employee-detail-table-scroll thead th{position:sticky;top:0;z-index:2;background:var(--ds-bg);box-shadow:inset 0 -1px 0 var(--ds-border)}.employee-detail-section-soft .employee-detail-table-scroll thead th{background:#fcfcfc}.employee-detail-table-scroll .department-detail-data-table tfoot td{position:sticky;bottom:0;z-index:2;padding:14px 14px 0;border-top:2px solid var(--ds-text);border-bottom:0;background:var(--ds-bg);font-size:14px;font-weight:800}.employee-detail-section-soft .employee-detail-table-scroll .department-detail-data-table tfoot td{background:#fcfcfc}.employee-detail-empty-cell{color:var(--ds-text-tertiary);text-align:center}.employee-income-table{min-width:720px}.employee-income-col-project{width:54%}.employee-income-col-acts{width:18%}.employee-income-col-amount{width:28%}.employee-income-col-status{width:18%}.employee-income-col-date{width:16%}.employee-income-col-work{width:90px}.employee-income-stage-cell{min-width:0;display:flex;align-items:center;gap:10px}.employee-income-stage-cell strong{display:block;min-width:0;overflow:hidden;color:var(--ds-text);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.employee-income-stage-cell small,.employee-income-stage-cell a{display:block;overflow:hidden;color:var(--ds-text-tertiary);font-size:11.5px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.employee-income-stage-cell a,.employee-income-stage-link{text-decoration:none}.employee-income-stage-cell a:hover,.employee-income-stage-link:hover{color:var(--ds-accent-warm);text-decoration:underline}.employee-income-status-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--ds-radius-full);font-size:11px;font-weight:600;line-height:1.4;letter-spacing:.4px;text-transform:uppercase;white-space:nowrap}.employee-income-status-pill-active{background:var(--ds-warning-bg);color:var(--ds-warning-dark)}.employee-income-status-pill-done{background:var(--ds-success-bg);color:var(--ds-success-dark)}.employee-income-status-pill-draft{background:#f5f5f5;color:var(--ds-text-tertiary)}.employee-income-status-pill-overdue{background:var(--ds-error-bg);color:var(--ds-error)}.employee-income-due-cell{color:var(--ds-text-secondary);font-family:var(--ds-font-mono);font-size:12.5px;font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.employee-income-due-cell-overdue{color:var(--ds-error)!important;font-weight:600}.employee-remaining-income-table .employee-income-due-cell-overdue:before{content:"⚠ ";margin-right:2px}.employee-income-dot{width:6px;height:26px;flex:0 0 6px;border-radius:3px;background:var(--ds-accent)}.employee-income-dot-palette-1{background:#ffd000}.employee-income-dot-palette-2{background:#2f80ed}.employee-income-dot-palette-3{background:#27ae60}.employee-income-dot-palette-4{background:#f2994a}.employee-income-dot-palette-5{background:#eb5757}.employee-income-dot-palette-6{background:#00a3a3}.employee-income-dot-palette-7{background:#7b61ff}.employee-income-total-check{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;color:var(--ds-success);font-size:14px;font-weight:800;line-height:1;vertical-align:0}.employee-income-quarters{display:grid;grid-template-columns:repeat(4,1fr);align-items:end;gap:16px}.employee-income-quarter{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;text-align:center}.employee-income-quarter__wrap{width:100%;height:160px;padding:10px 12px;display:flex;align-items:flex-end;justify-content:center;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:var(--ds-surface)}.employee-income-quarter__wrap-current{border-color:var(--ds-accent-warm);background:var(--ds-accent-soft)}.employee-income-quarter__bar{width:55%;max-width:56px;min-height:4px;background:var(--ds-accent);border-radius:var(--ds-radius-sm) var(--ds-radius-sm) 0 0}.employee-income-quarter__bar-zero{min-height:0;background:var(--ds-border)}.employee-income-quarter span{color:var(--ds-text-secondary);font-size:12px;font-weight:600}.employee-income-quarter strong{min-height:18px;color:var(--ds-text);font-family:var(--ds-font-mono);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.employee-income-quarter-zero{color:var(--ds-text-tertiary)!important;font-weight:500!important}.employee-remain-filter{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.employee-remain-chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-full);background:transparent;color:var(--ds-text-secondary);cursor:pointer;font-size:12px;font-weight:600}.employee-remain-chip:hover{border-color:var(--ds-border-strong);color:var(--ds-text)}.employee-remain-chip-active{border-color:var(--ds-accent);background:var(--ds-accent-soft);color:var(--ds-text)}.employee-remain-chip span{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:1px 6px;border-radius:var(--ds-radius-full);background:#f5f5f5;color:var(--ds-text-secondary);font-family:var(--ds-font-mono);font-size:10.5px;font-weight:700}.employee-remain-chip-active span{background:#ffd70040;color:var(--ds-accent-text)}.employee-income-footer-link{margin:20px 0 0;text-align:center;font-size:13px}.employee-income-footer-link .ui-btn-link{color:var(--ds-accent-warm);font-weight:600;text-decoration:none;transition:color var(--ds-transition)}.employee-income-footer-link .ui-btn-link:hover:not(:disabled){color:var(--ds-accent-dark);text-decoration:underline}.employee-detail-page .employee-stage-overview-table{min-width:980px}.employee-detail-page .employee-stage-overview-table tbody tr.employee-stage-data-row:hover td{background:color-mix(in srgb,var(--ds-accent) 6%,var(--ds-bg))}.employee-detail-page .employee-stage-progress{min-width:148px;grid-template-columns:minmax(44px,1fr) auto 46px}.employee-detail-page .employee-stage-progress-input{width:46px!important;min-width:46px;min-height:26px;padding:2px 4px!important;font-size:12px!important;text-align:center}.employee-stage-team-note{display:block;margin-top:4px;color:var(--ds-text-tertiary);font-size:11px;font-weight:600}.employee-detail-page .employee-stage-overview-table tfoot td{background:var(--ds-bg)}.employee-detail-page .employee-stages-mobile-list .department-stage-mobile-title{align-items:flex-start}.employee-detail-page .employee-stages-mobile-list .department-stage-mobile-title .department-stage-link{min-width:0;flex:1 1 auto}.employee-detail-page .employee-stage-mobile-progress{grid-template-columns:minmax(0,1fr) auto 52px}.employee-detail-page .employee-stage-mobile-progress-input{width:52px!important;min-width:52px}.employee-allocation-panel{display:block}.employee-allocation-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.employee-allocation-toolbar h2{margin:0;color:var(--ds-text);font-size:14px;font-weight:700;letter-spacing:0;text-transform:uppercase}.employee-detail-page .employee-allocation-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.employee-detail-page .employee-allocation-column{min-height:320px;padding:12px;display:flex;flex-direction:column;gap:10px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:var(--ds-surface)}.employee-detail-page .employee-allocation-column-droppable{border-style:dashed}.employee-allocation-column-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 4px 6px;border-bottom:1px solid var(--ds-border)}.employee-allocation-column-head h3{margin:0;color:var(--ds-text-secondary);font-size:11px;font-weight:700;letter-spacing:0;text-transform:uppercase}.employee-detail-page .employee-allocation-count{min-width:22px;padding:1px 7px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-full);background:var(--ds-bg);color:var(--ds-text-tertiary);font-family:var(--ds-font-mono);font-size:11px;font-weight:700;text-align:center}.employee-allocation-empty{margin:auto 16px;color:var(--ds-text-tertiary);font-size:12px;line-height:1.45;text-align:center}.employee-detail-page .employee-allocation-cards{display:flex;flex:1;flex-direction:column;gap:10px;min-height:100px}.employee-detail-page .employee-allocation-card{padding:12px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:var(--ds-bg);box-shadow:none;cursor:pointer;transition:border-color var(--ds-transition),box-shadow var(--ds-transition),transform var(--ds-transition)}.employee-detail-page .employee-allocation-card:hover{border-color:var(--ds-accent-warm);box-shadow:var(--ds-shadow-md)}.employee-detail-page .employee-allocation-card:active{cursor:grabbing}.employee-detail-page .employee-allocation-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}.employee-allocation-card-stage{overflow:hidden;color:var(--ds-accent-warm);font-size:10.5px;font-weight:700;letter-spacing:0;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.employee-detail-page .employee-allocation-menu-button{width:24px;height:24px;border:0;background:transparent;color:var(--ds-text-tertiary)}.employee-detail-page .employee-allocation-menu-button:hover{color:var(--ds-text)}.employee-allocation-card-title{margin-bottom:4px;color:var(--ds-text);font-size:13px;font-weight:700;line-height:1.35}.employee-allocation-card-object{min-height:16px;margin-bottom:10px;color:var(--ds-text-secondary);font-size:12px;line-height:1.35}.employee-allocation-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;border-top:1px solid var(--ds-border);color:var(--ds-text-secondary);font-size:11.5px}.employee-allocation-card-date{display:inline-flex;align-items:center;gap:4px;min-width:0}.employee-allocation-card-amount{flex-shrink:0;color:var(--ds-text);font-family:var(--ds-font-mono);font-size:11.5px;font-weight:700}@media (max-width: 900px){.employee-detail-header,.employee-detail-header__right{flex-direction:column;align-items:flex-start}.employee-detail-header__identity{display:flex;align-items:center}.employee-detail-header h1{font-size:20px}.employee-detail-team-control{align-items:flex-start;flex-direction:column;gap:6px}.employee-detail-section-head{align-items:flex-start;flex-direction:column}.employee-allocation-board{grid-template-columns:1fr!important}}@media (max-width: 640px){.employee-detail-section,.employee-income-hero{padding:14px}.employee-detail-header{padding-bottom:18px}.employee-detail-periodbar .ds-segmented,.employee-detail-periodbar .ds-segmented-option{flex:1 1 auto}.employee-detail-period-label-year{margin-left:0}.employee-income-table{min-width:680px}.employee-income-quarters{gap:8px}.employee-income-quarter__wrap{height:118px;padding:8px}}.departments-list-page{max-width:1280px;margin:0 auto;padding:0}.departments-page-header{margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid var(--ds-border)}.departments-breadcrumb{margin-bottom:16px}.departments-titlebar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.departments-titlebar-text{min-width:0}.departments-page-title{margin:0;font-size:22px;line-height:1.2;font-weight:800;letter-spacing:-.5px;color:var(--ds-text)}.departments-page-subtitle{margin:4px 0 0;font-size:13px;color:var(--ds-text-secondary)}.departments-create-button{flex-shrink:0}.departments-create-card{margin-bottom:24px}.departments-create-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,280px) auto;gap:14px;align-items:end}.departments-create-form h2{grid-column:1 / -1;margin:0;font-size:16px;font-weight:800;letter-spacing:-.2px}.departments-create-form .form-actions{margin:0}.departments-empty{margin:0;padding:32px;text-align:center;color:var(--ds-text-tertiary);background:var(--ds-bg);border:1px dashed var(--ds-border-strong);border-radius:var(--ds-radius-xl)}.department-section{margin-bottom:32px}.department-section-head{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}.department-section-title{margin:0;font-size:13px;line-height:1.3;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--ds-text-secondary)}.department-section-meta{font-size:12px;color:var(--ds-text-tertiary)}.dept-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dept-card-shell{position:relative;min-width:0}.dept-card{position:relative;display:flex;flex-direction:column;gap:14px;height:100%;min-width:0;padding:18px 20px;text-decoration:none;color:var(--ds-text);background:var(--ds-bg);border:1px solid var(--ds-border);border-radius:var(--ds-radius-xl);box-shadow:var(--ds-shadow-card);transition:border-color var(--ds-transition-slow),box-shadow var(--ds-transition-slow),transform var(--ds-transition-slow)}.dept-card:hover{border-color:var(--ds-accent-warm);box-shadow:0 8px 24px #00000014;transform:translateY(-1px)}.dept-card-shell[data-reorder=true] .dept-card{padding-right:52px}.dept-card-drag-cue{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid transparent;border-radius:var(--ds-radius-sm);background:var(--ds-bg);color:var(--ds-text-tertiary);cursor:grab;z-index:1;transition:background var(--ds-transition),border-color var(--ds-transition),color var(--ds-transition)}.dept-card-drag-cue:hover{color:var(--ds-text);background:var(--ds-bg-muted);border-color:var(--ds-border)}.dept-card-drag-cue:active{cursor:grabbing}.dept-card-head{display:flex;align-items:center;gap:12px;min-width:0}.dept-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border-radius:var(--ds-radius-md);background:var(--ds-accent);color:var(--ds-accent-text);font-size:13px;font-weight:800;letter-spacing:-.3px;overflow:hidden}.dept-card[data-type=support] .dept-icon{background:#f0f0f0;color:var(--ds-text-secondary)}.dept-card-title-block{min-width:0}.dept-card-name{overflow:hidden;color:var(--ds-text);font-size:15px;font-weight:800;letter-spacing:-.3px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.dept-card-lead{overflow:hidden;margin-top:2px;color:var(--ds-text-secondary);font-size:12px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.dept-card-stats{display:flex;gap:18px;padding-top:14px;border-top:1px solid var(--ds-border)}.dept-stat{display:flex;flex-direction:column;gap:2px;min-width:0}.dept-stat-value{color:var(--ds-text);font-family:var(--ds-font-mono);font-size:18px;font-weight:800;letter-spacing:-.5px;line-height:1.15}.dept-stat-label{color:var(--ds-text-tertiary);font-size:11px;font-weight:500;line-height:1.25}.dept-card-foot{display:inline-flex;align-items:center;gap:4px;margin-top:-4px;color:var(--ds-accent-warm);font-size:12px;font-weight:600}@media (max-width: 1100px){.dept-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.departments-titlebar{flex-direction:column;align-items:stretch}.departments-create-button{width:100%}.departments-create-form{grid-template-columns:1fr}.department-section-head{flex-direction:column;align-items:flex-start;gap:4px}}@media (max-width: 700px){.dept-cards{grid-template-columns:1fr}}.entity-screen-header{display:flex;flex-direction:column;gap:16px}.entity-detail-redesign.company-page{display:flex;flex-direction:column;gap:18px}.entity-detail-redesign .section-card{border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-card)}.entity-detail-redesign .contract-two-col{gap:18px}.entity-detail-redesign .contract-two-col>*{min-width:0}.entity-detail-redesign .btn-add{display:inline-flex;align-items:center;gap:6px}.entity-screen-breadcrumbs{margin-bottom:2px}.entity-screen-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.entity-screen-heading__main{min-width:0}.entity-screen-title-row{display:flex;align-items:center;gap:12px;min-width:0}.entity-screen-title-row .ds-page-title{overflow-wrap:anywhere}.entity-screen-back.ui-btn{width:32px;height:30px;padding:0;flex:0 0 auto}.entity-screen-subtitle{margin-top:4px;color:var(--ds-text-tertiary);font-size:13px;line-height:1.45}.entity-screen-actions{flex:0 0 auto}.entity-detail-section.ds-card{border-radius:var(--ds-radius-lg)}.entity-detail-section__header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.entity-detail-section__header .ds-section-heading{margin-bottom:0}.entity-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 28px}.entity-info-grid__item--full{grid-column:1 / -1}.entity-info-grid__muted{color:var(--ds-text-tertiary)}.entity-info-grid .ds-info-value{overflow-wrap:anywhere}.entity-text-link{display:inline;padding:0;border:0;background:transparent;color:var(--ds-accent-warm);font:inherit;font-weight:700;cursor:pointer;text-align:left}.entity-text-link:hover{text-decoration:underline}.entity-kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.entity-kpi-card{position:relative;overflow:hidden;padding:20px 24px;border-radius:var(--ds-radius-xl);border:1px solid var(--ds-border);background:var(--ds-bg);box-shadow:var(--ds-shadow-card)}.entity-kpi-card:after{content:"";position:absolute;top:0;left:0;width:100%;height:3px}.entity-kpi-card--accent{border-left:1px solid var(--ds-border)}.entity-kpi-card--accent:after{background:var(--ds-accent)}.entity-kpi-card--success{border-left:1px solid var(--ds-border)}.entity-kpi-card--success:after{background:var(--ds-success)}.entity-kpi-card--warning{border-left:1px solid var(--ds-border)}.entity-kpi-card--warning:after{background:var(--ds-warning)}.entity-kpi-card--info{border-left:1px solid var(--ds-border)}.entity-kpi-card--info:after{background:var(--ds-info)}.entity-kpi-label{font-size:11px;color:var(--ds-text-tertiary);text-transform:uppercase;font-weight:700;letter-spacing:0}.entity-kpi-value{margin-top:7px;font-family:var(--ds-font-mono);font-size:22px;font-weight:800;color:var(--ds-text);line-height:1.2}.entity-kpi-meta{margin-top:4px;color:var(--ds-text-tertiary);font-size:12px}.entity-summary-card{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:var(--ds-bg);color:inherit;text-align:left;cursor:pointer;transition:border-color var(--ds-transition),box-shadow var(--ds-transition),transform var(--ds-transition)}.entity-summary-card+.entity-summary-card{margin-top:10px}.entity-summary-card:hover{border-color:var(--ds-border-strong);box-shadow:var(--ds-shadow-card);transform:translateY(-1px)}.entity-summary-card--overdue{border-left:4px solid var(--ds-error)}.entity-summary-card__title{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--ds-text);font-size:14px;font-weight:800}.entity-summary-card__meta{margin-top:6px;color:var(--ds-text-tertiary);font-size:12px}.entity-summary-card__amount{font-family:var(--ds-font-mono);color:var(--ds-text);font-size:14px;font-weight:800;white-space:nowrap}.entity-summary-card__sub{margin-top:3px;color:var(--ds-text-tertiary);font-size:11px;text-align:right}.entity-summary-card__arrow{color:var(--ds-text-tertiary);font-size:24px;line-height:1}.contract-stage-card{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background-color:var(--ds-bg)!important;color:var(--ds-text);text-align:left;cursor:pointer;transition:border-color var(--ds-transition),background var(--ds-transition),transform var(--ds-transition)}button.contract-stage-card:not(.ui-btn){background-color:var(--ds-bg)!important}.contract-stage-card--overdue,button.contract-stage-card--overdue:not(.ui-btn){border-color:#fecaca;background-color:var(--ds-error-bg)!important}.contract-stage-card+.contract-stage-card{margin-top:8px}.contract-stage-card:hover{border-color:var(--ds-accent-warm);background-color:#ffd70008!important;transform:translateY(-1px)}button.contract-stage-card:hover:not(.ui-btn){background-color:#ffd70008!important}.contract-stage-card--overdue:hover,button.contract-stage-card--overdue:hover:not(.ui-btn){border-color:var(--ds-error);background-color:var(--ds-error-bg)!important}.contract-stage-card__left{flex:1 1 auto;min-width:0}.contract-stage-card__name{display:flex;align-items:center;gap:6px;color:var(--ds-text);font-size:14px;font-weight:800;line-height:1.25;overflow-wrap:anywhere}.contract-stage-card__overdue{color:var(--ds-error);flex:0 0 auto}.contract-stage-card__meta{display:flex;align-items:center;gap:16px;margin-top:6px;color:var(--ds-text-tertiary);font-size:12px}.contract-stage-card__meta span{display:inline-flex;align-items:center;gap:4px}.contract-stage-card__overdue-label{color:var(--ds-error);font-weight:700}.contract-stage-card__right{flex:0 0 auto;margin-left:10px;text-align:right}.contract-stage-card__amount{font-family:var(--ds-font-mono);color:var(--ds-text);font-size:14px;font-weight:800;white-space:nowrap}.contract-stage-card__sub{margin-top:3px;color:var(--ds-text-tertiary);font-size:11px;font-weight:700;white-space:nowrap}.contract-stage-card__arrow{color:var(--ds-text-tertiary);font-size:24px;line-height:1;transition:color var(--ds-transition),transform var(--ds-transition)}.contract-stage-card:hover .contract-stage-card__arrow{color:var(--ds-accent-warm);transform:translate(2px)}.entity-act-list{display:flex;flex-direction:column;gap:0}.entity-act-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:16px;min-height:58px;padding:12px 8px;border:0;border-bottom:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);background:transparent;color:inherit;text-align:left;cursor:pointer;transition:background var(--ds-transition)}.entity-act-row:last-child{border-bottom:0}.entity-act-row:hover{background:#ffd7000d}.entity-act-row__main,.entity-act-row__side{min-width:0}.entity-act-row__title{display:inline-flex;align-items:center;gap:6px;color:var(--ds-text);font-size:14px;font-weight:800;line-height:1.25;transition:color var(--ds-transition)}.entity-act-row:hover .entity-act-row__title{color:var(--ds-accent-warm)}.entity-act-row__meta,.entity-act-row__status{margin-top:4px;color:var(--ds-text-tertiary);font-size:12px;line-height:1.25}.entity-act-row__side{display:flex;align-items:center;justify-content:flex-end;gap:16px;text-align:right}.entity-act-row__amount{color:var(--ds-text);font-family:var(--ds-font-mono);font-size:13px;font-weight:700;white-space:nowrap}.entity-act-row__status{display:inline-flex;align-items:center;min-height:22px;margin-top:0;padding:2px 10px;border-radius:var(--ds-radius-sm);background:var(--ds-surface);color:var(--ds-text-tertiary);font-size:11px;font-weight:800;letter-spacing:.3px;line-height:1.2;text-transform:uppercase;white-space:nowrap}.entity-act-row__status--signed{background:var(--ds-success-bg);color:var(--ds-success-dark)}.entity-act-row__status--pending{background:var(--ds-warning-bg);color:var(--ds-warning-dark)}.entity-act-row__status--unsigned{background:var(--ds-surface);color:var(--ds-text-tertiary)}.entity-act-row__arrow{color:var(--ds-text-tertiary);font-size:16px;line-height:1;transition:color var(--ds-transition),transform var(--ds-transition)}.entity-act-row:hover .entity-act-row__arrow{color:var(--ds-accent-warm);transform:translate(2px)}.entity-progress-mini{height:4px;margin-top:10px;border-radius:var(--ds-radius-full);overflow:hidden;background:var(--ds-surface)}.entity-progress-mini__fill{height:100%;border-radius:inherit}.entity-progress-mini__fill--green{background:var(--ds-success)}.entity-progress-mini__fill--orange{background:var(--ds-warning)}.entity-progress-mini__fill--grey{background:#c8c8c8}.entity-budget-table-wrap{overflow-x:auto;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:var(--ds-bg)}.entity-budget-table{width:100%;min-width:820px;border-collapse:collapse;font-size:12px}.entity-budget-table th,.entity-budget-table td{padding:0 14px;border-bottom:1px solid var(--ds-border);text-align:right}.entity-budget-table th:first-child,.entity-budget-table td:first-child{text-align:left;position:sticky;left:0;background:var(--ds-bg);z-index:1}.entity-budget-table th{color:var(--ds-text-tertiary);height:38px;font-size:11px;font-weight:600;letter-spacing:0;text-transform:uppercase;line-height:1.25;white-space:normal;background:var(--ds-surface);border-bottom-width:2px;vertical-align:middle}.entity-budget-table th:not(:first-child){min-width:148px;max-width:190px}.entity-budget-table__stage-heading{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:3px;min-width:0;min-height:38px}.entity-budget-table__stage-type{color:var(--ds-text-secondary);font-size:11px;font-weight:700;line-height:1.2;text-transform:uppercase}.entity-budget-table__stage-link{max-width:170px;padding:0;border:0;background:transparent;color:var(--ds-text-tertiary);font:inherit;font-size:10px;font-weight:500;font-family:var(--ds-font-mono);line-height:1.25;text-align:right;text-transform:none;overflow-wrap:anywhere;cursor:pointer}.entity-budget-table__stage-link:hover{color:var(--ds-accent-warm);text-decoration:underline}.entity-budget-table__stage-link:disabled{color:var(--ds-text-tertiary);cursor:default;text-decoration:none}.entity-budget-table td{height:36px;font-size:13px;white-space:nowrap}.entity-budget-table th:first-child{background:var(--ds-surface);z-index:2}.entity-budget-table tr:last-child td{border-bottom:0}.entity-budget-table__dept,.entity-budget-table__summary td{font-weight:800}.entity-budget-table__dept{font-weight:500}.entity-budget-table__total{font-weight:800;background:#ffd7000f}.entity-budget-table__summary td{height:44px;background:var(--ds-text);color:var(--ds-bg)}.entity-budget-table__summary td:first-child{background:var(--ds-text)}.entity-budget-table__summary .amount-mono{color:var(--ds-accent)}.entity-budget-table tbody tr:hover:not(.entity-budget-table__section):not(.entity-budget-table__summary){background:#ffd7000d}.entity-budget-table tbody tr:hover:not(.entity-budget-table__section):not(.entity-budget-table__summary) .entity-budget-table__total{background:#ffd7001c}.entity-budget-table__expense--tax,.entity-budget-table__expense--tax td{background:var(--ds-warning-bg)}.entity-budget-table__expense--production,.entity-budget-table__expense--production td{background:#fffdf2}.entity-budget-table__expense--non-production,.entity-budget-table__expense--non-production td{background:var(--ds-error-bg)}.entity-budget-table__expense--tax td:first-child{background:var(--ds-warning-bg)}.entity-budget-table__expense--production td:first-child{background:#fffdf2}.entity-budget-table__expense--non-production td:first-child{background:var(--ds-error-bg)}.entity-budget-table__expense--tax .entity-budget-table__dept,.entity-budget-table__expense--tax .amount-mono{color:var(--ds-warning);font-weight:800}.entity-budget-table__expense--non-production .entity-budget-table__dept{color:var(--ds-error)}.entity-budget-table__expense-marker{width:16px;height:16px;margin-right:7px;display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;font-family:var(--ds-font-mono);font-size:10px;font-weight:800;vertical-align:-2px}.entity-budget-table__expense-marker--tax,.entity-budget-table__expense-marker--production{color:var(--ds-warning)}.entity-budget-table__expense-marker--non-production{color:var(--ds-error)}.entity-budget-table__section td{height:38px;padding:0 14px;background:var(--ds-text);color:var(--ds-bg);font-size:11px;font-weight:900;letter-spacing:0;text-align:left;text-transform:uppercase}.entity-budget-table__section td:first-child{position:static;background:var(--ds-text)}.entity-budget-table .zero{color:var(--ds-text-tertiary)}.entity-budget-link-list{display:flex;flex-direction:column;gap:10px}.entity-budget-link-card{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:12px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-lg);background:var(--ds-bg);padding:14px 16px;text-align:left;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .12s ease}.entity-budget-link-card:hover{background:var(--ds-surface);border-color:var(--ds-border-strong);transform:translateY(-1px)}.entity-budget-link-card__left{min-width:0;display:flex;align-items:center;gap:12px}.entity-budget-link-card__icon{width:34px;height:34px;border-radius:var(--ds-radius-md);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.entity-budget-link-card__icon--green{background:#10b9811a;color:var(--ds-success)}.entity-budget-link-card__icon--orange{background:#f59e0b1f;color:var(--ds-warning)}.entity-budget-link-card__title{font-size:14px;font-weight:800;color:var(--ds-text)}.entity-budget-link-card__sub{margin-top:2px;font-size:12px;color:var(--ds-text-tertiary)}.entity-budget-link-card__right{text-align:right}.entity-budget-link-card__amount{font-family:var(--ds-font-mono);font-size:14px;font-weight:800;color:var(--ds-text)}.entity-budget-link-card__pct{margin-top:2px;font-size:12px;font-weight:800;color:var(--ds-accent-warm)}.entity-budget-link-card__arrow{color:var(--ds-text-tertiary);font-size:20px;line-height:1}@media (max-width: 992px){.entity-info-grid,.entity-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.entity-screen-heading{flex-direction:column;align-items:stretch}.entity-screen-title-row{align-items:flex-start}.entity-info-grid,.entity-kpi-strip{grid-template-columns:1fr}.entity-summary-card{grid-template-columns:1fr 18px}.entity-summary-card__right{grid-column:1 / -1;grid-row:2}.entity-summary-card__sub{text-align:left}.contract-stage-card{flex-wrap:wrap;gap:8px;padding:12px 14px}.contract-stage-card__left{flex:1 1 100%}.contract-stage-card__name{font-size:13px}.contract-stage-card__meta{font-size:11px}.contract-stage-card__right{margin-left:0;text-align:left}.contract-stage-card__amount{font-size:13px}.contract-stage-card__sub{white-space:normal}.contract-stage-card__arrow{display:none}.entity-budget-link-card{grid-template-columns:minmax(0,1fr) 16px}.entity-budget-link-card__right{grid-column:1 / -1;grid-row:2;padding-left:46px;text-align:left}}.entity-form-loading{padding:var(--spacing-lg);text-align:center}.entity-form-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);margin:var(--spacing-md) 0}.entity-form h2{margin:0 0 var(--spacing-md) 0;font-size:1.25rem}.entity-form-error{color:var(--color-accent, #c00);margin-bottom:var(--spacing-md);padding:var(--spacing-sm);background:#c8000014;border-radius:var(--radius-sm)}.entity-form-fields{display:flex;flex-direction:column;gap:var(--spacing-md)}.entity-form-fields .form-group,.entity-form-fields .ui-form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.entity-form-fields .form-group label,.entity-form-fields .ui-form-group .ui-form-group-label{font-weight:500;font-size:.9rem}.entity-form-fields .form-group .required{color:var(--color-accent)}.entity-form-fields input[type=text],.entity-form-fields input[type=number],.entity-form-fields input[type=date],.entity-form-fields select,.entity-form-fields textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;background:var(--color-bg);color:var(--color-text)}.entity-form-fields textarea{min-height:80px;resize:vertical}.entity-form-custom-title{font-size:1rem;margin:var(--spacing-md) 0 var(--spacing-sm) 0;padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.entity-form .form-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding:var(--spacing-md) 0;padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);position:sticky;bottom:0;background:var(--color-bg);z-index:5;box-shadow:0 -2px 8px #0000000f}.entity-form .form-actions .btn-danger{margin-right:auto;min-width:100px;background:#d32f2f!important;color:#fff!important;border:2px solid #b71c1c!important;padding:var(--spacing-sm) var(--spacing-md)}.entity-form .form-actions .btn-danger:hover:not(:disabled){background:#c62828!important;border-color:#b71c1c!important;color:#fff!important}.entity-form .form-actions .btn-danger:disabled{opacity:.6;cursor:not-allowed}.entity-form .dadata-wrapper{position:relative}.entity-form .dadata-dropdown{position:absolute;left:0;right:0;top:100%;margin-top:2px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;z-index:100;max-height:280px;overflow:auto}.entity-form .dadata-loading{padding:var(--spacing-md);color:var(--color-text-secondary);font-size:.9rem}.entity-form .dadata-list{list-style:none;margin:0;padding:var(--spacing-xs)}.entity-form .dadata-item{display:flex;flex-direction:column;gap:2px;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;border-radius:var(--radius-sm);transition:background .15s}.entity-form .dadata-item:hover{background:var(--color-bg-hover, rgba(0, 0, 0, .06))}.entity-form .dadata-item-name{font-weight:500;color:var(--color-text)}.entity-form .dadata-item-inn{font-size:.85rem;color:var(--color-text-secondary)}.entity-form .dadata-error{margin-top:var(--spacing-xs);font-size:.85rem;color:var(--color-accent, #c00)}.object-image-upload{display:flex;flex-direction:column;gap:var(--spacing-md)}.object-image-preview{width:120px;height:120px;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--color-border);background:var(--color-secondary-bg)}.object-image-preview img{width:100%;height:100%;object-fit:cover}.entity-form-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md) var(--spacing-lg)}@media (max-width: 600px){.entity-form-field-pair{grid-template-columns:1fr}}.entity-form-readonly-with-vat{display:flex;align-items:center;gap:var(--spacing-sm)}.entity-form-readonly-with-vat .entity-form-readonly-input{max-width:12rem}.entity-form-vat-hint{font-size:.9rem;color:var(--color-text-secondary, #666)}.entity-form-cost-calculator{grid-column:1 / -1;padding:var(--spacing-lg);background:var(--color-secondary-bg);border-radius:var(--radius-md);border:1px solid var(--color-border);margin-bottom:var(--spacing-md)}.entity-form-cost-calculator-title{font-size:1rem;font-weight:var(--font-weight-semibold);margin:0 0 var(--spacing-md);color:var(--color-text);letter-spacing:var(--letter-spacing-normal)}.entity-form-cost-calculator-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.entity-form-cost-calculator-totals{border-top:1px solid var(--color-border);padding-top:var(--spacing-md)}.entity-form-cost-calculator-row{margin-bottom:var(--spacing-sm)}.entity-form-cost-calculator-row:last-child{margin-bottom:0}.entity-form-cost-calculator-checkbox{display:inline-flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:.95rem;color:var(--color-text)}.entity-form-cost-calculator-checkbox input{width:1rem;height:1rem;accent-color:var(--color-accent)}.entity-form-cost-calculator-amounts{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);align-items:flex-start;margin-top:var(--spacing-md)}.entity-form-cost-calculator-amounts .ui-form-group{min-width:180px}.filter-bar{margin-bottom:var(--spacing-md)}.filter-bar__toggle{display:inline-flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.filter-bar__toggle-inner{display:inline-flex;align-items:center;gap:var(--spacing-sm)}.filter-bar__chevron{display:inline-flex;margin-left:var(--spacing-xs)}.filter-bar__content{padding:var(--spacing-md) 0}.filter-bar--expandable .filter-bar__content{display:none}.filter-bar--expandable .filter-bar__content--expanded{display:block}.filter-bar__fields{display:flex;flex-wrap:wrap;gap:var(--spacing-md);align-items:flex-end;margin-bottom:var(--spacing-sm)}.filter-bar__fields .filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.filter-bar__fields .filter-group label{font-size:14px;font-weight:500;color:var(--color-text)}.filter-bar__clear{margin-top:var(--spacing-sm)}.stage-budget-page{max-width:1200px;margin:0 auto;padding:24px 32px 48px;color:var(--ds-text)}.stage-budget-page--state{display:grid;min-height:280px;place-items:center;text-align:center}.stage-budget-breadcrumb{margin-bottom:16px}.stage-budget-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--ds-border)}.stage-budget-heading{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap}.stage-budget-heading .ds-page-title{margin:0;font-size:20px;line-height:1.2;overflow-wrap:anywhere}.stage-budget-back.ui-btn{width:32px;height:30px;padding:0;flex:0 0 auto}.stage-budget-header__sep,.stage-budget-header__subtitle{color:var(--ds-text-tertiary);font-size:13px}.stage-budget-message{padding:10px 14px;margin-bottom:14px;border:1px solid var(--ds-warning-border, rgba(245, 158, 11, .35));border-radius:var(--ds-radius-md);background:var(--ds-warning-bg);color:var(--ds-warning-text, #92400e);font-size:13px}.stage-budget-message--error{border-color:var(--ds-error-border, rgba(239, 68, 68, .35));background:var(--ds-error-bg);color:var(--ds-error)}.stage-budget-layout{display:grid;grid-template-columns:264px minmax(0,1fr);gap:20px;align-items:start}.stage-budget-sidebar{position:sticky;top:24px;display:flex;flex-direction:column;gap:14px}.stage-budget-side-card,.stage-budget-approval,.stage-budget-table-wrap{border:1px solid var(--ds-border);border-radius:var(--ds-radius-lg);background:var(--ds-bg);box-shadow:var(--ds-shadow-card)}.stage-budget-side-card{padding:18px 20px}.stage-budget-side-stat+.stage-budget-side-stat{margin-top:14px;padding-top:14px;border-top:1px solid var(--ds-border)}.stage-budget-side-label{margin-bottom:5px;color:var(--ds-text-tertiary);font-size:11px;font-weight:700;letter-spacing:0;text-transform:uppercase}.stage-budget-side-value{color:var(--ds-text);font-family:var(--ds-font-mono);font-size:20px;font-weight:800;line-height:1.2}.stage-budget-approval{padding:14px 18px}.stage-budget-approval--success{border-color:#10b98159}.stage-budget-approval--review{border-color:#f59e0b66}.stage-budget-approval__head{display:flex;align-items:center;gap:9px;color:var(--ds-success);font-size:13px;font-weight:800}.stage-budget-approval--review .stage-budget-approval__head{color:var(--ds-warning)}.stage-budget-approval p{margin:7px 0 0;color:var(--ds-text-tertiary);font-size:12px;line-height:1.4}.stage-budget-link{display:inline-flex;margin-top:8px;padding:0;border:0;background:transparent;color:var(--ds-accent-warm);cursor:pointer;font:inherit;font-size:12px;font-weight:700}.stage-budget-link:hover{color:var(--ds-text);text-decoration:underline}.stage-budget-main{min-width:0}.stage-budget-period-bar{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.stage-budget-period-option{display:inline-flex;align-items:center;gap:7px;color:var(--ds-text-secondary);font-size:13px;font-weight:700}.stage-budget-quarter-select{min-width:170px}.stage-budget-act-filter{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;flex-wrap:wrap}.stage-budget-act-filter__label{padding-top:7px;color:var(--ds-text-tertiary);font-size:12px;font-weight:800}.stage-budget-act-filter__chips{display:flex;flex-wrap:wrap;gap:8px}.stage-budget-act-chip{display:flex;flex-direction:column;align-items:flex-start;min-width:116px;padding:7px 13px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:var(--ds-bg);color:var(--ds-text);cursor:pointer;font:inherit;text-align:left;transition:border-color var(--ds-transition),box-shadow var(--ds-transition),background var(--ds-transition)}.stage-budget-act-chip:hover{border-color:var(--ds-border-strong)}.stage-budget-act-chip.is-active{border-color:var(--ds-accent);background:#ffd70014;box-shadow:0 0 0 1px var(--ds-accent)}.stage-budget-act-chip span{font-size:12px;font-weight:800;line-height:1.25}.stage-budget-act-chip small{margin-top:2px;color:var(--ds-text-tertiary);font-family:var(--ds-font-mono);font-size:11px;line-height:1.25}.stage-budget-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.stage-budget-table{width:100%;min-width:760px;border-collapse:collapse;table-layout:fixed}.stage-budget-table__col-category{width:28%}.stage-budget-table__col-person{width:24%}.stage-budget-table__col-amount,.stage-budget-table__col-actuated{width:17%}.stage-budget-table__col-percent{width:14%}.stage-budget-table th{height:40px;padding:0 14px;border-bottom:2px solid var(--ds-border);background:var(--ds-surface);color:var(--ds-text-tertiary);font-size:11px;font-weight:800;letter-spacing:0;text-align:left;text-transform:uppercase;white-space:nowrap}.stage-budget-table th.stage-budget-actuated-col{line-height:1.2;white-space:normal}.stage-budget-actuated-head{display:inline-flex;flex-direction:column;align-items:flex-end;gap:3px}.stage-budget-actuated-head__badge{display:inline-flex;max-width:100%;padding:2px 6px;border-radius:4px;background:var(--ds-accent);color:var(--ds-text);font-size:10px;font-weight:900;line-height:1.2;text-transform:none;white-space:normal}.stage-budget-table td{height:40px;padding:0 14px;border-bottom:1px solid var(--ds-border);color:var(--ds-text);font-size:13px;vertical-align:middle}.stage-budget-align-right{text-align:right;font-family:var(--ds-font-mono);font-variant-numeric:tabular-nums}.stage-budget-actuated-col{background:#ffd70014}.stage-budget-row-team:hover td,.stage-budget-row-expense:hover td,.stage-budget-row-tax:hover td{background:#ffd7000d}.stage-budget-table.is-act-filtered .stage-budget-actuated-col{background:#ffd70024}.stage-budget-row-expense{background:#fffdf2}.stage-budget-row-expense td{color:var(--ds-text-secondary);font-style:normal;font-weight:500}.stage-budget-row-tax{background:var(--ds-warning-bg)}.stage-budget-row-tax td,.stage-budget-row-tax .stage-budget-category{color:var(--ds-warning);font-weight:800}.stage-budget-expense--production{background:#fffdf2}.stage-budget-expense--non-production{background:#fef2f2}.stage-budget-expense--non-production td,.stage-budget-expense--non-production .stage-budget-category{color:var(--ds-error);font-style:normal}.stage-budget-row-section td{height:38px;border-bottom:0;background:var(--ds-text);color:var(--ds-bg);font-size:11px;font-weight:900;letter-spacing:1px;text-transform:uppercase}.stage-budget-row-total td{height:48px;border-bottom:0;background:var(--ds-text);color:var(--ds-bg);font-size:14px;font-weight:900}.stage-budget-row-total .stage-budget-actuated-col,.stage-budget-row-total .stage-budget-align-right{color:var(--ds-accent)}.stage-budget-category{display:inline-flex;align-items:center;gap:7px;min-width:0;font-weight:800}.stage-budget-category__icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--ds-radius-xs);background:var(--ds-surface);color:var(--ds-text-tertiary);font-size:10px;font-weight:900;flex:0 0 auto}.stage-budget-category__icon--arch{background:#eff6ff;color:#2563eb}.stage-budget-category__icon--eng{background:#f0fdf4;color:#15803d}.stage-budget-category__icon--design{background:#f3e8ff;color:#7c3aed}.stage-budget-category__icon--mgmt{background:#fef3c7;color:#92400e}.stage-budget-category__icon--expense{border:1px solid currentColor;border-radius:50%;background:transparent;font-size:11px;font-family:var(--ds-font-mono)}.stage-budget-category__icon--expense-tax,.stage-budget-category__icon--expense-production{color:var(--ds-warning)}.stage-budget-category__icon--expense-non-production{color:var(--ds-error)}.stage-budget-category__icon--fin{background:#fef2f2;color:#dc2626}.stage-budget-category__icon--sales{background:#ecfdf5;color:#059669}.stage-budget-person{display:flex;align-items:center;gap:8px;width:100%;min-width:0}.stage-budget-person__avatar{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--ds-accent);color:var(--ds-accent-text);font-size:10px;font-weight:900;flex:0 0 auto}.stage-budget-person__text{display:flex;flex-direction:column;flex:1 1 auto;max-width:100%;min-width:0;overflow:hidden}.stage-budget-person__text span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.stage-budget-person__text small{overflow:hidden;color:var(--ds-text-tertiary);font-size:11px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.stage-budget-pct{font-family:var(--ds-font-mono);font-weight:800}.stage-budget-table .is-zero,.stage-budget-pct.is-zero{color:var(--ds-text-tertiary)}@media (max-width: 1024px){.stage-budget-layout{grid-template-columns:1fr}.stage-budget-sidebar{position:static;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr)}}@media (max-width: 760px){.stage-budget-page{padding:16px 14px 36px}.stage-budget-header{flex-direction:column;align-items:stretch}.stage-budget-header .ds-action-menu{align-self:flex-start}.stage-budget-heading .ds-page-title{font-size:18px}.stage-budget-header__sep{display:none}.stage-budget-header__subtitle{width:100%;padding-left:42px}.stage-budget-sidebar{grid-template-columns:1fr}.stage-budget-side-card{display:grid;grid-template-columns:1fr;gap:12px}.stage-budget-side-stat+.stage-budget-side-stat{margin-top:0;padding-top:12px}.stage-budget-act-filter{flex-direction:column;gap:8px}.stage-budget-act-filter__label{padding-top:0}.stage-budget-act-chip{min-width:0;flex:1 1 140px}.stage-budget-table{min-width:720px}.stage-budget-table th,.stage-budget-table td{padding:0 10px}}.contract-approvals-page-v2{display:flex;flex-direction:column;gap:18px}.approval-screen-header{display:flex;flex-direction:column;gap:16px}.approval-screen-breadcrumbs{margin-bottom:2px}.approval-screen-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--ds-border)}.approval-screen-title-row{display:flex;align-items:center;gap:12px;min-width:0}.approval-screen-title-row .ds-page-title{overflow-wrap:anywhere}.approval-screen-back.ui-btn{width:32px;height:30px;padding:0;flex:0 0 auto}.approval-screen-subtitle{margin-top:4px;color:var(--ds-text-secondary);font-size:13px;line-height:1.45}.approval-screen-actions{flex:0 0 auto}.approval-screen-actions .ui-btn{display:inline-flex;align-items:center;gap:6px}.approval-summary-panel.ds-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:20px 22px;border-radius:var(--ds-radius-xl)}.approval-summary-eyebrow{color:var(--ds-text-tertiary);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0}.approval-summary-value{margin-top:6px;color:var(--ds-text);font-size:24px;font-weight:800;line-height:1.1;font-family:var(--ds-font-mono)}.approval-progress-bar{position:relative;margin-top:12px;height:8px;overflow:hidden;border-radius:var(--ds-radius-full);background:var(--ds-surface)}.approval-progress-bar__approved{display:block;height:100%;border-radius:inherit;background:var(--ds-success);transition:width var(--ds-transition-slow)}.approval-summary-stats{display:grid;grid-template-columns:repeat(3,minmax(78px,1fr));gap:12px}.approval-summary-stats>div{padding:12px 14px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:var(--ds-bg)}.approval-summary-stats span{display:block;color:var(--ds-text);font-family:var(--ds-font-mono);font-size:18px;font-weight:800}.approval-summary-stats small{display:block;margin-top:2px;color:var(--ds-text-tertiary);font-size:11px;font-weight:700;text-transform:uppercase}.approval-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}.approval-status-column{min-width:0;border:1px solid var(--ds-border);border-radius:var(--ds-radius-xl);background:var(--ds-bg);box-shadow:var(--ds-shadow-card)}.approval-status-column__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 12px;border-bottom:1px solid var(--ds-border)}.approval-status-column__head h2{margin:0;color:var(--ds-text);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:0}.approval-status-column__head span{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:24px;padding:0 8px;border-radius:var(--ds-radius-full);background:var(--ds-surface);color:var(--ds-text-secondary);font-family:var(--ds-font-mono);font-size:12px;font-weight:800}.approval-status-column__list{display:flex;flex-direction:column;gap:10px;padding:12px}.approval-status-column__empty{margin:0;padding:18px 12px;color:var(--ds-text-tertiary);font-size:13px;text-align:center}.approval-person-card{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);background:var(--ds-bg)}.approval-person-card--approved{border-color:#10b98152;background:#10b9810a}.approval-person-card--rejected{border-color:#ef444452;background:#ef44440a}.approval-person-card__top{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px}.approval-person-avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--ds-radius-full);background:var(--ds-accent);color:var(--ds-accent-text);font-size:11px;font-weight:800}.approval-person-main{min-width:0}.approval-person-name{overflow:hidden;color:var(--ds-text);font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.approval-person-date{margin-top:2px;color:var(--ds-text-tertiary);font-family:var(--ds-font-mono);font-size:11px}.approval-person-status{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:var(--ds-radius-full);font-size:11px;font-weight:800;white-space:nowrap}.approval-person-status--pending{background:var(--ds-warning-bg);color:var(--ds-warning-dark)}.approval-person-status--approved{background:var(--ds-success-bg);color:var(--ds-success-dark)}.approval-person-status--rejected{background:var(--ds-error-bg);color:var(--ds-error)}.approval-person-comment{padding:10px 12px;border-left:3px solid var(--ds-error);border-radius:var(--ds-radius-sm);background:var(--ds-error-bg);color:var(--ds-text);font-size:12px;line-height:1.45}.approval-person-comment span{display:block;margin-bottom:4px;color:var(--ds-error);font-size:10px;font-weight:800;text-transform:uppercase}.approval-person-actions{display:flex;flex-wrap:wrap;gap:8px}.approval-modal .ui-input{min-height:86px;padding-top:10px;resize:vertical}@media (max-width: 1024px){.approval-status-grid{grid-template-columns:1fr}}@media (max-width: 760px){.approval-screen-heading,.approval-screen-title-row,.approval-summary-panel.ds-card{align-items:stretch;grid-template-columns:1fr}.approval-screen-heading{flex-direction:column}.approval-screen-title-row{flex-wrap:wrap}.approval-screen-actions,.approval-screen-actions .ui-btn{width:100%}.approval-screen-actions .ui-btn{justify-content:center}.approval-summary-stats{grid-template-columns:1fr}.approval-person-card__top{grid-template-columns:34px minmax(0,1fr)}.approval-person-status{grid-column:1 / -1;justify-content:center}}.contract-report-preview{max-width:72rem;margin:0 auto;padding:var(--spacing-md);font-family:var(--font-family)}.contract-report-preview--loading,.contract-report-preview--error{padding:var(--spacing-xl);text-align:center}.contract-report-preview--error p{margin-bottom:var(--spacing-md);color:var(--color-error)}.contract-report-preview__toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.contract-report-preview__toolbar-title{font-size:1.25rem;font-weight:700;color:var(--color-text)}.contract-report-preview__toolbar-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.contract-report-preview__btn-back{display:inline-flex;align-items:center;gap:6px;height:var(--ds-height-lg);min-height:var(--ds-height-lg);padding:0 18px;border:none;border-radius:var(--ds-radius-md);background:transparent;color:var(--color-text-secondary);font-size:13px;font-weight:var(--font-weight-semibold);line-height:1.25;transition:background var(--ds-transition-slow),color var(--ds-transition-slow)}.contract-report-preview__btn-back:hover{background:var(--color-secondary-bg);color:var(--color-text)}.contract-report-preview__message{padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);border-radius:var(--radius-sm)}.contract-report-preview__message--error{background:var(--ds-error-bg);color:var(--ds-error)}.contract-report-preview__page{background:var(--color-bg);padding:2rem 3rem;box-shadow:var(--ds-shadow-elevated);border:1px solid var(--color-border);border-radius:var(--ds-radius-lg)}@media (max-width: 768px){.contract-report-preview__page{padding:var(--spacing-lg)}}.contract-report-preview__header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:var(--spacing-lg);margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.contract-report-preview__header-left{display:flex;align-items:center;gap:1rem}.contract-report-preview__logo{width:48px;height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--color-secondary-bg)}.contract-report-preview__logo img{width:100%;height:100%;object-fit:contain}.contract-report-preview__title{font-size:1.125rem;font-weight:var(--font-weight-bold);color:var(--color-text);letter-spacing:var(--letter-spacing-tight);text-transform:uppercase;margin:0}.contract-report-preview__subtitle{font-size:.75rem;color:var(--color-text-secondary);margin:.25rem 0 0}.contract-report-preview__header-right{text-align:right}.contract-report-preview__date-label{font-size:.6875rem;font-weight:var(--font-weight-medium);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin:0}.contract-report-preview__date{font-size:.875rem;font-weight:var(--font-weight-semibold);color:var(--color-text);margin:.25rem 0 0}.contract-report-preview__date-sep{color:var(--color-text-tertiary);margin:0 .25rem}.contract-report-preview__section{margin-bottom:2.5rem}.contract-report-preview__section-head{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.contract-report-preview__accent-bar{width:4px;height:1.25rem;flex-shrink:0}.contract-report-preview__section-title{font-size:.875rem;font-weight:var(--font-weight-bold);color:var(--color-text);text-transform:uppercase;letter-spacing:.025em;margin:0}.contract-report-preview__table-wrap{overflow-x:auto;width:100%;max-width:100%}.contract-report-preview__table{width:100%;min-width:800px;border-collapse:collapse;font-size:.8125rem;line-height:1.35}.contract-report-preview__table th,.contract-report-preview__table td{border:1px solid var(--color-border);padding:var(--spacing-sm) .625rem;text-align:left}.contract-report-preview__table th{background-color:var(--color-secondary-bg);font-weight:var(--font-weight-semibold);color:var(--color-text)}.contract-report-preview__table td{color:var(--color-text)}.contract-report-preview__num{white-space:nowrap;text-align:right;font-family:var(--ds-font-mono);font-variant-numeric:tabular-nums}.contract-report-preview__num--pct{text-align:right}.contract-report-preview__num--remainder{font-weight:600}.contract-report-preview__num--accent{font-weight:var(--font-weight-bold);color:var(--ds-warning-dark)}.contract-report-preview__total-row{background-color:var(--color-secondary-bg);font-weight:var(--font-weight-bold);border-top:2px solid color-mix(in srgb,var(--ds-accent) 35%,transparent)}.contract-report-preview__total-label{text-align:right}.contract-report-preview__table--detail{table-layout:fixed;width:100%}.contract-report-preview__table--detail .contract-report-preview__dept{font-weight:600}.contract-report-preview__table--acts{min-width:720px}.contract-report-preview__detail-head{background:var(--color-secondary-bg);padding:1rem;margin-bottom:1rem;border-left:4px solid var(--ds-accent)}.contract-report-preview__detail-title{font-size:.75rem;font-weight:var(--font-weight-bold);color:var(--color-text-secondary);text-transform:uppercase;margin:0 0 .25rem}.contract-report-preview__detail-stage{font-size:.875rem;font-weight:var(--font-weight-semibold);color:var(--color-text);margin:0}.contract-report-preview__subsection-title{font-size:.875rem;font-weight:var(--font-weight-semibold);color:var(--color-text);margin:1rem 0 .5rem}.contract-report-preview__footer{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;font-size:.6875rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.contract-report-preview__period-label{margin-bottom:var(--spacing-md);font-weight:600;color:var(--color-text)}.contract-report-preview__matrix-corner-head,.contract-report-preview__matrix-row-label{min-width:11.5rem;width:12.5rem;max-width:16rem;white-space:normal;vertical-align:bottom;box-sizing:border-box}.contract-report-preview__matrix-corner-head{font-weight:var(--font-weight-semibold, 600);color:var(--color-text)}.contract-report-preview__matrix-label-upper{text-transform:uppercase;letter-spacing:.03em;font-size:.8125rem}.contract-report-preview__matrix-total-row .contract-report-preview__matrix-label-upper{font-weight:var(--font-weight-bold, 700)}.contract-report-preview__stage-col-head{vertical-align:bottom;text-align:right;min-width:11rem;width:11rem;white-space:normal;word-break:break-word;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;box-sizing:border-box}.contract-report-preview__stage-col-head-main{display:block;font-weight:var(--font-weight-semibold, 600);line-height:1.25;word-break:break-word;overflow-wrap:anywhere}.contract-report-preview__stage-col-head-meta{display:block;margin-top:var(--spacing-xs, .25rem);font-size:.6875rem;font-weight:400;line-height:1.3;color:var(--color-text-secondary);word-break:break-word;overflow-wrap:anywhere}.contract-report-preview__table-wrap--scroll{overflow-x:auto}.contract-report-preview__table-wrap--matrix{overflow:auto;max-height:min(75vh,56rem);-webkit-overflow-scrolling:touch}.contract-report-preview__table--matrix-sticky{--matrix-sticky-col1-width: 12.5rem}.contract-report-preview__table--matrix-sticky .contract-report-preview__matrix-corner-head,.contract-report-preview__table--matrix-sticky .contract-report-preview__matrix-row-label{width:var(--matrix-sticky-col1-width);min-width:var(--matrix-sticky-col1-width);max-width:var(--matrix-sticky-col1-width)}.contract-report-preview__table--matrix-sticky thead th{position:sticky;top:0;z-index:4;background-color:var(--color-secondary-bg);box-shadow:0 1px 0 var(--color-border)}.contract-report-preview__table--matrix-sticky thead th:nth-child(1){left:0;z-index:6;box-shadow:1px 0 0 var(--color-border),0 1px 0 var(--color-border)}.contract-report-preview__table--matrix-sticky thead th:nth-child(2){left:var(--matrix-sticky-col1-width);z-index:5;min-width:8.5rem;box-shadow:1px 0 0 var(--color-border),0 1px 0 var(--color-border)}.contract-report-preview__table--matrix-sticky tbody td:nth-child(1):not([colspan]),.contract-report-preview__table--matrix-sticky tbody td:nth-child(2):not([colspan]){position:sticky;background-color:var(--color-bg);box-shadow:1px 0 0 var(--color-border)}.contract-report-preview__table--matrix-sticky tbody td:nth-child(1):not([colspan]){left:0;z-index:3}.contract-report-preview__table--matrix-sticky tbody td:nth-child(2):not([colspan]){left:var(--matrix-sticky-col1-width);z-index:2;min-width:8.5rem}.contract-report-preview__table--matrix-sticky tbody tr.contract-report-preview__matrix-total-row td:nth-child(1):not([colspan]),.contract-report-preview__table--matrix-sticky tbody tr.contract-report-preview__matrix-total-row td:nth-child(2):not([colspan]){background-color:var(--color-secondary-bg)}.contract-report-preview__table--matrix-sticky tbody td.contract-report-preview__matrix-section-cell--col1{width:var(--matrix-sticky-col1-width);min-width:var(--matrix-sticky-col1-width);max-width:var(--matrix-sticky-col1-width);position:sticky;left:0;z-index:3;background-color:var(--color-secondary-bg);box-shadow:1px 0 0 var(--color-border);vertical-align:middle}.contract-report-preview__table--matrix-sticky tbody td.contract-report-preview__matrix-section-cell--col2{position:sticky;left:var(--matrix-sticky-col1-width);z-index:2;min-width:8.5rem;background-color:var(--color-secondary-bg);box-shadow:1px 0 0 var(--color-border);vertical-align:middle}.contract-report-preview__table--matrix-sticky tbody td.contract-report-preview__matrix-section-cell--rest{position:static;vertical-align:middle}.contract-report-preview__matrix-section-cell{font-weight:700;background:var(--color-secondary-bg);color:var(--color-text)}.contract-report-preview__matrix-total-row{font-weight:600}.contract-report-preview__section:not(.contract-report-preview__acts-section) .contract-report-preview__matrix-total-row>th,.contract-report-preview__section:not(.contract-report-preview__acts-section) .contract-report-preview__matrix-total-row>td{background:var(--color-secondary-bg);color:var(--color-text)}.contract-report-preview__section:not(.contract-report-preview__acts-section) .contract-report-preview__table th.contract-report-preview__num--total-col,.contract-report-preview__section:not(.contract-report-preview__acts-section) .contract-report-preview__table td.contract-report-preview__num--total-col{font-weight:var(--font-weight-bold);background:var(--color-secondary-bg);color:var(--color-text)}.contract-report-preview__acts-section{margin-top:var(--spacing-xl)}.contract-report-preview__acts-title{margin-bottom:var(--spacing-md)}.contract-report-preview__period-option{display:flex;align-items:center;gap:var(--spacing-xs)}.contract-report-preview__select--minw{min-width:120px}@media print{.contract-report-preview__toolbar,.contract-report-preview__btn-back,.contract-report-preview__message{display:none!important}.contract-report-preview__page{box-shadow:none!important;margin:0!important;padding:1rem!important;max-width:100%!important}.contract-report-preview__table-wrap--matrix{max-height:none!important;overflow:visible!important}.contract-report-preview__table--matrix-sticky thead th,.contract-report-preview__table--matrix-sticky tbody td:nth-child(1):not([colspan]),.contract-report-preview__table--matrix-sticky tbody td:nth-child(2):not([colspan]),.contract-report-preview__table--matrix-sticky tbody td.contract-report-preview__matrix-section-cell--col1,.contract-report-preview__table--matrix-sticky tbody td.contract-report-preview__matrix-section-cell--col2{position:static!important;left:auto!important;top:auto!important;z-index:auto!important;box-shadow:none!important}body{background:#fff!important}}.contract-report-preview__row--mismatch,.contract-report-preview__row--mismatch>td{background:#dc26261f!important;color:var(--color-error, #b91c1c);-webkit-print-color-adjust:exact;print-color-adjust:exact}.reports-page,.income-report-page{max-width:100%;margin:0 auto}.income-report-page{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--ds-shadow-card);padding:var(--spacing-lg)}.reports-hero,.report-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.reports-hero h1,.report-toolbar h1{margin:0;font-size:20px;line-height:1.25;color:var(--color-text)}.reports-hero p,.report-toolbar__meta span,.report-footnote{margin:6px 0 0;color:var(--color-text-secondary);font-size:13px}.report-toolbar--compact{align-items:center}.report-toolbar__actions,.reports-row-actions,.report-config-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm);flex-wrap:wrap}.reports-list-shell,.report-table-shell,.report-config-table-shell{background:var(--color-bg)}.reports-list-table th,.reports-list-table td{vertical-align:middle}.reports-title-link{font-weight:600}.reports-list-row{cursor:pointer}.reports-list-row:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.reports-title-sub{margin-top:3px;font-size:12px;color:var(--color-text-secondary)}.reports-actions-col,.report-action-col{width:1%;white-space:nowrap}.reports-empty-cell,.report-empty-cell{color:var(--color-text-tertiary);text-align:center;padding:var(--spacing-lg)!important}.reports-message{margin-bottom:var(--spacing-md)}.reports-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--spacing-md)}.reports-create-modal .report-config-field{margin-bottom:var(--spacing-md)}.report-readonly-note{padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);border:1px solid color-mix(in srgb,var(--ds-info) 35%,var(--ds-bg));border-radius:var(--ds-radius-md);background:var(--ds-info-bg);color:color-mix(in srgb,var(--ds-info) 55%,var(--ds-text));font-size:13px}.report-state{padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary)}.report-state--error p{color:var(--color-error)}.report-controls{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.report-pnl-above-table{margin-bottom:var(--spacing-md)}.report-toggle{display:inline-flex;border:1px solid var(--income-control-border, var(--color-border));border-radius:var(--radius-md);overflow:hidden;background:#fff}.report-toggle__btn{padding:5px 12px;border:none;background:#fff;color:var(--color-text);font-size:.8125rem;min-height:30px;cursor:pointer;border-right:1px solid var(--income-control-border, var(--color-border));font-weight:500}.report-toggle__btn:last-child{border-right:none}button.report-toggle__btn.report-toggle__btn--active{background:var(--color-accent)!important;background-color:var(--color-accent)!important;color:var(--ds-accent-text, var(--color-text));border-color:var(--color-accent)}.report-toggle__btn:hover:not(.report-toggle__btn--active){background:var(--color-secondary-bg, #f3f4f6)}.report-control-group,.report-column-toggles,.report-check{display:inline-flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.report-control-label{font-size:13px;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.report-check{gap:5px;font-size:13px;color:var(--color-text-secondary)}.report-extra-cols{position:relative}.report-extra-cols__button{gap:6px}.report-extra-cols__panel{position:absolute;top:calc(100% + 6px);left:0;z-index:20;display:flex;min-width:220px;flex-direction:column;align-items:flex-start;gap:6px;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--ds-radius-md);background:var(--color-bg);box-shadow:var(--ds-shadow-card)}.report-extra-cols__panel[hidden]{display:none}.report-table-wrap{width:100%;max-height:calc(100vh - 260px);overflow:auto;-webkit-overflow-scrolling:touch;background:var(--color-bg)}.report-data-table{--report-sticky-num-width: 44px;--report-sticky-team-width: 150px;--report-sticky-name-width: 220px;min-width:2040px;width:100%;border-collapse:collapse;font-size:12px;line-height:1.35}.report-data-table th{position:sticky;top:0;z-index:4;padding:7px 8px;border-bottom:2px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font-size:11px;font-weight:600;text-align:center;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}.report-data-table td{padding:5px 8px;border-bottom:1px solid var(--color-border);color:var(--color-text);white-space:nowrap;vertical-align:middle}.report-data-table tbody tr:hover td{background:color-mix(in srgb,var(--color-accent) 12%,var(--color-bg))}.report-num{text-align:right!important;font-family:var(--ds-font-mono, ui-monospace, monospace);font-variant-numeric:tabular-nums}.report-data-table th.report-num,.center{text-align:center!important}.report-sticky-col{position:sticky;z-index:3;background:var(--color-bg)}.report-sticky-col--num{left:0;width:var(--report-sticky-num-width);min-width:var(--report-sticky-num-width);max-width:var(--report-sticky-num-width)}.report-sticky-col--team{left:var(--report-sticky-num-width);width:var(--report-sticky-team-width);min-width:var(--report-sticky-team-width);max-width:var(--report-sticky-team-width)}.report-sticky-col--name{left:calc(var(--report-sticky-num-width) + var(--report-sticky-team-width));width:var(--report-sticky-name-width);min-width:var(--report-sticky-name-width);max-width:var(--report-sticky-name-width)}.report-sticky-name{box-shadow:2px 0 4px #0000000f}th.report-sticky-col{z-index:7;background:var(--color-bg)}.report-group-row td,.report-total-row td{background:var(--color-secondary-bg);font-weight:700}.report-total-row td{border-top:2px solid var(--ds-border-strong)}.report-misc-expense-row td{border-top:1px solid var(--ds-border-strong);background:var(--color-bg);font-weight:600}.report-group-row .report-sticky-col,.report-total-row .report-sticky-col{background:var(--color-secondary-bg)}.report-col-editable{background:color-mix(in srgb,var(--ds-info-bg) 55%,var(--ds-bg))}th.report-col-editable{background:var(--color-bg);color:var(--color-text)}.report-col-lavender{background:#faf5ff}th.report-col-lavender{background:var(--color-bg);color:var(--color-text)}.report-col-green{background:#22c55e1f!important}th.report-col-green{background:var(--color-bg)!important;color:var(--color-text)}.report-total-row td,.report-total-row .report-sticky-col{background:var(--color-secondary-bg)!important}.report-col-sorted .report-sort-arrow{color:var(--color-accent)}button.report-th-sort{display:inline-flex;align-items:center;justify-content:center;gap:2px;width:100%;margin:0;padding:0;border:none;background:transparent!important;background-color:transparent!important;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;font:inherit;line-height:inherit;text-align:inherit;cursor:pointer;font-weight:600}th.report-num button.report-th-sort{justify-content:center}button.report-th-sort:hover{color:var(--ds-info)}button.report-th-sort:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.report-negative{color:var(--ds-error)!important}.report-positive{color:#16a34a}.report-money-input{width:112px;min-width:88px;height:26px;min-height:26px;padding:0 5px;border-color:transparent;background:transparent;text-align:right;font-family:var(--ds-font-mono, ui-monospace, monospace);font-size:12px}.report-money-input:hover{border-color:var(--color-border)}.report-money-input:focus{background:var(--color-bg)}.report-money-input--overridden{background:#f59e0b1a}.report-money-static{font-family:var(--ds-font-mono, ui-monospace, monospace);font-variant-numeric:tabular-nums}.report-info-grid{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:var(--spacing-sm);margin-top:var(--spacing-md)}.report-info-card{min-width:0;padding:10px 14px;border-radius:var(--ds-radius-md);border:1px solid var(--color-border)}.report-info-card__label{margin-bottom:3px;color:var(--color-text-secondary);font-size:11px}.report-info-card__value{font-family:var(--ds-font-mono, ui-monospace, monospace);font-size:14px;font-weight:700}.report-info-card--green{background:var(--ds-success-bg);border-color:color-mix(in srgb,var(--ds-success) 25%,var(--ds-border));color:color-mix(in srgb,var(--ds-success-dark) 70%,var(--ds-text))}.report-info-card--blue{background:var(--ds-info-bg);border-color:color-mix(in srgb,var(--ds-info) 25%,var(--ds-border));color:color-mix(in srgb,var(--ds-info) 55%,var(--ds-text))}.report-info-card--orange{background:#fffbeb;border-color:#fde68a;color:#92400e}.report-info-card--red{background:#fef2f2;border-color:#fecaca;color:#991b1b}.report-info-card--gray{background:var(--color-secondary-bg);color:var(--color-text)}.report-pnl{margin-bottom:var(--spacing-md)}.report-pnl-above-table .report-pnl{margin-bottom:0}.report-pnl__toggle{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:6px;padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--ds-radius-md) var(--ds-radius-md) 0 0;background:var(--color-secondary-bg, #f3f4f6)!important;color:var(--color-text, #1a1a2e);font-size:.875rem;font-weight:700;line-height:1.25;font-family:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;box-sizing:border-box}.report-pnl__toggle:hover{background:color-mix(in srgb,var(--color-secondary-bg) 60%,var(--ds-border-strong))!important}.report-pnl__arrow{display:inline-block;font-size:.7rem;line-height:1;transition:transform .2s ease}.report-pnl--collapsed .report-pnl__arrow{transform:rotate(-90deg)}.report-pnl--collapsed .report-pnl__toggle{border-radius:var(--ds-radius-md)}.report-pnl__body{border:1px solid var(--color-border);border-top:none;border-radius:0 0 var(--ds-radius-md) var(--ds-radius-md);overflow-x:auto;background:var(--color-bg)}.report-pnl__table{width:100%;border-collapse:collapse;min-width:720px;font-size:13px}.report-pnl__table td{padding:7px 12px;border-bottom:1px solid var(--color-border)}.report-pnl__section td{background:var(--color-secondary-bg);font-weight:700}.report-pnl__subtotal td{border-top:1px solid var(--ds-border-strong);font-weight:600}.report-pnl__grandtotal td{border-top:2px solid color-mix(in srgb,var(--ds-success) 35%,var(--ds-border));background:var(--ds-success-bg);font-weight:700}.report-pnl__negative td{border-top:2px solid color-mix(in srgb,var(--ds-error) 35%,var(--ds-border));background:var(--ds-error-bg);font-weight:700}.report-pnl__diff-pos{color:#16a34a}.report-pnl__diff-neg{color:var(--ds-error)}.report-config-card{padding:var(--spacing-lg);border:1px solid var(--color-border);border-radius:var(--ds-radius-lg);background:var(--color-bg);box-shadow:var(--ds-shadow-card)}.report-config-card .ds-tabs{margin-bottom:var(--spacing-lg);overflow-x:auto}.report-config-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.report-config-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.report-config-section-head h2{margin:0;font-size:15px;color:var(--color-text)}.report-config-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:var(--spacing-md)}.report-config-field{display:flex;flex-direction:column;gap:6px}.report-config-field>span{color:var(--color-text-secondary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.report-config-field .ui-input,.report-config-field .ui-select{width:100%}.report-config-table{width:100%;border-collapse:collapse;background:var(--color-bg);font-size:13px}.report-config-table th,.report-config-table td{padding:8px 10px;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle}.report-config-table th{background:var(--color-secondary-bg);color:var(--color-text-secondary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.report-config-table .report-config-field>span{display:none}.report-config-table .report-money-input{width:130px;border-color:var(--color-border);background:var(--color-bg)}.report-balance-bar{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;padding:10px 14px;border-radius:var(--ds-radius-md);background:var(--color-secondary-bg);color:var(--color-text-secondary);font-size:13px}.report-print-page{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--ds-radius-lg);padding:var(--spacing-lg);box-shadow:var(--ds-shadow-card)}.report-print-header{display:flex;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.report-print-header h2{margin:0;font-size:18px}.report-print-header p,.report-print-date{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}@media (max-width: 1100px){.report-info-grid,.report-config-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.reports-hero,.report-toolbar,.report-print-header{flex-direction:column;align-items:stretch}.reports-form-grid,.report-info-grid,.report-config-grid{grid-template-columns:1fr}.report-toolbar__actions,.reports-row-actions{justify-content:flex-start}}@media print{.top-header,.sidebar,.sidebar-overlay,.report-toolbar,.report-controls,.report-pnl__toggle,.report-pnl--collapsed,.report-info-grid,.report-footnote,.no-print{display:none!important}.layout,.layout-main,.main-content,.income-report-page{display:block!important;margin:0!important;padding:0!important;background:#fff!important}.report-print-page,.report-table-shell,.report-config-table-shell,.report-pnl__body{border:none!important;box-shadow:none!important}.report-table-wrap{max-height:none!important;overflow:visible!important}.report-data-table th,.report-sticky-col{position:static!important;box-shadow:none!important}.report-data-table{min-width:auto;font-size:8pt}}.settings-page{padding:var(--spacing-lg);max-width:900px;margin:0 auto}.settings-header{margin-bottom:var(--spacing-xl)}.settings-header h1{font-size:32px;font-weight:600;letter-spacing:var(--letter-spacing-tight);color:var(--color-text)}.settings-message{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.settings-message-success{background-color:color-mix(in srgb,var(--ds-success) 12%,var(--color-bg));color:var(--ds-success);border:1px solid color-mix(in srgb,var(--ds-success) 35%,var(--color-border))}.settings-message-error{background-color:color-mix(in srgb,var(--ds-error) 10%,var(--color-bg));color:var(--ds-error);border:1px solid color-mix(in srgb,var(--ds-error) 40%,var(--color-border))}.settings-message-info{background-color:var(--color-secondary-bg);color:var(--color-text-secondary);border:1px solid var(--color-border)}.message-close{background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:inherit;opacity:.7;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.message-close:hover{opacity:1}.settings-content{display:flex;flex-direction:column;gap:var(--spacing-xl)}.settings-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.settings-section h2{font-size:20px;font-weight:600;letter-spacing:var(--letter-spacing-tight);color:var(--color-text);display:flex;align-items:center;gap:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-accent);margin-bottom:var(--spacing-md)}.settings-section h2 img{width:20px;height:20px;opacity:.8}.settings-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--ds-shadow-sm);transition:box-shadow var(--ds-transition, .2s ease)}.settings-card:hover{box-shadow:var(--ds-shadow-md, 0 4px 12px rgba(0, 0, 0, .08))}.settings-hero{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-xl);background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-secondary-bg) 100%);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-xl);box-shadow:0 2px 8px #0000000d}.settings-hero-avatar-section{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.settings-hero-avatar-wrapper{position:relative;cursor:pointer}.settings-hero-avatar{flex-shrink:0;transition:opacity .2s ease;width:120px;height:120px;position:relative;display:flex;align-items:center;justify-content:center}.settings-hero-avatar-wrapper:hover .settings-hero-avatar{opacity:.7}.settings-hero-avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:absolute;top:0;left:0;z-index:1}.settings-hero-avatar-placeholder .employee-avatar-wrapper{width:120px;height:120px}.settings-hero-avatar-placeholder .employee-avatar{width:120px!important;height:120px!important;border:4px solid var(--color-accent);box-shadow:0 4px 12px #ffd7004d;font-size:36px}.settings-hero-avatar-image{width:120px;height:120px;border-radius:50%;object-fit:cover;border:4px solid var(--color-accent);box-shadow:0 4px 12px #ffd7004d;transition:opacity .2s ease;position:absolute;top:0;left:0;z-index:2}.settings-hero-avatar-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background-color:#00000080;opacity:0;transition:opacity .2s ease;pointer-events:none}.settings-hero-avatar-wrapper:hover .settings-hero-avatar-overlay{opacity:1;pointer-events:auto}.settings-hero-avatar-edit-btn{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background-color:var(--color-accent);color:var(--color-text);cursor:pointer;transition:transform .2s ease,background-color .2s ease;border:none;padding:0}.settings-hero-avatar-edit-btn:hover{transform:scale(1.1);background-color:gold}.settings-hero-avatar-controls{display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:center;width:100%}.settings-hero-avatar-controls .settings-hero-avatar-controls-btn,.settings-hero-avatar-controls .ui-btn{width:100%;justify-content:center}.settings-hero-info{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm)}.settings-hero-name{font-size:28px;font-weight:700;color:var(--color-text);letter-spacing:var(--letter-spacing-tight)}.settings-hero-employee-info{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;margin-top:var(--spacing-xs)}.settings-hero-department{display:flex;align-items:center;gap:var(--spacing-xs);font-size:14px;color:var(--color-text-secondary)}.settings-hero-employee-role{font-size:14px;color:var(--color-text-secondary);font-weight:500}.settings-hero-system-info{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;margin-top:var(--spacing-sm)}.settings-hero-login{display:flex;align-items:center;gap:var(--spacing-xs);font-size:14px;color:var(--color-text-secondary)}.avatar-section{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-lg)}.avatar-preview-container{width:120px;height:120px;border-radius:50%;overflow:hidden;border:3px solid var(--color-border);display:flex;align-items:center;justify-content:center;background:var(--color-secondary-bg)}.avatar-preview{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.avatar-placeholder-icon{opacity:.3}.avatar-controls{display:flex;gap:var(--spacing-md);align-items:center}.btn-file{display:inline-flex;align-items:center;gap:var(--spacing-xs);cursor:pointer}.btn-file input[type=file]{display:none}.settings-hint{font-size:12px;color:var(--color-text-secondary);text-align:center;margin:0}.profile-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.profile-info-card{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-secondary-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:all .2s ease}.profile-info-card:hover{background-color:#ffd7000d;border-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 2px 8px #0000000d}.profile-info-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:#ffd7001a;border-radius:var(--radius-sm);border:1px solid rgba(255,215,0,.2)}.profile-info-icon img{opacity:.8}.profile-info-content{flex:1;display:flex;flex-direction:column;gap:4px}.profile-info-label{font-size:12px;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.profile-info-value{font-size:16px;font-weight:600;color:var(--color-text)}.password-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.password-strength{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-xs)}.password-strength-bars{display:flex;gap:4px;flex:1}.password-strength-bar{flex:1;height:4px;border-radius:2px;background-color:var(--color-border);transition:all .3s ease}.password-strength-bar.active{transform:scaleY(1.2)}.password-strength-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;min-width:70px;text-align:right}.notifications-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.notification-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:background-color .2s ease}.notification-item:hover{background-color:var(--color-secondary-bg)}.notification-info{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.notification-label{font-weight:500;color:var(--color-text);font-size:14px}.notification-description{font-size:12px;color:var(--color-text-secondary)}.toggle-switch{position:relative;display:inline-block;width:48px;height:24px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--color-border);transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 1px var(--color-accent)}@media (max-width: 768px){.settings-page{padding:var(--spacing-md)}.settings-hero{flex-direction:column;text-align:center;padding:var(--spacing-lg)}.settings-hero-details{justify-content:center}.profile-info{grid-template-columns:1fr}.avatar-controls{flex-direction:column;width:100%}.btn-file,.btn-primary{width:100%}.notification-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.password-strength{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.password-strength-label{text-align:left}}.not-found-page{display:flex;justify-content:center;align-items:center;min-height:80vh;padding:var(--spacing-lg)}.not-found-content{text-align:center}.not-found-content h1{font-size:120px;font-weight:700;color:var(--color-accent);margin:0;line-height:1}.not-found-content h2{font-size:32px;margin:var(--spacing-md) 0;color:var(--color-text)}.not-found-content p{font-size:18px;color:var(--color-text);margin-bottom:var(--spacing-xl)}.access-denied-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--ds-bg) 0%,var(--ds-surface) 100%);padding:var(--spacing-lg)}.access-denied-card{width:min(560px,100%);background:var(--ds-bg);border:1px solid var(--ds-border);border-radius:var(--ds-radius-xl);box-shadow:var(--ds-shadow-md);padding:clamp(20px,4vw,36px);text-align:center}.access-denied-illustration{width:min(260px,100%);max-height:220px;object-fit:contain;margin:0 auto var(--spacing-md);display:block}.access-denied-fallback{width:110px;height:110px;margin:0 auto var(--spacing-md);border-radius:var(--ds-radius-full);background:var(--ds-warning-bg);display:flex;align-items:center;justify-content:center;font-size:54px}.access-denied-card h1{font-size:clamp(24px,3vw,32px);line-height:1.2;margin-bottom:var(--spacing-sm);color:var(--ds-text)}.access-denied-card p{margin:0 auto var(--spacing-lg);max-width:420px;color:var(--ds-text-secondary)}.user-menu-container{position:relative;width:100%}.user-menu-button{width:100%;display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background-color:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;text-align:left}.user-menu-button:hover{background-color:#ffd7001a}.user-menu-button:focus{outline:2px solid var(--color-accent);outline-offset:2px}.user-menu-avatar{flex-shrink:0}.user-menu-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.user-menu-name{font-weight:600;font-size:14px;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-role{font-size:12px;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-chevron{flex-shrink:0;opacity:.6;transition:transform .2s ease,opacity .2s ease}.user-menu-button:hover .user-menu-chevron{opacity:1}.user-menu-dropdown{position:absolute;bottom:calc(100% + var(--spacing-sm));left:0;right:0;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;z-index:1000;overflow:hidden;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-menu-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-secondary-bg);border-bottom:1px solid var(--color-border)}.user-menu-header-clickable{cursor:pointer;transition:background-color .2s ease}.user-menu-header-clickable:hover{background-color:#ffd7001a}.user-menu-header-avatar{flex-shrink:0}.user-menu-header-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.user-menu-header-name{font-weight:600;font-size:14px;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-header-role{font-size:12px;color:var(--color-text-secondary)}.user-menu-header-employee{font-size:12px;color:var(--color-text-secondary);font-style:italic}.user-menu-divider{height:1px;background-color:var(--color-border);margin:var(--spacing-xs) 0}.user-menu-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);width:100%;background-color:transparent;border:none;text-align:left;text-decoration:none;color:var(--color-text);font-size:14px;cursor:pointer;transition:background-color .2s ease}.user-menu-item:hover{background-color:var(--color-secondary-bg)}.user-menu-item:focus{outline:2px solid var(--color-accent);outline-offset:-2px}.user-menu-item img{flex-shrink:0;opacity:.7}.user-menu-item:hover img{opacity:1}.user-menu-item span{flex:1}.user-menu-item-logout{color:var(--color-error)}.user-menu-item-logout:hover{background-color:#f443361a}.user-menu-item-logout img{opacity:.8}@media (min-width: 769px){.sidebar.sidebar--collapsed .user-menu-info,.sidebar.sidebar--collapsed .user-menu-chevron{display:none}.sidebar.sidebar--collapsed .user-menu-button{justify-content:center;padding:var(--spacing-sm)}.sidebar.sidebar--collapsed .user-menu-dropdown{left:100%;bottom:0;right:auto;min-width:240px;margin-left:var(--spacing-sm);z-index:2000}}@media (max-width: 768px){.user-menu-button{justify-content:flex-start;padding:var(--spacing-md);gap:var(--spacing-md)}.user-menu-dropdown{position:fixed;bottom:var(--spacing-sm);left:var(--spacing-sm);right:auto;width:calc(100vw - 140px);max-width:300px;top:auto}.user-menu-header,.user-menu-item{padding:var(--spacing-sm) var(--spacing-md)}}.layout{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch;min-height:100vh;background-color:var(--color-bg)}.layout.layout--ai-full .sidebar,.layout.layout--ai-full .sidebar-overlay,.layout.layout--ai-full .top-header{display:none!important}.layout.layout--ai-full .layout-main{margin-left:0;min-height:0;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden}.layout.layout--ai-full .main-content{padding:0;display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}.layout.layout--ai-full .main-content>.ai-page-full{flex:1 1 0;min-height:0;overflow:hidden}.layout.layout--ai-full .main-content .ds-card.ai-chat-shell{flex:1 1 0;min-height:0;max-height:100%;overflow:hidden;display:flex;flex-direction:column}.layout.layout--ai-full .main-content .ds-card.ai-chat-shell--page{padding:0}.ai-chat-fab{position:fixed;right:var(--spacing-lg);bottom:max(var(--spacing-lg),env(safe-area-inset-bottom));z-index:200;width:56px;height:56px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-accent);color:var(--color-bg);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px color-mix(in srgb,var(--color-text) 18%,transparent)}.ai-chat-fab:hover{filter:brightness(1.05)}.ai-chat-column{flex:0 0 min(420px,38vw);width:min(420px,38vw);min-width:min(280px,100%);max-width:100%;display:flex;flex-direction:column;align-self:flex-start;position:sticky;top:0;height:100vh;max-height:100vh;height:100dvh;max-height:100dvh;overflow:hidden;box-sizing:border-box;padding:var(--spacing-md);border-left:1px solid var(--color-border);background:var(--color-bg)}.ai-chat-column .ai-chat-shell{flex:1 1 0;min-height:0;height:100%;max-height:100%;overflow:hidden}.ai-chat-shell{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.ai-chat-shell--page{height:100%}.ds-card.ai-chat-shell--sidebar-companion{padding:0;border-radius:var(--radius-lg);overflow:hidden}.ds-card.ai-chat-shell--full-companion{padding:0;overflow:hidden}.ai-chat-panel-header.ai-chat-panel-header--sidebar-companion{flex-direction:column;align-items:stretch;gap:0;padding:8px 10px}.ai-chat-sidebar-header-grid{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:6px}.ai-chat-sidebar-header-center{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}.ai-chat-sidebar-header-spacer{width:34px;height:34px;visibility:hidden}.ai-chat-panel-title--sidebar{font-size:.875rem;font-weight:700;letter-spacing:-.02em;line-height:1.25}.ai-chat-link-ghost{font-size:10px;font-weight:500;color:var(--ds-text-tertiary, #a3a3a3);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:2px;padding:0;font-family:inherit}.ai-chat-link-ghost:hover:not(:disabled){color:var(--color-text-secondary)}.ai-chat-link-ghost:disabled{opacity:.5;cursor:not-allowed}.ai-chat-link-ghost--footer{font-size:12px;font-weight:600;color:var(--color-text-secondary)}.ai-chat-body--sidebar-companion{padding:12px;background:radial-gradient(280px 120px at 50% -20%,rgba(255,215,0,.12),transparent 70%),var(--color-secondary-bg);gap:10px}.ai-chat-sidebar-intro-row{display:flex;gap:10px;align-items:flex-start}.ai-chat-avatar{width:56px;height:56px;border-radius:18px;flex-shrink:0;background:linear-gradient(135deg,var(--color-accent) 0%,#ffe566 100%);display:flex;align-items:center;justify-content:center;font-size:1.625rem;line-height:1;box-shadow:0 4px 14px #ffd70047}.ai-chat-avatar--sm{width:40px;height:40px;border-radius:12px;font-size:1.25rem;box-shadow:0 2px 10px #ffd70040}.ai-chat-sidebar-intro-text{min-width:0}.ai-chat-sidebar-intro-title{margin:0;font-size:.8125rem;font-weight:700;color:var(--color-text);line-height:1.25}.ai-chat-trust-strip{display:flex;align-items:flex-start;gap:6px;font-size:.625rem;line-height:1.4;color:var(--color-text-secondary);background:var(--color-bg);border:1px solid var(--color-border);padding:7px 9px;border-radius:var(--radius-md);box-shadow:var(--ds-shadow-sm, 0 1px 2px rgba(0, 0, 0, .04))}.ai-chat-trust-dot{width:6px;height:6px;border-radius:50%;background:var(--ds-success, #10b981);flex-shrink:0;margin-top:3px}.ai-chat-context-chip{display:inline-flex;max-width:100%;padding:5px 9px;border-radius:999px;font-size:.6875rem;font-weight:600;background:var(--ds-info-bg, #eff6ff);color:var(--ds-info, #3b82f6);border:1px solid rgba(59,130,246,.2)}.ai-chat-context-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-chat-context-chip--inline{flex-shrink:0;align-self:flex-start}.ai-chat-suggestions-wrap{margin-top:4px}.ai-chat-suggestions-wrap--sidebar{margin-top:2px}.ai-chat-suggestions-heading{margin:0 0 8px;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ds-text-tertiary, #a3a3a3)}.ai-chat-suggestions-stack{display:flex;flex-direction:column;gap:8px}.ai-chat-suggestion{display:block;width:100%;text-align:left;cursor:pointer;font-family:inherit;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);transition:border-color .12s ease}.ai-chat-suggestion:hover{border-color:var(--ds-accent-dark, #e6c300)}.ai-chat-suggestion--stack{padding:10px 11px;font-size:.75rem;font-weight:500;color:var(--color-text);line-height:1.35}.ai-chat-suggestion--stack small{display:block;margin-top:3px;font-size:.625rem;font-weight:400;color:var(--ds-text-tertiary, #a3a3a3)}.ai-chat-suggestions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.ai-chat-suggestion--grid{padding:12px 14px;font-size:.8125rem;font-weight:500;color:var(--color-text);line-height:1.35}.ai-chat-suggestion--grid small{display:block;margin-top:4px;font-size:.6875rem;font-weight:400;color:var(--ds-text-tertiary, #a3a3a3)}.ai-chat-full-trust{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--color-text-secondary);background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:8px 16px;flex-shrink:0}.ai-chat-full-trust .ai-chat-trust-dot{margin-top:0}.ai-chat-body--full-companion{padding:20px 18px;background:radial-gradient(1200px 500px at 10% -10%,rgba(255,215,0,.1),transparent 55%),radial-gradient(900px 400px at 100% 0%,rgba(59,130,246,.06),transparent 50%),var(--color-secondary-bg);gap:var(--spacing-md)}.ai-chat-full-intro{text-align:center;padding:8px 4px 4px}.ai-chat-full-intro .ai-chat-avatar{margin:0 auto 12px}.ai-chat-full-intro-title{margin:0 0 6px;font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:var(--color-text)}.ai-chat-full-intro-text{margin:0 auto;max-width:28rem;font-size:.8125rem;line-height:1.5;color:var(--color-text-secondary)}.ai-chat-context-pill{display:inline-flex;margin-top:14px;padding:6px 12px;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--ds-info-bg, #eff6ff);color:var(--ds-info, #3b82f6);border:1px solid color-mix(in srgb,var(--ds-info, #3b82f6) 18%,transparent);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.ai-chat-full-active-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:8px;margin-bottom:4px;border-bottom:1px solid var(--color-border);flex-shrink:0}.ai-chat-full-active-title{font-size:.9375rem;font-weight:700;letter-spacing:-.02em}.ai-chat-composer--sidebar-companion{padding:10px 12px;padding-bottom:max(10px,env(safe-area-inset-bottom));gap:8px}.ai-chat-composer--sidebar-companion .ai-chat-input{min-height:64px;font-size:.75rem}.ai-chat-composer-field-wrap--sidebar{display:block;width:100%;box-sizing:border-box;border:1px solid var(--ds-border-strong, #d4d4d4);border-radius:var(--radius-md);background:var(--color-bg)}.ai-chat-composer-field-wrap--sidebar:focus-within{border-color:var(--ds-accent-dark, #e6c300);box-shadow:0 0 0 2px #ffd70033}.ai-chat-composer-field-wrap--sidebar .ai-chat-input.ds-textarea{display:block;width:100%;max-width:100%;min-width:0;border:none;box-shadow:none;min-height:64px;box-sizing:border-box}.ai-chat-composer-actions--sidebar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:0}.ai-chat-composer-hint{font-size:.625rem;color:var(--ds-text-tertiary, #a3a3a3);flex:1;min-width:120px;line-height:1.35}.ai-chat-composer--full-companion{padding:14px 16px;padding-bottom:max(14px,env(safe-area-inset-bottom));border-top:1px solid var(--color-border);box-shadow:0 -4px 20px #0000000a;gap:12px}.ai-chat-composer-field-wrap{display:flex;gap:10px;min-width:0}.ai-chat-composer-field-wrap--full{align-items:flex-end}.ai-chat-input-shell{flex:1;min-width:0;border:1px solid var(--ds-border-strong, #d4d4d4);border-radius:var(--radius-md);background:var(--color-secondary-bg);transition:border-color .12s ease,box-shadow .12s ease,background .12s ease}.ai-chat-input-shell:focus-within{border-color:var(--ds-accent-dark, #e6c300);background:var(--color-bg);box-shadow:0 0 0 2px #ffd7002e}.ai-chat-composer--full-companion .ai-chat-input.ds-textarea{min-height:88px;resize:vertical;border:none;box-shadow:none;width:100%}.ai-chat-dock-icon-btn{width:44px;height:44px;flex-shrink:0;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);font-size:1.25rem;line-height:1;cursor:not-allowed;opacity:.45;color:var(--color-text-secondary)}.ai-chat-send-arrow.ui-btn{width:44px;min-width:44px;height:44px;padding:0;flex-shrink:0;font-size:1.125rem;font-weight:700}.ai-chat-dock-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:0}.ai-chat-dock-meta-hint{font-size:.6875rem;color:var(--ds-text-tertiary, #a3a3a3);line-height:1.4;flex:1;min-width:200px}.ai-page-full--companion{background:var(--color-secondary-bg)}.ai-page-full--companion .ai-page-content{background:radial-gradient(1200px 500px at 10% -10%,rgba(255,215,0,.08),transparent 50%),var(--color-secondary-bg)}.ai-page-content>.ai-chat-shell--full-companion{max-width:800px;margin:0 auto;width:100%}@media (max-width: 640px){.ai-chat-suggestions-grid{grid-template-columns:1fr}}.ai-chat-panel-header{display:flex;flex-direction:column;align-items:stretch;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);flex-shrink:0}.ai-chat-panel-header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.ai-chat-panel-title-row{display:flex;align-items:center;gap:var(--spacing-sm);min-width:0;flex:1}.ai-chat-panel-title-row .ai-chat-panel-title,.ai-chat-panel-heading{min-width:0}.ai-chat-panel-title{font-weight:600;font-size:var(--font-size-lg, 1.125rem);color:var(--color-text)}.ai-chat-panel-context{font-size:var(--font-size-sm, .875rem);color:var(--color-text-secondary);line-height:1.45;white-space:normal;overflow-wrap:anywhere}.ai-chat-panel-header-actions{display:flex;flex-wrap:nowrap;gap:var(--spacing-xs);justify-content:flex-end;align-items:center;flex-shrink:0}.ai-chat-panel-icon-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);cursor:pointer;flex-shrink:0}.ai-chat-panel-icon-button:hover{background:var(--color-secondary-bg)}.ai-chat-body{flex:1;min-height:0;overflow-y:auto;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-secondary-bg);display:flex;flex-direction:column;gap:var(--spacing-md)}.ai-chat-empty{margin:auto 0;padding:var(--spacing-lg);border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg)}.ai-chat-empty-title{font-size:var(--font-size-lg, 1.125rem);font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-sm)}.ai-chat-empty-text{margin:0;color:var(--color-text-secondary);line-height:1.5}.ai-chat-message{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ai-chat-message--user{align-items:flex-end}.ai-chat-message-label{font-size:var(--font-size-xs, .75rem);color:var(--color-text-secondary)}.ai-chat-message-bubble{max-width:min(88%,720px);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text);line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.ai-chat-message--user .ai-chat-message-bubble{background:var(--color-accent);color:var(--color-bg);border-color:transparent}.ai-chat-message-bubble--muted{color:var(--color-text-secondary)}.ai-chat-loading{display:flex;align-items:center;gap:var(--spacing-sm)}.ai-chat-loading-text{flex:1}.ai-chat-loading-dots{display:inline-flex;align-items:center;gap:6px}.ai-chat-loading-dots span{width:7px;height:7px;border-radius:999px;background:currentColor;opacity:.28;animation:ai-chat-loading-bounce 1.2s infinite ease-in-out}.ai-chat-loading-dots span:nth-child(2){animation-delay:.16s}.ai-chat-loading-dots span:nth-child(3){animation-delay:.32s}@keyframes ai-chat-loading-bounce{0%,80%,to{transform:scale(.75);opacity:.25}40%{transform:scale(1);opacity:.9}}.ai-chat-message-bubble a{color:inherit}.ai-chat-composer{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border);background:var(--color-bg);flex-shrink:0}.ai-chat-input{min-height:88px;resize:vertical}.ai-chat-composer-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-md)}.ai-chat-error,.ai-chat-warning{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm, .875rem)}.ai-chat-error{background:color-mix(in srgb,var(--color-error) 10%,var(--color-bg));color:var(--color-error);border:1px solid color-mix(in srgb,var(--color-error) 35%,transparent)}.ai-chat-warning{background:color-mix(in srgb,var(--color-warning) 12%,var(--color-bg));color:var(--color-text);border:1px solid color-mix(in srgb,var(--color-warning) 30%,transparent)}.ai-page-full{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden;background:var(--color-secondary-bg)}.ai-page-toolbar{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);padding-top:max(var(--spacing-sm),env(safe-area-inset-top));border-bottom:1px solid var(--color-border);background:var(--color-secondary-bg);flex-shrink:0}.ai-page-content{flex:1;min-height:0;display:flex;flex-direction:column;padding:var(--spacing-lg);padding-bottom:max(var(--spacing-lg),env(safe-area-inset-bottom));background:var(--color-secondary-bg)}.ai-page-content>.ai-chat-shell{flex:1;min-height:0}.sidebar{width:240px;background-color:var(--color-bg);border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:fixed;height:100vh;overflow:visible;z-index:100;transition:width .2s ease}.sidebar-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border);min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);box-sizing:border-box}.sidebar-collapse-toggle{display:none;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);cursor:pointer;flex-shrink:0}.sidebar-collapse-toggle:hover{background:var(--color-secondary-bg)}.sidebar-header .logo{display:flex;align-items:center;gap:var(--spacing-md);flex:1;min-width:0}.logo-image{width:auto;height:36px;object-fit:contain;flex-shrink:0}.logo-image-mobile{display:none}.sidebar-nav{flex:1;min-height:0;padding:8px 6px;overflow-y:auto}.nav-section-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--color-text-secondary);padding:6px 10px 4px}.nav-subsection-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;margin:0;padding:6px 10px 4px;border:none;border-radius:var(--radius-sm);background:transparent;font-family:inherit;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--color-text-secondary);cursor:pointer;text-align:left;transition:background-color .2s ease,color .2s ease}.nav-subsection-toggle:hover{background-color:var(--color-secondary-bg);color:var(--color-text)}.nav-subsection-toggle-text{flex:1}.nav-subsection-toggle-chevron{flex-shrink:0;opacity:.65}.nav-subsection-toggle:hover .nav-subsection-toggle-chevron{opacity:1}.nav-divider{height:1px;background:var(--color-border);margin:8px 6px}.nav-nested-group{padding-left:8px;margin-bottom:2px;border-left:2px solid var(--color-border);margin-left:10px}.nav-item-nested{font-size:13px;padding-left:8px}.nav-item-nested.active{background-color:var(--color-accent);color:var(--color-text);font-weight:600}.nav-item{display:flex;align-items:center;gap:10px;padding:7px 10px;margin-bottom:1px;border-radius:var(--radius-sm);text-decoration:none;color:var(--color-text-secondary);font-size:13px;font-weight:500;transition:all .2s ease;cursor:pointer}.nav-item:hover{background-color:var(--color-secondary-bg)}.nav-item.active{background-color:var(--color-accent);color:var(--color-text);font-weight:600}.nav-item-profile{border:1px solid var(--color-border);background:var(--color-secondary-bg)}.nav-item-profile:hover{border-color:var(--color-accent-dark)}.nav-icon{margin-right:0;width:24px;text-align:center;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-icon img{width:20px;height:20px;display:block}.nav-text{flex:1}.sidebar-footer{padding:var(--spacing-md);border-top:1px solid var(--color-border);background-color:var(--color-secondary-bg);display:flex;flex-direction:column;gap:var(--spacing-sm);position:relative}.layout-main{flex:1;min-width:0;margin-left:240px;display:flex;flex-direction:column;min-height:100vh;transition:margin-left .2s ease;background-color:var(--color-secondary-bg)}.layout.layout--sidebar-collapsed:not(.layout--ai-full) .layout-main{margin-left:72px}.top-header{padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-bg);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:var(--spacing-md);min-height:84px;flex-wrap:wrap}.layout-main--top-header-hidden .top-header{display:none}.top-header-actions{display:flex;align-items:center;gap:var(--spacing-sm);margin-left:auto;flex-shrink:0}.sidebar-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);cursor:pointer;flex-shrink:0;transition:background .2s,border-color .2s}.sidebar-toggle:hover{background:var(--color-secondary-bg);border-color:var(--color-accent)}.top-header-title,.top-header h2{margin:0;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:28px;font-weight:600;color:var(--color-text);letter-spacing:var(--letter-spacing-tight);line-height:1;min-width:0}.main-content{flex:1;padding:var(--spacing-lg);background-color:var(--color-secondary-bg)}.sidebar-overlay{display:none}@media (max-width: 768px){body.sidebar-scroll-lock{overflow:hidden}.layout{max-width:100vw;overflow-x:hidden}.sidebar-toggle{display:flex}.layout-main--top-header-hidden .top-header{display:none}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:99;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;pointer-events:none}.sidebar-overlay.sidebar-overlay-visible{opacity:1;visibility:visible;pointer-events:auto}.sidebar{width:280px;max-width:85vw;left:0;transform:translate(-100%);transition:transform .25s ease;box-shadow:none}.sidebar.sidebar-open{transform:translate(0);box-shadow:4px 0 20px #00000026}.sidebar.sidebar--collapsed{width:280px;max-width:85vw}.sidebar.sidebar--collapsed .nav-text,.sidebar.sidebar--collapsed .nav-section-label,.sidebar.sidebar--collapsed .nav-subsection-toggle-text{display:block!important}.sidebar.sidebar--collapsed .sidebar-header{flex-direction:row!important;justify-content:space-between!important;min-height:84px;padding:var(--spacing-lg)}.sidebar-collapse-toggle{display:none!important}.sidebar-header .logo-image-desktop{display:none}.sidebar-header .logo-image-mobile{display:block;width:auto;height:28px}.nav-text,.nav-section-label{display:block}.nav-icon{margin-right:var(--spacing-md)}.nav-item{justify-content:flex-start;padding:var(--spacing-md)}.layout-main{margin-left:0;min-width:0;max-width:100%;overflow-x:hidden}.sidebar-footer{padding:var(--spacing-md)}.top-header-title{font-size:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-content{padding-left:var(--spacing-md);padding-right:var(--spacing-md);padding-bottom:max(var(--spacing-lg),env(safe-area-inset-bottom));min-width:0;max-width:100%;overflow-x:hidden}}@media (max-width: 992px){.layout-main,.main-content{min-width:0;max-width:100%}}@media (min-width: 769px){.sidebar-overlay{display:none!important}.sidebar-collapse-toggle{display:flex}.sidebar.sidebar--collapsed{width:72px}.sidebar.sidebar--collapsed .sidebar-header .logo,.sidebar.sidebar--collapsed .nav-text,.sidebar.sidebar--collapsed .nav-section-label,.sidebar.sidebar--collapsed .nav-subsection-toggle-text{display:none}.sidebar.sidebar--collapsed .nav-subsection-toggle{justify-content:center;padding:8px 6px}.sidebar.sidebar--collapsed .nav-item{justify-content:center;padding:10px 8px}.sidebar.sidebar--collapsed .nav-divider{margin:6px 4px}.sidebar.sidebar--collapsed .nav-nested-group{margin-left:0;padding-left:0;border-left:none}.sidebar.sidebar--collapsed .sidebar-header{flex-direction:column;justify-content:center;align-items:center;padding:var(--spacing-sm) var(--spacing-sm) 10px;min-height:60px;height:60px;box-sizing:border-box;gap:0}.sidebar.sidebar--collapsed .sidebar-footer{flex-shrink:0;padding:var(--spacing-sm) var(--spacing-sm) 10px;min-height:60px;height:60px;box-sizing:border-box;justify-content:center;align-items:center;gap:0}}@media (max-width: 768px){.layout.layout--ai-full .ai-chat-panel-title{font-size:1.25rem}.layout.layout--ai-full .ai-chat-empty-title{font-size:1.35rem}.layout.layout--ai-full .ai-chat-empty-text{font-size:1rem}.layout.layout--ai-full .ai-chat-message-bubble{font-size:1rem;padding:var(--spacing-md)}.layout.layout--ai-full .ai-chat-body{padding:var(--spacing-md)}.layout.layout--ai-full .ai-page-content{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.layout.layout--ai-full .ai-chat-input,.layout.layout--ai-full .ai-chat-input.ds-textarea{font-size:16px;line-height:1.45;min-height:96px}.layout.layout--ai-full .ai-chat-composer{margin:0 var(--spacing-sm);margin-bottom:max(var(--spacing-md),env(safe-area-inset-bottom));padding:var(--spacing-md);border-radius:var(--radius-lg);background:var(--color-bg);border:1px solid var(--color-border);box-shadow:0 2px 14px color-mix(in srgb,var(--color-text) 8%,transparent);flex-shrink:0}.layout.layout--ai-full .ai-chat-composer-actions .ui-btn{min-height:44px;padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}}.header,.header-content,.user-menu{display:none}.loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:18px;color:var(--color-text)}:root{--ds-font-mono: "SF Mono", "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--ds-text: #2d2d2d;--ds-text-secondary: #737373;--ds-text-tertiary: #a3a3a3;--ds-accent: #ffd700;--ds-accent-dark: #e6c300;--ds-accent-text: #4a3d00;--ds-accent-warm: #d4a800;--ds-accent-soft: rgba(255, 215, 0, .08);--ds-border: #ebebeb;--ds-border-strong: #d4d4d4;--ds-surface: #fafafa;--ds-bg: #ffffff;--ds-success: #10b981;--ds-success-dark: #2e7d32;--ds-success-bg: #e8f5e9;--ds-warning: #f59e0b;--ds-warning-dark: #f57f17;--ds-warning-bg: #fff8e1;--ds-error: #ef4444;--ds-error-bg: #fef2f2;--ds-info: #3b82f6;--ds-info-bg: #eff6ff;--ds-shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--ds-shadow-card: 0 1px 3px rgba(0, 0, 0, .04);--ds-shadow-md: 0 2px 8px rgba(0, 0, 0, .06);--ds-shadow-elevated: 0 4px 8px rgba(0, 0, 0, .1);--ds-shadow-focus: 0 0 0 2px rgba(255, 215, 0, .15);--ds-transition: .12s ease;--ds-transition-slow: .15s ease;--ds-height-lg: 36px;--ds-height-md: 32px;--ds-height-sm: 26px;--ds-radius-xs: 4px;--ds-radius-sm: 6px;--ds-radius-md: 8px;--ds-radius-lg: 10px;--ds-radius-xl: 12px;--ds-radius-full: 999px;--color-bg: var(--ds-bg);--color-text: var(--ds-text);--color-text-secondary: var(--ds-text-secondary);--color-text-tertiary: var(--ds-text-tertiary);--color-accent: var(--ds-accent);--color-accent-hover: var(--ds-accent-dark);--color-secondary-bg: var(--ds-surface);--color-border: var(--ds-border);--color-success: var(--ds-success);--color-error: var(--ds-error);--color-warning: var(--ds-warning);--color-info: var(--ds-info);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-heavy: 800;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--letter-spacing-wide: .02em;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: var(--ds-radius-xs);--radius-md: var(--ds-radius-md);--radius-lg: var(--ds-radius-xl)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);background-color:var(--ds-bg);color:var(--color-text);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:var(--font-weight-normal)}#root{min-height:100vh}.amount-mono,.contract-income-table td.amount{font-variant-numeric:tabular-nums;font-family:var(--ds-font-mono)}input,select,textarea{background-color:var(--color-bg)!important;color:var(--color-text)}button{color:var(--color-text)}button:not(.ui-btn){background-color:var(--color-bg)!important}button.ds-tab:not(.ui-btn),button.contract-income-tab:not(.ui-btn),button.department-team-tab:not(.ui-btn){background-color:transparent!important}button.department-team-tab-active:not(.ui-btn),button.department-team-tab:hover:not(.ui-btn){background-color:var(--ds-bg)!important}button.ui-btn-primary{background-color:var(--color-accent)!important;color:var(--ds-accent-text)!important}button.ui-btn-secondary{background-color:var(--color-bg)!important;color:var(--color-text)!important}button.ui-btn-danger{background-color:var(--ds-error-bg)!important;color:var(--ds-error)!important}button.ui-btn-ghost{background-color:transparent!important;color:var(--color-text-secondary)!important}button.ui-btn-outline{background-color:transparent!important;color:var(--color-text)!important}button.ui-btn-primary:hover:not(:disabled){background-color:var(--color-accent-hover)!important;border-color:var(--color-accent-hover)!important}button.ui-btn-secondary:hover:not(:disabled){background-color:var(--color-secondary-bg)!important;border-color:var(--color-text)!important}button.ui-btn-danger:hover:not(:disabled){background-color:var(--ds-error)!important;color:var(--ds-bg)!important;border-color:var(--ds-error)!important}button.ui-btn-ghost:hover:not(:disabled){background-color:#f0f0f0!important;color:var(--color-text)!important}button.ui-btn-outline:hover:not(:disabled){background-color:var(--color-text)!important;color:var(--color-bg)!important}button{min-height:var(--ds-height-lg);box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}select option{background-color:var(--color-bg)!important;color:var(--color-text)}input[type=checkbox],input[type=radio]{background-color:var(--color-bg)!important;accent-color:var(--color-accent);border:1px solid var(--color-border)}input[type=checkbox]:checked,input[type=radio]:checked{background-color:var(--color-accent)!important;border-color:var(--color-accent)}input:disabled,select:disabled,textarea:disabled{background-color:var(--color-secondary-bg)!important;color:var(--color-text-tertiary);opacity:.85;cursor:not-allowed}.info-item label,.ui-table thead th,.data-table thead th{text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}@media (max-width: 992px){html,body,#root{overflow-x:hidden;max-width:100vw}}@media (max-width: 768px){button{min-height:34px;font-size:12px}}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.text-center{text-align:center}.mt-1{margin-top:var(--spacing-sm)}.mt-2{margin-top:var(--spacing-md)}.mt-3{margin-top:var(--spacing-lg)}.mb-1{margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:var(--spacing-lg)}.ui-pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:8px 12px;flex-wrap:nowrap}.ui-pagination.ds-table-pagination{background:var(--ds-surface);border-top:1px solid var(--ds-border)}.ui-pagination .ds-pagination-info{font-size:11px;font-family:var(--ds-font-mono);color:var(--color-text-tertiary);font-variant-numeric:tabular-nums}@media (max-width: 768px){.ui-pagination.ds-table-pagination{flex-wrap:wrap}.ui-pagination.ds-table-pagination .ds-pagination-controls{margin-left:auto}}
