.gantt-table{border-collapse:separate;border-spacing:0}.gantt-table th,.gantt-table td{height:auto !important;min-height:54px;border-color:#f0f0f0 !important;vertical-align:middle}.gantt-staff-name-column{position:sticky;left:0;z-index:10;background-color:#fff !important;border-right:2px solid #dee2e6 !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:1rem !important;min-width:160px;max-width:200px}.gantt-nav-title-link{display:flex;align-items:center;flex-wrap:nowrap;white-space:nowrap;gap:0.25rem;max-width:100%;min-width:0;box-sizing:border-box;padding:0.2rem 0.35rem 0.2rem 0.4rem;margin:-0.2rem -0.35rem -0.2rem -0.4rem;border:1px solid transparent;border-radius:0.4rem;transition:background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease}.gantt-nav-title-link--popover{width:100%;display:flex !important;flex-flow:row nowrap !important;align-items:center !important}.gantt-nav-title-link__text{flex:1 1 auto;min-width:0;overflow:hidden;display:flex;align-items:center;flex-wrap:nowrap;gap:0.15rem;font-size:0.8125rem;transition:color 0.18s ease}.gantt-nav-title-link__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto}.gantt-nav-title-link__go{flex:0 0 auto;flex-shrink:0;align-self:center;width:1.45rem;height:1.45rem;border-radius:50%;font-size:0.58rem;color:#6c757d;background:rgba(248,249,250,0.95);border:1px solid rgba(0,0,0,0.08);box-shadow:0 1px 2px rgba(0,0,0,0.04);display:inline-flex;align-items:center;justify-content:center;transition:color 0.2s ease,background-color 0.2s ease,border-color 0.2s ease,transform 0.22s cubic-bezier(0.22, 1.2, 0.36, 1),box-shadow 0.2s ease}.gantt-nav-title-link:hover{background:rgba(13,110,253,0.06);border-color:rgba(13,110,253,0.14);box-shadow:0 0.15rem 0.5rem rgba(13,110,253,0.1)}.gantt-nav-title-link:hover .gantt-nav-title-link__text .fw-bold{color:#0d6efd !important}.gantt-nav-title-link:hover .gantt-nav-title-link__go{color:#fff;background:#0d6efd;border-color:#0d6efd;transform:translate(1px, -1px);box-shadow:0 0.2rem 0.5rem rgba(13,110,253,0.35)}.gantt-nav-title-link:focus-visible{outline:0;border-color:rgba(13,110,253,0.35);box-shadow:0 0 0 0.2rem rgba(13,110,253,0.2)}.gantt-nav-title-link--static{cursor:default;width:100%}.gantt-nav-name-cell{overflow:hidden;word-break:keep-all}.gantt-nav-name-cell .min-width-0,.gantt-nav-name-cell .gantt-nav-title-link{min-width:0;max-width:100%}.project-category-icon{color:var(--project-icon-color) !important}.popover.gantt-nav-popover{--bs-popover-max-width: 22rem;max-width:92vw;border:none;border-radius:10px;overflow:hidden;box-shadow:0 0.45rem 1.35rem rgba(13,110,253,0.14),0 0.15rem 0.4rem rgba(0,0,0,0.06)}.popover.gantt-nav-popover>.popover-arrow::before{border-right-color:rgba(13,110,253,0.08)}.popover.gantt-nav-popover .popover-header{padding:0.45rem 0.75rem;font-size:0.72rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:#0d6efd;background:linear-gradient(135deg, rgba(13,110,253,0.1) 0%, rgba(248,249,250,0.98) 100%);border-bottom:1px solid rgba(13,110,253,0.12)}.popover.gantt-nav-popover .popover-body{padding:0.65rem 0.8rem 0.75rem;background:#fff}.gantt-nav-popover__name{font-size:0.9rem;font-weight:700;line-height:1.35;color:#212529;word-break:break-word}.gantt-nav-popover__hint{margin-top:0.45rem;padding-top:0.45rem;border-top:1px dashed rgba(13,110,253,0.18);font-size:0.72rem;color:#6c757d}.gantt-nav-popover__stats{margin-top:0.5rem;padding-top:0.5rem;border-top:1px solid rgba(13,110,253,0.12);display:grid;gap:0.2rem}.gantt-nav-popover__stat-row{font-size:0.78rem;line-height:1.35}.gantt-nav-popover__stat-label{font-size:0.74rem}.gantt-nav-popover__header-label .fas{opacity:0.9}[data-bs-theme="dark"] .popover.gantt-nav-popover .popover-header{color:#7cb3ff;background:linear-gradient(135deg, rgba(13,110,253,0.22) 0%, rgba(33,37,41,0.98) 100%);border-bottom-color:rgba(124,179,255,0.2)}[data-bs-theme="dark"] .popover.gantt-nav-popover .popover-body{background:var(--bs-body-bg)}[data-bs-theme="dark"] .gantt-nav-popover__name{color:var(--bs-body-color)}[data-bs-theme="dark"] .gantt-nav-popover__hint{color:var(--bs-secondary-color);border-top-color:rgba(124,179,255,0.2)}.gantt-project-filter-plate{--gantt-filter-accent: #0d6efd;--gantt-filter-accent-soft: rgba(13, 110, 253, 0.1);--gantt-filter-border: rgba(13, 110, 253, 0.14);position:relative;border-radius:10px;background:linear-gradient(135deg, rgba(255,255,255,0.98) 0%, rgba(248,250,252,0.98) 100%);border:1px solid var(--gantt-filter-border);box-shadow:0 0.125rem 0.35rem rgba(13,110,253,0.08),0 0.05rem 0.15rem rgba(0,0,0,0.04);overflow:hidden}.gantt-project-filter-plate::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg, #4dabf7 0%, var(--gantt-filter-accent) 55%, #364fc7 100%)}.gantt-project-filter-plate__inner{display:flex;flex-wrap:wrap;align-items:center;gap:0.75rem 1rem;padding:0.65rem 0.85rem 0.65rem 1rem}.gantt-project-filter-plate__head{display:inline-flex;align-items:center;gap:0.55rem;flex-shrink:0;padding-right:0.85rem;margin-right:0.15rem;border-right:1px solid rgba(13,110,253,0.12)}.gantt-project-filter-plate__head-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;background:var(--gantt-filter-accent-soft);color:var(--gantt-filter-accent);font-size:0.78rem;box-shadow:inset 0 0 0 1px rgba(13,110,253,0.12)}.gantt-project-filter-plate__head-title{font-size:0.78rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:#495057}.gantt-project-filter-plate__fields{display:flex;flex-wrap:wrap;align-items:flex-end;gap:0.65rem 0.85rem;flex:1 1 280px;min-width:0}.gantt-project-filter-plate__field{flex:1 1 180px;min-width:0;max-width:260px}.gantt-project-filter-plate__label{display:block;margin-bottom:0.25rem;font-size:0.68rem;font-weight:700;letter-spacing:0.03em;color:#6c757d}.gantt-project-filter-plate__select-wrap{display:flex;align-items:center;gap:0.45rem;min-height:calc(1.5em + 0.5rem + 2px);padding-left:0.72rem;padding-right:0.35rem;border:1px solid rgba(13,110,253,0.18);border-radius:999px;background-color:#fff;box-shadow:inset 0 1px 2px rgba(0,0,0,0.03);transition:border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease}.gantt-project-filter-plate__select-wrap:focus-within{border-color:rgba(13,110,253,0.55);box-shadow:0 0 0 0.2rem rgba(13,110,253,0.14),inset 0 1px 2px rgba(0,0,0,0.03)}.gantt-project-filter-plate__select-wrap:hover{border-color:rgba(13,110,253,0.32)}.gantt-project-filter-plate__select-icon{flex-shrink:0;width:0.85rem;text-align:center;color:rgba(13,110,253,0.72);font-size:0.72rem;pointer-events:none}.gantt-project-filter-plate__select-wrap .gantt-project-filter-plate__select.form-select{flex:1 1 auto;min-width:0;width:100%;padding-left:0;padding-right:1.75rem;border:0;border-radius:0;background-color:transparent;box-shadow:none;outline:none}.gantt-project-filter-plate__select-wrap .gantt-project-filter-plate__select.form-select:hover,.gantt-project-filter-plate__select-wrap .gantt-project-filter-plate__select.form-select:focus{border:0;box-shadow:none;outline:none}.gantt-project-filter-plate__select-wrap .gantt-project-filter-plate__input.form-control{flex:1 1 auto;min-width:0;padding-left:0;padding-right:0.65rem;font-size:0.8125rem;background:transparent}.gantt-project-filter-plate__select-wrap .gantt-project-filter-plate__input.form-control:focus{box-shadow:none}.gantt-project-filter-plate__field--search{flex:1.4 1 220px;max-width:320px}.gantt-project-filter-plate__meta{display:inline-flex;align-items:center;gap:0.55rem;margin-left:auto;flex-shrink:0}.gantt-project-filter-plate__summary{display:inline-flex;align-items:baseline;gap:0.2rem;min-height:2rem;padding:0.35rem 0.85rem;border-radius:999px;background:rgba(255,255,255,0.92);border:1px solid rgba(13,110,253,0.12);box-shadow:inset 0 1px 0 rgba(255,255,255,0.8);font-variant-numeric:tabular-nums;white-space:nowrap}.gantt-project-filter-plate__summary-label{font-size:0.68rem;font-weight:600;color:#6c757d;letter-spacing:0.02em}.gantt-project-filter-plate__summary-count{font-size:1rem;font-weight:800;line-height:1;color:var(--gantt-filter-accent)}.gantt-project-filter-plate__summary-sep,.gantt-project-filter-plate__summary-total{font-size:0.82rem;font-weight:600;color:#868e96}.gantt-project-filter-plate__summary-unit{font-size:0.68rem;font-weight:600;color:#868e96}.gantt-project-filter-plate__reset{display:inline-flex;align-items:center;gap:0.35rem;padding-inline:0.85rem;border-radius:999px;border:1px solid rgba(108,117,125,0.28);background:#fff;color:#495057;font-size:0.78rem;font-weight:600;opacity:0.45;transition:opacity 0.18s ease, border-color 0.18s ease, color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease}.gantt-project-filter-plate__reset:not(:disabled){opacity:1}.gantt-project-filter-plate__reset:not(:disabled):hover{border-color:rgba(13,110,253,0.35);color:var(--gantt-filter-accent);background:rgba(13,110,253,0.04)}.gantt-project-filter-plate--active{--gantt-filter-border: rgba(13, 110, 253, 0.28);box-shadow:0 0.2rem 0.65rem rgba(13,110,253,0.12),0 0.05rem 0.15rem rgba(0,0,0,0.04)}.gantt-project-filter-plate--active .gantt-project-filter-plate__head-icon{background:rgba(13,110,253,0.16);box-shadow:inset 0 0 0 1px rgba(13,110,253,0.22),0 0 0 3px rgba(13,110,253,0.08)}.gantt-project-filter-plate--active .gantt-project-filter-plate__summary{border-color:rgba(13,110,253,0.24);background:linear-gradient(135deg, rgba(13,110,253,0.08) 0%, rgba(255,255,255,0.95) 100%)}[data-bs-theme="dark"] .gantt-project-filter-plate{--gantt-filter-accent: #74c0fc;--gantt-filter-accent-soft: rgba(116, 192, 252, 0.14);--gantt-filter-border: rgba(116, 192, 252, 0.22);background:linear-gradient(135deg, rgba(33,37,41,0.98) 0%, rgba(26,30,34,0.98) 100%)}[data-bs-theme="dark"] .gantt-project-filter-plate__head{border-right-color:rgba(116,192,252,0.16)}[data-bs-theme="dark"] .gantt-project-filter-plate__head-title{color:var(--bs-secondary-color)}[data-bs-theme="dark"] .gantt-project-filter-plate__select-wrap{background-color:var(--bs-body-bg);border-color:rgba(116,192,252,0.24)}[data-bs-theme="dark"] .gantt-project-filter-plate__select-wrap .gantt-project-filter-plate__select.form-select{background-color:transparent;border:0;color:var(--bs-body-color)}[data-bs-theme="dark"] .gantt-project-filter-plate__select-wrap .gantt-project-filter-plate__select.form-select:focus{border:0;box-shadow:none}[data-bs-theme="dark"] .gantt-project-filter-plate__summary{background:rgba(255,255,255,0.04);border-color:rgba(116,192,252,0.18)}[data-bs-theme="dark"] .gantt-project-filter-plate__reset{background:var(--bs-body-bg);border-color:rgba(255,255,255,0.14);color:var(--bs-body-color)}@media (max-width: 767.98px){.gantt-project-filter-plate__inner{align-items:stretch}.gantt-project-filter-plate__head{border-right:none;padding-right:0;margin-right:0}.gantt-project-filter-plate__meta{width:100%;margin-left:0;justify-content:space-between}.gantt-project-filter-plate__field{max-width:none}}.gantt-project-name-column{position:sticky;left:0;z-index:10;background-color:#fff !important;border-right:2px solid #dee2e6 !important;padding-left:1rem !important;min-width:180px;max-width:250px;word-break:break-all;line-height:1.3}.gantt-cell-container{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:8px 2px;min-height:54px;width:100%;position:relative}.bg-company-holiday{background-color:#e9ecef !important}[data-bs-theme="dark"] .bg-company-holiday{background-color:#343a40 !important;color:#dee2e6 !important}[data-bs-theme="dark"] th.bg-company-holiday.text-muted,[data-bs-theme="dark"] th.bg-company-holiday .date-num,[data-bs-theme="dark"] th.bg-company-holiday .date-wday{color:#ced4da !important}.bg-holiday-red{background-color:#fff5f5 !important}.bg-saturday-blue{background-color:#f0f4ff !important}.text-danger{color:#fa5252 !important}.text-primary{color:#4c6ef5 !important}.text-muted{color:#868e96 !important}.today-border{border-left:2px solid #0d6efd !important;border-right:2px solid #0d6efd !important}.gantt-bar-link{display:block;width:100%;text-decoration:none !important;position:relative}.gantt-day-nav-link{color:inherit;text-decoration:none !important;transition:background-color 0.15s ease, transform 0.1s ease;border-radius:4px}.gantt-day-nav-link:hover{background-color:rgba(13,110,253,0.12);color:inherit;transform:scale(1.05)}.gantt-bar{position:relative;min-height:28px;width:100%;border-radius:4px;display:flex;align-items:center;transition:all 0.2s ease}.gantt-badge{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);font-size:0.65rem;line-height:1;font-weight:900;color:#ffffff !important;background-color:#389e0d !important;min-width:18px;height:18px;padding:0 4px;border-radius:9px;display:flex;align-items:center;justify-content:center;border:1px solid #237804;box-shadow:0 1px 2px rgba(0,0,0,0.2);z-index:5;white-space:nowrap}.gantt-bar-solo{background-color:#fff1f0 !important;border:1px solid #ffa39e !important;color:#cf1322 !important;justify-content:flex-start;padding:0 8px}.gantt-bar-team{background-color:#f6ffed !important;border:1px solid #b7eb8f !important;color:#389e0d !important;justify-content:flex-start;padding:0 8px}.gantt-badge-count{position:absolute;right:4px;font-size:0.65rem;color:#fff !important;font-weight:900;background-color:#bfbfbf;padding:1px 5px;border-radius:4px;line-height:1}.gantt-bar-solo .gantt-badge-count{background-color:#ff4d4f}.app-page-header{margin-bottom:1rem}.app-page-header--split{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0.75rem;position:relative;z-index:1033}.app-page-header--split-top{align-items:flex-start}.staff-scope-header-row{position:relative;z-index:1033}.app-page-title{font-size:1.05rem;font-weight:700;color:#212529;margin-bottom:0;line-height:1.35}.app-page-title>.fas,.app-page-title>.far,.app-page-title>.fab{margin-right:0.5rem}.app-page-header__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:0.75rem;margin-left:auto}.app-page-lead{font-size:0.875rem;color:#6c757d;margin:0.25rem 0 0;line-height:1.45}.app-page-subnav-block{margin-bottom:1rem;position:relative;z-index:1031}ul.staff-catalog-tabs.nav-tabs{width:100%;margin-bottom:1rem;background:#fff;border:1px solid var(--bs-border-color);border-radius:0.5rem;box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075);overflow:hidden}ul.project-catalog-tabs.nav-tabs{width:100%;margin-bottom:1rem;background:#fff;border:1px solid var(--bs-border-color);border-radius:0.5rem;box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075);overflow:hidden}ul.project-catalog-tabs.nav-tabs .nav-link{color:#495057;border-radius:0}ul.project-catalog-tabs.nav-tabs .nav-link.active{font-weight:700}ul.staff-catalog-tabs.nav-tabs .nav-link{color:#495057;border-radius:0}ul.staff-catalog-tabs.nav-tabs .nav-link.active{font-weight:700}ul.project-show-tabs.nav-tabs{width:100%;margin-bottom:1rem;background:#fff;border:1px solid var(--bs-border-color);border-radius:0.5rem;box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075);overflow:hidden}ul.project-show-tabs.nav-tabs .nav-link{color:#495057;border-radius:0}ul.project-show-tabs.nav-tabs .nav-link.active{font-weight:700}ul.admin-company-tabs.nav-tabs{margin-bottom:0;border-bottom:1px solid var(--bs-border-color)}ul.admin-company-tabs.nav-tabs .nav-link{color:#495057;border-radius:0.375rem 0.375rem 0 0;padding:0.5rem 0.85rem;margin-bottom:-1px}ul.admin-company-tabs.nav-tabs .nav-link:hover{color:#212529;border-color:transparent}ul.admin-company-tabs.nav-tabs .nav-link.active{color:#0d6efd;font-weight:700;background-color:#fff;border-color:var(--bs-border-color) var(--bs-border-color) #fff}.admin-company-users-toolbar{border-bottom:1px solid rgba(0,0,0,0.06)}.admin-company-users-table .table{margin-bottom:0}.staff-limit-usage-plate{min-width:260px}.planning-nav-block,.projects-nav-block,.projects-yearly-nav-block{display:flex;flex-direction:column;align-items:flex-start;gap:0;position:relative;z-index:1031}.planning-nav-block,.projects-nav-block{gap:0.65rem}.planning-nav-block .planning-month-nav,.projects-nav-block .projects-month-nav{margin-top:0}.app-page-subnav-block--sticky,.planning-nav-block--sticky{position:sticky;top:var(--tactics-sticky-nav-offset, 5rem);z-index:1032}.app-gantt-body-scroll,.planning-gantt-body-scroll{max-height:var(--app-gantt-scroll-height, 60vh);overflow:auto;-webkit-overflow-scrolling:touch}.app-gantt-body-scroll .table-responsive,.app-gantt-body-scroll .gantt-scroll-container,.app-gantt-body-scroll .catalog-table-scroll,.planning-gantt-body-scroll .table-responsive,.planning-gantt-body-scroll .gantt-scroll-container{overflow:visible !important}.app-gantt-body-scroll .gantt-table thead th,.app-gantt-body-scroll .gantt-v2-table thead th,.planning-gantt-body-scroll .gantt-table thead th,.planning-gantt-body-scroll .gantt-v2-table thead th{position:sticky;top:0;z-index:32}.app-gantt-body-scroll .projects-assignment-list-table thead th{position:sticky;top:0;z-index:32;background-color:var(--bs-table-bg, #f8f9fa);background-clip:padding-box}.app-gantt-body-scroll .gantt-table thead th:nth-child(-n + 2),.app-gantt-body-scroll .gantt-v2-table thead th:nth-child(-n + 2),.planning-gantt-body-scroll .gantt-table thead th:nth-child(-n + 2),.planning-gantt-body-scroll .gantt-v2-table thead th:nth-child(-n + 2){z-index:42}.app-gantt-body-scroll .projects-assignment-list-table thead .catalog-sticky-name{z-index:42}.app-projects-list-bulk-toolbar{width:100%;padding:0.55rem 0.85rem;background-color:#fff;border:1px solid rgba(0,0,0,0.06);border-radius:0.375rem;box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075)}.app-projects-list-bulk-toolbar--sticky{position:sticky;top:calc(var(--tactics-sticky-nav-offset, 5rem) + var(--app-page-subnav-height, 0px));z-index:1031}.admin-company-detail-title{text-align:center;margin-bottom:0.25rem}.admin-company-detail-title__name{line-height:1.35}.admin-company-detail-title__id-wrap{margin-top:0.4rem}.admin-company-detail-title__id{font-size:0.65rem;font-weight:600;letter-spacing:0.03em;padding:0.2rem 0.45rem}.admin-company-contract-badge{display:inline-flex;align-items:center;gap:0.35rem;font-weight:700;letter-spacing:0.04em;line-height:1.2;border-radius:999px;white-space:nowrap}.admin-company-contract-badge--compact{padding:0.35rem 0.65rem;font-size:0.75rem}.admin-company-contract-badge--compact .admin-company-contract-badge__icon{font-size:0.82rem}.admin-company-contract-badge--compact.admin-company-contract-badge--regular .admin-company-contract-badge__icon{color:#e8c56a}.admin-company-contract-badge--detail{display:flex;width:100%;justify-content:center;padding:0.75rem 1rem;font-size:0.95rem;border-radius:0.75rem;gap:0.55rem}.admin-company-contract-badge--regular{color:#f0d78c;background:linear-gradient(135deg, #0b2e1c 0%, #14532d 42%, #1a6b3a 100%);border:1px solid rgba(212,175,55,0.48);box-shadow:0 4px 14px rgba(11,46,28,0.28),inset 0 1px 0 rgba(255,255,255,0.1)}.admin-company-contract-badge--regular .admin-company-contract-badge__icon{color:#e8c56a;filter:drop-shadow(0 1px 2px rgba(0,0,0,0.3))}.admin-company-contract-badge--regular .admin-company-contract-badge__sub{border-left-color:rgba(212,175,55,0.38);color:rgba(240,215,140,0.95);text-transform:none;letter-spacing:0.02em}.admin-company-contract-badge--detail.admin-company-contract-badge--regular{flex-direction:row;align-items:center}.admin-company-contract-badge--detail.admin-company-contract-badge--regular .admin-company-contract-badge__icon{font-size:1.35rem}.admin-company-contract-badge__sub{margin-left:0.15rem;padding-left:0.55rem;border-left:1px solid rgba(248,231,184,0.35);font-size:0.72rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:rgba(248,231,184,0.88)}.admin-company-contract-badge--trial{color:#7a4e00;background:linear-gradient(135deg, #fff8e6 0%, #ffe8a3 100%);border:1px solid #f0cc62;box-shadow:0 2px 8px rgba(122,78,0,0.08)}.admin-company-contract-badge--trial .admin-company-contract-badge__icon{color:#b8860b}.admin-company-contract-badge--trial .admin-company-contract-badge__sub{border-left-color:rgba(122,78,0,0.28);color:rgba(90,58,0,0.92);text-transform:none;letter-spacing:0.02em}.admin-company-contract-badge--trial-expired{color:#5c636a;background:linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);border:1px solid #ced4da;box-shadow:none}.admin-company-contract-badge--trial-expired .admin-company-contract-badge__icon{color:#868e96}.admin-company-contract-badge--trial-expired .admin-company-contract-badge__sub{border-left-color:rgba(108,117,125,0.28);color:rgba(73,80,87,0.92);text-transform:none;letter-spacing:0.02em}.admin-company-contract-badge--cancelled{color:#f8f9fa;background:linear-gradient(135deg, #495057 0%, #6c757d 48%, #868e96 100%);border:1px solid rgba(248,249,250,0.25);box-shadow:0 4px 14px rgba(73,80,87,0.18),inset 0 1px 0 rgba(255,255,255,0.08)}.admin-company-contract-badge--cancelled .admin-company-contract-badge__icon{color:#dee2e6}.admin-company-contract-badge--cancelled .admin-company-contract-badge__sub{border-left-color:rgba(248,249,250,0.28);color:rgba(248,249,250,0.92);text-transform:none;letter-spacing:0.02em}.admin-company-payment-badge{display:inline-flex;align-items:center;gap:0.35rem;font-weight:700;letter-spacing:0.04em;line-height:1.2;border-radius:999px;white-space:nowrap}.admin-company-payment-badge--compact{padding:0.35rem 0.65rem;font-size:0.75rem}.admin-company-payment-badge--detail{padding:0.45rem 0.85rem;font-size:0.85rem}.admin-company-payment-badge__sub{font-size:0.72em;font-weight:600;padding-left:0.35rem;border-left:1px solid rgba(0,0,0,0.12);letter-spacing:0.02em}.admin-company-payment-badge--dir{color:#0b5ed7;background:linear-gradient(135deg, #e7f1ff 0%, #cfe2ff 100%);border:1px solid #9ec5fe}.admin-company-payment-badge--agc{color:#664d03;background:linear-gradient(135deg, #fff8e6 0%, #ffecb5 100%);border:1px solid #ffda6a}.admin-company-payment-badge--ptn{color:#146c43;background:linear-gradient(135deg, #e8f5ee 0%, #d1e7dd 100%);border:1px solid #a3cfbb}.admin-company-payment-badge--inv{color:#5a3e8a;background:linear-gradient(135deg, #f3eefc 0%, #e2d9f3 100%);border:1px solid #c5b3e6}.admin-company-payment-badge--unknown{color:#495057;background:#f8f9fa;border:1px solid #dee2e6}.admin-company-trial-status-plate{margin-bottom:1rem;padding:0.85rem 1rem;border-radius:0.75rem;border:1px solid transparent}.admin-company-trial-status-plate--active{color:#5c4a00;background:linear-gradient(135deg, #fff8e6 0%, #fff3cd 100%);border-color:#f0cc62}.admin-company-trial-status-plate--active .admin-company-trial-status-plate__title{color:#5c4a00}.admin-company-trial-status-plate--active .admin-company-trial-status-plate__meta{color:rgba(92,74,0,0.72)}.admin-company-trial-status-plate--expired{color:#495057;background:linear-gradient(135deg, #f8f9fa 0%, #eef1f4 100%);border-color:#ced4da}.admin-company-trial-status-plate--expired .admin-company-trial-status-plate__title{color:#6c757d}.admin-company-trial-status-plate--expired .admin-company-trial-status-plate__meta{color:#868e96}.admin-companies-filter-reset{display:inline-block;width:100%;padding:0.375rem 0.75rem;border:1px solid #dee2e6;border-radius:0.375rem;background:#f8f9fa;color:#adb5bd;font-size:1rem;font-weight:600;line-height:1.5;text-align:center;transition:background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease}.admin-companies-filter-reset:disabled{cursor:not-allowed;opacity:0.72}.admin-companies-filter-reset--active:not(:disabled){border-color:#0d6efd;background:linear-gradient(135deg, #0d6efd 0%, #0a58ca 100%);color:#fff;box-shadow:0 0.25rem 0.65rem rgba(13,110,253,0.35)}.admin-companies-filter-reset--active:not(:disabled):hover,.admin-companies-filter-reset--active:not(:disabled):focus{border-color:#0a58ca;background:linear-gradient(135deg, #0b5ed7 0%, #084298 100%);color:#fff;box-shadow:0 0.35rem 0.85rem rgba(13,110,253,0.42)}.admin-nav-company-plates{display:flex;flex-direction:column;gap:0.55rem}.admin-nav-company-plate{position:relative;border-radius:0.7rem;padding:0.65rem 0.7rem 0.7rem;background:rgba(255,255,255,0.04);overflow:hidden}.admin-nav-company-plate::before{content:"";position:absolute;inset:0 auto 0 0;width:3px}.admin-nav-company-plate__head{display:flex;align-items:flex-start;gap:0.45rem;margin-bottom:0.35rem}.admin-nav-company-plate__icon{display:inline-flex;align-items:center;justify-content:center;width:1.55rem;height:1.55rem;border-radius:999px;font-size:0.72rem;flex-shrink:0}.admin-nav-company-plate__title{font-size:0.72rem;font-weight:700;letter-spacing:0.03em;line-height:1.25}.admin-nav-company-plate__metric{display:flex;align-items:baseline;justify-content:flex-end;gap:0.2rem;width:100%;margin-bottom:0.45rem}.admin-nav-company-plate__count{font-size:1.35rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.admin-nav-company-plate__unit{font-size:0.72rem;font-weight:600;opacity:0.85}.admin-nav-company-plate__link{display:inline-flex;align-items:center;justify-content:center;gap:0.25rem;font-size:0.72rem;font-weight:700;line-height:1.2;text-decoration:none;border-radius:999px;padding:0.38rem 0.65rem;transition:background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease}.admin-nav-company-plate__link--regular{color:#fff8e6;border:1px solid rgba(232,197,106,0.72);background:linear-gradient(135deg, #1a6b3a 0%, #0b2e1c 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.14),0 2px 6px rgba(0,0,0,0.28)}.admin-nav-company-plate__link--regular:hover,.admin-nav-company-plate__link--regular:focus{color:#ffffff;border-color:rgba(255,236,179,0.9);background:linear-gradient(135deg, #218838 0%, #14532d 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.18),0 3px 8px rgba(0,0,0,0.32)}.admin-nav-company-plate--regular{border:1px solid rgba(212,175,55,0.42);box-shadow:inset 0 0 0 1px rgba(26,107,58,0.28),0 3px 10px rgba(0,0,0,0.22)}.admin-nav-company-plate--regular::before{background:linear-gradient(180deg, #e8c56a 0%, #1a6b3a 55%, #0b2e1c 100%)}.admin-nav-company-plate--regular .admin-nav-company-plate__icon{color:#e8c56a;background:rgba(26,107,58,0.35);box-shadow:inset 0 0 0 1px rgba(212,175,55,0.35)}.admin-nav-company-plate--regular .admin-nav-company-plate__title,.admin-nav-company-plate--regular .admin-nav-company-plate__count{color:#f0d78c}.admin-nav-company-plate--regular .admin-nav-company-plate__unit{color:rgba(240,215,140,0.82)}.admin-nav-company-plate--trial{border:1px solid rgba(240,204,98,0.45);box-shadow:inset 0 0 0 1px rgba(184,134,11,0.18),0 3px 10px rgba(0,0,0,0.2)}.admin-nav-company-plate--trial::before{background:linear-gradient(180deg, #ffe8a3 0%, #f0cc62 55%, #b8860b 100%)}.admin-nav-company-plate--trial .admin-nav-company-plate__icon{color:#b8860b;background:rgba(255,232,163,0.18);box-shadow:inset 0 0 0 1px rgba(240,204,98,0.35)}.admin-nav-company-plate--trial .admin-nav-company-plate__title,.admin-nav-company-plate--trial .admin-nav-company-plate__count{color:#ffe8a3}.admin-nav-company-plate--trial .admin-nav-company-plate__unit{color:rgba(255,232,163,0.82)}.admin-nav-company-plate__link--trial{color:#5c4a00;border:1px solid rgba(240,204,98,0.85);background:linear-gradient(135deg, #ffe8a3 0%, #f0cc62 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.45),0 2px 6px rgba(0,0,0,0.22)}.admin-nav-company-plate__link--trial:hover,.admin-nav-company-plate__link--trial:focus{color:#3d3000;border-color:rgba(255,236,179,0.95);background:linear-gradient(135deg, #fff3cd 0%, #ffe08a 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.55),0 3px 8px rgba(0,0,0,0.26)}.admin-nav-company-plate--trial-expired{border:1px solid rgba(173,181,189,0.42);box-shadow:inset 0 0 0 1px rgba(108,117,125,0.2),0 3px 10px rgba(0,0,0,0.18)}.admin-nav-company-plate--trial-expired::before{background:linear-gradient(180deg, #e9ecef 0%, #adb5bd 55%, #6c757d 100%)}.admin-nav-company-plate--trial-expired .admin-nav-company-plate__icon{color:#ced4da;background:rgba(108,117,125,0.28);box-shadow:inset 0 0 0 1px rgba(173,181,189,0.28)}.admin-nav-company-plate--trial-expired .admin-nav-company-plate__title,.admin-nav-company-plate--trial-expired .admin-nav-company-plate__count{color:#dee2e6}.admin-nav-company-plate--trial-expired .admin-nav-company-plate__unit{color:rgba(222,226,230,0.78)}.admin-nav-company-plate__link--trial-expired{color:#f8f9fa;border:1px solid rgba(206,212,218,0.72);background:linear-gradient(135deg, #6c757d 0%, #495057 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.12),0 2px 6px rgba(0,0,0,0.22)}.admin-nav-company-plate__link--trial-expired:hover,.admin-nav-company-plate__link--trial-expired:focus{color:#ffffff;border-color:rgba(233,236,239,0.88);background:linear-gradient(135deg, #868e96 0%, #5c636a 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.16),0 3px 8px rgba(0,0,0,0.28)}.admin-nav-section-label{font-size:0.62rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.38);margin-bottom:0.45rem;padding-left:0.15rem}.admin-nav-company-plate__metric--split{justify-content:space-between;align-items:flex-end;gap:0.35rem}.admin-nav-company-plate__metric-primary{display:flex;align-items:baseline;gap:0.2rem}.admin-nav-company-plate__metric-secondary{font-size:0.68rem;font-weight:700;line-height:1.2;text-align:right;font-variant-numeric:tabular-nums;opacity:0.92}.admin-nav-company-plate--open{border:1px solid rgba(255,107,107,0.42);box-shadow:inset 0 0 0 1px rgba(220,53,69,0.18),0 3px 10px rgba(0,0,0,0.2)}.admin-nav-company-plate--open::before{background:linear-gradient(180deg, #ffb3b3 0%, #dc3545 55%, #842029 100%)}.admin-nav-company-plate--open .admin-nav-company-plate__icon{color:#ff8787;background:rgba(220,53,69,0.28);box-shadow:inset 0 0 0 1px rgba(255,107,107,0.35)}.admin-nav-company-plate--open .admin-nav-company-plate__title,.admin-nav-company-plate--open .admin-nav-company-plate__count{color:#ffc9c9}.admin-nav-company-plate--open .admin-nav-company-plate__unit,.admin-nav-company-plate--open .admin-nav-company-plate__metric-secondary{color:rgba(255,201,201,0.88)}.admin-nav-company-plate__link--open{color:#fff5f5;border:1px solid rgba(255,107,107,0.72);background:linear-gradient(135deg, #dc3545 0%, #842029 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.14),0 2px 6px rgba(0,0,0,0.28)}.admin-nav-company-plate__link--open:hover,.admin-nav-company-plate__link--open:focus{color:#ffffff;border-color:rgba(255,201,201,0.9);background:linear-gradient(135deg, #e35d6a 0%, #a52834 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.18),0 3px 8px rgba(0,0,0,0.32)}.admin-nav-company-plate--paid-month{border:1px solid rgba(81,207,102,0.42);box-shadow:inset 0 0 0 1px rgba(25,135,84,0.18),0 3px 10px rgba(0,0,0,0.2)}.admin-nav-company-plate--paid-month::before{background:linear-gradient(180deg, #b2f2bb 0%, #40c057 55%, #087f5b 100%)}.admin-nav-company-plate--paid-month .admin-nav-company-plate__icon{color:#69db7c;background:rgba(25,135,84,0.28);box-shadow:inset 0 0 0 1px rgba(81,207,102,0.35)}.admin-nav-company-plate--paid-month .admin-nav-company-plate__title,.admin-nav-company-plate--paid-month .admin-nav-company-plate__count{color:#d3f9d8}.admin-nav-company-plate--paid-month .admin-nav-company-plate__unit,.admin-nav-company-plate--paid-month .admin-nav-company-plate__metric-secondary{color:rgba(211,249,216,0.88)}.admin-nav-company-plate__link--paid-month{color:#ebfbee;border:1px solid rgba(81,207,102,0.72);background:linear-gradient(135deg, #198754 0%, #087f5b 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.14),0 2px 6px rgba(0,0,0,0.28)}.admin-nav-company-plate__link--paid-month:hover,.admin-nav-company-plate__link--paid-month:focus{color:#ffffff;border-color:rgba(178,242,187,0.9);background:linear-gradient(135deg, #2f9e44 0%, #0ca678 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.18),0 3px 8px rgba(0,0,0,0.32)}.admin-nav-company-plate--plans{border:1px solid rgba(110,168,254,0.42);box-shadow:inset 0 0 0 1px rgba(13,110,253,0.18),0 3px 10px rgba(0,0,0,0.2)}.admin-nav-company-plate--plans::before{background:linear-gradient(180deg, #a5d8ff 0%, #339af0 55%, #1864ab 100%)}.admin-nav-company-plate--plans .admin-nav-company-plate__icon{color:#74c0fc;background:rgba(13,110,253,0.28);box-shadow:inset 0 0 0 1px rgba(110,168,254,0.35)}.admin-nav-company-plate--plans .admin-nav-company-plate__title{color:#d0ebff}.admin-nav-plan-rows{list-style:none;margin:0 0 0.5rem;padding:0;display:flex;flex-direction:column;gap:0.28rem}.admin-nav-plan-row{display:flex;align-items:center;justify-content:space-between;gap:0.5rem;padding:0.28rem 0.35rem;border-radius:0.45rem;background:rgba(255,255,255,0.04)}.admin-nav-plan-row--stopped{opacity:0.72}.admin-nav-plan-row__name{font-size:0.72rem;font-weight:700;color:#e7f5ff;letter-spacing:0.02em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-nav-plan-row__metric{display:inline-flex;align-items:baseline;gap:0.15rem;flex-shrink:0}.admin-nav-plan-row__count{font-size:1rem;font-weight:800;line-height:1;color:#a5d8ff;font-variant-numeric:tabular-nums}.admin-nav-plan-row__unit{font-size:0.65rem;font-weight:600;color:rgba(165,216,255,0.82)}.admin-nav-company-plate__link--plans{color:#e7f5ff;border:1px solid rgba(110,168,254,0.72);background:linear-gradient(135deg, #0d6efd 0%, #1864ab 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.14),0 2px 6px rgba(0,0,0,0.28)}.admin-nav-company-plate__link--plans:hover,.admin-nav-company-plate__link--plans:focus{color:#ffffff;border-color:rgba(165,216,255,0.9);background:linear-gradient(135deg, #228be6 0%, #1971c2 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.18),0 3px 8px rgba(0,0,0,0.32)}.admin-system-admin-badge{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;flex-shrink:0;color:#e8c56a;background:linear-gradient(135deg, #0b2e1c 0%, #14532d 100%);border:1px solid rgba(212,175,55,0.45);box-shadow:inset 0 1px 0 rgba(255,255,255,0.12);font-size:0.85rem}.admin-system-admin-badge--detail{width:3.25rem;height:3.25rem;font-size:1.35rem}.admin-system-admin-card{position:relative;overflow:hidden}.admin-system-admin-card::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg, #0b2e1c 0%, #14532d 55%, #c9a227 100%);box-shadow:0 1px 0 rgba(212,175,55,0.35)}.admin-company-license-badge{display:inline-flex;align-items:center;gap:0.35rem;font-weight:700;letter-spacing:0.04em;line-height:1.2;border-radius:999px;white-space:nowrap}.admin-company-license-badge--compact{padding:0.35rem 0.65rem;font-size:0.75rem}.admin-company-license-badge--detail{display:flex;width:100%;justify-content:center;padding:0.75rem 1rem;font-size:0.95rem;border-radius:0.75rem;gap:0.55rem}.admin-company-license-badge--active{color:#e8fff3;background:linear-gradient(135deg, #0b4d31 0%, #157a4e 45%, #1d9c62 100%);border:1px solid rgba(186,255,214,0.4);box-shadow:0 4px 14px rgba(11,77,49,0.22),inset 0 1px 0 rgba(255,255,255,0.14)}.admin-company-license-badge--active .admin-company-license-badge__icon{color:#9ef0c0;filter:drop-shadow(0 1px 2px rgba(0,0,0,0.2))}.admin-company-license-badge--suspended{color:#ffecec;background:linear-gradient(135deg, #5a1f24 0%, #8b2d35 48%, #a83842 100%);border:1px solid rgba(255,196,196,0.35);box-shadow:0 4px 14px rgba(90,31,36,0.2),inset 0 1px 0 rgba(255,255,255,0.1)}.admin-company-license-badge--suspended .admin-company-license-badge__icon{color:#ffb4b4}.admin-company-license-badge--cancelled{color:#f8f9fa;background:linear-gradient(135deg, #495057 0%, #6c757d 48%, #868e96 100%);border:1px solid rgba(248,249,250,0.25);box-shadow:0 4px 14px rgba(73,80,87,0.18),inset 0 1px 0 rgba(255,255,255,0.08)}.admin-company-license-badge--cancelled .admin-company-license-badge__icon{color:#dee2e6}.admin-company-license-badge--detail .admin-company-license-badge__icon{font-size:1.35rem}.admin-company-license-badge__sub{margin-left:0.15rem;padding-left:0.55rem;border-left:1px solid rgba(255,255,255,0.28);font-size:0.72rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;opacity:0.92}.admin-company-stat-plates{display:grid;gap:0.65rem}.admin-company-stat-plate{display:flex;align-items:center;gap:0.9rem;width:100%;padding:0.9rem 1rem;border-radius:0.75rem;box-shadow:0 2px 10px rgba(15,23,42,0.06)}.admin-company-stat-plate__icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:0.65rem;font-size:1.15rem;flex-shrink:0}.admin-company-stat-plate__body{min-width:0;flex:1 1 auto}.admin-company-stat-plate__label{font-size:0.78rem;font-weight:700;letter-spacing:0.02em;opacity:0.88;white-space:nowrap}.admin-company-stat-plate__metric{display:flex;align-items:baseline;gap:0.2rem;margin-top:0.1rem}.admin-company-stat-plate__value{font-size:1.65rem;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}.admin-company-stat-plate__unit{font-size:0.95rem;font-weight:600;opacity:0.85}.admin-company-stat-plate--staff{color:#1e4a8c;background:linear-gradient(135deg, #f3f7ff 0%, #e3edff 100%);border:1px solid #c9daf5}.admin-company-stat-plate--staff .admin-company-stat-plate__icon{color:#2f6fd1;background:rgba(47,111,209,0.12)}.admin-company-stat-plate--projects{color:#1f6b42;background:linear-gradient(135deg, #f1fbf5 0%, #dff5e8 100%);border:1px solid #bfe8cf}.admin-company-stat-plate--projects .admin-company-stat-plate__icon{color:#2f9d5c;background:rgba(47,157,92,0.14)}.admin-company-index-stat{display:inline-flex;align-items:center;gap:0.3rem;padding:0.38rem 0.62rem;border-radius:0.55rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2;white-space:nowrap;box-shadow:0 1px 6px rgba(15,23,42,0.05)}.admin-company-index-stat__icon{font-size:0.78rem;opacity:0.9}.admin-company-index-stat__value{font-size:0.88rem;font-weight:800}.admin-company-index-stat__sep{font-size:0.75rem;font-weight:600;opacity:0.55}.admin-company-index-stat__limit{font-size:0.82rem;font-weight:700;opacity:0.82}.admin-company-index-stat__unit{font-size:0.68rem;font-weight:600;opacity:0.78}.admin-company-index-stat--staff{color:#1e4a8c;background:linear-gradient(135deg, #f3f7ff 0%, #e3edff 100%);border:1px solid #c9daf5}.admin-company-index-stat--staff .admin-company-index-stat__icon{color:#2f6fd1}.admin-company-index-stat--projects{color:#1f6b42;background:linear-gradient(135deg, #f1fbf5 0%, #dff5e8 100%);border:1px solid #bfe8cf}.admin-company-index-stat--projects .admin-company-index-stat__icon{color:#2f9d5c}.company-trial-nav-trigger{border:1px solid #f0cc62;background:linear-gradient(135deg, #fff8e6 0%, #ffe8a3 100%);color:#7a4e00 !important;font-weight:700;letter-spacing:0.02em;box-shadow:0 1px 6px rgba(122,78,0,0.12);white-space:nowrap}.company-trial-nav-trigger:hover,.company-trial-nav-trigger:focus{color:#5c3a00 !important;background:linear-gradient(135deg, #fff3d1 0%, #ffdf7a 100%)}.company-trial-status-modal{border-radius:12px}.company-trial-status-modal__facts dt{font-weight:600}.projects-list-merge-target-option{position:relative;margin:0;padding:0.75rem 0.75rem 0.75rem 2.25rem;overflow:visible}.projects-list-merge-target-option .form-check-input{float:none;margin-left:0;margin-top:0;position:absolute;left:0.75rem;top:0.875rem}.planning-nav-block,.projects-nav-block,.projects-yearly-nav-block,.app-page-subnav-block{margin-bottom:1rem}.projects-nav-toolbar{align-items:center}.projects-nav-toolbar__actions{margin-left:auto}.planning-month-nav,.projects-month-nav,.projects-yearly-fy-nav,.staffs-month-nav{width:100%;display:flex;justify-content:center;margin-top:0.5rem;padding:0.55rem 0.85rem;background-color:#fff;border:1px solid rgba(0,0,0,0.06);border-radius:0.375rem;box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075)}.staffs-month-nav{margin-top:0;position:relative;z-index:1031}.planning-month-nav__controls,.projects-month-nav__controls,.projects-yearly-fy-nav__controls,.staffs-month-nav__controls{box-shadow:none !important}.planning-month-nav__controls .btn-white,.projects-month-nav__controls .btn-white,.projects-yearly-fy-nav__controls .btn-white,.staffs-month-nav__controls .btn-white{background-color:#fff;border-color:#dee2e6}.projects-yearly-fy-nav__label{border-width:1px !important;border-style:solid !important;border-color:#dee2e6 !important}.projects-yearly-category-accordion{margin-bottom:1.25rem}.projects-yearly-category-chart{width:100%;height:360px;min-height:360px}@media (min-width: 992px){.projects-yearly-category-chart{height:420px;min-height:420px}}.projects-yearly-grid{display:grid;grid-template-columns:repeat(1, minmax(0, 1fr));gap:0.85rem}@media (min-width: 576px){.projects-yearly-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media (min-width: 992px){.projects-yearly-grid{grid-template-columns:repeat(3, minmax(0, 1fr));gap:1rem}}@media (min-width: 1200px){.projects-yearly-grid{grid-template-columns:repeat(4, minmax(0, 1fr))}}.projects-yearly-plate{display:flex;flex-direction:column;min-height:100%;border:1px solid var(--bs-border-color-translucent, #dee2e6);border-radius:14px;background:linear-gradient(165deg, rgba(var(--bs-primary-rgb), 0.06) 0%, #fff 38%);box-shadow:0 0.125rem 0.35rem rgba(15,23,42,0.06);overflow:hidden;transition:transform 0.18s ease, box-shadow 0.18s ease}.projects-yearly-plate:hover{transform:translateY(-2px);box-shadow:0 0.35rem 0.85rem rgba(15,23,42,0.1)}.projects-yearly-plate--current{border-color:rgba(var(--bs-primary-rgb), 0.45);box-shadow:0 0.25rem 0.75rem rgba(var(--bs-primary-rgb), 0.14)}.projects-yearly-plate--future{opacity:0.82}.projects-yearly-plate__head{display:flex;align-items:flex-start;justify-content:space-between;gap:0.5rem;padding:0.85rem 0.95rem 0.55rem}.projects-yearly-plate__title-wrap{display:flex;align-items:baseline;gap:0.35rem}.projects-yearly-plate__title{font-size:1.35rem;font-weight:800;line-height:1.1;color:#212529;letter-spacing:-0.02em}.projects-yearly-plate__calendar-year{font-size:0.72rem;font-weight:600;color:#6c757d}.projects-yearly-plate__badge{font-size:0.68rem;font-weight:700}.projects-yearly-plate__stats{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0.45rem;padding:0 0.95rem 0.65rem}.projects-yearly-stat{border:1px solid rgba(var(--bs-secondary-rgb), 0.12);border-radius:10px;background:rgba(255,255,255,0.72);padding:0.45rem 0.55rem}.projects-yearly-stat__label{display:block;font-size:0.68rem;font-weight:700;color:#6c757d;text-transform:uppercase;letter-spacing:0.03em;margin-bottom:0.15rem}.projects-yearly-stat__val{display:block;font-size:1.05rem;font-weight:800;line-height:1.15;color:#212529}.projects-yearly-stat__val--accent{color:var(--bs-primary)}.projects-yearly-stat__unit{font-size:0.72rem;font-weight:700;margin-left:0.1rem;color:#6c757d}.projects-yearly-plate__paid-leave{padding:0 0.95rem 0.55rem}.projects-yearly-plate__paid-leave-stat{border-top:3px solid var(--bs-info)}.projects-yearly-plate__progress-wrap{padding:0 0.95rem 0.75rem;margin-top:auto}.projects-yearly-plate__progress-label,.projects-yearly-plate__progress-rate{font-size:0.72rem;font-weight:700}.projects-yearly-plate__progress{height:0.45rem;border-radius:999px;background-color:rgba(var(--bs-secondary-rgb), 0.12)}.projects-yearly-plate__progress .progress-bar{border-radius:999px}.projects-yearly-plate__meta{margin-top:0.45rem;font-size:0.72rem;color:#6c757d}.projects-yearly-plate__foot{padding:0.65rem 0.95rem 0.95rem;border-top:1px solid rgba(var(--bs-border-color-translucent, #dee2e6), 0.8);background:rgba(255,255,255,0.55)}.staff-yearly-paid-leave__inner{background:linear-gradient(165deg, rgba(var(--bs-primary-rgb), 0.06) 0%, #fff 42%)}.staff-yearly-paid-leave__title{font-size:1rem}.staff-yearly-paid-leave__grid{display:grid;grid-template-columns:repeat(1, minmax(0, 1fr));gap:0.75rem}@media (min-width: 576px){.staff-yearly-paid-leave__grid{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media (min-width: 992px){.staff-yearly-paid-leave__grid{grid-template-columns:repeat(4, minmax(0, 1fr))}}.staff-yearly-paid-leave__stat{border:1px solid rgba(var(--bs-secondary-rgb), 0.12);border-radius:14px;background:rgba(255,255,255,0.82);padding:0.85rem 0.95rem;min-height:100%}.staff-yearly-paid-leave__stat--cap{border-top:3px solid var(--bs-primary)}.staff-yearly-paid-leave__stat--used{border-top:3px solid var(--bs-info)}.staff-yearly-paid-leave__stat--projects{border-top:3px solid var(--bs-secondary)}.staff-yearly-paid-leave__stat--man-days{border-top:3px solid var(--bs-success)}.staff-yearly-paid-leave__stat-label{font-size:0.68rem;font-weight:700;color:#6c757d;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:0.35rem}.staff-yearly-paid-leave__stat-hint{display:block;font-size:0.62rem;font-weight:600;text-transform:none;letter-spacing:0;color:#868e96;margin-top:0.1rem}.staff-yearly-paid-leave__stat-val{font-size:1.35rem;font-weight:800;line-height:1.15;color:#212529}.staff-yearly-paid-leave__stat-val--accent{color:var(--bs-success)}.staff-yearly-paid-leave__stat-unit{font-size:0.78rem;font-weight:700;margin-left:0.1rem;color:#6c757d}.staff-yearly-paid-leave__stat-sub,.staff-yearly-paid-leave__stat-meta{font-size:0.75rem;color:#6c757d;margin-top:0.25rem}.staff-yearly-paid-leave__stat-meta{padding-top:0.35rem;margin-top:0.45rem;border-top:1px solid rgba(var(--bs-border-color-translucent, #dee2e6), 0.8)}.staff-yearly-category-accordion{margin-bottom:1.25rem}.staff-yearly-category-charts{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 992px){.staff-yearly-category-charts{grid-template-columns:repeat(2, minmax(0, 1fr))}}.staff-yearly-category-chart-panel{border:1px solid rgba(var(--bs-border-color-translucent, #dee2e6), 0.9);border-radius:14px;background:linear-gradient(165deg, rgba(var(--bs-primary-rgb), 0.04) 0%, #fff 45%);padding:0.85rem 0.85rem 0.65rem}.staff-yearly-category-chart-panel__title{font-size:0.92rem;font-weight:800;margin-bottom:0.15rem;color:#212529}.staff-yearly-category-chart-panel__lead{margin-bottom:0.5rem}.staff-yearly-category-chart{width:100%;height:320px;min-height:320px}@media (min-width: 768px){.staff-yearly-category-chart{height:360px;min-height:360px}}.reports-staff-summary-name{display:inline-flex;align-items:center;gap:0.15rem;max-width:100%}.btn.period-nav-anchor{color:#fff;background-color:var(--bs-primary);border-color:var(--bs-primary);font-weight:600}.btn.period-nav-anchor:hover,.btn.period-nav-anchor:focus{color:#fff;background-color:#0b5ed7;border-color:#0a58ca}.btn.period-nav-anchor:focus-visible{color:#fff;background-color:#0b5ed7;border-color:#0a58ca;box-shadow:0 0 0 0.25rem rgba(13,110,253,0.35)}.month-nav-dropdown-toggle.dropdown-toggle::after{margin-left:0.35em;vertical-align:0.15em}.month-nav-dropdown-menu{min-width:6.75rem;max-height:16rem;overflow-y:auto;--bs-dropdown-zindex: 1032;z-index:1032}.month-nav-dropdown-menu .dropdown-item.active,.month-nav-dropdown-menu .dropdown-item:active{background-color:var(--bs-primary);color:#fff}.projects-display-scope-dropdown__toggle.dropdown-toggle::after{margin-left:0.35em;vertical-align:0.15em}.projects-display-scope-menu{min-width:11rem;--bs-dropdown-zindex: 1032;z-index:1032}.projects-display-scope-menu .dropdown-item.active,.projects-display-scope-menu .dropdown-item:active{background-color:var(--bs-primary);color:#fff}.projects-display-scope-menu .dropdown-item.active .text-muted,.projects-display-scope-menu .dropdown-item:active .text-muted{color:rgba(255,255,255,0.82) !important}.report-chart-shell{position:relative;width:100%}.report-chart-empty-wrap{min-height:inherit}.report-chart-empty{min-height:12rem}.reports-yearly-month-link{display:inline-flex;align-items:center;justify-content:flex-end;gap:0.3rem;font-weight:600;font-size:0.8125rem;color:var(--bs-primary);text-decoration:none;padding:0.15rem 0.35rem;border-radius:0.375rem;border:1px solid rgba(13,110,253,0.25);background:rgba(13,110,253,0.06);transition:background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease}.reports-yearly-month-link:hover{color:#0a58ca;background:rgba(13,110,253,0.12);border-color:rgba(13,110,253,0.45)}.reports-yearly-month-link i{font-size:0.62rem;opacity:0.85}.accordion{--bs-accordion-active-bg: rgba(13, 110, 253, 0.1);--bs-accordion-active-color: #0a58ca;--bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.2);--tactics-accordion-body-padding-top: 1rem}.accordion .accordion-button{font-weight:600;background-color:#fff;color:#495057;box-shadow:none}.accordion .accordion-button.collapsed.text-primary{color:var(--bs-primary) !important}.accordion .accordion-button:not(.collapsed){color:var(--bs-accordion-active-color) !important;background-color:var(--bs-accordion-active-bg) !important;box-shadow:inset 0 -1px 0 rgba(13,110,253,0.12)}.accordion .accordion-button:not(.collapsed) .text-dark,.accordion .accordion-button:not(.collapsed) .text-secondary{color:inherit !important}.accordion .accordion-button:focus{border-color:rgba(13,110,253,0.35);box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion .accordion-button:not(.collapsed):focus{box-shadow:inset 0 -1px 0 rgba(13,110,253,0.12),var(--bs-accordion-btn-focus-box-shadow)}.accordion .accordion-body{padding-top:var(--tactics-accordion-body-padding-top) !important}.accordion .accordion-body--chart{padding:var(--tactics-accordion-body-padding-top) 1rem 0.75rem;background-color:#fff}.accordion .accordion-chart-lead{margin:0 0 1rem;padding:0.7rem 0.95rem;font-size:0.8125rem;line-height:1.55;color:#5c6670;background:linear-gradient(90deg, rgba(13,110,253,0.08) 0%, rgba(13,110,253,0.02) 100%);border-left:3px solid rgba(13,110,253,0.42);border-radius:0 0.5rem 0.5rem 0}#project-gantt.tab-pane,#staff-gantt.tab-pane{width:100%}.planning-viewport[data-view-mode="kanban"]{--planning-kanban-viewport-height: calc(
        100dvh - 15.5rem - var(--app-footer-height, 44px) - var(--app-footer-gap, 0.65rem)
    );height:var(--planning-kanban-viewport-height);max-height:var(--planning-kanban-viewport-height);overflow:hidden;display:flex;flex-direction:column}.planning-viewport[data-view-mode="kanban"]>.tab-content{flex:1 1 auto;min-height:0;height:auto !important;overflow:hidden;display:flex;flex-direction:column}.planning-viewport[data-view-mode="kanban"] #brainstorm.planning-kanban-pane{flex:1 1 auto;min-height:0;height:auto !important;overflow:hidden;display:flex !important;flex-direction:column}#brainstorm .planning-kanban-layout{display:flex !important;align-items:stretch !important;background:#fff;border:1px solid #dee2e6;border-radius:8px;overflow:hidden;flex:1 1 auto;min-height:0;height:auto !important;max-height:100% !important}#brainstorm.planning-kanban-pane{min-height:0}.planning-assign-hint{flex-shrink:0;background:linear-gradient(90deg, rgba(var(--bs-primary-rgb), 0.1) 0%, rgba(var(--bs-primary-rgb), 0.02) 100%);color:var(--bs-body-color)}.planning-kanban-layout--assign-pick .planning-drop-zone{cursor:copy}.planning-drop-zone--assign-ready{outline:2px dashed rgba(var(--bs-primary-rgb), 0.45);outline-offset:-2px}.planning-staff-list-item--selected{outline:2px solid var(--bs-primary);outline-offset:-2px;box-shadow:0 0 0 3px rgba(var(--bs-primary-rgb), 0.18)}.planning-kanban-toolbar{flex-shrink:0;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:0.5rem;min-height:auto !important;height:auto !important;max-height:none !important;padding:0.5rem 1rem;background:#fff;border:none !important;border-radius:0 !important;box-shadow:none !important;z-index:20}.planning-kanban-toolbar__actions{display:flex;flex-direction:row;align-items:center;gap:0.5rem;flex-shrink:0}.planning-kanban-scroll{flex:1 1 auto;min-height:0;overflow-y:auto}.planning-kanban-changes-alert{position:fixed;left:0;right:0;bottom:calc(var(--app-footer-height, 44px) + var(--app-footer-gap, 0.65rem));z-index:1032;margin:0;padding:0.65rem 1rem;border:none;border-top:1px solid rgba(220,53,69,0.35);border-radius:0;background:linear-gradient(180deg, rgba(255,245,245,0.98) 0%, #fff5f5 100%);color:#b02a37;font-size:0.875rem;font-weight:700;text-align:center;box-shadow:0 -0.35rem 1rem rgba(220,53,69,0.14),0 0.15rem 0.5rem rgba(0,0,0,0.06);pointer-events:none}body.has-report-lock-suspend-banner .planning-kanban-changes-alert{bottom:calc(var(--app-footer-height, 44px) + 3.25rem + var(--app-footer-gap, 0.65rem))}.planning-sidebar-wrapper{width:250px;min-width:250px;flex:0 0 250px;border-right:1px solid #dee2e6;background-color:#f8f9fa;display:flex;flex-direction:column;align-self:stretch;min-height:0;max-height:100%;overflow:hidden}.planning-sidebar-header{flex:0 0 auto;flex-shrink:0;z-index:3;padding:0.75rem 1rem;background-color:#f8f9fa;border-bottom:1px solid #dee2e6}.planning-sidebar-body{flex:1 1 auto;min-height:0;max-height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.staffSource{flex:0 0 auto;min-height:min-content;user-select:none;-webkit-user-select:none}.planning-sidebar-body::-webkit-scrollbar,.staffSource::-webkit-scrollbar{width:6px}.planning-sidebar-body::-webkit-scrollbar-thumb,.staffSource::-webkit-scrollbar-thumb{background-color:#ced4da;border-radius:3px}.staff-free{border-left:5px solid #dc3545 !important;background-color:#fff5f5 !important;font-weight:bold;color:#b02a37}.staff-assigned{border-left:5px solid #198754 !important;background-color:#f0fff4 !important;opacity:0.8}.status-badge{font-size:0.7rem;margin-left:auto;padding:2px 5px;border-radius:4px}.status-free{color:#0d6efd}.status-assigned{color:#6c757d}.planning-main-content{flex:1 1 auto;min-width:0;min-height:0;max-height:100%;align-self:stretch;background-color:#fff;display:flex;flex-direction:column;overflow:hidden;position:relative}.planning-project-card{display:block !important;height:auto !important;border:1px solid #eee;box-shadow:0 2px 4px rgba(0,0,0,0.05);align-self:start;margin-bottom:1rem}.card-header-project{background:linear-gradient(135deg, rgba(13,110,253,0.1) 0%, rgba(248,249,250,0.98) 100%) !important;border-top:none !important;border-bottom:1px solid rgba(13,110,253,0.12) !important;padding:0 1rem !important;height:48px !important;min-height:48px !important;max-height:48px !important;display:flex !important;align-items:center !important;justify-content:space-between !important}[data-bs-theme="dark"] .card-header-project{background:linear-gradient(135deg, rgba(13,110,253,0.22) 0%, rgba(33,37,41,0.98) 100%) !important;border-bottom-color:rgba(124,179,255,0.2) !important}.card-header-project span,.card-header-project a.btn,.card-header-project .planning-project-card__title{display:flex !important;flex-flow:row nowrap !important;align-items:center !important;line-height:1 !important;margin:0 !important}.card-header-project .planning-project-card__title.gantt-nav-title-link--popover{background:transparent !important;border-color:transparent !important;box-shadow:none !important;cursor:pointer}.card-header-project .planning-project-card__title.gantt-nav-title-link--popover:hover{background:rgba(13,110,253,0.06) !important;border-color:rgba(13,110,253,0.14) !important;box-shadow:0 0.15rem 0.5rem rgba(13,110,253,0.1)}.card-header-project .planning-project-card__title.gantt-nav-title-link--popover[aria-expanded="true"]{background:rgba(13,110,253,0.1) !important;border-color:rgba(13,110,253,0.35) !important;box-shadow:0 0 0 0.15rem rgba(13,110,253,0.14)}.gantt-nav-title-link--popover{border-color:rgba(13,110,253,0.2) !important;background:rgba(13,110,253,0.05);box-shadow:0 1px 2px rgba(13,110,253,0.08);cursor:pointer}.gantt-nav-title-link--popover .gantt-nav-title-link__go{color:#0d6efd;background:rgba(13,110,253,0.1);border-color:rgba(13,110,253,0.22)}.gantt-nav-title-link--popover[aria-expanded="true"]{background:rgba(13,110,253,0.1) !important;border-color:rgba(13,110,253,0.35) !important;box-shadow:0 0 0 0.15rem rgba(13,110,253,0.14)}.gantt-nav-title-link--popover[aria-expanded="true"] .gantt-nav-title-link__go{color:#fff;background:#0d6efd;border-color:#0d6efd}.planning-project-card__title.gantt-nav-title-link{margin:0;max-width:100%;width:100%}[data-bs-theme="dark"] .card-header-project .planning-project-card__title-inner{color:var(--bs-body-color) !important}.planning-project-card__title-inner{min-width:0;max-width:100%;font-size:0.9rem}.card-footer-project{background-color:#ffffff !important;border-top:1px solid #f8f9fa !important;padding:0.45rem 1rem !important;min-height:36px !important;height:auto !important;display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:space-between !important;gap:0.5rem}.planning-project-man-days-badges{max-width:100%}.planning-project-man-days-badge{font-size:0.68rem;font-weight:700;white-space:nowrap}.planning-project-man-days-badge--current{background-color:var(--bs-success-bg-subtle) !important;color:var(--bs-success-text-emphasis) !important;border:1px solid rgba(var(--bs-success-rgb), 0.35) !important}.planning-drop-zone.drop-zone{background-color:#fff;border-color:#dee2e6 !important;transition:background-color 0.18s ease, border-color 0.18s ease}.planning-drop-zone.drop-zone.planning-drop-zone--empty{background:linear-gradient(165deg, rgba(var(--bs-danger-rgb), 0.1) 0%, rgba(var(--bs-danger-rgb), 0.03) 42%, #fff 100%);border-color:rgba(var(--bs-danger-rgb), 0.32) !important}[data-bs-theme="dark"] .planning-drop-zone.drop-zone.planning-drop-zone--empty{background:linear-gradient(165deg, rgba(var(--bs-danger-rgb), 0.18) 0%, rgba(var(--bs-danger-rgb), 0.06) 42%, var(--bs-body-bg) 100%);border-color:rgba(var(--bs-danger-rgb), 0.38) !important}.planning-project-man-days-badge--pending.planning-project-man-days-badge--increase{background-color:#cfe2ff !important;color:#084298 !important;border-color:#9ec5fe !important}.planning-project-man-days-badge--pending.planning-project-man-days-badge--decrease{background-color:#f8d7da !important;color:#842029 !important;border-color:#f1aeb5 !important}.project-duration{font-size:0.7rem;color:#6c757d;white-space:nowrap;display:flex;align-items:center}.btn-detail-link{font-size:0.7rem;font-weight:bold;color:#0d6efd;text-decoration:none !important;white-space:nowrap;display:flex;align-items:center}.planning-staff-list-item{padding:10px 15px;background:white;border-bottom:1px solid #eee;cursor:grab;font-size:0.9rem;display:flex;align-items:center;justify-content:space-between;gap:0.5rem;transition:background 0.2s;user-select:none;-webkit-user-select:none}.planning-staff-list-item:active,.planning-staff-list-item.sortable-chosen{cursor:grabbing}.planning-staff-list-item__main{flex:1 1 auto;user-select:none;-webkit-user-select:none}.planning-staff-man-days-badge{flex-shrink:0;min-width:1.75rem;font-size:0.75rem;font-weight:600}.planning-staff-list-item:hover{background-color:#e9ecef}.planning-staff-badge{display:inline-flex;align-items:center;gap:0.35rem;padding:4px 10px;margin:4px;background:linear-gradient(165deg, rgba(var(--bs-success-rgb), 0.12) 0%, rgba(var(--bs-success-rgb), 0.03) 42%, #fff 100%);border-radius:6px;border:1px solid rgba(var(--bs-success-rgb), 0.35);font-size:0.85rem;font-weight:500;box-shadow:0 2px 4px rgba(var(--bs-success-rgb), 0.08)}[data-bs-theme="dark"] .planning-staff-badge{background:linear-gradient(165deg, rgba(var(--bs-success-rgb), 0.2) 0%, rgba(var(--bs-success-rgb), 0.06) 42%, var(--bs-body-bg) 100%);border-color:rgba(var(--bs-success-rgb), 0.42)}.planning-staff-badge__man-days{flex-shrink:0;min-width:1.5rem;font-size:0.7rem;font-weight:600;background-color:var(--bs-success-bg-subtle) !important;color:var(--bs-success-text-emphasis) !important;border:1px solid rgba(var(--bs-success-rgb), 0.35) !important}.unassign-btn{margin-left:8px;color:#dc3545;cursor:pointer;opacity:0.6}.unassign-btn:hover{opacity:1}.sortable-ghost{opacity:0.3 !important;background-color:#e9ecef !important;border:2px dashed #007bff !important;user-select:none !important;-webkit-user-select:none !important}.sortable-chosen{cursor:grabbing;box-shadow:0 8px 20px rgba(0,0,0,0.15) !important;user-select:none !important;-webkit-user-select:none !important}.sortable-drag,.sortable-fallback{user-select:none !important;-webkit-user-select:none !important;cursor:grabbing !important}body.planning-staff-dragging,body.planning-staff-dragging *{user-select:none !important;-webkit-user-select:none !important}@media (max-width: 991.98px){.planning-sidebar-wrapper{display:none !important}.planning-main-content{width:100% !important;flex:1}}.col-1-7{width:14.28%;flex:0 0 14.28%}.nav-pills .nav-link{color:#495057;font-weight:500;font-size:0.85rem}.nav-pills .nav-link.active{color:#fff !important;background-color:#0d6efd}.btn-white{background-color:#fff;border:1px solid #dee2e6}.project-month-nav.btn-group>.btn,.project-month-nav.btn-group>a.btn{margin-left:0 !important;position:relative;z-index:0}.project-month-nav.btn-group>.btn:focus,.project-month-nav.btn-group>.btn:focus-visible,.project-month-nav.btn-group>a.btn:hover{z-index:2}.project-month-nav.btn-group>.btn:not(:first-child),.project-month-nav.btn-group>a.btn:not(:first-child){border-left:1px solid var(--bs-border-color, #dee2e6) !important}.project-month-nav.btn-group>.btn:first-child,.project-month-nav.btn-group>a.btn:first-child{border-top-left-radius:var(--bs-border-radius, 0.375rem) !important;border-bottom-left-radius:var(--bs-border-radius, 0.375rem) !important}.project-month-nav.btn-group>.btn:last-child,.project-month-nav.btn-group>a.btn:last-child{border-top-right-radius:var(--bs-border-radius, 0.375rem) !important;border-bottom-right-radius:var(--bs-border-radius, 0.375rem) !important}.project-month-nav.btn-group>.btn:not(:first-child):not(:last-child),.project-month-nav.btn-group>a.btn:not(:first-child):not(:last-child){border-radius:0 !important}.project-month-nav.btn-group>.btn-light.project-month-nav__display{border-color:var(--bs-border-color, #dee2e6) !important;border-style:solid !important;border-width:1px !important;background-color:var(--bs-light, #f8f9fa)}.portal-leave-fy-nav.btn-group>.btn,.portal-leave-fy-nav.btn-group>a.btn{margin-left:0 !important;position:relative;z-index:0}.portal-leave-fy-nav.btn-group>.btn:focus,.portal-leave-fy-nav.btn-group>.btn:focus-visible,.portal-leave-fy-nav.btn-group>a.btn:hover{z-index:2}.portal-leave-fy-nav.btn-group>.btn:not(:first-child),.portal-leave-fy-nav.btn-group>a.btn:not(:first-child){border-left:1px solid var(--bs-border-color, #dee2e6) !important}.portal-leave-fy-nav.btn-group>.btn:first-child,.portal-leave-fy-nav.btn-group>a.btn:first-child{border-top-left-radius:var(--bs-border-radius, 0.375rem) !important;border-bottom-left-radius:var(--bs-border-radius, 0.375rem) !important}.portal-leave-fy-nav.btn-group>.btn:last-child,.portal-leave-fy-nav.btn-group>a.btn:last-child{border-top-right-radius:var(--bs-border-radius, 0.375rem) !important;border-bottom-right-radius:var(--bs-border-radius, 0.375rem) !important}.portal-leave-fy-nav.btn-group>.btn:not(:first-child):not(:last-child),.portal-leave-fy-nav.btn-group>a.btn:not(:first-child):not(:last-child){border-radius:0 !important}.portal-leave-fy-nav.btn-group>.btn-light.portal-leave-fy-nav__label{border-color:var(--bs-border-color, #dee2e6) !important;border-style:solid !important;border-width:1px !important;background-color:var(--bs-light, #f8f9fa)}body.portal-layout .portal-period-nav.btn-group>.btn,body.portal-layout .portal-period-nav.btn-group>a.btn{font-size:0.9375rem;padding:0.5rem 0.85rem;line-height:1.25;min-height:2.4rem;display:inline-flex;align-items:center;justify-content:center}body.portal-layout .portal-period-nav__label,body.portal-layout .portal-period-nav .portal-monthly-nav__title,body.portal-layout .portal-period-nav .project-month-nav__display{font-size:0.975rem;min-width:7.5rem !important;padding-left:1rem !important;padding-right:1rem !important}body.portal-layout .portal-period-nav.btn-group>.btn-outline-secondary,body.portal-layout .portal-period-nav.btn-group>a.btn-outline-secondary{min-width:2.5rem}.is-today{border:2px solid #0d6efd !important;z-index:5;background-color:#f0f7ff !important}.blink-text{animation:blink-animation 1.5s infinite;font-weight:bold;color:#0d6efd !important}@keyframes blink-animation{0%{opacity:1.0}50%{opacity:0.3}100%{opacity:1.0}}.gantt-legend-report-bar{width:20px;height:12px;background-color:#d9f7be;border:1px solid #dee2e6;border-radius:2px;flex-shrink:0}.gantt-legend-report-bar--submitted{box-shadow:inset 0 4px 0 0 #146c43}.gantt-legend-report-bar--missing{box-shadow:inset 0 4px 0 0 #b02a37}.legend-box.is-today{width:18px;height:18px;background-color:#f0f7ff !important;display:flex;align-items:center;justify-content:center;border-radius:3px}@keyframes blink-red{0%{background-color:#dc3545}50%{background-color:#ff4d4f}100%{background-color:#dc3545}}.btn-blink{animation:blink-red 1s infinite}.toast-container{z-index:9999 !important}.toast{min-width:200px;font-size:0.9rem;border-radius:8px !important}.footer{flex-shrink:0}.footer-brand{font-family:'Inter', 'Helvetica Neue', Arial, sans-serif;font-weight:800;letter-spacing:0.05em;color:#212529;font-size:1.1rem}.footer-copyright{font-family:'Helvetica Neue', Arial, sans-serif;letter-spacing:0.02em}.app-scroll-top{position:fixed;right:1.15rem;bottom:calc(44px + 0.85rem);z-index:1045;width:2.75rem;height:2.75rem;padding:0;border:1px solid rgba(13,110,253,0.22);border-radius:50%;background:rgba(255,255,255,0.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 0.35rem 1.1rem rgba(13,110,253,0.16),0 0.15rem 0.35rem rgba(0,0,0,0.06);color:#0d6efd;font-size:1rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transform:translate3d(0, 1rem, 0) scale(0.88);transition:opacity 0.32s ease,transform 0.38s cubic-bezier(0.22, 1.25, 0.36, 1),visibility 0.32s ease,box-shadow 0.2s ease,background-color 0.2s ease;pointer-events:none}.app-scroll-top--visible{opacity:1;visibility:visible;transform:translate3d(0, 0, 0) scale(1);pointer-events:auto}.app-scroll-top:hover{background:#fff;box-shadow:0 0.5rem 1.35rem rgba(13,110,253,0.22),0 0.2rem 0.45rem rgba(0,0,0,0.08);color:#0a58ca}.app-scroll-top:focus-visible{outline:0;box-shadow:0 0 0 0.2rem rgba(13,110,253,0.28),0 0.35rem 1.1rem rgba(13,110,253,0.16)}body.has-report-lock-suspend-banner .app-scroll-top{bottom:calc(44px + 3.5rem)}@media (prefers-reduced-motion: reduce){.app-scroll-top{transition:opacity 0.15s ease, visibility 0.15s ease;transform:none}.app-scroll-top--visible{transform:none}}@media (max-width: 575.98px){.app-scroll-top{right:0.85rem;width:2.5rem;height:2.5rem;font-size:0.92rem}}body{display:flex;flex-direction:column;min-height:100vh}.ts-housing{border:2px solid #212529;background-color:transparent;padding:6px 10px;gap:8px;line-height:0}.ts-bulb{display:inline-block;border-radius:50%;flex-shrink:0;box-sizing:border-box;vertical-align:middle}.ts-bulb--xs{width:8px;height:8px;min-width:8px}.ts-bulb--sm{width:10px;height:10px;min-width:10px}.ts-bulb--md{width:12px;height:12px;min-width:12px}.ts-bulb--lg{width:16px;height:16px;min-width:16px}.ts-bulb--off{background-color:transparent !important;border:2px solid #868e96;box-shadow:none !important;animation:none !important;opacity:1}.ts-bulb--green.ts-bulb--on{background-color:#22c55e;border:2px solid #166534;box-shadow:0 0 5px rgba(34,197,94,0.45)}.ts-bulb--yellow.ts-bulb--on{background-color:#eab308;border:2px solid #a16207;box-shadow:0 0 5px rgba(234,179,8,0.45)}.ts-bulb--red.ts-bulb--on{background-color:#ef4444;border:2px solid #991b1b;box-shadow:0 0 6px rgba(239,68,68,0.45);animation:ts-traffic-blink 1s infinite}@keyframes ts-traffic-blink{0%,100%{opacity:1;filter:brightness(1)}50%{opacity:0.65;filter:brightness(0.9)}}.portal-paid-leave-day-banner{border-left:4px solid #a78bfa;background:linear-gradient(90deg, rgba(167,139,250,0.14) 0%, var(--bs-body-bg) 52%);box-shadow:0 0.125rem 0.5rem rgba(124,58,237,0.08)}[data-bs-theme="dark"] .portal-paid-leave-day-banner{border-left-color:#c4b5fd;background:linear-gradient(90deg, rgba(167,139,250,0.2) 0%, var(--bs-body-bg) 48%);box-shadow:0 0.2rem 0.65rem rgba(0,0,0,0.35)}.portal-paid-leave-gradient{border:1px solid rgba(167,139,250,0.35);border-left:4px solid #a78bfa;background:linear-gradient(125deg, rgba(243,232,255,0.98) 0%, rgba(250,245,255,0.72) 38%, rgba(255,255,255,0.95) 74%, var(--bs-body-bg) 100%);box-shadow:0 0.125rem 0.55rem rgba(124,58,237,0.12)}[data-bs-theme="dark"] .portal-paid-leave-gradient{border-color:rgba(192,132,252,0.38);border-left-color:#c4b5fd;background:linear-gradient(125deg, rgba(88,28,135,0.45) 0%, rgba(45,27,61,0.52) 52%, var(--bs-body-bg) 100%);box-shadow:0 0.2rem 0.65rem rgba(0,0,0,0.38)}.portal-company-holiday-gradient{border:1px solid rgba(108,117,125,0.28);border-left:4px solid #868e96;background:linear-gradient(125deg, rgba(233,236,239,0.95) 0%, rgba(241,243,245,0.78) 40%, rgba(255,255,255,0.92) 78%, var(--bs-body-bg) 100%);box-shadow:0 0.125rem 0.5rem rgba(73,80,87,0.1)}[data-bs-theme="dark"] .portal-company-holiday-gradient{border-color:rgba(173,181,189,0.45);border-left-color:#adb5bd;background:linear-gradient(125deg, rgba(52,58,64,0.72) 0%, rgba(73,80,87,0.45) 48%, var(--bs-body-bg) 100%);box-shadow:0 0.2rem 0.65rem rgba(0,0,0,0.35)}.portal-company-holiday-day-icon{width:2.5rem;height:2.5rem;font-size:1.05rem;background:rgba(108,117,125,0.18);color:#495057}[data-bs-theme="dark"] .portal-company-holiday-day-icon{background:rgba(173,181,189,0.22);color:#e9ecef}.tactics-icon--company-holiday{color:#6c757d}.tactics-icon--paid-leave{color:#7c3aed}.tactics-icon--absence{color:#e67700}.tactics-icon--project-non-working{color:#6c757d}[data-bs-theme="dark"] .tactics-icon--company-holiday{color:#ced4da}[data-bs-theme="dark"] .tactics-icon--paid-leave{color:#d8b4fe}[data-bs-theme="dark"] .tactics-icon--absence{color:#ffc078}[data-bs-theme="dark"] .tactics-icon--project-non-working{color:#adb5bd}.portal-paid-leave-day-icon{width:2.5rem;height:2.5rem;font-size:1.05rem;background:rgba(124,58,237,0.12);color:#7c3aed}[data-bs-theme="dark"] .portal-paid-leave-day-icon{background:rgba(192,132,252,0.2);color:#e9d5ff}.btn-paid-leave-banner{border-color:#7c3aed;color:#7c3aed;background-color:transparent}.btn-paid-leave-banner:hover{background-color:rgba(124,58,237,0.1);border-color:#6d28d9;color:#6d28d9}[data-bs-theme="dark"] .btn-paid-leave-banner{border-color:#c4b5fd;color:#e9d5ff}[data-bs-theme="dark"] .btn-paid-leave-banner:hover{background-color:rgba(192,132,252,0.15);border-color:#ddd6fe;color:#fff}.nw-bulk-cal .col-1-7{width:14.285714%;flex:0 0 14.285714%;max-width:14.285714%}.nw-bulk-pad{height:64px}.nw-bulk-box{height:64px;cursor:pointer;transition:box-shadow 0.15s ease, border-color 0.15s ease}.nw-bulk-box:hover{box-shadow:0 0.125rem 0.35rem rgba(0,0,0,0.08)}.nw-bulk-box--out{height:64px;display:flex;align-items:center;justify-content:center;opacity:0.4;pointer-events:none;background:var(--bs-light)}.nw-bulk-box--off{background:var(--bs-body-bg)}.nw-bulk-box--on{background:rgba(var(--bs-secondary-rgb), 0.12);border-color:rgba(var(--bs-secondary-rgb), 0.45) !important}.nw-bulk-box--sun.nw-bulk-box--off{background:#fff5f5}.nw-bulk-box--sat.nw-bulk-box--off{background:#f0f9ff}.nw-bulk-badge{font-size:0.58rem;font-weight:700;color:var(--bs-secondary)}.nw-bulk-sub{font-size:0.52rem;font-weight:700;color:var(--bs-danger)}.nw-bulk-sub--company{color:#0d9488}.nw-bulk-check:focus{box-shadow:0 0 0 0.15rem rgba(13,110,253,0.25)}.nw-bulk-report-badge{display:inline-flex;align-items:center;justify-content:center;gap:0.35rem;min-height:1.35rem;margin-top:0.15rem;padding:0.2rem 0.55rem;border-radius:999px;background:rgba(255,255,255,0.96);border:1px solid rgba(25,135,84,0.35);box-shadow:0 1px 3px rgba(25,135,84,0.12);pointer-events:none;white-space:nowrap;flex-shrink:0}.nw-bulk-report-man-days{font-size:0.72rem;font-weight:700;line-height:1;color:#146c43}.nw-bulk-report-dot{flex-shrink:0;width:9px;height:9px;border-radius:50%;background-color:#198754;border:1.5px solid #fff;box-shadow:0 0 0 1px rgba(25,135,84,0.5)}.nw-days-plate__icon{width:2rem;height:2rem;font-size:0.85rem}.planning-holiday-year{max-width:1320px;padding-bottom:calc(var(--app-footer-height, 44px) + var(--app-footer-gap, 0.65rem) + 4.75rem)}.planning-holiday-year .nw-bulk-pad,.planning-holiday-year .nw-bulk-box,.planning-holiday-year .nw-bulk-box--out{height:58px}.planning-holiday-year__submit-plate{position:fixed;left:0;right:0;bottom:calc(var(--app-footer-height, 44px) + var(--app-footer-gap, 0.65rem));z-index:1030;padding:0.65rem 1rem;background:rgba(255,255,255,0.96);border-top:1px solid var(--bs-border-color);box-shadow:0 -0.25rem 0.75rem rgba(0,0,0,0.08);backdrop-filter:blur(8px)}.planning-holiday-year__submit-plate__inner{max-width:1320px;margin:0 auto;display:flex;justify-content:center;align-items:center}[data-bs-theme="dark"] .planning-holiday-year__submit-plate{background:rgba(33,37,41,0.96);border-top-color:rgba(255,255,255,0.12)}.portal-monthly-summary .h5{font-size:1.1rem}.portal-monthly-nav{margin-bottom:1rem !important}.portal-monthly-nav__sub{margin-top:0.35rem !important}.portal-monthly-compact .mb-3{margin-bottom:0.65rem !important}.portal-monthly-compact .portal-monthly-nav{margin-bottom:0.5rem !important;padding:0.45rem 0.5rem !important}.portal-monthly-compact .portal-monthly-nav__sub{margin-top:0.2rem !important}.portal-monthly-compact .portal-monthly-summary{margin-bottom:0.5rem !important;--bs-gutter-y: 0.35rem}.portal-monthly-compact .portal-monthly-summary .card-body{padding:0.35rem 0.4rem !important}.portal-monthly-compact .portal-monthly-summary .h5{font-size:1rem !important}.portal-monthly-compact .portal-monthly-summary .small{margin-bottom:0.1rem !important;font-size:0.68rem !important}.portal-monthly-compact .portal-report-card{margin-bottom:0.35rem !important}.portal-monthly-compact .portal-report-card .p-2{padding:0.35rem 0.45rem !important}.portal-monthly-compact .portal-date-plate__inner{padding:0.35rem 0.45rem !important}.portal-monthly-compact .portal-date-plate__dnum{font-size:1.45rem !important}.portal-monthly-compact .portal-date-plate__mon{font-size:0.72rem !important}.portal-monthly-compact .portal-date-plate__inner .mt-2{margin-top:0.35rem !important}.portal-monthly-compact .portal-day-summary{padding:0.35rem 0.45rem !important}.portal-monthly-compact .portal-day-summary__hours{font-size:1.15rem !important}.portal-monthly-compact .rounded-3.border.p-2{padding:0.35rem 0.45rem !important}.portal-monthly-compact .rounded-3.border.p-2 .mt-2{margin-top:0.35rem !important}.portal-monthly-compact .portal-monthly-day-list{margin-bottom:0.5rem !important}.portal-monthly-summary-sm__label{font-size:0.6rem;letter-spacing:0.02em;text-transform:uppercase}.portal-monthly-summary-sm .card-body{padding:0.4rem 0.45rem !important}[data-bs-theme="dark"] .portal-monthly-summary-sm{background:var(--bs-tertiary-bg);border:1px solid rgba(255,255,255,0.22) !important}[data-bs-theme="dark"] .portal-monthly-summary .card{border:1px solid rgba(255,255,255,0.22) !important}[data-bs-theme="dark"] .portal-monthly-summary-sm .border-light{border-color:rgba(255,255,255,0.2) !important}.portal-monthly-day-sm__row{background:var(--bs-body-bg)}.portal-monthly-day-sm--company-holiday .portal-monthly-day-sm__row{background-color:rgba(233,236,239,0.45)}[data-bs-theme="dark"] .portal-monthly-day-sm--company-holiday .portal-monthly-day-sm__row{background-color:rgba(255,255,255,0.06)}.portal-monthly-day-sm--has-report .portal-monthly-day-sm__main{background:linear-gradient(90deg, rgba(var(--bs-success-rgb), 0.08) 0%, transparent 62%)}.portal-monthly-day-sm__rail{min-width:2.6rem;max-width:2.85rem;background:rgba(var(--bs-secondary-rgb), 0.06)}.portal-monthly-day-sm__dnum{font-size:1.15rem}.portal-monthly-day-sm__wday{font-size:0.62rem;color:var(--bs-secondary-color)}.portal-monthly-day-sm__sum{min-width:4.25rem;background:rgba(var(--bs-secondary-rgb), 0.04)}.portal-report-rail.portal-monthly-day-rail--company,.portal-report-rail.portal-monthly-day-rail--paid_leave,.portal-report-rail.portal-monthly-day-rail--normal,.portal-monthly-day-sm__row.portal-monthly-day-rail--company,.portal-monthly-day-sm__row.portal-monthly-day-rail--paid_leave,.portal-monthly-day-sm__row.portal-monthly-day-rail--normal{border-left-style:solid !important;border-left-width:4px !important}.portal-report-rail.portal-monthly-day-rail--company,.portal-monthly-day-sm__row.portal-monthly-day-rail--company{border-left-color:var(--bs-secondary) !important}.portal-report-rail.portal-monthly-day-rail--paid_leave,.portal-monthly-day-sm__row.portal-monthly-day-rail--paid_leave{border-left-color:#a78bfa !important}.portal-report-rail.portal-monthly-day-rail--normal,.portal-monthly-day-sm__row.portal-monthly-day-rail--normal{border-left-color:rgba(var(--bs-info-rgb), 0.55) !important}[data-bs-theme="dark"] .portal-report-rail.portal-monthly-day-rail--normal,[data-bs-theme="dark"] .portal-monthly-day-sm__row.portal-monthly-day-rail--normal{border-left-color:rgba(var(--bs-info-rgb), 0.72) !important}.card-portal.portal-assignment-card.portal-assignment-card--schedule-muted{background-color:rgba(248,249,250,0.92) !important;border:1px solid #212529 !important;box-shadow:none !important}.card-portal.portal-assignment-card.portal-assignment-card--schedule-muted .card-body{background-color:transparent !important}[data-bs-theme="dark"] .card-portal.portal-assignment-card.portal-assignment-card--schedule-muted{background-color:rgba(73,80,87,0.35) !important;border-color:rgba(248,249,250,0.92) !important}.card-portal.portal-assignment-card.portal-assignment-card--paid-leave-impact{border:1px solid rgba(124,58,237,0.42) !important;background:linear-gradient(125deg, rgba(243,232,255,0.55) 0%, rgba(255,255,255,0.92) 70%, var(--bs-body-bg) 100%) !important;box-shadow:0 0.125rem 0.5rem rgba(124,58,237,0.12) !important}.card-portal.portal-assignment-card.portal-assignment-card--paid-leave-impact .card-body{background-color:transparent !important}[data-bs-theme="dark"] .card-portal.portal-assignment-card.portal-assignment-card--paid-leave-impact{border-color:rgba(192,132,252,0.55) !important;background:linear-gradient(125deg, rgba(88,28,135,0.35) 0%, var(--bs-body-bg) 100%) !important;box-shadow:0 0.2rem 0.55rem rgba(0,0,0,0.35) !important}.card-portal.portal-assignment-card.portal-assignment-card--working-primary{border:1px solid rgba(var(--bs-primary-rgb), 0.55) !important;background-color:var(--bs-body-bg) !important;box-shadow:0 0.125rem 0.45rem rgba(var(--bs-primary-rgb), 0.14) !important}.card-portal.portal-assignment-card.portal-assignment-card--working-primary .card-body{background-color:transparent !important}[data-bs-theme="dark"] .card-portal.portal-assignment-card.portal-assignment-card--working-primary{border-color:rgba(61,139,253,0.65) !important;box-shadow:0 0.15rem 0.55rem rgba(61,139,253,0.18) !important}.card-portal.portal-assignment-card.portal-assignment-card--schedule-muted .badge.bg-secondary-subtle{background-color:var(--bs-secondary) !important;color:#fff !important;border-color:rgba(0,0,0,0.12) !important}[data-bs-theme="dark"] .card-portal.portal-assignment-card.portal-assignment-card--schedule-muted .badge.bg-secondary-subtle{background-color:#adb5bd !important;color:#212529 !important}.staff-col2-muted-box{background-color:rgba(233,236,239,0.72);border:1px solid rgba(108,117,125,0.18)}[data-bs-theme="dark"] .staff-col2-muted-box{background-color:rgba(108,117,125,0.28);border-color:rgba(255,255,255,0.12)}.staff-report-line.staff-report-line--muted{background-color:rgba(233,236,239,0.72) !important;border-color:rgba(108,117,125,0.2) !important}[data-bs-theme="dark"] .staff-report-line.staff-report-line--muted{background-color:rgba(108,117,125,0.22) !important;border-color:rgba(255,255,255,0.14) !important}[data-bs-theme="dark"] .portal-report-rail.portal-monthly-day-rail--paid_leave,[data-bs-theme="dark"] .portal-monthly-day-sm__row.portal-monthly-day-rail--paid_leave{border-left-color:#c4b5fd !important}.portal-report-rail[class*="portal-monthly-day-rail--"]{border-bottom-color:var(--bs-border-color) !important}@media (min-width: 768px){.portal-report-rail[class*="portal-monthly-day-rail--"]{border-right-color:var(--bs-border-color) !important}}article.portal-report-card.portal-monthly-paid-leave-card{border-color:rgba(167,139,250,0.35);background:linear-gradient(125deg, rgba(243,232,255,0.98) 0%, rgba(250,245,255,0.72) 42%, rgba(255,255,255,0.95) 100%);box-shadow:0 0.125rem 0.55rem rgba(124,58,237,0.12)}[data-bs-theme="dark"] article.portal-report-card.portal-monthly-paid-leave-card{border-color:rgba(192,132,252,0.38);background:linear-gradient(125deg, rgba(88,28,135,0.45) 0%, rgba(45,27,61,0.52) 52%, var(--bs-body-bg) 100%);box-shadow:0 0.2rem 0.65rem rgba(0,0,0,0.38)}article.portal-monthly-paid-leave-card .portal-monthly-day-sm__row{background-color:transparent}.portal-monthly-badge-paid-leave{background-color:rgba(124,58,237,0.14) !important;color:#6d28d9 !important;border-color:rgba(124,58,237,0.38) !important}[data-bs-theme="dark"] .portal-monthly-badge-paid-leave{background-color:rgba(167,139,250,0.22) !important;color:#f3e8ff !important;border-color:rgba(192,132,252,0.45) !important}.portal-site-badge-paid-leave-impact{border-color:rgba(124,58,237,0.42) !important;color:#6d28d9 !important}[data-bs-theme="dark"] .portal-site-badge-paid-leave-impact{border-color:rgba(91,33,182,0.55) !important;color:#5b21b6 !important}.portal-monthly-site-badge--schedule{background-color:rgba(248,249,250,0.95) !important;border:1px solid #212529 !important;color:var(--bs-body-color) !important}[data-bs-theme="dark"] .portal-monthly-site-badge--schedule{background-color:rgba(73,80,87,0.45) !important;border-color:rgba(248,249,250,0.88) !important;color:var(--bs-body-color) !important}.portal-monthly-site-badge--primary{background-color:var(--bs-body-bg) !important;border:1px solid rgba(var(--bs-primary-rgb), 0.55) !important;color:var(--bs-primary) !important}[data-bs-theme="dark"] .portal-monthly-site-badge--primary{border-color:rgba(61,139,253,0.65) !important;color:var(--bs-primary) !important}.staff-report-table-root .staff-report-col2--paid-leave{background:linear-gradient(125deg, rgba(243,232,255,0.98) 0%, rgba(250,245,255,0.72) 42%, rgba(255,255,255,0.92) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.55)}[data-bs-theme="dark"] .staff-report-table-root .staff-report-col2--paid-leave{background:linear-gradient(125deg, rgba(88,28,135,0.42) 0%, rgba(45,27,61,0.48) 52%, var(--bs-body-bg) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.06)}[data-bs-theme="dark"] body.portal-layout .text-primary{color:#f0f6ff !important}[data-bs-theme="dark"] body.portal-layout .heading-primary{color:#f0f6ff !important}[data-bs-theme="dark"] body.portal-layout .btn-outline-primary{color:#f4f8ff !important;border-color:rgba(255,255,255,0.58) !important;background-color:rgba(255,255,255,0.05)}[data-bs-theme="dark"] body.portal-layout .btn-outline-primary:hover,[data-bs-theme="dark"] body.portal-layout .btn-outline-primary:focus{color:#111827 !important;background-color:#f4f8ff !important;border-color:#f4f8ff !important}[data-bs-theme="dark"] body.portal-layout .btn-primary{background-color:#9ec5fe !important;background-image:none !important;border-color:rgba(255,255,255,0.42) !important;color:#0f172a !important}[data-bs-theme="dark"] body.portal-layout .btn-primary:hover,[data-bs-theme="dark"] body.portal-layout .btn-primary:focus{background-color:#cfe2ff !important;border-color:#ffffff !important;color:#0b1220 !important}[data-bs-theme="dark"] body.portal-layout .btn-primary[style*="linear-gradient"]{background:linear-gradient(135deg, #e8f1ff 0%, #b6d4fe 45%, #7eb8ff 100%) !important;color:#0a1224 !important;border-color:rgba(255,255,255,0.38) !important}[data-bs-theme="dark"] body.portal-layout .btn-primary[style*="linear-gradient"]:hover{background:linear-gradient(135deg, #fff 0%, #e8f1ff 40%, #cfe2ff 100%) !important}[data-bs-theme="dark"] body.portal-layout .link-primary{color:#cfe2ff !important}[data-bs-theme="dark"] body.portal-layout .link-primary:hover,[data-bs-theme="dark"] body.portal-layout .link-primary:focus{color:#ffffff !important}[data-bs-theme="dark"] body.portal-layout .border-primary-subtle{border-color:rgba(255,255,255,0.42) !important}[data-bs-theme="dark"] body.portal-layout .text-primary-emphasis{color:#eaf2ff !important}[data-bs-theme="dark"] body.portal-layout .bg-primary-subtle{background-color:rgba(255,255,255,0.08) !important}[data-bs-theme="dark"] body.portal-layout .portal-monthly-site-badge--primary{border-color:rgba(255,255,255,0.45) !important;color:#f0f6ff !important}[data-bs-theme="dark"] body.portal-layout .portal-leave-row:hover td{background-color:rgba(255,255,255,0.06) !important}.project-prime-contract-badge{font-size:0.7rem;font-weight:600;vertical-align:middle}.business-partner-picker .business-partner-option.active{background-color:var(--bs-primary-bg-subtle, #cfe2ff);border-color:var(--bs-primary-border-subtle, #9ec5fe);color:var(--bs-primary-text-emphasis, #052c65)}.business-partner-picker .business-partner-option:not(.active):hover{background-color:var(--bs-tertiary-bg, #f8f9fa)}.project-business-partner-badge{font-size:0.7rem;font-weight:600;vertical-align:middle}.project-subcontract-badge{font-size:0.7rem;font-weight:600;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.tactics-brand-icon{display:inline-block;vertical-align:middle;object-fit:contain;flex-shrink:0}.tactics-brand-icon--theme-dark{display:none}[data-bs-theme="dark"] .tactics-brand-icon--theme-light{display:none}[data-bs-theme="dark"] .tactics-brand-icon--theme-dark{display:inline-block}.tactics-brand-text{color:#212529;font-weight:700}[data-bs-theme="dark"] .tactics-brand-text{color:var(--bs-body-color)}.btn.tactics-btn--create,.btn.tactics-btn--edit,.btn.tactics-btn--update,.btn.tactics-btn--destroy{border-radius:50rem;font-weight:600}.btn.tactics-btn--link{font-weight:600}.modal .modal-footer .btn,.modal .btn.tactics-btn--modal,.modal .btn.tactics-btn--create,.modal .btn.tactics-btn--edit,.modal .btn.tactics-btn--update,.modal .btn.tactics-btn--destroy,.modal .btn.tactics-btn--link,.modal .btn.tactics-btn--cancel,#tacticsConfirmModal .modal-footer .btn{border-radius:var(--bs-border-radius, 0.375rem);font-weight:600}.project-subcontract-badge.gantt-subcontract-badge{display:inline-block;max-width:11rem}@media (max-width: 767.98px){.catalog-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.catalog-table-scroll .catalog-settings-table{width:max-content;min-width:100%;margin-bottom:0}.catalog-table-scroll tbody td:not(.catalog-sticky-check):not(.catalog-sticky-name){position:relative;z-index:0}.catalog-table-scroll .catalog-sticky-check{position:sticky;left:0;z-index:2;width:2.75rem;min-width:2.75rem;max-width:2.75rem;background-color:#fff;background-clip:padding-box;box-shadow:4px 0 8px -4px rgba(0,0,0,0.1)}.catalog-table-scroll .catalog-sticky-name{position:sticky;left:2.75rem;z-index:3;min-width:8.5rem;max-width:12rem;background-color:#fff;background-clip:padding-box;box-shadow:6px 0 10px -6px rgba(0,0,0,0.14)}.catalog-table-scroll .catalog-sticky-name--wide{min-width:10.5rem;max-width:14rem}.catalog-table-scroll--no-check .catalog-sticky-name{left:0;box-shadow:4px 0 8px -4px rgba(0,0,0,0.12)}.catalog-table-scroll thead .catalog-sticky-check,.catalog-table-scroll thead .catalog-sticky-name{z-index:6;background-color:#f8f9fa}.catalog-table-scroll .table-hover>tbody>tr:hover>td:not(.catalog-sticky-check):not(.catalog-sticky-name){z-index:0;background-color:#f8f9fa}.catalog-table-scroll .table-hover>tbody>tr:hover>.catalog-sticky-check{z-index:4;--bs-table-bg-state: #f3f4f6;--bs-table-color-state: var(--bs-emphasis-color);background-color:#f3f4f6 !important;background-image:none}.catalog-table-scroll .table-hover>tbody>tr:hover>.catalog-sticky-name{z-index:5;--bs-table-bg-state: #f3f4f6;--bs-table-color-state: var(--bs-emphasis-color);background-color:#f3f4f6 !important;background-image:none}}@media (max-width: 767.98px){[data-bs-theme="dark"] .catalog-table-scroll .catalog-sticky-check,[data-bs-theme="dark"] .catalog-table-scroll .catalog-sticky-name{background-color:var(--bs-body-bg, #212529)}[data-bs-theme="dark"] .catalog-table-scroll thead .catalog-sticky-check,[data-bs-theme="dark"] .catalog-table-scroll thead .catalog-sticky-name{background-color:var(--bs-tertiary-bg, #2b3035)}[data-bs-theme="dark"] .catalog-table-scroll .table-hover>tbody>tr:hover>td:not(.catalog-sticky-check):not(.catalog-sticky-name){background-color:#2b3035}[data-bs-theme="dark"] .catalog-table-scroll .table-hover>tbody>tr:hover>.catalog-sticky-check,[data-bs-theme="dark"] .catalog-table-scroll .table-hover>tbody>tr:hover>.catalog-sticky-name{--bs-table-bg-state: #343a40;background-color:#343a40 !important;background-image:none}}@media (max-width: 767.98px){.catalog-table-scroll .leave-requests-table.table-hover>tbody>tr:hover>td.leave-category-cell{background-color:#f8f9fa;background-image:none}[data-bs-theme="dark"] .catalog-table-scroll .leave-requests-table.table-hover>tbody>tr:hover>td.leave-category-cell{background-color:#2b3035;background-image:none}}.projects-assignment-list-table{width:100%}.projects-assignment-list-table .catalog-sticky-name{overflow:hidden;vertical-align:middle}.projects-assignment-list-table .catalog-sticky-name .gantt-nav-title-link{margin:0;max-width:100%}.projects-assignment-list-table .catalog-sticky-name .gantt-nav-title-link__name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.projects-assignment-list-table .projects-assignment-period-cell{white-space:nowrap}@media (min-width: 768px){.projects-assignment-list-table{table-layout:auto}.projects-assignment-list-table .projects-assignment-col-name{width:14rem}.projects-assignment-list-table .catalog-sticky-name{max-width:14rem}.projects-assignment-list-table .projects-assignment-col-period{width:1%;min-width:16.5rem}.projects-assignment-list-table .projects-assignment-col-man-days{width:1%;white-space:nowrap}.projects-assignment-list-table .projects-assignment-period-cell{position:relative;z-index:0;overflow:visible}.projects-assignment-list-table .projects-assignment-man-days-cell{position:relative;z-index:1;background-color:#fff}[data-bs-theme="dark"] .projects-assignment-list-table .projects-assignment-man-days-cell{background-color:var(--bs-body-bg, #212529)}.projects-assignment-list-table.table-hover>tbody>tr:hover>.projects-assignment-man-days-cell{background-color:var(--bs-table-hover-bg, #f8f9fa)}[data-bs-theme="dark"] .projects-assignment-list-table.table-hover>tbody>tr:hover>.projects-assignment-man-days-cell{background-color:var(--bs-table-hover-bg, #32383e)}}@media (max-width: 767.98px){.projects-assignment-list-table{table-layout:fixed}.projects-assignment-list-table .projects-assignment-col-name{width:11.5rem}.projects-assignment-list-table .projects-assignment-col-period{width:10.5rem}.projects-assignment-list-table .projects-assignment-col-man-days{width:5.5rem}.projects-assignment-list-table .catalog-sticky-name{max-width:11.5rem}.catalog-table-scroll .projects-assignment-list-table .catalog-sticky-name{width:11.5rem;min-width:11.5rem;max-width:11.5rem}}.leave-category-cell{vertical-align:middle}.leave-category-cell.leave-category-tone--paid{background:linear-gradient(90deg, rgba(237,233,254,0.85) 0%, rgba(237,233,254,0.15) 100%)}.leave-category-cell.leave-category-tone--absence{background:linear-gradient(90deg, rgba(255,244,230,0.9) 0%, rgba(255,244,230,0.12) 100%)}.leave-category-cell.leave-category-tone--compensatory{background:linear-gradient(90deg, rgba(211,249,216,0.9) 0%, rgba(211,249,216,0.12) 100%)}.leave-category-cell.leave-category-tone--substitute{background:linear-gradient(90deg, rgba(208,235,255,0.9) 0%, rgba(208,235,255,0.12) 100%)}[data-bs-theme="dark"] .leave-category-cell.leave-category-tone--paid{background:linear-gradient(90deg, rgba(88,28,135,0.48) 0%, rgba(88,28,135,0.1) 100%)}[data-bs-theme="dark"] .leave-category-cell.leave-category-tone--absence{background:linear-gradient(90deg, rgba(230,119,0,0.32) 0%, rgba(230,119,0,0.08) 100%)}[data-bs-theme="dark"] .leave-category-cell.leave-category-tone--compensatory{background:linear-gradient(90deg, rgba(43,138,62,0.38) 0%, rgba(43,138,62,0.1) 100%)}[data-bs-theme="dark"] .leave-category-cell.leave-category-tone--substitute{background:linear-gradient(90deg, rgba(25,113,194,0.38) 0%, rgba(25,113,194,0.1) 100%)}.portal-gantt-legend-bar{background-color:var(--bs-body-bg)}[data-bs-theme="dark"] body.portal-layout .portal-gantt-card .card-header,[data-bs-theme="dark"] body.portal-layout .portal-gantt-legend-bar{background-color:var(--bs-tertiary-bg) !important;border-color:var(--bs-border-color) !important}[data-bs-theme="dark"] body.portal-layout .portal-gantt-card .gantt-legend-report-bar{border-color:var(--bs-border-color)}[data-bs-theme="dark"] body.portal-layout .portal-gantt-card .gantt-legend-report-bar--submitted{background-color:rgba(25,135,84,0.25)}[data-bs-theme="dark"] body.portal-layout .portal-gantt-card .gantt-legend-report-bar--missing{background-color:rgba(220,53,69,0.2)}[data-bs-theme="dark"] body.portal-layout .popover-body .portal-gantt-popover__man{color:#7cb3ff !important}[data-bs-theme="dark"] body.portal-layout .portal-gantt-card .gantt-bar-item .text-dark{color:var(--bs-emphasis-color) !important}[data-bs-theme="dark"] body.portal-layout .portal-gantt-card .gantt-bar-item .text-muted{color:var(--bs-secondary-color) !important}.portal-project-show .avatar-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden}.portal-project-show .avatar-icon i{font-size:1.2rem}.portal-project-member-plate{background-color:var(--bs-body-bg);border:1px solid var(--bs-border-color-translucent, rgba(0,0,0,0.08))}.portal-project-member-plate--self{border-left:4px solid var(--bs-primary)}.portal-project-notice-card{background-color:#fffbe6;border:1px solid #ffe58f !important}.portal-project-members-empty{background-color:var(--bs-tertiary-bg);border:1px dashed var(--bs-border-color)}.portal-project-leave-badge{font-size:0.62rem;font-weight:600;border:1px solid transparent}.portal-project-leave-badge--paid{background:rgba(237,233,254,0.95);color:#4c1d95;border-color:rgba(167,139,250,0.45)}.portal-project-leave-badge--compensatory{background:rgba(211,249,216,0.95);color:#2b8a3e;border-color:rgba(43,138,62,0.35)}.portal-project-leave-badge--substitute{background:rgba(208,235,255,0.95);color:#1864ab;border-color:rgba(25,113,194,0.35)}.portal-project-leave-badge--absence{background:rgba(255,244,230,0.95);color:#e67700;border-color:rgba(230,119,0,0.35)}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-info-card{background:linear-gradient(155deg, rgba(61,139,253,0.16) 0%, rgba(33,37,41,0.92) 38%, #1a1d21 100%) !important;border:1px solid rgba(77,171,247,0.5) !important;box-shadow:0 0 0 1px rgba(61,139,253,0.12),0 0.4rem 1.35rem rgba(0,0,0,0.55),inset 0 1px 0 rgba(255,255,255,0.06) !important}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-info-card .text-primary{color:#74c0fc !important}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-info-card .btn-outline-success{border-color:rgba(81,207,102,0.55);color:#8ce99a}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-info-card .btn-outline-success:hover{background-color:rgba(81,207,102,0.18);border-color:#69db7c;color:#b2f2bb}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-notice-card{background:linear-gradient(145deg, rgba(255,193,7,0.2) 0%, rgba(33,37,41,0.88) 45%, #1a1d21 100%) !important;border:1px solid rgba(255,212,59,0.55) !important;box-shadow:0 0 0 1px rgba(255,193,7,0.1),0 0.3rem 1.1rem rgba(255,193,7,0.1) !important}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-notice-card .text-warning-emphasis{color:#ffd43b !important}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-member-plate{background:linear-gradient(105deg, rgba(255,255,255,0.07) 0%, rgba(26,29,33,0.95) 100%) !important;border:1px solid rgba(255,255,255,0.22) !important;box-shadow:0 0.2rem 0.85rem rgba(0,0,0,0.4) !important}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-member-plate--self{border:1px solid rgba(77,171,247,0.55) !important;border-left:4px solid #4dabf7 !important;box-shadow:0 0 0 1px rgba(61,139,253,0.2),0 0.3rem 1.1rem rgba(61,139,253,0.18),inset 0 1px 0 rgba(255,255,255,0.05) !important}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-member-plate .avatar-icon{background:rgba(61,139,253,0.18) !important;box-shadow:0 0 0 2px rgba(77,171,247,0.35)}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-member-plate--self .avatar-icon{box-shadow:0 0 0 2px rgba(77,171,247,0.55)}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-members-empty{background:rgba(61,139,253,0.06) !important;border:1px dashed rgba(77,171,247,0.45) !important;color:rgba(233,236,239,0.72) !important}[data-bs-theme="dark"] body.portal-layout .portal-project-show .portal-project-members-heading .text-primary{color:#74c0fc !important}[data-bs-theme="dark"] body.portal-layout .portal-project-show>.d-flex .btn-outline-secondary{border-color:rgba(255,255,255,0.32);color:#dee2e6}[data-bs-theme="dark"] body.portal-layout .portal-project-show>.d-flex .btn-outline-secondary:hover{background-color:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.45);color:#fff}[data-bs-theme="dark"] body.portal-layout .portal-project-leave-badge--paid{background:rgba(88,28,135,0.45);color:#e9d5ff;border-color:rgba(192,132,252,0.4)}[data-bs-theme="dark"] body.portal-layout .portal-project-leave-badge--compensatory{background:rgba(43,138,62,0.38);color:#b2f2bb;border-color:rgba(75,195,120,0.4)}[data-bs-theme="dark"] body.portal-layout .portal-project-leave-badge--substitute{background:rgba(25,113,194,0.38);color:#a5d8ff;border-color:rgba(77,171,247,0.4)}[data-bs-theme="dark"] body.portal-layout .portal-project-leave-badge--absence{background:rgba(230,119,0,0.32);color:#ffe8cc;border-color:rgba(255,169,77,0.4)}.login-page{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:1.25rem 1.25rem 3.75rem;z-index:9999;overflow:hidden;background-color:var(--lb-base, #eef2eb)}.login-page__mesh{position:absolute;inset:-15%;pointer-events:none;background:radial-gradient(ellipse 72% 58% at var(--lb-x1, 18%) var(--lb-y1, 22%), var(--lb-blob1, rgba(27,67,50,0.42)) 0%, transparent 68%),radial-gradient(ellipse 68% 52% at var(--lb-x2, 82%) var(--lb-y2, 78%), var(--lb-blob2, rgba(82,183,136,0.28)) 0%, transparent 66%),radial-gradient(ellipse 58% 48% at var(--lb-x3, 48%) var(--lb-y3, 52%), var(--lb-blob3, rgba(96,108,56,0.22)) 0%, transparent 64%),radial-gradient(ellipse 80% 62% at var(--lb-x4, 60%) var(--lb-y4, 35%), var(--lb-blob4, rgba(53,79,82,0.14)) 0%, transparent 70%);filter:blur(2px);animation:login-mesh-drift var(--lb-duration, 24s) ease-in-out infinite alternate;animation-delay:var(--lb-delay, 0s)}.login-page--chessboard{background-color:var(--lb-base, #eef2eb)}.login-page__board{position:absolute;left:0;right:0;bottom:0;width:100%;height:74vh;max-height:860px;pointer-events:none;z-index:0;-webkit-mask-image:linear-gradient(to top, #000 0%, #000 32%, rgba(0,0,0,0.82) 52%, rgba(0,0,0,0.38) 72%, transparent 94%);mask-image:linear-gradient(to top, #000 0%, #000 32%, rgba(0,0,0,0.82) 52%, rgba(0,0,0,0.38) 72%, transparent 94%)}.login-page__board-photo{position:absolute;inset:0;background-image:url(/chess-board.jpg);background-repeat:no-repeat;background-position:center bottom;background-size:cover}.login-page__board-fade{position:absolute;inset:0;background:linear-gradient(to top, transparent 0%, transparent 38%, color-mix(in srgb, var(--lb-base, #eef2eb) 40%, transparent) 62%, var(--lb-base, #eef2eb) 90%)}.login-page__content{position:relative;z-index:1;width:100%;display:flex;flex-direction:column;align-items:center}.login-card{width:100%;max-width:400px;background:#fff;border-radius:12px;overflow:hidden;border:1px solid rgba(45,106,79,0.08);box-shadow:0 4px 24px rgba(31,45,38,0.08),0 1px 3px rgba(31,45,38,0.06)}.login-header{padding:2.5rem 1.875rem 1.25rem;text-align:center}.brand-logo{margin-bottom:0.65rem}.brand-logo img{display:block;width:5rem;height:5rem;margin:0 auto;object-fit:contain}.brand-name{font-size:1.35rem;font-weight:900;letter-spacing:0.18em;color:#1a1a1a;margin-bottom:0;font-family:"Inter", "Helvetica", Arial, sans-serif}.brand-tagline{font-size:0.75rem;color:#666;text-transform:uppercase;letter-spacing:0.12em;margin-top:0.35rem}.login-body{padding:0 2.5rem 0}.login-page .form-control{border-radius:8px;border:1px solid #ccd5ce;padding:0.75rem}.login-page .form-control:focus{border-color:#2d6a4f;box-shadow:0 0 0 0.25rem rgba(45,106,79,0.18)}.login-page .btn-login{padding:0.875rem;border-radius:8px;background:linear-gradient(135deg, #2d6a4f 0%, #1b4332 45%, #081c15 100%);border:none;letter-spacing:0.14em;color:#fff;--bs-btn-color: #fff;--bs-btn-hover-color: #fff;--bs-btn-active-color: #fff;transition:transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease}.login-page .btn-login:hover,.login-page .btn-login:focus,.login-page .btn-login:active{transform:translateY(-1px);box-shadow:0 8px 20px rgba(8,28,21,0.45);filter:brightness(1.08);color:#fff;--bs-btn-hover-color: #fff;--bs-btn-active-color: #fff}.login-page .custom-check .form-check-input:checked{background-color:#2d6a4f;border-color:#1b4332}.login-footer-text{padding:1.5rem 2.5rem 1.75rem;font-size:0.6875rem;color:#8a9690;text-align:center;line-height:1.5}.login-page__legal{position:absolute;left:0;right:0;bottom:1.25rem;z-index:2;text-align:center;font-size:0.8125rem;line-height:1.6}.login-page__legal a{color:#4a5c52;text-decoration:none}.login-page__legal a:hover{color:#0b2e1c;text-decoration:underline}.login-page__legal span{margin:0 0.4rem;color:#8a9690}.login-signup-consent{line-height:1.6}.login-signup-consent a{color:inherit;font-weight:600}.login-signup-consent a:hover{color:#0b2e1c}.login-flip-scene{width:100%;max-width:400px;perspective:1200px;overflow:hidden}.login-flip-card{position:relative;width:100%;display:grid;transform-style:preserve-3d;transition:transform 0.65s cubic-bezier(0.4, 0.2, 0.2, 1)}.login-flip-card.is-flipped{transform:rotateY(180deg)}.login-flip-face{width:100%;grid-area:1 / 1;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}.login-flip-face--back{transform:rotateY(180deg);pointer-events:none;visibility:hidden}.login-flip-card.is-flipped .login-flip-face--front{pointer-events:none;visibility:hidden}.login-flip-card.is-flipped .login-flip-face--back{pointer-events:auto;visibility:visible}.login-header--compact{padding-top:2rem;padding-bottom:1rem}.login-panel-divider{display:flex;align-items:center;margin:1.25rem 0;color:#9aa59f}.login-panel-divider::before,.login-panel-divider::after{content:"";flex:1;height:1px;background:linear-gradient(90deg, transparent, #d5ddd8, transparent)}.login-panel-divider span{display:block;width:0.5rem}.login-page .btn-signup-entry{padding:0.875rem;border-radius:8px;border:none;letter-spacing:0.08em;color:#fff8eb;--bs-btn-color: #fff8eb;--bs-btn-hover-color: #fff;--bs-btn-active-color: #fff;background:linear-gradient(135deg, #9a7b2f 0%, #6b5318 45%, #3f2f0d 100%);box-shadow:0 4px 14px rgba(63,47,13,0.28);transition:transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease}.login-page .btn-signup-entry:hover,.login-page .btn-signup-entry:focus,.login-page .btn-signup-entry:active{color:#fff;--bs-btn-hover-color: #fff;--bs-btn-active-color: #fff;transform:translateY(-1px);box-shadow:0 8px 20px rgba(63,47,13,0.38);filter:brightness(1.06)}.login-page .btn-signup-submit{padding:0.875rem;border-radius:8px;border:none;letter-spacing:0.06em;color:#fff;--bs-btn-color: #fff;--bs-btn-hover-color: #fff;--bs-btn-active-color: #fff;background:linear-gradient(135deg, #2d6a4f 0%, #1b4332 45%, #081c15 100%);transition:transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease}.login-page .btn-signup-submit:hover,.login-page .btn-signup-submit:focus,.login-page .btn-signup-submit:active{color:#fff;--bs-btn-hover-color: #fff;--bs-btn-active-color: #fff;transform:translateY(-1px);box-shadow:0 8px 20px rgba(8,28,21,0.45);filter:brightness(1.08)}.login-page .btn-login-back{border-radius:8px;padding:0.75rem}@media (prefers-reduced-motion: reduce){.login-flip-card{transition:none}}@keyframes login-mesh-drift{0%{transform:scale(1) translate(0, 0);opacity:0.92}100%{transform:scale(1.04) translate(1.5%, -1%);opacity:1}}@media (prefers-reduced-motion: reduce){.login-page__mesh{animation:none}}.app-main-wrap{position:relative}.app-trial-read-only-plate-wrap{margin-top:0;margin-bottom:1rem}body.has-trial-read-only-plate main.app-main-wrap{padding-top:0}body.has-trial-read-only-plate nav.navbar.sticky-top.mb-4{margin-bottom:0.75rem !important}body.portal-layout.portal-trial-read-only .portal-header.mb-3{margin-bottom:0.5rem !important}.app-trial-read-only-plate{--trial-plate-accent: #dc3545;--trial-plate-accent-soft: rgba(220, 53, 69, 0.1);--trial-plate-border: rgba(220, 53, 69, 0.16);position:relative;border-radius:12px;background:linear-gradient(135deg, rgba(255,255,255,0.98) 0%, rgba(255,248,248,0.98) 100%);border:1px solid var(--trial-plate-border);box-shadow:0 0.125rem 0.35rem rgba(220,53,69,0.08),0 0.05rem 0.15rem rgba(0,0,0,0.04);overflow:hidden}.app-trial-read-only-plate::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg, #f78383 0%, var(--trial-plate-accent) 55%, #a71d2a 100%)}.app-trial-read-only-plate__inner{display:flex;flex-wrap:wrap;align-items:flex-start;gap:0.85rem 1rem;padding:0.85rem 1rem 0.85rem 1.15rem}.app-trial-read-only-plate__head{display:inline-flex;align-items:center;gap:0.55rem;flex-shrink:0;padding-right:0.85rem;margin-right:0.05rem;border-right:1px solid rgba(220,53,69,0.12)}.app-trial-read-only-plate__head-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;background:var(--trial-plate-accent-soft);color:var(--trial-plate-accent);font-size:0.78rem;box-shadow:inset 0 0 0 1px rgba(220,53,69,0.12)}.app-trial-read-only-plate__head-title{font-size:0.78rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:#842029}.app-trial-read-only-plate__body{flex:1 1 220px;min-width:0}.app-trial-read-only-plate__title{display:block;font-size:0.92rem;line-height:1.35;color:#842029;margin-bottom:0.15rem}.app-trial-read-only-plate__message{display:block;font-size:0.82rem;line-height:1.45;color:var(--bs-secondary-color)}[data-bs-theme="dark"] .app-trial-read-only-plate{--trial-plate-border: rgba(248, 113, 113, 0.22);background:linear-gradient(135deg, rgba(33,37,41,0.98) 0%, rgba(45,28,30,0.98) 100%);box-shadow:0 0.125rem 0.35rem rgba(0,0,0,0.28),0 0.05rem 0.15rem rgba(0,0,0,0.18)}[data-bs-theme="dark"] .app-trial-read-only-plate__head{border-right-color:rgba(248,113,113,0.18)}[data-bs-theme="dark"] .app-trial-read-only-plate__head-title,[data-bs-theme="dark"] .app-trial-read-only-plate__title{color:#f1aeb5}[data-bs-theme="dark"] .app-trial-read-only-plate__head-icon{color:#f1aeb5;background:rgba(220,53,69,0.22);box-shadow:inset 0 0 0 1px rgba(248,113,113,0.18)}body.body--chessboard{background-color:#ffffff}body.body--chessboard .login-page__board-fade{background:linear-gradient(to top, transparent 0%, transparent 38%, color-mix(in srgb, #fff 40%, transparent) 62%, #fff 90%)}body.body--chessboard>.login-page__board{position:fixed;left:0;right:0;bottom:0;width:100%;height:74vh;max-height:860px;pointer-events:none;z-index:0}body.body--chessboard .app-main-wrap{position:relative}body.body--chessboard .admin-main-wrap{position:relative}body.body--chessboard .tactics-page-back{background-color:rgba(255,255,255,0.96);border-color:rgba(33,37,41,0.14) !important;color:#212529 !important;text-decoration:none !important}body.body--chessboard .tactics-page-back:hover,body.body--chessboard .tactics-page-back:focus{background-color:#ffffff;border-color:rgba(13,110,253,0.4) !important;color:#0d6efd !important;box-shadow:0 2px 8px rgba(31,45,38,0.12)}.category-settings-list{min-height:2rem}.category-setting-row{display:flex;align-items:center;gap:0.85rem;padding:0.75rem 1rem;border-radius:10px;background-color:#ffffff;transition:border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease}.category-setting-row--visible{border:2px solid #198754;box-shadow:0 2px 8px rgba(25,135,84,0.1)}.category-setting-row--hidden{background-color:#f8f9fa;border:2px dashed #ced4da;box-shadow:none;opacity:0.88}.category-setting-row--hidden .category-setting-row__icon{opacity:0.55}.category-setting-row--hidden .category-setting-row__label .fw-bold{color:#6c757d}.category-setting-row__handle{flex-shrink:0;width:1.25rem;cursor:grab;text-align:center;opacity:0.45;user-select:none}.category-setting-row__handle:active{cursor:grabbing}.category-setting-row:hover .category-setting-row__handle{opacity:0.85}.category-setting-row__icon{width:44px;height:44px}.category-setting-row__checkbox{width:2.4em;height:1.3em;cursor:pointer}.category-settings-list .sortable-ghost{opacity:0.45 !important}.category-settings-list .sortable-chosen{cursor:grabbing;box-shadow:0 8px 20px rgba(0,0,0,0.12) !important}.company-nav-offer-dot{position:absolute;top:50%;right:0.5rem;width:0.55rem;height:0.55rem;border-radius:50%;background:#198754;transform:translateY(-50%);animation:company-nav-offer-pulse 1.6s ease-in-out infinite}.company-nav-offer-dot--tab{top:0.35rem;right:0.35rem;transform:none}@keyframes company-nav-offer-pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(25,135,84,0.5)}50%{opacity:0.75;box-shadow:0 0 0 0.35rem rgba(25,135,84,0)}}
