@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}:root{--primary-dark: #0f172a;--primary-black: #1e293b;--primary-blue: #3b82f6;--primary-light: #eff6ff;--white: #ffffff;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-400: #94a3b8;--gray-600: #475569;--gray-900: #0f172a;--success-green: #10b981;--success-light: #d1fae5;--success-dark: #059669;--danger-red: #ef4444;--danger-light: #fee2e2;--danger-dark: #dc2626;--warning-orange: #f59e0b;--warning-light: #fef3c7;--warning-dark: #d97706;--info-blue: #3b82f6;--info-light: #dbeafe;--info-dark: #2563eb;--accent-mint: #34d399;--chart-green: #34d399;--chart-gray: #d1d5db;--chart-background: #f0f9ff}::ng-deep .mdc-button__label .mat-mdc-progress-spinner{display:inline-block;vertical-align:middle}::ng-deep .mat-mdc-raised-button:not(:disabled){background:linear-gradient(135deg,#161a2d,#414b7b);color:#fff!important;border:none;border-radius:8px;cursor:pointer}::ng-deep .mat-mdc-raised-button:not(:disabled).mat-warn{background:#ef4444;color:#fff;border:none;border-radius:8px;cursor:pointer}::ng-deep .mat-expansion-panel-header.mat-expanded{border-radius:0!important}::ng-deep .mat-expansion-panel-body{padding:0!important}::ng-deep .mat-expansion-panel-header-description{justify-content:flex-end;align-items:center;flex-grow:unset!important;margin-right:0!important}.form-field__input,.form-field__select{width:100%;border:none;border-radius:.75rem;padding:.875rem 1rem;font-size:1rem;font-weight:500;color:#091c2d;background-color:#f2f4f6;outline:none;transition:box-shadow .15s ease}.form-field__label~mat-icon{font-size:14px;width:24px;height:24px}.mat-mdc-tooltip{background:#fff!important}.form-field__select{font-weight:500}@media(max-width:768px){.ftm-info-container{padding:8px}.form-row:not(.form-row--full){flex-direction:column}.form-row:not(.form-row--full) .ftm-field{width:100%}}.native-field{display:flex;flex-direction:column;min-width:0;flex:1}.native-field__label{display:block;margin-left:.25rem;margin-bottom:.5rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#475569}.native-field__input,.native-field__select,.native-field__textarea{width:100%;border:none;border-radius:.75rem;padding:.875rem 1rem;font-size:1rem;font-weight:500;color:#091c2d;background-color:#f2f4f6;outline:none;transition:box-shadow .15s ease;font-family:inherit}.native-field__input::placeholder,.native-field__select::placeholder,.native-field__textarea::placeholder{color:#7676838c}.native-field__input:focus,.native-field__select:focus,.native-field__textarea:focus{box-shadow:0 0 0 2px #091c2d1a}.native-field__input:disabled,.native-field__select:disabled,.native-field__textarea:disabled{opacity:.65;cursor:not-allowed}.native-field__textarea{resize:vertical;min-height:5rem}.native-field__select{appearance:none;cursor:pointer}.native-field__hint{margin:.25rem 0 0;font-size:.75rem;color:#475569}.native-field__error{margin:.25rem 0 0;font-size:.875rem;color:#ef4444}.native-field__mat{width:100%}.native-field__mat.mat-mdc-form-field{--mdc-outlined-text-field-container-shape: .75rem}.proj-wizard-block__title{margin-left:.25rem;margin-bottom:.75rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#475569}.form-row{display:flex;gap:20px;align-items:flex-start}@media(max-width:768px){.form-row.two-columns{flex-direction:column;gap:8px}}.form-row.single-column{justify-content:flex-start}.form-row.form-row--full{flex-direction:column}.form-row.form-row--full .ftm-field,.form-row.form-row--full .form-field{width:100%}.form-row .ftm-field,.form-row .form-field{flex:1;min-width:0}.form-field{display:flex;flex-direction:column}.form-field__label{display:block;margin-left:.25rem;margin-bottom:.5rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#475569}.form-field__input,.form-field__select{width:100%;border:none;border-radius:.75rem;padding:.875rem 1rem;font-size:1rem;font-weight:500;color:#091c2d;background-color:#f2f4f6;outline:none;transition:box-shadow .15s ease;font-family:inherit}.form-field__input::placeholder,.form-field__select::placeholder{color:#7676838c}.form-field__input:focus,.form-field__select:focus{box-shadow:0 0 0 2px #091c2d1a}.form-field__input:disabled,.form-field__select:disabled{opacity:.65;cursor:not-allowed}.form-field__select{appearance:none;cursor:pointer;font-weight:500}textarea.form-field__input{resize:vertical;min-height:5rem;line-height:1.4}.add-work-placeholder{width:100%;margin-top:8px;padding:32px 24px;border:2px dashed #cbd5e1;border-radius:1.25rem;background:transparent;color:#475569;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transition:border-color .15s ease,color .15s ease,background-color .15s ease}.add-work-placeholder:hover{border-color:#091c2d66;color:#091c2d;background:#fff9}.add-work-placeholder:disabled{opacity:.55;cursor:not-allowed}.add-work-placeholder__icon-wrap{width:3rem;height:3rem;border-radius:.75rem;background:#eceef0;display:inline-flex;align-items:center;justify-content:center}.add-work-placeholder__label{text-transform:uppercase;letter-spacing:.08em;font-weight:700;font-size:.875rem}.work-lot-panel,.company-panel{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;margin-bottom:16px}.work-panel-header,.mat-expansion-panel-header.work-panel-header{min-height:52px!important;padding:0 16px!important}.mat-typography{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}.cdk-overlay-pane{background:#fff!important;--mat-dialog-container-max-width: 900px}.mat-h1,.mat-headline-1,.mat-typography h1{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-weight:700!important}.mat-h2,.mat-headline-2,.mat-typography h2,.mat-h3,.mat-headline-3,.mat-typography h3{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-weight:600!important}.mat-h4,.mat-headline-4,.mat-typography h4,.mat-h5,.mat-headline-5,.mat-typography h5,.mat-h6,.mat-headline-6,.mat-typography h6{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-weight:500!important}.mat-body,.mat-body-1,.mat-typography p,.mat-typography .mat-body,.mat-body-2,.mat-typography .mat-body-2,.mat-caption,.mat-typography .mat-caption{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}.mat-button,.mat-raised-button,.mat-flat-button,.mat-stroked-button{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important;font-weight:500!important}.mat-form-field-label,.mat-form-field-prefix,.mat-form-field-suffix,.mat-input-element,.mat-select-value,.mat-select-arrow,.mat-option{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}.mat-tab-label,.mat-tab-label-content{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important;font-weight:500!important}.mat-card-title,.mat-card-subtitle,.mat-card-content{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important}.mat-list-item,.mat-nav-list .mat-list-item,.mat-selection-list .mat-list-item,.mat-menu-item{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}.mat-dialog-title{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;font-weight:600!important}.mat-dialog-content,.mat-snack-bar-container,.mat-table,.mat-header-cell,.mat-cell,.mat-paginator,.mat-paginator-page-size-label,.mat-paginator-range-label,.mat-sort-header,.mat-stepper-label,.mat-step-label{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}.mat-expansion-panel{background:#fff!important}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description,.mat-slide-toggle-label,.mat-checkbox-label,.mat-radio-label,.mat-datepicker-toggle,.mat-datepicker-content{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}html,body{height:100%;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root{--primary-color: #1e293b;--secondary-color: #475569;--background-color: #f8fafc;--surface-color: #ffffff;--text-primary: #0f172a;--text-secondary: #64748b;--mat-stepper-header-hover-state-layer-color: #a9a4f3}a{color:#0f172a;text-decoration:none}a:hover{color:#2563eb;text-decoration:none}.flex{display:flex}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.align-center{align-items:center}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.align-stretch{align-items:stretch}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:.75rem}.m-4{margin:1rem}.m-6{margin:1.5rem}.m-8{margin:2rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.w-full{width:100%}.w-auto{width:auto}.w-fit{width:fit-content}.h-full{height:100%}.h-auto{height:auto}.h-fit{height:fit-content}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.font-normal{font-weight:400}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.not-italic{font-style:normal}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.form-row{display:grid;gap:1rem;margin-bottom:1rem}@media(max-width:768px){.form-row{gap:.75rem}}.form-row{grid-template-columns:1fr 1fr}@media(max-width:768px){.form-row{grid-template-columns:1fr}}.form-row--single{display:grid;gap:1rem;margin-bottom:1rem}@media(max-width:768px){.form-row--single{gap:.75rem}}.form-row--single{grid-template-columns:1fr}.form-row--triple{display:grid;gap:1rem;margin-bottom:1rem}@media(max-width:768px){.form-row--triple{gap:.75rem}}.form-row--triple{grid-template-columns:1fr 1fr 1fr}@media(max-width:1024px){.form-row--triple{grid-template-columns:1fr 1fr}}@media(max-width:768px){.form-row--triple{grid-template-columns:1fr}}.form-field{width:100%}.form-field--full{width:100%;grid-column:1/-1}.form-field--large{width:100%;grid-column:1/2}@media(max-width:768px){.form-field--large{grid-column:1/-1}}.form-field--small{width:100%;max-width:150px}@media(max-width:768px){.form-field--small{max-width:none}}.checkbox-field{display:flex;align-items:center;height:56px}.checkbox-field .mat-mdc-checkbox{margin-left:.5rem}.table-field{width:100%}.table-field ::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none}.form-section{margin-bottom:2.5rem}.form-section:last-child{margin-bottom:0}.section-title{font-size:1.25rem;font-weight:600;color:#1e293b;line-height:1.4;margin:0 0 1.5rem;padding-bottom:2px;border-bottom:2px solid #1e293b;position:relative}.section-title:after{position:absolute;bottom:-2px;left:0;width:40px;height:2px;background:#34d399}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}@media(max-width:768px){.section-header{flex-direction:column;align-items:flex-start;gap:1rem}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}@media(max-width:768px){.page-header{flex-direction:column;gap:1rem;align-items:stretch;margin-bottom:1.5rem}}.page-title-section{flex:1}.page-actions{display:flex;gap:.75rem;align-items:center}@media(max-width:768px){.page-actions{flex-wrap:wrap}}.card{background:#fff;border:1px solid #a1b7d5;box-shadow:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.card mat-card-header{background:#414b7b;padding:8px 20px}.card--lift:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #0f172a1a,0 10px 10px -5px #0f172a0a}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1.5rem}@media(max-width:768px){.summary-grid{grid-template-columns:1fr}}.summary-card{background:#fff;border:1px solid #a1b7d5;box-shadow:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.summary-card mat-card-header{background:#414b7b;padding:8px 20px}.summary-card{padding:1.5rem;text-align:center;transition:all .2s ease}.summary-card:hover:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #0f172a1a,0 10px 10px -5px #0f172a0a}@media(max-width:768px){.summary-card{padding:1rem}}.summary-card .summary-label{font-size:.875rem;color:#475569;line-height:1.5;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.summary-card .summary-value{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.5rem;font-weight:600;color:#0f172a;line-height:1.3;letter-spacing:-.01em;font-weight:700}@media(max-width:768px){.summary-card .summary-value{font-size:1.25rem;font-weight:600;color:#1e293b;line-height:1.4}}.summary-card .summary-value.positive{color:#10b981}.summary-card .summary-value.negative{color:#ef4444}.data-table{width:100%}.data-table .mat-mdc-header-cell{font-size:.875rem;color:#475569;line-height:1.5;font-weight:600;color:#334155;text-transform:uppercase;letter-spacing:.05em}.data-table .mat-mdc-cell{padding:.75rem;border-bottom:1px solid #f1f5f9}.table-placeholder{font-size:.875rem;color:#475569;line-height:1.5;color:#94a3b8;font-style:italic}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.loading-state mat-spinner{margin-bottom:1rem}.loading-state p{font-size:1rem;font-weight:400;color:#334155;line-height:1.6;margin:0}.error-message{display:flex;align-items:center;gap:.5rem;padding:1rem;margin:1rem;background:#fee2e2;color:#ef4444;border-radius:8px;border:1px solid rgba(239,68,68,.2)}.error-message mat-icon{color:#ef4444}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;background:#f8fafc;border-radius:8px;border:2px dashed #e2e8f0}.empty-state>mat-icon{font-size:3rem;width:3rem;height:3rem;margin-bottom:1rem;color:#94a3b8}.empty-state p{font-size:1rem;font-weight:400;color:#334155;line-height:1.6;margin:0 0 .25rem;font-weight:500}.empty-state small{font-size:.875rem;color:#475569;line-height:1.5;margin:0}.status-gray{color:#475569}.status-blue{color:#3b82f6}.status-orange{color:#f59e0b}.status-green{color:#10b981}.status-red{color:#ef4444}.status-success{color:#10b981}.status-warning{color:#f59e0b}.status-danger{color:#ef4444}.status-info{color:#3b82f6}.material-tabs ::ng-deep .mat-mdc-tab-group .mat-mdc-tab-header{border-bottom:1px solid #e2e8f0;background:#f8fafc}.material-tabs ::ng-deep .mat-mdc-tab-group .mat-mdc-tab-label{padding:1rem 2rem;font-weight:500}@media(max-width:768px){.material-tabs ::ng-deep .mat-mdc-tab-group .mat-mdc-tab-label{padding:.75rem 1rem;font-size:.875rem}}.material-tabs ::ng-deep .mat-mdc-tab-group .mat-mdc-tab-body-wrapper{background:#fff}.material-tabs ::ng-deep .mat-mdc-tab-group .mat-mdc-tab-body-content{overflow:visible!important}.tab-content{padding:2rem}@media(max-width:768px){.tab-content{padding:1.5rem}}@media(max-width:640px){.tab-content{padding:1rem}}.fade-in{animation:fadeIn .3s ease-in-out}.material-custom ::ng-deep .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper{font-size:.75rem}.material-custom ::ng-deep .mat-mdc-form-field.mat-form-field-invalid .mat-mdc-form-field-outline-thick{color:#ef4444}.material-custom ::ng-deep .mat-datepicker-popup .mat-calendar{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.material-custom ::ng-deep .mat-mdc-checkbox .mdc-checkbox__background{border-color:#cbd5e1}.material-custom ::ng-deep .mat-mdc-checkbox.mat-mdc-checkbox-checked .mdc-checkbox__background{background-color:#1e293b;border-color:#1e293b}.material-custom ::ng-deep .mat-mdc-icon-button.mat-warn{color:#ef4444}.material-custom ::ng-deep .mat-mdc-icon-button.mat-warn:hover{background-color:#ef44441a}.loading-overlay{position:fixed;inset:0;background:#fffc;display:flex;justify-content:center;align-items:center;z-index:9999}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.project-selection-dialog-container .mdc-dialog__surface{max-width:1200px!important;width:90vw!important;max-height:80vh!important;border-radius:16px!important}.route-disabled{opacity:.5;pointer-events:none;cursor:not-allowed}.success-snackbar{background-color:#10b981!important;color:#fff!important}.success-snackbar .mdc-snackbar__surface{background-color:#10b981!important}.warning-snackbar{background-color:#f59e0b!important;color:#fff!important}.warning-snackbar .mdc-snackbar__surface{background-color:#f59e0b!important}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:none!important}.footer-branding{text-align:center;padding:32px 24px;margin-top:32px;border-top:1px solid #e2e8f0;margin-bottom:0!important}.footer-branding p{color:#475569;font-size:.875rem;margin:0}
