:root{--color-primary: #6366f1;--color-primary-dark: #4f46e5;--color-primary-light: #818cf8;--color-primary-gradient: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--color-secondary: #e5e7eb;--color-secondary-dark: #d1d5db;--color-accent: #8b5cf6;--color-success: #10b981;--color-success-bg: #d1fae5;--color-warning: #f59e0b;--color-warning-bg: #fef3c7;--color-danger: #ef4444;--color-danger-dark: #dc2626;--color-danger-bg: #fee2e2;--color-error: #ef4444;--color-text: #0f172a;--color-text-secondary: #475569;--color-text-muted: #94a3b8;--color-text-light: #cbd5e1;--color-text-inverse: #ffffff;--color-bg: #f8fafc;--color-bg-secondary: #f1f5f9;--color-surface: #ffffff;--color-surface-elevated: #ffffff;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -1px rgb(0 0 0 / .06);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -2px rgb(0 0 0 / .05);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 10px 10px -5px rgb(0 0 0 / .04);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1)}@media(prefers-color-scheme:dark){:root{--color-text: #f1f5f9;--color-text-secondary: #94a3b8;--color-text-muted: #64748b;--color-text-light: #475569;--color-bg: #0f172a;--color-bg-secondary: #1e293b;--color-surface: #1e293b;--color-surface-elevated: #334155;--color-border: #334155;--color-border-light: #1e293b;--color-secondary: #334155;--color-secondary-dark: #475569;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -1px rgb(0 0 0 / .3);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -2px rgb(0 0 0 / .3);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .5), 0 10px 10px -5px rgb(0 0 0 / .3)}}*{box-sizing:border-box}html{font-family:var(--font-sans);line-height:1.5;font-weight:400;color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(to bottom,var(--color-bg) 0%,var(--color-bg-secondary) 100%);color:var(--color-text);transition:background var(--transition-slow)}#root{width:100%;min-height:100vh}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.25}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}@keyframes revenue-float-up{0%{opacity:1;transform:translateY(0) scale(1)}70%{opacity:1;transform:translateY(-60px) scale(1.1)}to{opacity:0;transform:translateY(-100px) scale(.9)}}.revenue-toast{position:fixed;top:80px;left:50%;transform:translate(-50%);z-index:9999;font-size:1.3rem;font-weight:800;color:var(--color-success, #16a34a);background:color-mix(in srgb,var(--color-success, #16a34a) 10%,white);border:2px solid var(--color-success, #16a34a);border-radius:12px;padding:6px 18px;pointer-events:none;animation:revenue-float-up 1.5s ease-out forwards;font-variant-numeric:tabular-nums;white-space:nowrap;box-shadow:0 4px 12px #0000001a}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{padding:var(--space-sm) var(--space-lg);background:var(--color-primary-gradient);color:var(--color-text-inverse);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.app-header__content{max-width:1920px;margin:0 auto;width:100%;position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--space-xs)}.app-header__row{display:flex;align-items:center}.app-header__row--top{justify-content:space-between;gap:var(--space-md);flex-wrap:wrap}.app-header__row--files{width:100%}.app-header__title{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}.app-header__actions{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap;min-height:2.5rem}.app-header .btn-primary{padding:var(--space-xs) var(--space-md);font-size:.85rem;background-color:#fff3;color:var(--color-text-inverse);border:1px solid rgba(255,255,255,.4);box-shadow:none}.app-header .btn-primary:hover:not(:disabled){background-color:#ffffff59;border-color:#fff9;color:var(--color-text-inverse);box-shadow:none;transform:none}.app-header .btn-secondary{padding:var(--space-xs) var(--space-md);font-size:.85rem;background-color:transparent;color:#fffc;border:1px solid rgba(255,255,255,.2);box-shadow:none}.app-header .btn-secondary:hover:not(:disabled){background-color:#ffffff1a;border-color:#ffffff59;color:var(--color-text-inverse);box-shadow:none}.app-header:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:pulse 15s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.app-header__logo{height:36px;width:36px;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.15))}.app-header__brand{font-family:Nunito,sans-serif;background:linear-gradient(135deg,#fff,#e0e7ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-header h1{margin:0;font-size:1.5rem;font-weight:800;letter-spacing:-.02em;white-space:nowrap}.app-subtitle{margin:0;opacity:.75;font-size:.8rem;font-weight:400;white-space:nowrap}.app-main{flex:1;padding:var(--space-2xl) var(--space-xl);max-width:1920px;width:100%;margin:0 auto;display:grid;gap:var(--space-2xl)}.results-section{background-color:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-border);transition:all var(--transition-base);position:relative;overflow:hidden}.results-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--color-primary-gradient);opacity:0;transition:opacity var(--transition-base)}.results-section:hover:before{opacity:1}.results-section:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.results-section p{margin:0;color:var(--color-text-secondary);line-height:1.6}.app-footer{padding:var(--space-xl);text-align:center;color:var(--color-text-muted);font-size:.875rem;background:var(--color-surface);border-top:1px solid var(--color-border);margin-top:var(--space-2xl)}.app-footer p{margin:0;font-weight:500}@media(max-width:767px){.app-header{padding:var(--space-sm) var(--space-md)}.app-header__row--top{flex-direction:column;align-items:stretch;gap:var(--space-xs)}.app-header__title{flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space-xs)}.app-header__logo{height:28px;width:28px}.app-header h1{font-size:1.25rem}.app-subtitle{font-size:.75rem}.app-header__actions{justify-content:flex-start}.app-main{padding:var(--space-lg) var(--space-md);gap:var(--space-lg)}.results-section{padding:var(--space-lg)}}.empty-state-message{font-size:1.5rem;color:var(--color-text-muted);text-align:center;place-self:center;min-height:50vh;display:flex;align-items:center;justify-content:center;margin:0}.results-section__hint{color:var(--color-text-muted);font-style:italic;text-align:center;padding:var(--space-2xl);background:var(--color-bg);border-radius:var(--radius-lg);border:2px dashed var(--color-border)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2xl);text-align:center;background:var(--color-bg);border-radius:var(--radius-lg)}.loading-state__spinner{width:64px;height:64px;border:5px solid var(--color-border);border-top-color:var(--color-primary);border-right-color:var(--color-accent);border-radius:50%;animation:spin 1s cubic-bezier(.68,-.55,.265,1.55) infinite;margin-bottom:var(--space-lg);box-shadow:0 4px 12px #6366f133}.loading-state p{color:var(--color-text);font-weight:600;font-size:1.1rem;margin-top:var(--space-md)}.reasoning-log{margin-top:var(--space-lg);width:100%;max-width:600px;text-align:left}.reasoning-log h3{font-size:.875rem;color:var(--color-text-muted);margin:0 0 var(--space-sm);text-transform:uppercase;letter-spacing:.05em}.reasoning-log__content{background-color:var(--color-bg);border-radius:var(--radius-md);padding:var(--space-md);max-height:200px;overflow-y:auto;font-family:Monaco,Consolas,monospace;font-size:.8rem;line-height:1.5}.reasoning-log__content p{margin:0 0 var(--space-xs);color:var(--color-text)}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2xl);text-align:center;background:linear-gradient(135deg,#ef44440d,#ef444405);border-radius:var(--radius-xl);border:2px solid var(--color-danger-bg)}.error-state__icon{font-size:4rem;margin-bottom:var(--space-lg);animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.error-state__message{color:var(--color-error);font-weight:600;font-size:1.1rem;margin:0 0 var(--space-xl);max-width:500px;line-height:1.6}.summary-banner{display:flex;justify-content:center;gap:var(--space-lg);padding:var(--space-xl);background:var(--color-primary-gradient);border-radius:var(--radius-xl);margin-bottom:var(--space-xl);color:var(--color-text-inverse);box-shadow:var(--shadow-xl);position:relative;overflow:hidden;animation:slideInUp .5s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.summary-banner:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.15) 0%,transparent 70%);animation:float 8s ease-in-out infinite}@keyframes float{0%,to{transform:translate(0)}50%{transform:translate(-20px,-20px)}}.summary-banner__item{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;z-index:1;padding:var(--space-md) var(--space-xl);border-radius:var(--radius-lg);transition:all var(--transition-base);flex:1 1 0;max-width:220px}.summary-banner__item:hover{background:#ffffff1a;transform:translateY(-2px)}.summary-banner__value{font-size:2.5rem;font-weight:800;line-height:1;margin-bottom:var(--space-xs);text-shadow:0 2px 4px rgba(0,0,0,.1)}.summary-banner__label{font-size:.75rem;opacity:.95;text-transform:uppercase;letter-spacing:.1em;font-weight:600}.summary-banner__item--flagged .summary-banner__value{color:#fecaca}.summary-banner__item--valid .summary-banner__value{color:#86efac}.summary-banner__item--approved .summary-banner__value{color:#6ee7b7}.summary-banner__item--rejected .summary-banner__value{color:#fca5a5}@media(max-width:600px){.summary-banner{flex-wrap:wrap}}.file-upload{width:100%}.file-upload--disabled{opacity:.6;pointer-events:none}.file-upload__error{background-color:var(--color-error);color:var(--color-text-inverse);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-md);font-size:.875rem}.file-upload__dropzones{display:grid;gap:var(--space-md)}.file-upload__dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-lg);border:2px dashed var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);cursor:pointer;transition:all var(--transition-base);min-height:120px}.file-upload__dropzone:hover{border-color:var(--color-primary);background-color:#2563eb0d}.file-upload__dropzone--dragging{border-color:var(--color-primary);background-color:#2563eb1a;transform:scale(1.02)}.file-upload__dropzone--has-file,.file-upload__dropzone--loaded{border-color:var(--color-success);border-style:solid;background-color:#16a34a0d}.file-upload__input{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.file-upload__icon{display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-xs)}.file-upload__svg-icon{width:2rem;height:2rem;color:currentColor}.file-upload__label{font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs)}.file-upload__hint{font-size:.875rem;color:var(--color-text-muted)}.file-upload__file-info{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-xs)}.file-upload__filename{font-size:.875rem;color:var(--color-success);font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-upload__clear{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;border-radius:50%;background-color:var(--color-text-muted);color:var(--color-text-inverse);font-size:14px;cursor:pointer;transition:background-color var(--transition-base)}.file-upload__clear:hover{background-color:var(--color-error)}.file-upload__replace-btn{padding:.1rem .4rem;font-size:.7rem;font-weight:600;color:var(--color-success);background:#16a34a1a;border:1px solid rgba(22,163,74,.3);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);flex-shrink:0}.file-upload__replace-btn:hover{background:#16a34a33;border-color:#16a34a80}.file-upload__replace-btn:disabled{opacity:.5;cursor:not-allowed}.file-upload__ready{margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);background-color:#16a34a1a;color:var(--color-success);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;text-align:center}@media(min-width:400px){.file-upload__dropzones{grid-template-columns:1fr 1fr}}.file-upload--header .file-upload__dropzones{grid-template-columns:1fr 1fr;gap:var(--space-sm)}.file-upload--header .file-upload__dropzone{min-height:44px;padding:var(--space-xs) var(--space-md);flex-direction:row;gap:var(--space-sm);background-color:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md)}.file-upload--header .file-upload__dropzone:hover{background-color:#ffffff26;border-color:#fff6}.file-upload--header .file-upload__dropzone--dragging{background-color:#fff3;border-color:#ffffff80;transform:scale(1.02)}.file-upload--header .file-upload__dropzone--has-file{border-color:#86efac80;background-color:#16a34a1f}.file-upload--header .file-upload__dropzone--loaded{border-color:#86efac80;border-style:solid;background-color:#16a34a1f}.file-upload--header .file-upload__replace-btn{color:#86eface6;background:#ffffff14;border-color:#ffffff26;font-size:.65rem}.file-upload--header .file-upload__replace-btn:hover{background:#fff3;border-color:#ffffff59;color:var(--color-text-inverse)}.file-upload--header .file-upload__icon{margin-bottom:0}.file-upload--header .file-upload__svg-icon{width:1.125rem;height:1.125rem}.file-upload--header .file-upload__label{color:var(--color-text-inverse);font-size:.8rem;font-weight:600;margin-bottom:0}.file-upload--header .file-upload__hint{font-size:.7rem;color:#fff9}.file-upload--header .file-upload__file-info{margin-top:0}.file-upload--header .file-upload__filename{color:#86eface6;max-width:150px}.file-upload--header .file-upload__ready{margin-top:var(--space-sm);background-color:#16a34a33;color:#86efacf2}.file-upload--header .file-upload__error{margin-bottom:var(--space-sm)}@media(max-width:767px){.file-upload--header .file-upload__dropzones{grid-template-columns:1fr}}@media(max-width:400px){.file-upload--header .file-upload__filename{max-width:100px}}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1rem}.card-title{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--color-text)}.card-content{color:var(--color-text-secondary)}.reasoning-panel{background-color:#64748b0d;border:1px solid var(--color-border)}.reasoning-panel__header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.reasoning-panel__header:hover{background-color:#64748b1a}.reasoning-panel__header:focus{outline:2px solid var(--color-primary);outline-offset:-2px}.reasoning-panel__icon{font-size:1.25rem}.reasoning-panel__title{font-weight:600;flex:1}.reasoning-panel__status{font-size:.75rem;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background-color:var(--color-bg);color:var(--color-text-muted)}.reasoning-panel__status--active{display:flex;align-items:center;gap:var(--space-xs);background-color:#2563eb1a;color:var(--color-primary)}.reasoning-panel__pulse{width:8px;height:8px;border-radius:50%;background-color:var(--color-primary);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.reasoning-panel__expand{font-size:.75rem;color:var(--color-text-muted)}.reasoning-panel__content{padding:var(--space-md);padding-top:0;overflow-y:auto;position:relative}.reasoning-panel__waiting{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);color:var(--color-text-muted);font-style:italic}.reasoning-panel__dots{display:flex;gap:2px}.reasoning-panel__dots span{animation:bounce 1.4s ease-in-out infinite}.reasoning-panel__dots span:nth-child(1){animation-delay:0s}.reasoning-panel__dots span:nth-child(2){animation-delay:.2s}.reasoning-panel__dots span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}.reasoning-panel__chunk{font-family:Monaco,Consolas,monospace;font-size:.8rem;line-height:1.6;color:var(--color-text);padding:var(--space-xs) 0;border-bottom:1px solid rgba(100,116,139,.1);white-space:pre-wrap;word-break:break-word}.reasoning-panel__chunk:last-child{border-bottom:none}.reasoning-panel__scroll-btn{position:sticky;bottom:0;left:50%;transform:translate(-50%);padding:var(--space-xs) var(--space-md);border:none;border-radius:var(--radius-full);background-color:var(--color-primary);color:var(--color-text-inverse);font-size:.75rem;font-weight:500;cursor:pointer;box-shadow:var(--shadow-md);transition:all .2s}.reasoning-panel__scroll-btn:hover{background-color:var(--color-primary-dark);transform:translate(-50%) translateY(-2px)}@media(prefers-color-scheme:dark){.reasoning-panel{background-color:#64748b1a}.reasoning-panel__chunk{border-color:#94a3b81a}}.btn{padding:.875rem 2rem;border:none;border-radius:var(--radius-lg);font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden;box-shadow:var(--shadow-sm);letter-spacing:.025em}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:active:not(:disabled):before{width:300px;height:300px}.btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-primary{background:var(--color-primary-gradient);color:#fff;box-shadow:0 4px 12px #6366f14d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #6366f166}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background-color:var(--color-surface);color:var(--color-text);border:2px solid var(--color-border);box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled){background-color:var(--color-bg);border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary:active:not(:disabled){transform:translateY(0)}.btn-danger{background:linear-gradient(135deg,var(--color-danger) 0%,var(--color-danger-dark) 100%);color:#fff;box-shadow:0 4px 12px #ef44444d}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ef444466}.btn-danger:active:not(:disabled){transform:translateY(0)}.project-group-view{display:flex;flex-direction:column;gap:var(--space-lg)}.project-group-view__empty{text-align:center;padding:var(--space-2xl);color:var(--color-text-muted);background:var(--color-bg);border-radius:var(--radius-lg);border:2px dashed var(--color-border)}.project-group-view__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md);padding:var(--space-lg);background:var(--color-bg);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.project-group-view__stats{display:flex;gap:var(--space-xl)}.project-group-view__stat{display:flex;flex-direction:column;align-items:center}.project-group-view__stat-value{font-size:1.5rem;font-weight:700;color:var(--color-text);line-height:1}.project-group-view__stat-label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:var(--space-xs)}.project-group-view__actions{display:flex;align-items:center;gap:var(--space-md)}.project-group-view__analyzing{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-primary);font-weight:500}.project-group-view__spinner{width:20px;height:20px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.project-group-view__error{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--color-danger-bg);border:1px solid var(--color-danger);border-radius:var(--radius-md)}.project-group-view__error-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--color-danger);color:#fff;border-radius:50%;font-weight:700;font-size:.875rem;flex-shrink:0}.project-group-view__error-text{flex:1;color:var(--color-danger);font-size:.875rem}.project-group-view__list{display:flex;flex-direction:column;gap:var(--space-md)}.project-group-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-base)}.project-group-card:hover{box-shadow:var(--shadow-md)}.project-group-card--expanded{box-shadow:var(--shadow-lg)}.project-group-card__header{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast)}.project-group-card__header:hover{background:var(--color-bg)}.project-group-card__chevron{font-size:.75rem;color:var(--color-text-muted);transition:transform var(--transition-fast);flex-shrink:0;width:16px;text-align:center}.project-group-card__info{flex:1;min-width:0}.project-group-card__name{font-size:1rem;font-weight:600;color:var(--color-text);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-group-card__id{font-size:.75rem;color:var(--color-text-muted);font-family:var(--font-mono)}.project-group-card__insights{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}.project-group-card__metrics{display:flex;gap:var(--space-lg);flex-shrink:0;margin-left:auto}.project-group-card__metric{font-size:.875rem;color:var(--color-text-secondary);white-space:nowrap;font-variant-numeric:tabular-nums}.project-group-card__metric strong{color:var(--color-text)}.project-group-card__all-ok{display:inline-flex;align-items:center;gap:var(--space-xs);padding:.25rem .75rem;background:#10b9811a;color:var(--color-success);border-radius:var(--radius-full);font-size:.8rem;font-weight:600}.project-group-card__status-counts{display:flex;gap:var(--space-xs)}.project-group-card__count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 var(--space-sm);border-radius:var(--radius-full);font-size:.75rem;font-weight:600}.project-group-card__count--valid{background:#10b98126;color:var(--color-success)}.project-group-card__count--flagged{background:#ef444426;color:var(--color-error)}.project-group-card__count--resolved{background:#3b82f626;color:#3b82f6}.project-group-card__count--approved{background:#10b98126;color:#059669}.project-group-card__count--rejected{background:#ef444426;color:#b91c1c}.project-group-card__count--unreviewed{background:#64748b26;color:var(--color-text-muted)}.project-group-card__entries{border-top:1px solid var(--color-border);overflow-x:auto}.project-group-card__entries .collapsible-section__body{padding:0}.project-group-card__table{width:100%;border-collapse:collapse;font-size:.8rem;table-layout:fixed}.project-group-card__table th{text-align:left;padding:var(--space-sm) var(--space-md);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);background:var(--color-bg);border-bottom:1px solid var(--color-border);white-space:nowrap}.project-group-card__sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none}.project-group-card__sortable-th:hover{color:var(--color-text)}.project-group-card__sort-indicator{margin-left:var(--space-xs);font-size:.6rem}.project-group-card__sort-indicator--inactive{opacity:.4}.project-group-card__sortable-th:hover .project-group-card__sort-indicator--inactive{opacity:.7}.project-group-card__table td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border-light);color:var(--color-text);vertical-align:middle}.project-group-card__table th:nth-child(5),.project-group-card__table th:nth-child(8),.project-group-card__table th:nth-child(9),.project-group-card__table th:nth-child(10),.project-group-card__table td:nth-child(5),.project-group-card__table td:nth-child(8),.project-group-card__table td:nth-child(9),.project-group-card__table td:nth-child(10){text-align:center}.project-group-card__description{vertical-align:top}.project-group-card__row{transition:background var(--transition-fast)}.project-group-card__row:hover{background:var(--color-bg)}.project-group-card__row--flagged{background:#ef44440a}.project-group-card__row--flagged:hover{background:#ef444414}.project-group-card__row--approved{background:#10b9810a}.project-group-card__row--approved:hover{background:#10b98114}.project-group-card__row--rejected{background:#ef44440a}.project-group-card__row--rejected:hover{background:#ef444414}.project-group-card__row--manually_resolved{background:#3b82f60a}.project-group-card__row--editing td{background:var(--color-bg-secondary)}.project-group-card__inline-input{width:100%;padding:.25rem .4rem;border:1px solid var(--color-primary);border-radius:var(--radius-sm, .25rem);font:inherit;font-size:.8rem;background:var(--color-surface);box-sizing:border-box}.project-group-card__inline-input--hours{width:4rem}.project-group-card__inline-input--date{width:8.5rem}.project-group-card__inline-input:focus{outline:none;box-shadow:0 0 0 2px var(--color-primary-light, rgba(59, 130, 246, .2))}.project-group-card__date{white-space:nowrap}.project-group-card__description{overflow:hidden;white-space:normal;font-size:.78rem;line-height:1.35}.project-group-card__description-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-group-card__edit-btn{padding:.2rem .4rem;font-size:.7rem;color:var(--color-primary);background:transparent;border:1px solid var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.project-group-card__edit-btn:hover{background:var(--color-primary);color:#fff}.project-group-card__detail-row td{padding:0 var(--space-md) var(--space-md);border-bottom:1px solid var(--color-border-light);background:var(--color-bg)}.project-group-card__history-row td{padding:var(--space-sm) var(--space-md) var(--space-md);border-bottom:1px solid var(--color-border-light);background:var(--color-bg)}@keyframes entry-highlight{0%{background-color:#f59e0b40}to{background-color:transparent}}.project-group-card__row--highlighted>td{animation:entry-highlight 1.5s ease-out}.project-group-card__detail{padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.8rem}.project-group-card__detail-section{margin-bottom:var(--space-sm);line-height:1.5}.project-group-card__detail-section:last-child{margin-bottom:0}.project-group-card__detail-section ul{margin:var(--space-xs) 0 0 var(--space-lg);padding:0}.project-group-card__detail-section li{margin-bottom:var(--space-xs)}.project-group-card__bulk-approve-btn{padding:.25rem .75rem;font-size:.75rem;font-weight:600;color:#059669;background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.project-group-card__bulk-approve-btn:hover{background:#10b98133;border-color:#059669}.project-group-card__actions-cell{white-space:nowrap}.project-group-card__actions-wrap{display:flex;gap:var(--space-xs);align-items:center;justify-content:center}.project-group-card__action-buttons{display:flex;align-items:center;gap:var(--space-xs)}.project-group-card__approve-btn{padding:.2rem .4rem;font-size:.7rem;font-weight:600;color:#059669;background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.project-group-card__approve-btn:hover{background:#059669;color:#fff;border-color:#059669}.project-group-card__reject-btn{padding:.2rem .4rem;font-size:.7rem;font-weight:600;color:#b91c1c;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.project-group-card__reject-btn:hover{background:#b91c1c;color:#fff;border-color:#b91c1c}.project-group-card__decided-label{font-size:.7rem;font-weight:600;padding:.15rem .4rem;border-radius:var(--radius-sm)}.project-group-card__decided-label--approved{color:#059669;background:#10b9811a}.project-group-card__decided-label--rejected{color:#b91c1c;background:#ef44441a}.project-group-card__decided-label--edited{color:#3b82f6;background:#3b82f61a}.project-group-card__metric--progress{color:var(--color-primary)}.project-group-card__analyze-slot{min-width:120px;flex-shrink:0;display:flex;justify-content:flex-end}.project-group-card__analyze-btn{padding:.25rem .75rem;font-size:.75rem;font-weight:600;color:#fff;background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;display:inline-flex;align-items:center;gap:var(--space-xs)}.project-group-card__analyze-btn:hover:not(:disabled){opacity:.9}.project-group-card__analyze-btn:disabled{opacity:.4;cursor:not-allowed}.project-group-card__analyze-btn--analyzing{background:var(--color-bg);color:var(--color-text-muted);border-color:var(--color-border);cursor:default}.project-group-card__analyze-btn--reanalyze{background:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.project-group-card__analyze-btn--reanalyze:hover{background:var(--color-primary);color:#fff}.project-group-card__analyze-spinner{display:inline-block;width:12px;height:12px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:analyze-spin .8s linear infinite}@keyframes analyze-spin{to{transform:rotate(360deg)}}.project-group-card__approve-all-btn{padding:.25rem .75rem;font-size:.75rem;font-weight:600;color:#059669;background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.project-group-card__approve-all-btn:hover{background:#059669;color:#fff;border-color:#059669}.project-group-card__count--awaiting{background:#64748b26;color:var(--color-text-muted)}.project-group-card__count--reviewed{background:#10b98126;color:var(--color-success)}.project-group-card__entry-spinner{display:block;margin:0 auto;width:12px;height:12px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:analyze-spin .8s linear infinite}.project-group-card__proposal-indicator{display:inline-block;padding:.15rem .4rem;background:#8b5cf626;color:#8b5cf6;font-size:.7rem;font-weight:600;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.project-group-card__tooltip{position:fixed;z-index:100;min-width:360px;max-width:480px;max-height:300px;overflow-y:auto;padding:var(--space-md);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-left:3px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:.8rem;line-height:1.5;color:var(--color-text)}.project-group-card__tooltip-title{margin:0 0 var(--space-sm);font-size:.8rem;font-weight:600;color:var(--color-text)}.project-group-card__tooltip-issue{margin:0 0 var(--space-sm) 0}.project-group-card__tooltip-reasoning{margin:0 0 var(--space-sm);color:var(--color-text-secondary)}.project-group-card__tooltip-reasoning:last-child{margin-bottom:0}.project-group-card__tooltip-questions{margin:var(--space-xs) 0 0 var(--space-lg);padding:0}.project-group-card__tooltip-questions li{margin-bottom:var(--space-xs)}.project-group-card__tooltip--valid{border-color:#10b9814d;border-left-color:var(--color-success)}.project-group-card__tooltip--valid .project-group-card__tooltip-title{color:var(--color-success)}.project-group-card__tooltip--valid .project-group-card__tooltip-reasoning{color:var(--color-text)}.project-group-card__tooltip--unclear{border-color:#f59e0b4d;border-left-color:var(--color-warning)}.project-group-card__tooltip--unclear .project-group-card__tooltip-title{color:var(--color-warning)}.project-group-card__tooltip--unclear .project-group-card__tooltip-issue{color:var(--color-text)}.project-group-card__tooltip--proposal{border-color:#8b5cf64d;border-left-color:var(--color-accent)}.project-group-card__tooltip--proposal .project-group-card__tooltip-title{color:var(--color-accent)}.project-group-card__tooltip--proposal .project-group-card__tooltip-issue{color:var(--color-text)}.project-group-card__tooltip-fix{margin-top:var(--space-sm)}.project-group-card__proposal-diffs{display:flex;flex-direction:column;gap:var(--space-xs);margin-top:var(--space-xs)}.project-group-card__proposal-diff{display:flex;align-items:center;gap:var(--space-sm);font-size:.8rem}.project-group-card__proposal-diff-field{font-weight:600;text-transform:capitalize;min-width:80px}.project-group-card__proposal-diff-original{color:var(--color-error)}.project-group-card__proposal-diff-arrow{color:var(--color-text-muted)}.project-group-card__proposal-diff-suggested{color:var(--color-success);font-weight:600}.project-group-card__proposal-actions{display:flex;gap:var(--space-sm);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border-light)}.project-group-card__section-actions{display:flex;gap:var(--space-sm);align-items:center}.project-group-card__add-entry-btn{padding:.25rem .75rem;font-size:.75rem;font-weight:600;color:var(--color-primary);background:transparent;border:1px solid var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.project-group-card__add-entry-btn:hover{background:var(--color-primary);color:#fff}.project-group-card__delete-btn{padding:.2rem .4rem;font-size:.7rem;color:var(--color-text-muted);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.project-group-card__delete-btn:hover{color:var(--color-error);border-color:var(--color-error)}.project-group-card__billable-pill{display:inline-block;padding:.15rem .5rem;font-size:.7rem;font-weight:600;border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast);min-width:32px;text-align:center}.project-group-card__billable-pill:hover{border-color:var(--color-text-muted)}.project-group-card__billable-pill--yes{background:#10b9811f;color:#059669;border-color:#10b9814d}.project-group-card__billable-pill--yes:hover{background:#10b98133;border-color:#059669}.project-group-card__billable-pill--no{background:#64748b1a;color:var(--color-text-muted);border-color:#64748b40}.project-group-card__billable-pill--no:hover{background:#64748b33;border-color:var(--color-text-muted)}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.875rem;font-weight:500;white-space:nowrap}.status-badge--compact{font-size:.7rem;padding:.15rem .4rem}.status-badge--success{background-color:#16a34a26;color:var(--color-success)}.status-badge--error{background-color:#ef444426;color:var(--color-error)}.status-badge--warning{background-color:#f59e0b26;color:var(--color-warning)}.status-badge--default{background-color:#64748b26;color:var(--color-text-muted)}.status-badge--info{background-color:#3b82f626;color:#3b82f6}.status-badge--approved{background-color:#05966926;color:#059669}.status-badge--rejected{background-color:#b91c1c26;color:#b91c1c}.status-badge--ai{background-color:#8b5cf626;color:#8b5cf6}.status-badge--clickable{cursor:pointer;transition:filter .15s ease}.status-badge--clickable:hover{filter:brightness(.85)}.entry-editor{padding:var(--space-sm) var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm);overflow:hidden;box-sizing:border-box;width:100%;min-width:0}.entry-editor__form{display:flex;flex-wrap:wrap;gap:var(--space-sm);min-width:0}.entry-editor__field{display:flex;flex-direction:column;gap:2px;flex:1 1 0;min-width:0}.entry-editor__field--wide{flex-basis:100%;min-width:0}.entry-editor__field--date{flex:0 1 130px}.entry-editor__field--worker{flex:1 1 140px}.entry-editor__label{font-size:.7rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.entry-editor__input,.entry-editor__textarea{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.8rem;font-family:inherit;background:var(--color-surface);color:var(--color-text);transition:border-color var(--transition-fast);min-width:0}.entry-editor__input:focus,.entry-editor__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #6366f133}.entry-editor__textarea{resize:vertical}.entry-editor__ai-context{padding:var(--space-md);background:#f59e0b0d;border:1px solid rgba(245,158,11,.2);border-radius:var(--radius-md);font-size:.8rem;line-height:1.5}.entry-editor__ai-title{margin:0 0 var(--space-sm);font-size:.8rem;color:var(--color-warning)}.entry-editor__ai-context p{margin:0 0 var(--space-sm)}.entry-editor__ai-context ul{margin:var(--space-xs) 0 0 var(--space-lg);padding:0}.entry-editor__errors{padding:var(--space-sm) var(--space-md);background:var(--color-danger-bg);border-radius:var(--radius-sm);color:var(--color-danger);font-size:.8rem}.entry-editor__errors p{margin:0}.entry-editor__actions{display:flex;gap:var(--space-xs);justify-content:flex-end}.entry-editor__save-btn{padding:.2rem .5rem;font-size:.7rem;font-weight:600;color:#fff;background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.entry-editor__save-btn:hover{opacity:.9}.entry-editor__cancel-btn{padding:.2rem .5rem;font-size:.7rem;font-weight:600;color:var(--color-text-muted);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.entry-editor__cancel-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.entry-editor__checkbox-label{display:flex;align-items:center;gap:var(--space-xs);font-size:.8rem;color:var(--color-text);cursor:pointer;padding:var(--space-xs) 0}.confirm-dialog__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:transparent}.confirm-dialog__panel{position:fixed;display:flex;align-items:center;gap:var(--space-sm);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:6px 10px;animation:confirm-popover-in .12s ease-out;white-space:nowrap}@keyframes confirm-popover-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.confirm-dialog__label{font-size:.8rem;font-weight:600;color:var(--color-text)}.confirm-dialog__actions{display:flex;gap:4px}.confirm-dialog__confirm-btn{padding:2px 10px;font-size:.75rem;font-weight:600;color:#fff;background:var(--color-error);border:1px solid var(--color-error);border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--transition-fast)}.confirm-dialog__confirm-btn:hover{opacity:.85}.confirm-dialog__cancel-btn{padding:2px 10px;font-size:.75rem;font-weight:600;color:var(--color-text-muted);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.confirm-dialog__cancel-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.confirm-dialog__arrow{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:10px;height:6px;overflow:hidden}.confirm-dialog__arrow:after{content:"";position:absolute;top:-5px;left:50%;transform:translate(-50%) rotate(45deg);width:8px;height:8px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:1px}.entry-diff-cell{display:flex;flex-direction:column;gap:2px}.entry-diff-cell__original{color:var(--color-error);text-decoration:none;font-size:.78rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.entry-diff-cell__suggested{color:var(--color-success);font-weight:600;font-size:.78rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.collapsible-section{background:var(--color-bg);border-bottom:1px solid var(--color-border-light);transition:border-color var(--transition-fast)}.collapsible-section--expanded{border-left:2px solid var(--color-primary)}.collapsible-section__header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast)}.collapsible-section__header:hover{background:var(--color-bg-secondary)}.collapsible-section--disabled .collapsible-section__header{cursor:default}.collapsible-section--disabled .collapsible-section__header:hover{background:transparent}.collapsible-section__chevron{font-size:.75rem;color:var(--color-text-muted);width:16px;text-align:center;flex-shrink:0;transition:color var(--transition-fast);line-height:1}.collapsible-section__title{font-size:.85rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0}.collapsible-section__metadata{font-size:.78rem;color:var(--color-text-muted)}.collapsible-section__metadata--highlight{color:var(--color-primary);font-weight:500}.collapsible-section__action{margin-left:auto}.collapsible-section__body{padding:0 var(--space-lg) var(--space-md)}.collapsible-section:not(.collapsible-section--expanded) .collapsible-section__body{display:none}.revenue-leakage__stats{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-sm);margin-bottom:var(--space-md)}.revenue-leakage__stat-card{display:flex;flex-direction:column;flex:0 0 130px;padding:var(--space-sm) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-md)}.revenue-leakage__stat-card--alert{border-color:var(--color-error);background:color-mix(in srgb,var(--color-error) 5%,var(--color-surface))}.revenue-leakage__stat-card--recoverable{border-color:var(--color-success);background:color-mix(in srgb,var(--color-success) 5%,var(--color-surface))}.revenue-leakage__stat-value{font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-text)}.revenue-leakage__stat-card--alert .revenue-leakage__stat-value{color:var(--color-error)}.revenue-leakage__stat-card--recoverable .revenue-leakage__stat-value{color:var(--color-success)}.revenue-leakage__stat-label{font-size:.7rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.revenue-leakage__table{width:100%;border-collapse:collapse;table-layout:fixed}.revenue-leakage__th{text-align:left;padding:var(--space-xs) var(--space-sm);font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border-light)}.revenue-leakage__th--right{text-align:right}.revenue-leakage__row{transition:background var(--transition-fast)}.revenue-leakage__row:hover{background:var(--color-surface)}.revenue-leakage__row:not(:last-child){border-bottom:1px solid var(--color-border-light)}.revenue-leakage__row--under{background:color-mix(in srgb,var(--color-error) 3%,transparent)}.revenue-leakage__row--under:hover{background:color-mix(in srgb,var(--color-error) 6%,var(--color-surface))}.revenue-leakage__cell{padding:var(--space-xs) var(--space-sm);font-size:.85rem;color:var(--color-text)}.revenue-leakage__cell--right{text-align:right;font-variant-numeric:tabular-nums}.revenue-leakage__cell--muted{color:var(--color-text-muted);font-size:.8rem}.revenue-leakage__stat-card--revenue{border-color:var(--color-success);background:color-mix(in srgb,var(--color-success) 5%,var(--color-surface))}.revenue-leakage__stat-card--revenue .revenue-leakage__stat-value{color:var(--color-success)}.revenue-leakage__tfoot{border-top:2px solid var(--color-border-light)}.revenue-leakage__cell--total{font-weight:700;padding-top:var(--space-sm)!important}.revenue-leakage__guidance{padding:var(--space-sm) var(--space-md);background:color-mix(in srgb,var(--color-primary) 6%,var(--color-surface));border:1px solid color-mix(in srgb,var(--color-primary) 20%,var(--color-border-light));border-radius:var(--radius-md);margin-bottom:var(--space-md)}.revenue-leakage__guidance-title{font-size:.8rem;font-weight:700;color:var(--color-primary);margin-bottom:4px}.revenue-leakage__guidance-text{margin:0;font-size:.8rem;line-height:1.5;color:var(--color-text-secondary)}.revenue-leakage__guidance--analyzing{background:color-mix(in srgb,var(--color-primary) 4%,var(--color-surface));border-color:color-mix(in srgb,var(--color-primary) 30%,var(--color-border-light))}.revenue-leakage__guidance-spinner{display:inline-block;width:12px;height:12px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:revenue-leakage-spin .8s linear infinite;vertical-align:middle;margin-right:6px}@keyframes revenue-leakage-spin{to{transform:rotate(360deg)}}.revenue-leakage__stat-value--pending{color:var(--color-text-muted);opacity:.5}.revenue-leakage__stats--preliminary .revenue-leakage__stat-card{border-style:dashed}.revenue-leakage__pending{color:var(--color-text-muted);opacity:.4}.revenue-leakage__recover-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);margin:0 auto var(--space-md);padding:var(--space-sm) var(--space-lg);font-size:.85rem;font-weight:600;color:var(--color-text-inverse);background:var(--color-success);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.revenue-leakage__recover-btn:hover{background:color-mix(in srgb,var(--color-success) 85%,black)}.recovery-flow{padding:var(--space-md)}.recovery-flow__progress{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:color-mix(in srgb,var(--color-primary) 6%,var(--color-surface));border:1px solid color-mix(in srgb,var(--color-primary) 20%,var(--color-border-light));border-radius:var(--radius-md);margin-bottom:var(--space-md)}.recovery-flow__progress-stats{display:flex;gap:var(--space-lg);font-size:.85rem;color:var(--color-text-secondary)}.recovery-flow__progress-stat{font-variant-numeric:tabular-nums;min-width:10ch}.recovery-flow__progress-stat strong{color:var(--color-text)}.recovery-flow__progress-close{padding:var(--space-xs) var(--space-sm);font-size:.8rem;color:var(--color-text-muted);background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.recovery-flow__progress-close:hover{color:var(--color-text);border-color:var(--color-text-muted)}.recovery-flow__worker-card{border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.recovery-flow__worker-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light)}.recovery-flow__worker-name{font-size:.95rem;font-weight:600;color:var(--color-text)}.recovery-flow__worker-gap{font-size:.85rem;font-weight:600;color:var(--color-error);font-variant-numeric:tabular-nums;min-width:8ch;text-align:right}.recovery-flow__worker-gap--closed{color:var(--color-success)}.recovery-flow__worker-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);padding:var(--space-sm) var(--space-md);font-size:.85rem;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-light)}.recovery-flow__worker-stats span{font-variant-numeric:tabular-nums}.recovery-flow__worker-stats strong{color:var(--color-text);font-size:.95rem}.recovery-flow__suggestion{padding:var(--space-md) var(--space-md) var(--space-sm)}.recovery-flow__suggestion-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-sm)}.recovery-flow__entries{display:flex;gap:var(--space-md);align-items:stretch;margin-bottom:0}.recovery-flow__entry{flex:1;padding:var(--space-md);border-radius:var(--radius-md);font-size:.85rem}.recovery-flow__entry--source{background:color-mix(in srgb,var(--color-error) 6%,var(--color-surface));border:1px solid color-mix(in srgb,var(--color-error) 25%,var(--color-border-light))}.recovery-flow__entry--target{background:color-mix(in srgb,var(--color-success) 6%,var(--color-surface));border:1px solid color-mix(in srgb,var(--color-success) 25%,var(--color-border-light))}.recovery-flow__entry--new{background:color-mix(in srgb,var(--color-primary) 6%,var(--color-surface));border:1px dashed color-mix(in srgb,var(--color-primary) 30%,var(--color-border-light))}.recovery-flow__entry-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.recovery-flow__entry--source .recovery-flow__entry-label{color:var(--color-error)}.recovery-flow__entry--target .recovery-flow__entry-label,.recovery-flow__entry--new .recovery-flow__entry-label{color:var(--color-success)}.recovery-flow__entry-detail{color:var(--color-text-secondary);line-height:1.4}.recovery-flow__entry-detail strong{color:var(--color-text)}.recovery-flow__tag{display:inline-block;padding:1px 6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;border-radius:var(--radius-sm);vertical-align:baseline}.recovery-flow__tag--internal{color:var(--color-error);background:color-mix(in srgb,var(--color-error) 12%,transparent)}.recovery-flow__tag--billable{color:var(--color-success);background:color-mix(in srgb,var(--color-success) 12%,transparent)}.recovery-flow__entry-desc{margin-top:4px;font-size:.8rem;color:var(--color-text-muted);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recovery-flow__arrow{display:flex;align-items:center;font-size:1.2rem;color:var(--color-text-muted);flex-shrink:0;padding:0 var(--space-xs)}.recovery-flow__suggestion-reason{font-size:.8rem;color:var(--color-text-muted);font-style:italic;margin-bottom:var(--space-md)}.recovery-flow__actions{display:flex;gap:var(--space-sm);padding:var(--space-md);border-top:1px solid var(--color-border-light)}.recovery-flow__accept-btn{padding:var(--space-xs) var(--space-md);font-size:.85rem;font-weight:600;color:var(--color-text-inverse);background:var(--color-success);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.recovery-flow__accept-btn:hover{background:color-mix(in srgb,var(--color-success) 85%,black)}.recovery-flow__skip-btn{padding:var(--space-xs) var(--space-md);font-size:.85rem;font-weight:500;color:var(--color-text-secondary);background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.recovery-flow__skip-btn:hover{border-color:var(--color-text-muted);color:var(--color-text)}.recovery-flow__skip-worker-btn{margin-left:auto;padding:var(--space-xs) var(--space-md);font-size:.8rem;font-weight:500;color:var(--color-text-muted);background:none;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.recovery-flow__skip-worker-btn:hover{border-color:var(--color-border);color:var(--color-text-secondary)}.recovery-flow__gap-closed{padding:var(--space-md);text-align:center;color:var(--color-success);font-weight:600;font-size:.9rem}.recovery-flow__no-suggestions{padding:var(--space-md);text-align:center;color:var(--color-text-muted);font-size:.85rem}.recovery-flow__complete{text-align:center;padding:var(--space-lg) var(--space-md)}.recovery-flow__complete-title{font-size:1.1rem;font-weight:700;color:var(--color-text);margin-bottom:var(--space-sm)}.recovery-flow__complete-stats{display:flex;justify-content:center;gap:var(--space-lg);margin-bottom:var(--space-md)}.recovery-flow__complete-stat{display:flex;flex-direction:column;align-items:center}.recovery-flow__complete-stat-value{font-size:1.2rem;font-weight:700;font-variant-numeric:tabular-nums}.recovery-flow__complete-stat-value--recovered{color:var(--color-success)}.recovery-flow__complete-stat-value--skipped{color:var(--color-text-muted)}.recovery-flow__complete-stat-label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.recovery-flow__complete-btn{padding:var(--space-xs) var(--space-lg);font-size:.85rem;font-weight:600;color:var(--color-primary);background:none;border:1px solid var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.recovery-flow__complete-btn:hover{background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.inline-prompt-editor__textarea{width:100%;min-height:120px;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-mono);font-size:.8125rem;line-height:1.6;resize:vertical;transition:border-color var(--transition-fast)}.inline-prompt-editor__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.inline-prompt-editor__footer{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-sm)}.inline-prompt-editor__info{font-size:.75rem;color:var(--color-text-muted)}.inline-prompt-editor__dirty{color:var(--color-warning);font-weight:500}.inline-prompt-editor__saved{color:var(--color-success);font-weight:600;margin-left:var(--space-sm);animation:inline-prompt-editor-fade-in .2s ease-out}@keyframes inline-prompt-editor-fade-in{0%{opacity:0}to{opacity:1}}.inline-prompt-editor__actions{display:flex;gap:var(--space-sm)}.inline-prompt-editor__btn{padding:.25rem .75rem;font-size:.75rem;font-weight:600;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-sans);border:1px solid transparent}.inline-prompt-editor__btn--save{color:var(--color-text-inverse);background:var(--color-primary);border-color:var(--color-primary)}.inline-prompt-editor__btn--save:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.inline-prompt-editor__btn--save:disabled{opacity:.5;cursor:not-allowed}.inline-prompt-editor__btn--clear{color:var(--color-danger);background:transparent;border-color:var(--color-danger)}.inline-prompt-editor__btn--clear:hover{background:var(--color-danger-bg)}.change-history-panel{padding:var(--space-sm) var(--space-md);background:var(--color-bg-secondary);border-radius:var(--radius-md, .5rem)}.change-history-panel__title{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-sm)}.change-history-panel__empty{font-size:.8rem;color:var(--color-text-muted);margin:0}.change-history-panel__events{display:flex;flex-direction:column;gap:var(--space-sm)}.change-history-panel__event{padding:var(--space-sm);background:var(--color-surface);border-radius:var(--radius-sm, .375rem);border:1px solid var(--color-border-light)}.change-history-panel__event-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs)}.change-history-panel__timestamp{font-size:.7rem;color:var(--color-text-muted)}.change-history-panel__changes{display:flex;flex-direction:column;gap:2px}.change-history-panel__field-change{display:flex;align-items:baseline;gap:.3rem;font-size:.8rem;line-height:1.4}.change-history-panel__field-name{font-weight:600;color:var(--color-text-secondary);flex-shrink:0}.change-history-panel__old-value{color:var(--color-danger);word-break:break-word;max-width:300px;overflow:hidden;text-overflow:ellipsis}.change-history-panel__arrow{color:var(--color-text-muted);flex-shrink:0}.change-history-panel__new-value{color:var(--color-success);word-break:break-word;max-width:300px;overflow:hidden;text-overflow:ellipsis}.change-history-panel__movement{margin-top:var(--space-xs);padding-top:var(--space-xs);border-top:1px solid var(--color-border-light);font-size:.75rem;line-height:1.5}.change-history-panel__movement-label{color:var(--color-text-secondary)}.change-history-panel__movement-link{color:var(--color-danger);cursor:pointer;background:none;border:none;padding:0;font:inherit;font-size:.75rem;text-decoration:none}.change-history-panel__movement-link:hover{text-decoration:underline}.change-history-panel__movement-link--disabled{color:var(--color-danger);cursor:not-allowed;text-decoration:none}.person-allocation-matrix{display:flex;flex-direction:column;gap:var(--space-md)}.person-allocation-matrix__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md)}.person-allocation-matrix__stats{display:flex;gap:var(--space-lg);font-size:.875rem;color:var(--color-text-secondary)}.person-allocation-matrix__stat strong{color:var(--color-text)}.person-allocation-matrix__sort-controls{display:flex;align-items:center;gap:var(--space-sm)}.person-allocation-matrix__sort-label{font-size:.8rem;color:var(--color-text-muted)}.person-allocation-matrix__sort-btn{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);background:var(--color-surface);color:var(--color-text-secondary)}.person-allocation-matrix__sort-btn--active{background:var(--color-primary);color:var(--color-text-inverse);border-color:var(--color-primary)}.person-allocation-matrix__sort-btn:hover:not(.person-allocation-matrix__sort-btn--active){border-color:var(--color-primary-light);color:var(--color-primary)}.person-allocation-matrix__list{display:flex;flex-direction:column;gap:var(--space-sm)}.person-allocation-matrix__card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow var(--transition-fast)}.person-allocation-matrix__card:hover,.person-allocation-matrix__card--expanded{box-shadow:var(--shadow-md)}.person-allocation-matrix__card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast);gap:var(--space-md)}.person-allocation-matrix__card-header:hover{background:var(--color-bg-secondary)}.person-allocation-matrix__card-info{display:flex;align-items:center;gap:var(--space-sm);min-width:0}.person-allocation-matrix__card-toggle{font-size:.65rem;color:var(--color-text-muted);width:1rem;flex-shrink:0}.person-allocation-matrix__card-name{font-weight:600;font-size:.95rem;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-allocation-matrix__card-title{font-size:.8rem;color:var(--color-text-secondary);white-space:nowrap}.person-allocation-matrix__card-projects{font-size:.8rem;color:var(--color-text-muted);white-space:nowrap}.person-allocation-matrix__card-summary{display:flex;align-items:center;gap:var(--space-lg);flex-shrink:0}.person-allocation-matrix__card-hours{font-size:.85rem;color:var(--color-text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.person-allocation-matrix__overall-utilization{display:flex;align-items:center;gap:var(--space-sm);min-width:140px}.person-allocation-matrix__card-body{padding:0 var(--space-lg) var(--space-md);border-top:1px solid var(--color-border-light)}.person-allocation-matrix__project-table{width:100%;border-collapse:collapse}.person-allocation-matrix__th{text-align:left;padding:var(--space-sm) var(--space-sm);font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border-light)}.person-allocation-matrix__th--right{text-align:right}.person-allocation-matrix__project-row{transition:background var(--transition-fast)}.person-allocation-matrix__project-row:hover{background:var(--color-bg)}.person-allocation-matrix__project-row:not(:last-child){border-bottom:1px solid var(--color-border-light)}.person-allocation-matrix__cell{padding:var(--space-sm) var(--space-sm);font-size:.85rem;color:var(--color-text)}.person-allocation-matrix__cell--right{text-align:right;font-variant-numeric:tabular-nums}.person-allocation-matrix__cell--utilization{display:flex;align-items:center;gap:var(--space-sm)}.person-allocation-matrix__bar-track{flex:1;height:6px;background:var(--color-border-light);border-radius:var(--radius-full);overflow:hidden;max-width:120px}.person-allocation-matrix__bar{height:100%;border-radius:var(--radius-full);transition:width .4s cubic-bezier(.34,1.56,.64,1)}.person-allocation-matrix__bar--over{background:var(--color-error)}.person-allocation-matrix__bar--on-track{background:var(--color-success)}.person-allocation-matrix__bar--low{background:var(--color-text-muted)}.person-allocation-matrix__percent{font-size:.8rem;font-weight:600;font-variant-numeric:tabular-nums;min-width:3.5em;text-align:right}.person-allocation-matrix__percent--over{color:var(--color-error)}.person-allocation-matrix__percent--on-track{color:var(--color-success)}.person-allocation-matrix__percent--low{color:var(--color-text-muted)}.person-allocation-matrix__status--no-allocation{font-size:.8rem;color:var(--color-text-muted);font-style:italic}.view-toggle{display:inline-flex;gap:var(--space-xs);background:var(--color-bg-secondary);padding:var(--space-xs);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.view-toggle__btn{padding:var(--space-sm) var(--space-lg);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);background:transparent;color:var(--color-text-secondary)}.view-toggle__btn--active{background:var(--color-primary-gradient);color:var(--color-text-inverse);box-shadow:var(--shadow-sm)}.view-toggle__btn:hover:not(.view-toggle__btn--active){background:var(--color-surface);color:var(--color-text)}.prompt-drawer{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1100;pointer-events:none;visibility:hidden}.prompt-drawer--open{pointer-events:auto;visibility:visible}.prompt-drawer__overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity var(--transition-slow)}.prompt-drawer--open .prompt-drawer__overlay{opacity:1}.prompt-drawer__panel{position:absolute;top:0;right:0;bottom:0;width:min(600px,90vw);background:var(--color-surface);box-shadow:var(--shadow-2xl);display:flex;flex-direction:column;transform:translate(100%);transition:transform var(--transition-slow)}.prompt-drawer--open .prompt-drawer__panel{transform:translate(0)}.prompt-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--color-border);flex-shrink:0}.prompt-drawer__header h2{margin:0;font-size:1.25rem;font-weight:700;color:var(--color-text)}.prompt-drawer__close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:var(--color-bg);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-secondary);font-size:1.25rem;transition:all var(--transition-fast)}.prompt-drawer__close:hover{background:var(--color-secondary);color:var(--color-text)}.prompt-drawer__close:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.prompt-drawer__content{flex:1;overflow-y:auto;padding:var(--space-lg) var(--space-xl)}.prompt-drawer__content::-webkit-scrollbar{width:6px}.prompt-drawer__content::-webkit-scrollbar-track{background:var(--color-bg)}.prompt-drawer__content::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}.prompt-drawer__editor{display:flex;flex-direction:column;gap:var(--space-md);height:100%}.prompt-drawer__textarea{width:100%;min-height:400px;flex:1;padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-family:var(--font-mono);font-size:.8125rem;line-height:1.6;resize:vertical;transition:border-color var(--transition-fast)}.prompt-drawer__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.prompt-drawer__token-count{font-size:.8125rem;color:var(--color-text-muted);text-align:right}.prompt-drawer__token-count--warn{color:var(--color-warning);font-weight:600}.prompt-drawer__actions{display:flex;gap:var(--space-sm);justify-content:flex-end;flex-shrink:0}.prompt-drawer__notification{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;animation:slideInUp .3s ease-out}.prompt-drawer__notification--success{background:var(--color-success-bg);color:var(--color-success)}.prompt-drawer__notification--error{background:var(--color-danger-bg);color:var(--color-danger)}
