@import url(https://fonts.googleapis.com/css2?family=Neuton:ital,wght@0,300;0,400;0,700;1,400&display=swap);@import url(https://fonts.googleapis.com/css2?family=Barlow:wght@300;400;600;700;800&display=swap);@import url(https://fonts.googleapis.com/css2?family=Barlow+Semi+Condensed:wght@300;400;600;700;800&display=swap);:root{--background:0 0% 100%;--foreground:210 52% 11%;--card:0 0% 100%;--card-foreground:210 52% 11%;--popover:0 0% 100%;--popover-foreground:210 52% 11%;--primary:203 50% 15%;--primary-foreground:0 0% 100%;--secondary:203 20% 91%;--secondary-foreground:210 52% 11%;--muted:203 20% 91%;--muted-foreground:229 8% 44%;--accent:149 68% 41%;--accent-foreground:0 0% 100%;--destructive:0 84% 51%;--destructive-foreground:0 0% 100%;--border:203 20% 91%;--input:203 20% 91%;--ring:203 50% 15%;--success:149 68% 41%;--success-foreground:0 0% 100%;--warning:37 67% 41%;--warning-foreground:0 0% 100%;--info:194 92% 37%;--info-foreground:0 0% 100%;--powder-blue:200 8% 77%;--primary-blue-tint:200 50% 96%;--divider:var(--powder-blue);--subtle-background:var(--primary-blue-tint);--radius:1rem}.dark{--background:210 52% 11%;--foreground:0 0% 100%;--card:203 50% 15%;--card-foreground:0 0% 100%;--popover:203 50% 15%;--popover-foreground:0 0% 100%;--primary:149 68% 41%;--primary-foreground:0 0% 100%;--secondary:203 7% 54%;--secondary-foreground:0 0% 100%;--muted:203 7% 54%;--muted-foreground:203 20% 91%;--accent:149 68% 41%;--accent-foreground:0 0% 100%;--destructive:0 84% 51%;--destructive-foreground:0 0% 100%;--border:203 7% 54%;--input:203 7% 54%;--ring:149 68% 41%;--success:149 68% 41%;--success-foreground:0 0% 100%;--warning:37 67% 41%;--warning-foreground:0 0% 100%;--info:194 92% 37%;--info-foreground:0 0% 100%;--powder-blue:200 8% 40%;--primary-blue-tint:203 50% 15%;--divider:var(--powder-blue);--subtle-background:var(--primary-blue-tint)}*{border-color:#e3e9ed;border-color:hsl(var(--border));box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:hsl(var(--background));color:#0d1c2b;color:hsl(var(--foreground));font-family:Barlow,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:16px;line-height:1.5;margin:0}h1,h2,h3,h4,h5,h6{font-family:Neuton,Georgia,serif;font-weight:400;line-height:1.2}h1{font-size:3rem;line-height:3.25rem}h2{font-size:2.5rem;line-height:2.75rem}h3{font-size:2rem;line-height:2.125rem}h4{font-size:1.5rem;line-height:1.75rem}h4,h5{font-family:Barlow,sans-serif;font-weight:600}h5{font-size:1.25rem;line-height:1.5rem}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.pt-0{padding-top:0}.pb-0{padding-bottom:0}.m-0{margin:0}.m-2{margin:.5rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mr-2{margin-right:.5rem}.ml-2{margin-left:.5rem}.space-y-1>*+*{margin-top:.25rem}.space-y-1\.5>*+*{margin-top:.375rem}.space-y-2>*+*{margin-top:.5rem}.space-y-4>*+*{margin-top:1rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem}.text-lg,.text-xl{line-height:1.75rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.font-light{font-weight:300}.font-regular{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.text-center{text-align:center}.text-left{text-align:left}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.text-foreground{color:#0d1c2b;color:hsl(var(--foreground))}.text-muted-foreground{color:#676b79;color:hsl(var(--muted-foreground))}.text-card-foreground{color:#0d1c2b;color:hsl(var(--card-foreground))}.text-primary{color:#132b39;color:hsl(var(--primary))}.text-primary-foreground{color:#fff;color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:#0d1c2b;color:hsl(var(--secondary-foreground))}.text-destructive-foreground{color:#fff;color:hsl(var(--destructive-foreground))}.bg-card{background-color:#fff;background-color:hsl(var(--card))}.bg-primary{background-color:#132b39;background-color:hsl(var(--primary))}.bg-secondary{background-color:#e3e9ed;background-color:hsl(var(--secondary))}.bg-muted{background-color:#e3e9ed;background-color:hsl(var(--muted))}.bg-background{background-color:#fff;background-color:hsl(var(--background))}.bg-destructive{background-color:#eb1919;background-color:hsl(var(--destructive))}.border{border:1px solid #e3e9ed;border:1px solid hsl(var(--border))}.border-input{border:1px solid #e3e9ed;border:1px solid hsl(var(--input))}.rounded{border-radius:.25rem}.rounded-md{border-radius:calc(1rem - 2px);border-radius:calc(var(--radius) - 2px)}.rounded-lg{border-radius:1rem;border-radius:var(--radius)}.rounded-full{border-radius:9999px}.shadow-sm{box-shadow:0 1px 2px 0 #0000000d}.shadow{box-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a}.transition-colors{transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}.hover\:bg-secondary\/80:hover{background-color:#e3e9edcc;background-color:hsl(var(--secondary)/.8)}.hover\:bg-accent:hover{background-color:#21b066;background-color:hsl(var(--accent))}.hover\:text-accent-foreground:hover{color:#fff;color:hsl(var(--accent-foreground))}.focus-visible\:outline-none:focus-visible{outline:2px solid #0000;outline-offset:2px}.focus-visible\:ring-2:focus-visible{box-shadow:0 0 0 2px #132b39;box-shadow:0 0 0 2px hsl(var(--ring))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.flex-wrap{flex-wrap:wrap}.relative{position:relative}.absolute{position:absolute}.opacity-75{opacity:.75}.h-9{height:2.25rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.whitespace-nowrap{white-space:nowrap}.font-mono{font-family:ui-monospace,SFMono-Regular,SF Mono,Monaco,Consolas,Liberation Mono,Courier New,monospace}.max-w-2xl{max-width:42rem}.max-w-6xl{max-width:72rem}.max-h-90vh,.max-h-\[90vh\]{max-height:90vh}.overflow-y-auto{overflow-y:auto}.ring-offset-background{box-shadow:0 0 0 2px #fff;box-shadow:0 0 0 2px hsl(var(--background))}.ring-offset-2{box-shadow:0 0 0 2px #0000}.hover\:bg-primary\/90:hover{background-color:#132b39e6;background-color:hsl(var(--primary)/.9)}.hover\:bg-destructive\/90:hover{background-color:#eb1919e6;background-color:hsl(var(--destructive)/.9)}.size-4{height:1rem;width:1rem}.w-10{width:2.5rem}.h-4{height:1rem;width:1rem}.mx-4{margin-left:1rem;margin-right:1rem}.hover\:text-foreground:hover{color:#0d1c2b;color:hsl(var(--foreground))}.fixed{position:fixed}.inset-0{bottom:0;left:0;right:0;top:0}.z-50{z-index:50}.left-\[50\%\]{left:50%}.top-\[50\%\]{top:50%}.translate-x-\[-50\%\]{transform:translateX(-50%)}.translate-y-\[-50\%\]{transform:translateY(-50%)}.translate-x-\[-50\%\].translate-y-\[-50\%\]{transform:translate(-50%,-50%)}.max-w-lg{max-width:32rem}.bg-black\/80{background-color:#000c}.duration-200{transition-duration:.2s}.right-4{right:1rem}.top-4{top:1rem}.rounded-sm{border-radius:.125rem}.opacity-70{opacity:.7}.hover\:opacity-100:hover{opacity:1}.sm\:rounded-lg{border-radius:1rem;border-radius:var(--radius)}.sm\:text-left{text-align:left}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>*+*{margin-left:.5rem}.flex-col-reverse{flex-direction:column-reverse}.animate-in{animation:fadeIn .2s ease-out}.animate-out{animation:fadeOut .2s ease-in}.fade-in-0{opacity:1}.fade-out-0{opacity:0}.zoom-in-95{transform:scale(.95)}.zoom-out-95{transform:scale(1.05)}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@media (min-width:640px){.sm\:rounded-lg{border-radius:1rem;border-radius:var(--radius)}.sm\:text-left{text-align:left}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.breadcrumb{align-items:center;color:#676b79;display:flex;gap:.5rem;margin-bottom:1rem}.breadcrumb a{color:#132b39;transition:color .2s ease}.breadcrumb-separator{color:#676b79;color:hsl(var(--muted-foreground));-webkit-user-select:none;user-select:none}.dark-mode-ready{transition:background-color .2s ease,color .2s ease}.dark .bg-card{background-color:#fff!important;background-color:hsl(var(--card))!important}.dark .text-card-foreground{color:#0d1c2b!important;color:hsl(var(--card-foreground))!important}.dark table,.dark thead th{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark thead th{background-color:#e3e9ed;background-color:hsl(var(--muted))}.dark tbody tr{background-color:#fff;background-color:hsl(var(--card))}.dark tbody tr,.dark tbody tr:hover{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark tbody tr:hover{background-color:#fff;background-color:hsl(var(--background))}.dark table td,.dark tbody td{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .invoice-row-overdue{background-color:#eb191940!important;background-color:hsl(var(--destructive)/.25)!important}.dark .invoice-row-overdue:hover{background-color:#eb191966!important;background-color:hsl(var(--destructive)/.4)!important}.dark .invoice-row-open{background-color:#af792340!important;background-color:hsl(var(--warning)/.25)!important}.dark .invoice-row-open:hover{background-color:#af792366!important;background-color:hsl(var(--warning)/.4)!important}.dark .financial-item{background:#fff!important;background:hsl(var(--card))!important;border-color:#e3e9ed!important;border-color:hsl(var(--border))!important}.dark .budget-comparison,.dark .financial-item,.dark .financial-item *,.dark .forecast-period-card,.dark .forecast-period-card *,.dark .forecast-totals-summary,.dark .forecast-totals-summary *{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .budget-comparison{background-color:#fff!important;background-color:hsl(var(--card))!important}.dark .budget-comparison *{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .budget-comparison .warning{color:#eb1919!important;color:hsl(var(--destructive))!important}.dark .budget-comparison .success{color:#21b066!important;color:hsl(var(--success))!important}.dark .report-card{background:#fff!important;background:hsl(var(--card))!important;border-color:#e3e9ed!important;border-color:hsl(var(--border))!important;color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .report-card-header{border-bottom-color:#e3e9ed!important;border-bottom-color:hsl(var(--border))!important}.dark .report-card-content,.dark .report-card-title,.dark .report-preview-header-content h1{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .report-preview-header-subtitle{color:#676b79!important;color:hsl(var(--muted-foreground))!important}.dark .report-table-container{border-color:#e3e9ed!important;border-color:hsl(var(--border))!important}.dark .report-table thead{background-color:#e3e9ed!important;background-color:hsl(var(--muted))!important;border-bottom-color:#e3e9ed!important;border-bottom-color:hsl(var(--border))!important}.dark .report-table th{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .report-table tbody tr{border-bottom-color:#e3e9ed!important;border-bottom-color:hsl(var(--border))!important}.dark .report-table tbody tr:hover{background-color:#fff!important;background-color:hsl(var(--background))!important}.dark .report-table td{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .report-financial-label,.dark .report-time-label{color:#676b79!important;color:hsl(var(--muted-foreground))!important}.dark .report-financial-value,.dark .report-time-value{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .report-financial-value.positive{color:#21b066!important;color:hsl(var(--success))!important}.dark .report-financial-value.negative{color:#eb1919!important;color:hsl(var(--destructive))!important}.dark .forecast-period-card{background:#fff!important;background:hsl(var(--card))!important;border-color:#e3e9ed!important;border-color:hsl(var(--border))!important}.dark .forecast-period-header{border-bottom-color:#e3e9ed!important;border-bottom-color:hsl(var(--border))!important}.dark .forecast-period-header h4{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .forecast-stat-label,.dark .total-label{color:#676b79!important;color:hsl(var(--muted-foreground))!important}.dark .forecast-stat-value,.dark .total-value{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .forecast-totals-summary{background:#fff!important;background:hsl(var(--card))!important;border-left-color:#088db5!important;border-left-color:hsl(var(--info))!important}.dark .budget-comparison p,.dark .forecast-totals-summary h4{color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .report-preview-loading{background:#fff!important;background:hsl(var(--card))!important;border-color:#e3e9ed!important;border-color:hsl(var(--border))!important}.dark .no-data-message,.dark .report-preview-loading-text{color:#676b79!important;color:hsl(var(--muted-foreground))!important}.dark .report-narrative-textarea{background-color:#fff!important;background-color:hsl(var(--background))!important;border-color:#e3e9ed!important;border-color:hsl(var(--border))!important;color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .report-narrative-textarea:disabled{background-color:#e3e9ed!important;background-color:hsl(var(--muted))!important}.dark .invoice-section-title{border-bottom-color:#e3e9ed!important;border-bottom-color:hsl(var(--border))!important;color:#0d1c2b!important;color:hsl(var(--foreground))!important}.dark .task-row-over-budget{background-color:#eb191933!important;background-color:hsl(var(--destructive)/.2)!important}.dark .task-row-warning{background-color:#af792333!important;background-color:hsl(var(--warning)/.2)!important}.dark .report-table td.text-danger{color:#eb1919!important;color:hsl(var(--destructive))!important}.dark .report-table td.text-warning{color:#af7923!important;color:hsl(var(--warning))!important}.dark .forecast-description{color:#676b79!important;color:hsl(var(--muted-foreground))!important}.app-header{background:hsl(var(--background));border-bottom:1px solid hsl(var(--border));box-shadow:0 1px 3px #0000001a;position:sticky;top:0;z-index:100}.header-content{height:64px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 24px}.header-left{gap:32px}.header-left,.logo{align-items:center;display:flex}.logo{gap:.75rem}.logo-link{align-items:center;display:inline-flex;text-decoration:none;transition:opacity .2s ease}.logo-link:hover{opacity:.85}.logo-link:focus{border-radius:4px;outline:2px solid hsl(var(--ring));outline-offset:4px}.logo-image{display:block;height:2rem;object-fit:contain;width:auto}.hidden{display:none}.block{display:block}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.header-nav{align-items:center;gap:24px}.desktop-nav,.header-nav{display:flex}.header-nav a{border-radius:6px;color:hsl(var(--foreground)/.7);font-size:15px;font-weight:600;padding:8px 12px;text-decoration:none;transition:color .2s}.header-nav a:hover{background:hsl(var(--muted)/.5);color:hsl(var(--primary))}.nav-dropdown{position:relative}.nav-dropdown-button{align-items:center;background:#0000;border:none;border-radius:6px;color:hsl(var(--foreground)/.7);cursor:pointer;display:flex;font-family:inherit;font-size:15px;font-weight:600;gap:6px;padding:8px 12px;position:relative;transition:all .2s}.nav-dropdown-button:hover{background:hsl(var(--muted)/.5);color:hsl(var(--primary))}.dropdown-arrow{transition:transform .2s}.nav-dropdown-button:hover .dropdown-arrow{transform:rotate(180deg)}.nav-dropdown-menu{animation:dropdownFadeIn .2s ease;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 10px 25px #0000001a;left:0;min-width:180px;padding:8px;position:absolute;top:calc(100% + 8px);z-index:1000}.nav-dropdown-menu a{align-items:center;border-radius:6px;color:hsl(var(--foreground)/.7);display:flex;font-size:14px;font-weight:500;justify-content:space-between;margin:2px 0;padding:10px 12px;text-decoration:none;transition:all .2s}.nav-dropdown-menu a:hover{background:hsl(var(--muted)/.5);color:hsl(var(--primary))}.dropdown-badge{background:hsl(var(--destructive));border-radius:9px;color:hsl(var(--destructive-foreground));font-size:10px;font-weight:600;height:18px;justify-content:center;margin-left:8px;min-width:18px;padding:0 5px}.admin-link,.dropdown-badge{align-items:center;display:inline-flex}.admin-link{gap:6px;position:relative}.mobile-menu-button{align-items:center;background:#0000;border:none;border-radius:6px;color:hsl(var(--foreground)/.7);cursor:pointer;display:none;justify-content:center;padding:8px;transition:all .2s}.mobile-menu-button:hover{background:hsl(var(--muted)/.5);color:hsl(var(--primary))}.mobile-menu-button svg{stroke:currentColor;fill:none}.mobile-nav{animation:slideDown .3s ease;background:hsl(var(--background));border-top:1px solid hsl(var(--border));display:none;flex-direction:column;padding:16px}@keyframes slideDown{0%{max-height:0;opacity:0}to{max-height:500px;opacity:1}}.mobile-nav a{align-items:center;border-radius:6px;color:hsl(var(--foreground)/.7);display:flex;font-size:15px;font-weight:500;justify-content:space-between;padding:12px 16px;text-decoration:none;transition:all .2s}.mobile-nav a:hover{background:hsl(var(--muted)/.5);color:hsl(var(--primary))}.mobile-nav-section-title{color:hsl(var(--muted-foreground));font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;margin-top:12px;padding:0 16px;text-transform:uppercase}.mobile-nav-indent{padding-left:32px!important}.pending-badge-mobile{align-items:center;background:hsl(var(--destructive));border-radius:10px;color:hsl(var(--destructive-foreground));display:inline-flex;font-size:11px;font-weight:600;height:20px;justify-content:center;min-width:20px;padding:0 6px}.header-right{align-items:center;display:flex;gap:12px}.user-avatar-container{background:linear-gradient(135deg,hsl(var(--primary)) 0,hsl(var(--accent)) 100%);border-radius:50%;box-shadow:0 2px 8px hsl(var(--primary)/.2);padding:3px;position:relative;transition:all .2s}.user-avatar-container:hover{box-shadow:0 4px 12px hsl(var(--primary)/.35);transform:translateY(-1px)}.user-avatar{border:2px solid #fff;border-radius:50%;display:block;height:36px;object-fit:cover;width:36px}.user-avatar-placeholder{align-items:center;background:hsl(var(--muted)/.5);border:2px solid hsl(var(--card));border-radius:50%;color:hsl(var(--foreground));display:flex;font-size:16px;font-weight:600;height:36px;justify-content:center;width:36px}.sign-out-button{align-items:center;background:#0000;border:none;border-radius:6px;color:hsl(var(--foreground)/.7);cursor:pointer;display:flex;font-family:inherit;font-size:15px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.sign-out-button:hover{background:hsl(var(--destructive)/.1);color:hsl(var(--destructive))}.sign-out-button svg{flex-shrink:0}.theme-toggle-button{align-items:center;background:#0000;border:none;border-radius:8px;color:hsl(var(--muted-foreground));cursor:pointer;display:flex;height:40px;justify-content:center;padding:0;transition:all .2s;width:40px}.theme-toggle-button:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.theme-toggle-button:active{transform:scale(.95)}.pending-badge{align-items:center;animation:pulse 2s ease-in-out infinite;background:hsl(var(--destructive));border-radius:10px;color:hsl(var(--destructive-foreground));display:inline-flex;font-size:11px;font-weight:600;height:20px;justify-content:center;min-width:20px;padding:0 6px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@media (min-width:768px){.logo-image{height:2.5rem}.md\:block{display:block}.md\:hidden{display:none}}@media (max-width:767px){.block,.hidden{display:block}.md\:block{display:none}.md\:hidden{display:block}}@media (max-width:968px){.header-left{gap:16px}.desktop-nav,.user-info{display:none}.mobile-menu-button,.mobile-nav{display:flex}}@media (max-width:640px){.header-content{padding:0 16px}}.impersonation-banner{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 10px #0003;color:#fff;left:0;padding:12px 20px;position:sticky;right:0;top:0;z-index:999}.impersonation-content{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:0 auto;max-width:1400px}.impersonation-message{align-items:center;display:flex;font-size:.95em;gap:10px}.impersonation-icon{font-size:1.3em}.impersonation-message strong{font-weight:600;text-decoration:underline}.exit-impersonation-btn{background:#fff3;border:1px solid #fff6;border-radius:4px;color:#fff;cursor:pointer;font-size:.9em;font-weight:500;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.exit-impersonation-btn:hover{background:#ffffff4d;border-color:#fff9;box-shadow:0 2px 8px #0003;transform:translateY(-1px)}@media (max-width:768px){.impersonation-content{flex-direction:column;gap:12px;text-align:center}.impersonation-message{flex-direction:column;gap:5px}.exit-impersonation-btn{width:100%}}.login-container{align-items:center;background:linear-gradient(135deg,hsl(var(--primary)) 0,hsl(var(--accent)) 100%);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:hsl(var(--card));border-radius:12px;box-shadow:0 10px 40px #0003;max-width:450px;overflow:hidden;width:100%}.login-header{background:linear-gradient(135deg,hsl(var(--primary)) 0,hsl(var(--accent)) 100%);color:hsl(var(--primary-foreground));padding:30px 40px;text-align:center}.login-header h1{font-size:32px;font-weight:700;margin:0 0 8px}.login-header p{font-size:14px;margin:0;opacity:.9}.login-content{padding:40px}.login-description{color:hsl(var(--muted-foreground));line-height:1.6;margin-bottom:30px;text-align:center}.login-error{background:hsl(var(--destructive)/.1);border-left:4px solid hsl(var(--destructive));border-radius:6px;color:hsl(var(--destructive));font-size:14px;margin:-20px 40px 20px;padding:12px 16px}.google-login-button{align-items:center;background:hsl(var(--card));border:2px solid hsl(var(--border));border-radius:8px;color:hsl(var(--foreground));cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;justify-content:center;padding:14px 24px;transition:all .3s ease;width:100%}.google-login-button:hover{background:hsl(var(--muted)/.3);border-color:hsl(var(--border));box-shadow:0 2px 8px #0000001a}.google-login-button:active{transform:translateY(1px)}.google-icon{height:24px;width:24px}.login-footer{border-top:1px solid hsl(var(--border));margin-top:30px;padding-top:20px}.login-footer p{color:hsl(var(--muted-foreground));line-height:1.5;margin:0;text-align:center}.login-footer small{font-size:12px}.home-container{background:hsl(var(--primary));display:flex;flex-direction:column;min-height:100vh}.home-header{color:hsl(var(--primary-foreground));padding:4rem 2rem 2rem;text-align:center}.home-header h1{font-size:3rem;font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px #0000004d}.home-header p{font-size:1.2rem;margin-bottom:0;opacity:.9}.home-content{flex:1 1;margin:0 auto;max-width:1200px;padding:2rem;width:100%}.tools-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr);margin-bottom:3rem}.tool-card{transition:transform .3s ease,box-shadow .3s ease}.tool-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.tool-card.relative.opacity-75:hover{box-shadow:0 4px 6px #0000001a;transform:none}.home-footer{color:hsl(var(--primary-foreground)/.8);font-size:.9rem;padding:2rem;text-align:center}@media (max-width:768px){.home-header h1{font-size:2rem}.home-header p{font-size:1rem}.tools-grid{gap:1rem;grid-template-columns:1fr}.tool-card{padding:1.5rem}.home-content{padding:1rem}}.settings-container{margin:0 auto;max-width:1400px;padding:2rem}.breadcrumb{font-size:.875rem;margin-bottom:1.5rem}.settings-header{margin-bottom:3rem;text-align:center}.settings-header h1{color:hsl(var(--foreground));font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.settings-header p{color:hsl(var(--muted-foreground));font-size:1.125rem}.settings-content,.settings-grid{margin-bottom:2rem}.settings-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.settings-card{display:flex;flex-direction:column;height:100%;transition:transform .2s,box-shadow .2s}.settings-card:hover{box-shadow:0 12px 24px #0000001a;transform:translateY(-4px)}.settings-icon{font-size:3rem;margin-bottom:.5rem}@media (max-width:768px){.settings-container{padding:1rem}.settings-header h1{font-size:2rem}.settings-header p{font-size:1rem}.settings-grid{gap:1.5rem;grid-template-columns:1fr}}.page-header{background:hsl(var(--primary));border-radius:12px;box-shadow:0 4px 6px #0000001a;color:hsl(var(--primary-foreground));margin-bottom:32px;padding:36px;text-align:left}.page-header h1{font-family:Neuton,serif;font-size:2.5rem;font-weight:700;line-height:1.2;margin:0 0 12px}.page-header p{font-family:Barlow,sans-serif;font-size:1.125rem;font-weight:400;margin:0;opacity:.95}.page-header-content{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;width:100%}.page-header-text{flex:1 1;min-width:200px}.page-header-actions{align-items:center;display:flex;flex-shrink:0;justify-content:flex-end;margin-left:auto}@media (max-width:768px){.page-header h1{font-size:1.75rem}.page-header-content{align-items:flex-start;flex-direction:column}.page-header-actions{width:100%}}.page-layout-container{margin:0 auto;max-width:1400px;padding:20px}@media (max-width:768px){.page-layout-container{padding:15px}}.member-info{background:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:4px;margin-bottom:20px;padding:12px}.member-info strong{color:hsl(var(--foreground));display:block;font-size:1em}.form-group label.checkbox-label{align-items:center;display:flex;font-weight:400;gap:8px}.form-group label.checkbox-label input[type=checkbox]{margin:0;width:auto}.form-group input[type=email],.form-group input[type=number],.form-group input[type=text],.form-group select{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-family:inherit;font-size:1em;padding:10px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.controls{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 1px 3px #0000000d;gap:1rem;margin-bottom:2rem;padding:1.5rem}.search-filter{gap:.5rem}.search-filter label{white-space:nowrap}.search-filter input{border:1px solid hsl(var(--input));font-size:1rem;padding:.5rem}.activity-filter,.activity-filter label{align-items:center;display:flex;gap:.5rem}.activity-filter label{cursor:pointer;font-weight:500}.stats{font-size:.9rem;margin-left:auto}.add-member-btn{background:hsl(var(--primary));border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background-color .2s}.add-member-btn:hover{background:hsl(var(--primary)/.9)}.add-member-form{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 1px 3px #0000000d;margin-bottom:2rem;padding:1.5rem}.add-member-form h3{color:hsl(var(--foreground));font-size:1.2rem;margin:0 0 1rem}.error-message{font-size:.9rem;margin-bottom:1rem;padding:.75rem}.form-row{display:flex;gap:1rem;margin-bottom:1rem}.form-field{flex:1 1}.form-field label{color:hsl(var(--foreground));font-size:.9rem;font-weight:500}.form-field input,.form-field select{border:1px solid hsl(var(--input));border-radius:4px;font-size:1rem;padding:.5rem}.form-actions{gap:.5rem;margin-top:1rem}.form-actions button{border-radius:4px;font-size:.9rem;padding:.5rem 1rem;transition:background-color .2s}.form-actions button[type=submit]{background:hsl(var(--primary))}.form-actions button[type=submit]:hover{background:hsl(var(--primary)/.9)}.form-actions button[type=button]{color:hsl(var(--foreground))}.members-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.member-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:1.5rem;transition:transform .2s,box-shadow .2s}.member-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.member-card h4{color:hsl(var(--foreground));font-size:1.2rem;margin:0 0 1rem}.member-info{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.member-details{flex:1 1}.role{color:hsl(var(--foreground));font-weight:500;margin-bottom:.25rem}.service-line{color:hsl(var(--muted-foreground));font-size:.9rem}.status{flex-shrink:0}.status-badge{font-size:.8rem;letter-spacing:.5px}.email-display{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.email-label{color:hsl(var(--foreground));font-weight:500}.email-value{color:hsl(var(--muted-foreground));font-size:.9rem;word-break:break-all}.cost-rate,.weekly-capacity{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.capacity-label,.rate-label{color:hsl(var(--foreground));font-weight:500}.capacity-value,.rate-value{color:hsl(var(--success));font-weight:600}.card-actions button{transition:background-color .2s}.card-actions button:not([type]),.card-actions button[type=submit]{background:hsl(var(--primary));color:#fff}.card-actions button:not([type]):hover,.card-actions button[type=submit]:hover{background:hsl(var(--primary)/.9)}.card-actions button[type=button]{background:hsl(var(--muted));color:hsl(var(--foreground))}.card-actions button[type=button]:hover{background:hsl(var(--muted)/.8)}.edit-fields{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.active-status-edit,.cost-rate-edit,.email-edit,.service-line-edit,.weekly-capacity-edit{display:flex;flex-direction:column;gap:.5rem}.cost-rate-edit label,.email-edit label,.service-line-edit label,.weekly-capacity-edit label{color:hsl(var(--foreground));font-size:.9rem;font-weight:500}.cost-rate-edit input,.email-edit input,.service-line-edit select,.weekly-capacity-edit input{border:1px solid hsl(var(--input));border-radius:4px;font-size:1rem;padding:.5rem}.active-status-edit label{align-items:center;color:hsl(var(--foreground));cursor:pointer;display:flex;font-weight:500;gap:.5rem}.no-members{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 1px 3px #0000000d;color:hsl(var(--muted-foreground));font-size:1.1rem;padding:2rem;text-align:center}@media (max-width:768px){.controls{align-items:flex-start;flex-direction:column}.stats{margin-left:0}.add-member-btn{width:100%}.form-row{flex-direction:column}.members-grid{grid-template-columns:1fr}.team-members-header h1{font-size:2rem}}.form-group input{border:1px solid hsl(var(--input));border-radius:6px;font-size:1rem;padding:.75rem;transition:border-color .2s;width:100%}.form-group input:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.1);outline:none}.form-group input.disabled-input{background-color:hsl(var(--muted)/.5);color:hsl(var(--muted-foreground));cursor:not-allowed}.service-lines-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.service-line-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:1.5rem;transition:transform .2s,box-shadow .2s}.service-line-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.service-line-info h4{color:hsl(var(--foreground));font-size:1.2rem;font-weight:600;margin-bottom:.5rem}.service-line-info p{color:hsl(var(--muted-foreground));line-height:1.5;margin-bottom:1rem}@media (max-width:768px){.service-lines-content{padding:1rem}.section-header{align-items:flex-start;flex-direction:column;gap:1rem}.service-lines-grid{grid-template-columns:1fr}.service-lines-header h1{font-size:2rem}.card-actions,.form-actions{flex-direction:column}}.section-header{align-items:center;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 1px 3px #0000000d;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1.5rem}.section-header h2{color:hsl(var(--foreground));font-size:1.8rem;margin:0}.info-message{color:hsl(var(--muted-foreground));font-size:.9rem;font-style:italic;margin:0}.add-button{background:hsl(var(--success));border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:background .2s}.add-button:hover{background:hsl(var(--success)/.9)}.add-form{background:hsl(var(--card));border-radius:8px;box-shadow:0 1px 3px #0000000d;margin-bottom:2rem;padding:2rem}.add-form h3{color:hsl(var(--foreground));font-size:1.3rem}.add-form h3,.form-group{margin-bottom:1.5rem}.form-group input,.form-group select,.form-group textarea{border:1px solid hsl(var(--input));border-radius:6px;font-size:1rem;padding:.75rem;resize:vertical;transition:border-color .2s}.form-group textarea{font-family:inherit;min-height:80px}.form-actions{gap:1rem;margin-top:1.5rem}.form-actions button{border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:background .2s}.form-actions button[type=submit]{background:hsl(var(--success));color:#fff}.form-actions button[type=submit]:hover{background:hsl(var(--success)/.9)}.form-actions button[type=button]{background:hsl(var(--muted));color:#fff}.form-actions button[type=button]:hover{background:hsl(var(--muted)/.8)}.roles-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.role-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 1px 3px #0000000d;padding:1.5rem;transition:transform .2s,box-shadow .2s}.role-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.role-info h4{color:hsl(var(--foreground));font-size:1.3rem;font-weight:600;margin-bottom:.75rem}.role-description{font-size:.95rem;line-height:1.6}.role-description,.role-details{margin-bottom:1rem}.role-rate,.role-service-line{color:hsl(var(--muted-foreground));font-size:.9rem;font-weight:500;margin-bottom:.5rem}.role-id{background:hsl(var(--muted)/.5);border-radius:4px;color:hsl(var(--muted-foreground)/.7);display:inline-block;font-size:.85rem;font-weight:500;padding:.25rem .5rem}.card-actions{display:flex;gap:.5rem;margin-top:1rem}.card-actions button{border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:background .2s}.card-actions button:not(.delete-button){background:hsl(var(--primary));color:#fff}.card-actions button:not(.delete-button):hover{background:hsl(var(--primary)/.9)}.card-actions .delete-button{background:hsl(var(--destructive));color:#fff}.card-actions .delete-button:hover{background:hsl(var(--destructive)/.9)}.no-data{border:1px solid hsl(var(--border));box-shadow:0 1px 3px #0000000d}@media (max-width:768px){.roles-content{padding:1rem}.section-header{align-items:flex-start;flex-direction:column;gap:1rem}.roles-grid{grid-template-columns:1fr}.roles-header h1{font-size:2rem}.card-actions,.form-actions{flex-direction:column}}.sync-projects-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s ease}.sync-projects-button:hover:not(:disabled){background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.sync-projects-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.sync-projects-button.loading{opacity:.8}.sync-icon{font-size:1.2em}.loading-spinner{border:2px solid #ffffff4d;border-top-color:#fff}.sync-message{align-items:center;border-radius:6px;display:flex;font-weight:500;gap:8px;margin:1rem auto 0;max-width:1400px;padding:12px 16px}.sync-message.success{background:hsl(var(--success)/.2);border:1px solid hsl(var(--success)/.3);color:hsl(var(--success-foreground))}.sync-message.error{background:hsl(var(--destructive)/.2);border:1px solid hsl(var(--destructive)/.3);color:hsl(var(--destructive-foreground))}.message-icon{font-size:1.1em}.editing-row{background-color:hsl(var(--muted)/.3);border-left:4px solid hsl(var(--primary))}.edit-input{border:1px solid hsl(var(--input));font-family:inherit;font-size:.9em;transition:border-color .2s ease}.edit-input:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.25);outline:none}.edit-textarea{font-family:inherit;min-height:60px;resize:vertical}.edit-actions{flex-wrap:wrap}.cancel-button-small,.edit-button-small,.save-button-small{border:none;border-radius:4px;cursor:pointer;font-size:.8em;font-weight:500;padding:4px 8px;transition:all .2s ease;white-space:nowrap}.edit-button-small{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.edit-button-small:hover{background-color:hsl(var(--primary)/.9);transform:translateY(-1px)}.save-button-small{color:#fff}.save-button-small:hover{transform:translateY(-1px)}.cancel-button-small{background-color:hsl(var(--muted));color:#fff}.cancel-button-small:hover{background-color:hsl(var(--muted)/.8);transform:translateY(-1px)}.delete-button-small{border-radius:4px;font-size:.8em;padding:4px 8px;transition:all .2s ease;white-space:nowrap}.delete-button-small:hover{transform:translateY(-1px)}.fixed-cost-tasks-table td,.project-data-table td,.team-members-table td{padding:8px;vertical-align:top}.editing-row td{padding:12px 8px}@media (max-width:768px){.edit-actions{flex-direction:column;gap:4px}.edit-input{font-size:16px}.cancel-button-small,.delete-button-small,.edit-button-small,.save-button-small{font-size:.85em;padding:6px 10px}.header-content{flex-direction:column;gap:1rem}.header-content,.header-text{text-align:center}.sync-projects-button{font-size:.9rem;padding:10px 16px}}.projects-controls{align-items:center;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 1px 3px #0000000d;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1.5rem}.filter-controls{align-items:center;flex-wrap:wrap;gap:1.5rem}.toggle-control{align-items:center;color:hsl(var(--foreground));cursor:pointer;display:flex;font-weight:500;gap:.5rem}.toggle-control input[type=checkbox]{cursor:pointer;height:16px;width:16px}.filter-group label,.search-label{color:hsl(var(--foreground))!important;font-size:.875rem;font-weight:500;margin:0}.project-search-filter{background:hsl(var(--background));border:1px solid hsl(var(--input));border-radius:4px;color:hsl(var(--foreground));font-size:.875rem;min-width:200px;padding:.5rem .75rem;transition:border-color .2s,box-shadow .2s}.project-search-filter:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.1);outline:none}.projects-summary{color:hsl(var(--muted-foreground));font-weight:500}.project-count{background:hsl(var(--muted));border-radius:4px;padding:.5rem 1rem}.projects-by-client{display:flex;flex-direction:column;gap:2.5rem}.client-group{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 1px 3px #0000000d;margin-bottom:2rem;overflow:hidden}.client-header{align-items:center;background:hsl(var(--muted)/.5);border-bottom:1px solid hsl(var(--border));display:flex;justify-content:space-between;padding:1.5rem 2rem}.client-header h2{color:hsl(var(--foreground));font-size:1.5rem;font-weight:600;margin:0}.project-count-badge{background:hsl(var(--muted));border-radius:20px;color:hsl(var(--foreground));font-size:.875rem;font-weight:500;padding:.5rem 1rem}.projects-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));padding:2rem}.project-status-badge-container{align-items:center;display:flex;padding:.5rem 0}.project-status-badge{border:2px solid;border-radius:6px;display:inline-block;font-size:.875rem;font-weight:600;letter-spacing:.5px;padding:.5rem 1rem;text-transform:uppercase}.project-status-badge.active{background:hsl(var(--success)/.15);border-color:hsl(var(--success)/.5);color:hsl(var(--success))}.project-status-badge.inactive{background:hsl(var(--muted));border-color:hsl(var(--border));color:hsl(var(--muted-foreground))}.project-card{background:hsl(var(--background));border-radius:6px;padding:1.5rem}.project-card:hover{box-shadow:0 2px 8px #0000001a}.project-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.project-header h3{color:hsl(var(--foreground));flex:1 1;font-size:1.2rem;font-weight:600;margin:0 1rem 0 0}.project-code{background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:.875rem;font-weight:600;padding:.25rem .75rem;white-space:nowrap}.project-info{margin-bottom:1rem}.project-details>div,.project-status{margin-bottom:.75rem}.project-status{display:flex;flex-wrap:wrap;gap:.5rem}.status-badge{border-radius:4px;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.status-badge.active{background:hsl(var(--success));color:#fff}.status-badge.inactive{background:hsl(var(--muted));color:#fff}.billable-badge{background:hsl(var(--success))}.billable-badge,.non-billable-badge{border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.non-billable-badge{background:hsl(var(--muted))}.fee-badge{background:hsl(var(--warning))}.fee-badge,.hourly-badge{border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.hourly-badge{background:hsl(var(--info))}.project-budget,.project-dates,.project-team{color:hsl(var(--muted-foreground));font-size:.9rem}.project-budget div,.project-dates div,.project-team div{margin-bottom:.25rem}.project-actions{display:flex;gap:.5rem;margin-top:1rem}.details-button{background:hsl(var(--primary));border:none;border-radius:4px;color:hsl(var(--primary-foreground));cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:background .2s}.details-button:hover{background:hsl(var(--primary)/.9)}.loading{font-size:1.2rem;padding:4rem 2rem}.no-data{background:hsl(var(--card));border-radius:8px;box-shadow:0 2px 4px #0000001a;font-size:1.1rem;padding:3rem}.modal-overlay{padding:2rem}.modal-content{box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:900px;width:100%}.modal-header{padding:1.5rem 2rem}.close-button,.modal-header h2{font-size:1.5rem}.close-button{line-height:1;padding:.25rem}.modal-body{padding:0}.project-detail-section{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.5rem;box-shadow:0 1px 3px #0000000d;margin-bottom:1.5rem;padding:2rem}.project-detail-section:last-child,.project-overview{margin-bottom:0}.project-overview h3{color:hsl(var(--foreground));font-size:1.2rem;margin-bottom:1rem}.overview-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.overview-item{background:hsl(var(--muted)/.5);border-radius:6px;padding:1rem}.overview-item strong{color:hsl(var(--foreground));display:block;font-size:.875rem;margin-bottom:.25rem}.fixed-cost-tasks-section,.project-data-section,.team-members-section{margin-bottom:0}.section-header-with-action{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.section-header-with-action h3{color:hsl(var(--foreground));font-size:1.2rem;margin:0}.section-header-with-action .add-button{background:hsl(var(--success));border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background .2s}.section-header-with-action .add-button:hover{background:hsl(var(--success)/.9)}.add-form{background:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:6px;margin-bottom:1.5rem;padding:1.5rem}.add-form h4{color:hsl(var(--foreground));font-size:1rem}.add-form .form-group,.add-form h4{margin-bottom:1rem}.add-form .form-group label{color:hsl(var(--foreground));display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.add-form .form-group input,.add-form .form-group select,.add-form .form-group textarea{background:hsl(var(--background));border:1px solid hsl(var(--input));border-radius:4px;color:hsl(var(--foreground));font-family:inherit;font-size:.875rem;padding:.5rem;transition:border-color .2s;width:100%}.add-form .form-group input:focus,.add-form .form-group select:focus,.add-form .form-group textarea:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.1);outline:none}.add-form .form-actions{display:flex;gap:.5rem;margin-top:1rem}.add-form .form-actions button{border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background .2s}.add-form .form-actions button[type=submit]{background:hsl(var(--primary));color:#fff}.add-form .form-actions button[type=submit]:hover{background:hsl(var(--primary)/.9)}.add-form .form-actions button[type=button]{background:hsl(var(--muted));color:hsl(var(--foreground))}.add-form .form-actions button[type=button]:hover{background:hsl(var(--muted)/.8)}.delete-button-small{background:hsl(var(--destructive));border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;padding:.25rem .5rem;transition:background .2s}.delete-button-small:hover{background:hsl(var(--destructive)/.9)}.fixed-cost-tasks-section h3,.project-data-section h3,.team-members-section h3{color:hsl(var(--foreground));font-size:1.2rem;margin-bottom:1rem}.fixed-cost-tasks-table,.project-data-table,.team-members-table{overflow-x:auto}.fixed-cost-tasks-table table,.project-data-table table,.team-members-table table{background:hsl(var(--card));border:1px solid hsl(var(--border));border-collapse:collapse;border-radius:6px;overflow:hidden;width:100%}.fixed-cost-tasks-table td,.fixed-cost-tasks-table th,.project-data-table td,.project-data-table th,.team-members-table td,.team-members-table th{border-bottom:1px solid hsl(var(--border));padding:.75rem 1rem;text-align:left}.fixed-cost-tasks-table th,.project-data-table th,.team-members-table th{background:hsl(var(--muted)/.5);color:hsl(var(--foreground));font-weight:600}.fixed-cost-tasks-table td,.project-data-table td,.team-members-table td{color:hsl(var(--muted-foreground))}.fixed-cost-tasks-table tr:last-child td,.project-data-table tr:last-child td,.team-members-table tr:last-child td{border-bottom:none}@media (max-width:768px){.projects-content{padding:1rem}.filter-controls,.projects-controls{align-items:flex-start;flex-direction:column;gap:1rem}.project-search-filter{min-width:100%}.projects-grid{grid-template-columns:1fr}.projects-header h1{font-size:2rem}.project-header{flex-direction:column;gap:.5rem}.project-header h3{margin-right:0}.modal-body,.modal-overlay{padding:1rem}.overview-grid{grid-template-columns:1fr}.client-header{flex-direction:column;gap:.75rem;text-align:center}.client-header h2{font-size:1.25rem}.projects-grid{padding:1rem}}.status-reports-section{margin-top:2rem}.section-header-unified{align-items:flex-start;border-bottom:2px solid hsl(var(--border));display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1.5rem}.header-info h3{color:hsl(var(--foreground));font-size:1.5rem;font-weight:600;margin:0 0 .25rem}.section-description{font-size:.875rem;margin:0}.header-actions{flex-wrap:wrap;gap:.75rem}.header-actions .badge{align-items:center;display:inline-flex;padding:.25rem .75rem;white-space:nowrap}.next-report-indicator{background:hsl(var(--muted));border-radius:.375rem;color:hsl(var(--foreground));font-size:.875rem;font-weight:500;padding:.375rem .75rem;white-space:nowrap}.pending-badge{background:hsl(var(--warning)/.1);border-color:hsl(var(--warning));color:hsl(var(--warning));white-space:nowrap}.status-message{margin-bottom:1rem}.reports-tabs{margin-top:1.5rem}.reports-tabs-list{background:#0000;border-bottom:2px solid #e5e7eb;display:flex;gap:0;margin-bottom:1.5rem;padding:0}.reports-tab-trigger{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;display:inline-flex;font-size:.9375rem;font-weight:500;justify-content:center;margin-bottom:-2px;padding:.75rem 1.25rem;position:relative;transition:all .15s ease;white-space:nowrap}.reports-tab-trigger:hover{background-color:#f9fafb;color:#111827}.reports-tab-trigger[data-state=active]{background:#0000;border-bottom-color:#2563eb;color:#2563eb}.reports-tab-trigger[data-state=active]:hover{background:#0000}.reports-tab-content{animation:fadeIn .2s ease-in;outline:none}.reports-tab-content:focus-visible{outline:none}.loading-container{padding:3rem 1rem;text-align:center}.spinner{animation:spin .8s linear infinite;border:3px solid hsl(var(--border))}.settings-tab{display:flex;flex-direction:column;gap:1.5rem}.config-summary{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.summary-item{align-items:flex-start;display:flex;flex-direction:column;gap:.5rem}.summary-label{font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.summary-value{font-size:1rem;font-weight:500}.config-form{display:flex;flex-direction:column;gap:1.5rem}.form-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-select{background:hsl(var(--background));border:1px solid hsl(var(--input));border-radius:.375rem;color:hsl(var(--foreground));font-size:.875rem;padding:.5rem .75rem;transition:border-color .2s}.form-select:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.1);outline:none}.checkbox-field{grid-column:1/-1}.form-actions{display:flex;gap:.75rem;margin-top:.5rem}.next-report-card{background:hsl(var(--info)/.1);border-color:hsl(var(--info))}.next-report-info{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.info-item{align-items:center;border-bottom:1px solid hsl(var(--info)/.2);display:flex;justify-content:space-between;padding:.5rem 0}.info-item:last-child{border-bottom:none}.info-label{font-weight:500}.info-label,.info-value{color:hsl(var(--info));font-size:.875rem}.report-actions{flex-wrap:wrap;gap:.75rem}.recipients-summary{display:flex;gap:2rem}.summary-stat{align-items:center;display:flex;flex-direction:column;gap:.5rem}.stat-value{font-size:2rem;font-weight:600}.stat-label{font-size:.875rem;letter-spacing:.05em;text-transform:uppercase}.recipients-sections{display:flex;flex-direction:column;gap:1rem}.recipients-section{background:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:.375rem;padding:1.25rem}.section-title{font-size:1rem;margin:0 0 1rem}.recipients-list,.section-content{display:flex;flex-direction:column}.recipients-list{gap:.5rem;list-style:none;margin:0 0 1rem;padding:0}.recipient-item{align-items:center;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.375rem;display:flex;justify-content:space-between;padding:.75rem}.recipient-name{color:hsl(var(--foreground));font-weight:500}.recipient-email{color:hsl(var(--muted-foreground));font-size:.875rem}.add-recipient-form{border-top:1px solid hsl(var(--border));margin-top:1rem;padding-top:1rem}.add-recipient-form .form-row{align-items:center;display:flex;gap:.75rem}.add-recipient-form .form-row input,.add-recipient-form .form-row select{background:hsl(var(--background));border:1px solid hsl(var(--input));border-radius:.375rem;color:hsl(var(--foreground));flex:1 1;font-size:.875rem;padding:.5rem .75rem;transition:border-color .2s}.add-recipient-form .form-row input:focus,.add-recipient-form .form-row select:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.1);outline:none}.add-recipient-form .form-row button{flex-shrink:0}@media (max-width:640px){.add-recipient-form .form-row{align-items:stretch;flex-direction:column}.add-recipient-form .form-row button{align-self:flex-start}}.history-tab{display:flex;flex-direction:column;gap:0}.filters-container{margin-bottom:0}.reports-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:1fr}.report-card{transition:box-shadow .2s}.report-card:hover{box-shadow:0 4px 6px #0000001a}.budget-summary{grid-gap:1rem;background:hsl(var(--muted)/.5);border-radius:.375rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:1rem;padding:1rem}.budget-item{display:flex;flex-direction:column;gap:.25rem}.budget-label{color:hsl(var(--muted-foreground));font-size:.75rem;font-weight:500;text-transform:uppercase}.budget-value{color:hsl(var(--foreground));font-size:1.125rem;font-weight:600}.budget-percentage{color:hsl(var(--muted-foreground));font-size:.875rem;font-weight:400}.report-actions{display:flex;gap:.5rem;margin-top:1rem}.empty-state{padding:2rem;text-align:center}.preview-tab{display:flex;flex-direction:column;gap:1.5rem}.preview-warning{background:hsl(var(--info)/.1);border-color:hsl(var(--info))}.financial-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(4,1fr)}.financial-item{background:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:.375rem;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.financial-label{color:hsl(var(--muted-foreground));font-size:.75rem;font-weight:500;text-transform:uppercase}.financial-value{color:hsl(var(--foreground));font-size:1.5rem;font-weight:600}.financial-value-positive{color:hsl(var(--success))}.financial-value-negative{color:hsl(var(--destructive))}.financial-percentage{color:hsl(var(--muted-foreground));font-size:.875rem;font-weight:400}.table-container{border:1px solid hsl(var(--border));border-radius:.375rem;overflow-x:auto}.time-summary{background:hsl(var(--muted)/.5);border-radius:.375rem;display:flex;gap:2rem;padding:1rem}.time-item{align-items:center;display:flex;flex-direction:column;gap:.5rem}.time-label{color:hsl(var(--muted-foreground));font-size:.75rem;font-weight:500;text-transform:uppercase}.time-value{color:hsl(var(--foreground));font-size:1.5rem;font-weight:600}.status-badge{border-radius:.25rem;font-size:.75rem;text-transform:capitalize}.status-paid{background:hsl(var(--success)/.15);color:hsl(var(--success))}.status-pending{background:hsl(var(--warning)/.15);color:hsl(var(--warning))}.status-overdue{background:hsl(var(--destructive)/.15);color:hsl(var(--destructive))}.status-open{background:hsl(var(--warning)/.15);color:hsl(var(--warning))}.invoice-row-overdue{background-color:hsl(var(--destructive)/.1)!important}.invoice-row-overdue:hover{background-color:hsl(var(--destructive)/.15)!important}.invoice-row-open{background-color:hsl(var(--warning)/.1)!important}.invoice-row-open:hover{background-color:hsl(var(--warning)/.15)!important}.preview-actions{display:flex;justify-content:center;padding:1rem 0}@media (max-width:1024px){.financial-grid{grid-template-columns:repeat(2,1fr)}.budget-summary{grid-template-columns:1fr}}@media (max-width:768px){.section-header-unified{flex-direction:column;gap:1rem}.header-actions{justify-content:flex-start;width:100%}.config-summary,.financial-grid,.form-grid{grid-template-columns:1fr}.time-summary{flex-direction:column;gap:1rem}.recipients-summary{justify-content:space-around;width:100%}.form-actions,.report-actions{flex-direction:column}.form-actions button,.report-actions button{width:100%}}@media (max-width:480px){.reports-tabs-list{-webkit-overflow-scrolling:touch;justify-content:flex-start;overflow-x:auto}.reports-tab-trigger{flex-shrink:0;white-space:nowrap}.financial-value,.header-info h3{font-size:1.25rem}.budget-value{font-size:1rem}}.forecast-description{margin-top:-.5rem}@media (max-width:768px){.forecast-period-totals{flex-direction:column;gap:1rem}.forecast-stat-value{font-size:1.5rem}.totals-grid{gap:1rem;grid-template-columns:1fr}.total-value{font-size:1.5rem}}.rich-text-editor{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px}.rich-text-editor.disabled{background:hsl(var(--muted)/.3);cursor:not-allowed}.editor-toolbar{background:hsl(var(--muted)/.3);border-bottom:1px solid hsl(var(--border));border-radius:8px 8px 0 0;display:flex;flex-wrap:wrap;gap:4px;padding:8px}.editor-toolbar button,.editor-toolbar-button{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));cursor:pointer;font-size:14px;padding:6px 12px;transition:all .2s}.editor-toolbar button:hover,.editor-toolbar-button:hover{background:hsl(var(--muted)/.2);border-color:hsl(var(--border))}.editor-toolbar button.is-active,.editor-toolbar-button.is-active{background:hsl(var(--info));border-color:hsl(var(--info));color:hsl(var(--card))}.editor-toolbar button:disabled,.editor-toolbar-button:disabled{cursor:not-allowed;opacity:.5}.editor-clear-format{color:hsl(var(--destructive));font-weight:500}.editor-clear-format:hover{background:hsl(var(--destructive)/.1);border-color:hsl(var(--destructive)/.4)}.toolbar-separator{background:hsl(var(--border));margin:0 4px;width:1px}.rich-text-editor .tiptap{max-height:500px;min-height:200px;outline:none;overflow-y:auto;padding:16px}.rich-text-editor.disabled .tiptap{color:hsl(var(--muted-foreground));cursor:not-allowed}.tiptap p{margin:0 0 1em}.tiptap p:last-child{margin-bottom:0}.tiptap strong{font-weight:700}.tiptap em{font-style:italic}.tiptap u{text-decoration:underline}.tiptap ol,.tiptap ul{margin:1em 0;padding:0 1.5em}.tiptap ul{list-style-type:disc}.tiptap ol{list-style-type:decimal}.tiptap li{margin:.5em 0}.tiptap li p{margin:0}.tiptap a.editor-link{cursor:pointer;text-decoration:underline}.tiptap a.editor-link,.tiptap a.editor-link:hover{color:hsl(var(--info))}.tiptap p.is-editor-empty:first-child:before{color:hsl(var(--muted-foreground));content:attr(data-placeholder);float:left;height:0;pointer-events:none}.rich-text-editor:focus-within{border-color:hsl(var(--info));box-shadow:0 0 0 3px hsl(var(--info)/.1)}.tiptap h2{font-size:1.5em;font-weight:700;line-height:1.3;margin:1em 0 .5em}.tiptap h3{font-size:1.25em;font-weight:600;line-height:1.4;margin:1em 0 .5em}.tiptap h2:first-child,.tiptap h3:first-child{margin-top:0}.tiptap blockquote{border-left:4px solid hsl(var(--info));color:hsl(var(--muted-foreground));font-style:italic;margin:1em 0;padding-left:1em}.tiptap hr{border:none;border-top:2px solid hsl(var(--border));margin:2em 0}.tiptap ol ol,.tiptap ol ul,.tiptap ul ol,.tiptap ul ul{margin:.5em 0}.project-notes-section{margin-bottom:32px}.notes-actions{display:flex;gap:8px}.project-notes-section .cancel-button,.project-notes-section .edit-button,.project-notes-section .save-button{border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background .2s}.project-notes-section .edit-button{background:hsl(var(--primary));color:#fff}.project-notes-section .edit-button:hover{background:hsl(var(--primary)/.9)}.project-notes-section .save-button{background:hsl(var(--success));color:#fff}.project-notes-section .save-button:hover:not(:disabled){background:hsl(var(--success)/.9)}.project-notes-section .save-button:disabled{cursor:not-allowed;opacity:.6}.project-notes-section .cancel-button{background:hsl(var(--muted));color:hsl(var(--foreground))}.project-notes-section .cancel-button:hover:not(:disabled){background:hsl(var(--muted)/.8)}.project-notes-section .cancel-button:disabled{cursor:not-allowed;opacity:.6}.notes-content{margin-top:16px;min-height:100px}.rich-text-display{line-height:1.6}.rich-text-display h2{font-size:1.5em;margin:16px 0 8px}.rich-text-display h3{font-size:1.25em;margin:12px 0 6px}.rich-text-display ol,.rich-text-display ul{margin:12px 0;padding-left:24px}.rich-text-display a{color:hsl(var(--primary));text-decoration:underline}.empty-state{color:hsl(var(--muted-foreground));font-style:italic}.project-links-section{margin-bottom:32px}.project-links-section .add-button,.project-links-section .cancel-button,.project-links-section .edit-button,.project-links-section .save-button{align-items:center;border:none;border-radius:4px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:6px;padding:.5rem 1rem;transition:background .2s}.project-links-section .edit-button{background:hsl(var(--primary));color:#fff}.project-links-section .edit-button:hover{background:hsl(var(--primary)/.9)}.project-links-section .save-button{background:hsl(var(--success));color:#fff}.project-links-section .save-button:hover{background:hsl(var(--success)/.9)}.project-links-section .cancel-button{background:hsl(var(--muted));color:hsl(var(--foreground))}.project-links-section .cancel-button:hover{background:hsl(var(--muted)/.8)}.project-links-section .add-button{background:hsl(var(--success));color:#fff}.project-links-section .add-button:hover{background:hsl(var(--success)/.9)}.links-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:16px}.link-item{display:flex;flex-direction:column;gap:8px}.link-item strong{color:hsl(var(--foreground));font-size:.875rem}.link-input{border:1px solid hsl(var(--border));border-radius:var(--radius);font-size:.875rem;padding:8px 12px;width:100%}.link-display{align-items:center;color:hsl(var(--primary));display:inline-flex;font-size:.875rem;gap:6px;text-decoration:none;word-break:break-all}.link-display:hover{text-decoration:underline}.no-link{color:hsl(var(--muted-foreground));font-size:.875rem;font-style:italic}.editing-row{background-color:hsl(var(--muted))}.edit-input{background-color:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-size:14px;padding:6px 8px;width:100%}.hours-input{width:80px}.override-badge{background-color:hsl(var(--warning));border-radius:3px;color:hsl(var(--warning-foreground));cursor:help;display:inline-block;font-size:10px;font-weight:600;margin-left:6px;padding:2px 6px}.edit-actions{align-items:center;display:flex;gap:6px}.unsaved-badge{color:hsl(var(--warning));font-size:18px;font-weight:700;margin-left:4px}.cancel-button-small,.delete-button-small,.edit-button-small,.save-button-small{border:none;border-radius:4px;cursor:pointer;font-size:12px;padding:4px 12px;transition:background-color .2s}.edit-button-small{background-color:hsl(var(--info));color:hsl(var(--info-foreground))}.edit-button-small:hover{background-color:hsl(var(--info)/.9)}.save-button-small{background-color:hsl(var(--success));color:hsl(var(--success-foreground))}.save-button-small:hover{background-color:hsl(var(--success)/.9)}.cancel-button-small{background-color:hsl(var(--muted-foreground));color:hsl(var(--background))}.cancel-button-small:hover{background-color:hsl(var(--muted-foreground)/.9)}.delete-button-small{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.delete-button-small:hover{background-color:hsl(var(--destructive)/.9)}.preview-row{background-color:hsl(var(--subtle-background));border-left:4px solid hsl(var(--info))}.preview-panel{margin:8px 0;padding:16px 20px}.preview-header{align-items:center;color:hsl(var(--foreground));display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:12px}.preview-content{display:flex;flex-direction:column;gap:10px}.preview-item{align-items:center;display:flex;font-size:14px;gap:12px}.preview-label{color:hsl(var(--muted-foreground));font-weight:500;min-width:140px}.preview-value{align-items:center;color:hsl(var(--foreground));display:flex;flex-wrap:wrap;gap:8px}.preview-delta{font-size:13px;font-weight:600;margin-left:4px}.preview-delta.positive{color:hsl(var(--success))}.preview-delta.negative{color:hsl(var(--destructive))}.preview-indicator{margin-left:4px}.preview-warning{color:hsl(var(--warning));font-size:13px;font-weight:600;margin-left:8px}.dialog-header{padding:20px 24px}.dialog-header h3{color:hsl(var(--foreground));font-size:20px;margin:0}.dialog-close{font-size:28px}.dialog-body{padding:24px}.form-group label{font-size:14px;margin-bottom:6px}.required{color:hsl(var(--destructive))}.form-group input,.form-group select,.form-group textarea{background-color:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-family:inherit;font-size:14px;padding:10px 12px;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.1);outline:none}.field-hint{color:hsl(var(--muted-foreground));display:block;font-size:12px;margin-top:6px}.dialog-footer{gap:12px;padding:16px 24px}.button-primary,.button-secondary{border-radius:4px;font-size:14px;font-weight:500;transition:background-color .2s}.button-primary{background-color:hsl(var(--primary))}.button-primary:hover:not(:disabled){background-color:hsl(var(--primary)/.9)}.button-primary:disabled{background-color:hsl(var(--muted))}.button-secondary{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.button-secondary:hover:not(:disabled){background-color:hsl(var(--secondary)/.8)}.forecast-panel{background-color:hsl(var(--subtle-background));border:2px solid hsl(var(--info));border-radius:8px;bottom:0;box-shadow:0 -2px 8px #0000001a;margin-top:16px;padding:16px 20px;position:sticky;z-index:10}.forecast-header{align-items:center;color:hsl(var(--foreground));display:flex;font-size:16px;font-weight:600;gap:8px;margin-bottom:12px}.forecast-content{display:flex;flex-direction:column;gap:12px}.forecast-item{align-items:center;display:flex;font-size:15px;gap:12px}.forecast-label{color:hsl(var(--muted-foreground));font-weight:500;min-width:160px}.forecast-value{align-items:center;color:hsl(var(--foreground));display:flex;flex-wrap:wrap;font-weight:500;gap:8px}.forecast-delta{font-size:14px;font-weight:600;margin-left:4px}.forecast-delta.positive{color:hsl(var(--success))}.forecast-delta.negative{color:hsl(var(--destructive))}.forecast-indicator{margin-left:4px}.forecast-warning{color:hsl(var(--warning));font-size:14px;font-weight:600;margin-left:8px}.resource-plan-table-container{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;padding:20px}.table-actions{display:flex;gap:12px;margin-bottom:20px}.add-column-button,.add-role-button,.edit-plan-button{background-color:hsl(var(--info));border:none;border-radius:4px;color:hsl(var(--info-foreground));cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.add-column-button:hover,.add-role-button:hover,.edit-plan-button:hover{background-color:hsl(var(--info)/.9)}.bulk-edit-header{align-items:center;background-color:hsl(var(--subtle-background));border:2px solid hsl(var(--info));border-radius:8px;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px}.bulk-edit-status{color:hsl(var(--foreground));font-size:16px;font-weight:600}.bulk-edit-actions{align-items:center;display:flex;gap:12px}.cancel-button{background-color:hsl(var(--muted-foreground));border:none;border-radius:4px;color:hsl(var(--background));cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.cancel-button:hover{background-color:hsl(var(--muted-foreground)/.9)}.save-all-button{background-color:hsl(var(--success));border:none;border-radius:4px;color:hsl(var(--success-foreground));cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:background-color .2s}.save-all-button:hover{background-color:hsl(var(--success)/.9)}.table-wrapper{overflow-x:auto}.resource-plan-table{border-collapse:collapse;font-size:14px;width:100%}.resource-plan-table td,.resource-plan-table th{border-bottom:1px solid hsl(var(--border));padding:12px;text-align:left}.resource-plan-table th{background-color:hsl(var(--muted));color:hsl(var(--foreground));font-weight:600;white-space:nowrap}.resource-plan-table td{color:hsl(var(--muted-foreground))}.numeric-cell,.numeric-column{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right!important}.numeric-cell input{text-align:right}.resource-plan-table td.numeric-cell{text-align:right!important}.column-header-content{align-items:center;display:flex;gap:8px;justify-content:space-between}.delete-column-button{align-items:center;background:hsl(var(--destructive));border:none;border-radius:50%;color:hsl(var(--destructive-foreground));cursor:pointer;display:flex;font-size:16px;height:20px;justify-content:center;line-height:1;padding:0;transition:background-color .2s;width:20px}.delete-column-button:hover{background-color:hsl(var(--destructive)/.9)}.empty-row{color:hsl(var(--muted-foreground));padding:40px!important;text-align:center}.totals-row{background-color:hsl(var(--muted))}.totals-row td{font-weight:600}.totals-row td,.totals-row:first-child td{border-top:2px solid hsl(var(--border))}.totals-row:not(:first-child) td{border-top:1px solid hsl(var(--border))}.totals-row .low-margin{color:hsl(var(--destructive))}.milestone-header{min-width:100px;vertical-align:middle;width:auto}.milestone-header .column-header-content{align-items:center;display:flex;gap:.5rem;justify-content:flex-end;padding:.5rem}.milestone-header .milestone-label{align-items:center;color:hsl(var(--foreground));display:flex;font-size:.875rem;font-weight:600;gap:8px;justify-content:flex-end}.editable-label{cursor:pointer;transition:color .2s}.editable-label:hover{color:hsl(var(--info));text-decoration:underline}.column-label-input{background-color:hsl(var(--background));border:2px solid hsl(var(--info));border-radius:4px;color:hsl(var(--foreground));font-size:.875rem;font-weight:600;padding:4px 8px;width:100%}.column-label-input:focus{border-color:hsl(var(--info)/.8);box-shadow:0 0 0 3px hsl(var(--info)/.1);outline:none}.milestone-header[draggable=true]{cursor:move}.milestone-header.dragging{background-color:hsl(var(--muted)/.5);opacity:.5}.milestone-header.drop-target{background-color:hsl(var(--info)/.1);border-left:3px solid hsl(var(--info))}.summary-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;padding:20px;transition:box-shadow .2s}.summary-card:hover{box-shadow:0 2px 8px hsl(var(--foreground)/.1)}.summary-card.highlight{background-color:hsl(var(--warning)/.1);border-color:hsl(var(--warning))}.summary-label{color:hsl(var(--muted-foreground));font-size:14px;font-weight:500;margin-bottom:8px}.summary-value{color:hsl(var(--foreground));font-size:28px;font-weight:600;margin-bottom:4px}.summary-subtext{color:hsl(var(--muted-foreground));font-size:12px}.resource-plan-notes-section{margin-bottom:32px}.resource-plan-notes-section .notes-actions{display:flex;gap:8px}.resource-plan-notes-section .cancel-button,.resource-plan-notes-section .edit-button,.resource-plan-notes-section .save-button{border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background .2s}.resource-plan-notes-section .edit-button{background:hsl(var(--primary));color:#fff}.resource-plan-notes-section .edit-button:hover{background:hsl(var(--primary)/.9)}.resource-plan-notes-section .save-button{background:hsl(var(--success));color:#fff}.resource-plan-notes-section .save-button:hover:not(:disabled){background:hsl(var(--success)/.9)}.resource-plan-notes-section .save-button:disabled{cursor:not-allowed;opacity:.6}.resource-plan-notes-section .cancel-button{background:hsl(var(--muted));color:hsl(var(--foreground))}.resource-plan-notes-section .cancel-button:hover:not(:disabled){background:hsl(var(--muted)/.8)}.resource-plan-notes-section .cancel-button:disabled{cursor:not-allowed;opacity:.6}.resource-plan-notes-section .notes-content{margin-top:16px;min-height:100px}.resource-plan-notes-section .rich-text-display{line-height:1.6}.resource-plan-notes-section .rich-text-display h2{font-size:1.5em;margin:16px 0 8px}.resource-plan-notes-section .rich-text-display h3{font-size:1.25em;margin:12px 0 6px}.resource-plan-notes-section .rich-text-display ol,.resource-plan-notes-section .rich-text-display ul{margin:12px 0;padding-left:24px}.resource-plan-notes-section .rich-text-display a{color:hsl(var(--primary));text-decoration:underline}.resource-plan-notes-section .empty-state{color:hsl(var(--muted-foreground));font-style:italic}.resource-plan-section{padding:20px 0}.loading-container{color:#666;padding:60px 20px}.spinner{border:4px solid #f3f3f3;border-top-color:#3498db;margin-bottom:16px}.no-plan-container{align-items:center;display:flex;justify-content:center;padding:60px 20px}.no-plan-content{max-width:400px;text-align:center}.no-plan-content h3{color:hsl(var(--foreground));font-size:24px;margin:0 0 12px}.no-plan-content p{color:hsl(var(--muted-foreground));font-size:16px;margin:0 0 24px}.create-plan-button{background-color:hsl(var(--primary));border:none;border-radius:6px;color:hsl(var(--primary-foreground));cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:background-color .2s}.create-plan-button:hover{background-color:hsl(var(--primary)/.9)}.resource-plan-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px}.header-content{align-items:center;display:flex;gap:12px}.header-content h3{color:hsl(var(--foreground));font-size:24px;margin:0}.active-badge{background-color:hsl(var(--success)/.15);border-radius:12px;color:hsl(var(--success));display:inline-block;font-size:13px;font-weight:500;padding:4px 12px}.header-actions{gap:12px}.header-actions,.plan-selector{align-items:center;display:flex}.plan-selector{gap:8px}.plan-selector label{color:#555;font-size:14px;font-weight:500}.plan-selector select{border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px}.plan-selector select:focus{border-color:#3498db;outline:none}.make-active-button{background-color:hsl(var(--primary));border:none;border-radius:4px;color:hsl(var(--primary-foreground));cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s}.make-active-button:hover{background-color:hsl(var(--primary)/.9)}.plan-subtitle{color:hsl(var(--muted-foreground));font-size:14px;margin:0}.delete-plan-button{background-color:hsl(var(--destructive));border:none;border-radius:4px;color:hsl(var(--destructive-foreground));cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s}.delete-plan-button:hover{background-color:hsl(var(--destructive)/.9)}.summary-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.resource-plan-title-display,.resource-plan-title-edit{align-items:center;display:inline-flex;flex-wrap:wrap;gap:12px}.resource-plan-title-input{background:hsl(var(--primary-foreground)/.12);border:1px solid hsl(var(--primary-foreground)/.4);border-radius:8px;color:hsl(var(--primary-foreground));font-family:inherit;font-size:inherit;font-weight:700;max-width:520px;min-width:220px;padding:6px 12px;width:min(100%,520px)}.resource-plan-title-input:focus{background:hsl(var(--primary-foreground)/.2);border-color:hsl(var(--primary-foreground));outline:none}.resource-plan-title-cancel,.resource-plan-title-edit-button,.resource-plan-title-save{background:hsl(var(--primary-foreground)/.12);border:1px solid hsl(var(--primary-foreground)/.4);border-radius:999px;color:hsl(var(--primary-foreground));cursor:pointer;font-size:.8rem;padding:6px 12px;transition:background-color .2s,border-color .2s}.resource-plan-title-edit-button:hover,.resource-plan-title-save:hover{background:hsl(var(--primary-foreground)/.2);border-color:hsl(var(--primary-foreground))}.resource-plan-title-cancel{background:#0000}.resource-plan-title-cancel:hover{background:hsl(var(--primary-foreground)/.15);border-color:hsl(var(--primary-foreground))}.resource-plan-title-actions{align-items:center;display:inline-flex;gap:8px}.project-tabs{margin-top:1.5rem}[data-tabs-list]{background:#0000;border-bottom:2px solid hsl(var(--border));display:flex;gap:0;margin-bottom:1.5rem;padding:0}[data-tabs-trigger]{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:hsl(var(--muted-foreground));cursor:pointer;display:inline-flex;font-size:.9375rem;font-weight:500;justify-content:center;margin-bottom:-2px;padding:.75rem 1.25rem;position:relative;transition:all .15s ease;white-space:nowrap}[data-tabs-trigger]:hover{background-color:hsl(var(--muted));color:hsl(var(--foreground))}[data-tabs-trigger][data-state=active]{background:#0000;border-bottom-color:hsl(var(--primary));color:hsl(var(--primary))}[data-tabs-trigger][data-state=active]:hover{background:#0000}[data-tabs-content]{animation:fadeIn .2s ease-in;outline:none}[data-tabs-content]:focus-visible{outline:none}@media (max-width:640px){[data-tabs-list]{-webkit-overflow-scrolling:touch;overflow-x:auto;scrollbar-width:none}[data-tabs-list]::-webkit-scrollbar{display:none}[data-tabs-trigger]{flex-shrink:0;font-size:.875rem;padding:.75rem 1rem}}.summary-stats-section{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px;box-shadow:0 2px 10px hsl(var(--border)/.3);margin-bottom:20px;padding:24px}.summary-stats{grid-gap:16px;gap:16px;grid-template-columns:repeat(6,1fr)}.stat-card{background:hsl(var(--muted)/.5);border-radius:8px;padding:20px 16px;text-align:center;transition:all .2s ease}.stat-card:hover{background:hsl(var(--muted)/.7);box-shadow:0 4px 8px hsl(var(--border)/.5);transform:translateY(-2px)}.stat-number{color:hsl(var(--primary));font-size:2rem;font-weight:700;line-height:1;margin-bottom:8px}.stat-label{font-size:.75rem;font-weight:500;line-height:1.3}.audit-content{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px;box-shadow:0 2px 10px hsl(var(--border)/.3);overflow:hidden}.audit-controls{background:hsl(var(--muted)/.3);border-bottom:1px solid hsl(var(--border));padding:20px}.filter-controls{align-items:end;display:flex;gap:20px;margin-bottom:15px}.filter-group{flex-direction:column;gap:5px}.filter-group label{font-size:14px}.filter-select,.search-input{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:6px;color:hsl(var(--foreground));font-size:14px;min-width:200px;padding:8px 12px}.filter-select:focus,.search-input:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.25);outline:none}.results-summary{color:hsl(var(--muted-foreground));font-size:14px}.audit-table{overflow-x:auto}.audit-table table{background:hsl(var(--card));border-collapse:collapse;width:100%}.audit-table th{background:hsl(var(--muted)/.5);border-bottom:2px solid hsl(var(--border));font-weight:600;text-align:left}.audit-table td,.audit-table th{color:hsl(var(--foreground));padding:15px 12px}.audit-table td{border-bottom:1px solid hsl(var(--border));vertical-align:middle}.audit-table tbody tr:hover{background:hsl(var(--muted)/.3)}.project-name{font-weight:500}.client-name{color:hsl(var(--muted-foreground))}.project-code{background:hsl(var(--muted)/.5);border-radius:4px;color:hsl(var(--foreground));font-family:Courier New,monospace;font-weight:500;padding:4px 8px}.missing-field{align-items:center;display:flex;gap:8px}.missing-indicator{background:hsl(var(--destructive)/.15);border-radius:4px;color:hsl(var(--destructive));font-size:12px;font-weight:500;padding:2px 6px}.field-value{align-items:center;display:flex;gap:8px}.field-value span{color:hsl(var(--success));font-weight:500}.add-btn,.edit-btn-small{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;padding:4px 8px}.add-btn{color:hsl(var(--card))}.add-btn,.add-btn:hover{background:hsl(var(--success))}.edit-btn-small{color:hsl(var(--card))}.edit-btn-small,.edit-btn-small:hover{background:hsl(var(--muted))}.inline-edit{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.edit-select{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-size:12px;min-width:120px;padding:4px 8px}.cancel-btn,.save-btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;padding:4px 8px}.save-btn{color:hsl(var(--card))}.save-btn,.save-btn:hover{background:hsl(var(--success))}.cancel-btn{color:hsl(var(--card))}.cancel-btn,.cancel-btn:hover{background:hsl(var(--muted))}.loading{font-size:18px}.error{background:hsl(var(--destructive)/.1);border:1px solid hsl(var(--destructive)/.3);border-radius:8px;color:hsl(var(--destructive-foreground));font-size:18px;margin:20px}.error,.no-data{padding:40px;text-align:center}.no-data{color:hsl(var(--muted-foreground));font-style:italic}@media (max-width:1200px){.summary-stats{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.audit-container{padding:15px}.audit-header{padding:24px 20px}.header-text h1{font-size:1.5rem}.header-text p{font-size:.9rem}.summary-stats{gap:10px;grid-template-columns:repeat(2,1fr)}.stat-card{padding:14px 10px}.stat-number{font-size:1.5rem}.stat-label{font-size:.65rem}.filter-controls{flex-direction:column;gap:15px}.audit-table{font-size:14px}.audit-table td,.audit-table th{padding:10px 8px}}@media (max-width:480px){.summary-stats{grid-template-columns:1fr}.stat-card{padding:16px 12px}.stat-number{font-size:1.75rem}.stat-label{font-size:.75rem}}.dialog-overlay{background-color:#00000080}.dialog-content{background-color:hsl(var(--card));box-shadow:0 4px 20px #00000026;color:hsl(var(--card-foreground))}.dialog-header{padding:1.5rem}.dialog-header h2{font-size:1.5rem;font-weight:600}.dialog-close{align-items:center;background:none;border:none;border-radius:4px;color:hsl(var(--muted-foreground));cursor:pointer;display:flex;font-size:2rem;height:32px;justify-content:center;line-height:1;padding:0;transition:background-color .2s;width:32px}.dialog-close:hover{background-color:hsl(var(--muted))}.dialog-close:disabled{cursor:not-allowed;opacity:.5}.dialog-body{padding:1.5rem}.form-group{margin-bottom:1rem}.form-group label{font-size:.95rem;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select{background-color:hsl(var(--background));font-size:1rem;padding:.75rem}.form-group input:focus,.form-group select:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.1)}.form-group input:disabled,.form-group select:disabled{background-color:hsl(var(--muted));cursor:not-allowed;opacity:.6}.form-help{color:hsl(var(--muted-foreground));display:block;font-size:.85rem;margin-top:.5rem}.form-checkbox{align-items:center;display:flex;gap:.5rem;margin-top:1rem}.form-checkbox input{margin:0;width:auto}.warning-message{background-color:hsl(var(--warning)/.1);border:1px solid hsl(var(--warning));border-radius:4px;color:hsl(var(--warning-foreground));font-size:.9rem;margin-top:1rem;padding:1rem}.warning-message.info-message{background-color:hsl(var(--info)/.1);border-color:hsl(var(--info));color:hsl(var(--info-foreground))}.dialog-footer{border-top:1px solid hsl(var(--border));display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem}.dialog-button{border:none;border-radius:4px;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s}.dialog-button:disabled{cursor:not-allowed;opacity:.5}.dialog-button.cancel{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.dialog-button.cancel:hover:not(:disabled){background-color:hsl(var(--secondary)/.8)}.dialog-button.submit{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.dialog-button.submit:hover:not(:disabled){background-color:hsl(var(--primary)/.9)}@media (max-width:768px){.dialog-content{max-height:95vh;width:95%}.dialog-body,.dialog-footer,.dialog-header{padding:1rem}.dialog-footer{flex-direction:column}.dialog-button{width:100%}}.resource-plans-page{margin:0 auto;max-width:1400px;padding:2rem}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.page-header h1{font-size:2rem;font-weight:600;margin:0}.create-button{background-color:hsl(var(--accent));border:none;border-radius:6px;box-shadow:0 2px 6px #0003;color:hsl(var(--accent-foreground));cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.create-button:hover{background-color:hsl(var(--accent)/.9);box-shadow:0 4px 10px #00000040;transform:translateY(-1px)}.create-button:active{box-shadow:0 1px 3px #0003;transform:translateY(0)}.dark .create-button{background-color:hsl(var(--background));border:2px solid hsl(var(--border));color:hsl(var(--foreground))}.dark .create-button:hover{background-color:hsl(var(--muted));color:hsl(var(--foreground))}.filters-section{background-color:hsl(var(--muted));border-radius:8px;display:flex;gap:1.5rem;margin-bottom:2rem;padding:1rem}.filter-group{align-items:center;display:flex;gap:.5rem}.filter-group label{font-weight:500}.filter-group label,.filter-group select{color:hsl(var(--foreground));font-size:.9rem}.filter-group select{background-color:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;padding:.5rem}.search-group{display:flex;flex:1 1;justify-content:flex-end}.search-group input{background-color:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-size:.9rem;padding:.5rem 1rem;width:300px}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:4rem}.spinner{animation:spin 1s linear infinite;border-top:3px solid hsl(var(--muted));border:3px solid hsl(var(--muted));border-radius:50%;border-top-color:hsl(var(--primary));height:40px;margin-bottom:1rem;width:40px}.no-plans{background-color:hsl(var(--muted));border-radius:8px;padding:4rem;text-align:center}.no-plans p{color:hsl(var(--muted-foreground));font-size:1.1rem;margin-bottom:1rem}.plans-table-container{border-radius:8px;box-shadow:0 2px 8px hsl(var(--foreground)/.1);overflow-x:auto}.plans-table{background-color:hsl(var(--card));border-collapse:collapse;width:100%}.plans-table td,.plans-table th{border-bottom:1px solid hsl(var(--border));padding:1rem;text-align:left}.plans-table th{background-color:hsl(var(--muted));color:hsl(var(--foreground));font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.plans-table tbody tr:hover{background-color:hsl(var(--muted)/.5)}.plans-table tbody tr:last-child td{border-bottom:none}.project-info-cell{display:flex;flex-direction:column;gap:.25rem}.project-client{color:hsl(var(--muted-foreground));font-size:.85rem;font-weight:500}.project-name{color:hsl(var(--foreground));font-size:.95rem;font-weight:600}.project-code-label{color:hsl(var(--primary));font-family:monospace;font-size:.8rem;font-weight:600}.unlinked-label{color:hsl(var(--muted-foreground));font-size:.9rem;font-style:italic}.status-badge{display:inline-block;font-size:.85rem;padding:.25rem .75rem}.status-badge.active{background-color:hsl(var(--success)/.2);color:hsl(var(--success-foreground))}.status-badge.inactive{background-color:hsl(var(--destructive)/.2);color:hsl(var(--destructive-foreground))}.action-buttons{flex-wrap:wrap;gap:.5rem}.action-btn{border:none;border-radius:4px;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.action-btn:hover{transform:translateY(-1px)}.action-btn.view{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.action-btn.view:hover{background-color:hsl(var(--primary)/.9)}.action-btn.link{background-color:hsl(var(--success));color:hsl(var(--success-foreground))}.action-btn.link:hover{background-color:hsl(var(--success)/.9)}.action-btn.activate{background-color:hsl(var(--info));color:hsl(var(--info-foreground))}.action-btn.activate:hover{background-color:hsl(var(--info)/.9)}.action-btn.deactivate{background-color:hsl(var(--warning));color:hsl(var(--warning-foreground))}.action-btn.deactivate:hover{background-color:hsl(var(--warning)/.9)}.action-btn.delete{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.action-btn.delete:hover{background-color:hsl(var(--destructive)/.9)}@media (max-width:768px){.resource-plans-page{padding:1rem}.page-header{align-items:flex-start;gap:1rem}.filters-section,.page-header{flex-direction:column}.search-group input{width:100%}.plans-table-container{overflow-x:scroll}.action-buttons{flex-direction:column}.action-btn{width:100%}}.admin-content{display:flex;flex-direction:column;gap:30px}.admin-navigation-section{background:hsl(var(--card));border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:30px}.admin-navigation-section h2{color:hsl(var(--foreground));font-size:1.8em;margin:0 0 20px}.admin-nav-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.admin-nav-card{display:flex;flex-direction:column;height:100%;transition:transform .2s,box-shadow .2s}.admin-nav-card:hover{box-shadow:0 12px 24px #0000001a;transform:translateY(-4px)}.admin-nav-icon{font-size:3rem;margin-bottom:.5rem}.utilities-section{background:hsl(var(--card));border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:30px}.utilities-section h2{color:hsl(var(--foreground));font-size:1.8em;margin:0 0 10px}.utilities-section>p{color:hsl(var(--muted-foreground));font-size:1.1em;margin:0 0 30px}.sync-utilities{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:30px}.sync-card{background:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:8px;padding:25px;text-align:center;transition:all .2s ease}.sync-card:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.sync-icon{font-size:3em;margin-bottom:15px}.sync-card h3{color:hsl(var(--foreground));font-size:1.4em;margin:0 0 10px}.sync-card p{color:hsl(var(--muted-foreground));line-height:1.5;margin:0 0 20px}.sync-button{align-items:center;background:hsl(var(--primary));border:none;border-radius:6px;color:hsl(var(--primary-foreground));cursor:pointer;display:flex;font-size:1em;font-weight:500;gap:8px;justify-content:center;margin:0 auto;max-width:200px;padding:12px 24px;transition:all .2s ease;width:100%}.sync-button:hover:not(:disabled){background:hsl(var(--primary)/.9);transform:translateY(-1px)}.sync-button:disabled{color:hsl(var(--muted-foreground));cursor:not-allowed;transform:none}.sync-button.loading,.sync-button:disabled{background:hsl(var(--muted))}.loading-spinner{animation:spin 1s linear infinite;border:2px solid hsl(var(--card));border-radius:50%;border-top:2px solid #0000;height:16px;width:16px}.sync-info{background:hsl(var(--muted)/.3);border-left:4px solid hsl(var(--primary));border-radius:6px;padding:20px}.sync-info h3{color:hsl(var(--foreground));font-size:1.2em;margin:0 0 15px}.sync-info ul{color:hsl(var(--muted-foreground));margin:0;padding-left:20px}.sync-info li{line-height:1.5;margin-bottom:8px}.sync-info li:last-child{margin-bottom:0}@media (max-width:768px){.utilities-section{padding:20px}.sync-utilities{grid-template-columns:1fr}}.report-review-container{margin:0 auto;max-width:1400px;padding:20px}.breadcrumb{color:hsl(var(--muted-foreground));font-size:14px;margin-bottom:20px}.breadcrumb a{color:hsl(var(--primary));text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.report-review-header{align-items:center;background:hsl(var(--primary));border-radius:12px;box-shadow:0 4px 6px #0000001a;color:hsl(var(--primary-foreground));display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:20px;padding:30px}.report-review-header-content{text-align:left}.report-review-header-content h1{font-size:2rem;font-weight:600;margin:0 0 8px}.report-review-header-content p{font-size:1rem;margin:0;opacity:.9}.report-review-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.report-review-filter-btn{background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.375rem;color:hsl(var(--foreground));cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.report-review-filter-btn:hover{background-color:hsl(var(--muted)/.5)}.report-review-filter-btn.active{background-color:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.report-review-cards{grid-gap:1.5rem;display:grid;gap:1.5rem}.report-card{transition:all .2s ease}.report-card:hover{border-color:hsl(var(--border));box-shadow:0 4px 12px #00000014}.report-card-header-top{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.report-card-title{margin-bottom:.25rem}.report-card-description{color:hsl(var(--muted-foreground));font-size:.875rem;line-height:1.5}.report-metadata-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.report-metadata-item{display:flex;flex-direction:column;gap:.25rem}.report-metadata-label{color:hsl(var(--muted-foreground));font-size:.75rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.report-metadata-value{color:hsl(var(--foreground));font-size:.875rem;font-weight:500}.report-card-actions{display:flex;flex-wrap:wrap;gap:.75rem}.report-review-btn{align-items:center;border:none;border-radius:.375rem;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.625rem 1.25rem;transition:all .2s ease}.report-review-btn-primary{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.report-review-btn-primary:hover{background-color:hsl(var(--primary)/.9)}.report-delete-btn{background-color:hsl(var(--card));border:1px solid hsl(var(--destructive)/.3);border-radius:.375rem;color:hsl(var(--destructive));cursor:pointer;font-size:.875rem;font-weight:500;padding:.625rem 1.25rem;transition:all .2s ease}.report-delete-btn:hover{background-color:hsl(var(--destructive)/.1);border-color:hsl(var(--destructive))}.report-status-badge{align-items:center;border-radius:9999px;display:inline-flex;font-size:.75rem;font-weight:600;padding:.25rem .75rem;white-space:nowrap}.report-status-badge-draft{background-color:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));color:hsl(var(--muted-foreground))}.report-status-badge-pending{background-color:hsl(var(--warning)/.15);border:1px solid hsl(var(--warning)/.3);color:hsl(var(--warning))}.report-status-badge-approved{background-color:hsl(var(--success)/.15);border:1px solid hsl(var(--success)/.3);color:hsl(var(--success))}.report-status-badge-sent{background-color:hsl(var(--info)/.15);border:1px solid hsl(var(--info)/.3);color:hsl(var(--info))}.report-review-empty{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.5rem;padding:3rem 2rem;text-align:center}.report-review-empty-text{color:hsl(var(--muted-foreground));font-size:1rem;line-height:1.5}.report-review-error{background-color:hsl(var(--destructive)/.1);border:1px solid hsl(var(--destructive)/.3);border-radius:.5rem;margin-bottom:1.5rem;padding:1rem 1.5rem}.report-review-error-text{color:hsl(var(--destructive));font-size:.875rem;line-height:1.5;margin:0}.report-review-loading{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.5rem;padding:3rem 2rem;text-align:center}.report-review-loading-spinner{animation:spin .8s linear infinite;border:3px solid hsl(var(--border));border-radius:50%;border-top-color:hsl(var(--primary));display:inline-block;height:40px;margin-bottom:1rem;width:40px}.report-review-loading-text{color:hsl(var(--muted-foreground));font-size:1rem}@media (max-width:768px){.report-review-header{align-items:stretch;flex-direction:column}.report-review-header-content h1{font-size:1.5rem}.report-metadata-grid{gap:1rem;grid-template-columns:1fr}.report-card-actions{flex-direction:column}.report-delete-btn,.report-review-btn{justify-content:center;width:100%}.report-review-filters{flex-direction:column}.report-review-filter-btn{text-align:center;width:100%}}@media (max-width:480px){.report-review-header-content h1{font-size:1.25rem}.report-card-content,.report-card-header{padding:1rem}.report-card-title{font-size:1.125rem}}.section-narrative{margin-bottom:24px}.section-narrative-toggle{align-items:center;background:hsl(var(--muted));border:1px solid hsl(var(--border));border-radius:6px;color:hsl(var(--foreground));cursor:pointer;display:flex;font-family:Barlow,Arial,sans-serif;font-size:14px;font-weight:500;justify-content:space-between;padding:12px 16px;transition:all .2s ease;width:100%}.section-narrative-toggle:hover:not(:disabled){background:hsl(var(--secondary));border-color:hsl(var(--warning))}.section-narrative-toggle:disabled{cursor:not-allowed;opacity:.6}.section-narrative-title{align-items:center;display:flex;gap:8px}.content-indicator{color:hsl(var(--warning));font-size:12px;line-height:1}.section-narrative.has-content .section-narrative-toggle{border-left:4px solid hsl(var(--warning))}.section-narrative-editor{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:6px;margin-top:12px;padding:16px}.section-narrative.disabled .section-narrative-editor{background:hsl(var(--muted))}.report-preview-container{margin:0 auto;max-width:1200px;padding:2rem 1rem}.report-preview-banner{align-items:flex-start;background-color:hsl(var(--warning)/.15);border:1px solid hsl(var(--warning));border-radius:.5rem;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem}.report-preview-banner-icon{flex-shrink:0;font-size:1.5rem;line-height:1}.report-preview-banner-title{color:hsl(var(--warning));font-size:1rem;font-weight:700;margin-bottom:.25rem}.report-preview-banner-text{color:hsl(var(--warning));font-size:.875rem;line-height:1.5;margin:.25rem 0 0}.report-preview-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.report-preview-header-content h1{color:hsl(var(--foreground));font-size:2rem;font-weight:700;line-height:1.2;margin-bottom:.5rem}.report-preview-header-subtitle{color:hsl(var(--muted-foreground));font-size:1rem;line-height:1.5}.report-preview-status-actions{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.report-preview-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.report-preview-status{margin-bottom:1.5rem}.report-preview-status-badge{align-items:center;border-radius:9999px;display:inline-flex;font-size:.875rem;font-weight:600;letter-spacing:.025em;padding:.5rem 1rem;text-transform:uppercase}.report-preview-status-badge.draft,.report-preview-status-badge.pending_review{background-color:hsl(var(--warning)/.15);border:1px solid hsl(var(--warning)/.3);color:hsl(var(--warning))}.report-preview-status-badge.approved{background-color:hsl(var(--success)/.15);border:1px solid hsl(var(--success)/.3);color:hsl(var(--success))}.report-preview-status-badge.sent{background-color:hsl(var(--info)/.15);border:1px solid hsl(var(--info)/.3);color:hsl(var(--info))}.report-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.5rem;box-shadow:0 1px 3px #0000000d;margin-bottom:1.5rem}.report-card-header{border-bottom:1px solid hsl(var(--border));padding:1.5rem}.report-card-title{color:hsl(var(--foreground));font-size:1.25rem;font-weight:600;margin:0}.report-card-content{padding:1.5rem}.report-financial-summary{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(4,1fr)}.report-financial-item{display:flex;flex-direction:column;gap:.5rem}.report-financial-label{color:hsl(var(--muted-foreground));font-size:.875rem;font-weight:500}.report-financial-value{color:hsl(var(--foreground));font-size:1.75rem;font-weight:700;line-height:1}.report-financial-value.positive{color:hsl(var(--success))}.report-financial-value.negative{color:hsl(var(--destructive))}.report-table-container{border:1px solid hsl(var(--border));border-radius:.5rem;overflow-x:auto}.report-table{border-collapse:collapse;font-size:.875rem;width:100%}.report-table thead{background-color:hsl(var(--muted)/.1);border-bottom:2px solid hsl(var(--border))}.report-table th{color:hsl(var(--foreground));font-weight:600;padding:.75rem 1rem;text-align:left}.report-table th.text-right{text-align:right}.report-table tbody tr{border-bottom:1px solid hsl(var(--border));transition:background-color .15s ease}.report-table tbody tr:hover{background-color:hsl(var(--muted)/.1)}.report-table tbody tr:last-child{border-bottom:none}.report-table td{color:hsl(var(--foreground));padding:.75rem 1rem}.report-table td.text-right{text-align:right}.report-table td.text-danger{color:hsl(var(--destructive));font-weight:600}.report-table td.text-warning{color:hsl(var(--warning));font-weight:500}.task-row-over-budget{background-color:hsl(var(--destructive)/.1)!important}.task-row-warning{background-color:hsl(var(--warning)/.1)!important}.invoice-status-badge{align-items:center;border-radius:.25rem;display:inline-flex;font-size:.75rem;font-weight:600;padding:.25rem .5rem;text-transform:capitalize}.invoice-status-badge.paid{background-color:hsl(var(--success)/.15);color:hsl(var(--success))}.invoice-status-badge.overdue{background-color:hsl(var(--destructive)/.15);color:hsl(var(--destructive))}.invoice-status-badge.open,.invoice-status-badge.pending{background-color:hsl(var(--warning)/.15);color:hsl(var(--warning))}.invoice-section{margin-bottom:2rem}.invoice-section:last-child{margin-bottom:0}.invoice-section-title{border-bottom:2px solid hsl(var(--border));font-size:1rem;font-weight:600;margin-bottom:.75rem;padding-bottom:.5rem}.invoice-overdue-title{border-bottom-color:hsl(var(--destructive)/.15);color:hsl(var(--destructive))}.invoice-open-title{border-bottom-color:hsl(var(--warning)/.15);color:hsl(var(--warning))}.invoice-paid-title{border-bottom-color:hsl(var(--success)/.15);color:hsl(var(--success))}.invoice-row-overdue{background-color:hsl(var(--destructive)/.15)!important}.invoice-row-overdue:hover{background-color:hsl(var(--destructive)/.2)!important}.invoice-row-open{background-color:hsl(var(--warning)/.15)!important}.invoice-row-open:hover{background-color:hsl(var(--warning)/.2)!important}.no-data-message{color:hsl(var(--muted-foreground));font-style:italic;padding:2rem;text-align:center}.report-time-summary{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.report-time-item{display:flex;flex-direction:column;gap:.5rem}.report-time-label{color:hsl(var(--muted-foreground));font-size:.875rem;font-weight:500}.report-time-value{color:hsl(var(--foreground));font-size:1.5rem;font-weight:700;line-height:1}.report-narrative-textarea{border:1px solid hsl(var(--border));border-radius:.5rem;color:hsl(var(--foreground));font-family:inherit;font-size:.875rem;line-height:1.5;min-height:128px;padding:.75rem;resize:vertical;transition:border-color .2s ease;width:100%}.report-narrative-textarea:focus{border-color:hsl(var(--info));box-shadow:0 0 0 3px hsl(var(--info)/.1);outline:none}.report-narrative-textarea:disabled{background-color:hsl(var(--muted)/.1);cursor:not-allowed;opacity:.6}.report-narrative-actions{display:flex;gap:.5rem;margin-top:.75rem}.report-preview-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.report-action-btn{align-items:center;border:none;border-radius:.5rem;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.report-action-btn-approve{color:hsl(var(--card))}.report-action-btn-approve,.report-action-btn-approve:hover:not(:disabled){background-color:hsl(var(--success))}.report-action-btn-send{color:hsl(var(--card))}.report-action-btn-send,.report-action-btn-send:hover:not(:disabled){background-color:hsl(var(--info))}.report-action-btn:disabled{cursor:not-allowed;opacity:.5}.report-sent-info{background-color:hsl(var(--info)/.15);border:1px solid hsl(var(--info)/.3);border-radius:.5rem;margin-top:2rem;padding:1rem 1.5rem}.report-sent-info-text{color:hsl(var(--info));font-size:.875rem;font-weight:500;margin:0}.report-preview-loading{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.5rem;padding:3rem 2rem;text-align:center}.report-preview-loading-spinner{animation:spin .8s linear infinite;border:3px solid hsl(var(--border));border-radius:50%;border-top-color:hsl(var(--info));display:inline-block;height:40px;margin-bottom:1rem;width:40px}.report-preview-loading-text{color:hsl(var(--muted-foreground));font-size:1rem}@keyframes spin{to{transform:rotate(1turn)}}.report-preview-error{background-color:hsl(var(--destructive)/.1);border:1px solid hsl(var(--destructive)/.2);border-radius:.5rem;padding:1rem 1.5rem}.report-preview-error-text{color:hsl(var(--destructive));font-size:.875rem;line-height:1.5;margin:0}@media (max-width:1024px){.report-financial-summary,.report-time-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.report-preview-header{align-items:stretch;flex-direction:column}.report-preview-header-content h1{font-size:1.5rem}.report-preview-status-actions{align-items:stretch;flex-direction:column;gap:1rem}.report-preview-header-actions{width:100%}.report-preview-header-actions button{flex:1 1}.report-financial-summary,.report-time-summary{gap:1rem;grid-template-columns:1fr}.report-financial-value{font-size:1.5rem}.report-time-value{font-size:1.25rem}.report-table{font-size:.75rem}.report-table td,.report-table th{padding:.5rem}.report-preview-actions{flex-direction:column}.report-action-btn{justify-content:center;width:100%}}@media (max-width:480px){.report-preview-header-content h1{font-size:1.25rem}.report-card-content,.report-card-header{padding:1rem}.report-card-title{font-size:1.125rem}.report-preview-banner{padding:.75rem 1rem}.report-preview-banner-icon{font-size:1.25rem}}@media print{.report-narrative-actions,.report-preview-actions,.report-preview-banner,.report-preview-header-actions{display:none!important}.report-card{box-shadow:none;page-break-inside:avoid}.report-table tbody tr:hover{background-color:initial}.forecast-period-card,.forecast-totals-summary{page-break-inside:avoid}}.forecast-description{color:hsl(var(--muted-foreground));font-size:.95rem;margin-bottom:1.5rem;margin-top:.5rem}.forecast-period-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 1px 3px #0000000d;margin-bottom:1.5rem;padding:1.5rem}.forecast-period-header{border-bottom:2px solid hsl(var(--border));margin-bottom:1rem;padding-bottom:.75rem}.forecast-period-header h4{color:hsl(var(--foreground));font-size:1.1rem;margin:0}.forecast-period-totals{display:flex;gap:2rem;margin-top:1rem}.forecast-stat{display:flex;flex:1 1;flex-direction:column}.forecast-stat-label{color:hsl(var(--muted-foreground));font-size:.875rem;font-weight:500;margin-bottom:.5rem}.forecast-stat-value{color:hsl(var(--info));font-size:1.75rem;font-weight:700}.forecast-totals-summary{background:hsl(var(--info)/.1);border-left:4px solid hsl(var(--info));border-radius:8px;margin-top:2rem;padding:1.5rem}.forecast-totals-summary h4{color:hsl(var(--info));margin-bottom:1rem;margin-top:0}.totals-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1rem}.total-item{display:flex;flex-direction:column}.total-label{color:hsl(var(--info));font-size:.875rem;font-weight:500;margin-bottom:.25rem}.total-value{color:hsl(var(--info));font-size:1.75rem;font-weight:700}.budget-comparison{border-top:2px solid hsl(var(--info)/.2);margin-top:1rem;padding-top:1rem}.budget-comparison p{color:hsl(var(--info));margin:.5rem 0}.budget-comparison .warning{color:hsl(var(--destructive));font-weight:600}.budget-comparison .success{color:hsl(var(--success));font-weight:600}.email-intro-card{background:linear-gradient(to right,hsl(var(--primary-blue-tint)) 0,hsl(var(--card)) 100%);border-left:4px solid hsl(var(--info))}.email-intro-hint{color:hsl(var(--muted-foreground));font-size:13px;font-style:italic;margin:4px 0 0}.report-narratives-save{background:linear-gradient(to bottom,#0000 0,hsl(var(--card)) 20%);bottom:24px;display:flex;justify-content:center;padding:16px;position:sticky;width:100%;z-index:10}.report-narratives-save button{background:hsl(var(--accent));border:none;border-radius:6px;box-shadow:0 4px 12px hsl(var(--accent)/.3);color:hsl(var(--accent-foreground));cursor:pointer;font-size:16px;font-weight:600;padding:12px 32px;transition:all .2s ease}.report-narratives-save button:hover:not(:disabled){background:hsl(var(--success));box-shadow:0 6px 16px hsl(var(--success)/.4);transform:translateY(-2px)}.report-narratives-save button:disabled{background:hsl(var(--muted));box-shadow:none;color:hsl(var(--muted-foreground));cursor:not-allowed}.forecast-budget-row{background-color:hsl(var(--muted)/.5)}.forecast-budget-row:hover{background-color:hsl(var(--muted)/.6)}.forecast-funding-row{background-color:hsl(var(--info)/.1)}.forecast-funding-row:hover{background-color:hsl(var(--info)/.15)}.forecast-funding-amount{color:hsl(var(--success))}.forecast-projected-row{background-color:hsl(var(--muted)/.5);font-weight:700}.forecast-projected-row:hover{background-color:hsl(var(--muted)/.6)}.message{align-items:center;border-radius:6px;display:flex;font-weight:500;gap:10px;margin-bottom:20px;padding:15px}.message.success{background-color:hsl(var(--success)/.15);border:1px solid hsl(var(--success)/.3);color:hsl(var(--success))}.message.error{background-color:hsl(var(--destructive)/.15);border:1px solid hsl(var(--destructive)/.3);color:hsl(var(--destructive))}.message-icon{font-size:1.2em}.tab{position:relative}.tab .badge{background:hsl(var(--destructive));border-radius:12px;color:#fff;font-size:.85em;margin-left:8px;padding:2px 8px}.main-content{background:hsl(var(--card));border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:30px}.controls{flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:25px}.controls,.search-filter{align-items:center;display:flex}.search-filter{gap:10px}.search-filter label{color:hsl(var(--foreground));font-weight:500}.search-filter input{border:1px solid hsl(var(--border));border-radius:4px;font-size:1em;padding:8px 15px;width:300px}.stats{color:hsl(var(--muted-foreground));display:flex;font-size:.95em;gap:15px}.active-count{color:hsl(var(--success));font-weight:500}.users-table{overflow-x:auto}.users-table table{border-collapse:collapse;width:100%}.users-table thead{background:hsl(var(--muted)/.5)}.users-table th{border-bottom:2px solid hsl(var(--border));color:hsl(var(--foreground));font-weight:600;padding:12px 15px;text-align:left}.users-table td{border-bottom:1px solid hsl(var(--border));padding:15px}.users-table tr:hover{background:hsl(var(--muted)/.5)}.users-table tr.inactive-row{opacity:.6}.user-cell{align-items:center;display:flex;gap:10px}.user-avatar-small,.user-avatar-small-placeholder{border-radius:50%;height:32px;width:32px}.user-avatar-small-placeholder{align-items:center;background:hsl(var(--primary));color:hsl(var(--primary-foreground));display:flex;font-weight:600;justify-content:center}.roles-cell{display:flex;flex-wrap:wrap;gap:5px}.role-badge{padding:4px 10px}.no-roles{color:hsl(var(--muted-foreground)/.7);font-style:italic}.status-badge{border-radius:12px;font-size:.85em;font-weight:500;padding:4px 12px}.status-badge.active{background:hsl(var(--success)/.15);color:hsl(var(--success))}.status-badge.inactive{background:hsl(var(--destructive)/.15);color:hsl(var(--destructive))}.action-buttons{display:flex;gap:8px}.action-buttons button{border:none;border-radius:4px;cursor:pointer;font-size:.9em;font-weight:500;padding:6px 12px;transition:all .2s ease}.btn-edit{background:hsl(var(--primary));color:#fff}.btn-edit:hover{background:hsl(var(--primary)/.9)}.btn-impersonate{background:#0080ff;color:#fff}.btn-impersonate:hover{background:#0073e6}.btn-toggle{background:hsl(var(--muted));color:#fff}.btn-toggle:hover{background:hsl(var(--muted)/.8)}.btn-deactivate{background:hsl(var(--destructive))}.btn-deactivate:hover{background:hsl(var(--destructive)/.9)}.btn-activate{background:hsl(var(--success))}.btn-activate:hover{background:hsl(var(--success)/.9)}.no-results{color:hsl(var(--muted-foreground));font-size:1.1em;padding:40px 20px;text-align:center}.requests-list{display:flex;flex-direction:column;gap:20px}.no-requests{color:hsl(var(--muted-foreground));padding:60px 20px;text-align:center}.no-requests p{font-size:1.2em;margin:0}.request-card{background:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:8px;padding:20px;transition:all .2s ease}.request-card:hover{box-shadow:0 4px 15px #0000001a}.request-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:15px}.request-user h3{color:hsl(var(--foreground));font-size:1.3em;margin:0 0 5px}.request-email{color:hsl(var(--muted-foreground));font-size:.95em;margin:0}.request-date{color:hsl(var(--muted-foreground)/.7);font-size:.9em}.request-roles{margin-bottom:15px}.request-roles strong{color:hsl(var(--foreground));display:block;margin-bottom:8px}.roles-list{display:flex;flex-wrap:wrap;gap:5px}.request-message{background:hsl(var(--card));border-left:3px solid hsl(var(--primary));border-radius:4px;margin-bottom:15px;padding:15px}.request-message strong{color:hsl(var(--foreground));display:block;margin-bottom:8px}.request-message p{color:hsl(var(--muted-foreground));line-height:1.5;margin:0}.request-actions{display:flex;gap:10px;justify-content:flex-end}.btn-approve{background:hsl(var(--success));border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1em;font-weight:500;padding:10px 20px;transition:all .2s ease}.btn-approve:hover{background:hsl(var(--success)/.9)}.btn-reject{background:hsl(var(--destructive));border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1em;font-weight:500;padding:10px 20px;transition:all .2s ease}.btn-reject:hover{background:hsl(var(--destructive)/.9)}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:hsl(var(--card));border-radius:8px;box-shadow:0 10px 40px #0000004d;max-height:80vh;max-width:600px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid hsl(var(--border));display:flex;justify-content:space-between;padding:20px 25px}.modal-header h2{color:hsl(var(--foreground));font-size:1.5em;margin:0}.modal-close{background:none;border:none;color:hsl(var(--muted-foreground)/.7);cursor:pointer;font-size:2em;height:30px;line-height:1;padding:0;width:30px}.modal-close:hover{color:hsl(var(--foreground))}.modal-body{padding:25px}.modal-description{color:hsl(var(--muted-foreground));margin:0 0 20px}.roles-checkboxes{display:flex;flex-direction:column;gap:12px}.role-checkbox{align-items:center;border:1px solid hsl(var(--border));border-radius:4px;cursor:pointer;display:flex;gap:10px;padding:12px;transition:all .2s ease}.role-checkbox:hover{background:hsl(var(--muted)/.5);border-color:hsl(var(--primary))}.role-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.role-name{font-weight:500}.modal-footer{border-top:1px solid hsl(var(--border));display:flex;gap:10px;justify-content:flex-end;padding:20px 25px}.btn-cancel{background:hsl(var(--muted));border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1em;font-weight:500;padding:10px 20px;transition:all .2s ease}.btn-cancel:hover{background:hsl(var(--muted)/.8)}.btn-save{background:hsl(var(--primary));border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1em;font-weight:500;padding:10px 20px;transition:all .2s ease}.btn-save:hover{background:hsl(var(--primary)/.9)}.loading{color:hsl(var(--muted-foreground));font-size:1.2em;padding:40px;text-align:center}@media (max-width:768px){.user-management-container{padding:15px}.user-management-header h1{font-size:2em}.controls,.search-filter{align-items:stretch;flex-direction:column}.search-filter input{width:100%}.users-table{font-size:.9em}.users-table td{padding:10px}.action-buttons{flex-direction:column}.action-buttons button{width:100%}.request-header{gap:10px}.request-actions,.request-header{flex-direction:column}.btn-approve,.btn-reject{background:hsl(var(--destructive));border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1em;font-weight:500;padding:10px 20px;transition:all .2s ease}.modal-content{max-height:90vh;width:95%}}.request-access-container{align-items:center;background:linear-gradient(135deg,hsl(var(--primary)) 0,hsl(var(--accent)) 100%);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:center;min-height:100vh;padding:20px}.request-access-card,.success-card{background:hsl(var(--card));border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:700px;overflow:hidden;width:100%}.card-header{background:linear-gradient(135deg,hsl(var(--primary)) 0,hsl(var(--accent)) 100%);color:hsl(var(--primary-foreground));padding:40px 30px;text-align:center}.card-header h1{font-size:2.5em;margin:0 0 10px}.card-header p{font-size:1.1em;margin:0;opacity:.9}.user-info{background:hsl(var(--muted)/.3);border-bottom:1px solid hsl(var(--border));padding:20px 30px}.info-row{color:hsl(var(--foreground));display:flex;justify-content:space-between;padding:8px 0}.info-row strong{color:hsl(var(--muted-foreground))}.request-form{padding:30px}.form-section{margin-bottom:30px}.form-section h2{color:hsl(var(--foreground));font-size:1.5em;margin:0 0 10px}.section-description{line-height:1.5}.roles-selection{display:flex;flex-direction:column;gap:12px}.role-option{align-items:start;border:2px solid hsl(var(--border));border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:15px;transition:all .2s ease}.role-option:hover{background:hsl(var(--muted)/.3);border-color:hsl(var(--primary))}.role-option input[type=checkbox]{cursor:pointer;height:20px;margin-top:4px;width:20px}.role-option input[type=checkbox]:checked+.role-info{color:hsl(var(--primary))}.role-info{display:flex;flex:1 1;flex-direction:column;gap:5px}.role-name{color:hsl(var(--foreground));font-size:1.1em;font-weight:600}.role-option input[type=checkbox]:checked+.role-info .role-name{color:hsl(var(--primary))}.role-description{color:hsl(var(--muted-foreground));font-size:.9em}.message-input{border:2px solid hsl(var(--border));border-radius:8px;font-family:inherit;font-size:1em;padding:15px;resize:vertical;transition:border-color .2s ease;width:100%}.message-input:focus{border-color:hsl(var(--primary));outline:none}.error-message{align-items:center;border-radius:8px;display:flex;gap:10px}.error-icon{font-size:1.2em;font-weight:700}.form-actions{margin-bottom:20px}.submit-button{background:linear-gradient(135deg,hsl(var(--primary)) 0,hsl(var(--accent)) 100%);border:none;border-radius:8px;color:hsl(var(--primary-foreground));cursor:pointer;font-size:1.1em;font-weight:600;padding:15px;transition:all .3s ease;width:100%}.submit-button:hover:not(:disabled){box-shadow:0 10px 30px hsl(var(--primary)/.4);transform:translateY(-2px)}.submit-button:disabled{background:hsl(var(--muted));box-shadow:none;cursor:not-allowed;transform:none}.help-text{background:hsl(var(--info)/.1);border-left:4px solid hsl(var(--info));border-radius:8px;padding:15px}.help-text p{color:hsl(var(--info));line-height:1.5;margin:0}.help-text strong{font-weight:600}.success-card{padding:50px 40px;text-align:center}.success-icon{align-items:center;background:hsl(var(--success));border-radius:50%;color:hsl(var(--card));display:flex;font-size:3em;font-weight:700;height:80px;justify-content:center;margin:0 auto 30px;width:80px}.success-card h1{color:hsl(var(--foreground));font-size:2.5em;margin:0 0 20px}.success-card>p{color:hsl(var(--muted-foreground));font-size:1.1em;line-height:1.6;margin-bottom:15px}.submitted-details{background:hsl(var(--muted)/.3);border-radius:8px;margin:30px 0;padding:25px;text-align:left}.submitted-details h3{color:hsl(var(--foreground));margin:0 0 15px}.detail-row{border-bottom:1px solid hsl(var(--border));display:flex;justify-content:space-between;padding:10px 0}.detail-row:last-child{border-bottom:none}.detail-row strong{color:hsl(var(--muted-foreground))}.roles-display{display:flex;flex-wrap:wrap;gap:5px}.role-badge{background:hsl(var(--primary));border-radius:12px;color:hsl(var(--primary-foreground));display:inline-block;font-size:.85em;font-weight:500;padding:4px 12px}.next-steps{background:hsl(var(--info)/.1);border-left:4px solid hsl(var(--info));border-radius:8px;padding:25px;text-align:left}.next-steps h3{color:hsl(var(--info));margin:0 0 15px}.next-steps ul{color:hsl(var(--info));margin:0;padding-left:20px}.next-steps li{line-height:1.5;margin-bottom:10px}.next-steps li:last-child{margin-bottom:0}@media (max-width:768px){.request-access-container{padding:10px}.card-header{padding:30px 20px}.card-header h1{font-size:2em}.request-form,.user-info{padding:20px}.form-section h2{font-size:1.3em}.success-card{padding:30px 20px}.success-card h1{font-size:2em}.next-steps,.submitted-details{padding:20px}.detail-row{flex-direction:column;gap:5px}}.dialog-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.dialog-content{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 8px 32px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.dialog-header{align-items:center;background:hsl(var(--muted)/.3);border-bottom:1px solid hsl(var(--border));display:flex;justify-content:space-between;padding:20px}.dialog-header h2{color:hsl(var(--foreground));font-size:1.25em;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:4px;color:hsl(var(--muted-foreground));cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.close-button:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.dialog-body{padding:20px}.project-info{background:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:4px;margin-bottom:20px;padding:12px}.project-info strong{display:block;font-size:1em;margin-bottom:4px}.project-code{color:hsl(var(--muted-foreground));font-size:.9em}.form-group{margin-bottom:20px}.form-group label{color:hsl(var(--foreground));display:block;font-size:.95em;font-weight:600;margin-bottom:8px}.form-group input,.form-group select{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-family:inherit;font-size:1em;padding:10px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-group input:focus,.form-group select:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary)/.1);outline:none}.help-text{color:hsl(var(--muted-foreground));display:block;font-size:.85em;margin-top:6px}.error-message{border-radius:4px;font-size:.95em}.dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.button-primary,.button-secondary{border:none;border-radius:6px;cursor:pointer;font-size:1em;font-weight:600;padding:10px 20px;transition:all .2s ease}.button-secondary{background:hsl(var(--muted));color:hsl(var(--foreground))}.button-secondary:hover:not(:disabled){background:hsl(var(--muted)/.8)}.button-secondary:disabled{cursor:not-allowed;opacity:.6}.tabs{margin-top:10px}.tab{font-size:1em;font-weight:500;transition:all .2s ease}.tab:hover{background:hsl(var(--muted)/.5);color:hsl(var(--primary))}.tab-content{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;padding:30px!important}.tab-content h2{color:hsl(var(--foreground));font-size:1.5em;margin:0 0 10px!important;padding:0!important}.tab-content>p{color:hsl(var(--muted-foreground));margin:0 0 20px!important;padding:0!important}.error-message{background:hsl(var(--destructive)/.15);border-radius:6px;font-weight:500;margin-top:20px;padding:15px}.button-primary{background:hsl(var(--primary));border:none;border-radius:6px;color:hsl(var(--primary-foreground));cursor:pointer;font-size:1em;font-weight:600;padding:10px 20px;transition:all .2s ease}.button-primary:hover:not(:disabled){background:hsl(var(--primary)/.9)}.button-primary:disabled{cursor:not-allowed;opacity:.6}.data-table{border:1px solid hsl(var(--border));border-collapse:collapse;border-radius:8px;margin-top:20px;overflow:hidden;width:100%}.data-table td,.data-table th{border-bottom:1px solid hsl(var(--border));padding:12px 16px;text-align:left}.data-table th{background:hsl(var(--muted));color:hsl(var(--foreground));font-size:.95em;font-weight:600}.data-table tbody tr{background:hsl(var(--card));transition:background-color .2s ease}.data-table tbody tr:hover{background:hsl(var(--muted)/.3)}.data-table tbody tr:last-child td{border-bottom:none}.data-table input{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-size:1em;padding:6px 10px;width:80px}.data-table button{background:hsl(var(--primary));border:none;border-radius:4px;color:hsl(var(--primary-foreground));cursor:pointer;font-size:.9em;font-weight:500;padding:6px 16px;transition:all .2s ease}.data-table button:hover{background:hsl(var(--primary)/.9)}.projects-list{margin-top:20px}.project-card{background:hsl(var(--card))!important;border:2px solid hsl(var(--border));border-radius:8px;color:hsl(var(--card-foreground));display:flex;flex-direction:column;min-height:200px;transition:all .2s ease}.project-card:hover{background:hsl(var(--muted)/.2)!important;border-color:hsl(var(--primary)/.5)}.project-card-header{flex-grow:1}.project-card h3{color:hsl(var(--foreground))!important;font-size:1.1em;font-weight:600;margin:0 0 10px}.project-card p{color:hsl(var(--muted-foreground))!important;font-size:.95em;margin:0 0 15px}.project-card button{align-self:flex-start;background:hsl(var(--primary));border:none;border-radius:4px;color:hsl(var(--primary-foreground));cursor:pointer;font-weight:500;margin-top:auto;padding:8px 16px;transition:all .2s ease}.project-card button:hover{background:hsl(var(--primary)/.9)}.assigned-reps{background:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:4px;margin:15px 0;padding:12px}.assigned-reps strong{color:hsl(var(--foreground));display:block;font-size:.9em;margin-bottom:8px}.assigned-reps ul{margin:0;padding-left:20px}.assigned-reps li{color:hsl(var(--muted-foreground));font-size:.9em;margin:4px 0}.report-list{display:flex;flex-direction:column;gap:20px;margin-top:20px}.rep-report-card{background:hsl(var(--card));border:2px solid hsl(var(--border));border-radius:8px;padding:24px}.rep-header{align-items:center;border-bottom:1px solid hsl(var(--border));display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:15px}.rep-header h3{color:hsl(var(--foreground));margin:0}.rep-totals{align-items:center;display:flex;gap:20px}.total-amount{color:hsl(var(--success));font-size:1.5em;font-weight:600}.invoice-count{color:hsl(var(--muted-foreground));font-size:.95em}.projects{display:flex;flex-direction:column;gap:10px}.project-section{margin-bottom:10px}.project-summary{align-items:center;background:hsl(var(--muted)/.3);border-radius:4px;display:flex;justify-content:space-between;padding:12px 15px;transition:background .2s ease}.project-summary:hover{background:hsl(var(--muted)/.5)}.project-info{align-items:center;display:flex;flex:1 1;gap:10px}.expand-icon{color:hsl(var(--muted-foreground));display:inline-block;font-size:.8em;width:12px}.project-info strong{color:hsl(var(--foreground));font-size:.95em}.project-commission{color:hsl(var(--success));font-weight:600;margin-left:15px}.invoice-details{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;margin-top:10px;padding:15px}.invoice-table{border-collapse:collapse;width:100%}.invoice-table td,.invoice-table th{border-bottom:1px solid hsl(var(--border));padding:10px 12px;text-align:left}.invoice-table th{background:hsl(var(--muted)/.5);color:hsl(var(--foreground));font-size:.9em;font-weight:600}.invoice-table tbody tr{background:hsl(var(--card))}.invoice-table tbody tr:hover{background:hsl(var(--muted)/.2)}.invoice-table tbody tr:last-child td{border-bottom:none}.invoice-table .numeric-cell{text-align:right}.import-section{max-width:600px}.import-section p{color:hsl(var(--muted-foreground));margin-bottom:10px}.import-section code{background:hsl(var(--muted));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));display:block;font-family:Courier New,monospace;font-size:.85em;margin:10px 0 20px;overflow-x:auto;padding:12px}.file-upload{align-items:center;display:flex;gap:10px}.file-upload input{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));padding:8px}@media (max-width:768px){.projects-list{grid-template-columns:1fr}.rep-header{gap:10px}.rep-header,.rep-totals{align-items:flex-start;flex-direction:column}.rep-totals{gap:8px}}.not-sales-rep{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:40px;text-align:center}.not-sales-rep h2{color:hsl(var(--foreground));margin:0 0 16px}.not-sales-rep p{color:hsl(var(--muted-foreground));margin:8px 0}.next-payment-card{background:linear-gradient(135deg,hsl(var(--primary)) 0,hsl(var(--accent)) 100%);border-radius:var(--radius);box-shadow:0 4px 6px #0000001a;color:hsl(var(--primary-foreground));margin-bottom:30px;padding:20px}.next-payment-card .card-header{margin-bottom:15px}.next-payment-card .card-header h2{font-size:18px;font-weight:600;margin:0;opacity:.9}.next-payment-card .card-content{align-items:center;display:flex;gap:20px}.payment-amount{font-size:36px;font-weight:700}.payment-date{font-size:16px;opacity:.9}.invoice-count{font-size:14px;margin-left:auto;opacity:.8}.summary-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:20px}.stat-value{color:hsl(var(--foreground));display:block;font-size:32px;font-weight:700;margin-bottom:12px}.stat-label{display:block;margin-bottom:8px}.stat-count,.stat-label{color:hsl(var(--muted-foreground));font-size:14px}.commission-section{margin-bottom:40px}.commission-section:last-child{margin-bottom:0}.section-title{color:hsl(var(--foreground));font-size:20px;font-weight:600;margin:0 0 8px}.section-description{color:hsl(var(--muted-foreground));font-size:14px;margin:0 0 20px}.tabs{border-bottom:2px solid hsl(var(--border));display:flex;gap:10px;margin-bottom:30px}.tab{background:none;border:none;border-bottom:3px solid #0000;color:hsl(var(--muted-foreground));cursor:pointer;font-size:16px;padding:12px 24px;transition:all .2s}.tab:hover{color:hsl(var(--foreground))}.tab.active{border-bottom-color:hsl(var(--primary));color:hsl(var(--primary))}.tab-content{padding:20px 0}.error-message{background:hsl(var(--destructive)/.1);border:1px solid hsl(var(--destructive)/.3);border-radius:calc(var(--radius)/2);color:hsl(var(--destructive));margin-bottom:20px;padding:12px}.commissions-table{background:hsl(var(--card));border:1px solid hsl(var(--border));border-collapse:collapse;border-radius:var(--radius);overflow:hidden;width:100%}.commissions-table tbody tr.past-due{background:hsl(var(--destructive)/.15);border-left:4px solid hsl(var(--destructive))}.commissions-table tbody tr.past-due:hover{background:hsl(var(--destructive)/.2)}.commissions-table tbody tr.past-due td{font-weight:500}.commissions-table td,.commissions-table th{border-bottom:1px solid hsl(var(--border));padding:12px;text-align:left}.commissions-table th{background:hsl(var(--muted));color:hsl(var(--muted-foreground));font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.commissions-table tbody tr:hover{background:hsl(var(--muted)/.5)}.commissions-table tbody tr:last-child td{border-bottom:none}.commissions-table .numeric,.commissions-table .numeric-header{text-align:right}.commission-amount{color:hsl(var(--primary));font-weight:600}.commissions-table tfoot{background:hsl(var(--muted));border-top:2px solid hsl(var(--border))}.total-row{font-weight:600}.total-amount{color:hsl(var(--primary))}.payment-groups{display:flex;flex-direction:column;gap:30px}.payment-group{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);overflow:hidden}.payment-group-header{align-items:center;background:hsl(var(--muted));border-bottom:2px solid hsl(var(--border));display:flex;justify-content:space-between;padding:16px 20px}.payment-group-header h3{color:hsl(var(--foreground));font-size:18px;font-weight:600;margin:0}.payment-group-header .group-total{color:hsl(var(--primary));font-size:20px;font-weight:700}.payment-group .commissions-table{border:none;border-radius:0}.history-total{align-items:center;background:hsl(var(--card));border:2px solid hsl(var(--primary));border-radius:var(--radius);color:hsl(var(--foreground));display:flex;font-size:18px;justify-content:space-between;padding:20px}.history-total .total-amount{color:hsl(var(--primary));font-size:24px;font-weight:700}.projects-header{display:flex;justify-content:flex-end;margin-bottom:20px}.inactive-toggle{align-items:center;color:hsl(var(--foreground));cursor:pointer;display:flex;font-size:14px;gap:8px;-webkit-user-select:none;user-select:none}.inactive-toggle input[type=checkbox]{cursor:pointer;height:16px;width:16px}.inactive-toggle:hover{color:hsl(var(--primary))}.projects-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:20px;transition:all .2s}.project-card:hover{box-shadow:0 4px 12px hsl(var(--foreground)/.1)}.project-card h3{color:hsl(var(--foreground));font-size:18px;margin:0 0 16px}.project-stats{display:flex;flex-direction:column;gap:12px}.project-stats .stat{align-items:center;display:flex;justify-content:space-between}.project-stats .label{color:hsl(var(--muted-foreground));font-size:14px}.project-stats .value{color:hsl(var(--foreground));font-size:16px;font-weight:600}.project-stats .value.inactive{color:hsl(var(--muted-foreground));font-weight:500}.inactive-badge{border-top:1px solid hsl(var(--border));padding-top:8px}@media (max-width:768px){.summary-stats{grid-template-columns:1fr}.commissions-table{font-size:14px}.commissions-table td,.commissions-table th{padding:8px}.payment-amount,.stat-value{font-size:28px}.projects-list{grid-template-columns:1fr}.payment-group-header{gap:12px}.history-total,.payment-group-header{align-items:flex-start;flex-direction:column}.history-total{gap:8px}}.ar-dialog-overlay{align-items:flex-start;animation:fadeIn .2s ease;background:#00000080;display:flex;inset:0;justify-content:center;padding:80px 16px 40px;position:fixed;z-index:50}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.ar-dialog-container{animation:slideUp .3s ease;background:hsl(var(--card));border-radius:12px;box-shadow:0 20px 50px #0000004d;flex-shrink:0;max-height:calc(100vh - 120px);max-width:56rem;overflow-y:auto;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ar-dialog-header{background:hsl(var(--muted)/.3);border-bottom:1px solid hsl(var(--border));padding:32px;position:relative}.ar-dialog-close-x{align-items:center;background:hsl(var(--card));border:none;border-radius:6px;color:hsl(var(--muted-foreground));cursor:pointer;display:flex;font-size:1.25rem;height:32px;justify-content:center;line-height:1;position:absolute;right:16px;top:16px;transition:all .2s ease;width:32px}.ar-dialog-close-x:hover{background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.ar-dialog-title{color:hsl(var(--primary));font-family:var(--font-neuton);font-size:1.75rem;font-weight:700;line-height:1.2;margin-bottom:8px}.ar-dialog-subtitle{color:hsl(var(--muted-foreground));font-size:.875rem;margin-bottom:12px}.ar-dialog-badges{display:flex;flex-wrap:wrap;gap:8px}.ar-dialog-section{border-bottom:1px solid hsl(var(--border));padding:32px}.ar-dialog-section-title{color:hsl(var(--foreground));font-family:var(--font-neuton);font-size:1.25rem;font-weight:600;margin-bottom:16px}.ar-invoice-table{border:1px solid hsl(var(--border));border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}.ar-invoice-table thead{background:hsl(var(--muted)/.5)}.ar-invoice-table th{border-bottom:2px solid hsl(var(--border));font-size:.875rem;font-weight:600;text-align:left}.ar-invoice-table td,.ar-invoice-table th{color:hsl(var(--foreground));padding:12px 16px}.ar-invoice-table td{border-bottom:1px solid hsl(var(--border));font-size:.9375rem}.ar-invoice-table tbody tr:last-child td{border-bottom:none}.ar-invoice-table tbody tr:hover{background:hsl(var(--muted)/.2)}.ar-invoice-row-15-29{background:hsl(var(--warning)/.08)}.ar-invoice-row-15-29:hover{background:hsl(var(--warning)/.15)}.ar-invoice-row-30-44{background:#af79231a}.ar-invoice-row-30-44:hover{background:#af79232e}.ar-invoice-row-45{background:hsl(var(--destructive)/.08)}.ar-invoice-row-45:hover{background:hsl(var(--destructive)/.15)}.ar-invoice-table tfoot{background:hsl(var(--muted)/.3);font-weight:600}.ar-invoice-table tfoot td{border-bottom:none;border-top:2px solid hsl(var(--border));padding:16px}.ar-invoice-number{font-family:var(--font-mono);font-size:.875rem}.ar-invoice-overdue{color:hsl(var(--destructive));font-weight:600;text-align:center}.ar-invoice-total{color:hsl(var(--primary));font-size:1.125rem;font-weight:700}.ar-comment-section{background:hsl(var(--muted)/.2)}.ar-comment-textarea{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:8px;color:hsl(var(--foreground));font-family:inherit;font-size:.9375rem;line-height:1.5;margin-bottom:12px;min-height:100px;padding:12px;resize:vertical;transition:border-color .2s ease;width:100%}.ar-comment-textarea:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.1);outline:none}.ar-comment-textarea::placeholder{color:hsl(var(--muted-foreground))}.ar-comment-submit-button{background:hsl(var(--primary));border:none;border-radius:8px;color:hsl(var(--primary-foreground));cursor:pointer;font-size:.9375rem;font-weight:600;padding:10px 24px;transition:all .2s ease}.ar-comment-submit-button:hover:not(:disabled){background:hsl(var(--primary)/.9);box-shadow:0 4px 8px hsl(var(--primary)/.3);transform:translateY(-1px)}.ar-comment-submit-button:active:not(:disabled){transform:translateY(0)}.ar-comment-submit-button:disabled{cursor:not-allowed;opacity:.5}.ar-comment-history{padding:32px}.ar-comment-list{display:flex;flex-direction:column;gap:16px}.ar-comment-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;padding:20px;transition:all .2s ease}.ar-comment-card:hover{box-shadow:0 2px 8px hsl(var(--border)/.4)}.ar-comment-header{align-items:start;display:flex;gap:16px;justify-content:space-between;margin-bottom:12px}.ar-comment-user-info{flex:1 1}.ar-comment-user-name{color:hsl(var(--foreground));font-weight:600;margin-bottom:4px}.ar-comment-user-email{color:hsl(var(--muted-foreground));font-size:.875rem}.ar-comment-meta{text-align:right}.ar-comment-date{color:hsl(var(--muted-foreground));font-size:.875rem;margin-bottom:8px}.ar-comment-text{word-wrap:break-word;color:hsl(var(--foreground));line-height:1.6;white-space:pre-wrap}.ar-comment-empty,.ar-comment-loading{color:hsl(var(--muted-foreground));padding:32px;text-align:center}.ar-comment-empty{font-style:italic}.ar-dialog-footer{background:hsl(var(--muted)/.2);border-top:1px solid hsl(var(--border));padding:24px 32px}.ar-dialog-close-button{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;color:hsl(var(--foreground));cursor:pointer;font-size:.9375rem;font-weight:600;padding:10px 24px;transition:all .2s ease}.ar-dialog-close-button:hover{background:hsl(var(--muted)/.5);border-color:hsl(var(--foreground))}@media (max-width:768px){.ar-dialog-container{border-radius:0;max-height:100vh;max-width:100%}.ar-comment-history,.ar-dialog-header,.ar-dialog-section{padding:20px}.ar-dialog-title{font-size:1.5rem}.ar-comment-header{flex-direction:column}.ar-comment-meta{text-align:left}.ar-invoice-table{font-size:.875rem}.ar-invoice-table td,.ar-invoice-table th{padding:10px 12px}}.ar-summary-section{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}@media (max-width:768px){.ar-summary-section{grid-template-columns:1fr}}.ar-summary-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px;box-shadow:0 2px 10px hsl(var(--border)/.3);padding:24px;transition:all .2s ease}.ar-summary-card:hover{box-shadow:0 4px 12px hsl(var(--border)/.5);transform:translateY(-2px)}.ar-summary-label{color:hsl(var(--muted-foreground));font-size:.875rem;font-weight:500;margin-bottom:8px}.ar-summary-value{color:hsl(var(--primary));font-size:2rem;font-weight:700;line-height:1}.ar-tabs{border-bottom:2px solid hsl(var(--border));display:flex;gap:10px;margin-bottom:30px;margin-top:10px}.ar-tab{background:none;border:none;border-bottom:3px solid #0000;color:hsl(var(--muted-foreground));cursor:pointer;font-size:1em;font-weight:500;padding:12px 24px;transition:all .2s ease}.ar-tab:hover{background:hsl(var(--muted)/.5);color:hsl(var(--primary))}.ar-tab.active{border-bottom-color:hsl(var(--primary));color:hsl(var(--primary))}.ar-table-container{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px;box-shadow:0 2px 10px hsl(var(--border)/.3);overflow:hidden}.ar-empty-state{color:hsl(var(--muted-foreground));font-size:1rem;padding:60px 32px;text-align:center}.ar-table{border-collapse:collapse;width:100%}.ar-table thead{background:hsl(var(--muted)/.5);border-bottom:2px solid hsl(var(--border))}.ar-table th{font-size:.875rem;font-weight:600;letter-spacing:.05em;text-align:left;text-transform:uppercase}.ar-table td,.ar-table th{color:hsl(var(--foreground));padding:16px}.ar-table td{border-bottom:1px solid hsl(var(--border));font-size:.9375rem}.ar-table tbody tr{transition:background-color .15s ease}.ar-table tbody tr:hover{background:hsl(var(--muted)/.3)}.ar-table tbody tr:last-child td{border-bottom:none}.ar-badge{align-items:center;border:1px solid;border-radius:6px;display:inline-flex;font-size:.8125rem;font-weight:600;padding:.375rem .75rem;white-space:nowrap}.ar-badge-threshold-15-29{background:hsl(var(--warning)/.1);border-color:hsl(var(--warning)/.3);color:hsl(var(--warning))}.ar-badge-threshold-30-44{background:#af792326;border-color:#af79234d;color:#af7923}.ar-badge-threshold-45{background:hsl(var(--destructive)/.1);border-color:hsl(var(--destructive)/.3);color:hsl(var(--destructive))}.ar-badge-updated{background:hsl(var(--success)/.1);border-color:hsl(var(--success)/.3);color:hsl(var(--success))}.ar-badge-needs-comment{background:hsl(var(--destructive)/.1);border-color:hsl(var(--destructive)/.3);color:hsl(var(--destructive))}.ar-badge-leadership{background:hsl(var(--info)/.1);border-color:hsl(var(--info)/.3);color:hsl(var(--info))}.ar-project-code{color:hsl(var(--muted-foreground));font-family:var(--font-mono);font-size:.75rem}.ar-currency{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.ar-days-overdue{color:hsl(var(--destructive));font-weight:600}.ar-loading{align-items:center;color:hsl(var(--muted-foreground));display:flex;justify-content:center;min-height:400px}.ar-error-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px;padding:32px;text-align:center}.ar-error-message{color:hsl(var(--destructive));font-weight:500;margin-bottom:16px}.ar-action-button{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:6px;color:hsl(var(--foreground));cursor:pointer;font-size:.875rem;font-weight:600;padding:8px 16px;transition:all .2s ease}.ar-action-button:hover{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.ar-action-button:active{transform:scale(.98)}@media (max-width:1200px){.ar-table td,.ar-table th{font-size:.875rem;padding:12px}.ar-summary-value{font-size:1.75rem}}@media (max-width:768px){.ar-filter-tabs{flex-direction:column}.ar-filter-tab{width:100%}.ar-table{font-size:.8125rem}.ar-table td,.ar-table th{padding:10px}}.App{min-height:100vh}
/*# sourceMappingURL=main.65785534.css.map*/