#root{min-height:100vh}:root{--ct-bg: #ecfeff;--ct-surface: #ffffff;--ct-surface-soft: #ccfbf1;--ct-border: rgba(13, 148, 136, .18);--ct-text: #042f2e;--ct-muted: #5f7f7b;--ct-primary: #0d9488;--ct-primary-soft: rgba(13, 148, 136, .14);--ct-secondary: #06b6d4;--ct-secondary-soft: rgba(6, 182, 212, .12);--ct-button-bg: #064e4a;--ct-button-hover: #042f2e;--ct-button-border: #0f766e;--ct-progress-track: rgba(13, 148, 136, .16);--ct-progress-fill: linear-gradient(90deg, #0f766e, #2dd4bf);--ct-danger: #b91c1c;--ct-danger-accent: #f97316;--ct-danger-hover: #ea580c;--ct-shadow: 0 14px 36px rgba(15, 118, 110, .1)}[data-bs-theme=dark]{--ct-bg: #031b1d;--ct-surface: #082f33;--ct-surface-soft: #0e3f45;--ct-border: rgba(94, 234, 212, .17);--ct-text: #ecfeff;--ct-muted: #99f6e4;--ct-primary: #2dd4bf;--ct-primary-soft: rgba(45, 212, 191, .16);--ct-secondary: #67e8f9;--ct-secondary-soft: rgba(103, 232, 249, .13);--ct-button-bg: #064e4a;--ct-button-hover: #042f2e;--ct-button-border: #2dd4bf;--ct-progress-track: rgba(153, 246, 228, .16);--ct-progress-fill: linear-gradient(90deg, #2dd4bf, #99f6e4);--ct-danger-accent: #fb923c;--ct-danger-hover: #f97316;--ct-shadow: 0 18px 46px rgba(0, 0, 0, .28)}.page-wrapper,body{background:radial-gradient(circle at top left,var(--ct-primary-soft),transparent 30%),var(--ct-bg)!important;color:var(--ct-text)}.topbar,.startbar,.card{background:var(--ct-surface)!important;border-color:var(--ct-border)!important}.card{box-shadow:var(--ct-shadow)!important}.text-muted,.tree-node-meta{color:var(--ct-muted)!important}.form-label{color:color-mix(in srgb,var(--ct-primary) 76%,var(--ct-text))!important;font-weight:400!important;letter-spacing:0}.required-mark{color:var(--ct-danger);margin-left:.2rem}.card-title,.page-title,h1,h2,h3,h4,h5,h6{font-weight:500!important}.card-title{font-size:1.08rem}strong,.fw-bold,.fw-semibold,.expense-amount{font-weight:500!important}.btn-primary,.btn-success{border-color:var(--ct-button-border)!important;background:var(--ct-button-bg)!important;color:#fff!important}.btn-primary:hover,.btn-primary:focus,.btn-success:hover,.btn-success:focus{border-color:var(--ct-button-hover)!important;background:var(--ct-button-hover)!important;color:#fff!important;filter:none}.btn-outline-primary,.btn-outline-success{border-color:var(--ct-primary)!important;color:var(--ct-primary)!important;background:transparent!important}.btn-outline-primary:hover,.btn-outline-primary:focus,.btn-outline-success:hover,.btn-outline-success:focus{border-color:var(--ct-primary)!important;background:var(--ct-button-bg)!important;color:#fff!important}.btn-outline-danger{border-color:var(--ct-danger-accent)!important;color:var(--ct-danger-accent)!important;background:transparent!important}.btn-outline-danger:hover,.btn-outline-danger:focus{border-color:var(--ct-danger-hover)!important;background:var(--ct-danger-hover)!important;color:#fff!important}.btn,.badge{border-radius:3px!important}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;border:0;background:#0f172a73}body.sidebar-open{overflow:hidden}.startbar .brand{align-items:center!important;height:auto!important;min-height:88px;padding:1rem 1.15rem .85rem!important}body[data-sidebar-size=default] .brand .logo,.brand .logo{display:inline-flex!important;gap:.8rem;justify-content:flex-start;align-items:center;width:100%;padding:0!important;text-decoration:none}.app-logo-mark{display:grid;flex:0 0 44px;width:44px;height:44px;place-items:center;border:2px solid rgba(153,246,228,.55);border-radius:14px;background:radial-gradient(circle at 28% 22%,rgba(204,251,241,.22),transparent 40%),linear-gradient(135deg,#064e4a,#0f766e);color:#ccfbf1;box-shadow:0 10px 24px #2dd4bf1f}.app-logo-mark svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.login-logo-mark{display:grid;flex:0 0 54px;width:54px;height:54px}.login-logo-mark svg{width:32px;height:32px}.app-logo-copy{display:block;line-height:1;min-width:0}.app-logo-copy .logo-lg{display:block!important;height:auto!important;margin-right:0!important;color:#ccfbf1!important;font-size:1rem;letter-spacing:-.01em;line-height:1.1;white-space:normal}.app-logo-copy small{color:var(--bs-secondary-color);font-size:.72rem;font-weight:400}.startbar .startbar-menu .startbar-collapse{height:calc(100vh - 88px)!important;padding:.8rem 1rem 1rem!important}.startbar .startbar-menu .navbar-nav{padding-top:.35rem}.startbar .startbar-menu .navbar-nav .nav-item .nav-link{min-height:38px;margin-bottom:.35rem;padding-block:.5rem;color:var(--ct-muted)!important;border-radius:10px}.startbar .startbar-menu .navbar-nav .nav-item .nav-link .menu-icon{color:color-mix(in srgb,var(--ct-muted) 80%,transparent)!important}.startbar .startbar-menu .navbar-nav .nav-item .nav-link:hover,.startbar .startbar-menu .navbar-nav .nav-item .nav-link.active,.startbar .startbar-menu .navbar-nav .nav-item.active .nav-link.active{background:#2dd4bf1a!important;color:var(--ct-text)!important}.startbar .startbar-menu .navbar-nav .nav-item .nav-link:hover .menu-icon,.startbar .startbar-menu .navbar-nav .nav-item .nav-link.active .menu-icon,.startbar .startbar-menu .navbar-nav .nav-item.active .nav-link.active .menu-icon{color:var(--ct-primary)!important}.startbar .startbar-menu .navbar-nav .nav-item .nav-link:hover:before,.startbar .startbar-menu .navbar-nav .nav-item .nav-link.active:before,.startbar .startbar-menu .navbar-nav .nav-item.active .nav-link.active:before{border-color:var(--ct-primary)!important;background-color:var(--ct-primary)!important}.sidebar-menu-separator{height:1px;margin:.9rem 0 .75rem;background:var(--ct-border)}.kpi-button{width:100%;padding:0;text-align:left}.kpi-card{min-height:132px}.kpi-card .card-body{min-height:132px;display:flex;flex-direction:column;justify-content:space-between}.list-filter-controls{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:flex-end}.list-filter-date{width:150px}.list-filter-search,.list-filter-select{width:190px}.listing-card{overflow:hidden}.listing-header{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-start;justify-content:space-between;padding:1.1rem 1.25rem;border-bottom:1px solid var(--ct-border);background:radial-gradient(circle at top right,var(--ct-primary-soft),transparent 36%),var(--ct-surface)!important}.listing-kicker{color:var(--ct-primary);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.listing-summary-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--ct-border);border-bottom:1px solid var(--ct-border)}.listing-summary-item{padding:.9rem 1.25rem;background:var(--ct-surface-soft)}.listing-summary-item span{display:block;color:var(--ct-muted);font-size:.76rem}.listing-summary-item strong{display:block;margin-top:.2rem;color:var(--ct-text);font-size:1.08rem}.listing-toolbar{display:grid;grid-template-columns:minmax(240px,1.6fr) minmax(180px,1fr) minmax(145px,.8fr) minmax(145px,.8fr) auto;gap:.75rem;align-items:end;padding:1rem 1.25rem;border-bottom:1px solid var(--ct-border);background:color-mix(in srgb,var(--ct-surface) 88%,var(--ct-surface-soft))}.listing-toolbar-actions{display:flex;align-items:end;min-height:38px}.listing-state{padding:1rem 1.25rem;border-bottom:1px solid var(--ct-border)}.listing-table{min-width:860px}.listing-table thead th{padding:.85rem 1rem;background:color-mix(in srgb,var(--ct-surface-soft) 78%,var(--ct-surface))!important;color:var(--ct-muted)!important;font-size:.74rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--ct-border)!important}.listing-table tbody td{padding:.95rem 1rem;border-color:var(--ct-border)!important}.clickable-row{cursor:pointer}.clickable-row:focus{outline:2px solid var(--ct-primary);outline-offset:-2px}.listing-row-number{width:58px;color:var(--ct-muted)!important}.listing-empty-state{display:grid;gap:.35rem;justify-items:center;padding:3rem 1rem;color:var(--ct-muted);text-align:center}.listing-empty-state i{display:grid;width:46px;height:46px;place-items:center;border:1px solid var(--ct-border);border-radius:16px;background:var(--ct-surface-soft);color:var(--ct-primary);font-size:1.45rem}.listing-empty-state strong{color:var(--ct-text);font-size:1rem}.record-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1080;display:grid;place-items:center;padding:1rem;background:#0f172a8c}.record-modal{width:min(100%,920px);max-height:min(92vh,780px);overflow:hidden;border:1px solid var(--ct-border);border-radius:18px;background:var(--ct-surface);box-shadow:0 24px 70px #0f172a47}.record-modal-header{display:flex;gap:1rem;align-items:flex-start;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--ct-border);background:radial-gradient(circle at top right,var(--ct-primary-soft),transparent 38%),var(--ct-surface)}.record-modal-body{max-height:calc(min(92vh,780px) - 82px);overflow:auto;padding:1.25rem}.record-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.record-detail-item{padding:.8rem;border:1px solid var(--ct-border);border-radius:12px;background:var(--ct-surface-soft)}.record-detail-item span,.record-comment-box span{display:block;color:var(--ct-muted);font-size:.74rem;letter-spacing:.04em;text-transform:uppercase}.record-detail-item strong{display:block;margin-top:.25rem;color:var(--ct-text);font-size:.95rem}.record-comment-box{margin:1rem 0;padding:.9rem;border:1px solid var(--ct-border);border-radius:12px;background:color-mix(in srgb,var(--ct-surface) 72%,var(--ct-surface-soft))}.record-comment-box p{margin:.35rem 0 0;white-space:pre-wrap}.report-document{overflow:hidden;color:#172554;background:#fff!important;border:1px solid #cbd5e1!important;box-shadow:none!important}.report-letterhead{display:flex;gap:1.5rem;align-items:flex-start;justify-content:space-between;padding:1.5rem 1.75rem;border-bottom:4px solid #0f766e;background:#fff}.report-kicker{margin:0 0 .35rem;color:#0f766e;font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.report-letterhead h2{margin:0;color:#0f172a;font-size:1.55rem;font-weight:600!important}.report-letterhead p{margin:.25rem 0 0;color:#475569}.report-brand{min-width:150px;padding:.7rem .8rem;border:1px solid #99f6e4;background:#f0fdfa;text-align:right}.report-brand span{display:block;color:#064e3b;font-size:1.05rem;font-weight:800}.report-brand small{color:#0f766e;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}.report-title-band{display:flex;gap:1rem;align-items:flex-start;justify-content:space-between;padding:1.2rem 1.75rem;border-bottom:1px solid #cbd5e1;background:#f8fafc}.report-title-band h3{margin:0;color:#0f172a;font-size:1.25rem;font-weight:800!important}.report-title-band p{margin:.35rem 0 0;color:#475569}.report-meta-box,.report-owner-item,.report-summary-item{border:1px solid #cbd5e1;background:#fff}.report-meta-box{min-width:180px;padding:.65rem .75rem;text-align:right}.report-meta-box span,.report-owner-item span,.report-summary-item span,.report-signature-row span{display:block;color:#64748b;font-size:.72rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase}.report-meta-box strong,.report-owner-item strong,.report-summary-item strong{display:block;margin-top:.25rem;color:#0f172a;font-weight:400!important}.report-owner-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.75rem;padding:1rem 1.75rem 0}.report-owner-item{padding:.7rem .75rem}.report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;padding:1rem 1.75rem}.report-summary-item{padding:.9rem}.report-summary-item.is-total{border-color:#0f766e;background:#ecfdf5}.report-summary-item strong{color:#0f766e;font-size:1.15rem;font-weight:400!important}.report-body{padding:0 1.75rem 1.25rem}.report-section{margin-top:1rem;page-break-inside:avoid}.report-section h4{margin:0 0 .5rem;padding:.5rem .65rem;border-left:4px solid #0f766e;background:#f8fafc;color:#0f172a;font-size:.95rem;font-weight:600!important}.report-table{border:1px solid #cbd5e1;color:#0f172a}.report-table thead th{background:#0f766e!important;color:#fff!important;border-color:#0f766e!important;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.report-table tbody td{border-color:#e2e8f0!important;vertical-align:top;font-weight:400!important}.report-table tfoot th{background:#f8fafc!important;border-color:#cbd5e1!important;color:#0f172a!important;font-size:.78rem;font-weight:400!important}.report-signature-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;padding:1rem 1.75rem;border-top:1px solid #cbd5e1}.report-signature-row div{min-height:72px;padding:.75rem;border:1px solid #cbd5e1;background:#fff}.report-signature-row strong{display:block;margin-top:1.4rem;color:#0f172a}.report-footer-note{margin:0;padding:.8rem 1.75rem 1.2rem;color:#64748b;font-size:.78rem;text-align:center}.report-document{color:#0f172a;border-color:#cbd5e1!important;background:#fff!important;box-shadow:none!important}.report-letterhead{padding:1.15rem 1.35rem;border-bottom:2px solid #0f766e;background:#fff}.report-kicker{margin-bottom:.2rem;color:#0f766e;font-size:.68rem}.report-letterhead h2{font-size:1.35rem;letter-spacing:-.02em}.report-letterhead p{font-size:.86rem}.report-meta-box{min-width:170px;border-color:#dbe3ea;background:#f8fafc}.report-owner-panel{gap:0;padding:0;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid #e2e8f0}.report-owner-panel.has-capital{grid-template-columns:repeat(4,minmax(0,1fr))}.report-owner-item{min-height:72px;padding:.85rem 1rem;border-width:0 1px 0 0;border-color:#e2e8f0}.report-owner-date{min-width:0}.report-owner-date strong{white-space:nowrap!important;font-size:.86rem}.report-owner-item:last-child{border-right:0}.report-owner-item strong{line-height:1.35}.report-summary{gap:0;padding:0;border-bottom:1px solid #e2e8f0}.report-summary-item{padding:1rem 1.15rem;border-width:0 1px 0 0;border-color:#e2e8f0}.report-summary-item:last-child{border-right:0}.report-summary-item.is-total{background:#f0fdfa}.report-summary-item strong{font-size:1.25rem}.report-body{padding:.9rem 1.15rem 1rem}.report-section{margin-top:.85rem}.report-section h4{padding:0 0 .45rem;border-left:0;border-bottom:1px solid #e2e8f0;background:transparent;font-size:.88rem}.report-table{border-collapse:collapse!important;font-size:.82rem;border:1px solid #d1d5db!important;background:#fff!important;--bs-table-bg: #ffffff;--bs-table-striped-bg: #ffffff;--bs-table-hover-bg: #ffffff;--bs-table-hover-color: #0f172a;--bs-table-accent-bg: #ffffff}.report-table thead th{background:#fff!important;color:#1f2937!important;border:1px solid #d1d5db!important}.report-table-date{min-width:92px;white-space:nowrap!important}.report-detail-table{table-layout:fixed;width:100%}.report-detail-table .report-col-sl{width:8%}.report-detail-table .report-col-date{width:16%}.report-detail-table .report-col-milestone{width:18%}.report-detail-table .report-col-subtask{width:15%}.report-detail-table .report-col-description{width:29%}.report-detail-table .report-col-amount{width:14%}.report-table tbody tr,.report-table tbody td,.report-table tfoot tr,.report-table tfoot th{background:#fff!important;box-shadow:none!important}.report-table tbody td{border:1px solid #e5e7eb!important}.report-table tfoot th{border:1px solid #d1d5db!important}.report-footer-note{padding:.65rem 1.15rem 1rem;border-top:1px solid #e2e8f0;font-size:.72rem}.login-shell{min-height:100vh;display:grid;place-items:center;padding:1rem}.login-shell .card{width:min(100%,420px)}.tree-detail-table{font-size:.82rem;table-layout:fixed;width:100%}.tree-detail-table .tree-col-sl{width:4%}.tree-detail-table .tree-col-date{width:10%}.tree-detail-table .tree-col-subtask{width:15%}.tree-detail-table .tree-col-description{width:39%}.tree-detail-table .tree-col-measure{width:8%}.tree-detail-table .tree-col-status{width:10%}.tree-detail-table .tree-col-amount{width:14%}.tree-view-card{overflow:hidden}.tracker-tree>ul{padding-left:0}.tracker-tree .capital-node{position:relative;overflow:hidden;padding:1.15rem;border-color:color-mix(in srgb,var(--ct-secondary) 30%,transparent);background:radial-gradient(circle at top right,rgba(103,232,249,.16),transparent 36%),linear-gradient(135deg,#042f2e,#064e4a);color:#fff}.tracker-tree .capital-node .tree-node-meta{color:#ffffffb8}.tree-node-title{font-size:1.03rem;font-weight:500!important;letter-spacing:-.01em}.capital-node .tree-node-title{font-size:1.12rem}.tree-node-icon{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:14px;font-size:21px}.tree-node-icon-capital{background:#ffffff29;color:#ccfbf1}.tree-node-icon-milestone{background:var(--ct-primary-soft);color:var(--ct-primary)}[data-bs-theme=dark] .tree-node-icon-milestone{color:var(--ct-primary)}.tree-node-aside{display:grid;gap:.15rem;margin-left:auto;text-align:right;white-space:nowrap}.tree-node-aside span{font-weight:500}.tree-node-aside small{color:#ffffffad}.tree-progress{background:var(--ct-progress-track)}.milestone-card.is-in-progress,.tree-milestone-section.is-in-progress{position:relative;border-color:#22d3ee!important;background:radial-gradient(circle at top right,rgba(34,211,238,.32),transparent 36%),linear-gradient(180deg,color-mix(in srgb,var(--ct-surface) 76%,rgba(34,211,238,.28)),var(--ct-surface))!important;box-shadow:0 0 0 1px #22d3ee3d,0 20px 50px #22d3ee38!important}.milestone-card.is-in-progress:before,.tree-milestone-section.is-in-progress:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;border-radius:inherit;background:linear-gradient(180deg,#67e8f9,#14b8a6);box-shadow:0 0 18px #67e8f9cc}.milestone-card.is-in-progress{overflow:hidden}.milestone-card.is-in-progress:after{content:"IN PROGRESS";position:absolute;top:.85rem;right:-2.4rem;z-index:2;width:9.5rem;padding:.28rem 0;background:linear-gradient(135deg,#06b6d4,#14b8a6);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-align:center;text-shadow:0 1px 1px rgba(15,23,42,.35);transform:rotate(35deg);box-shadow:0 6px 18px #06b6d45c}.milestone-card.is-in-progress h5{padding-right:4.75rem;color:#67e8f9;text-shadow:0 0 14px rgba(103,232,249,.26)}.milestone-card.is-in-progress .milestone-status-badge.is-in-progress{margin-top:.2rem;transform:scale(1.05);transform-origin:left center}.tree-milestone-node.is-in-progress{border-left-color:#67e8f9;background:linear-gradient(90deg,rgba(34,211,238,.22),transparent 70%),var(--bs-body-bg)!important;box-shadow:0 12px 30px #22d3ee33}.milestone-status-badge{border:1px solid var(--ct-border);background:var(--ct-surface-soft)!important;color:var(--ct-muted)!important}.milestone-status-badge.is-in-progress{position:relative;padding:.28rem .58rem .28rem 1.35rem;border-color:#99f6e4!important;background:linear-gradient(135deg,#14b8a6,#06b6d4)!important;color:#fff!important;font-weight:700!important;letter-spacing:.01em;text-shadow:0 1px 1px rgba(15,23,42,.25);box-shadow:0 0 0 3px #22d3ee33,0 0 18px #22d3ee8c}.milestone-status-badge.is-in-progress:before{content:"";position:absolute;left:.48rem;top:50%;width:.48rem;height:.48rem;border-radius:1px;background:#fff;box-shadow:0 0 0 4px #ffffff38;transform:translateY(-50%)}.tree-stat-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.tree-stat-row span{padding:.35rem .55rem;border:1px solid var(--ct-border);border-radius:3px;background:var(--ct-surface-soft);color:var(--ct-muted);font-size:.78rem}.tree-stat-row strong{color:var(--bs-body-color);font-weight:500}.tree-milestone-section{margin-top:1.25rem!important;padding:1.1rem 1.1rem .85rem;border:1px solid var(--bs-border-color);border-radius:16px;background:#94a3b80f;box-shadow:0 10px 26px #0f172a0d}[data-bs-theme=dark] .tree-milestone-section{border-color:#94a3b83d;background:#0f172a5c}.tree-milestone-node{border-left:4px solid var(--ct-primary);background:linear-gradient(90deg,var(--ct-primary-soft),transparent 58%),var(--bs-body-bg);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .16s ease,box-shadow .16s ease}.tree-milestone-node:hover,.tree-milestone-node:focus{border-color:var(--ct-primary);box-shadow:0 8px 22px #0f172a14;outline:none}.tree-milestone-node .tree-node-main{width:min(100%,560px);margin-right:auto}.tree-milestone-section.is-collapsed{padding-bottom:1.1rem}.tree-section-kicker{color:var(--bs-secondary-color);font-size:.72rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tree-milestone-number{display:inline-grid;min-width:2rem;height:1.35rem;place-items:center;border:1px solid var(--ct-border);border-radius:3px;background:var(--ct-surface-soft);color:var(--ct-primary);font-size:.72rem;letter-spacing:.04em}.tree-fold-indicator{padding:.2rem .5rem;border:1px solid var(--ct-border);border-radius:3px;color:var(--ct-muted);font-size:.72rem}.tree-branch-list{margin-top:.9rem!important;display:grid;gap:.9rem}.branch-label{font-weight:500!important}.tree-branch-card{border-left:3px solid var(--ct-border);text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.tree-branch-card:hover,.tree-branch-card:focus{transform:translateY(-1px);box-shadow:0 8px 22px #0f172a14}.tree-branch-labour,.tree-branch-material{border-color:var(--ct-border);background:var(--ct-surface-soft);color:var(--ct-muted)}[data-bs-theme=dark] .tree-branch-labour,[data-bs-theme=dark] .tree-branch-material{color:var(--ct-muted)}.tree-material-card{border-left-color:var(--ct-border)}.tree-branch-summary{display:flex;gap:.75rem;align-items:center;justify-content:space-between}.tree-link-pill{padding:.3rem .55rem;border-radius:3px;background:var(--ct-surface-soft);color:var(--ct-muted);font-size:.76rem;font-weight:500}.tree-detail-table thead th{background:#94a3b814;color:var(--bs-secondary-color);font-weight:500}.tree-detail-table th:nth-child(5),.tree-detail-table td:nth-child(5){padding-right:1rem}.tree-detail-table th:nth-child(6),.tree-detail-table td:nth-child(6){padding-left:1rem}@media(max-width:575.98px){.list-filter-controls{width:100%;justify-content:stretch}.list-filter-date,.list-filter-search,.list-filter-select,.list-filter-controls .btn{flex:1 1 100%;width:100%}.tracker-tree ul{padding-left:0}.tracker-tree .tree-node{flex-direction:column}.tree-node-aside{width:100%;text-align:left}.tree-branch-summary{align-items:flex-start;flex-direction:column}}@media(max-width:991.98px){.listing-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.listing-search{grid-column:1 / -1}.record-detail-grid,.report-owner-panel,.report-summary,.report-signature-row{grid-template-columns:repeat(2,minmax(0,1fr))}.report-owner-date{grid-column:1 / -1}}@media(max-width:575.98px){.listing-header{padding:1rem}.listing-header .btn{width:100%}.listing-summary-row,.listing-toolbar{grid-template-columns:1fr}.listing-summary-item,.listing-toolbar{padding-inline:1rem}.listing-toolbar-actions .btn{width:100%}.record-modal-backdrop{padding:0;align-items:end}.record-modal{max-height:94vh;border-radius:18px 18px 0 0}.record-detail-grid{grid-template-columns:1fr}.report-letterhead,.report-title-band{flex-direction:column}.report-brand,.report-meta-box{width:100%;text-align:left}.report-owner-panel,.report-summary,.report-signature-row{grid-template-columns:1fr}.report-owner-date{grid-column:auto}}@media print{@page{size:A4;margin:12mm}html,body,#root,.page-wrapper{background:#fff!important}body{-webkit-print-color-adjust:exact;print-color-adjust:exact}.topbar,.startbar,.report-filters,.page-title-box,.footer,.d-print-none{display:none!important}.page-wrapper,.page-content,.container-fluid,.reports-page,.reports-page>.col-lg-8{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}.reports-page{display:block!important}.report-document{border:0!important;box-shadow:none!important}.report-letterhead,.report-title-band,.report-owner-panel,.report-summary,.report-body,.report-signature-row,.report-footer-note{padding-left:0!important;padding-right:0!important}.table-responsive{overflow:visible!important}.report-table{font-size:.78rem}.report-table tr,.report-section,.report-summary-item,.report-owner-item,.report-signature-row div{break-inside:avoid;page-break-inside:avoid}}.kpi-card{color:var(--ct-text)!important;border:1px solid var(--ct-border)!important;background:linear-gradient(135deg,var(--ct-surface),var(--ct-surface-soft))!important}.kpi-card:hover,.kpi-card:focus{color:var(--ct-text)!important}.progress,.progress-line,.kpi-progress,.tree-progress{height:7px!important;overflow:hidden;border-radius:999px!important;background:var(--ct-progress-track)!important}.progress-bar,.progress-line span,.kpi-progress span,.tree-progress span{display:block;height:100%;border-radius:inherit;background:var(--ct-progress-fill)!important}.kpi-card .opacity-75,.kpi-meta{color:var(--ct-muted)!important}.kpi-icon{border-color:var(--ct-border)!important;background:var(--ct-primary-soft)!important;color:var(--ct-primary)!important}.kpi-capital,.kpi-material,.kpi-labour,.kpi-remaining,.kpi-expense,.kpi-weekly{background:linear-gradient(135deg,var(--ct-surface),var(--ct-surface-soft))!important}.kpi-capital{border-top:4px solid var(--ct-primary)!important}.kpi-material,.kpi-remaining,.kpi-labour{border-top:4px solid var(--ct-secondary)!important}.badge.text-bg-light,.badge.text-bg-warning,.badge.text-bg-success{background-color:var(--ct-surface-soft)!important;color:var(--ct-muted)!important;border:1px solid var(--ct-border)}.table{--bs-table-hover-bg: var(--ct-surface-soft)}[data-bs-theme=dark] .form-control,[data-bs-theme=dark] .form-select,[data-bs-theme=dark] .table,[data-bs-theme=dark] .tree-node,[data-bs-theme=dark] .activity-log-item{background-color:var(--ct-surface-soft)!important;border-color:var(--ct-border)!important;color:var(--ct-text)!important}.report-document,[data-bs-theme=dark] .report-document{background:#fff!important;color:#111827!important}.report-document .report-table,[data-bs-theme=dark] .report-document .report-table,.report-document .report-table tr,[data-bs-theme=dark] .report-document .report-table tr,.report-document .report-table th,[data-bs-theme=dark] .report-document .report-table th,.report-document .report-table td,[data-bs-theme=dark] .report-document .report-table td{background:#fff!important;color:#111827!important;opacity:1!important}.report-document .report-table td,[data-bs-theme=dark] .report-document .report-table td{border-top:1px solid #d1d5db!important}.report-document .report-table thead th,[data-bs-theme=dark] .report-document .report-table thead th{border-top:1px solid #9ca3af!important;border-bottom:1px solid #9ca3af!important;color:#111827!important}
