:root{--color-primary: #151618;--color-primary-light: #303235;--color-primary-dark: #0a0b0c;--color-accent: #E67E25;--color-accent-light: #f0994d;--color-accent-hover: #cf6d1a;--color-success: #28a745;--color-danger: #dc3545;--color-warning: #ffc107;--color-bg: #f5f5f5;--color-surface: #ffffff;--color-border: #dee2e6;--color-border-light: #e9ecef;--color-text: #212529;--color-text-secondary: #6c757d;--color-text-muted: #8D8D8D;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .15);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--font-family: "Roboto", "Helvetica", "Arial", sans-serif;--navbar-height: 60px;--content-max-width: 960px}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-family);font-size:.9375rem;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-md);font-weight:500;line-height:1.3;color:var(--color-text)}h2{font-size:1.5rem}h3{font-size:1.2rem}h4{font-size:1.05rem}p{margin:0 0 var(--space-md)}a{color:var(--color-accent);text-decoration:none;transition:color .2s}a:hover{color:var(--color-accent-hover);text-decoration:underline}.app-layout{min-height:100vh;display:flex;flex-direction:column}.navbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;height:var(--navbar-height);padding:0 var(--space-xl);background:var(--color-primary);color:#fff;box-shadow:0 2px 8px #0000004d}.navbar-brand{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;font-size:.9375rem;-webkit-user-select:none;user-select:none}.navbar-logo{height:28px;width:auto}.navbar-separator{opacity:.3;margin:0 var(--space-xs)}.navbar-user{display:flex;align-items:center;gap:var(--space-md);font-size:.875rem}.logout-button{padding:var(--space-xs) var(--space-md);background:transparent;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-sm);font-size:.8125rem;font-family:inherit;cursor:pointer;transition:background .2s,border-color .2s}.logout-button:hover{background:#ffffff1a;border-color:#ffffff80}.main-content{flex:1;padding:var(--space-xl);max-width:var(--content-max-width);width:100%;margin:0 auto}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--color-primary)}.login-card{background:var(--color-surface);padding:var(--space-2xl) var(--space-xl);border-radius:var(--radius-lg);box-shadow:0 12px 40px #0006;text-align:center;max-width:400px;width:90%}.login-logo{height:32px;width:auto;margin-bottom:var(--space-lg)}.login-card h1{font-size:1.35rem;margin-bottom:var(--space-xs);color:var(--color-text);font-weight:500}.login-subtitle{color:var(--color-text-secondary);margin-bottom:var(--space-xl);font-size:.9375rem}.login-button{display:block;width:100%;padding:var(--space-md) var(--space-lg);background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .2s}.login-button:hover{background:var(--color-accent-hover)}.login-note{margin-top:var(--space-md);font-size:.8125rem;color:var(--color-text-muted)}.landing-page{text-align:center;padding-top:var(--space-2xl)}.landing-page h2{margin-bottom:var(--space-xl)}.landing-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-xl);max-width:600px;margin:0 auto}.landing-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-xl) var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;transition:transform .15s,box-shadow .15s;font-size:1rem;font-weight:500;color:var(--color-text)}.landing-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-accent-light)}.card-icon{font-size:2rem;line-height:1;color:var(--color-accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-size:.9375rem;font-weight:500;cursor:pointer;border:1px solid transparent;transition:background .2s,border-color .2s,opacity .2s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-text-secondary)}.form-header{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-xl)}.form-header h2{margin:0}.back-button{padding:var(--space-sm) var(--space-lg);background:var(--color-surface);color:var(--color-accent);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.9375rem;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s}.back-button:hover{background:var(--color-bg);border-color:var(--color-text-secondary)}.form-step{background:var(--color-surface);padding:var(--space-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light)}.form-group{margin-bottom:var(--space-lg)}.form-group label{display:block;margin-bottom:var(--space-xs);font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.form-group input[type=text],.form-group input[type=date],.form-group textarea,.form-group select{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.9375rem;font-family:inherit;color:var(--color-text);background:var(--color-surface);transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #e67e2526}.form-group textarea{resize:vertical;min-height:60px}.date-input-wrapper{position:relative}.date-input-wrapper input[type=date]{width:100%;padding-right:90px}.date-input-wrapper input[type=date]::-webkit-calendar-picker-indicator{position:absolute;right:8px}.today-link{position:absolute;right:40px;top:50%;transform:translateY(-50%);color:var(--color-accent);cursor:pointer;font-size:.85rem;text-decoration:none}.today-link:hover{text-decoration:underline}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}.checkbox-group{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.checkbox-label{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.875rem;cursor:pointer;transition:background .15s,border-color .15s;-webkit-user-select:none;user-select:none}.checkbox-label:hover{border-color:var(--color-accent-light)}.checkbox-label input[type=checkbox]{accent-color:var(--color-accent)}.difficulty-selector{display:flex;gap:var(--space-sm)}.difficulty-btn{width:44px;height:44px;border-radius:50%;border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font-size:1rem;font-weight:600;cursor:pointer;transition:all .15s}.difficulty-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.difficulty-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.stepper{display:flex;justify-content:center;gap:var(--space-lg);margin-bottom:var(--space-xl)}.step{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text-muted);font-size:.875rem}.step-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-border-light);font-weight:600;font-size:.8125rem}.step.active{color:var(--color-accent)}.step.active .step-number{background:var(--color-accent);color:#fff}.step.completed{color:var(--color-success)}.step.completed .step-number{background:var(--color-success);color:#fff}.step.visited{color:var(--color-accent);opacity:.6}.step.visited .step-number{background:var(--color-accent);color:#fff}.step.clickable{cursor:pointer}.step.clickable:hover .step-number{opacity:.8;box-shadow:0 0 0 2px var(--color-accent)}.form-actions{display:flex;justify-content:space-between;margin-top:var(--space-xl);gap:var(--space-md)}.form-content{margin-bottom:var(--space-md)}.review-step h3{margin-bottom:var(--space-lg)}.review-section{margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--color-border-light)}.review-section:last-child{border-bottom:none}.review-section h4{color:var(--color-primary);margin-bottom:var(--space-md)}.review-section h5{margin:var(--space-md) 0 var(--space-xs);font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.review-list{display:grid;grid-template-columns:auto 1fr;gap:var(--space-xs) var(--space-lg);margin:0}.review-list dt{font-weight:500;color:var(--color-text-secondary);font-size:.875rem}.review-list dd{margin:0;font-size:.9375rem}.success-page{display:flex;align-items:center;justify-content:center;min-height:60vh}.success-card{text-align:center;background:var(--color-surface);padding:var(--space-2xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.success-card h2{color:var(--color-success);font-size:2rem}.success-actions{display:flex;gap:var(--space-md);justify-content:center;margin-top:var(--space-xl)}.search-filters{background:var(--color-surface);padding:var(--space-lg) var(--space-xl) var(--space-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);margin-bottom:var(--space-xl)}.filters-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg)}.filters-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-text);letter-spacing:-.01em}.active-filter-count{font-size:.75rem;font-weight:500;color:var(--color-accent);background:#e67e251a;padding:2px var(--space-sm);border-radius:999px}.filters-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm) var(--space-md)}.filters-grid .form-group{margin-bottom:var(--space-xs)}.date-range-group{margin-top:var(--space-sm)}.date-range-label{display:block;margin-bottom:var(--space-xs);font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.date-range-inputs{display:inline-flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s}.date-range-inputs:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px #e67e2526}.date-range-inputs input[type=date]{border:none;outline:none;padding:var(--space-sm) var(--space-md);font-size:.9375rem;font-family:inherit;color:var(--color-text);background:transparent;min-width:140px}.date-range-inputs input[type=date]:focus{box-shadow:none}.date-range-divider{color:var(--color-text-muted);font-size:.8125rem;padding:0 var(--space-xs);-webkit-user-select:none;user-select:none}.filter-actions{display:flex;align-items:center;gap:var(--space-md);margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--color-border-light)}.btn-ghost{background:none;border:none;color:var(--color-text-muted);font-size:.8125rem;font-family:inherit;cursor:pointer;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);transition:color .15s,background .15s}.btn-ghost:hover{color:var(--color-text);background:var(--color-bg)}.results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md);font-weight:500;color:var(--color-text-secondary)}.results-list{display:grid;gap:var(--space-md)}.empty-state{text-align:center;padding:var(--space-2xl);color:var(--color-text-muted);font-size:1.05rem}.debrief-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);cursor:pointer;transition:border-color .15s,box-shadow .15s}.debrief-card:hover{border-color:var(--color-accent-light);box-shadow:var(--shadow-md)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm)}.card-client{font-weight:600;font-size:1.05rem;color:var(--color-primary)}.card-date{font-size:.8125rem;color:var(--color-text-muted)}.card-types{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-bottom:var(--space-sm)}.badge{display:inline-block;padding:2px var(--space-sm);background:#e67e251a;color:var(--color-accent);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.card-footer{display:flex;gap:var(--space-lg);font-size:.8125rem;color:var(--color-text-secondary);padding-top:var(--space-sm);border-top:1px solid var(--color-border-light)}.pagination{display:flex;justify-content:center;gap:var(--space-xs);margin-top:var(--space-xl)}.page-btn{width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-size:.875rem;cursor:pointer;transition:background .15s,border-color .15s}.page-btn:hover{border-color:var(--color-accent);background:var(--color-bg)}.page-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.detail-page{max-width:var(--content-max-width)}.detail-meta{background:var(--color-surface);padding:var(--space-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);margin-bottom:var(--space-xl)}.detail-types{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-lg)}.detail-sections section{background:var(--color-surface);padding:var(--space-xl);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);margin-bottom:var(--space-md)}.detail-sections section h3{color:var(--color-primary);margin-bottom:var(--space-md)}.detail-sections section p{white-space:pre-wrap;line-height:1.7}.detail-footer{text-align:right;font-size:.8125rem;color:var(--color-text-muted);padding-top:var(--space-md)}.loading{display:flex;align-items:center;justify-content:center;padding:var(--space-2xl);color:var(--color-text-secondary);font-size:1.05rem}.error-message{background:#fff0f0;color:var(--color-danger);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);border:1px solid rgba(220,53,69,.2);margin-bottom:var(--space-lg);font-size:.9375rem}.form-group.has-error input,.form-group.has-error textarea{border-color:var(--color-danger)}.form-group.has-error .checkbox-group{border:1px solid var(--color-danger);border-radius:var(--radius-md);padding:var(--space-sm)}.field-error{color:var(--color-danger);font-size:.8125rem;margin-top:var(--space-xs);display:block}.disclaimer-banner{background:#e67e2514;border:1px solid rgba(230,126,37,.25);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);font-size:.875rem;color:var(--color-text-secondary);margin-bottom:var(--space-xl);text-align:left}.disclaimer-banner strong{color:var(--color-accent)}.section-heading{font-size:1rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-md);margin-top:var(--space-xl);text-transform:uppercase;letter-spacing:.04em}.card-description{font-size:.8125rem;font-weight:400;color:var(--color-text-muted)}.landing-card-wide{grid-column:1 / -1}.intelligence-type-toggle{display:flex;gap:0;margin-bottom:var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;width:fit-content}.intelligence-type-btn{padding:var(--space-sm) var(--space-lg);background:var(--color-surface);color:var(--color-text-secondary);border:none;font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s,color .15s;border-right:1px solid var(--color-border)}.intelligence-type-btn:last-child{border-right:none}.intelligence-type-btn:hover{background:var(--color-bg)}.intelligence-type-btn.active{background:var(--color-accent);color:#fff}.badge-interview{background:#3884f41f;color:#3884f4}.badge-client-intel{background:#2eb85c1f;color:#1e8a4a}.card-client{display:flex;align-items:center;gap:var(--space-sm)}.card-headline{font-size:.9375rem;color:var(--color-text);margin-bottom:var(--space-sm);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.radio-group{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.radio-label{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.875rem;cursor:pointer;transition:background .15s,border-color .15s;-webkit-user-select:none;user-select:none}.radio-label:hover{border-color:var(--color-accent-light)}.radio-label input[type=radio]{accent-color:var(--color-accent)}.tech-stack-selector{display:flex;flex-direction:column;gap:var(--space-lg)}.tech-category h4{font-size:.875rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.tech-chips{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.tech-chip{padding:var(--space-xs) var(--space-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:999px;font-size:.8125rem;font-family:inherit;color:var(--color-text);cursor:pointer;transition:all .15s}.tech-chip:hover{border-color:var(--color-accent-light)}.tech-chip.selected{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.tech-chip-add-wrapper{display:inline-flex;align-items:center;gap:var(--space-xs)}.tech-chip-input{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:999px;font-size:.8125rem;font-family:inherit;width:120px;outline:none;transition:border-color .15s}.tech-chip-input:focus{border-color:var(--color-accent)}.tech-chip-add{padding:var(--space-xs) var(--space-sm);background:var(--color-accent);color:#fff;border:none;border-radius:999px;font-size:.75rem;font-family:inherit;cursor:pointer;transition:background .15s}.tech-chip-add:hover{background:var(--color-accent-hover)}.review-tech-group{margin-bottom:var(--space-md)}.review-tech-group h5{margin:0 0 var(--space-xs);font-size:.8125rem;font-weight:600;color:var(--color-text-secondary)}.review-tech-group .tech-chips{margin-bottom:0}.client-hub-section{margin-bottom:var(--space-xl)}.client-hub-section h3{font-size:1.1rem;margin-bottom:var(--space-md);color:var(--color-primary)}.hub-link{color:var(--color-accent);cursor:pointer;font-size:.875rem;text-decoration:none}.hub-link:hover{text-decoration:underline}@media(max-width:768px){.main-content{padding:var(--space-md)}.navbar{padding:0 var(--space-md)}.navbar-brand span:not(.navbar-separator){display:none}.form-row,.filters-grid{grid-template-columns:1fr}.date-range-inputs{flex-direction:column;align-items:stretch;display:flex}.date-range-inputs input[type=date]{width:100%}.date-range-divider{text-align:center;padding:var(--space-xs) 0}.landing-cards{grid-template-columns:1fr}.intelligence-type-toggle{width:100%}.intelligence-type-btn{flex:1;text-align:center;padding:var(--space-sm) var(--space-sm);font-size:.8125rem}.stepper{gap:var(--space-sm)}.step-label{display:none}.card-footer{flex-direction:column;gap:var(--space-xs)}}@media(max-width:480px){.form-header{flex-direction:column;align-items:flex-start}.form-actions,.success-actions,.filter-actions{flex-direction:column}}
