*,:after,:before{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;color:#1d1f2c;font-family:Inter,Segoe UI,Roboto,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;margin:0}#root{min-height:100vh}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.monthly-net-summary-section{background:#fff;border-radius:12px;margin-top:2rem;padding:1.5rem}.month-label{color:#1c1d21;font-size:.875rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.month-separator{color:#6b7280;font-size:1rem;font-weight:500;margin:0 .5rem}.month-value{font-family:Courier New,monospace;font-size:.875rem;font-weight:600;margin-left:auto}.month-value.profit{color:#1c7a4e}.month-value.loss{color:#c22f42}.monthly-net-chart-container{background:#f9fafb;border-radius:8px;margin:1.5rem 0;padding:1rem}.monthly-net-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-top:1.5rem}.monthly-net-grid-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;transition:all .2s ease}.monthly-net-grid-item:hover{border-color:#c5c9d8}.monthly-net-grid-item.empty{background:#f9fafb;opacity:.5}.monthly-net-grid-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.75rem}.monthly-net-grid-details{display:flex;flex-direction:column;gap:.5rem}.monthly-net-grid-detail{align-items:center;display:flex;font-size:.875rem;justify-content:space-between}.detail-label{color:#6b7280}.detail-value{font-family:Courier New,monospace}.detail-value.profit{color:#1c7a4e}.detail-value.cost{color:#dc2626}.breakdown-section{background:#fff;border-radius:12px;margin-top:2rem;padding:1.5rem}.section-title{color:#1c1d21;font-family:PP Editorial New;font-size:1.5rem;font-weight:700;margin:0 0 1.5rem 22px}.breakdown-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.breakdown-card{background:#fff;border:1px solid #e0e3ef;border-radius:8px;padding:1rem;transition:all .2s}.breakdown-card:hover{border-color:#c5c9d8}.breakdown-card-header{align-items:center;border-bottom:1px solid #e0e3ef;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.breakdown-month{color:#1c1d21;font-size:1.1rem;font-weight:700;margin:0}.breakdown-year{color:#7b7e8c;font-size:.85rem;font-weight:500}.breakdown-card-content{display:flex;flex-direction:column;gap:.75rem}.analytics-section{margin-bottom:2rem;margin-top:0}.analytics-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-top:1rem}.analytics-card{background:#fff;border:1px solid #e0e3ef;border-radius:12px;padding:1.5rem}.analytics-card-header{justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.analytics-card-header,.year-filter-container{align-items:center;display:flex}.analytics-card-header h3{color:#1c1d21;color:#5b5f75;font-family:PP Editorial New;font-size:16px;font-weight:700;margin:0}.analytics-card-content{display:flex;flex-direction:column;gap:1rem}.analytics-card.total .analytics-card-content.total-content{display:flex;flex-direction:column;gap:2rem}.total-graph-box{background:#0000;border:none;border-radius:8px;padding:1rem}.aroha-percentage-display{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem;padding:.75rem}.percentage-label{color:#6b7280;font-size:14px;font-weight:500}.percentage-value{color:#8f43ee;font-size:18px;font-weight:700}.total-details-box{display:flex;flex-direction:column;gap:1rem}.analytics-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:.75rem 0}.analytics-item:last-child{border-bottom:none}.analytics-item.net{border-bottom:none;border-top:2px solid #e0e3ef;font-weight:700;margin-top:.5rem;padding-top:1rem}.analytics-label{color:#333;flex:1 1;font-size:.95rem}.analytics-value{color:#1c1d21;font-size:1.05rem}.analytics-value.invested{color:#7b5cfc}.analytics-value.revenue{color:#1c7a4e}.analytics-value.profit{color:#1c7a4e;font-size:1.15rem}.analytics-value.loss{color:#c22f42;font-size:1.15rem}.analytics-arrow{font-size:1.2rem;margin-left:.5rem}.analytics-item.net .analytics-arrow{color:inherit}.status-breakdown-item{background:#f9fafb;border-radius:8px;margin-bottom:.5rem;padding:1rem}.status-breakdown-item:last-child{margin-bottom:0}.status-header{align-items:center;border-bottom:1px solid #e0e3ef;display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.5rem}.status-name{color:#1c1d21;font-size:1rem;font-weight:700}.status-count{color:#7b7e8c;font-size:.85rem}.status-details{display:flex;flex-direction:column;gap:.5rem}.status-detail{align-items:center;display:flex;font-size:.9rem;justify-content:space-between}.status-detail span:first-child{color:#5b5f75}.status-detail span:last-child{color:#1c1d21}.status-detail.net{border-top:1px solid #e0e3ef;font-weight:700;margin-top:.5rem;padding-top:.5rem}.status-detail.net span:last-child.profit{color:#1c7a4e}.status-detail.net span:last-child.loss{color:#c22f42}.analytics-card.yearly-income{grid-column:1/-1}.year-navigation{gap:.75rem}.year-nav-btn,.year-navigation{align-items:center;display:flex}.year-nav-btn{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:6px;color:#1c1d21;cursor:pointer;font-size:1rem;height:36px;justify-content:center;min-width:36px;padding:.5rem .75rem;transition:all .2s ease}.year-nav-btn:hover:not(:disabled){background:#e5e7eb;border-color:#c5c9d8}.year-nav-btn:disabled{cursor:not-allowed;opacity:.4}.year-display{color:#1c1d21;font-size:1rem;font-weight:600;min-width:60px;text-align:center}.yearly-income-details{border-bottom:1px solid #e5e7eb;display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1.5rem}.yearly-income-item{align-items:center;display:flex;font-size:.9rem;justify-content:space-between}.yearly-income-item.net{border-top:1px solid #e5e7eb;font-weight:700;margin-top:.5rem;padding-top:.75rem}.yearly-label{color:#6b7280;font-weight:500}.yearly-value{font-family:Courier New,monospace;font-weight:600}.yearly-value.profit{color:#1c7a4e}.yearly-value.cost,.yearly-value.loss{color:#dc2626}.yearly-income-item.net .yearly-value{font-size:1.05rem}.yearly-income-chart{background:#f9fafb;border-radius:8px;margin-top:1rem;padding:1rem}.yearly-comparison-header{border-bottom:1px solid #e5e7eb;margin-bottom:1rem;padding-bottom:.75rem}.comparison-subtitle{color:#6b7280;font-size:.875rem;font-weight:500;margin:0;text-align:center}.current-year-note{color:#6b7280;font-size:.75rem;font-style:italic;margin-top:.75rem;text-align:center}.analytics-card.investment-graph{grid-column:1/-1}.analytics-card.investment-graph .analytics-card-content{display:flex;flex-direction:column;gap:1.5rem}.graph-legend{border-top:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;padding-top:1rem}.legend-item{align-items:center;display:flex;gap:.5rem}.legend-color{border-radius:4px;display:inline-block;height:16px;width:16px}.legend-label{color:#6b7280;font-size:12px;font-weight:500}.analytics-card.monthly{grid-column:1/-1}.monthly-content{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));max-height:500px;overflow-y:auto}.monthly-analytics-item{background:#fff;border:1px solid #e0e3ef;border-radius:8px;padding:1rem}.monthly-header{align-items:center;border-bottom:1px solid #e0e3ef;display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.5rem}.monthly-month{color:#1c1d21;font-size:1rem;font-weight:700}.monthly-year{color:#7b7e8c;font-size:.85rem;font-weight:500}.monthly-details{display:flex;flex-direction:column;gap:.5rem}.monthly-detail{align-items:center;display:flex;font-size:.9rem;justify-content:space-between;padding:.25rem 0}.monthly-detail.net{border-top:1px solid #e0e3ef;font-weight:700;margin-top:.5rem;padding-top:.75rem}.monthly-label{color:#5b5f75;flex:1 1}.monthly-value{color:#1c1d21;font-weight:600}.monthly-value.profit{color:#1c7a4e}.monthly-value.cost{color:#c22f42}.monthly-value.loss{color:#c22f42;font-size:1.05rem}.monthly-arrow,.monthly-detail.net .monthly-value.profit{font-size:1.1rem}.monthly-arrow{margin-left:.5rem}.monthly-detail.net .monthly-arrow{color:inherit}.dashboard{display:flex;flex-direction:column;gap:1.5rem}.dashboard-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.section-kicker{color:#7b7e8c;font-size:.75rem;font-weight:600;letter-spacing:.08em;margin-bottom:.25rem}.dashboard-header h1{color:#1c1d21;font-size:1.9rem;margin:0}.muted-text{color:#6d6f7b;margin:.35rem 0 0;text-align:center}.primary-button{background:#8f43ee;border-radius:999px;padding:.75rem 1.5rem}.ghost-button:focus-visible,.pill-button:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible{outline:2px solid #7b5cfc;outline-offset:2px}.summary-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.summary-card{border:1px solid #eceef5;border-radius:16px;padding:1.25rem}.summary-label{color:#8c8ea1;font-size:.85rem;letter-spacing:.08em;margin:0}.summary-value{color:#1d1f2c;font-size:1.5rem;margin:.4rem 0 0}.dashboard-toolbar{align-items:center;background:#fff;border:1px solid #eceef5;border-radius:16px;display:flex;flex-wrap:wrap;gap:1rem;padding:1rem}.search-field{flex:1 1 240px}.search-field input{background:#f5f6fb;border:1px solid #d8dbe8;border-radius:999px;font-size:.95rem;padding:.65rem 1.25rem}.filter-group{gap:.5rem}.filter-label{color:#55586a;font-size:.85rem;font-weight:600}.pill-button{background:#fff;border:1px solid #d8dbe8;border-radius:999px;color:#4e5166;cursor:pointer;font-weight:500;padding:.4rem 1.25rem;transition:background .2s,color .2s,border-color .2s}.pill-button.active{background:#181730;border-color:#181730;color:#fff}.table-wrapper{background:#fff;border:1px solid #eceef5;border-radius:16px}.resource-table{min-width:840px}.resource-table thead th{border-bottom:1px solid #eceef5;color:#424750;font-size:10px;font-weight:400;letter-spacing:.08em;padding:1.25rem 1rem;text-align:left}.resource-table tbody td{border-bottom:1px solid #f1f2f7;color:#1f2130;font-weight:500;padding:1.25rem 1rem;vertical-align:top}.resource-name-cell{align-items:flex-start;gap:.75rem}.status-pill{background:#eef0fb;color:#3d4191;padding:.4rem .9rem}.status-pill.bench{background:#fff4ea;color:#b05b1b}.resource-name{font-size:1rem;font-weight:700}.resource-role{font-size:.9rem;margin:.15rem 0 0}.resource-meta{color:#9aa0b6;font-size:.8rem;margin:.2rem 0 0}.experience-stack{gap:.4rem}.experience-pill{border:1px solid #e0e3ef;border-radius:12px;gap:.35rem;padding:.35rem .65rem}.experience-pill strong{font-size:.95rem}.net-outcome{border-radius:999px;font-weight:700;padding:.3rem .8rem}.trend-indicator{font-weight:900}.empty-state{padding:3rem 1rem;text-align:center}.dashboard-content{background:#fff;border-radius:16px;padding:2rem}.link{color:#7b5cfc;font-weight:600;text-decoration:none}.link:hover{text-decoration:underline}.chart-container{background:#fff;border:1px solid #eceef5;border-radius:16px;margin-bottom:2rem;padding:2rem}.chart-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.chart-title{color:#1d1f2c;font-size:1.5rem;font-weight:700;margin:0}.chart-summary{display:flex;flex-wrap:wrap;gap:2rem}.chart-summary-item{display:flex;flex-direction:column;gap:.25rem}.chart-summary-label{color:#6d6f7b;font-size:.85rem;font-weight:500}.chart-summary-value{font-size:1.25rem;font-weight:700}.chart-summary-value.revenue{color:#7b5cfc}.chart-summary-value.profit{color:#1c7a4e}.chart-summary-value.loss{color:#c22f42}.chart-tooltip{background:#fff;border:1px solid #eceef5;border-radius:8px;padding:.75rem 1rem}.tooltip-label{color:#55586a;font-size:.85rem;font-weight:600;margin:0 0 .5rem}.tooltip-value{color:#1c7a4e;font-size:1rem;font-weight:700;margin:0}.monthly-roi-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow:hidden;padding:.5rem;position:fixed;right:0;top:0;z-index:1000}.monthly-roi-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;height:90vh;max-height:90vh;max-width:1200px;overflow:hidden;width:100%}.monthly-roi-header{align-items:flex-start;border-bottom:1px solid #eceef5;display:flex;flex-shrink:0;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-top:15px;padding:1rem 1.5rem}.employee-name{align-items:center;color:#111827;display:flex;flex-wrap:wrap;font-size:14px;font-weight:500;gap:.25rem;margin:0}.employee-role{color:#5b5f75;font-size:12px;margin:.25rem 0 0}.employee-role-inline{color:#5b5f75;font-size:12px;font-weight:400}.employee-doj-inline{color:#6b7280;font-size:12px;font-weight:400}.period-navigation{gap:1rem}.nav-btn,.period-navigation{align-items:center;display:flex}.nav-btn{background:#fff;border:1px solid #d8dbe8;border-radius:8px;color:#4e5166;cursor:pointer;font-size:1.2rem;height:36px;justify-content:center;transition:all .2s;width:36px}.nav-btn:hover:not(:disabled){background:#f5f6fb;border-color:#c5c9d8}.nav-btn:disabled{cursor:not-allowed;opacity:.5}.period-label{min-width:200px}.period-label,.year-select{color:#1c1d21;font-size:1rem;font-weight:600;text-align:center}.year-select{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%234e5166' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:12px;border:1px solid #d8dbe8;border-radius:8px;cursor:pointer;min-width:100px;padding:.5rem 2.5rem .5rem 1rem;transition:all .2s}.year-select:hover:not(:disabled){background-color:#f5f6fb;border-color:#c5c9d8}.year-select:focus{border-color:#7b5cfc;box-shadow:0 0 0 3px #7b5cfc1a;outline:none}.year-select:disabled{cursor:not-allowed;opacity:.5}.close-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#8c8ea1;cursor:pointer;display:flex;font-size:1.5rem;height:36px;justify-content:center;margin-left:.5rem;transition:background .2s;width:36px}.close-btn:hover{background:#f5f6fb}.months-grid{grid-gap:.5rem;display:grid;flex:1 1;gap:.5rem;grid-template-columns:repeat(4,1fr);min-height:0;overflow-y:auto;padding:.6rem}.month-card{background:#f9fafb;border:none;border-radius:8px;display:flex;flex-direction:column;max-height:200px;min-height:100px;overflow-x:visible;overflow-y:auto;padding:.5rem;transition:all .2s}.month-card.positive-outcome,.month-card.reached-investment{background:#f9fafb;border:none}.month-card:hover{border-color:#c5c9d8;box-shadow:0 4px 12px #00000014}.month-header{align-items:center;border-bottom:1px solid #f1f2f7;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.3rem;padding-bottom:.3rem}.month-year{color:#8c8ea1;font-size:.65rem;font-weight:500}.month-name{color:#1c1d21;font-size:.875rem;font-weight:600}.profit-loss-pill{align-items:center;background:#f5f6fb;border-radius:8px;display:inline-flex;flex:1 1;font-size:.8rem;font-weight:600;gap:.4rem;margin-bottom:0;padding:.35rem .5rem}.profit-loss-pill.profit{background:#f5f6fb;color:#1c7a4e}.profit-loss-pill.loss{background:#f5f6fb;color:#c22f42}.profit-loss-label{font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.profit-loss-value{font-size:.95rem}.profit-loss-arrow{font-size:.85rem;font-weight:700}.month-details{display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-height:0;overflow-x:visible;overflow-y:auto}.detail-item{align-items:center;display:flex;font-size:.8rem;justify-content:space-between;padding:.15rem 0}.detail-label{color:#5b5f75;flex:1 1;font-size:.75rem;font-weight:500}.detail-value{color:#1c1d21;font-size:.95rem;font-weight:600;margin-left:auto;text-align:right}.detail-item.cost .detail-value,.detail-item.decoders .detail-value,.detail-item.paid,.detail-item.paid .detail-value,.detail-item.paid.reached,.detail-item.revenue .detail-value{color:#1c1d21}.detail-item.paid.reached .detail-value{color:#1c1d21;font-weight:600}.detail-item.positive{color:#1c1d21}.detail-item.positive .detail-value{color:#1c1d21;font-weight:600}.detail-item.salary{color:#1c1d21;font-weight:500}.detail-item.salary.positive{color:#1c1d21}.detail-item.salary.positive .detail-value{color:#1c1d21;font-weight:600}.detail-item.net-outcome{border-top:1px solid #f1f2f7;font-weight:600;margin-top:.5rem;padding-top:.5rem}.detail-item.net-outcome.positive{color:#1c1d21}.detail-item.net-outcome.positive .detail-value{color:#1c1d21;font-weight:600}.detail-item.company-paid{color:#1c1d21}.detail-item.company-paid .detail-value{color:#1c1d21;font-weight:600}.detail-item.company-paid.positive{color:#1c1d21}.detail-item.company-paid.positive .detail-value{color:#1c1d21;font-weight:600}.detail-item.salary-after-deputation{color:#1c1d21}.detail-item.salary-after-deputation .detail-value{color:#1c1d21;font-weight:600}.detail-item.salary-after-deputation.positive{color:#1c1d21}.detail-item.salary-after-deputation.positive .detail-value{color:#1c1d21;font-weight:600}.detail-arrow{font-size:.85rem;margin-left:.25rem}.detail-arrow,.detail-item.positive .detail-arrow{color:#1c1d21;font-weight:700}.month-empty{align-items:center;display:flex;flex:1 1;justify-content:center;padding:1rem 0}.empty-text{color:#9aa0b6;font-size:.7rem;margin:0}.employee-doj{color:#6b7280;font-size:.8rem;margin:2px 0 0}.edit-month-btn{background:#fff;border:1px solid #d8dbe8;border-radius:6px;color:#4e5166;cursor:pointer;font-size:.875rem;font-weight:500;margin-top:auto;padding:.5rem 1rem;transition:all .2s;width:100%}.edit-month-btn:hover{background:#f5f6fb;border-color:#c5c9d8}.month-edit-form{display:flex;flex:1 1;flex-direction:column;gap:1rem}.edit-field{display:flex;flex-direction:column;gap:.25rem}.edit-field label{color:#55586a;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.edit-field input{border:1px solid #d8dbe8;border-radius:6px;color:#1c1d21;font-size:.875rem;padding:.5rem .75rem;transition:border-color .2s}.edit-field input:focus{border-color:#7b5cfc;outline:none}.edit-actions{display:flex;gap:.5rem;margin-top:auto}.cancel-btn,.save-btn{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:opacity .2s}.save-btn{background:linear-gradient(90deg,#7b5cfc,#b357f8);color:#fff}.save-btn:hover:not(:disabled){opacity:.9}.save-btn:disabled{cursor:not-allowed;opacity:.6}.cancel-btn{background:#f5f6fb;border:1px solid #d8dbe8;color:#4e5166}.cancel-btn:hover{background:#e8eaf1}.loading-state{align-items:center;color:#5b5f75;display:flex;flex:1 1;justify-content:center;padding:4rem 2rem;text-align:center}.alert{border-radius:8px;font-weight:600;margin:1rem 2rem 0;padding:1rem 1.25rem}.alert-error{background:#fdecee;border:1px solid #f4c8cd;color:#9b1d2b}@media (max-width:1400px){.months-grid{gap:.5rem;grid-template-columns:repeat(4,1fr)}.month-card{max-height:130px;min-height:100px;padding:.5rem}.month-header{margin-bottom:.35rem;padding-bottom:.35rem}.month-details{gap:.25rem}.detail-item{font-size:.65rem;padding:.15rem 0}}.aroha-breakdown{border-top:2px solid #e0e3ef;margin-top:1rem;padding-top:1rem}.breakdown-header{margin-bottom:.75rem}.breakdown-title{color:#1c1d21;font-size:.95rem;font-weight:700}.breakdown-item{align-items:center;display:flex;font-size:.9rem;justify-content:space-between;padding:.5rem 0}.breakdown-item.profit .breakdown-value{color:#1c7a4e;font-weight:600}.breakdown-item.cost .breakdown-value{color:#c22f42;font-weight:600}.breakdown-item.net{border-top:1px solid #e0e3ef;font-weight:700;margin-top:.5rem;padding-top:.75rem}.breakdown-item.net.positive .breakdown-value{color:#1c7a4e;font-size:1.05rem}.breakdown-item.net.negative .breakdown-value{color:#c22f42;font-size:1.05rem}.breakdown-label{color:#5b5f75;flex:1 1}.breakdown-value{font-weight:600;margin-left:.5rem}.breakdown-arrow{font-size:1.1rem;margin-left:.5rem}.breakdown-item.net.positive .breakdown-arrow{color:#1c7a4e}.breakdown-item.net.negative .breakdown-arrow{color:#c22f42}@media (max-width:1024px){.months-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.months-grid{grid-template-columns:repeat(2,1fr)}.monthly-roi-header{flex-direction:column}.period-navigation{justify-content:space-between;width:100%}}.roi-page{display:flex;flex-direction:column;padding:0}.roi-page-title{color:#111827;font-size:1.75rem;font-weight:700;margin:0}.pending-toolbar{flex-wrap:wrap}.search-field{width:200px}.sort-group{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.sort-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%234e5166' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:12px;padding-right:36px!important}.filter-pill{transition:all .2s}.filter-pill:hover{background:#f5f6fb;border-color:#c5c9d8}.clear-filter-btn{align-items:center;border-radius:4px;display:flex;justify-content:center;padding:.5rem;transition:background .2s}.clear-filter-btn:hover{background:#f5f6fb}.table-wrapper{margin-top:-18px}.resource-table tbody tr.newly-imported{background-color:#f5ecff}.resource-table tbody tr.newly-imported:hover{background-color:#e9d5ff}.resource-table{min-width:1000px}.resource-table th{font-weight:600}.resource-role{color:#5b5f75;font-size:10px;margin:.25rem 0 0}.status-pill{white-space:nowrap}.status-pill[class*=aroha]{background:#eef2ff;color:#4338ca}.status-pill[class*=market]{background:#ecfdf5;color:#047857}.experience-stack{display:flex;flex-wrap:wrap;gap:.5rem}.experience-pill{align-items:center;background:#0000;border:none;color:#5b5f75;display:flex;font-size:.85rem;gap:.5rem;padding:.4rem .75rem}.experience-pill strong{color:#1d1f2c;font-size:.9rem;font-weight:600}.net-outcome{align-items:center;border-radius:6px;display:inline-flex;font-size:.9rem;font-weight:600;gap:.4rem;padding:.4rem .85rem}.net-outcome.positive{background:#e9fbf2;color:#1c7a4e}.net-outcome.negative{background:#fdecee;color:#c22f42;font-weight:400}.trend-indicator{font-size:.85rem;font-weight:700}.edit-btn{background:#333;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.edit-btn:hover{background:#374151;opacity:.9}.pagination{align-items:center;border-top:1px solid #f3f4f6;display:flex;gap:.5rem;justify-content:center;padding:1.5rem}.pagination-btn{background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;min-width:40px;padding:.5rem .75rem;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#f5f6fb;border-color:#c5c9d8}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.pagination-btn.page-number.active{background:#333;border-color:#333;color:#fff}.table-placeholder p{color:#6b7280;margin:.5rem 0}.muted-text{color:#9aa0b6;font-size:.875rem}.alert-error p{margin:0}.create-user-form{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.create-user-form h2{color:#1a1a1a;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.create-user-form label{color:#333;display:block;font-weight:500;margin-bottom:1rem}.create-user-form input,.create-user-form select{border:1px solid #ddd;border-radius:4px;font-size:1rem;margin-top:.5rem;padding:.75rem;transition:border-color .2s;width:100%}.create-user-form input:focus,.create-user-form select:focus{border-color:#06c;box-shadow:0 0 0 3px #0066cc1a;outline:none}.form-actions{display:flex;gap:1rem;margin-top:1.5rem}.form-hint{background:#f5f5f5;border-radius:4px;color:#666;font-size:.875rem;line-height:1.5;margin-top:1rem;padding:.75rem}.form-hint strong{color:#333}.role-badge{border-radius:12px;display:inline-block;font-size:.875rem;font-weight:500;padding:.25rem .75rem;text-transform:capitalize}.role-badge.admin{background:#fee;color:#c00}.role-badge.finance{background:#eef;color:#006}.role-badge.analyst{background:#efe;color:#060}.status-pill.active{background:#d4edda;color:#155724}.status-pill.inactive{background:#f8d7da;color:#721c24}.alert-success{background:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724;margin-bottom:1rem;padding:1rem}.alert-success p{margin:0}*{font-family:Atkinson Hyperlegible,sans-serif}.manage-resources{display:flex;flex-direction:column;padding-top:20px;position:relative}.resource-header{align-items:flex-start;background:#fff;border-radius:20px;box-shadow:0 10px 40px #0f172a0f;display:flex;gap:24px;justify-content:space-between;padding:24px}.resource-header h1{color:#111827;font-size:1.75rem;margin:0}.resource-header p{color:#6b7280;margin-top:8px}.header-actions{display:flex;flex-wrap:wrap;gap:12px}.resource-tabs{align-items:center;background:#fff;box-shadow:0 0 4px #0000000a;display:flex;gap:.5rem;justify-content:space-between;left:0;margin:0;padding:10px 24px 10px 44px;position:fixed;right:0;top:60px;z-index:99}.tab-divider{background:#d1d5db;height:24px;margin:0 1px;width:1px}.refresh-button{align-items:center;background:#e0f2fe;border:1px solid #0ea5e9;border-radius:8px;color:#0ea5e9;cursor:pointer;display:inline-flex;font-size:14px;font-weight:400;gap:4px;padding:10px 20px;transition:all .2s ease}.refresh-button:hover:not(:disabled){background:#bae6fd;border-color:#0284c7;color:#0284c7}.refresh-button:disabled{cursor:not-allowed;opacity:.7}.import-button{align-items:center;background:#f3e6ff;border:1px solid #8f43ee;border-radius:8px;color:#8f43ee;display:inline-flex;font-size:14px;font-weight:400;gap:4px;padding:10px 20px}.import-button:disabled{cursor:not-allowed;opacity:.7}.import-button__xls{color:#000}.resource-tab{align-items:center;border:none;border-radius:8px;display:flex;font-family:Atkinson Hyperlegible,sans-serif;font-size:14px;font-style:normal;font-weight:400;gap:.5rem;letter-spacing:0;line-height:100%;padding:.6rem .4rem;text-decoration:none;transition:all .2s}.resource-tab,.resource-tab:hover{background:#0000;color:#5e6177}.resource-tab.active{background:#0000;color:#8f43ee}.tab-count{background:#f9fafb;border-radius:999px;color:#000;font-size:.8rem;padding:2px 8px}.resource-tab.active .tab-count{background:#f9fafb;color:#8f43ee}.resource-toolbar{align-items:center;background:#fff;border-radius:12px;gap:16px;padding:16px}.resource-filters{align-items:center;display:flex;flex:1 1;gap:16px}.search-field{align-items:center;background:#0000;border-radius:12px;box-shadow:inset 0 0 0 1px #e5e7eb;display:flex;gap:4px;height:42px;padding:0 14px;width:300px}.search-field svg{color:#6b7280;flex-shrink:0;height:20px;width:20px}.search-field input{background:#0000;border:none;color:#111827;font-size:14px;outline:none;padding-left:0;width:100%}.status-filter-select{background:#fff;border:1px solid #e5e7eb;border-radius:12px;color:#111827;cursor:pointer;font-size:.95rem;min-width:180px;padding:10px 14px}.status-filter-select:focus{border-color:#8f43ee;box-shadow:0 0 0 2px #8f43ee33;outline:none}.status-filter{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.pending-toolbar{align-items:center;display:flex;gap:16px}.pending-toolbar .search-field{height:42px;padding:0 14px;width:300px}.pending-toolbar .search-field input{font-size:14px}.filter-group{flex-wrap:wrap}.filter-group,.filter-pill{align-items:center;display:flex;gap:8px}.filter-pill{background:#fff;border:1px solid #e5e7eb;border-radius:999px;color:#374151;cursor:pointer;font-size:12px;padding:6px 14px}.filter-count{background:#f3f4f6;border-radius:12px;color:#374151;font-size:.75rem;font-weight:600;min-width:20px;padding:2px 8px;text-align:center}.filter-pill.active{background:#333;border-color:#333;color:#fff}.filter-pill.active .filter-count{background:#fff3;color:#fff}.clear-filter-btn{background:#0000;border:none;color:#2563eb;cursor:pointer;font-weight:600}.alert{border-radius:12px;font-weight:500;padding:12px 16px}.alert-info{background:#eff6ff;color:#1d4ed8}.alert-success{background:#ecfdf5;color:#047857}.alert-error{background:#fef2f2;color:#b91c1c}.card{background:#fff;border-radius:16px;box-shadow:0 8px 30px #0f172a0d}.table-card{box-shadow:none;margin:24px;padding:0;width:calc(100% - 48px)}.table-wrapper{box-shadow:none;overflow-x:auto}.resource-table{border-collapse:collapse;min-width:720px;width:100%}.resource-table td,.resource-table th{border-bottom:1px solid #f3f4f6;font-size:.9rem;padding:16px 18px;text-align:left}.resource-table td.number-cell{color:#111827;font-size:14px;font-weight:500}.resource-table th{background:#f9fafb;color:#6b7280;font-size:.75rem;letter-spacing:.05em}.resource-name-cell{align-items:center;display:flex;gap:12px}.resource-name{color:#111827;font-size:14px;font-weight:500;margin:0}.resource-meta{color:#6b7280;font-size:10px;margin:2px 0 0}.status-pill{background:#eef2ff;border-radius:999px;color:#4338ca;font-size:.75rem;font-weight:600;padding:4px 10px}.status-pill.deputed,.status-pill[class*=deput]{background:#ecfdf5;color:#047857}.status-pill.bench,.status-pill[class*=bench]{background:#fef3c7;color:#b45309}.month-grid{display:flex;gap:16px}.month-value{color:#111827;font-size:14px;font-weight:500}.month-label,.month-value{margin:0;text-align:center}.month-label{color:#9ca3af;font-size:.75rem}.positive{color:#111827;font-size:14px;font-weight:500}.negative{color:#b91c1c}.salary-input{border:1px solid #e5e7eb;border-radius:12px;padding:8px 12px;width:160px}.clickable-row{cursor:pointer}.clickable-row:hover{background:#f5f7fb}.clickable-row.status-changed{background:#fffbeb;border-left:4px solid #f59e0b}.clickable-row.status-changed:hover{background:#fef3c7}.resource-table tbody tr.newly-imported{background-color:#f9fafb;transition:background-color .3s ease}.resource-table tbody tr.newly-imported:hover{background-color:#f1f3f5}.edit-btn{background:#111827;color:#fff}.delete-btn,.edit-btn{border:none;border-radius:999px;padding:6px 14px}.delete-btn{background:#0000;color:#c22f42;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.delete-btn:hover{background:#fee;color:#a01e2e;cursor:pointer;font-size:.85rem}.table-placeholder{color:#6b7280;padding:40px;text-align:center}.modal-backdrop{align-items:flex-start;background:#000000bf;display:flex;inset:0;justify-content:center;padding:40px 20px 20px;position:fixed;z-index:999}.modal{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0f172a40;display:flex;flex-direction:column;max-height:90vh;width:min(900px,100%)}.modal-header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h3{font-size:1.25rem;margin:0}.modal-header .close{background:#0000;border:none;cursor:pointer;font-size:1.5rem;line-height:1}.modal-body{overflow-y:auto;padding:0 24px 24px}.form-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-left:20px;margin-top:20px}.form-grid label{color:#374151;display:flex;flex-direction:column;font-size:12px;gap:6px}.form-grid input,.form-grid select{border:1px solid #e5e7eb;border-radius:10px;font-size:.95rem;padding:10px 12px}.modal-footer{border-top:1px solid #f3f4f6;display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:16px}.modal-footer button{background:#f3f4f6;border:none;border-radius:999px;color:#111827;cursor:pointer;padding:10px 18px}.modal-footer .primary{background:#111827;color:#fff}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.form-section{border-bottom:.5px solid #e5e7eb;margin-bottom:32px;padding-bottom:24px}.form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section-title{border-radius:4px;color:#111827;font-size:1.1rem;font-weight:400;margin:0 0 16px;padding:12px 16px}.form-subsection{background:#fafbfc;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:20px;margin-top:20px;padding:16px}.form-subsection:first-of-type{margin-top:0}.form-subsection-title{color:#374151;font-size:.95rem;font-weight:600;margin:0 0 12px;padding-bottom:8px}.summary-modal{max-width:720px}.summary-body{display:flex;flex-direction:column;gap:20px}.summary-meta-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:16px}.summary-stat-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.summary-stat-grid span{color:#6b7280;display:block;font-size:.8rem;letter-spacing:.05em}.summary-stat-grid strong{font-size:1.1rem}.summary-section-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 15px #0f172a0d;padding:16px}.summary-card h4{color:#111827;font-size:.95rem;margin:0 0 8px}.summary-value{color:#111827;font-size:1.3rem;font-weight:700;margin:0}.summary-meta{color:#6b7280;font-size:.85rem;margin:4px 0 0}.app-shell{flex-direction:column;font-family:Atkinson Hyperlegible,sans-serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:0;line-height:100%;min-height:100vh}.app-header,.app-shell{background:#fff;display:flex}.app-header{align-items:center;border-bottom:1px solid #f0f1f5;justify-content:space-between;padding:.5rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-left{align-items:center;display:flex;gap:2rem}.app-title{color:#1c1d21;font-family:Atkinson Hyperlegible,sans-serif;font-size:24px;font-style:normal;font-weight:700;letter-spacing:0;line-height:100%;margin:0}.header-nav,.nav-link{align-items:center;display:flex;gap:.5rem}.nav-link{border-radius:8px;color:#5e6177;font-family:Atkinson Hyperlegible,sans-serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:0;line-height:100%;padding:.6rem 1.25rem;text-decoration:none;transition:all .2s}.nav-link:hover{background:#0000;color:#5e6177}.nav-link.active{background:#0000;color:#8f43ee}.nav-link.active svg{stroke:#8f43ee;fill:#8f43ee}.header-right{align-items:center;display:flex;gap:1rem}.notification-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#5e6177;cursor:pointer;display:flex;justify-content:center;padding:.5rem;position:relative;transition:background .2s}.notification-btn:hover{background:#f5f6fb}.notification-btn svg{stroke:currentColor;height:20px;width:20px}.notification-badge{align-items:center;background:#d7263d;border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:.7rem;font-weight:700;height:18px;justify-content:center;position:absolute;right:.25rem;top:.25rem;width:18px}.user-menu{position:relative}.user-avatar{align-items:center;background:#d9d9d9;border:none;border-radius:50%;color:#1e1e1e;cursor:pointer;display:flex;font-size:.9rem;font-weight:700;height:40px;justify-content:center;transition:transform .2s;width:40px}.user-avatar:hover{transform:scale(1.05)}.user-dropdown{background:#fff;border:1px solid #eceef5;border-radius:12px;box-shadow:0 10px 40px #0000001a;min-width:200px;overflow:hidden;position:absolute;right:0;top:calc(100% + .5rem);z-index:1000}.user-dropdown-header{align-items:center;background:#fafbfc;display:flex;gap:.75rem;padding:1rem}.user-dropdown-avatar{align-items:center;background:linear-gradient(135deg,#7b5cfc,#b357f8);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.9rem;font-weight:700;height:40px;justify-content:center;width:40px}.user-dropdown-info{flex:1 1;min-width:0}.user-dropdown-name{color:#1c1d21;font-size:.9rem;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown-role{color:#5e6177;font-size:.8rem;margin:.25rem 0 0;text-transform:capitalize}.user-dropdown-divider{background:#eceef5;height:1px;margin:0}.user-dropdown-item{align-items:center;background:#0000;border:none;color:#5e6177;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.75rem;padding:.75rem 1rem;text-align:left;transition:background .2s;width:100%}.user-dropdown-item:hover{background:#f5f6fb;color:#1c1d21}.user-dropdown-item svg{stroke:currentColor;flex-shrink:0;height:16px;width:16px}.app-main{flex:1 1;overflow-y:auto;padding:10px}.placeholder-view{background:#fff;border:1px solid #eceef5;border-radius:16px;padding:2rem}.placeholder-view h2{margin-top:0}.ghost-button{background:none;border:1px solid #d8dbe8;border-radius:999px;color:#4e5166}.ghost-button,.secondary-button{cursor:pointer;font-weight:600;padding:.45rem 1.1rem}.secondary-button{background:#f5f1ff;border:1px solid #d5c8ff;border-radius:999px;color:#6a49f2}.primary-button{background-color:#8f43ee;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.85rem 1.25rem;transition:opacity .2s ease}.primary-button:disabled{cursor:not-allowed;opacity:.6}.user-pill{background:#f0effb;border-radius:999px;display:flex;flex-direction:column;line-height:1.1;padding:.25rem .85rem;text-align:right}.user-name{color:#1d1f2c;font-weight:600}.user-role{color:#5e6177;font-size:.75rem}.auth-container{align-items:center;background:radial-gradient(circle at top,#f5f0ff,#f6f7fb 60%);display:flex;justify-content:center;min-height:100vh;padding:2rem 1rem}.auth-card{background:#fff;border:1px solid #eceef5;border-radius:20px;box-shadow:0 20px 45px #12073a14;display:flex;flex-direction:column;gap:1.25rem;max-width:420px;padding:2.25rem;width:100%}.auth-card h1{font-size:1.75rem;margin:0}.auth-brand{align-items:center;display:flex;gap:1rem}.brand-badge.large{font-size:1.25rem;height:60px;width:60px}.auth-form{gap:1rem}.auth-form,.auth-form label{display:flex;flex-direction:column}.auth-form label{color:#4a4d62;font-size:.9rem;font-weight:600;gap:.35rem}.auth-form input{border:1px solid #dfe1ec;border-radius:12px;font-size:1rem;padding:.75rem 1rem}.password-hint{color:#666;display:block;font-size:.875rem;line-height:1.4;margin-top:.5rem}.auth-links{display:flex;font-size:.9rem;justify-content:space-between}.auth-links a{color:#6a49f2;font-weight:600;text-decoration:none}.auth-error{color:#d7263d;font-weight:600;margin:0}.auth-success{color:#10893e;font-weight:600;margin:0}.auth-subtitle{color:#5e6177;line-height:1.4;margin:0}
/*# sourceMappingURL=main.f6d25055.css.map*/