@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{--tw-ring-offset-color:hsl(var(--background))}.ring-offset-2{--tw-ring-offset-width:2px}.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;font-size:.875rem;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:-webkit-sticky;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))}.header-nav a.onboarding-nav-link,.mobile-nav a.onboarding-nav-link{background:hsl(var(--primary)/.08);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}.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;height:20px;justify-content:center;min-width:20px;padding:0 6px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.email-test-mode-toggle{align-items:center;background:hsl(var(--muted)/.3);border:1px solid hsl(var(--border));border-radius:6px;display:flex;gap:8px;padding:6px 12px}.test-mode-label{align-items:center;color:hsl(var(--muted-foreground));cursor:pointer;display:flex;font-size:13px;gap:6px;white-space:nowrap}.test-mode-label input[type=checkbox]{accent-color:hsl(var(--warning));cursor:pointer;height:14px;width:14px}.test-mode-text{font-weight:500}.test-mode-indicator{align-items:center;animation:pulse 2s ease-in-out infinite;background:hsl(var(--warning));border-radius:4px;color:#000;display:inline-flex;font-size:11px;font-weight:700;justify-content:center;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}@media (max-width:1100px){.email-test-mode-toggle{display:none}}@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:-webkit-sticky;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-alert{align-items:flex-start;background:linear-gradient(135deg,hsl(var(--secondary)/.6),hsl(var(--muted)/.4));border:1px solid hsl(var(--border));border-radius:10px;box-shadow:0 10px 30px #00000014;display:flex;font-size:14px;gap:12px;margin:16px 40px 24px;padding:14px 16px}.login-alert-error{background:hsl(var(--destructive)/.1);border-color:hsl(var(--destructive)/.4)}.login-alert-info{background:hsl(var(--info)/.08);border-color:hsl(var(--info)/.4)}.login-alert-icon{align-items:center;background:hsl(var(--card));border-radius:50%;box-shadow:inset 0 0 0 1px hsl(var(--border));color:hsl(var(--info));display:inline-flex;font-weight:700;height:32px;justify-content:center;width:32px}.login-alert-error .login-alert-icon{color:hsl(var(--destructive))}.login-alert-copy{color:hsl(var(--foreground));flex:1 1}.login-alert-title{font-size:15px;font-weight:700;margin:0 0 4px}.login-alert-message{color:hsl(var(--muted-foreground));line-height:1.5;margin:0}.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}}.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}.page-header-actions button{background:hsl(var(--background));border:2px solid hsl(var(--background));border-radius:4px;box-shadow:none;color:hsl(var(--primary));cursor:pointer;font-weight:500;outline:none;padding:.5rem 1rem;transition:background-color .15s ease,border-color .15s ease}.page-header-actions button:hover{background:hsl(var(--primary));border-color:hsl(var(--primary-foreground));color:hsl(var(--primary-foreground))}.page-header-actions button:focus-visible{outline:2px solid hsl(var(--primary-foreground));outline-offset:2px}@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}}.system-settings-page{margin:0 auto;max-width:56rem;padding:1.5rem}.settings-section{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:4px;box-shadow:0 1px 3px 0 #0000001a;margin-bottom:1.5rem;padding:2rem}.settings-section:last-of-type{margin-bottom:0}.settings-section-header{border-bottom:1px solid hsl(var(--border));margin-bottom:2rem;padding-bottom:1.5rem}.settings-section-header h2{color:hsl(var(--foreground));font-family:Neuton,Georgia,serif;font-size:1.5rem;font-weight:400;margin:0 0 .75rem}.settings-section-description{color:hsl(var(--muted-foreground));font-size:.9375rem;line-height:1.5;margin:0}.settings-form{max-width:40rem}.settings-form .form-group{margin-bottom:1.5rem}.settings-form .form-group:last-child{margin-bottom:0}.settings-form label{color:hsl(var(--foreground));display:block;font-family:Barlow,sans-serif;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.settings-form label .required{color:hsl(var(--destructive));margin-left:.25rem}.settings-form select{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));cursor:pointer;font-family:Barlow,sans-serif;font-size:.875rem;padding:.625rem .75rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.settings-form select:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary)/.1);outline:none}.settings-form select:disabled{background:hsl(var(--muted)/.5);cursor:not-allowed;opacity:.6}.field-hint{font-family:Barlow,sans-serif;font-size:.8125rem;line-height:1.4;margin:.5rem 0 0}.settings-actions{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:4px;box-shadow:0 1px 3px 0 #0000001a;display:flex;gap:.75rem;justify-content:flex-end;margin-top:2rem;padding:2rem}.settings-actions .btn-primary,.settings-actions .btn-secondary{border:none;border-radius:4px;cursor:pointer;font-family:Barlow,sans-serif;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;transition:all .15s ease}.settings-actions .btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.settings-actions .btn-primary:hover:not(:disabled){background:hsl(var(--primary)/.9)}.settings-actions .btn-primary:disabled{cursor:not-allowed;opacity:.5}.settings-actions .btn-secondary{background:hsl(var(--muted));border:1px solid hsl(var(--border));color:hsl(var(--foreground))}.settings-actions .btn-secondary:hover:not(:disabled){background:hsl(var(--muted)/.8)}.settings-actions .btn-secondary:disabled{cursor:not-allowed;opacity:.5}.access-denied,.loading-state{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:4px;padding:4rem 1.5rem;text-align:center}.access-denied{background:hsl(var(--destructive)/.1);border:1px solid hsl(var(--destructive)/.3)}.access-denied h3{color:hsl(var(--foreground));font-family:Neuton,Georgia,serif;font-size:1.5rem;font-weight:400;margin:0 0 .75rem}.access-denied p{color:hsl(var(--muted-foreground));font-size:.875rem;margin:0}@media (max-width:768px){.system-settings-page{padding:1rem}.settings-section{padding:1.25rem}.settings-section-header{margin-bottom:1.5rem;padding-bottom:1rem}.settings-section-header h2{font-size:1.25rem}.settings-actions{flex-direction:column-reverse;gap:.5rem;padding:1.25rem}.settings-actions .btn-primary,.settings-actions .btn-secondary{justify-content:center;width:100%}}.multi-select-container{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:6px;max-height:200px;overflow-y:auto;padding:8px}.multi-select-option{align-items:center;border-radius:4px;cursor:pointer;display:flex;font-weight:400!important;gap:10px;margin-bottom:0!important;padding:10px 12px;transition:background-color .15s ease}.multi-select-option:hover{background-color:hsl(var(--muted)/.5)}.multi-select-option input[type=checkbox]{accent-color:hsl(var(--primary));cursor:pointer;flex-shrink:0;height:16px;width:16px}.multi-select-option input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.multi-select-option span{color:hsl(var(--foreground));font-size:.875rem}.note-block{background-color:hsl(var(--secondary));border:1px solid hsl(var(--border));border-radius:12px;line-height:1.5;padding:14px}.note-block__label{align-items:center;color:hsl(var(--muted-foreground));display:inline-flex;font-size:12px;font-weight:700;gap:6px;letter-spacing:.02em;text-transform:uppercase}.note-block__dot{border-radius:9999px;height:8px;width:8px}.note-block__text{color:hsl(var(--foreground));font-size:14px;line-height:1.5;margin-top:10px;white-space:pre-wrap}.note-block--request{background-color:hsl(var(--info)/.08);border-color:hsl(var(--info))}.note-block--request .note-block__dot{background-color:hsl(var(--info))}.note-block--completion{background-color:hsl(var(--success)/.1);border-color:hsl(var(--success))}.note-block--completion .note-block__dot{background-color:hsl(var(--success))}.note-stack{display:flex;flex-direction:column;gap:12px;margin-top:6px}.note-block--dialog{margin-bottom:16px}.forecast-queue-list{grid-gap:20px;display:grid;gap:20px}.forecast-queue-card{border:1px solid hsl(var(--border));border-radius:12px;box-shadow:0 1px 3px #0000000d}.forecast-tabs{margin-bottom:12px}.forecast-tabs [data-tabs-list]{background:#0000;display:flex;gap:8px;margin-bottom:4px;padding:0}.forecast-tabs [data-tabs-trigger]{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;color:hsl(var(--muted-foreground));cursor:pointer;display:inline-flex;font-family:Barlow Semi Condensed,sans-serif;font-size:15px;font-weight:600;justify-content:center;padding:10px 14px;transition:color .2s ease,border-color .2s ease;white-space:nowrap}.forecast-tabs [data-tabs-trigger]:hover{color:hsl(var(--foreground))}.forecast-tabs [data-tabs-trigger][data-state=active]{border-bottom-color:hsl(var(--accent));color:hsl(var(--foreground))}.forecast-tabs [data-tabs-content]{display:none}.forecast-entry-grid{grid-gap:20px;align-items:flex-start;display:grid;gap:20px;grid-template-columns:auto 1fr auto}.forecast-actions{align-self:flex-start;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}@media (max-width:900px){.forecast-entry-grid{gap:16px;grid-template-columns:1fr}.forecast-actions{justify-content:flex-start}}.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%}.company-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.company-chip{align-items:center;background:hsl(var(--muted));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));display:inline-flex;font-size:.9em;gap:6px;padding:6px 10px}.company-chip-remove{background:none;border:none;color:hsl(var(--muted-foreground));cursor:pointer;font-size:16px;line-height:1;padding:0;transition:color .2s ease}.company-chip-remove:hover{color:hsl(var(--destructive))}.company-chip-remove:disabled{cursor:not-allowed;opacity:.5}.company-add-row{display:flex;gap:8px}.company-add-row input{flex:1 1}.company-add-row .button-secondary{padding:10px 16px;white-space:nowrap}.dialog-content.sow-request-dialog{max-height:90vh;max-width:60rem;overflow-y:auto;width:90%}.sow-request-dialog .form-section{background:hsl(var(--muted)/.3);border:1px solid hsl(var(--border));border-radius:4px;margin-bottom:1.25rem;padding:1rem}.sow-request-dialog .form-section h3{color:hsl(var(--foreground));font-family:Barlow,sans-serif;font-size:1rem;font-weight:600;margin:0 0 1rem}.sow-request-dialog .form-row{grid-gap:.875rem;display:grid;gap:.875rem;grid-template-columns:1fr 1fr;margin-bottom:.875rem}.sow-request-dialog .form-row:last-child{margin-bottom:0}.sow-request-dialog .form-group{margin-bottom:.875rem}.sow-request-dialog .form-group:last-child{margin-bottom:0}.sow-request-dialog .form-group label{color:hsl(var(--foreground));display:block;font-family:Barlow,sans-serif;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.sow-request-dialog .form-group input,.sow-request-dialog .form-group select,.sow-request-dialog .form-group textarea{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-family:Barlow,sans-serif;font-size:.875rem;padding:.625rem .75rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.sow-request-dialog .form-group.readonly input,.sow-request-dialog .form-group.readonly textarea{background:hsl(var(--muted)/.5);border-color:hsl(var(--border));color:hsl(var(--muted-foreground));cursor:not-allowed}.sow-request-dialog .form-group input:focus,.sow-request-dialog .form-group select:focus,.sow-request-dialog .form-group textarea:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary)/.1);outline:none}.sow-request-dialog .form-group input:disabled,.sow-request-dialog .form-group select:disabled{background:hsl(var(--muted)/.5);cursor:not-allowed;opacity:.6}.sow-request-dialog .form-hint{color:hsl(var(--muted-foreground));display:block;font-family:Barlow,sans-serif;font-size:.75rem;margin-top:.375rem}.sow-request-dialog .radio-group{display:flex;gap:1.25rem;margin-top:.35rem}.sow-request-dialog .radio-group label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:.5rem;margin-bottom:0}.sow-request-dialog .radio-group input[type=\"radio\"]{accent-color:hsl(var(--primary));cursor:pointer;margin:0;width:auto}.sow-request-dialog .char-count{color:hsl(var(--muted-foreground));display:block;font-family:Barlow,sans-serif;font-size:.75rem;margin-top:.375rem;text-align:right}.sow-request-dialog textarea{font-family:Barlow,sans-serif;min-height:4rem;resize:vertical}@media (max-width:768px){.sow-request-dialog{max-height:95vh;width:95%}.sow-request-dialog .form-row{gap:0;grid-template-columns:1fr}.sow-request-dialog .form-section{padding:1rem}}.dialog-content.create-standalone-sow-dialog{max-height:90vh;max-width:60rem;overflow-y:auto;width:90%}.create-standalone-sow-dialog .form-section{background:hsl(var(--muted)/.3);border:1px solid hsl(var(--border));border-radius:4px;margin-bottom:1.25rem;padding:1rem}.create-standalone-sow-dialog .form-section h3{color:hsl(var(--foreground));font-family:Barlow,sans-serif;font-size:1rem;font-weight:600;margin:0 0 1rem}.create-standalone-sow-dialog .form-row{grid-gap:.875rem;display:grid;gap:.875rem;grid-template-columns:1fr 1fr;margin-bottom:.875rem}.create-standalone-sow-dialog .form-row:last-child{margin-bottom:0}.create-standalone-sow-dialog .form-group{margin-bottom:.875rem}.create-standalone-sow-dialog .form-group:last-child{margin-bottom:0}.create-standalone-sow-dialog .form-group label{color:hsl(var(--foreground));display:block;font-family:Barlow,sans-serif;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.create-standalone-sow-dialog .form-group input,.create-standalone-sow-dialog .form-group select,.create-standalone-sow-dialog .form-group textarea{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-family:Barlow,sans-serif;font-size:.875rem;padding:.625rem .75rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.create-standalone-sow-dialog .form-group input:focus,.create-standalone-sow-dialog .form-group select:focus,.create-standalone-sow-dialog .form-group textarea:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary)/.1);outline:none}.create-standalone-sow-dialog .form-hint{color:hsl(var(--muted-foreground));display:block;font-family:Barlow,sans-serif;font-size:.75rem;margin-top:.375rem}.create-standalone-sow-dialog .radio-group{display:flex;gap:1.25rem;margin-bottom:.75rem}.create-standalone-sow-dialog .radio-group label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:.5rem;margin-bottom:0}.create-standalone-sow-dialog .radio-group input[type=radio]{accent-color:hsl(var(--primary));cursor:pointer;margin:0;width:auto}.create-standalone-sow-dialog textarea{font-family:Barlow,sans-serif;min-height:4rem;resize:vertical}.create-standalone-sow-dialog .char-count{color:hsl(var(--muted-foreground));display:block;font-family:Barlow,sans-serif;font-size:.75rem;margin-top:.375rem;text-align:right}.create-standalone-sow-dialog .total-cost{background:hsl(var(--success)/.1);border:1px solid hsl(var(--success)/.3);border-radius:4px;color:hsl(var(--foreground));font-family:Barlow,sans-serif;font-size:1rem;font-weight:600;padding:.75rem 1rem;text-align:right}.create-standalone-sow-dialog .loading-state{color:hsl(var(--muted-foreground));font-size:1rem;padding:3rem 1.5rem;text-align:center}@media (max-width:768px){.create-standalone-sow-dialog{max-height:95vh;width:95%}.create-standalone-sow-dialog .form-row{gap:0;grid-template-columns:1fr}.create-standalone-sow-dialog .form-section{padding:1rem}.create-standalone-sow-dialog .radio-group{flex-direction:column;gap:.75rem}}.sow-requests-section{padding:1.5rem}.sow-requests-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.sow-requests-header h2{color:hsl(var(--foreground));font-family:Neuton,Georgia,serif;font-size:2rem;font-weight:400;margin:0}.sow-requests-table-container{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:4px;box-shadow:0 1px 3px 0 #0000001a;overflow:hidden}.sow-requests-table{border-collapse:collapse;width:100%}.sow-requests-table thead{background:hsl(var(--muted)/.5);border-bottom:1px solid hsl(var(--border))}.sow-requests-table th{color:hsl(var(--muted-foreground));font-family:Barlow Semi Condensed,sans-serif;font-size:.8125rem;font-weight:700;letter-spacing:.05em;padding:.75rem 1rem;text-align:left;text-transform:uppercase}.sow-requests-table tbody tr{border-bottom:1px solid hsl(var(--border));transition:background-color .15s ease}.sow-requests-table tbody tr:hover{background:hsl(var(--muted)/.3)}.sow-requests-table tbody tr:last-child{border-bottom:none}.sow-requests-table td{color:hsl(var(--foreground));font-size:.875rem;padding:.875rem 1rem}.sow-requests-table td.project-cell{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sow-requests-table td.internal-work{color:hsl(var(--muted-foreground));font-style:italic}.status-badge{align-items:center;display:inline-flex;font-family:Barlow,sans-serif;padding:.25rem .625rem}.status-badge.status-new{background:hsl(var(--info)/.15);border:1px solid hsl(var(--info)/.3);color:hsl(var(--info))}.status-badge.status-pending{background:hsl(var(--warning)/.15);border:1px solid hsl(var(--warning)/.3);color:hsl(var(--warning))}.status-badge.status-signed{background:hsl(var(--success)/.15);border:1px solid hsl(var(--success)/.3);color:hsl(var(--success))}.action-buttons{align-items:center;display:inline-flex;flex-wrap:nowrap;padding:.25rem 0}.sow-requests-table .action-buttons{flex-wrap:nowrap!important}.action-btn,.btn-primary{font-family:Barlow,sans-serif}.btn-primary{align-items:center;background:hsl(var(--primary));border:none;border-radius:4px;color:hsl(var(--primary-foreground));cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;justify-content:center;padding:.625rem 1.25rem;transition:background-color .15s ease}.btn-primary:hover:not(:disabled){background:hsl(var(--primary)/.9)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{align-items:center;background:hsl(var(--muted));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));cursor:pointer;display:inline-flex;font-family:Barlow,sans-serif;font-size:.875rem;font-weight:600;justify-content:center;padding:.625rem 1.25rem;transition:all .15s ease}.btn-secondary:hover:not(:disabled){background:hsl(var(--muted)/.8)}.btn-secondary:disabled{cursor:not-allowed;opacity:.5}.empty-state,.error-state,.loading-state{padding:4rem 1.5rem;text-align:center}.loading-state{color:hsl(var(--muted-foreground));font-size:1rem}.error-state{color:hsl(var(--destructive));font-size:1rem}.empty-state h3{color:hsl(var(--foreground));font-family:Neuton,Georgia,serif;font-size:1.5rem;font-weight:400;margin:0 0 .75rem}.empty-state p{color:hsl(var(--muted-foreground));font-size:.875rem;margin:0}.dialog-overlay{animation:fadeIn .2s ease-out;inset:0}.dialog-content{animation:slideIn .2s ease-out;border-radius:4px;max-width:60rem}@keyframes slideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.dialog-header{padding:1.25rem 1.5rem}.dialog-header h2{font-family:Neuton,Georgia,serif;font-weight:400}.dialog-close{font-size:1.75rem;height:2rem;transition:all .15s ease;width:2rem}.dialog-close:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.dialog-footer{background:hsl(var(--muted)/.2);gap:.75rem;padding:1rem 1.5rem}.sow-requests-filters{align-items:flex-end;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:4px;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem}.filter-group{gap:.375rem}.filter-group label{font-family:Barlow,sans-serif;font-size:.8125rem;font-weight:600}.filter-search-input{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-family:Barlow,sans-serif;font-size:.875rem;padding:.5rem .75rem;transition:all .15s ease;width:300px}.filter-search-input:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary)/.1);outline:none}.filter-search-input::placeholder{color:hsl(var(--muted-foreground))}.filter-checkbox{flex-direction:row}.filter-checkbox label{align-items:center;cursor:pointer;display:flex;gap:.5rem;margin-bottom:0}.filter-checkbox input[type=checkbox]{height:1rem;width:1rem}.filter-results{color:hsl(var(--muted-foreground));font-family:Barlow,sans-serif;font-size:.875rem;font-style:italic;margin-left:auto;padding:.5rem 0}@media (max-width:768px){.sow-requests-section{padding:1rem}.sow-requests-header{align-items:flex-start;flex-direction:column;gap:1rem}.sow-requests-table-container{overflow-x:auto}.sow-requests-table{min-width:800px}.sow-requests-table td,.sow-requests-table th{font-size:.8125rem;padding:.625rem .75rem}.dialog-content{max-height:95vh;width:95%}.dialog-body,.dialog-footer,.dialog-header{padding:1rem}.sow-requests-filters{align-items:stretch;flex-direction:column}.filter-search-input{width:100%}.filter-results{margin-left:0;text-align:center}}.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-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-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:1rem}.member-card-header h4{color:hsl(var(--foreground));font-size:1.2rem;margin:0}.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}.status-badge.id-badge{background:hsl(var(--info)/.15);color:hsl(var(--info))}.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}.company-display{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.5rem}.company-label{color:hsl(var(--foreground));font-weight:500;white-space:nowrap}.company-value{color:hsl(var(--muted-foreground));font-size:.9rem;text-align:right}.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{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}.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{box-shadow:0 1px 3px #0000000d;margin-bottom:2rem;padding:2rem}.add-form h3{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}.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}}.project-numbers-container{display:flex;flex-direction:column;gap:1.5rem}.controls-section{flex-wrap:wrap;justify-content:space-between}.controls-section,.filters{align-items:center;display:flex;gap:1rem}.filters{flex:1 1}.search-input{flex:1 1;font-size:.875rem;max-width:400px;padding:.75rem;transition:border-color .2s}.search-input:focus{box-shadow:0 0 0 3px hsl(var(--ring)/.1)}.toggle-label{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;-webkit-user-select:none;user-select:none}.toggle-label input[type=checkbox]{cursor:pointer;height:1.25rem;width:1.25rem}.button-primary{color:#fff;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:opacity .2s;white-space:nowrap}.button-primary:hover{opacity:.9}.button-secondary{border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:opacity .2s}.button-secondary:hover{opacity:.9}.add-form{background:hsl(var(--card));border-radius:8px}.add-form h3{color:hsl(var(--foreground));font-size:1.125rem;font-weight:600;margin:0 0 1rem}.form-row{grid-gap:1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem}.form-group input,.form-group select{border-radius:6px;font-size:.875rem;transition:border-color .2s}.client-select{width:100%}.new-client-input{margin-top:.5rem}.form-actions{justify-content:flex-start}.table-container{background:hsl(var(--card));border-radius:8px;overflow:hidden}.project-numbers-table{border-collapse:collapse;width:100%}.project-numbers-table thead{background:hsl(var(--muted)/.5);position:-webkit-sticky;position:sticky;top:0;z-index:1}.project-numbers-table th{border-bottom:2px solid hsl(var(--border));color:hsl(var(--muted-foreground));font-size:.875rem;font-weight:600;padding:.875rem 1rem;text-align:left}.project-numbers-table td{border-bottom:1px solid hsl(var(--border));color:hsl(var(--foreground));font-size:.875rem;padding:.875rem 1rem}.project-numbers-table tbody tr:hover{background:hsl(var(--muted)/.3)}.project-numbers-table tbody tr:last-child td{border-bottom:none}.code-cell{font-family:ui-monospace,SFMono-Regular,SF Mono,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem}.code-link{color:hsl(var(--primary));text-decoration:none;transition:-webkit-text-decoration .2s;transition:text-decoration .2s;transition:text-decoration .2s,-webkit-text-decoration .2s}.code-link:hover{text-decoration:underline}.sow-link{align-items:center;color:hsl(var(--primary));display:inline-flex;gap:.25rem;text-decoration:none;transition:opacity .2s}.sow-link:hover{opacity:.8;text-decoration:underline}.edit-input{font-size:.875rem;padding:.5rem}.status-badge{letter-spacing:.025em}.status-active{background:#16a2491a;color:#16a249}.status-inactive{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.status-reserved{background:#facc141a;color:#e7b008}.actions-cell{align-items:center;display:flex;gap:.5rem}.action-button{align-items:center;background:#0000;border:none;border-radius:6px;color:hsl(var(--muted-foreground));cursor:pointer;display:inline-flex;height:2rem;justify-content:center;padding:0;transition:all .2s;width:2rem}.action-button:hover{background:hsl(var(--muted))}.action-edit:hover{background:hsl(var(--primary)/.1);color:hsl(var(--primary))}.action-delete:hover{background:hsl(var(--destructive)/.1);color:hsl(var(--destructive))}.action-save{background:hsl(var(--primary)/.1);color:hsl(var(--primary))}.action-save:hover{background:hsl(var(--primary)/.2)}.action-cancel{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.action-cancel:hover{background:hsl(var(--muted));opacity:.8}.empty-message{font-style:italic}.empty-message,.loading-message{color:hsl(var(--muted-foreground));padding:3rem 1rem;text-align:center}.code-highlight{background:hsl(var(--primary)/.1);border-radius:4px;color:hsl(var(--primary));font-family:ui-monospace,SFMono-Regular,SF Mono,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1.125rem;font-weight:700;padding:.125rem .25rem}@media (max-width:768px){.controls-section,.filters{align-items:stretch;flex-direction:column}.search-input{max-width:100%}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.table-container{overflow-x:auto}.project-numbers-table{min-width:800px}}.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;gap:1rem;justify-content:space-between;margin-bottom:1.5rem;padding:1.1rem 1.25rem}.filter-controls{align-items:center;display:flex;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:1.75rem}.client-group{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;box-shadow:0 1px 3px #0000000d;margin-bottom:.5rem;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:.65rem .9rem}.client-header h2{color:hsl(var(--foreground));font-size:1.1rem;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:.8rem;display:grid;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr));padding:.9rem 1rem 1rem}@media (max-width:1024px){.projects-grid{grid-template-columns:1fr}}.project-status-badge-container{align-items:center;display:flex;padding:.25rem 0}.project-status-badge{border:2px solid;border-radius:999px;display:inline-block;font-size:.78rem;font-weight:600;letter-spacing:.5px;padding:.35rem .75rem;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))}.projects-card-link{color:inherit;text-decoration:none}.projects-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:6px;padding:.75rem .8rem;transition:border-color .12s ease,background .12s ease}.projects-card:focus-visible,.projects-card:hover{background:hsl(var(--card)/.92);border-color:hsl(var(--primary)/.45)}.projects-card-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.15rem;padding:0}.projects-title-block{display:flex;flex-direction:column;gap:.1rem}.projects-card-content{display:flex;flex-direction:column;gap:.4rem;padding:0}.project-meta{grid-gap:.12rem .6rem;display:grid;gap:.12rem .6rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.meta-row{align-items:baseline;display:flex;gap:.25rem}.meta-label{color:hsl(var(--muted-foreground));font-size:.9rem}.meta-label:after{content:":";margin-left:.15rem}.meta-value{font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meta-value,.projects-title{color:hsl(var(--foreground))}.projects-title{font-size:1.08rem;font-weight:600;line-height:1.35;margin:0}.project-tags{display:flex;flex-wrap:wrap;gap:.5rem}.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));border-radius:4px;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;padding:.25rem .5rem}.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}.modal-header h2{font-size:1.5rem}.close-button{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}}.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-controls{align-items:center;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.5rem;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem}.report-review-search{display:flex;flex-direction:column;gap:.35rem;width:min(520px,100%)}.search-label{color:hsl(var(--foreground));font-size:.875rem;font-weight:600}.report-search-input{font-size:.95rem}.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:1rem;display:grid;gap:1rem}.report-card{transition:border-color .12s ease,box-shadow .12s ease}.report-card:hover{border-color:hsl(var(--primary)/.35);box-shadow:0 6px 16px #00000014}.compact-report-card{padding:1rem 1.25rem}.report-card-top{align-items:center;display:flex;gap:1rem;justify-content:space-between}.report-card-info{display:flex;flex-direction:column;gap:.35rem}.report-card-title{font-size:1.05rem;font-weight:700;line-height:1.2}.report-card-meta{align-items:center;color:hsl(var(--muted-foreground));display:flex;flex-wrap:wrap;font-size:.9rem;gap:.35rem}.meta-label{color:hsl(var(--foreground));font-weight:600}.meta-separator,.meta-value{color:hsl(var(--muted-foreground))}.meta-separator{opacity:.7}.report-card-tags{display:flex;flex-wrap:wrap;gap:.35rem}.report-chip{background:hsl(var(--muted)/.6);border-radius:999px;color:hsl(var(--foreground));font-size:.78rem;font-weight:600;padding:.35rem .6rem}.report-card-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem}.report-card-actions-buttons{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.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-status-badge-stale,.report-status-badge-warning{background-color:#fef3c7;border:1px solid #f59e0b;color:#92400e}.report-card-badges{display:flex;flex-wrap:wrap;gap:.5rem}.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}}.status-reports-section{margin-top:2rem}.status-reports-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.header-left h2{color:hsl(var(--foreground));font-size:1.5rem;font-weight:600;margin:0 0 4px}.header-metadata{align-items:center;color:hsl(var(--muted-foreground));display:flex;font-size:14px;gap:8px;margin-top:4px}.separator{color:hsl(var(--border))}.badge-active{background:hsl(var(--success)/.15);color:hsl(var(--success))}.badge-active,.badge-inactive{border-radius:4px;font-weight:500;padding:2px 8px}.badge-inactive{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.header-right{align-items:center;display:flex;gap:12px}.pending-badge{background:hsl(var(--warning)/.15);border-radius:12px;color:hsl(var(--warning));font-size:12px;font-weight:600;padding:4px 12px}.status-message{margin-bottom:1rem}.status-reports-content{display:flex;flex-direction:column;gap:32px}.projected-overage-section{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;padding:16px 20px}.projected-overage-header h3{color:hsl(var(--foreground));font-size:16px;font-weight:600;margin-bottom:12px}.projected-overage-card{align-items:center;display:flex;gap:16px;justify-content:space-between}.projected-overage-details{align-items:baseline;display:flex;gap:12px}.projected-overage-amount{color:#10b981;font-size:20px;font-weight:700}.projected-overage-date{color:hsl(var(--muted-foreground));font-size:14px}.projected-overage-actions{display:flex;gap:8px}.projected-overage-form{display:flex;flex-direction:column;gap:12px}.projected-overage-form-fields{display:flex;gap:16px}.projected-overage-form-fields .form-field{display:flex;flex:1 1;flex-direction:column;gap:4px}.projected-overage-form-fields .form-field label{color:hsl(var(--muted-foreground));font-size:13px;font-weight:500}.projected-overage-form-fields .form-field input{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:6px;color:hsl(var(--foreground));font-size:14px;padding:6px 10px}.projected-overage-form-actions{display:flex;gap:8px}.forecast-overage-row{background-color:#fef3c7}.forecast-overage-amount{color:#10b981;font-weight:600}.history-section h3{color:hsl(var(--foreground));font-size:18px;font-weight:600;margin-bottom:16px}.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-input,.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;width:100%}.form-input:focus,.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-card-content{padding:.9rem 1rem}.next-report-card-top{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.next-report-card-title{display:flex;flex:1 1;flex-direction:column;gap:.35rem}.next-report-card-title h3{font-size:1rem;margin:0}.next-report-card-meta{align-items:center;color:hsl(var(--muted-foreground));display:flex;flex-wrap:wrap;font-size:.9rem;gap:.35rem}.next-report-status-badge{font-weight:600}.next-report-actions{align-items:center;gap:.5rem}.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;margin-top:2rem;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}.project-report-grid{gap:.6rem;grid-template-columns:1fr}.project-report-card{border-color:hsl(var(--border));border-radius:10px}.project-report-card-content{padding:.75rem .9rem}.project-report-card .report-card-top{align-items:center;gap:.75rem}.project-report-card .report-card-info{flex:1 1;gap:.45rem}.project-report-card .report-card-title{font-size:1rem;margin-bottom:.1rem}.project-report-card .report-card-meta{gap:.25rem}.project-report-card .report-card-tags{gap:.4rem}.project-report-actions{align-items:center;flex-direction:row;flex-wrap:wrap;gap:.5rem;min-width:190px}.project-report-actions,.project-report-actions .report-card-actions-buttons,.project-report-card .report-card-badges{justify-content:flex-end}.subtle-badges .report-status-badge{font-size:.7rem;padding:.2rem .6rem}.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}.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}.edit-config-modal{max-height:90vh;max-width:90vw;overflow-y:auto;width:900px}.modal-footer-spacing{border-top:1px solid hsl(var(--border));margin-top:2rem;padding-top:1.5rem}.preview-report-modal{max-height:90vh;max-width:95vw;overflow-y:auto;width:1400px}.preview-modal-content{display:flex;flex-direction:column;gap:1.5rem;padding:1rem 0}.preview-modal-actions{border-top:1px solid hsl(var(--border));display:flex;gap:.75rem;justify-content:center;margin-top:1rem;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){.status-reports-header{flex-direction:column;gap:1rem}.header-right{justify-content:flex-start;width:100%}.header-metadata{flex-wrap:wrap}.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%}.edit-config-modal,.preview-report-modal{max-width:100vw;width:100vw}}@media (max-width:480px){.header-left h2{font-size:1.25rem}.header-metadata{font-size:12px}.financial-value{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}.tiptap .tableWrapper{overflow-x:auto}.tiptap table{border-collapse:collapse;margin:1em 0;width:100%}.tiptap td,.tiptap th{border:1px solid hsl(var(--border));padding:8px;vertical-align:top}.tiptap th{background:hsl(var(--muted)/.3);font-weight:600;text-align:left}.tiptap table p{margin:0}.tiptap .column-resize-handle{background:hsl(var(--info));width:3px}.tiptap .selectedCell:after{background:hsl(var(--info)/.15)}.tiptap img{border-radius:6px;display:block;height:auto;margin:.75em 0;max-width:100%}.project-notes-section{margin-bottom:32px}.notes-actions{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}.rich-text-display table{border-collapse:collapse;margin:12px 0;width:100%}.rich-text-display td,.rich-text-display th{border:1px solid hsl(var(--border));padding:8px;vertical-align:top}.rich-text-display th{background:hsl(var(--muted)/.3);font-weight:600;text-align:left}.rich-text-display table p{margin:0}.rich-text-display img{border-radius:6px;display:block;height:auto;margin:12px 0;max-width:100%}.empty-state{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}[data-tabs-trigger][data-state=active]:hover{background:#0000}[data-tabs-content]{animation:fadeIn .2s ease-in}[data-tabs-content]:focus-visible{outline:none}@media (max-width:640px){[data-tabs-list]{-webkit-overflow-scrolling:touch;gap:.25rem;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}}.project-header-section{background:hsl(var(--muted));border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);margin-bottom:1.5rem;padding:1.25rem}.header-fields{display:flex;flex-wrap:wrap;gap:2rem}.header-field{align-items:baseline;display:flex;gap:.5rem}.header-label{color:hsl(var(--muted-foreground));font-size:.875rem;font-weight:600}.header-value{color:hsl(var(--foreground));font-size:.875rem}.missing-value{color:hsl(var(--destructive));font-style:italic}.header-top-row{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.header-edit-button{background:hsl(var(--primary));border:none;border-radius:4px;color:hsl(var(--primary-foreground));cursor:pointer;font-weight:500;padding:.5rem .9rem;transition:background .15s ease,transform .1s ease}.header-edit-button:hover{background:hsl(var(--primary)/.9);transform:translateY(-1px)}.header-edit-panel{background:hsl(var(--muted)/.25);border-top:1px dashed hsl(var(--border));border:1px solid hsl(var(--border));border-radius:6px;margin-top:1rem;padding:1rem}.header-edit-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.header-edit-field{color:hsl(var(--muted-foreground));display:flex;flex-direction:column;font-size:.9rem;gap:.35rem}.header-edit-field select{background:hsl(var(--background));border:1px solid hsl(var(--input));border-radius:4px;color:hsl(var(--foreground));font-size:.875rem;padding:.5rem .6rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.header-edit-field select:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.12);outline:none}.header-edit-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.header-edit-actions .cancel-button,.header-edit-actions .save-button{border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;line-height:1.1;padding:.5rem 1rem;transition:background .15s ease,transform .1s ease}.header-edit-actions .save-button{background:hsl(var(--success));color:#fff}.header-edit-actions .save-button:disabled{cursor:not-allowed;opacity:.7}.header-edit-actions .cancel-button{background:hsl(var(--muted));color:hsl(var(--foreground))}.header-edit-actions .cancel-button:hover,.header-edit-actions .save-button:hover:not(:disabled){transform:translateY(-1px)}.header-edit-actions .save-button:hover:not(:disabled){background:hsl(var(--primary)/.9)}.header-edit-actions .cancel-button:hover{background:hsl(var(--muted)/.9)}@media (max-width:640px){.header-top-row{align-items:flex-start;flex-direction:column}}.dialog-content.request-sow-dialog{max-height:90vh;max-width:60rem;overflow-y:auto;width:90%}.request-sow-dialog .form-section{background:hsl(var(--muted)/.3);border:1px solid hsl(var(--border));border-radius:4px;margin-bottom:1.25rem;padding:1rem}.request-sow-dialog .form-section h3{color:hsl(var(--foreground));font-family:Barlow,sans-serif;font-size:1rem;font-weight:600;margin:0 0 1rem}.request-sow-dialog .form-row{grid-gap:.875rem;display:grid;gap:.875rem;grid-template-columns:1fr 1fr;margin-bottom:.875rem}.request-sow-dialog .form-row:last-child{margin-bottom:0}.request-sow-dialog .form-group{margin-bottom:.875rem}.request-sow-dialog .form-group:last-child{margin-bottom:0}.request-sow-dialog .form-group label{color:hsl(var(--foreground));display:block;font-family:Barlow,sans-serif;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.request-sow-dialog .form-group input,.request-sow-dialog .form-group select,.request-sow-dialog .form-group textarea{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-family:Barlow,sans-serif;font-size:.875rem;padding:.625rem .75rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.request-sow-dialog .form-group.readonly input,.request-sow-dialog .form-group.readonly textarea{background:hsl(var(--muted)/.5);border-color:hsl(var(--border));color:hsl(var(--muted-foreground));cursor:not-allowed}.request-sow-dialog .form-group input:focus,.request-sow-dialog .form-group select:focus,.request-sow-dialog .form-group textarea:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary)/.1);outline:none}.request-sow-dialog .form-hint{color:hsl(var(--muted-foreground));display:block;font-family:Barlow,sans-serif;font-size:.75rem;margin-top:.375rem}.request-sow-dialog .radio-group{display:flex;gap:1.25rem;margin-bottom:.75rem}.request-sow-dialog .radio-group label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:.5rem;margin-bottom:0}.request-sow-dialog .radio-group input[type=radio]{accent-color:hsl(var(--primary));cursor:pointer;margin:0;width:auto}.request-sow-dialog textarea{font-family:Barlow,sans-serif;min-height:4rem;resize:vertical}.request-sow-dialog .char-count{color:hsl(var(--muted-foreground));display:block;font-family:Barlow,sans-serif;font-size:.75rem;margin-top:.375rem;text-align:right}@media (max-width:768px){.request-sow-dialog{max-height:95vh;width:95%}.request-sow-dialog .form-row{gap:0;grid-template-columns:1fr}.request-sow-dialog .form-section{padding:1rem}.request-sow-dialog .radio-group{flex-direction:column;gap:.75rem}}.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}.request-sow-btn{background:hsl(var(--primary));border:none;border-radius:4px;color:hsl(var(--primary-foreground));cursor:pointer;font-family:Barlow,sans-serif;font-size:.75rem;font-weight:600;padding:.25rem .5rem;transition:background-color .15s ease;white-space:nowrap}.request-sow-btn:hover{background:hsl(var(--primary)/.9)}.request-sow-btn:active{background:hsl(var(--primary)/.8)}.sow-status-chip{align-items:center;border-radius:999px;display:inline-flex;font-family:Barlow,sans-serif;font-size:.75rem;font-weight:600;gap:.25rem;padding:.25rem .5rem;white-space:nowrap}.sow-status-chip.pending{background:hsl(var(--warning)/.15);border:1px solid hsl(var(--warning)/.25);color:hsl(var(--warning))}.sow-status-chip.signed{background:hsl(var(--success)/.15);border:1px solid hsl(var(--success)/.25);color:hsl(var(--success))}.sow-status-chip.checking{background:hsl(var(--muted)/.25);border:1px solid hsl(var(--border));color:hsl(var(--muted-foreground))}.role-member-cell{align-items:center;display:flex;gap:8px}.role-member-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.role-name-row{align-items:center;display:flex;gap:6px}.role-name{font-size:14px}.member-name{font-size:12px}.edit-role-btn,.member-name{color:hsl(var(--muted-foreground))}.edit-role-btn{align-items:center;background:none;border:1px solid hsl(var(--border));border-radius:4px;cursor:pointer;display:inline-flex;font-size:14px;justify-content:center;line-height:1;padding:2px 6px;transition:all .2s}.edit-role-btn:hover{background:hsl(var(--muted));border-color:hsl(var(--foreground)/.3);color:hsl(var(--foreground))}.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)}.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:-webkit-sticky;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 .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 .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 .rich-text-display table{border-collapse:collapse;margin:12px 0;width:100%}.resource-plan-notes-section .rich-text-display td,.resource-plan-notes-section .rich-text-display th{border:1px solid hsl(var(--border));padding:8px;vertical-align:top}.resource-plan-notes-section .rich-text-display th{background:hsl(var(--muted)/.3);font-weight:600;text-align:left}.resource-plan-notes-section .rich-text-display table p{margin:0}.resource-plan-notes-section .rich-text-display img{border-radius:6px;display:block;height:auto;margin:12px 0;max-width:100%}.resource-plan-notes-section .empty-state{color:hsl(var(--muted-foreground));font-style:italic}[data-radix-popper-content-wrapper]{z-index:9999!important}.dropdown-menu-content{animation:dropdown-fade-in .15s ease-out;background-color:hsl(var(--popover));border:1px solid hsl(var(--border));border-radius:6px;box-shadow:0 4px 16px #00000026;color:hsl(var(--popover-foreground));min-width:220px;overflow:hidden;padding:4px}@keyframes dropdown-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.dropdown-menu-item{align-items:center;border-radius:4px;color:hsl(var(--foreground));cursor:pointer;display:flex;font-size:.875rem;gap:8px;outline:none;padding:10px 14px;transition:background-color .15s;-webkit-user-select:none;user-select:none}.dropdown-menu-item svg{flex-shrink:0;height:16px;width:16px}.dropdown-menu-item:focus,.dropdown-menu-item:hover,.dropdown-menu-item[data-highlighted]{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.dropdown-menu-item[data-disabled]{opacity:.5;pointer-events:none}.dropdown-menu-item.destructive{color:hsl(var(--destructive))}.dropdown-menu-item.destructive:focus,.dropdown-menu-item.destructive:hover,.dropdown-menu-item.destructive[data-highlighted]{background-color:hsl(var(--destructive)/.1);color:hsl(var(--destructive))}.dropdown-menu-separator{background-color:hsl(var(--border));height:1px;margin:4px -4px}.dropdown-menu-label{font-size:.875rem;font-weight:600;padding:8px 14px}.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 select{background-color:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));cursor:pointer;font-size:.9rem;min-width:200px;padding:.5rem .75rem}.plan-selector select:focus{border-color:hsl(var(--ring));outline:none}.plan-selector select:disabled{cursor:not-allowed;opacity:.5}.plan-subtitle{color:hsl(var(--muted-foreground));font-size:14px;margin:0}.request-notes-container{display:flex;flex-direction:column;gap:8px}.request-notes-helper{color:hsl(var(--muted-foreground));font-size:12px}.summary-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.team-member-hours-container{margin-top:30px}.future-hours-section,.past-hours-section{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);margin-bottom:20px;padding:24px}.future-hours-section h3,.past-hours-section h3{color:hsl(var(--foreground));font-size:18px;font-weight:600;margin:0 0 20px}.hours-table-wrapper{margin-bottom:16px;overflow-x:auto}.hours-table{border-collapse:collapse;font-size:14px;width:100%}.hours-table thead{background:hsl(var(--muted));border-bottom:2px solid hsl(var(--border))}.hours-table th{color:hsl(var(--foreground));font-size:13px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.hours-table th.number-col{text-align:right}.hours-table th.status-col{min-width:140px;text-align:center}.hours-table tbody tr{border-bottom:1px solid hsl(var(--border));transition:background-color .15s ease}.hours-table tbody tr:hover{background:hsl(var(--accent)/.3)}.hours-table tbody tr.status-row-on_track:hover{background:hsl(var(--accent)/.25)!important}.hours-table tbody tr.status-row-warning:hover{background:hsl(var(--warning)/.25)!important}.hours-table tbody tr.status-row-critical:hover{background:hsl(var(--destructive)/.15)!important}.hours-table tbody tr.status-row-under_utilized:hover,.hours-table tbody tr.status-row-unplanned:hover{background:hsl(var(--warning)/.25)!important}.hours-table td{color:hsl(var(--foreground));padding:12px 16px}.hours-table td.number-col{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.hours-table td.status-col{text-align:center}.hours-table td.positive-variance{color:hsl(var(--chart-1));font-weight:500}.hours-table td.negative-variance{color:hsl(var(--chart-2));font-weight:500}.hours-table tbody tr.week-start{border-top:3px solid hsl(var(--border))}.hours-table tbody tr.week-start:not(:first-child){border-top:3px solid hsl(var(--primary)/.3)}.hours-table tbody tr.current-week-row{background:hsl(var(--accent)/.15)}.hours-table tbody tr.current-week-row:hover{background:hsl(var(--accent)/.25)}.status-badge{border-radius:calc(var(--radius)/2);font-size:12px;padding:4px 10px;white-space:nowrap}.status-badge.status-on-track{background:hsl(var(--chart-1)/.15);border:1px solid hsl(var(--chart-1)/.3);color:hsl(var(--chart-1))}.status-badge.status-warning{background:hsl(var(--chart-3)/.15);border:1px solid hsl(var(--chart-3)/.3);color:hsl(var(--chart-3))}.status-badge.status-critical{background:hsl(var(--destructive)/.15);border:1px solid hsl(var(--destructive)/.3);color:hsl(var(--destructive))}.status-badge.status-unplanned{background:hsl(var(--chart-4)/.15);border:1px solid hsl(var(--chart-4)/.3);color:hsl(var(--chart-4))}.status-badge.status-under-utilized{background:hsl(var(--chart-5)/.15);border:1px solid hsl(var(--chart-5)/.3);color:hsl(var(--chart-5))}.status-badge.status-no-forecast{background:hsl(var(--muted));border:1px solid hsl(var(--border));color:hsl(var(--muted-foreground))}.status-badge.status-in-progress{background:#7c3bed26;border:1px solid #7c3bed4d;color:#7c3bed}.interpretation-note{background:hsl(var(--muted)/.3);border-radius:calc(var(--radius)/2);color:hsl(var(--muted-foreground));font-size:13px;line-height:1.5;padding:12px 16px}.interpretation-note strong{color:hsl(var(--foreground));font-weight:600}.team-member-hours-empty{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:40px 20px}.empty-state{color:hsl(var(--muted-foreground));font-size:14px;text-align:center}@media print{.future-hours-section,.past-hours-section{background:#fff;border:1px solid #ccc;margin-top:20px;page-break-inside:avoid}.hours-table{font-size:11px}.hours-table th{background:#f5f5f5;font-size:10px}.status-badge{background:#0000!important;border:1px solid #000!important;font-size:10px}.current-week-row{background:#f9f9f9!important}}@media (max-width:768px){.future-hours-section,.past-hours-section{padding:16px}.hours-table{font-size:12px}.hours-table td,.hours-table th{padding:8px 10px}.status-badge{font-size:10px;padding:3px 8px}}.project-status-section{margin:0 auto;max-width:1400px;padding:24px}.print-header{background:hsl(var(--background));border:2px solid hsl(var(--destructive));color:hsl(var(--destructive));display:none;font-size:18px;font-weight:700;margin-bottom:20px;padding:10px;text-align:center}.status-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:30px}.status-header-left h2{color:hsl(var(--foreground));font-size:24px;margin:0 0 8px}.status-header-left .project-code{color:hsl(var(--muted-foreground));font-size:14px;margin:0}.status-header-right{align-items:center;display:flex;gap:15px}.date-picker-group{align-items:center;display:flex;gap:10px}.date-picker-label{color:hsl(var(--foreground));font-size:14px;font-weight:500}.date-picker-input{background:hsl(var(--background));color:hsl(var(--foreground));padding:8px 12px}.date-picker-input,.today-button{border:1px solid hsl(var(--border));border-radius:calc(var(--radius)/2);font-family:Barlow,sans-serif;font-size:14px}.today-button{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));cursor:pointer;font-weight:500;padding:8px 16px;transition:all .2s ease}.today-button:hover{background:hsl(var(--muted));transform:translateY(-1px)}.print-button{background:hsl(var(--primary));border:none;border-radius:calc(var(--radius)/2);color:hsl(var(--primary-foreground));cursor:pointer;font-family:Barlow,sans-serif;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.print-button:hover{opacity:.9;transform:translateY(-1px)}.as-of-date{color:hsl(var(--muted-foreground));font-size:14px}.status-cards-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:30px}.status-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}.status-card h3{font-size:20px;font-weight:700;margin:0 0 20px}.status-card h3,.status-card h4{color:hsl(var(--foreground));font-family:Barlow Semi Condensed,sans-serif}.status-card h4{font-size:15px;font-weight:600;letter-spacing:.5px;margin:20px 0 12px;text-transform:uppercase}.card-section{margin-bottom:20px}.card-section:last-child{margin-bottom:0}.metric-row{align-items:center;border-bottom:1px solid hsl(var(--border)/.3);display:flex;justify-content:space-between;padding:10px 0}.metric-row:last-child{border-bottom:none}.metric-row.sub-metric{font-size:.95em;padding-left:20px}.metric-row.sub-metric .metric-label{color:hsl(var(--muted-foreground)/.8);font-size:13px}.metric-row.sub-metric .metric-value{font-size:14px;font-weight:500}.metric-row.highlight{background:hsl(var(--subtle-background));border-bottom:none;border-radius:8px;margin:12px -16px;padding:14px 16px}.metric-label{color:hsl(var(--muted-foreground));font-size:14px;font-weight:500}.metric-value{color:hsl(var(--foreground));font-family:Barlow Semi Condensed,sans-serif;font-size:16px;font-weight:700}.metric-value.positive{color:hsl(var(--success))}.metric-value.negative{color:hsl(var(--destructive))}.metric-note{color:hsl(var(--muted-foreground));font-size:13px;font-style:italic;margin-top:8px;padding-left:8px}.metric-highlight{background:hsl(var(--subtle-background));border:1px solid hsl(var(--border)/.5);border-radius:8px;margin-top:16px;padding:16px}.metric-highlight .metric-row{border-bottom:none;padding:8px 0}.status-badge{border-radius:6px;font-family:Barlow Semi Condensed,sans-serif;font-size:13px;font-weight:600;letter-spacing:.5px;margin-top:12px;padding:6px 14px;text-transform:uppercase}.status-badge.success{background:hsl(var(--success)/.15);border:1px solid hsl(var(--success)/.3);color:hsl(var(--success))}.status-badge.warning{background:hsl(var(--warning)/.15);border:1px solid hsl(var(--warning)/.3);color:hsl(var(--warning))}.status-badge.critical{background:hsl(var(--destructive)/.15);border:1px solid hsl(var(--destructive)/.3);color:hsl(var(--destructive))}.health-alerts-panel{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px;box-shadow:0 2px 10px hsl(var(--border)/.3);margin-bottom:30px;padding:24px}.health-alerts-panel h3{color:hsl(var(--foreground));font-family:Barlow Semi Condensed,sans-serif;font-size:20px;font-weight:700;margin:0 0 20px}.alert-section{margin-bottom:20px}.alert-section:last-child{margin-bottom:0}.alert-section h4{font-family:Barlow Semi Condensed,sans-serif;font-size:15px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.alert-section.critical h4{color:hsl(var(--destructive))}.alert-section.warning h4{color:hsl(var(--warning))}.alert-section.info h4{color:hsl(var(--info))}.alert-item{background:hsl(var(--subtle-background));border-left:4px solid hsl(var(--border));border-radius:8px;margin-bottom:10px;padding:14px 16px;transition:all .2s ease}.alert-item:hover{transform:translateX(2px)}.alert-section.critical .alert-item{background:hsl(var(--destructive)/.05);border-left-color:hsl(var(--destructive))}.alert-section.warning .alert-item{background:hsl(var(--warning)/.05);border-left-color:hsl(var(--warning))}.alert-section.info .alert-item{background:hsl(var(--info)/.05);border-left-color:hsl(var(--info))}.alert-category{color:hsl(var(--foreground));font-family:Barlow Semi Condensed,sans-serif;font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.alert-message{color:hsl(var(--muted-foreground));font-size:14px;line-height:1.5}.task-breakdown-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:30px;padding:24px}.task-breakdown-section h3{color:hsl(var(--foreground));font-family:Barlow Semi Condensed,sans-serif;font-size:20px;font-weight:700;margin:0 0 20px}.task-table{border-collapse:collapse;width:100%}.task-table thead{background:hsl(var(--subtle-background))}.task-table th{border-bottom:2px solid hsl(var(--border));color:hsl(var(--foreground));font-family:Barlow Semi Condensed,sans-serif;font-size:13px;font-weight:700;letter-spacing:.5px;padding:14px 12px;text-align:left;text-transform:uppercase}.task-table th.text-right{text-align:right}.task-table tbody tr{border-bottom:1px solid hsl(var(--border)/.3);transition:background .15s ease}.task-table tbody tr:hover{background:hsl(var(--subtle-background))}.task-table td{color:hsl(var(--foreground));font-size:14px;padding:14px 12px}.task-table td.text-right{font-family:Barlow Semi Condensed,sans-serif;font-weight:600;text-align:right}.task-table tfoot{background:hsl(var(--subtle-background));font-weight:700}.task-table tfoot td{border-top:2px solid hsl(var(--border));font-family:Barlow Semi Condensed,sans-serif;padding:14px 12px}.invoices-summary-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:30px;padding:24px}.invoices-summary-section h3{color:hsl(var(--foreground));font-family:Barlow Semi Condensed,sans-serif;font-size:20px;font-weight:700;margin:0 0 20px}.invoices-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.invoice-category h4{font-family:Barlow Semi Condensed,sans-serif;font-size:15px;font-weight:700;letter-spacing:.5px;margin:0 0 14px;text-transform:uppercase}.invoice-category.overdue h4{color:hsl(var(--destructive))}.invoice-category.open h4{color:hsl(var(--warning))}.invoice-category.paid h4{color:hsl(var(--success))}.invoice-item{align-items:center;background:hsl(var(--subtle-background));border:1px solid hsl(var(--border)/.3);border-radius:8px;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px;padding:12px 14px;transition:all .15s ease}.invoice-item:hover{background:hsl(var(--muted));transform:translateX(2px)}.invoice-item span{color:hsl(var(--foreground));font-family:Barlow Semi Condensed,sans-serif;font-size:14px;font-weight:600}.invoice-item .due-date,.invoice-item .paid-date{color:hsl(var(--muted-foreground));font-family:Barlow,sans-serif;font-size:12px;font-weight:400}.status-error,.status-loading{color:hsl(var(--muted-foreground));font-family:Barlow,sans-serif;font-size:16px;padding:80px 20px;text-align:center}.status-loading{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:12px}.status-error,.status-loading{margin:20px auto;max-width:600px}.status-error{background:hsl(var(--destructive)/.05);border:1px solid hsl(var(--destructive)/.3);border-radius:12px;color:hsl(var(--destructive));font-weight:600}.progress-bar{border-radius:6px;box-shadow:inset 0 1px 3px hsl(var(--border)/.5);height:10px;margin-top:10px;width:100%}.progress-fill{border-radius:6px;transition:width .4s ease}.progress-fill.success{background:linear-gradient(90deg,hsl(var(--success)),hsl(var(--success)/.8))}.progress-fill.warning{background:linear-gradient(90deg,hsl(var(--warning)),hsl(var(--warning)/.8))}.progress-fill.critical{background:linear-gradient(90deg,hsl(var(--destructive)),hsl(var(--destructive)/.8))}@media (max-width:1024px){.status-cards-grid{grid-template-columns:1fr}.status-header,.status-header-right{align-items:stretch;flex-direction:column}.invoices-grid{grid-template-columns:1fr}}@media (max-width:768px){.project-status-section{padding:12px}.status-card{padding:16px}.task-table{font-size:12px}.task-table td,.task-table th{padding:8px 4px}}@media print{.date-picker-input,.no-print,.print-button,.today-button,aside,header,nav{display:none!important}.print-header{display:block!important}.health-alerts-panel,.invoices-summary-section,.status-card,.task-breakdown-section{border:1px solid #ddd;margin-bottom:1rem;page-break-inside:avoid}@page{margin:.5in}*{background:#fff!important;color:#000!important}.alert-item,.invoice-item,.status-badge,.task-table tfoot,.task-table thead{background:#f5f5f5!important}.metric-highlight{background:#f9f9f9!important}.health-alerts-panel,.invoices-summary-section,.metric-row,.status-card,.task-breakdown-section,.task-table td,.task-table th{border-color:#ddd!important}}.project-status-tabs{margin-top:30px}.status-tabs-list{border-bottom:2px solid hsl(var(--border));display:flex;gap:4px;margin-bottom:24px;padding:0;width:100%}.status-tab-trigger{background:#0000;border:none;border-bottom:3px solid #0000;color:hsl(var(--muted-foreground));cursor:pointer;font-family:Barlow Semi Condensed,sans-serif;font-size:15px;font-weight:600;letter-spacing:.5px;padding:12px 24px;text-transform:uppercase;transition:all .2s ease}.status-tab-trigger:hover{background:hsl(var(--accent)/.3);color:hsl(var(--foreground))}.status-tab-trigger[data-state=active]{background:hsl(var(--accent)/.15);border-bottom-color:hsl(var(--primary));color:hsl(var(--primary))}.status-tab-trigger:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.empty-tab-state{background:hsl(var(--card));border:1px dashed hsl(var(--border));border-radius:12px;color:hsl(var(--muted-foreground));font-size:15px;padding:60px 20px;text-align:center}@media print{.status-tab-trigger,.status-tabs-list{display:none!important}}.match-dialog-schedule-info{background:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:var(--radius);margin-bottom:16px;padding:12px 16px}.match-dialog-schedule-info .schedule-description{color:hsl(var(--foreground));font-size:.875rem;font-weight:600;margin:0 0 4px}.match-dialog-schedule-info .schedule-expected{color:hsl(var(--muted-foreground));font-size:.8125rem;margin:0}.match-dialog-schedule-info .schedule-expected .amount{color:hsl(var(--foreground));font-weight:600}.match-dialog-invoice-list{max-height:300px;overflow-y:auto}.match-dialog-invoice-list-label{color:hsl(var(--foreground));font-size:.875rem;font-weight:600;margin-bottom:8px}.match-dialog-empty{color:hsl(var(--muted-foreground));font-size:.875rem;padding:24px 16px;text-align:center}.match-dialog-option{align-items:flex-start;border:1px solid hsl(var(--border));border-radius:var(--radius);cursor:pointer;display:flex;gap:12px;margin-bottom:8px;padding:12px;transition:all .15s ease}.match-dialog-option:last-child{margin-bottom:0}.match-dialog-option:hover{background:hsl(var(--muted)/.5)}.match-dialog-option.selected{background:hsl(var(--primary)/.05);border-color:hsl(var(--primary))}.match-dialog-option input[type=radio]{accent-color:hsl(var(--primary));margin-top:2px}.match-dialog-option-details{flex:1 1;min-width:0}.match-dialog-option-row{align-items:baseline;display:flex;gap:16px;justify-content:space-between}.match-dialog-option-amount,.match-dialog-option-invoice-num{color:hsl(var(--foreground));font-size:.875rem;font-weight:600}.match-dialog-option-amount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.match-dialog-option-meta{align-items:baseline;display:flex;gap:16px;justify-content:space-between;margin-top:4px}.match-dialog-option-date,.match-dialog-option-diff{color:hsl(var(--muted-foreground));font-size:.75rem}.match-dialog-option-diff{white-space:nowrap}.match-dialog-option-diff.warning{color:hsl(var(--warning))}.recurrence-loading{color:hsl(var(--muted-foreground));font-size:.875rem;padding:24px;text-align:center}.recurrence-view-header{align-items:center;display:flex;gap:8px;margin-bottom:16px}.recurrence-type-badge{background:hsl(var(--primary)/.1);border:1px solid hsl(var(--primary)/.2);border-radius:6px;color:hsl(var(--primary))}.recurrence-status-badge,.recurrence-type-badge{display:inline-flex;font-size:.75rem;font-weight:600;padding:4px 10px}.recurrence-status-badge{border-radius:6px}.recurrence-status-active{background:hsl(var(--success)/.15);border:1px solid hsl(var(--success)/.3);color:hsl(var(--success))}.recurrence-status-paused{background:hsl(var(--warning)/.15);border:1px solid hsl(var(--warning)/.3);color:hsl(var(--warning))}.recurrence-status-cancelled{background:hsl(var(--muted));border:1px solid hsl(var(--border));color:hsl(var(--muted-foreground))}.recurrence-view-details{background:hsl(var(--muted)/.5);border:1px solid hsl(var(--border));border-radius:var(--radius);margin-bottom:16px;padding:12px 16px}.recurrence-detail-row{align-items:baseline;display:flex;gap:16px;justify-content:space-between;padding:6px 0}.recurrence-detail-row:not(:last-child){border-bottom:1px solid hsl(var(--border)/.5)}.recurrence-detail-label{color:hsl(var(--muted-foreground));font-size:.8125rem;white-space:nowrap}.recurrence-detail-value{color:hsl(var(--foreground));font-size:.875rem;font-weight:600;text-align:right}.recurrence-detail-template{font-family:SF Mono,Fira Code,monospace;font-size:.8125rem;font-weight:500}.recurrence-preview{margin-bottom:16px}.recurrence-preview-title{color:hsl(var(--foreground));font-size:.8125rem;font-weight:600;margin:0 0 8px}.recurrence-preview-list{border:1px solid hsl(var(--border));border-radius:var(--radius);overflow:hidden}.recurrence-preview-item{grid-gap:12px;align-items:baseline;border-bottom:1px solid hsl(var(--border));display:grid;font-size:.8125rem;gap:12px;grid-template-columns:100px 1fr auto;padding:8px 12px}.recurrence-preview-item:last-child{border-bottom:none}.recurrence-preview-date{color:hsl(var(--muted-foreground));white-space:nowrap}.recurrence-preview-desc{color:hsl(var(--foreground));min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recurrence-preview-amount{font-feature-settings:"tnum";color:hsl(var(--foreground));font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.recurrence-view-actions{display:flex;gap:8px;justify-content:flex-end;width:100%}.recurrence-form{display:flex;flex-direction:column;gap:16px}.recurrence-form-section{display:flex;flex-direction:column;gap:6px}.recurrence-form-section-label{font-size:.875rem;font-weight:600}.recurrence-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.recurrence-radio-group{display:flex;flex-direction:column;gap:8px}.recurrence-radio-group.recurrence-radio-inline{flex-direction:row;gap:16px}.recurrence-radio-option{align-items:flex-start;border:1px solid hsl(var(--border));border-radius:var(--radius);cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:all .15s ease}.recurrence-radio-option:hover{background:hsl(var(--muted)/.5)}.recurrence-radio-option:has(input:checked){background:hsl(var(--primary)/.05);border-color:hsl(var(--primary))}.recurrence-radio-option input[type=radio]{accent-color:hsl(var(--primary));margin-top:3px}.recurrence-radio-label{color:hsl(var(--foreground));display:block;font-size:.875rem;font-weight:600}.recurrence-radio-desc{color:hsl(var(--muted-foreground));display:block;font-size:.75rem;margin-top:2px}.recurrence-radio-option-inline{align-items:center;color:hsl(var(--foreground));cursor:pointer;display:flex;font-size:.875rem;gap:6px}.recurrence-radio-option-inline input[type=radio]{accent-color:hsl(var(--primary))}.recurrence-select{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;font-size:.875rem;padding:8px 12px;width:100%}.recurrence-select:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary)/.15);outline:none}.recurrence-help-text{color:hsl(var(--muted-foreground));font-size:.75rem}.recurrence-checkbox-option{align-items:flex-start;border:1px solid hsl(var(--border));border-radius:var(--radius);cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:all .15s ease}.recurrence-checkbox-option:hover{background:hsl(var(--muted)/.5)}.recurrence-checkbox-option:has(input:checked){background:hsl(var(--primary)/.05);border-color:hsl(var(--primary))}.recurrence-checkbox-option input[type=checkbox]{accent-color:hsl(var(--primary));margin-top:3px}.recurrence-auto-invoiced-badge{background:hsl(var(--primary)/.1);border:1px solid hsl(var(--primary)/.2);border-radius:4px;color:hsl(var(--primary));display:inline-flex;font-size:.75rem;font-weight:600;padding:2px 8px}.invoice-schedule-panel{margin-bottom:24px}.invoice-schedule-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.invoice-schedule-header h3{color:hsl(var(--foreground));font-size:1rem;font-weight:600;margin:0}.invoice-schedule-table-container{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);overflow:hidden}.invoice-schedule-empty{color:hsl(var(--muted-foreground));font-size:.875rem;padding:24px 16px;text-align:center}.invoice-schedule-table{border-collapse:collapse;width:100%}.invoice-schedule-table thead{background:hsl(var(--muted)/.5);border-bottom:2px solid hsl(var(--border))}.invoice-schedule-table th{color:hsl(var(--foreground));font-size:.8125rem;font-weight:600;letter-spacing:.05em;padding:12px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.invoice-schedule-table th.col-amount{text-align:right}.invoice-schedule-table td{border-bottom:1px solid hsl(var(--border));color:hsl(var(--foreground));font-size:.875rem;padding:12px 16px}.invoice-schedule-table tbody tr{transition:background-color .15s ease}.invoice-schedule-table tbody tr:hover{background:hsl(var(--muted)/.3)}.invoice-schedule-table tbody tr:last-child td{border-bottom:none}.invoice-schedule-table td.col-amount{font-feature-settings:"tnum";font-family:SF Mono,Fira Code,Fira Mono,monospace;font-variant-numeric:tabular-nums;text-align:right}.invoice-schedule-table td.col-type{color:hsl(var(--muted-foreground))}.invoice-schedule-table td.col-description .milestone-name{color:hsl(var(--muted-foreground));display:block;font-size:.75rem;margin-top:2px}.invoice-schedule-table td.col-match .match-number{color:hsl(var(--success));font-weight:600}.invoice-schedule-table td.col-match .match-none{color:hsl(var(--muted-foreground))}.invoice-schedule-table td.col-actions{white-space:nowrap}.invoice-schedule-table td.col-actions .actions-row{align-items:center;display:flex;gap:6px}.schedule-action-button:active{transform:scale(.98)}.schedule-action-button.schedule-action-secondary{background:#0000;border-color:hsl(var(--border));color:hsl(var(--muted-foreground))}.schedule-action-button.schedule-action-secondary:hover{background:hsl(var(--muted));border-color:hsl(var(--border));color:hsl(var(--foreground))}.schedule-action-button.schedule-action-destructive{background:#0000;border-color:hsl(var(--destructive)/.3);color:hsl(var(--destructive))}.schedule-action-button.schedule-action-destructive:hover{background:hsl(var(--destructive));border-color:hsl(var(--destructive));color:hsl(#fff);color:hsl(var(--destructive-foreground,#fff))}.schedule-badge{align-items:center;border:1px solid;border-radius:6px;display:inline-flex;font-size:.75rem;font-weight:600;padding:.25rem .625rem;white-space:nowrap}.schedule-badge-upcoming{background:hsl(var(--muted));border-color:hsl(var(--border));color:hsl(var(--muted-foreground))}.schedule-badge-ready{background:hsl(var(--info)/.15);border-color:hsl(var(--info)/.3);color:hsl(var(--info))}.schedule-badge-invoiced{background:hsl(var(--warning)/.1);border-color:hsl(var(--warning)/.3);color:hsl(var(--warning))}.schedule-badge-matched{background:hsl(var(--success)/.15);border-color:hsl(var(--success)/.3);color:hsl(var(--success))}.schedule-badge-missed{background:hsl(var(--destructive)/.15);border-color:hsl(var(--destructive)/.3);color:hsl(var(--destructive))}.schedule-badge-automatic{background:hsl(var(--primary)/.1);border-color:hsl(var(--primary)/.2);color:hsl(var(--primary))}.schedule-badge-cancelled{background:hsl(var(--muted));border-color:hsl(var(--border));color:hsl(var(--muted-foreground));opacity:.6;text-decoration:line-through}.invoice-schedule-cancelled{margin-top:12px}.invoice-schedule-cancelled summary{color:hsl(var(--muted-foreground));cursor:pointer;font-size:.75rem}.invoice-schedule-cancelled summary:hover{color:hsl(var(--foreground))}.cancelled-item{color:hsl(var(--muted-foreground));font-size:.75rem;padding:4px 0;text-decoration:line-through}.invoice-schedule-header-actions{align-items:center;display:flex;gap:8px}.recurrence-summary{background:hsl(var(--primary)/.05);border:1px solid hsl(var(--primary)/.15);border-radius:var(--radius);margin-bottom:16px;padding:12px 16px}.recurrence-summary-header{align-items:center;display:flex;gap:8px;margin-bottom:6px}.recurrence-summary-type{color:hsl(var(--primary));font-size:.8125rem;font-weight:600}.recurrence-summary-status{border-radius:4px;font-size:.6875rem;font-weight:600;padding:2px 8px}.recurrence-summary-status-active{background:hsl(var(--success)/.15);color:hsl(var(--success))}.recurrence-summary-status-paused{background:hsl(var(--warning)/.15);color:hsl(var(--warning))}.recurrence-summary-automatic{background:hsl(var(--success)/.15);border:1px solid hsl(var(--success)/.3);border-radius:4px;color:hsl(var(--success));display:inline-flex;font-size:.6875rem;font-weight:600;padding:2px 8px}.recurrence-summary-details{align-items:center;color:hsl(var(--muted-foreground));display:flex;flex-wrap:wrap;font-size:.8125rem;gap:4px}.recurrence-summary-sep{margin:0 2px}.invoice-schedule-table-wrapper{overflow-x:auto}@media (max-width:768px){.invoice-schedule-table td,.invoice-schedule-table th{font-size:.8125rem;padding:8px 10px}}.email-rich-text-editor{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;overflow:hidden}.email-rich-text-editor.disabled{opacity:.6;pointer-events:none}.email-variables-toolbar{align-items:center;background:hsl(var(--muted));border-bottom:1px solid hsl(var(--border));display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem .75rem}.variables-label{color:hsl(var(--muted-foreground));flex-shrink:0;font-size:.8rem}.variables-buttons{display:flex;flex-wrap:wrap;gap:.25rem}.variable-btn{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:3px;color:hsl(var(--muted-foreground));cursor:pointer;font-family:monospace;font-size:.7rem;padding:.15rem .4rem;transition:all .15s ease}.variable-btn:hover{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.email-editor-toolbar{align-items:center;background:hsl(var(--muted)/.5);border-bottom:1px solid hsl(var(--border));display:flex;flex-wrap:wrap;gap:.25rem;padding:.5rem}.toolbar-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:4px;color:hsl(var(--foreground));cursor:pointer;display:flex;font-size:.875rem;height:28px;justify-content:center;padding:0;transition:all .15s ease;width:28px}.toolbar-btn:hover:not(:disabled){background:hsl(var(--accent));border-color:hsl(var(--border))}.toolbar-btn.active{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.toolbar-btn:disabled{cursor:not-allowed;opacity:.4}.toolbar-divider{background:hsl(var(--border));height:20px;margin:0 .25rem;width:1px}.email-rich-text-editor .tiptap{max-height:400px;min-height:200px;outline:none;overflow-y:auto;padding:.75rem}.email-rich-text-editor .tiptap p{margin:0 0 .75rem}.email-rich-text-editor .tiptap p:last-child{margin-bottom:0}.email-rich-text-editor .tiptap h3{font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.email-rich-text-editor .tiptap ol,.email-rich-text-editor .tiptap ul{margin:0 0 .75rem;padding-left:1.5rem}.email-rich-text-editor .tiptap li{margin-bottom:.25rem}.email-rich-text-editor .tiptap a{color:hsl(var(--primary));text-decoration:underline}.email-rich-text-editor .tiptap hr{border:none;border-top:1px solid hsl(var(--border));margin:1rem 0}.email-rich-text-editor .tiptap blockquote{border-left:3px solid hsl(var(--border));color:hsl(var(--muted-foreground));margin:0 0 .75rem;padding-left:1rem}.email-rich-text-editor .tiptap p.is-editor-empty:first-child:before{color:hsl(var(--muted-foreground));content:attr(data-placeholder);float:left;height:0;pointer-events:none}.email-rich-text-editor .tiptap.ProseMirror-focused p.is-editor-empty:first-child:before{opacity:.5}.onboarding-section{padding:1rem 0}.onboarding-section.loading{color:hsl(var(--muted-foreground));padding:2rem;text-align:center}.no-checklist{background:hsl(var(--muted));border:1px dashed hsl(var(--border));border-radius:8px;padding:3rem 2rem;text-align:center}.no-checklist h3{font-family:Neuton,Georgia,serif;font-size:1.25rem;margin:0 0 .5rem}.no-checklist p{color:hsl(var(--muted-foreground));margin:0 0 1.5rem}.no-checklist-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.onboarding-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.progress-info{flex:1 1;min-width:200px}.progress-text{display:flex;justify-content:space-between;margin-bottom:.5rem}.progress-count{color:hsl(var(--muted-foreground));font-size:.875rem}.progress-percentage{color:hsl(var(--primary));font-weight:600}.progress-bar{background:hsl(var(--muted));border-radius:4px;height:8px;overflow:hidden}.progress-fill{background:hsl(var(--primary));border-radius:4px;height:100%;transition:width .3s ease}.onboarding-actions{display:flex;gap:.5rem}.onboarding-filters{align-items:center;background:hsl(var(--muted)/.5);border-radius:6px;display:flex;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem}.filter-checkbox{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;-webkit-user-select:none;user-select:none}.filter-checkbox input[type=checkbox]{accent-color:hsl(var(--primary));cursor:pointer;height:16px;width:16px}.filter-checkbox span{color:hsl(var(--foreground))}.my-task-count{font-size:.8125rem}.my-task-count,.no-tasks-message{color:hsl(var(--muted-foreground))}.no-tasks-message{font-size:.9375rem;padding:2rem;text-align:center}.completion-alert{background:#16a2491a;border-color:#16a2494d;margin-bottom:1.5rem}.completion-alert-content{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.completion-alert-content button{flex-shrink:0}.sections-list{gap:.75rem}.section-header{padding:.875rem 1rem;transition:background-color .15s ease}.section-header:hover{background:hsl(var(--muted)/.7)}.section-title h3{font-family:Barlow,sans-serif;font-size:.9375rem}.section-progress{background:hsl(var(--background));border-radius:10px;color:hsl(var(--muted-foreground));font-size:.8125rem;padding:.125rem .5rem}.section-complete-badge{align-items:center;background:#16a2491a;border-radius:4px;color:#16a249;display:flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .625rem}.task-card{border-bottom:1px solid hsl(var(--border))}.task-card:last-child{border-bottom:none}.task-card.completed{background:hsl(var(--muted)/.5)}.task-card-header{align-items:flex-start;cursor:pointer;display:flex;gap:.75rem;padding:.875rem 1rem;transition:background-color .15s ease}.task-card-header:hover{background:hsl(var(--muted)/.5)}.task-checkbox-area{flex-shrink:0;padding-top:2px}.task-main-info{flex:1 1;min-width:0}.task-title-row{align-items:center;display:flex;gap:.5rem}.task-title{font-size:.9375rem;font-weight:500}.task-title.completed{color:hsl(var(--muted-foreground));text-decoration:line-through}.email-badge{border-radius:4px;font-size:.75rem;padding:.125rem .5rem}.email-badge.sent{background:#16a2491a;color:#16a249}.webhook-badge{border-radius:4px;font-size:.75rem;font-weight:500;padding:.125rem .5rem}.webhook-badge.failed{background:#ef43431a;color:#ef4343}.webhook-badge.skipped{background:#f59f0a1a;color:#f59f0a}.task-meta{font-size:.8125rem;gap:.75rem;margin-top:.25rem}.task-card-details{background:hsl(var(--muted)/.3);border-top:1px solid hsl(var(--border));padding:1rem 1rem 1rem 3rem}.task-instructions{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:6px;margin-bottom:1rem;padding:.875rem}.task-instructions strong{color:hsl(var(--foreground));display:block;font-size:.8125rem;font-weight:600;letter-spacing:.025em;margin-bottom:.5rem;text-transform:uppercase}.task-instructions p{color:hsl(var(--foreground));font-size:.875rem;line-height:1.6;margin:0;white-space:pre-wrap}.task-actions-row{flex-wrap:wrap;gap:1rem}.task-actions-row,.task-field{align-items:center;display:flex}.task-field{gap:.5rem}.task-field label{color:hsl(var(--muted-foreground));font-size:.8125rem;font-weight:500}.task-field select{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-size:.8125rem;padding:.375rem .5rem}.assignee-value{align-items:center;display:flex;font-size:.875rem;gap:.375rem}.assignee-value.editable{border-radius:4px;cursor:pointer;padding:.25rem .5rem;transition:background-color .15s ease}.assignee-value.editable:hover{background:hsl(var(--muted))}.task-notes{margin-top:1rem}.task-notes>label{color:hsl(var(--muted-foreground));display:block;font-size:.8125rem;font-weight:500;margin-bottom:.375rem}.notes-display{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:6px;color:hsl(var(--foreground));font-size:.875rem;min-height:2.5rem;padding:.75rem;white-space:pre-wrap}.notes-display.editable{cursor:pointer;transition:background-color .15s ease}.notes-display.editable:hover{background:hsl(var(--muted))}.notes-edit textarea{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:6px;color:hsl(var(--foreground));font-family:inherit;font-size:.875rem;padding:.75rem;resize:vertical;width:100%}.notes-edit textarea:focus{border-color:hsl(var(--primary));outline:none}.notes-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.5rem}.email-preview-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.email-preview-modal{background:hsl(var(--card));border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:700px;overflow:hidden;width:100%}.email-preview-header{align-items:center;background:hsl(var(--muted));border-bottom:1px solid hsl(var(--border));display:flex;justify-content:space-between;padding:1rem 1.5rem}.email-preview-header h2{font-family:Barlow,sans-serif;font-size:1.125rem;font-weight:600;margin:0}.email-preview-header .close-button{background:none;border:none;color:hsl(var(--muted-foreground));cursor:pointer;font-size:1.5rem;line-height:1;padding:0;transition:color .15s ease}.email-preview-header .close-button:hover{color:hsl(var(--foreground))}.email-preview-error,.email-preview-loading{color:hsl(var(--muted-foreground));padding:2rem;text-align:center}.email-preview-error{color:#ef4343}.email-preview-content{flex:1 1;overflow-y:auto;padding:1.5rem}.email-field{margin-bottom:1rem}.email-field label{color:hsl(var(--muted-foreground));display:block;font-size:.8125rem;font-weight:500;margin-bottom:.375rem}.email-field input,.email-field textarea{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:6px;color:hsl(var(--foreground));font-family:inherit;font-size:.875rem;padding:.5rem .75rem;width:100%}.email-field input:focus,.email-field textarea:focus{border-color:hsl(var(--primary));outline:none}.email-body-field textarea{min-height:200px;resize:vertical}.email-body-field .email-rich-text-editor{border:1px solid hsl(var(--border));border-radius:6px}.email-body-field .email-rich-text-editor .tiptap{max-height:300px;min-height:200px}.email-sent-notice{background:#e7b0081a;border:1px solid #e7b0084d;border-radius:6px;color:#b68a07;font-size:.8125rem;margin-top:1rem;padding:.75rem}.email-preview-actions{background:hsl(var(--muted));border-top:1px solid hsl(var(--border));display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.test-mode-banner{background:#3c83f61a;border:1px solid #3c83f64d;border-radius:6px;color:#0a5adb;font-size:.875rem;margin-bottom:1rem;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(7,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{align-items:end;background:hsl(var(--muted)/.3);border-bottom:1px solid hsl(var(--border));display:flex;gap:20px;justify-content:space-between;padding:20px}.filter-group{flex-direction:column;gap:5px}.filter-group label,.search-input{font-size:14px}.search-input{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:6px;color:hsl(var(--foreground));min-width:300px;padding:8px 12px}.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}.projects-list{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;grid-template-columns:none!important;width:100%!important}.project-item{background:#0000;border-bottom:1px solid hsl(var(--border));display:block!important;flex:0 0 auto!important;padding:28px 24px;width:100%!important}.project-item:first-child{padding-top:24px}.project-item:last-child{border-bottom:none;padding-bottom:24px}.project-item:hover{background:hsl(var(--muted)/.15)}.project-header{margin-bottom:20px}.project-title{font-size:17px;line-height:1.4}.project-code{background:#0000;font-family:Courier New,monospace;font-size:14px;font-weight:500}.project-separator{margin:0 6px}.client-name,.project-separator{color:hsl(var(--muted-foreground))}.missing-fields{display:block;margin-left:24px}.missing-field-row{align-items:center;display:flex;gap:16px;margin-bottom:14px}.missing-field-row:last-child{margin-bottom:0}.field-label{flex-shrink:0;font-weight:500;width:180px}.field-label,.field-select{color:hsl(var(--foreground));font-size:14px}.field-select{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:6px;cursor:pointer;flex:0 0 280px;padding:8px 12px}.field-select:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring)/.25);outline:none}.field-select:disabled{cursor:not-allowed;opacity:.6}.save-btn-inline{background:hsl(var(--primary));border:none;border-radius:6px;color:hsl(var(--primary-foreground));cursor:pointer;flex-shrink:0;font-size:14px;font-weight:500;padding:8px 24px;transition:background .2s ease;white-space:nowrap}.save-btn-inline:hover:not(:disabled){background:hsl(var(--primary)/.9)}.save-btn-inline:disabled{cursor:not-allowed;opacity:.5}.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){.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}.audit-controls{align-items:stretch;flex-direction:column}.search-input{width:100%}.project-item{padding:20px 16px}.missing-fields{margin-left:0}.missing-field-row{align-items:stretch;flex-direction:column;gap:10px}.field-label{width:auto}.field-select{flex:1 1;width:100%}.save-btn-inline{width:100%}}@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}.project-item{padding:16px 12px}.project-name{font-size:15px}}.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 label{font-size:.95rem}.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));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.edit{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.action-btn.edit: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}}.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))}.missing-time-modal{max-height:80vh;max-width:700px;overflow-y:auto}.missing-time-content{padding:.5rem 0}.missing-time-description{color:hsl(var(--muted-foreground));line-height:1.5;margin-bottom:1.5rem}.missing-time-empty{color:hsl(var(--muted-foreground));padding:2rem;text-align:center}.missing-time-weeks{display:flex;flex-direction:column;gap:1.5rem}.missing-time-week{border:1px solid hsl(var(--border));border-radius:.5rem;overflow:hidden}.missing-time-week-header{background-color:hsl(var(--muted)/.5);border-bottom:1px solid hsl(var(--border));font-size:.875rem;font-weight:600;margin:0;padding:.75rem 1rem}.missing-time-table{border-collapse:collapse;font-size:.875rem;width:100%}.missing-time-table th{border-bottom:1px solid hsl(var(--border));color:hsl(var(--muted-foreground));font-weight:500;padding:.5rem 1rem;text-align:left}.missing-time-table td{border-bottom:1px solid hsl(var(--border)/.5);padding:.5rem 1rem}.missing-time-table tr:last-child td{border-bottom:none}.missing-time-table .text-right{text-align:right}.missing-time-difference{color:#dc2626;font-weight:500}.missing-time-percent{color:#92400e;font-weight:600}.missing-time-note{background-color:hsl(var(--muted)/.3);border-radius:.375rem;color:hsl(var(--muted-foreground));font-size:.8125rem;line-height:1.5;margin-top:1.5rem;padding:.75rem 1rem}.missing-time-note strong{color:hsl(var(--foreground))}.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-stale-banner{background-color:#fef3c7;border:1px solid #f59e0b;border-radius:6px;color:#92400e;margin-bottom:16px;padding:12px 16px}.report-preview-stale-content{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.report-preview-stale-btn{background-color:#fff!important;border-color:#f59e0b!important;color:#92400e!important;flex-shrink:0}.report-preview-stale-btn:hover{background-color:#fde68a!important;border-color:#d97706!important}.report-preview-warning-banner{background-color:#fef3c7;border:1px solid #f59e0b;border-radius:6px;color:#92400e;margin-bottom:16px;padding:12px 16px}.report-preview-warning-content{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.report-preview-warning-btn{background-color:#fff!important;border-color:#f59e0b!important;color:#92400e!important;flex-shrink:0}.report-preview-warning-btn:hover{background-color:#fde68a!important;border-color:#d97706!important}.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{align-items:center;background-color:hsl(var(--info)/.15);border:1px solid hsl(var(--info)/.3);border-radius:.5rem;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-top:2rem;padding:1rem 1.5rem}.report-sent-info-text{color:hsl(var(--info));font-size:.875rem;font-weight:500;margin:0}.report-sent-info-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top: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:-webkit-sticky;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-balance-row,.forecast-projected-row{background-color:hsl(var(--muted)/.5);font-weight:700}.forecast-balance-row:hover,.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{font-size:1em;font-weight:500;position:relative;transition:all .2s ease}.tab:hover{background:hsl(var(--muted)/.5);color:hsl(var(--primary))}.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}.active-filter{align-items:center;color:hsl(var(--foreground));display:flex;font-weight:500;gap:8px}.active-filter input{height:16px;width:16px}.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;border-radius:4px;display:flex;font-size:28px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.close-button:hover{background:hsl(var(--muted))}.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));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{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:hover:not(:disabled){background:hsl(var(--muted)/.8)}.button-secondary:disabled{cursor:not-allowed;opacity:.6}.project-tabs{margin-top:1.5rem}[data-tabs-list]{background:#0000;display:flex;gap:.5rem;margin-bottom:1.5rem;padding:0}[data-tabs-trigger]{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;color:hsl(var(--muted-foreground));cursor:pointer;display:inline-flex;font-family:Barlow Semi Condensed,sans-serif;font-size:.9375rem;font-weight:600;justify-content:center;padding:.75rem 1.25rem;position:relative;transition:color .2s ease,border-color .2s ease;white-space:nowrap}[data-tabs-trigger]:hover,[data-tabs-trigger][data-state=active]{background:#0000;color:hsl(var(--foreground))}[data-tabs-trigger][data-state=active]{border-bottom-color:hsl(var(--accent))}[data-tabs-content]{outline:none}.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{display:flex;flex-grow:1;gap:10px;justify-content:space-between}.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)}.project-card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.button-secondary{background:hsl(var(--muted));color:hsl(var(--foreground))}.button-secondary:hover{background:hsl(var(--muted)/.8)}.pill{align-items:center;border-radius:999px;display:inline-flex;font-size:.85em;font-weight:600;gap:6px;height:-webkit-fit-content;height:fit-content;padding:6px 10px}.pill-muted{background:hsl(var(--muted));border:1px solid hsl(var(--border));color:hsl(var(--foreground))}.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{border-left:6px solid hsl(var(--muted-foreground));flex-shrink:0}.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-template-columns:repeat(auto-fit,minmax(250px,1fr))}.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-0-14{background:hsl(var(--warning)/.05)}.ar-invoice-row-0-14:hover{background:hsl(var(--warning)/.1)}.ar-invoice-row-not-due{background:hsl(var(--success)/.06)}.ar-invoice-row-not-due:hover{background:hsl(var(--success)/.12)}.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:4px;color:hsl(var(--primary-foreground));cursor:pointer;font-family:Barlow,sans-serif;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;transition:all .15s ease}.ar-comment-submit-button:hover:not(:disabled){background:hsl(var(--primary)/.9)}.ar-comment-submit-button:disabled{cursor:not-allowed;opacity:.5}.ar-comment-disabled{color:hsl(var(--muted-foreground));font-size:.9375rem;margin:0}.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(--muted));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));cursor:pointer;font-family:Barlow,sans-serif;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;transition:all .15s ease}.ar-dialog-close-button:hover{background:hsl(var(--muted)/.8)}@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-comment-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.ar-comment-action-btn{align-items:center;background:#0000;border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--muted-foreground));cursor:pointer;display:inline-flex;font-family:Barlow,sans-serif;font-size:.8125rem;font-weight:500;gap:6px;padding:.375rem .75rem;transition:all .15s ease}.ar-comment-action-btn:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.ar-comment-delete-btn{border-color:hsl(var(--destructive)/.5);color:hsl(var(--destructive))}.ar-comment-delete-btn:hover{background-color:hsl(var(--destructive)/.1);border-color:hsl(var(--destructive));color:hsl(var(--destructive))}.ar-comment-edit{margin-top:12px}.ar-comment-edit .ar-comment-textarea{margin-bottom:8px}.ar-comment-edit-actions{display:flex;gap:8px;justify-content:flex-end}.ar-comment-edit-btn{align-items:center;border-radius:4px;cursor:pointer;display:inline-flex;font-family:Barlow,sans-serif;font-size:.8125rem;font-weight:600;justify-content:center;padding:.5rem 1rem;transition:all .15s ease}.ar-comment-edit-btn-primary{background:hsl(var(--primary));border:none;color:hsl(var(--primary-foreground))}.ar-comment-edit-btn-primary:hover{background:hsl(var(--primary)/.9)}.ar-comment-edit-btn-secondary{background:hsl(var(--muted));border:1px solid hsl(var(--border));color:hsl(var(--foreground))}.ar-comment-edit-btn-secondary:hover{background:hsl(var(--muted)/.8)}.ar-comment-edited{color:hsl(var(--muted-foreground));font-size:.8125rem;font-style:italic}.summary-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,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}.ar-tabs{border-bottom:2px solid hsl(var(--border));display:flex;flex-wrap:wrap;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-row-clickable{cursor:pointer}.ar-row-clickable:focus-visible{background:hsl(var(--muted)/.4);outline:2px solid hsl(var(--primary));outline-offset:-2px}.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-0-14{background:hsl(var(--warning)/.08);border-color:hsl(var(--warning)/.25);color:hsl(var(--warning))}.ar-badge-threshold-not-due{background:hsl(var(--success)/.12);border-color:hsl(var(--success)/.3);color:hsl(var(--success))}.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-on-track,.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-days-0-14{color:hsl(var(--warning));font-weight:600}.ar-days-not-due{color:hsl(var(--success));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-table{font-size:.8125rem}.ar-table td,.ar-table th{padding:10px}.stat-value{font-size:28px}}.bill-verification{max-width:1400px}.bill-tabs [data-tabs-list]{border-bottom:1px solid var(--border);display:flex;gap:0;margin-bottom:1.5rem}.bill-tabs [data-tabs-trigger]{background:none;border:none;border-bottom:2px solid #0000;color:var(--muted-foreground);cursor:pointer;font-size:.875rem;font-weight:500;padding:.625rem 1.25rem;transition:color .15s,border-color .15s}.bill-tabs [data-tabs-trigger]:hover:not(:disabled){color:var(--foreground)}.bill-tabs [data-tabs-trigger][data-state=active]{border-bottom-color:var(--primary);color:var(--foreground)}.bill-tabs [data-tabs-trigger]:disabled{cursor:not-allowed;opacity:.4}.bill-dropzone{border:2px dashed var(--border);border-radius:.5rem;cursor:pointer;margin-bottom:1rem;padding:2.5rem 1.5rem;text-align:center;transition:border-color .15s,background .15s}.bill-dropzone:hover{background:#0874f708;background:hsl(var(--primary-hsl,213 94% 50%)/.03);border-color:var(--primary)}.bill-dropzone-active{background:#0874f70f;background:hsl(var(--primary-hsl,213 94% 50%)/.06);border-color:var(--primary)}.bill-dropzone-has-file{background:#f2fdf6;border-color:#1fe066;border-style:solid}.bill-dropzone-input{display:none}.bill-dropzone-icon{align-items:center;background:var(--muted);border-radius:.5rem;color:var(--muted-foreground);display:inline-flex;font-size:.875rem;font-weight:700;height:48px;justify-content:center;margin-bottom:.75rem;width:48px}.bill-dropzone-has-file .bill-dropzone-icon{background:#d2f9e0;color:#12873d}.bill-dropzone-filename,.bill-dropzone-text{color:var(--foreground);font-size:.95rem;font-weight:500;margin:0 0 .25rem}.bill-dropzone-filename{word-break:break-all}.bill-dropzone-hint{color:var(--muted-foreground);font-size:.8rem;margin:0}.bill-step-content{background:var(--card);border:1px solid var(--border);border-radius:.5rem;margin-bottom:2rem;padding:1.5rem}.bill-step-content h3{font-size:1.1rem;margin:0 0 .25rem}.bill-comparison-description,.bill-review-description,.bill-upload-description{color:var(--muted-foreground);font-size:.875rem;margin:0 0 1.5rem}.bill-upload-actions{margin-top:1rem}.bill-error-banner{background:#fde8e8;border:1px solid #f7a1a1;border-radius:.375rem;color:#960d0d}.bill-error-banner,.bill-warning-banner{font-size:.875rem;margin-bottom:1rem;padding:.75rem 1rem}.bill-warning-banner{background:#fef5e7;border:1px solid #f9c56c;border-radius:.375rem;color:#7a4f05}.bill-success-banner{background:#e9fcf0;border:1px solid #4be784;border-radius:.375rem;color:#0f7033;font-size:.875rem;margin-bottom:1rem;padding:.75rem 1rem}.bill-loading-text{font-style:italic;margin-top:.5rem}.bill-empty-text,.bill-loading-text{color:var(--muted-foreground);font-size:.875rem}.bill-review{display:flex;flex-direction:column;gap:1.5rem}.bill-review-section{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:4px;box-shadow:0 1px 3px 0 #0000001a}.bill-review-section-header{border-bottom:1px solid hsl(var(--border));padding:1.25rem 1.5rem}.bill-review-section-header h3{color:hsl(var(--foreground));font-size:1rem;font-weight:600;margin:0 0 .25rem}.bill-review-section-header p{color:hsl(var(--muted-foreground));font-size:.875rem;margin:0}.bill-review-section-header-row{align-items:center;display:flex;justify-content:space-between}.bill-review-section-body{padding:1.5rem}.bill-review-section-body-table{padding:0}.bill-review-section-body-table .bill-line-items-table{margin:0}.bill-review-section-body-table .bill-line-items-table td:first-child,.bill-review-section-body-table .bill-line-items-table th:first-child{padding-left:1.5rem}.bill-review-section-body-table .bill-line-items-table td:last-child,.bill-review-section-body-table .bill-line-items-table th:last-child{padding-right:1.5rem}.bill-review-row{display:flex;gap:1rem}.bill-review-row .form-group{flex:1 1}.bill-review .form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.bill-review .form-group:last-child{margin-bottom:0}.bill-review .form-group label{color:hsl(var(--foreground));font-size:.875rem;font-weight:500}.bill-review .form-group input,.bill-review .form-group select{background-color:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:6px;color:hsl(var(--foreground));font-family:inherit;font-size:.875rem;padding:.75rem;transition:border-color .2s}.bill-review .form-group input:focus,.bill-review .form-group select:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.1);outline:none}.bill-line-items-table input,.bill-line-items-table select{background-color:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-family:inherit;font-size:.875rem;padding:.5rem;transition:border-color .2s;width:100%}.bill-line-items-table input:focus,.bill-line-items-table select:focus{border-color:hsl(var(--ring));outline:none}.bill-line-delete{background-color:hsl(var(--destructive));border:none;border-radius:4px;color:hsl(var(--destructive-foreground));cursor:pointer;font-size:.8125rem;font-weight:500;padding:.375rem .75rem;transition:all .2s;white-space:nowrap}.bill-line-delete:hover{background-color:hsl(var(--destructive)/.9)}.bill-line-items-table{border-collapse:collapse;font-size:.875rem;width:100%}.bill-line-items-table td,.bill-line-items-table th{border-bottom:1px solid var(--border);padding:.5rem;text-align:left}.bill-line-items-table th{color:var(--muted-foreground);font-size:.8rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.bill-line-items-table tfoot td{border-bottom:none;border-top:2px solid var(--border);padding-top:.75rem}.bill-line-number{text-align:right;width:90px}.bill-cell-with-indicator{align-items:center;display:flex;gap:.25rem}.bill-cell-with-indicator input,.bill-cell-with-indicator select{flex:1 1;min-width:0}.bill-changed-icon{align-items:center;background:#fce2b6;border-radius:50%;color:#935f06;cursor:help;display:inline-flex;flex-shrink:0;font-size:.625rem;font-weight:700;height:16px;justify-content:center;position:relative;width:16px}.bill-changed-icon:after{background:hsl(var(--foreground));border-radius:4px;bottom:calc(100% + 4px);color:hsl(var(--background));content:attr(data-tooltip);font-size:.7rem;font-weight:400;left:50%;opacity:0;padding:.25rem .5rem;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .15s;white-space:nowrap;z-index:10}.bill-changed-icon:hover:after{opacity:1}.bill-total-diff{color:var(--muted-foreground);font-size:.7rem;font-weight:400;margin-top:.125rem}.bill-step-actions{border-top:1px solid var(--border);display:flex;justify-content:space-between;margin-top:1.5rem;padding-top:1rem}.bill-col-right{text-align:right}.bill-col-nowrap{white-space:nowrap}.bill-col-wrap{max-width:200px;min-width:80px;word-break:break-word}.bill-info-banner{background:#e6f1fe;border:1px solid #6babfa;border-radius:.375rem;color:#043a7c;font-size:.875rem;margin-bottom:1rem;padding:.75rem 1rem}.bill-row-mismatch{background:#fef9f0}.bill-row-separator td{background:var(--muted);border-bottom:1px solid var(--border);color:var(--muted-foreground);font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.75rem .5rem .5rem;text-transform:uppercase}.bill-row-harvest-suggestion{background:#f0f7ff;font-style:italic}.bill-row-excluded{opacity:.45}.bill-row-excluded .bill-line-split,.bill-row-excluded input:not([type=checkbox]),.bill-row-excluded select{pointer-events:none}.bill-col-checkbox{text-align:center;width:40px}.bill-line-split{background:var(--background);border:1px solid var(--border);border-radius:4px;color:var(--foreground);cursor:pointer;font-size:.8125rem;font-weight:500;padding:.375rem .75rem;transition:all .2s;white-space:nowrap}.bill-line-split:hover{background:var(--muted)}.bill-line-actions{display:flex;gap:.375rem;white-space:nowrap}.bill-history-table{border-collapse:collapse;font-size:.875rem;width:100%}.bill-history-table td,.bill-history-table th{border-bottom:1px solid var(--border);padding:.625rem .5rem;text-align:left}.bill-history-table th{color:var(--muted-foreground);font-size:.8rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.bill-status-badge{border-radius:9999px;display:inline-block;font-size:.75rem;font-weight:600;padding:.125rem .5rem;text-transform:capitalize}.bill-status-pending{background:#cee3fd;color:#0551ad}.bill-status-in_quickbooks{background:#d2f9e0;color:#12873d}.bill-status-error{background:#fcd9d9;color:#a40e0e}.bill-status-draft{background:var(--muted);color:var(--muted-foreground)}@media (max-width:768px){.bill-review-row{flex-direction:column}.bill-history-table,.bill-line-items-table{display:block;overflow-x:auto}.bill-review-section-body,.bill-review-section-header{padding:1rem}}.invoicing-tabs{margin-top:.5rem}.invoicing-error,.invoicing-loading{color:hsl(var(--muted-foreground));font-size:.875rem;padding:48px 16px;text-align:center}.invoicing-section-header{color:hsl(var(--foreground));font-size:1rem;font-weight:600;margin-bottom:12px;margin-top:8px}.invoicing-section-description{color:hsl(var(--muted-foreground));font-size:.875rem;margin-bottom:12px}.invoicing-table-container{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);overflow:hidden}.invoicing-table-wrapper{overflow-x:auto}.invoicing-empty{color:hsl(var(--muted-foreground));font-size:.875rem;padding:24px 16px;text-align:center}.invoicing-table{border-collapse:collapse;width:100%}.invoicing-table thead{background:hsl(var(--muted)/.5);border-bottom:2px solid hsl(var(--border))}.invoicing-table th{color:hsl(var(--foreground));font-size:.8125rem;font-weight:600;letter-spacing:.05em;padding:12px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.invoicing-table th.col-right{text-align:right}.invoicing-table td{border-bottom:1px solid hsl(var(--border));color:hsl(var(--foreground));font-size:.875rem;padding:12px 16px}.invoicing-table tbody tr{transition:background-color .15s ease}.invoicing-table tbody tr:hover{background:hsl(var(--muted)/.3)}.invoicing-table tbody tr:last-child td{border-bottom:none}.invoicing-table tbody tr.row-overdue{background:hsl(var(--destructive)/.03)}.invoicing-table tbody tr.row-overdue:hover{background:hsl(var(--destructive)/.06)}.invoicing-table td.col-amount{font-feature-settings:"tnum";font-family:SF Mono,Fira Code,Fira Mono,monospace;font-variant-numeric:tabular-nums;text-align:right}.invoicing-table td.col-actions{white-space:nowrap}.invoicing-table td.col-actions .actions-row{align-items:center;display:flex;gap:6px}.invoicing-table .project-link{color:hsl(var(--primary));font-weight:600;text-decoration:none}.invoicing-table .project-link:hover{text-decoration:underline}.invoicing-table .client-name{color:hsl(var(--muted-foreground))}.invoicing-table .match-number{color:hsl(var(--success));font-weight:600}.amount-source-label,.invoicing-table .match-none{color:hsl(var(--muted-foreground))}.amount-source-label{display:block;font-size:.6875rem;font-style:italic;font-weight:400}.billing-type-badge{background:hsl(var(--muted));border-radius:4px;color:hsl(var(--foreground));display:inline-flex;font-size:.75rem;font-weight:500;padding:2px 8px;white-space:nowrap}.setup-configured{color:hsl(var(--success));font-weight:600;text-decoration:none}.setup-configured:hover{text-decoration:underline}.setup-not-configured{color:hsl(var(--muted-foreground));text-decoration:none}.setup-not-configured:hover{color:hsl(var(--foreground));text-decoration:underline}.action-needed-stats{display:flex;gap:16px;margin-bottom:20px}.action-needed-stat{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);min-width:140px;padding:16px 24px}.action-needed-stat.action-needed-stat-red{border-color:hsl(var(--destructive)/.3)}.action-needed-stat-value{color:hsl(var(--foreground));font-size:1.75rem;font-weight:700}.action-needed-stat-red .action-needed-stat-value{color:hsl(var(--destructive))}.action-needed-stat-label{color:hsl(var(--muted-foreground));font-size:.8125rem;margin-top:2px}.action-needed-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.action-needed-filter-chip{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:20px;color:hsl(var(--muted-foreground));cursor:pointer;font-size:.8125rem;font-weight:500;padding:6px 14px;transition:all .15s ease}.action-needed-filter-chip:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.action-needed-filter-chip.active{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.all-projects-filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.all-projects-search{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));flex:1 1;font-size:.875rem;min-width:200px;padding:8px 12px}.all-projects-search:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary)/.15);outline:none}.all-projects-search::placeholder{color:hsl(var(--muted-foreground))}.all-projects-select{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer;font-size:.875rem;padding:8px 12px}.all-projects-select:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary)/.15);outline:none}.schedule-action-button{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:6px;color:hsl(var(--foreground));cursor:pointer;font-size:.8125rem;font-weight:600;padding:6px 12px;transition:all .2s ease;white-space:nowrap}.schedule-action-button:hover{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.schedule-action-button:disabled{cursor:not-allowed;opacity:.5}.schedule-action-button:disabled:hover{background:hsl(var(--card));border-color:hsl(var(--border));color:hsl(var(--foreground))}@media (max-width:768px){.invoicing-table td,.invoicing-table th{font-size:.8125rem;padding:8px 10px}.action-needed-stats,.all-projects-filters{flex-direction:column}}.task-form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.task-form-modal{background:hsl(var(--card));border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:100%}.task-form-header{align-items:center;background:hsl(var(--muted));border-bottom:1px solid hsl(var(--border));display:flex;justify-content:space-between;padding:1rem 1.5rem}.task-form-header h2{font-size:1.25rem;font-weight:600;margin:0}.close-button{background:none;border:none;color:hsl(var(--muted-foreground));cursor:pointer;font-size:1.5rem;line-height:1;padding:0}.close-button:hover{color:hsl(var(--foreground))}.task-form{flex:1 1;overflow-y:auto;padding:1.5rem}.form-section{border-bottom:1px solid hsl(var(--border));margin-bottom:1.5rem;padding-bottom:1.5rem}.form-section:last-of-type{border-bottom:none;margin-bottom:0}.form-section h3{color:hsl(var(--foreground));font-size:1rem;font-weight:600;margin:0 0 1rem}.form-group{margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.form-group label{color:hsl(var(--muted-foreground));display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.form-group input[type=email],.form-group input[type=text],.form-group select,.form-group textarea{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-size:.95rem;padding:.5rem .75rem;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary)/.1);outline:none}.form-group textarea{min-height:80px;resize:vertical}.checkbox-group label{align-items:center;cursor:pointer;display:flex;gap:.5rem}.checkbox-group input[type=checkbox]{width:auto}.checkbox-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.checkbox-label input[type=checkbox]{width:auto}.form-row{align-items:flex-end;display:flex;gap:1rem;margin-bottom:1rem}.form-row:last-child{margin-bottom:0}.form-row .form-group{flex:1 1;margin-bottom:0}.form-row .form-group.checkbox-inline{align-items:center;display:flex;flex:0 0 auto;padding-bottom:.5rem}.form-row .form-group.checkbox-inline label{align-items:center;cursor:pointer;display:flex;gap:.375rem;margin:0;white-space:nowrap}.help-text{color:hsl(var(--muted-foreground));font-size:.85rem;margin:0 0 1rem}.email-template-fields{margin-top:1rem}.variables-toolbar{align-items:center;background:hsl(var(--muted));border-radius:4px;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;padding:.75rem}.variables-toolbar span{color:hsl(var(--muted-foreground));font-size:.85rem;margin-right:.5rem}.variable-button{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--muted-foreground));cursor:pointer;font-family:monospace;font-size:.75rem;padding:.25rem .5rem}.variable-button:hover{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.task-form .form-actions{border-top:1px solid hsl(var(--border));display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem}.onboarding-templates-page{width:100%}.onboarding-templates-page button,.section-form-container button{border-radius:4px;box-shadow:none;outline:none}.onboarding-templates-page button:focus-visible,.section-form-container button:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.loading-indicator{color:hsl(var(--muted-foreground));padding:2rem;text-align:center}.section-form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.section-form-modal{background:hsl(var(--card));border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:450px;width:100%}.section-form-header{align-items:center;background:hsl(var(--muted));border-bottom:1px solid hsl(var(--border));border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:1rem 1.5rem}.section-form-header h2{font-size:1.25rem;font-weight:600;margin:0}.section-form-header .close-button{background:none;border:none;color:hsl(var(--muted-foreground));cursor:pointer;font-size:1.5rem;line-height:1;padding:0}.section-form-header .close-button:hover{color:hsl(var(--foreground))}.section-form-content{padding:1.5rem}.section-form-content .form-group{margin-bottom:1.5rem}.section-form-content .form-group label{color:hsl(var(--muted-foreground));display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.section-form-content .form-group input{background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;color:hsl(var(--foreground));font-size:.95rem;padding:.5rem .75rem;width:100%}.section-form-content .form-group input:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary)/.1);outline:none}.section-form-content .form-actions{display:flex;gap:.5rem;justify-content:flex-end}.sections-list{display:flex;flex-direction:column;gap:1rem}.section-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:8px;overflow:hidden}.section-card.inactive{opacity:.7}.section-header{align-items:center;background:hsl(var(--muted));cursor:pointer;display:flex;gap:.75rem;justify-content:space-between;padding:1rem 1.25rem;-webkit-user-select:none;user-select:none}.section-order{flex-direction:row;gap:.25rem}.section-header:hover{background:hsl(var(--accent))}.section-title{align-items:center;display:flex;gap:.75rem}.expand-icon{border-bottom:5px solid #0000;border-left:6px solid hsl(var(--foreground));border-top:5px solid #0000;display:inline-block;height:0;transition:transform .2s ease;width:0}.expand-icon.expanded{transform:rotate(90deg)}.section-title h3{font-size:1.1rem;font-weight:600;margin:0}.task-count{color:hsl(var(--muted-foreground));font-size:.9rem}.inactive-badge{background:#e7b00826;border-radius:4px;color:#e7b008;font-size:.75rem;font-weight:500;padding:.125rem .5rem}.section-actions{display:flex;gap:.5rem}.btn-icon,.section-actions button,.section-form .form-actions button,.task-actions button{box-shadow:none;outline:none}.btn-icon:focus-visible,.section-actions button:focus-visible,.section-form .form-actions button:focus-visible,.task-actions button:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.tasks-list{border-top:1px solid hsl(var(--border))}.task-item{align-items:flex-start;border-bottom:1px solid hsl(var(--border));display:flex;gap:1rem;padding:1rem 1.25rem}.order-buttons{display:flex;flex-direction:column;flex-shrink:0;gap:.25rem}.btn-icon{align-items:center;background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:4px;cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;transition:background-color .15s ease;width:24px}.btn-icon:hover:not(:disabled){background:hsl(var(--accent))}.btn-icon:disabled{cursor:not-allowed;opacity:.3}.arrow-up{border-bottom:5px solid hsl(var(--foreground))}.arrow-down,.arrow-up{border-left:4px solid #0000;border-right:4px solid #0000;display:inline-block;height:0;width:0}.arrow-down{border-top:5px solid hsl(var(--foreground))}.task-item:last-child{border-bottom:none}.task-item.inactive{opacity:.6}.task-info{flex:1 1;min-width:0}.task-title{align-items:center;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;margin-bottom:.25rem}.email-badge{background:hsl(var(--primary)/.1);border-radius:3px;color:hsl(var(--primary));font-size:.7rem;font-weight:500;padding:.125rem .375rem;text-transform:uppercase}.task-meta{display:flex;flex-wrap:wrap;font-size:.85rem;gap:1rem;margin-bottom:.5rem}.task-description,.task-meta{color:hsl(var(--muted-foreground))}.task-description{font-size:.9rem;max-height:3rem;overflow:hidden;text-overflow:ellipsis}.task-actions{display:flex;flex-shrink:0;gap:.5rem}.no-sections,.no-tasks{color:hsl(var(--muted-foreground));padding:2rem;text-align:center}.App{min-height:100vh}
/*# sourceMappingURL=main.0633f6a5.css.map*/