:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#1e293b;background-color:#f8fafc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%}a{font-weight:500;color:#2563eb;text-decoration:none}a:hover{color:#1d4ed8;text-decoration:underline}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600}button,input,select,textarea{font-family:inherit}table{border-spacing:0}:root{--primary-color: #E91E8C;--primary-hover: #D41679;--primary-light: rgba(233, 30, 140, .1);--bg-darkest: #0f0f17;--bg-dark: #1a1a2e;--bg-color: #1a1a2e;--bg-card: #252538;--card-bg: #252538;--bg-card-hover: #2d2d44;--bg-input: #1e1e32;--text-primary: #ffffff;--text-secondary: #a0a0b8;--text-muted: #6b6b80;--border-color: #3a3a52;--border-light: rgba(255, 255, 255, .08);--success-color: #22c55e;--success-bg: rgba(34, 197, 94, .15);--warning-color: #f59e0b;--warning-bg: rgba(245, 158, 11, .15);--danger-color: #ef4444;--danger-bg: rgba(239, 68, 68, .15);--danger-hover: #dc2626;--positive-color: #22c55e;--negative-color: #ef4444;--asset-color: #3b82f6;--liability-color: #a855f7;--secondary-color: #6b6b80;--secondary-hover: #8b8ba0;--header-height: 80px;--nav-height: 50px;--footer-height: 40px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5)}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-feature-settings:"cv02","cv03","cv04","cv11";background-color:var(--bg-dark);color:var(--text-primary);line-height:1.5}.app{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-dark)}.app-header{background:var(--bg-darkest);color:#fff;padding:var(--spacing-md) var(--spacing-xl);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-light)}.app-header h1{margin:0;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.app-header .subtitle{margin:var(--spacing-xs) 0 0 0;opacity:.7;font-size:.875rem;color:var(--text-muted)}.app-nav{background:var(--bg-dark);border-bottom:1px solid var(--border-color);display:flex;padding:0 var(--spacing-xl);gap:var(--spacing-xs)}.nav-tab{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:.9rem;color:var(--text-secondary);transition:all .2s ease}.nav-tab:hover{color:var(--text-primary);background:#ffffff08}.nav-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:600}.tab-icon{font-size:1.1rem}.app-main{flex:1;padding:var(--spacing-xl);max-width:1400px;width:100%;margin:0 auto}.app-footer{background:var(--bg-darkest);border-top:1px solid var(--border-color);padding:var(--spacing-md) var(--spacing-xl);text-align:center;color:var(--text-muted);font-size:.8rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing-md)}.section-header h2{margin:0;font-size:1.25rem;color:var(--text-primary)}.section-header h3{margin:0;font-size:1rem;color:var(--text-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;gap:var(--spacing-xs)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary-color);color:#fff;border:none}.btn-primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 0 20px #e91e8c4d}.btn-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){color:var(--text-primary);border-color:var(--text-secondary);background:#ffffff08}.btn-danger{background:var(--danger-color);color:#fff}.btn-danger:hover:not(:disabled){background:var(--danger-hover)}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:1rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group-wide{grid-column:span 2}.form-group label{font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.025em}.form-group input,.form-group select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.9rem;background:var(--bg-input);color:var(--text-primary);transition:border-color .2s ease,box-shadow .2s ease}.form-group input::placeholder{color:var(--text-muted)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-light)}.form-actions{display:flex;gap:var(--spacing-md);padding-top:var(--spacing-md)}.project-form,.payment-form,.billing-form{background:var(--bg-card);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-bottom:var(--spacing-xl);border:1px solid var(--border-color)}.margin-preview{background:var(--success-bg);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);color:var(--success-color);font-size:.875rem;margin-bottom:var(--spacing-md)}.data-table{width:100%;border-collapse:collapse;background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border-color)}.data-table th,.data-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-light)}.data-table th{background:var(--bg-darkest);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border-color)}.data-table td{color:var(--text-primary)}.data-table tbody tr:hover{background:var(--bg-card-hover)}.data-table tbody tr.editing{background:#e91e8c1a}.data-table tbody tr.has-changes{background:var(--warning-bg)}.cell-primary{font-weight:600;color:var(--text-primary)}.cell-number{font-family:SF Mono,Monaco,Courier New,monospace;text-align:right}.cell-input{padding:var(--spacing-xs)!important}.cell-input input{background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-primary)}.cell-actions{display:flex;gap:var(--spacing-xs)}.empty-state{text-align:center;color:var(--text-muted);padding:var(--spacing-xl)!important;font-style:italic}.totals-row{background:var(--bg-darkest)!important;font-weight:600}.totals-row td{border-bottom:none;color:var(--text-primary)}.status-badge{display:inline-block;padding:2px 8px;border-radius:9999px;font-size:.7rem;font-weight:600;text-transform:uppercase}.status-active{background:var(--success-bg);color:var(--success-color)}.status-completed{background:#3b82f626;color:#3b82f6}.status-on-hold{background:var(--warning-bg);color:var(--warning-color)}.payment-type{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;text-transform:capitalize}.type-deposit{background:#3b82f626;color:#3b82f6}.type-progress{background:var(--success-bg);color:var(--success-color)}.type-final{background:#a855f726;color:#a855f7}.positive{color:var(--positive-color)}.negative{color:var(--negative-color)}.asset{color:var(--asset-color)}.liability{color:var(--liability-color)}.filter-row{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) 0}.filter-row label{font-size:.875rem;color:var(--text-secondary)}.filter-row select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;background:var(--bg-input);color:var(--text-primary)}.filter-total{margin-left:auto;font-weight:600;color:var(--text-primary)}.weekly-timesheet .week-navigation{display:flex;align-items:center;gap:var(--spacing-md)}.week-label{font-weight:600;min-width:200px;text-align:center;color:var(--text-primary)}.timesheet-wrapper{overflow-x:auto}.timesheet-table .hours-input{width:80px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);text-align:right;font-family:SF Mono,Monaco,Courier New,monospace;background:var(--bg-input);color:var(--text-primary)}.timesheet-table .description-input{width:100%;min-width:150px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary)}.timesheet-actions{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.unsaved-indicator{color:var(--warning-color);font-size:.875rem}.period-selector{display:flex;align-items:center;gap:var(--spacing-md)}.period-type-select,.date-picker{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;background:var(--bg-input);color:var(--text-primary)}.period-info{margin-bottom:var(--spacing-lg)}.period-label{font-size:1.1rem;font-weight:600;color:var(--text-primary)}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.summary-card{background:var(--bg-card);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.card-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:var(--spacing-xs)}.card-value{font-size:1.5rem;font-weight:700;font-family:SF Mono,Monaco,Courier New,monospace;color:var(--text-primary)}.card-value.positive{color:var(--positive-color)}.card-value.liability{color:var(--liability-color)}.card-value.asset{color:var(--asset-color)}.card-subtitle{font-size:.75rem;color:var(--text-muted);margin-top:var(--spacing-xs)}.percent-bar-container{display:flex;align-items:center;gap:var(--spacing-sm)}.percent-bar{height:8px;background:var(--primary-color);border-radius:4px;min-width:0;max-width:60px;transition:width .3s ease}.percent-text{font-size:.8rem;min-width:45px;color:var(--text-secondary)}.calculations-table-wrapper{margin-bottom:var(--spacing-xl)}.calculations-table-wrapper h3{margin-bottom:var(--spacing-md);color:var(--text-primary)}.journal-entries-section{background:var(--bg-card);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.journal-entries{margin-top:var(--spacing-lg)}.journal-entry{background:var(--bg-dark);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);overflow:hidden}.entry-header{background:var(--bg-darkest);padding:var(--spacing-sm) var(--spacing-md);display:flex;gap:var(--spacing-md);font-size:.875rem}.entry-date{font-weight:600;color:var(--text-primary)}.entry-description{color:var(--text-secondary)}.journal-table{width:100%;border-collapse:collapse}.journal-table th,.journal-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-size:.875rem}.journal-table th{background:transparent;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.journal-table td{color:var(--text-primary)}.journal-table .indent{padding-left:var(--spacing-xl)}.alert{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.alert-info{background:#3b82f626;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}@media(max-width:768px){.app-header{flex-direction:column;gap:var(--spacing-md);text-align:center}.app-nav{padding:0 var(--spacing-md);overflow-x:auto}.nav-tab{padding:var(--spacing-sm) var(--spacing-md)}.tab-label{display:none}.app-main{padding:var(--spacing-md)}.section-header{flex-direction:column;align-items:flex-start}.form-grid{grid-template-columns:1fr}.form-group-wide{grid-column:span 1}.week-navigation{flex-wrap:wrap}.summary-cards{grid-template-columns:1fr 1fr}}@media(max-width:480px){.summary-cards{grid-template-columns:1fr}}.header-actions{display:flex;align-items:center;gap:var(--spacing-md)}.auth-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-dark)}.loading-spinner{text-align:center;color:var(--text-secondary)}.spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto var(--spacing-md)}@keyframes spin{to{transform:rotate(360deg)}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-darkest);padding:var(--spacing-xl)}.login-container{background:var(--bg-card);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:500px;width:100%;border:1px solid var(--border-color)}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-header h1{margin:0;font-size:1.75rem;color:var(--primary-color)}.login-header p{margin:var(--spacing-sm) 0 0 0;color:var(--text-secondary)}.config-warning{background:var(--warning-bg);border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.config-warning h3{margin:0 0 var(--spacing-sm) 0;color:var(--warning-color);font-size:1rem}.config-warning p{margin:0 0 var(--spacing-sm) 0;font-size:.875rem;color:var(--text-secondary)}.config-warning ol{margin:var(--spacing-sm) 0;padding-left:var(--spacing-lg)}.config-warning li{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.config-warning a{color:var(--warning-color);text-decoration:underline}.config-warning code{background:#ffffff1a;padding:2px 6px;border-radius:var(--radius-sm);font-size:.8rem;color:var(--text-primary)}.demo-note{margin-top:var(--spacing-md)!important;font-weight:600}.error-message{background:var(--danger-bg);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);color:var(--danger-color);font-size:.875rem}.login-actions{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.google-signin-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;color:var(--text-primary)}.google-signin-btn:hover{background:var(--bg-card-hover);border-color:var(--text-muted)}.google-signin-btn svg{width:20px;height:20px}.demo-mode-btn{display:flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease}.demo-mode-btn:hover{background:var(--primary-hover);box-shadow:0 0 20px #e91e8c4d}.login-features{border-top:1px solid var(--border-color);padding-top:var(--spacing-lg)}.login-features h3{margin:0 0 var(--spacing-md) 0;font-size:.9rem;color:var(--text-primary)}.login-features ul{margin:0;padding:0 0 0 var(--spacing-lg)}.login-features li{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.user-menu{position:relative}.user-menu.demo-mode{display:flex;align-items:center;gap:var(--spacing-sm)}.demo-badge{background:#e91e8c33;padding:4px 12px;border-radius:9999px;font-size:.75rem;font-weight:600;color:var(--primary-color)}.user-menu .demo-note{font-size:.7rem;opacity:.8;color:var(--text-muted)}.user-menu-trigger{background:none;border:none;cursor:pointer;padding:0;border-radius:50%;overflow:hidden}.user-avatar{width:36px;height:36px;border-radius:50%;border:2px solid var(--primary-light);object-fit:cover}.user-avatar-placeholder{width:36px;height:36px;border-radius:50%;background:var(--primary-light);border:2px solid var(--primary-color);display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600;color:var(--primary-color)}.user-menu-dropdown{position:absolute;top:100%;right:0;margin-top:var(--spacing-sm);background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:200px;z-index:1000;overflow:hidden;border:1px solid var(--border-color)}.user-menu-header{padding:var(--spacing-md);border-bottom:1px solid var(--border-color)}.user-name{display:block;font-weight:600;color:var(--text-primary);font-size:.9rem}.user-email{display:block;color:var(--text-muted);font-size:.8rem;margin-top:2px}.user-menu-divider{height:1px;background:var(--border-color)}.user-menu-item{width:100%;padding:var(--spacing-md);background:none;border:none;text-align:left;cursor:pointer;font-size:.875rem;color:var(--text-primary);transition:background .2s ease}.user-menu-item:hover{background:var(--bg-card-hover)}.user-menu-item.signout{color:var(--danger-color)}.user-menu-item.signout:hover{background:var(--danger-bg)}.form-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.form-section:last-of-type{border-bottom:none;margin-bottom:var(--spacing-md)}.form-section-title{font-size:.9rem;font-weight:600;color:var(--text-secondary);margin:0 0 var(--spacing-md) 0;text-transform:uppercase;letter-spacing:.05em}.form-hint{display:block;font-size:.75rem;color:var(--text-muted);margin-top:var(--spacing-xs)}.readonly-input{background:var(--bg-darkest)!important;cursor:not-allowed;color:var(--text-muted)!important}.method-select{font-weight:500}.method-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:.7rem;font-weight:600;text-transform:uppercase;background:#3b82f626;color:#3b82f6}.method-badge.labor-hours{background:var(--success-bg);color:var(--success-color)}.method-badge.milestones{background:var(--warning-bg);color:var(--warning-color)}.method-badge.straight-line{background:#e91e8c26;color:var(--primary-color)}.loss-warning{background:var(--danger-bg)!important;border:1px solid rgba(239,68,68,.3);color:var(--danger-color)!important}.loss-indicator{font-weight:700;color:var(--danger-color)}.loss-contract-row{background:var(--danger-bg)!important}.loss-contract-row:hover{background:#ef444433!important}.health-indicator{display:inline-flex;align-items:center;gap:4px;font-size:.8rem}.health-healthy{color:var(--success-color)}.health-at-risk{color:var(--warning-color)}.health-loss{color:var(--danger-color)}.status-loss-contract{background:var(--danger-bg);color:var(--danger-color)}.settings-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.settings-modal{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:700px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--border-color)}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.settings-header h2{margin:0;font-size:1.25rem;color:var(--text-primary)}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);padding:0;line-height:1}.close-btn:hover{color:var(--text-primary)}.settings-content{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.settings-section{margin-bottom:var(--spacing-xl)}.settings-section:last-child{margin-bottom:0}.settings-section h3{margin:0 0 var(--spacing-md) 0;font-size:1rem;color:var(--text-primary)}.section-header-inline{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.section-header-inline h3{margin:0}.section-description{font-size:.875rem;color:var(--text-secondary);margin:0 0 var(--spacing-lg) 0}.account-mapping-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.account-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.settings-footer{display:flex;justify-content:flex-end;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);border-top:1px solid var(--border-color);background:var(--bg-dark)}.success-message{color:var(--success-color);font-size:.875rem;margin-right:auto}.billing-tracker{width:100%}.billing-status{display:inline-block;padding:2px 8px;border-radius:9999px;font-size:.7rem;font-weight:600;text-transform:uppercase}.billing-status.draft{background:#6b6b8033;color:var(--text-secondary)}.billing-status.sent{background:#3b82f626;color:#3b82f6}.billing-status.paid{background:var(--success-bg);color:var(--success-color)}.billing-status.void{background:var(--danger-bg);color:var(--danger-color)}.billing-type{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;text-transform:capitalize}.billing-type.progress{background:var(--success-bg);color:var(--success-color)}.billing-type.milestone{background:var(--warning-bg);color:var(--warning-color)}.billing-type.retention{background:#3b82f626;color:#3b82f6}.billing-type.final{background:#a855f726;color:#a855f7}.reports-container{width:100%}.reports-nav{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);border-bottom:1px solid var(--border-color);padding-bottom:var(--spacing-md)}.report-tab{padding:var(--spacing-sm) var(--spacing-lg);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-secondary);transition:all .2s ease}.report-tab:hover{background:#ffffff08;color:var(--text-primary)}.report-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.report-section{background:var(--bg-card);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing-md)}.report-header h3{margin:0;font-size:1.1rem;color:var(--text-primary)}.report-actions{display:flex;gap:var(--spacing-sm)}.wip-table{width:100%;overflow-x:auto}.wip-table .data-table{min-width:900px}.over-under-positive{color:var(--positive-color);font-weight:600}.over-under-negative{color:var(--danger-color);font-weight:600}.backlog-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.backlog-card{background:var(--bg-dark);padding:var(--spacing-lg);border-radius:var(--radius-md);text-align:center;border:1px solid var(--border-color)}.backlog-card .card-label{font-size:.75rem;color:var(--text-muted);margin-bottom:var(--spacing-xs);text-transform:uppercase}.backlog-card .card-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.profitability-dashboard{display:flex;flex-direction:column;gap:var(--spacing-xl)}.health-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md)}.health-card{background:var(--bg-card);padding:var(--spacing-lg);border-radius:var(--radius-md);text-align:center;border:1px solid var(--border-color)}.health-card.healthy{border-left:4px solid var(--success-color)}.health-card.at-risk{border-left:4px solid var(--warning-color)}.health-card.loss{border-left:4px solid var(--danger-color)}.health-card .count{font-size:2rem;font-weight:700;margin-bottom:var(--spacing-xs)}.health-card .label{font-size:.875rem;color:var(--text-secondary)}.health-card.healthy .count{color:var(--success-color)}.health-card.at-risk .count{color:var(--warning-color)}.health-card.loss .count{color:var(--danger-color)}.contract-list{margin-top:var(--spacing-lg)}.contract-list h4{margin:0 0 var(--spacing-md) 0;font-size:1rem;color:var(--text-primary)}.export-buttons{display:flex;gap:var(--spacing-sm)}.btn-export{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.8rem;font-weight:500;cursor:pointer;color:var(--text-secondary);transition:all .2s ease}.btn-export:hover{background:var(--bg-card-hover);border-color:var(--primary-color);color:var(--primary-color)}.btn-export.pdf{color:var(--danger-color)}.btn-export.pdf:hover{border-color:var(--danger-color);background:var(--danger-bg)}.btn-export.excel{color:var(--success-color)}.btn-export.excel:hover{border-color:var(--success-color);background:var(--success-bg)}.report-empty{text-align:center;padding:var(--spacing-xl);color:var(--text-muted)}.report-empty p{margin:0;font-style:italic}@media(max-width:768px){.reports-nav{flex-wrap:wrap}.report-tab{flex:1;text-align:center;min-width:100px}.report-header{flex-direction:column;align-items:flex-start}.report-actions{width:100%;justify-content:flex-start}.account-row{grid-template-columns:1fr}}
