#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}.topbar-login-meta{display:block;margin-top:.12rem;color:var(--ct-muted);font-size:.74rem;line-height:1.2}.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}.success-alert{display:flex;gap:.85rem;align-items:flex-start;margin-bottom:1rem;padding:.9rem 1rem;border:1px solid color-mix(in srgb,var(--ct-primary) 32%,transparent);border-left:4px solid var(--ct-primary);border-radius:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--ct-primary-soft) 58%,var(--ct-surface)),var(--ct-surface));color:var(--ct-text);box-shadow:0 12px 28px #0f766e1f}.success-alert-icon{display:grid;flex:0 0 2rem;width:2rem;height:2rem;place-items:center;border-radius:999px;background:var(--ct-primary);color:#fff}.success-alert strong,.success-alert span{display:block}.success-alert span{margin-top:.12rem;color:var(--ct-muted)}.success-alert-close{margin-left:auto;border:0;background:transparent;color:var(--ct-muted);line-height:1}.success-alert-close:hover,.success-alert-close:focus{color:var(--ct-text)}.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:inline-flex!important;align-items:center;gap:.34rem;height:auto!important;margin-right:0!important;color:#ccfbf1!important;font-size:.84rem;letter-spacing:-.01em;line-height:1.1;white-space:nowrap}.app-logo-copy .sitepulse-wordmark{min-height:1.62rem;padding:0 .52rem;border:1px solid rgba(45,212,191,.18);background:#073b3a;box-sizing:border-box;align-items:center;line-height:1}.app-logo-copy .sitepulse-wordmark-site{color:#eafdfc;font-weight:400!important}.app-logo-copy .sitepulse-wordmark-pulse{color:#2dd4bf;font-weight:400!important}.sitepulse-wordmark{display:inline-flex;align-items:baseline;white-space:nowrap}.sitepulse-wordmark-site{color:#eafdfc;font-weight:600!important}.sitepulse-wordmark-pulse{color:#2dd4bf;font-weight:700!important}.app-logo-copy small{display:block;margin-top:.28rem;color:color-mix(in srgb,#ccfbf1 70%,transparent);font-size:.68rem;font-weight:400;letter-spacing:.02em}.pro-badge{display:inline-flex;align-items:center;gap:.28rem;min-height:1.24rem;padding:.14rem .46rem .15rem .38rem;border:1px solid rgba(247,183,51,.48);border-radius:0;background:#101010;color:#fff;box-shadow:none;font-size:.62em;line-height:1;text-transform:uppercase;vertical-align:-.06em}.pro-badge-text{color:#fff;font-family:Arial Narrow,Roboto Condensed,Helvetica Neue,Arial,sans-serif;font-size:.92em;font-stretch:condensed;font-weight:500!important;letter-spacing:.08em;line-height:.95;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased}.pro-badge-crown{width:1.32em;height:1.32em;color:#ffb72b;flex:0 0 auto;fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:miter;stroke-width:2.1}.login-shell .pro-badge{font-size:.56em;vertical-align:0}.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}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}.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(220px,1.4fr) repeat(5,minmax(130px,1fr)) 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}.loan-ledger-row-settled>td{background:color-mix(in srgb,var(--ct-muted) 12%,var(--ct-surface))!important;color:color-mix(in srgb,var(--ct-muted) 78%,var(--ct-text))!important}.loan-ledger-row-settled .btn{opacity:.82}.loan-settled-label,.loan-settled-amount{display:block;color:var(--ct-muted);font-size:.72rem}.loan-settled-amount{margin-top:.15rem}.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}.invoice-preview-backdrop{z-index:1090}.invoice-preview-modal{width:min(96vw,1120px);max-height:94vh}.invoice-preview-meta{display:grid;grid-template-columns:repeat(4,minmax(0,auto));gap:.55rem;margin-top:.45rem;color:var(--ct-muted);font-size:.84rem}.invoice-preview-meta span{display:grid;gap:.08rem;padding:.45rem .6rem;border:1px solid var(--ct-border);border-radius:8px;background:var(--ct-surface-soft)}.invoice-preview-meta strong{color:var(--ct-text);font-size:.68rem;letter-spacing:.04em;text-transform:uppercase}@media(max-width:991px){.invoice-preview-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:575px){.invoice-preview-meta{grid-template-columns:1fr}}.invoice-preview-body{display:grid;min-height:min(76vh,780px);place-items:center;overflow:auto;padding:1rem;background:color-mix(in srgb,var(--ct-surface-soft) 45%,var(--ct-surface))}.invoice-preview-frame{width:100%;height:min(76vh,780px);border:1px solid var(--ct-border);border-radius:12px;background:#fff}.invoice-preview-image{display:block;max-width:100%;max-height:min(76vh,780px);border:1px solid var(--ct-border);border-radius:12px;background:#fff;object-fit:contain;box-shadow:0 14px 34px #0f172a2e}.invoice-preview-empty{min-height:260px}.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-lookup-panel{margin-bottom:1rem;padding:.9rem;border:1px solid var(--ct-border);border-radius:12px;background:var(--ct-surface-soft)}.report-lookup-results{display:grid;gap:.55rem;margin-top:.75rem}.report-lookup-result{display:grid;grid-template-columns:1fr;gap:.45rem;padding:.75rem;border:1px solid var(--ct-border);border-radius:10px;background:var(--ct-surface)}.report-lookup-result span{display:block;color:var(--ct-muted);font-size:.7rem;letter-spacing:.04em;text-transform:uppercase}.report-lookup-result strong{display:block;color:var(--ct-text);font-size:.86rem;overflow-wrap:anywhere}.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{--report-line: #b2b2b2;--report-line-width: 1px;color:#000;border:var(--report-line-width) solid var(--report-line)!important;background:#fff!important;box-shadow:none!important;border-radius:0!important}.report-document,.report-document *{border-radius:0!important;font-weight:400!important}.report-letterhead{padding:1.15rem 1.35rem;border-bottom:var(--report-line-width) solid var(--report-line);background:#fff}.report-brand{border:var(--report-line-width) solid var(--report-line);background:#fff}.report-title-band{border-bottom:var(--report-line-width) solid var(--report-line);background:#fff}.report-kicker{display:inline-flex;align-items:center;gap:.34rem;margin-bottom:.34rem;color:#0f766e;font-size:.84rem;letter-spacing:0;text-transform:none}.report-kicker .sitepulse-wordmark{min-height:1.62rem;padding:0 .52rem;border:1px solid rgba(45,212,191,.18);background:#073b3a;box-sizing:border-box;align-items:center;line-height:1}.report-kicker .sitepulse-wordmark-site{color:#eafdfc;font-weight:600!important}.report-kicker .sitepulse-wordmark-pulse{color:#2dd4bf;font-weight:700!important}.report-pro-badge{min-height:1.62rem;margin:0;padding-top:0;padding-bottom:0;font-size:.9em;vertical-align:middle}.report-pro-badge .pro-badge-text{transform:translateY(.08em)}.report-letterhead h2{margin-top:calc(.12rem + 4px);color:#000;font-size:calc(1.12rem - 1px);letter-spacing:-.02em}.report-letterhead p{font-size:.86rem}.report-number{min-width:210px;align-self:center;text-align:right;color:#0f172a}.report-number span{display:block;margin-bottom:.2rem;color:#64748b;font-size:.8rem}.report-number strong{display:block;font-size:.9rem;line-height:1.35;white-space:nowrap}.report-checkbox-list{max-height:180px;overflow:auto;padding:.7rem .75rem;border:1px solid var(--ct-border);border-radius:3px;background:var(--ct-surface-soft)}.report-checkbox-list .form-check{margin-bottom:.45rem}.report-checkbox-list .form-check:last-child{margin-bottom:0}.checkbox-list{max-height:220px;overflow:auto;padding:.75rem;border:1px solid var(--ct-border);border-radius:3px;background:var(--ct-surface-soft)}.checkbox-list .form-check{margin-bottom:.45rem}.checkbox-list .form-check:last-child{margin-bottom:0}.report-meta-box{min-width:170px;border:var(--report-line-width) solid var(--report-line);background:#fff}.report-owner-panel{gap:0;padding:0;grid-template-columns:repeat(3,minmax(0,1fr));background:#fff;border-bottom:var(--report-line-width) solid var(--report-line)}.report-owner-panel.has-capital{grid-template-columns:repeat(4,minmax(0,1fr))}.report-owner-item{min-height:72px;padding:.85rem 1rem;border:0;border-right:var(--report-line-width) solid var(--report-line);background:#fff}.report-owner-item:last-child{border-right:0}.report-owner-date{min-width:0}.report-owner-date strong{font-size:.95rem;overflow-wrap:anywhere;white-space:normal!important}.report-owner-item strong{font-size:1rem;line-height:1.35}.report-meta-box span,.report-owner-item span,.report-summary-item span,.report-signature-row span{font-size:.8rem;letter-spacing:0;text-transform:none}.report-summary{gap:0;padding:0;background:#fff;border-bottom:var(--report-line-width) solid var(--report-line)}.report-summary-item{padding:1rem 1.15rem;border:0;border-right:var(--report-line-width) solid var(--report-line);background:#fff}.report-summary-item:last-child{border-right:0}.report-summary-item.is-total{background:#fff}.report-summary-item strong{font-size:1.35rem;color:#0f172a}.report-summary-item.is-total strong{color:#0f172a}.report-body{padding:.9rem 1.15rem 1rem}.report-section{margin-top:.85rem}.report-section h4{padding:0 0 .45rem;border-left:0;border-bottom:var(--report-line-width) solid var(--report-line);background:transparent;font-size:.88rem;color:#0f172a}.report-table{border-collapse:separate!important;border-spacing:0!important;font-size:.9rem;border:0!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:#0f172a!important;border:0!important;font-size:.9rem;letter-spacing:0;text-transform:none}.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,.report-table tfoot th{border:0!important;color:#0f172a!important}.report-table th,.report-table td{border:0!important;border-right:var(--report-line-width) solid var(--report-line)!important;border-bottom:var(--report-line-width) solid var(--report-line)!important}.report-table tr>:first-child{border-left:var(--report-line-width) solid var(--report-line)!important}.report-table thead tr:first-child>*,.report-table tbody:first-child tr:first-child>*{border-top:var(--report-line-width) solid var(--report-line)!important}.report-footer-note{padding:.65rem 1.15rem 1rem;border-top:var(--report-line-width) solid var(--report-line);font-size:.72rem;color:#475569}.report-signature-row{border-top:var(--report-line-width) solid var(--report-line)}.report-signature-row div{border:var(--report-line-width) solid var(--report-line);background:#fff}.report-document :where(h2,h3,h4,p:not(.report-kicker),.report-number,.report-number span,.report-number strong,.report-owner-item span,.report-owner-item strong,.report-summary-item span,.report-summary-item strong,.report-section h4,.report-table th,.report-table td,.report-table tfoot th,.report-footer-note,.report-signature-row span,.report-signature-row strong){color:#000!important}.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:9%}.tree-detail-table .tree-col-subtask{width:12%}.tree-detail-table .tree-col-description{width:30%}.tree-detail-table .tree-col-measure{width:7%}.tree-detail-table .tree-col-status{width:8%}.tree-detail-table .tree-col-source{width:9%}.tree-detail-table .tree-col-amount{width:12%}.tree-view-card{overflow:hidden}.tracker-tree>ul{padding-left:0}.tracker-tree .capital-node{position:relative;overflow:hidden;padding:1.15rem;justify-content:flex-start;align-items:flex-start;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}.capital-node .tree-node-aside{grid-template-columns:repeat(4,minmax(150px,1fr));min-width:min(100%,900px);margin-left:0;gap:.9rem;text-align:left}.capital-node .tree-node-main{flex:0 0 220px;max-width:220px}.capital-node .tree-node-aside>div{min-height:108px;padding:1rem 1.08rem;border:1px solid rgba(153,246,228,.22);background:linear-gradient(135deg,#ffffff21,#ffffff0f);box-shadow:inset 0 1px #ffffff1a,0 14px 28px #0000001f}.capital-node .tree-node-aside span{display:block;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Helvetica Neue,Arial,sans-serif;font-size:2rem;font-weight:560!important;letter-spacing:-.045em;line-height:1.02}.capital-node .tree-node-aside small{display:block;margin-top:.5rem;color:#ffffffc2;font-size:.78rem;font-weight:600;letter-spacing:.01em}.capital-progress-meta{margin-top:.45rem;color:#ffffffc7;font-size:.82rem;font-weight:600;letter-spacing:.02em}.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{overflow:hidden}.milestone-card.is-in-progress h5{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:#064e4a!important;font-weight:700!important;letter-spacing:.01em;text-shadow:none;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){.dashboard-kpi-grid,.listing-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.listing-search{grid-column:1 / -1}.record-detail-grid,.report-signature-row{grid-template-columns:repeat(2,minmax(0,1fr))}.report-owner-date{grid-column:auto}}@media(max-width:575.98px){.dashboard-kpi-grid{grid-template-columns:1fr}.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,.report-table thead th{font-size:.9rem}.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{--report-line: #b2b2b2;--report-line-width: 1px;background:#fff!important;color:#111827!important;border-radius:0!important}.report-document *,[data-bs-theme=dark] .report-document *{border-radius:0!important;font-weight:400!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:0!important;border-right:var(--report-line-width) solid var(--report-line)!important;border-bottom:var(--report-line-width) solid var(--report-line)!important}.report-document .report-table thead th,[data-bs-theme=dark] .report-document .report-table thead th{background:#fff!important;border:0!important;border-right:var(--report-line-width) solid var(--report-line)!important;border-bottom:var(--report-line-width) solid var(--report-line)!important;color:#111827!important;letter-spacing:0;text-transform:none}.report-document .report-table tr>:first-child,[data-bs-theme=dark] .report-document .report-table tr>:first-child{border-left:var(--report-line-width) solid var(--report-line)!important}.report-document .report-table thead tr:first-child>*,.report-document .report-table tbody:first-child tr:first-child>*,[data-bs-theme=dark] .report-document .report-table thead tr:first-child>*,[data-bs-theme=dark] .report-document .report-table tbody:first-child tr:first-child>*{border-top:var(--report-line-width) solid var(--report-line)!important}
