:root{--primary-color: #132b3c;--primary-color-alpha: rgba(59, 130, 246, .1);--secondary-color: #fd2f2f;--secondary-color-alpha: #fd2f2f71;--accent-color: #20498d;--accent-color-alpha: rgba(59, 130, 246, .1);--success-color: #10b981;--success-color-alpha: rgba(16, 185, 129, .1);--warning-color: #f59e0b;--warning-color-alpha: rgba(245, 158, 11, .1);--danger-color: #ef4444;--danger-color-alpha: rgba(239, 68, 68, .1);--info-color: #06b6d4;--info-color-alpha: rgba(6, 182, 212, .1);--text-color: #132b3c;--text-muted: #6b7280;--text-light: #9ca3af;--text-white: #f7fafc;--background-color: #f7fafc;--surface-color: #ffffff;--surface-hover-color: #f9fafb;--backdrop-color: rgba(0, 0, 0, .5);--border-color: #e5e7eb;--border-light: #f3f4f6;--input-bg: #f9fafb;--input-border: #e2e8f0;--btn-default-bg: #f9fafb;--btn-default-border: #e2e8f0;--tbl-head-bg: #f9fafb;--tbl-td-bg: #ffffff;--tbl-border: #e2e8f0;--sidebar-width: 250px;--topbar-height: 80px;--border-radius-sm: .25rem;--border-radius: .375rem;--border-radius-lg: .5rem;--border-radius-xl: .75rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}.odc-page-container{padding:var(--spacing-xl) 0;margin:0 auto;width:100%}.odc-page-header{margin-bottom:var(--spacing-xl);text-align:center;padding:var(--spacing-xl) 0;background:var(--surface-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.odc-page-header .odc-page-header-icon{font-size:2.5rem;margin-bottom:var(--spacing-md);color:var(--text-muted)}.odc-page-header .odc-page-header-title{font-size:var(--font-size-2xl);font-weight:700;margin-bottom:var(--spacing-sm);color:var(--text-color)}.odc-page-header .odc-page-header-subtitle{font-size:var(--font-size-base);color:var(--text-muted);margin:0}.odc-page-header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);padding:0 var(--spacing-xl)}.odc-page-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-color);margin:0}.odc-page-actions{display:flex;gap:var(--spacing-sm);align-items:center}.odc-content-card{background:var(--surface-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-xl);border:1px solid var(--border-color);transition:all var(--transition-base)}.odc-content-card:hover{box-shadow:var(--shadow-md)}.odc-layout-two-column{display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-xl);align-items:start}@media (max-width: 1024px){.odc-layout-two-column{grid-template-columns:1fr;gap:var(--spacing-lg)}}.odc-layout-two-column .odc-layout-sidebar{position:sticky;top:var(--spacing-lg)}@media (max-width: 1024px){.odc-layout-two-column .odc-layout-sidebar{position:static}}.odc-form-layout .odc-form-main-row{display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-xl);align-items:start}@media (max-width: 1024px){.odc-form-layout .odc-form-main-row{grid-template-columns:1fr;gap:var(--spacing-lg)}}.odc-form-layout .odc-form-side-col{position:sticky;top:var(--spacing-lg)}@media (max-width: 1024px){.odc-form-layout .odc-form-side-col{position:static}}.odc-section{margin-bottom:var(--spacing-xl)}.odc-section:last-child{margin-bottom:0}.odc-section-header{margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.odc-section-title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-color);margin:0;display:flex;align-items:center;gap:var(--spacing-sm)}.odc-section-title .odc-section-icon{color:var(--text-muted)}.odc-list-layout .odc-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing-md)}.odc-list-layout .odc-list-title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-color);margin:0}.odc-list-layout .odc-list-actions{display:flex;gap:var(--spacing-sm);align-items:center}.odc-detail-layout .odc-detail-header{margin-bottom:var(--spacing-xl)}.odc-detail-layout .odc-detail-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-color);margin-bottom:var(--spacing-sm)}.odc-detail-layout .odc-detail-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.odc-detail-layout .odc-detail-meta-item{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-muted)}.odc-detail-layout .odc-detail-meta-item .odc-meta-icon{color:var(--text-muted)}.odc-detail-layout .odc-detail-meta-item .odc-meta-label{font-weight:500;color:var(--text-color)}.odc-grid{display:grid;gap:var(--spacing-md)}.odc-grid.odc-grid-2{grid-template-columns:repeat(2,1fr)}.odc-grid.odc-grid-3{grid-template-columns:repeat(3,1fr)}.odc-grid.odc-grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 768px){.odc-grid{grid-template-columns:1fr!important}}.odc-form-group{margin-bottom:var(--spacing-lg);display:flex;flex-direction:column}.odc-form-label{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-sm)}.odc-form-label .odc-form-label-icon{color:var(--text-muted)}.odc-form-input{padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:var(--font-size-base);transition:all var(--transition-base);width:100%}.odc-form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha)}.odc-form-input:hover{border-color:var(--text-light)}.odc-form-input.odc-form-textarea{resize:vertical}.odc-form-error{color:var(--danger-color);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.odc-alert,.alert{padding:var(--spacing-md);border-radius:var(--border-radius);margin-bottom:var(--spacing-md);display:flex;align-items:flex-start;gap:var(--spacing-sm)}.odc-alert.odc-alert-success,.odc-alert.alert-success,.odc-alert-success.alert,.alert.alert-success{background:var(--success-color-alpha);color:var(--success-color);border:1px solid var(--success-color)}.odc-alert.odc-alert-warning,.odc-alert-warning.alert{background:var(--warning-color-alpha);color:var(--warning-color);border:1px solid var(--warning-color)}.odc-alert.odc-alert-danger,.odc-alert.alert-danger,.odc-alert-danger.alert,.alert.alert-danger{background:var(--danger-color-alpha);color:var(--danger-color);border:1px solid var(--danger-color)}.odc-alert.odc-alert-info,.odc-alert-info.alert{background:var(--info-color-alpha);color:var(--info-color);border:1px solid var(--info-color)}.odc-alert-content{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.odc-badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);font-size:var(--font-size-sm);font-weight:500}.odc-badge.odc-badge-success{background:var(--success-color-alpha);color:var(--success-color)}.odc-badge.odc-badge-warning{background:var(--warning-color-alpha);color:var(--warning-color)}.odc-badge.odc-badge-danger{background:var(--danger-color-alpha);color:var(--danger-color)}.odc-badge.odc-badge-info{background:var(--info-color-alpha);color:var(--info-color)}.odc-badge.odc-badge-secondary{background:var(--border-light);color:var(--text-muted)}.odc-table{width:100%;border-collapse:collapse;background:var(--surface-color);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow-sm)}.odc-table th{background:var(--tbl-head-bg);padding:var(--spacing-md);text-align:left;font-weight:600;color:var(--text-color);border-bottom:1px solid var(--border-color)}.odc-table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-color);color:var(--text-color)}.odc-table tr:hover,.odc-table.odc-table-hoverable tr:hover{background:var(--surface-hover-color)}.odc-table-actions .odc-btn-primary svg{stroke:var(--text-white)}.odc-table-actions .odc-btn-danger svg{stroke:var(--danger-color)}@media (max-width: 1200px){.odc-page-container{padding:var(--spacing-lg) var(--spacing-md)}}@media (max-width: 768px){.odc-page-container{padding:var(--spacing-md)}.odc-content-card{padding:var(--spacing-lg)}.odc-section-header,.odc-list-header{flex-direction:column;align-items:flex-start}}.odc-table-container{overflow-x:auto;border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.odc-table-actions{width:120px;text-align:center}.odc-table-actions .odc-btn-primary{color:var(--text-white)!important}.odc-table-actions .odc-btn-primary svg{color:var(--text-white)!important}.odc-table-cell-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.odc-table-cell-title{font-weight:600;color:var(--text-color)}.odc-table-cell-subtitle{font-size:var(--font-size-sm);color:var(--text-muted)}.odc-table-empty{text-align:center;padding:var(--spacing-2xl)}.odc-search-container{margin-bottom:var(--spacing-lg)}.odc-search-input-wrapper{position:relative;max-width:400px}.odc-search-input-wrapper .odc-search-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);width:1.25rem;height:1.25rem;color:var(--text-muted);pointer-events:none}.odc-search-input-wrapper .odc-search-input{padding-left:2.75rem;width:100%}.odc-filters-panel{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-top:var(--spacing-md)}.odc-filters-actions{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end}.odc-empty-state{text-align:center;padding:var(--spacing-2xl);color:var(--text-muted)}.odc-empty-state .odc-empty-icon{width:4rem;height:4rem;margin:0 auto var(--spacing-lg);color:var(--text-light)}.odc-empty-state .odc-empty-title{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--spacing-sm);color:var(--text-color)}.odc-empty-state .odc-empty-description{font-size:var(--font-size-base);margin-bottom:var(--spacing-lg);max-width:400px;margin-left:auto;margin-right:auto}.odc-action-group{display:flex;gap:var(--spacing-xs);align-items:center;justify-content:center}.odc-pagination-container{margin-top:var(--spacing-lg);display:flex;justify-content:center}.odc-text-bold{font-weight:600}.odc-text-primary{color:var(--primary-color)}.odc-text-muted{color:var(--text-muted)}.odc-text-light{color:var(--text-light)}.odc-icon{width:1.25rem;height:1.25rem;display:inline-block;vertical-align:middle}.odc-row{display:flex;flex-wrap:wrap;margin:0 calc(-1 * var(--spacing-md) / 2)}.odc-row.odc-row-gap-sm{gap:var(--spacing-sm)}.odc-row.odc-row-gap-md{gap:var(--spacing-md)}.odc-row.odc-row-gap-lg{gap:var(--spacing-lg)}.odc-col{flex:1;padding:0 calc(var(--spacing-md) / 2)}.odc-col.odc-col-md-1{flex:0 0 8.333333%}.odc-col.odc-col-md-2{flex:0 0 16.666667%}.odc-col.odc-col-md-3{flex:0 0 25%}.odc-col.odc-col-md-4{flex:0 0 33.333333%}.odc-col.odc-col-md-5{flex:0 0 41.666667%}.odc-col.odc-col-md-6{flex:0 0 50%}.odc-col.odc-col-md-7{flex:0 0 58.333333%}.odc-col.odc-col-md-8{flex:0 0 66.666667%}.odc-col.odc-col-md-9{flex:0 0 75%}.odc-col.odc-col-md-10{flex:0 0 83.333333%}.odc-col.odc-col-md-11{flex:0 0 91.666667%}.odc-col.odc-col-md-12{flex:0 0 100%}@media (max-width: 768px){.odc-col{flex:0 0 100%!important}}.odc-section-header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);width:100%}*{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;color:var(--text-color);box-sizing:border-box}body{margin:0;background-color:var(--background-color);line-height:1.5}.inline-flex,.flex-inline{display:inline-flex}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-initial{flex:0 1 auto}.flex-none{flex:none}.flex-grow-0{flex-grow:0}.flex-grow-1{flex-grow:1}.flex-grow-2{flex-grow:2}.flex-grow-3{flex-grow:3}.flex-shrink-0{flex-shrink:0}.flex-shrink-1{flex-shrink:1}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.self-auto{align-self:auto}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.self-baseline{align-self:baseline}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-center{align-content:center}.content-between{align-content:space-between}.content-around{align-content:space-around}.content-stretch{align-content:stretch}.gap-0{gap:0}.gap-1{gap:var(--spacing-xs)}.gap-2{gap:var(--spacing-sm)}.gap-3{gap:var(--spacing-md)}.gap-4{gap:var(--spacing-lg)}.gap-5{gap:var(--spacing-xl)}.gap-6{gap:var(--spacing-2xl)}.row-gap-0{row-gap:0}.row-gap-1{row-gap:var(--spacing-xs)}.row-gap-2{row-gap:var(--spacing-sm)}.row-gap-3{row-gap:var(--spacing-md)}.row-gap-4{row-gap:var(--spacing-lg)}.row-gap-5{row-gap:var(--spacing-xl)}.row-gap-6{row-gap:var(--spacing-2xl)}.col-gap-0{-moz-column-gap:0;column-gap:0}.col-gap-1{-moz-column-gap:var(--spacing-xs);column-gap:var(--spacing-xs)}.col-gap-2{-moz-column-gap:var(--spacing-sm);column-gap:var(--spacing-sm)}.col-gap-3{-moz-column-gap:var(--spacing-md);column-gap:var(--spacing-md)}.col-gap-4{-moz-column-gap:var(--spacing-lg);column-gap:var(--spacing-lg)}.col-gap-5{-moz-column-gap:var(--spacing-xl);column-gap:var(--spacing-xl)}.col-gap-6{-moz-column-gap:var(--spacing-2xl);column-gap:var(--spacing-2xl)}.order-first{order:-9999}.order-last{order:9999}.order-none{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}@media (min-width: 640px){.sm\:flex{display:flex}.sm\:inline-flex{display:inline-flex}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:flex-wrap{flex-wrap:wrap}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:items-start{align-items:flex-start}.sm\:items-end{align-items:flex-end}.sm\:items-center{align-items:center}.sm\:items-baseline{align-items:baseline}.sm\:items-stretch{align-items:stretch}.sm\:justify-start{justify-content:flex-start}.sm\:justify-end{justify-content:flex-end}.sm\:justify-center{justify-content:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-around{justify-content:space-around}.sm\:justify-evenly{justify-content:space-evenly}}@media (min-width: 768px){.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:flex-row{flex-direction:row}.md\:flex-col{flex-direction:column}.md\:flex-wrap{flex-wrap:wrap}.md\:flex-nowrap{flex-wrap:nowrap}.md\:items-start{align-items:flex-start}.md\:items-end{align-items:flex-end}.md\:items-center{align-items:center}.md\:items-baseline{align-items:baseline}.md\:items-stretch{align-items:stretch}.md\:justify-start{justify-content:flex-start}.md\:justify-end{justify-content:flex-end}.md\:justify-center{justify-content:center}.md\:justify-between{justify-content:space-between}.md\:justify-around{justify-content:space-around}.md\:justify-evenly{justify-content:space-evenly}}@media (min-width: 1024px){.lg\:flex{display:flex}.lg\:inline-flex{display:inline-flex}.lg\:flex-row{flex-direction:row}.lg\:flex-col{flex-direction:column}.lg\:flex-wrap{flex-wrap:wrap}.lg\:flex-nowrap{flex-wrap:nowrap}.lg\:items-start{align-items:flex-start}.lg\:items-end{align-items:flex-end}.lg\:items-center{align-items:center}.lg\:items-baseline{align-items:baseline}.lg\:items-stretch{align-items:stretch}.lg\:justify-start{justify-content:flex-start}.lg\:justify-end{justify-content:flex-end}.lg\:justify-center{justify-content:center}.lg\:justify-between{justify-content:space-between}.lg\:justify-around{justify-content:space-around}.lg\:justify-evenly{justify-content:space-evenly}}@media (min-width: 1280px){.xl\:flex{display:flex}.xl\:inline-flex{display:inline-flex}.xl\:flex-row{flex-direction:row}.xl\:flex-col{flex-direction:column}.xl\:flex-wrap{flex-wrap:wrap}.xl\:flex-nowrap{flex-wrap:nowrap}.xl\:items-start{align-items:flex-start}.xl\:items-end{align-items:flex-end}.xl\:items-center{align-items:center}.xl\:items-baseline{align-items:baseline}.xl\:items-stretch{align-items:stretch}.xl\:justify-start{justify-content:flex-start}.xl\:justify-end{justify-content:flex-end}.xl\:justify-center{justify-content:center}.xl\:justify-between{justify-content:space-between}.xl\:justify-around{justify-content:space-around}.xl\:justify-evenly{justify-content:space-evenly}}.m-0{margin:0}.m-1{margin:var(--spacing-xs)}.m-2{margin:var(--spacing-sm)}.m-3{margin:var(--spacing-md)}.m-4{margin:var(--spacing-lg)}.m-5{margin:var(--spacing-xl)}.m-6{margin:var(--spacing-2xl)}.m-auto{margin:auto}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing-md)}.mt-4{margin-top:var(--spacing-lg)}.mt-5{margin-top:var(--spacing-xl)}.mt-6{margin-top:var(--spacing-2xl)}.mt-auto{margin-top:auto}.mr-0{margin-right:0}.mr-1{margin-right:var(--spacing-xs)}.mr-2{margin-right:var(--spacing-sm)}.mr-3{margin-right:var(--spacing-md)}.mr-4{margin-right:var(--spacing-lg)}.mr-5{margin-right:var(--spacing-xl)}.mr-6{margin-right:var(--spacing-2xl)}.mr-auto{margin-right:auto}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:var(--spacing-lg)}.mb-5{margin-bottom:var(--spacing-xl)}.mb-6{margin-bottom:var(--spacing-2xl)}.mb-auto{margin-bottom:auto}.ml-0{margin-left:0}.ml-1{margin-left:var(--spacing-xs)}.ml-2{margin-left:var(--spacing-sm)}.ml-3{margin-left:var(--spacing-md)}.ml-4{margin-left:var(--spacing-lg)}.ml-5{margin-left:var(--spacing-xl)}.ml-6{margin-left:var(--spacing-2xl)}.ml-auto{margin-left:auto}.mx-0{margin-left:0;margin-right:0}.mx-1{margin-left:var(--spacing-xs);margin-right:var(--spacing-xs)}.mx-2{margin-left:var(--spacing-sm);margin-right:var(--spacing-sm)}.mx-3{margin-left:var(--spacing-md);margin-right:var(--spacing-md)}.mx-4{margin-left:var(--spacing-lg);margin-right:var(--spacing-lg)}.mx-5{margin-left:var(--spacing-xl);margin-right:var(--spacing-xl)}.mx-6{margin-left:var(--spacing-2xl);margin-right:var(--spacing-2xl)}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-1{margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.my-2{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.my-3{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md)}.my-4{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.my-5{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.my-6{margin-top:var(--spacing-2xl);margin-bottom:var(--spacing-2xl)}.my-auto{margin-top:auto;margin-bottom:auto}.p-0{padding:0}.p-1{padding:var(--spacing-xs)}.p-2{padding:var(--spacing-sm)}.p-3{padding:var(--spacing-md)}.p-4{padding:var(--spacing-lg)}.p-5{padding:var(--spacing-xl)}.p-6{padding:var(--spacing-2xl)}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing-xs)}.pt-2{padding-top:var(--spacing-sm)}.pt-3{padding-top:var(--spacing-md)}.pt-4{padding-top:var(--spacing-lg)}.pt-5{padding-top:var(--spacing-xl)}.pt-6{padding-top:var(--spacing-2xl)}.pr-0{padding-right:0}.pr-1{padding-right:var(--spacing-xs)}.pr-2{padding-right:var(--spacing-sm)}.pr-3{padding-right:var(--spacing-md)}.pr-4{padding-right:var(--spacing-lg)}.pr-5{padding-right:var(--spacing-xl)}.pr-6{padding-right:var(--spacing-2xl)}.pb-0{padding-bottom:0}.pb-1{padding-bottom:var(--spacing-xs)}.pb-2{padding-bottom:var(--spacing-sm)}.pb-3{padding-bottom:var(--spacing-md)}.pb-4{padding-bottom:var(--spacing-lg)}.pb-5{padding-bottom:var(--spacing-xl)}.pb-6{padding-bottom:var(--spacing-2xl)}.pl-0{padding-left:0}.pl-1{padding-left:var(--spacing-xs)}.pl-2{padding-left:var(--spacing-sm)}.pl-3{padding-left:var(--spacing-md)}.pl-4{padding-left:var(--spacing-lg)}.pl-5{padding-left:var(--spacing-xl)}.pl-6{padding-left:var(--spacing-2xl)}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:var(--spacing-xs);padding-right:var(--spacing-xs)}.px-2{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.px-3{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.px-4{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.px-5{padding-left:var(--spacing-xl);padding-right:var(--spacing-xl)}.px-6{padding-left:var(--spacing-2xl);padding-right:var(--spacing-2xl)}.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:var(--spacing-xs);padding-bottom:var(--spacing-xs)}.py-2{padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.py-3{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.py-4{padding-top:var(--spacing-lg);padding-bottom:var(--spacing-lg)}.py-5{padding-top:var(--spacing-xl);padding-bottom:var(--spacing-xl)}.py-6{padding-top:var(--spacing-2xl);padding-bottom:var(--spacing-2xl)}.space-x-0>*+*{margin-left:0}.space-x-1>*+*{margin-left:var(--spacing-xs)}.space-x-2>*+*{margin-left:var(--spacing-sm)}.space-x-3>*+*{margin-left:var(--spacing-md)}.space-x-4>*+*{margin-left:var(--spacing-lg)}.space-x-5>*+*{margin-left:var(--spacing-xl)}.space-x-6>*+*{margin-left:var(--spacing-2xl)}.space-y-0>*+*{margin-top:0}.space-y-1>*+*{margin-top:var(--spacing-xs)}.space-y-2>*+*{margin-top:var(--spacing-sm)}.space-y-3>*+*{margin-top:var(--spacing-md)}.space-y-4>*+*{margin-top:var(--spacing-lg)}.space-y-5>*+*{margin-top:var(--spacing-xl)}.space-y-6>*+*{margin-top:var(--spacing-2xl)}.text-xs{font-size:var(--font-size-xs)!important}.text-sm{font-size:var(--font-size-sm)!important}.text-base{font-size:var(--font-size-base)!important}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.font-thin{font-weight:100}.font-extralight{font-weight:200}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-black{font-weight:900}.text-transparent{color:transparent}.text-current{color:currentColor}.text-black{color:#000}.text-white{color:#fff}.text-primary{color:var(--primary-color)}.text-success{color:var(--success-color)}.text-warning{color:var(--warning-color)}.text-danger{color:var(--danger-color)}.text-info{color:var(--info-color)}.text-muted{color:var(--text-muted)}.text-light{color:var(--text-light)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.text-start{text-align:start}.text-end{text-align:end}.underline{text-decoration:underline}.line-through{text-decoration:line-through}.no-underline{text-decoration:none}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.italic{font-style:italic}.not-italic{font-style:normal}.leading-none{line-height:1}.leading-tight{line-height:1.25}.leading-snug{line-height:1.375}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.625}.leading-loose{line-height:2}.tracking-tighter{letter-spacing:-.05em}.tracking-tight{letter-spacing:-.025em}.tracking-normal{letter-spacing:0em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.word-spacing-tight{word-spacing:-.05em}.word-spacing-normal{word-spacing:0em}.word-spacing-wide{word-spacing:.05em}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overflow-ellipsis{text-overflow:ellipsis}.overflow-clip{text-overflow:clip}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.whitespace-break-spaces{white-space:break-spaces}.break-normal{overflow-wrap:normal;word-break:normal}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.align-baseline{vertical-align:baseline}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.align-bottom{vertical-align:bottom}.align-text-top{vertical-align:text-top}.align-text-bottom{vertical-align:text-bottom}.align-sub{vertical-align:sub}.align-super{vertical-align:super}.list-none{list-style-type:none}.list-disc{list-style-type:disc}.list-decimal{list-style-type:decimal}.list-inside{list-style-position:inside}.list-outside{list-style-position:outside}.placeholder-transparent::-moz-placeholder{color:transparent}.placeholder-transparent::placeholder{color:transparent}.placeholder-current::-moz-placeholder{color:currentColor}.placeholder-current::placeholder{color:currentColor}.placeholder-black::-moz-placeholder{color:#000}.placeholder-black::placeholder{color:#000}.placeholder-white::-moz-placeholder{color:#fff}.placeholder-white::placeholder{color:#fff}.placeholder-primary::-moz-placeholder{color:var(--primary-color)}.placeholder-primary::placeholder{color:var(--primary-color)}.placeholder-muted::-moz-placeholder{color:var(--text-muted)}.placeholder-muted::placeholder{color:var(--text-muted)}@media (min-width: 640px){.sm\:text-xs{font-size:var(--font-size-xs)}.sm\:text-sm{font-size:var(--font-size-sm)}.sm\:text-base{font-size:var(--font-size-base)}.sm\:text-lg{font-size:var(--font-size-lg)}.sm\:text-xl{font-size:var(--font-size-xl)}.sm\:text-2xl{font-size:var(--font-size-2xl)}.sm\:text-left{text-align:left}.sm\:text-center{text-align:center}.sm\:text-right{text-align:right}.sm\:text-justify{text-align:justify}}@media (min-width: 768px){.md\:text-xs{font-size:var(--font-size-xs)}.md\:text-sm{font-size:var(--font-size-sm)}.md\:text-base{font-size:var(--font-size-base)}.md\:text-lg{font-size:var(--font-size-lg)}.md\:text-xl{font-size:var(--font-size-xl)}.md\:text-2xl{font-size:var(--font-size-2xl)}.md\:text-left{text-align:left}.md\:text-center{text-align:center}.md\:text-right{text-align:right}.md\:text-justify{text-align:justify}}@media (min-width: 1024px){.lg\:text-xs{font-size:var(--font-size-xs)}.lg\:text-sm{font-size:var(--font-size-sm)}.lg\:text-base{font-size:var(--font-size-base)}.lg\:text-lg{font-size:var(--font-size-lg)}.lg\:text-xl{font-size:var(--font-size-xl)}.lg\:text-2xl{font-size:var(--font-size-2xl)}.lg\:text-left{text-align:left}.lg\:text-center{text-align:center}.lg\:text-right{text-align:right}.lg\:text-justify{text-align:justify}}@media (min-width: 1280px){.xl\:text-xs{font-size:var(--font-size-xs)}.xl\:text-sm{font-size:var(--font-size-sm)}.xl\:text-base{font-size:var(--font-size-base)}.xl\:text-lg{font-size:var(--font-size-lg)}.xl\:text-xl{font-size:var(--font-size-xl)}.xl\:text-2xl{font-size:var(--font-size-2xl)}.xl\:text-left{text-align:left}.xl\:text-center{text-align:center}.xl\:text-right{text-align:right}.xl\:text-justify{text-align:justify}}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row-group{display:table-row-group}.flow-root{display:flow-root}.grid{display:grid}.inline-grid{display:inline-grid}.contents{display:contents}.list-item{display:list-item}.hidden{display:none}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-auto{z-index:auto}.w-auto{width:auto}.w-full{width:100%}.w-screen{width:100vw}.w-min{width:-moz-min-content;width:min-content}.w-max{width:-moz-max-content;width:max-content}.w-fit{width:-moz-fit-content;width:fit-content}.w-200px{width:200px!important}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.h-min{height:-moz-min-content;height:min-content}.h-max{height:-moz-max-content;height:max-content}.h-fit{height:-moz-fit-content;height:fit-content}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.overflow-x-visible{overflow-x:visible}.overflow-y-visible{overflow-y:visible}.overflow-x-scroll{overflow-x:scroll}.overflow-y-scroll{overflow-y:scroll}.visible{visibility:visible}.invisible{visibility:hidden}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.cursor-auto{cursor:auto}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.cursor-text{cursor:text}.cursor-move{cursor:move}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.select-auto{-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.resize-none{resize:none}.resize-y{resize:vertical}.resize-x{resize:horizontal}.resize{resize:both}.box-border{box-sizing:border-box}.box-content{box-sizing:content-box}.justify-between{justify-content:space-between}.notification-dropdown{position:relative;display:inline-block;font-family:inherit}.notification-icon{background:none;border:none;position:relative;cursor:pointer;padding:0;outline:none;transition:box-shadow .2s;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.notification-icon:focus,.notification-icon:hover{background:#f3f6fa;box-shadow:0 2px 8px #0000000f}.notification-badge{position:absolute;top:2px;right:2px;background:#ef4444;color:#fff;border-radius:50%;font-size:12px;padding:3px 7px;min-width:20px;text-align:center;font-weight:700;box-shadow:0 2px 6px #ef444426;border:2px solid #fff;z-index:2;letter-spacing:.5px}.notification-list{display:none;position:absolute;right:0;top:44px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;min-width:340px;max-width:420px;box-shadow:0 8px 32px #00000021;z-index:1000;overflow:hidden;transition:opacity .2s,transform .2s;opacity:0;pointer-events:none;transform:translateY(10px)}.notification-dropdown.open .notification-list{display:block;opacity:1;pointer-events:auto;transform:translateY(0)}.notification-list-header{padding:14px 20px 10px;font-size:15px;font-weight:700;background:#f8fafc;border-bottom:1px solid #f3f3f3;display:flex;align-items:center;justify-content:space-between}.notification-list-close{background:none;border:none;font-size:18px;color:#888;cursor:pointer;margin-left:8px;padding:0 4px;border-radius:4px;transition:background .15s}.notification-list-close:hover{background:#f3f6fa;color:#ef4444}.notification-item{padding:16px 20px;border-bottom:1px solid #f3f3f3;background:#fff;font-size:14px;transition:background .15s;cursor:pointer;display:flex;flex-direction:column;gap:2px}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:#f6faff}.notification-item.unread{background:#eaf3ff;font-weight:700;border-left:4px solid #2563eb}.notification-title{font-weight:700;font-size:14px;margin-bottom:2px;color:#222}.notification-body{font-size:13px;color:#444;margin-bottom:4px}.notification-link{font-size:13px;color:#2563eb;text-decoration:underline;margin-right:8px;transition:color .15s}.notification-link:hover{color:#1d4ed8}.notification-time{font-size:12px;color:#888;margin-top:2px}.notification-mark-read{font-size:12px;color:#2563eb;background:none;border:none;cursor:pointer;padding:0;margin-left:8px;border-radius:3px;transition:background .15s}.notification-mark-read:hover{background:#e0e7ff;color:#1d4ed8}.notification-empty{color:#888;text-align:center;padding:24px 0;font-size:14px}.notification-list-clear{background:none;border:none;color:#888;font-size:13px;cursor:pointer;padding:0 6px;border-radius:4px;transition:background .15s,color .15s;margin-right:2px}.notification-list-clear:hover,.notification-list-clear:focus{background:#f3f6fa;color:#ef4444}@media (max-width: 500px){.notification-list{min-width:90vw;max-width:98vw;right:-10vw;left:auto}.notification-list-header{font-size:14px;padding:12px 10px 8px}.notification-item{padding:12px 10px;font-size:13px}}.topbar{height:var(--topbar-height);display:flex;align-items:center;justify-content:space-between;background-color:var(--surface-color);padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-color);position:fixed;width:100%;z-index:99;box-shadow:var(--shadow-sm)}.topbar__logo{font-size:var(--font-size-xl);font-weight:600;color:var(--text-color)}.topbar__search{flex-grow:1;max-width:400px;margin:0 var(--spacing-md)}.topbar__search .search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--border-radius);font-size:var(--font-size-base);color:var(--text-color);transition:all var(--transition-base)}.topbar__search .search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha);background-color:var(--surface-color)}.topbar__right{display:flex;align-items:center;gap:var(--spacing-sm)}.topbar .notification-button-group{position:relative;margin-right:var(--spacing-md)}.topbar .notification-button-group .notification-button{border:none;cursor:pointer;height:2.1875rem;width:2.1875rem;display:flex;background:none;color:var(--text-muted);transition:color var(--transition-base)}.topbar .notification-button-group .notification-button:hover{color:var(--text-color)}.topbar .notification-button-group .notification-button svg{height:2.1875rem;width:2.1875rem}.topbar .notification-button-group .notification-count{position:absolute;top:-.5rem;right:-.5rem;background-color:var(--danger-color);color:#fff;padding:.4rem .6rem;border-radius:50%;font-size:var(--font-size-xs);font-weight:600;min-width:1.25rem;text-align:center}.topbar .user-info{position:relative;margin-right:var(--spacing-sm)}.topbar .user-info .hidden{display:none}.topbar .user-info .user-button{display:flex;align-items:center;padding:var(--spacing-sm);background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:50%;cursor:pointer;transition:all var(--transition-base)}.topbar .user-info .user-button:hover{background-color:var(--surface-hover-color);border-color:var(--text-muted)}.topbar .user-info .user-badge{display:inline-block;width:2rem;height:2rem;border-radius:50%;background-color:var(--primary-color);color:#fff;text-align:center;line-height:2rem;font-weight:600;font-size:var(--font-size-sm)}.topbar .user-info .user-dropdown{position:absolute;top:100%;right:0;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-md);width:180px;z-index:10;margin-top:var(--spacing-xs)}.topbar .user-info .user-dropdown .user-dropdown__item{padding:var(--spacing-md);cursor:pointer;color:var(--text-color);font-size:var(--font-size-sm);text-decoration:none;display:block;transition:background-color var(--transition-base)}.topbar .user-info .user-dropdown .user-dropdown__item:hover{background-color:var(--surface-hover-color)}.topbar .user-info .user-dropdown .user-dropdown__item:first-child{border-bottom:1px solid var(--border-color)}.topbar .admin-button{height:1.5625rem;width:1.5625rem;border:none;display:flex;background:none;color:var(--text-muted);cursor:pointer;transition:color var(--transition-base)}.topbar .admin-button:hover{color:var(--text-color)}.topbar .admin-button svg{height:1.5625rem;width:1.5625rem}.topbar .hidden{display:none!important}.topbar .sidebar-toggle{display:none;margin-left:1rem;z-index:130;padding:var(--spacing-sm);background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition-base)}.topbar .sidebar-toggle:hover{background-color:var(--surface-hover-color)}.topbar .sidebar-toggle svg{width:1.5rem;height:1.5rem;color:var(--text-color)}@media (max-width: 1200px){.topbar .sidebar-toggle{display:block}}.sidebar{width:var(--sidebar-width);height:100vh;background-color:var(--surface-color);box-shadow:var(--shadow-md);display:flex;flex-direction:column;justify-content:space-between;position:fixed;z-index:120;border-right:1px solid var(--border-color);transition:transform var(--transition-base)}@media (max-width: 1200px){.sidebar{transform:translate(-100%)}.sidebar.sidebar--open{transform:translate(0)}}.sidebar__logo{text-align:center;padding:var(--spacing-xl);border-bottom:1px solid var(--border-color)}@media (max-width: 768px){.sidebar__logo{padding:var(--spacing-lg)}}.sidebar__logo img{width:150px;height:50px;-o-object-fit:contain;object-fit:contain}@media (max-width: 768px){.sidebar__logo img{width:120px;height:40px}}.sidebar__menu{flex-grow:1;padding:var(--spacing-xl)}@media (max-width: 768px){.sidebar__menu{padding:var(--spacing-lg)}}.sidebar__menu ul{list-style:none;padding:0;margin:0}.sidebar__menu li{margin:var(--spacing-sm) 0}.sidebar__menu a{display:flex;align-items:center;color:var(--text-color);text-decoration:none;font-size:var(--font-size-sm);padding:var(--spacing-sm);border-radius:var(--border-radius);transition:all var(--transition-base);gap:var(--spacing-sm)}.sidebar__menu a svg{width:1.25rem;height:1.25rem;flex-shrink:0}.sidebar__menu a:hover{background-color:var(--surface-hover-color);color:var(--primary-color);transform:translate(2px)}.sidebar__menu .active a{background-color:var(--primary-color-alpha);color:var(--primary-color);font-weight:600;border-left:3px solid var(--primary-color);padding-left:calc(var(--spacing-md) - 3px)}.sidebar__settings{padding:var(--spacing-xl);text-align:center;border-top:1px solid var(--border-color)}@media (max-width: 768px){.sidebar__settings{padding:var(--spacing-lg)}}.sidebar__settings a{display:block;color:var(--text-muted);font-size:var(--font-size-base);padding:var(--spacing-md);border-radius:var(--border-radius);transition:all var(--transition-base);text-decoration:none}.sidebar__settings a:hover{background-color:var(--surface-hover-color);color:var(--text-color)}.sidebar-group{margin-bottom:var(--spacing-lg)}.sidebar-group-header{display:flex;align-items:center;justify-content:space-between;font-weight:500;font-size:.9rem;padding:var(--spacing-sm) var(--spacing-md);background:var(--surface-hover-color);border-radius:var(--border-radius);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;margin-bottom:.25rem;transition:background .2s}.sidebar-group-header:hover{background:var(--primary-color-alpha);color:var(--primary-color)}.sidebar-group-toggle-icon{transition:transform .2s,color .2s;font-size:.7em;margin-left:.5em;color:var(--text-color)!important;display:inline-block;transform:rotate(0)!important}.sidebar-group-toggle-icon--open{color:var(--primary-color)!important;transform:rotate(90deg)!important}.sidebar-group-list{background:var(--surface-color);border-radius:var(--border-radius-lg);box-shadow:0 2px 8px #0000000a;padding:.25rem .25rem .25rem .5rem;margin-bottom:.5rem;transition:box-shadow .2s}.sidebar-group-list li{margin:.15rem 0}.sidebar-group-list .active a{background:var(--primary-color-alpha);color:var(--primary-color);font-weight:600;border-left:3px solid var(--primary-color);padding-left:calc(var(--spacing-md) - 3px)}.sidebar-group-list[style*="display: block"]~.sidebar-group-header .sidebar-group-toggle-icon{transform:rotate(180deg)}.sidebar-group-header--active{background:var(--primary-color-alpha);color:var(--primary-color)}.layout{display:flex;height:100vh}.main-content{flex-grow:1;display:flex;flex-direction:column;margin-top:var(--topbar-height);margin-left:calc(var(--sidebar-width) + 10px);transition:margin-left var(--transition-base);margin-right:10px}@media (max-width: 1200px){.main-content{margin-left:0}}.content{border-radius:var(--border-radius-lg);margin-top:10px;padding:var(--spacing-xl);background-color:var(--surface-color);box-shadow:var(--shadow-sm);flex-grow:1;overflow-y:auto}@media (max-width: 768px){.content{margin-left:var(--spacing-md);margin-right:var(--spacing-md);padding:var(--spacing-md)}}.odc-ext-content{width:90%;margin:0 auto;border-radius:var(--border-radius-lg);margin-top:var(--spacing-xl);padding:var(--spacing-xl);background-color:var(--surface-color);box-shadow:var(--shadow-sm)}@media (max-width: 768px){.odc-ext-content{width:95%;padding:var(--spacing-md)}}.odc-header{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.odc-header img{margin:auto;width:220px;height:80px;-o-object-fit:contain;object-fit:contain}@media (max-width: 768px){.odc-header img{width:180px;height:60px}}.odc-scrollable{max-height:500px;overflow:auto;border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--surface-color)}.odc-btn,.odc-btn-info,.odc-btn-warning,.odc-btn-danger,.odc-btn-success,.odc-btn-secondary,.odc-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:600;border-radius:var(--border-radius);text-decoration:none;text-align:center;cursor:pointer;border:1px solid transparent;transition:all var(--transition-base);white-space:nowrap}.odc-btn:disabled,.odc-btn-info:disabled,.odc-btn-warning:disabled,.odc-btn-danger:disabled,.odc-btn-success:disabled,.odc-btn-secondary:disabled,.odc-btn-primary:disabled{opacity:.6;cursor:not-allowed}.odc-btn svg,.odc-btn-info svg,.odc-btn-warning svg,.odc-btn-danger svg,.odc-btn-success svg,.odc-btn-secondary svg,.odc-btn-primary svg{width:1.0625rem;height:1.0625rem;flex-shrink:0}.odc-btn.odc-btn-sm,.odc-btn-sm.odc-btn-info,.odc-btn-sm.odc-btn-warning,.odc-btn-sm.odc-btn-danger,.odc-btn-sm.odc-btn-success,.odc-btn-sm.odc-btn-secondary,.odc-btn-sm.odc-btn-primary{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs);height:2rem;min-width:6.25rem}.odc-btn.odc-btn-sm svg,.odc-btn-sm.odc-btn-info svg,.odc-btn-sm.odc-btn-warning svg,.odc-btn-sm.odc-btn-danger svg,.odc-btn-sm.odc-btn-success svg,.odc-btn-sm.odc-btn-secondary svg,.odc-btn-sm.odc-btn-primary svg{width:.875rem;height:.875rem}.odc-btn.odc-btn-md,.odc-btn-md.odc-btn-info,.odc-btn-md.odc-btn-warning,.odc-btn-md.odc-btn-danger,.odc-btn-md.odc-btn-success,.odc-btn-md.odc-btn-secondary,.odc-btn-md.odc-btn-primary{padding:var(--spacing-sm) var(--spacing-md);height:2.5rem;min-width:7.5rem}.odc-btn.odc-btn-lg,.odc-btn-lg.odc-btn-info,.odc-btn-lg.odc-btn-warning,.odc-btn-lg.odc-btn-danger,.odc-btn-lg.odc-btn-success,.odc-btn-lg.odc-btn-secondary,.odc-btn-lg.odc-btn-primary{padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-base);height:3rem;min-width:12.5rem}.odc-btn.odc-btn-lg svg,.odc-btn-lg.odc-btn-info svg,.odc-btn-lg.odc-btn-warning svg,.odc-btn-lg.odc-btn-danger svg,.odc-btn-lg.odc-btn-success svg,.odc-btn-lg.odc-btn-secondary svg,.odc-btn-lg.odc-btn-primary svg{width:1.25rem;height:1.25rem}.odc-btn-primary{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.odc-btn-primary span{color:var(--text-white)}.odc-btn-primary svg{stroke:var(--text-white)}.odc-btn-primary:hover:not(:disabled){background-color:var(--background-color);border-color:ar(--primary-color);transform:translateY(-1px);box-shadow:var(--shadow-md)}.odc-btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.odc-btn-secondary{background-color:var(--surface-color);border-color:var(--border-color);color:var(--text-color)}.odc-btn-secondary:hover:not(:disabled){background-color:var(--surface-hover-color);border-color:var(--text-muted);transform:translateY(-1px);box-shadow:var(--shadow-md)}.odc-btn-secondary:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.odc-btn-success{background-color:var(--success-color);border-color:var(--success-color);color:#fff}.odc-btn-success:hover:not(:disabled){background-color:#059669;border-color:#059669;transform:translateY(-1px);box-shadow:var(--shadow-md)}.odc-btn-success:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.odc-btn-danger{background-color:var(--surface-color);border-color:var(--danger-color);color:var(--danger-color)}.odc-btn-danger:hover:not(:disabled){background-color:var(--danger-color);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md)}.odc-btn-danger:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.odc-btn-warning{background-color:var(--warning-color);border-color:var(--warning-color);color:#fff}.odc-btn-warning:hover:not(:disabled){background-color:#d97706;border-color:#d97706;transform:translateY(-1px);box-shadow:var(--shadow-md)}.odc-btn-warning:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.odc-btn-info{background-color:var(--info-color);border-color:var(--info-color);color:#fff}.odc-btn-info:hover:not(:disabled){background-color:#0891b2;border-color:#0891b2;transform:translateY(-1px);box-shadow:var(--shadow-md)}.odc-btn-info:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.odc-btn-group{display:inline-flex;border-radius:var(--border-radius);overflow:hidden}.odc-btn-group .odc-btn,.odc-btn-group .odc-btn-primary,.odc-btn-group .odc-btn-secondary,.odc-btn-group .odc-btn-success,.odc-btn-group .odc-btn-danger,.odc-btn-group .odc-btn-warning,.odc-btn-group .odc-btn-info{border-radius:0;border-right-width:0}.odc-btn-group .odc-btn:first-child,.odc-btn-group .odc-btn-primary:first-child,.odc-btn-group .odc-btn-secondary:first-child,.odc-btn-group .odc-btn-success:first-child,.odc-btn-group .odc-btn-danger:first-child,.odc-btn-group .odc-btn-warning:first-child,.odc-btn-group .odc-btn-info:first-child{border-top-left-radius:var(--border-radius);border-bottom-left-radius:var(--border-radius)}.odc-btn-group .odc-btn:last-child,.odc-btn-group .odc-btn-primary:last-child,.odc-btn-group .odc-btn-secondary:last-child,.odc-btn-group .odc-btn-success:last-child,.odc-btn-group .odc-btn-danger:last-child,.odc-btn-group .odc-btn-warning:last-child,.odc-btn-group .odc-btn-info:last-child{border-top-right-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);border-right-width:1px}.odc-action-buttons{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}@media (max-width: 768px){.odc-action-buttons{flex-direction:column;width:100%}.odc-action-buttons .odc-btn,.odc-action-buttons .odc-btn-primary,.odc-action-buttons .odc-btn-secondary,.odc-action-buttons .odc-btn-success,.odc-action-buttons .odc-btn-danger,.odc-action-buttons .odc-btn-warning,.odc-action-buttons .odc-btn-info{width:100%}}.odc-input-group{display:flex;flex-direction:column;gap:var(--spacing-sm);position:relative}.odc-input-group .odc-label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-color);margin-bottom:var(--spacing-xs)}.odc-input-group .odc-help-text{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:var(--spacing-xs)}.odc-input-group .odc-error{font-size:var(--font-size-xs);color:var(--danger-color);margin-top:var(--spacing-xs)}.odc-input,.odc-password-input,.odc-search-input,.odc-textarea{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--border-radius);padding:var(--spacing-md);font-size:var(--font-size-base);color:var(--text-color);transition:all var(--transition-base);width:100%}.odc-input::-moz-placeholder,.odc-password-input::-moz-placeholder,.odc-search-input::-moz-placeholder,.odc-textarea::-moz-placeholder{color:var(--text-light)}.odc-input::placeholder,.odc-password-input::placeholder,.odc-search-input::placeholder,.odc-textarea::placeholder{color:var(--text-light)}.odc-input:focus,.odc-password-input:focus,.odc-search-input:focus,.odc-textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha);background-color:var(--surface-color)}.odc-input:disabled,.odc-password-input:disabled,.odc-search-input:disabled,.odc-textarea:disabled{background-color:var(--border-light);color:var(--text-muted);cursor:not-allowed}.odc-input.odc-input-sm,.odc-input-sm.odc-password-input,.odc-input-sm.odc-search-input,.odc-input-sm.odc-textarea{padding:var(--spacing-sm);font-size:var(--font-size-sm)}.odc-input.odc-input-lg,.odc-input-lg.odc-password-input,.odc-input-lg.odc-search-input,.odc-input-lg.odc-textarea{padding:var(--spacing-lg);font-size:var(--font-size-lg)}.odc-input.odc-input-error,.odc-input-error.odc-password-input,.odc-input-error.odc-search-input,.odc-input-error.odc-textarea{border-color:var(--danger-color)}.odc-input.odc-input-error:focus,.odc-input-error.odc-password-input:focus,.odc-input-error.odc-search-input:focus,.odc-input-error.odc-textarea:focus{border-color:var(--danger-color);box-shadow:0 0 0 3px #ef44441a}.odc-input.odc-input-success,.odc-input-success.odc-password-input,.odc-input-success.odc-search-input,.odc-input-success.odc-textarea{border-color:var(--success-color)}.odc-input.odc-input-success:focus,.odc-input-success.odc-password-input:focus,.odc-input-success.odc-search-input:focus,.odc-input-success.odc-textarea:focus{border-color:var(--success-color);box-shadow:0 0 0 3px var(--success-color-alpha)}.odc-textarea{resize:vertical;min-height:6rem;line-height:1.5}.odc-textarea.odc-textarea-sm{min-height:4rem}.odc-textarea.odc-textarea-lg{min-height:8rem}.odc-search-input{padding-left:2.5rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3e%3ccircle cx='11' cy='11' r='8'/%3e%3cpath d='m21 21-4.35-4.35'/%3e%3c/svg%3e");background-position:left var(--spacing-sm) center;background-repeat:no-repeat;background-size:1rem}.odc-search-input:focus{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%233b82f6'%3e%3ccircle cx='11' cy='11' r='8'/%3e%3cpath d='m21 21-4.35-4.35'/%3e%3c/svg%3e")}.odc-password-input{padding-right:2.5rem}.odc-password-input .odc-password-toggle{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text-muted);padding:var(--spacing-xs)}.odc-password-input .odc-password-toggle:hover{color:var(--text-color)}.odc-password-input .odc-password-toggle svg{width:1.25rem;height:1.25rem}.odc-form-grid{display:grid;gap:var(--spacing-lg)}.odc-form-grid.odc-form-grid-2{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.odc-form-grid.odc-form-grid-3{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.odc-form-grid.odc-form-grid-4{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}@media (max-width: 768px){.odc-form-grid{grid-template-columns:1fr}}.odc-form-section{margin-bottom:var(--spacing-2xl)}.odc-form-section .odc-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing-md)}.odc-form-section .odc-section-header .odc-section-title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-color);margin:0}.odc-form-actions{margin-top:var(--spacing-2xl);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.odc-disabled-field{background-color:var(--border-light);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md)}.odc-disabled-field .odc-disabled-text{color:var(--text-muted);font-size:var(--font-size-sm)}.odc-disabled-field .odc-help-text{color:var(--text-light);font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.odc-select-group,.odc-input-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.odc-select-group label,.odc-input-group label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-color);margin-bottom:var(--spacing-xs)}.odc-select-group .odc-select,.odc-input-group .odc-select{background:var(--input-bg) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e") no-repeat right var(--spacing-sm) center;background-size:1.5em 1.5em;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;font-size:var(--font-size-base);padding:var(--spacing-md);padding-right:calc(var(--spacing-md) + 1.5em);border-radius:var(--border-radius);border:1px solid var(--input-border);color:var(--text-color);cursor:pointer;transition:all var(--transition-base);font-family:inherit}.odc-select-group .odc-select:focus,.odc-input-group .odc-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha);background-color:var(--surface-color)}.odc-select-group .odc-select:disabled,.odc-input-group .odc-select:disabled{background-color:var(--border-light);color:var(--text-muted);cursor:not-allowed}.odc-select-group .odc-select option,.odc-input-group .odc-select option{background-color:var(--surface-color);color:var(--text-color);padding:var(--spacing-sm)}.odc-select-group .invalid-feedback,.odc-input-group .invalid-feedback{font-size:var(--font-size-xs);color:var(--danger-color);margin-top:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-xs)}.odc-select-group .invalid-feedback svg,.odc-input-group .invalid-feedback svg{width:1rem;height:1rem;flex-shrink:0}.odc-select-group.has-error .odc-select,.has-error.odc-input-group .odc-select{border-color:var(--danger-color)}.odc-select-group.has-error .odc-select:focus,.has-error.odc-input-group .odc-select:focus{border-color:var(--danger-color);box-shadow:0 0 0 3px var(--danger-color-alpha)}.odc-select-group.has-success .odc-select,.has-success.odc-input-group .odc-select{border-color:var(--success-color)}.odc-select-group.has-success .odc-select:focus,.has-success.odc-input-group .odc-select:focus{border-color:var(--success-color);box-shadow:0 0 0 3px var(--success-color-alpha)}.odc-select-sm .odc-select{padding:var(--spacing-sm);font-size:var(--font-size-sm)}.odc-select-lg .odc-select{padding:var(--spacing-lg);font-size:var(--font-size-lg)}.odc-check-group{display:flex;flex-direction:row;gap:var(--spacing-sm);align-items:center;font-size:var(--font-size-base);margin-bottom:var(--spacing-md);cursor:pointer}.odc-check-group input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1.25rem;height:1.25rem;border:2px solid var(--border-color);border-radius:var(--border-radius-sm);background-color:var(--surface-color);cursor:pointer;position:relative;transition:all var(--transition-base);flex-shrink:0}.odc-check-group input[type=checkbox]:checked{background-color:var(--primary-color);border-color:var(--primary-color)}.odc-check-group input[type=checkbox]:checked:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:.5rem;height:.5rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='white'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M5 13l4 4L19 7'/%3e%3c/svg%3e");background-size:contain;background-repeat:no-repeat}.odc-check-group input[type=checkbox]:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha)}.odc-check-group input[type=checkbox]:disabled{background-color:var(--border-light);border-color:var(--border-color);cursor:not-allowed;opacity:.6}.odc-check-group label{font-size:var(--font-size-base);color:var(--text-color);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;margin:0}.odc-check-group .odc-input,.odc-check-group .odc-textarea,.odc-check-group .odc-search-input,.odc-check-group .odc-password-input{background-color:var(--input-bg);padding:var(--spacing-md);font-size:var(--font-size-base);border:1px solid var(--input-border);border-radius:var(--border-radius);color:var(--text-color);transition:all var(--transition-base);width:100%;font-family:inherit}.odc-check-group .odc-input:focus,.odc-check-group .odc-textarea:focus,.odc-check-group .odc-search-input:focus,.odc-check-group .odc-password-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha);background-color:var(--surface-color)}.odc-check-group .odc-input:disabled,.odc-check-group .odc-textarea:disabled,.odc-check-group .odc-search-input:disabled,.odc-check-group .odc-password-input:disabled{background-color:var(--border-light);color:var(--text-muted);cursor:not-allowed}.odc-check-group.has-error input[type=checkbox]{border-color:var(--danger-color)}.odc-check-group.has-error input[type=checkbox]:focus{border-color:var(--danger-color);box-shadow:0 0 0 3px var(--danger-color-alpha)}.odc-check-group.has-error .odc-input,.odc-check-group.has-error .odc-textarea,.odc-check-group.has-error .odc-search-input,.odc-check-group.has-error .odc-password-input{border-color:var(--danger-color)}.odc-check-group.has-error .odc-input:focus,.odc-check-group.has-error .odc-textarea:focus,.odc-check-group.has-error .odc-search-input:focus,.odc-check-group.has-error .odc-password-input:focus{border-color:var(--danger-color);box-shadow:0 0 0 3px var(--danger-color-alpha)}.odc-check-group-vertical{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.odc-check-group-inline{display:inline-flex;margin-right:var(--spacing-lg)}.odc-check-sm input[type=checkbox]{width:1rem;height:1rem}.odc-check-sm input[type=checkbox]:checked:after{width:.375rem;height:.375rem}.odc-check-sm label{font-size:var(--font-size-sm)}.odc-check-lg input[type=checkbox]{width:1.5rem;height:1.5rem}.odc-check-lg input[type=checkbox]:checked:after{width:.75rem;height:.75rem}.odc-check-lg label{font-size:var(--font-size-lg)}.odc-toggle{position:relative;display:inline-block;width:3rem;height:1.5rem}.odc-toggle input{opacity:0;width:0;height:0}.odc-toggle input:checked+.odc-toggle-slider{background-color:var(--primary-color)}.odc-toggle input:checked+.odc-toggle-slider:before{transform:translate(1.5rem)}.odc-toggle input:focus+.odc-toggle-slider{box-shadow:0 0 0 3px var(--primary-color-alpha)}.odc-toggle input:disabled+.odc-toggle-slider{opacity:.6;cursor:not-allowed}.odc-toggle .odc-toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-color);transition:all var(--transition-base);border-radius:1.5rem}.odc-toggle .odc-toggle-slider:before{position:absolute;content:"";height:1.25rem;width:1.25rem;left:.125rem;bottom:.125rem;background-color:#fff;transition:all var(--transition-base);border-radius:50%;box-shadow:var(--shadow-sm)}.odc-toggle-group{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.odc-toggle-group label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-color);margin-bottom:var(--spacing-xs)}.odc-toggle-group .odc-toggle-wrapper{display:flex;align-items:center;gap:var(--spacing-sm)}.odc-toggle-group .odc-toggle-label{font-size:var(--font-size-sm);color:var(--text-color);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.odc-toggle-sm{width:2.5rem;height:1.25rem}.odc-toggle-sm .odc-toggle-slider:before{height:1rem;width:1rem;left:.125rem;bottom:.125rem}.odc-toggle-sm input:checked+.odc-toggle-slider:before{transform:translate(1.25rem)}.odc-toggle-lg{width:3.5rem;height:1.75rem}.odc-toggle-lg .odc-toggle-slider:before{height:1.5rem;width:1.5rem;left:.125rem;bottom:.125rem}.odc-toggle-lg input:checked+.odc-toggle-slider:before{transform:translate(1.75rem)}.odc-alert,.alert{padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--border-radius);margin:var(--spacing-xl) 0;display:flex;align-items:center;gap:var(--spacing-sm);border:1px solid transparent;font-size:var(--font-size-sm);font-weight:500}.odc-alert svg,.alert svg{width:1.25rem;height:1.25rem;flex-shrink:0}.odc-alert.odc-alert-success,.odc-alert.alert-success,.odc-alert-success.alert,.alert.alert-success{background-color:var(--success-color-alpha);color:var(--success-color);border-color:var(--success-color)}.odc-alert.odc-alert-success svg,.odc-alert.alert-success svg,.odc-alert-success.alert svg,.alert.alert-success svg{color:var(--success-color)}.odc-alert.odc-alert-danger,.odc-alert.alert-danger,.odc-alert-danger.alert,.alert.alert-danger{background-color:var(--danger-color-alpha);color:var(--danger-color);border-color:var(--danger-color)}.odc-alert.odc-alert-danger svg,.odc-alert.alert-danger svg,.odc-alert-danger.alert svg,.alert.alert-danger svg{color:var(--danger-color)}.odc-alert.odc-alert-warning,.odc-alert-warning.alert{background-color:var(--warning-color-alpha);color:var(--warning-color);border-color:var(--warning-color)}.odc-alert.odc-alert-warning svg,.odc-alert-warning.alert svg{color:var(--warning-color)}.odc-alert.odc-alert-info,.odc-alert-info.alert{background-color:var(--info-color-alpha);color:var(--info-color);border-color:var(--info-color)}.odc-alert.odc-alert-info svg,.odc-alert-info.alert svg{color:var(--info-color)}.odc-alert.odc-alert-primary,.odc-alert-primary.alert{background-color:var(--primary-color-alpha);color:var(--primary-color);border-color:var(--primary-color)}.odc-alert.odc-alert-primary svg,.odc-alert-primary.alert svg{color:var(--primary-color)}.odc-badge{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);border-radius:var(--border-radius);margin:var(--spacing-xs);display:inline-flex;align-items:center;gap:var(--spacing-xs);width:-moz-fit-content;width:fit-content;cursor:pointer;font-weight:500;text-transform:uppercase;letter-spacing:.025em;transition:all var(--transition-base)}.odc-badge svg{height:var(--font-size-xs);width:var(--font-size-xs);flex-shrink:0}.odc-badge:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.badge-default{background-color:var(--border-light);color:var(--text-muted)}.badge-printed{background-color:var(--info-color-alpha);color:var(--info-color)}.badge-approved{background-color:var(--success-color-alpha);color:var(--success-color)}.badge-pending{background-color:var(--warning-color-alpha);color:var(--warning-color)}.badge-declined{background-color:var(--danger-color-alpha);color:var(--danger-color)}.badge-primary{background-color:var(--primary-color-alpha);color:var(--primary-color)}.badge-secondary{background-color:var(--border-light);color:var(--text-muted)}.badge-success{background-color:var(--success-color-alpha);color:var(--success-color)}.badge-warning{background-color:var(--warning-color-alpha);color:var(--warning-color)}.badge-danger{background-color:var(--danger-color-alpha);color:var(--danger-color)}.badge-info{background-color:var(--info-color-alpha);color:var(--info-color)}.odc-badge-sm{padding:calc(var(--spacing-xs) / 2) var(--spacing-xs);font-size:calc(var(--font-size-xs) * .875)}.odc-badge-sm svg{height:calc(var(--font-size-xs) * .875);width:calc(var(--font-size-xs) * .875)}.odc-badge-lg{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.odc-badge-lg svg{height:var(--font-size-sm);width:var(--font-size-sm)}.odc-table-responsive-wrapper{overflow-x:auto;width:100%;border-radius:var(--border-radius);-webkit-overflow-scrolling:touch}.odc-table{border-collapse:collapse;border-radius:var(--border-radius);width:100%;background-color:var(--surface-color);box-shadow:var(--shadow-sm);overflow:hidden;font-size:var(--font-size-sm)}.odc-table th{background-color:var(--surface-hover-color);text-align:left;padding:var(--spacing-md);border-bottom:1px solid var(--border-color);font-size:var(--font-size-sm);font-weight:600;color:var(--text-color);text-transform:uppercase;letter-spacing:.025em}.odc-table tbody tr{background-color:var(--surface-color);transition:background-color var(--transition-base)}.odc-table tbody tr:nth-child(2n){background-color:var(--surface-hover-color)}.odc-table tbody tr .odc-tablewidth-300{width:200px}.odc-table tbody tr td{text-align:left;padding:var(--spacing-md);border-bottom:1px solid var(--border-color);font-size:var(--font-size-sm);color:var(--text-color)}.odc-table tbody tr td .odc-actiongroup{display:flex;gap:var(--spacing-sm);align-items:center}.odc-table tbody tr td .odc-actiongroup a,.odc-table tbody tr td .odc-actiongroup button{border:1px solid var(--border-color);background-color:var(--surface-color);font-size:var(--font-size-xs);border-radius:var(--border-radius);font-weight:500;text-decoration:none;text-align:center;cursor:pointer;padding:var(--spacing-sm);display:inline-flex;align-items:center;gap:var(--spacing-xs);transition:all var(--transition-base);color:var(--text-color)}.odc-table tbody tr td .odc-actiongroup a:hover,.odc-table tbody tr td .odc-actiongroup button:hover{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.odc-table tbody tr td .odc-actiongroup a svg,.odc-table tbody tr td .odc-actiongroup button svg{width:1rem;height:1rem;flex-shrink:0}.odc-table tbody tr td .odc-actiongroup button{font-family:inherit}.odc-table tbody tr td:nth-last-child(1){width:200px}.odc-table tbody tr td:nth-last-child(3) p,.odc-table tbody tr td:nth-last-child(2) p{white-space:nowrap;width:150px;overflow:hidden;text-overflow:ellipsis;margin:0}.td-50px{width:50px}.odc-table-hoverable tbody tr{transition:background-color var(--transition-base);cursor:pointer}.odc-table-hoverable tbody tr:hover{background-color:var(--primary-color-alpha)!important}.odc-table-striped tbody tr:nth-child(2n){background-color:var(--surface-hover-color)}.odc-table-bordered th,.odc-table-bordered td{border:1px solid var(--border-color)}.odc-table-compact th,.odc-table-compact td{padding:var(--spacing-sm);font-size:var(--font-size-xs)}.odc-table-lg th,.odc-table-lg td{padding:var(--spacing-lg);font-size:var(--font-size-base)}@media (max-width: 768px){.odc-table-responsive thead{display:none}.odc-table-responsive tr{display:block;margin-bottom:var(--spacing-lg);border-radius:var(--border-radius);box-shadow:var(--shadow-md);border:1px solid var(--border-color);background-color:var(--surface-color)!important}.odc-table-responsive td{display:flex;justify-content:space-between;align-items:center;text-align:right;padding:var(--spacing-md);border-bottom:1px solid var(--border-light)}.odc-table-responsive td:before{content:attr(data-label);font-weight:600;text-align:left;margin-right:var(--spacing-md);color:var(--text-color)}.odc-table-responsive td:last-child{border-bottom:none}.hide-on-mobile{display:none!important}}.odc-description-wrap{max-width:250px;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;word-break:break-word}.odc-tooltip{position:relative;display:inline-block}.odc-tooltip .odc-tooltip-text{visibility:hidden;width:-moz-max-content;width:max-content;max-width:200px;background-color:var(--text-color);color:#fff;text-align:center;border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-md);position:absolute;z-index:1000;bottom:125%;left:50%;transform:translate(-50%);opacity:0;transition:opacity var(--transition-base);font-size:var(--font-size-xs);font-weight:500;white-space:nowrap;box-shadow:var(--shadow-md)}.odc-tooltip .odc-tooltip-text:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:var(--text-color) transparent transparent transparent}.odc-tooltip:hover .odc-tooltip-text{visibility:visible;opacity:1}.odc-tooltip-top .odc-tooltip-text{bottom:125%;left:50%;transform:translate(-50%)}.odc-tooltip-top .odc-tooltip-text:after{top:100%;left:50%;margin-left:-5px;border-color:var(--text-color) transparent transparent transparent}.odc-tooltip-bottom .odc-tooltip-text{top:125%;left:50%;transform:translate(-50%)}.odc-tooltip-bottom .odc-tooltip-text:after{bottom:100%;left:50%;margin-left:-5px;border-color:transparent transparent var(--text-color) transparent}.odc-tooltip-left .odc-tooltip-text{right:125%;top:50%;transform:translateY(-50%)}.odc-tooltip-left .odc-tooltip-text:after{left:100%;top:50%;margin-top:-5px;border-color:transparent transparent transparent var(--text-color)}.odc-tooltip-right .odc-tooltip-text{left:125%;top:50%;transform:translateY(-50%)}.odc-tooltip-right .odc-tooltip-text:after{right:100%;top:50%;margin-top:-5px;border-color:transparent var(--text-color) transparent transparent}.odc-tooltip-light .odc-tooltip-text{background-color:var(--surface-color);color:var(--text-color);border:1px solid var(--border-color)}.odc-tooltip-light .odc-tooltip-text:after{border-color:var(--border-color) transparent transparent transparent}.odc-tooltip-primary .odc-tooltip-text{background-color:var(--primary-color)}.odc-tooltip-primary .odc-tooltip-text:after{border-color:var(--primary-color) transparent transparent transparent}.odc-tooltip-success .odc-tooltip-text{background-color:var(--success-color)}.odc-tooltip-success .odc-tooltip-text:after{border-color:var(--success-color) transparent transparent transparent}.odc-tooltip-warning .odc-tooltip-text{background-color:var(--warning-color)}.odc-tooltip-warning .odc-tooltip-text:after{border-color:var(--warning-color) transparent transparent transparent}.odc-tooltip-danger .odc-tooltip-text{background-color:var(--danger-color)}.odc-tooltip-danger .odc-tooltip-text:after{border-color:var(--danger-color) transparent transparent transparent}.odc-backdrop{height:100vh;width:100vw;position:fixed;background-color:var(--backdrop-color);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);top:0;left:0;display:flex;justify-content:center;align-items:center;z-index:150;animation:fadeIn var(--transition-base) ease-out}.odc-backdrop .odc-modal{min-width:400px;max-width:600px;max-height:50vh;background-color:var(--surface-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);padding:var(--spacing-2xl);gap:var(--spacing-xl);display:flex;flex-direction:column;animation:slideIn var(--transition-base) ease-out;border:1px solid var(--border-color)}.odc-backdrop .odc-modal .odc-modal-header{display:flex;justify-content:space-between;align-items:center}.odc-backdrop .odc-modal .odc-modal-header h2{font-size:var(--font-size-xl);font-weight:600;color:var(--text-color);margin:0}.odc-backdrop .odc-modal .odc-modal-body{flex-grow:1;overflow-y:auto;margin-bottom:var(--spacing-lg)}.odc-backdrop .odc-modal .odc-modal-input-group{margin-bottom:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-md)}.odc-backdrop .odc-modal .odc-modal-input-group .viewpassword{width:100px}.odc-backdrop .odc-modal .odc-modal-input-group .viewpassword svg{width:30px!important;height:30px;color:var(--text-muted)}.odc-backdrop .odc-modal .odc-modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.odc-backdrop .odc-modal .odc-close-icon{cursor:pointer;transition:all var(--transition-base);color:var(--text-muted);background:none;border:none;padding:var(--spacing-xs);border-radius:var(--border-radius-sm)}.odc-backdrop .odc-modal .odc-close-icon:hover{transform:scale(1.1);color:var(--text-color);background-color:var(--surface-hover-color)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.odc-modal-sm .odc-modal{min-width:400px;max-width:500px}.odc-modal-lg .odc-modal{min-width:900px;max-width:1200px}.odc-modal-full .odc-modal{min-width:95vw;max-width:95vw;max-height:95vh}.odc-modal-success .odc-modal-header svg{background:#dcfce7;border-radius:50%}.odc-modal-danger .odc-modal-header svg{background:#fee2e2;border-radius:50%}.odc-modal-warning .odc-modal-header svg{background:#fef3c7;border-radius:50%}.odc-modal-info .odc-modal-header svg{background:#e0e7ff;border-radius:50%}.odc-modal-success .odc-modal-title{color:#22c55e}.odc-modal-danger .odc-modal-title{color:#ef4444}.odc-modal-warning .odc-modal-title{color:#f59e42}.odc-modal-info .odc-modal-title{color:#2563eb}body.modal-open{overflow:hidden!important}.odc-pagination{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);margin:var(--spacing-xl) 0}.odc-pagination .odc-pagination-item{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;height:2.5rem;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);background-color:var(--surface-color);color:var(--text-color);text-decoration:none;border-radius:var(--border-radius);font-size:var(--font-size-sm);font-weight:500;transition:all var(--transition-base);cursor:pointer}.odc-pagination .odc-pagination-item:hover{background-color:var(--surface-hover-color);border-color:var(--text-muted);color:var(--text-color)}.odc-pagination .odc-pagination-item.active,.odc-pagination .odc-pagination-item.active:hover{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.odc-pagination .odc-pagination-item.disabled{background-color:var(--border-light);border-color:var(--border-color);color:var(--text-muted);cursor:not-allowed;opacity:.6}.odc-pagination .odc-pagination-item.disabled:hover{background-color:var(--border-light);border-color:var(--border-color);color:var(--text-muted)}.odc-pagination .odc-pagination-ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;height:2.5rem;color:var(--text-muted);font-size:var(--font-size-sm)}.odc-pagination-sm .odc-pagination-item{min-width:2rem;height:2rem;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}.odc-pagination-sm .odc-pagination-ellipsis{min-width:2rem;height:2rem;font-size:var(--font-size-xs)}.odc-pagination-lg .odc-pagination-item{min-width:3rem;height:3rem;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-base)}.odc-pagination-lg .odc-pagination-ellipsis{min-width:3rem;height:3rem;font-size:var(--font-size-base)}.odc-tabs{margin-top:20px;width:100%;background-color:var(--background-color);border-radius:10px;overflow:hidden}.odc-tabs button{padding:20px;background-color:var(--background-color);border:none;font-size:15px;transition:all .3s ease;cursor:pointer}.odc-tabs .active{background-color:var(--primary-color);color:var(--text-white)}.odc-column{display:flex;flex-direction:column;width:100%;gap:10px}.odc-row{display:flex;flex-direction:row;width:100%;gap:20px}.odc-container{width:100%;margin:0 auto;padding:0 var(--spacing-md)}.odc-container.odc-container-sm{max-width:640px}.odc-container.odc-container-md{max-width:768px}.odc-container.odc-container-lg{max-width:1024px}.odc-container.odc-container-xl{max-width:1280px}.odc-container.odc-container-2xl{max-width:1536px}.odc-container-fluid{width:100%;padding:0 var(--spacing-md)}@media (min-width: 640px){.odc-container{padding:0 var(--spacing-lg)}}@media (min-width: 1024px){.odc-container{padding:0 var(--spacing-xl)}}.odc-section-header{margin-bottom:var(--spacing-xl);text-align:center}.odc-section-header h2{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-color);margin-bottom:var(--spacing-sm)}.odc-section-header p{font-size:var(--font-size-lg);color:var(--text-muted);max-width:600px;margin:0 auto}.odc-section-content{width:100%}.odc-panel{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-lg)}.odc-panel .odc-panel-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);background-color:var(--surface-hover-color);display:flex;justify-content:space-between;align-items:center}.odc-panel .odc-panel-header h3{font-size:var(--font-size-lg);font-weight:600;color:var(--text-color);margin:0}.odc-panel .odc-panel-body{padding:var(--spacing-lg)}.odc-panel .odc-panel-footer{padding:var(--spacing-lg);border-top:1px solid var(--border-color);background-color:var(--surface-hover-color)}.odc-settings-tabs{display:flex;gap:.25rem;margin-bottom:2rem;border-bottom:1.5px solid #e5e7eb;background:#f3f4f6;padding-left:.5rem}.odc-tab-btn{background:#f3f4f6;border:none;border-bottom:2.5px solid transparent;border-radius:.5rem .5rem 0 0;padding:.7rem 1.5rem .6rem;font-size:1.08em;font-weight:600;color:#6b7280;cursor:pointer;transition:background .18s,color .18s,border .18s;margin-bottom:-1.5px;position:relative;outline:none;box-shadow:none;z-index:1}.odc-tab-btn:hover{background:#e5e7eb;color:#374151}.odc-tab-btn.active,.odc-tab-btn[aria-current=true]{background:#fff;color:#2563eb;border-bottom:2.5px solid #2563eb;z-index:2;box-shadow:0 2px 8px #2563eb0a}.odc-settings-tabs .odc-tab-btn:not(.active):not([aria-current=true]){border-bottom:2.5px solid transparent}.odc-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:.75rem;overflow:hidden;box-shadow:0 2px 8px #0000000a;margin-bottom:0}.odc-table th,.odc-table td{padding:.75rem 1rem;border-bottom:1px solid #e5e7eb;text-align:left}.odc-table th{background:#f3f4f6;font-weight:700;color:#374151}.odc-table tr:last-child td{border-bottom:none}.odc-table tbody tr:nth-child(2n){background:#f9fafb}.odc-table tbody tr:hover{background:#f1f5f9}.odc-table input.odc-input,.odc-table input.odc-textarea,.odc-table input.odc-search-input,.odc-table input.odc-password-input{background:#f3f4f6;border-radius:.5rem;border:1px solid #d1d5db;padding:.5rem .75rem}.odc-sort-btns button{margin-right:.25rem;background:#f3f4f6;border-radius:.5rem;border:1px solid #d1d5db;color:#374151;font-size:1em;padding:.25rem .6rem;transition:background .2s}.odc-sort-btns button:disabled{opacity:.4;cursor:not-allowed}.odc-account-owner-search-wrapper{position:relative;width:100%;margin-bottom:.5rem}.odc-account-owner-search-box{position:relative;width:100%}.odc-account-owner-search-input{width:100%;padding:10px 12px;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;font-size:1rem;background:#f7f8fa;transition:border .2s;outline:none}.odc-account-owner-dropdown{position:absolute;top:110%;left:0;width:100%;background:#fff;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;box-shadow:0 4px 16px #00000014;z-index:20;max-height:220px;overflow-y:auto;margin-top:2px;padding:.25rem 0}.odc-account-owner-option{padding:10px 16px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background .15s;font-size:1rem;color:var(--text-color, #222)}.odc-account-owner-option:hover,.odc-account-owner-option.selected{background:#f0f4ff;color:var(--primary-color, #3358e6)}.odc-account-owner-info{display:flex;flex-direction:column;gap:2px}.odc-account-owner-name{font-weight:600;color:#223}.odc-account-owner-email{font-size:.97em;color:#888}.odc-account-owner-position{font-size:.95em;color:#4f8cff;margin-left:8px;font-weight:500}.odc-no-results{color:#e53e3e;text-align:center;padding:10px 0;font-size:1em}.odc-selected-account-owner{display:flex;align-items:center;margin-bottom:.5rem}.odc-account-owner-badge{display:flex;align-items:center;background:#f0f4ff;color:#3358e6;border-radius:20px;padding:6px 16px 6px 12px;font-weight:600;font-size:1rem;box-shadow:0 2px 8px #3358e60f;gap:8px}.odc-account-owner-badge-remove{background:none;border:none;color:#888;margin-left:8px;cursor:pointer;padding:0;display:flex;align-items:center;transition:color .15s}.odc-account-owner-badge-remove:hover{color:#e53e3e}.odc-account-owner-add-link{color:#3358e6;font-size:.98em;margin-top:.5em;display:inline-flex;align-items:center;gap:4px;text-decoration:none;font-weight:500;transition:color .15s}.odc-account-owner-add-link:hover{color:#223;text-decoration:underline}.odc-log-change-old{color:#b91c1c;background:#fee2e2;padding:0 2px;border-radius:3px}.odc-log-change-new{color:#166534;background:#dcfce7;padding:0 2px;border-radius:3px}.odc-badge-user{background:#e0e7ff;color:#3730a3;padding:2px 8px;border-radius:12px;font-size:.95em;font-weight:600}.odc-badge-guest{background:#f3f4f6;color:#6b7280;padding:2px 8px;border-radius:12px;font-size:.95em;font-weight:600}.odc-badge-action{background:#fef9c3;color:#a16207;padding:2px 8px;border-radius:12px;font-size:.95em;font-weight:600}.odc-log-description{font-family:JetBrains Mono,Fira Mono,Menlo,monospace;font-size:.98em;line-height:1.5;word-break:break-word}.odc-user-agent{font-size:.92em;color:#64748b;cursor:help}.odc-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#1e293b73;z-index:9998;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.odc-modal{background:#fff;border-radius:16px;box-shadow:0 8px 32px #1e293b2e;padding:0;min-width:340px;max-width:600px;width:100%;overflow:hidden;animation:odc-modal-fadein .2s}@keyframes odc-modal-fadein{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}.odc-modal-header{background:#f1f5f9;padding:18px 28px 12px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.odc-modal-title{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0}.odc-close-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:50%;transition:background .15s}.odc-close-btn:hover{background:#e2e8f0}.odc-modal-body{padding:24px 28px;background:#fff}.odc-table-details{width:100%;border-collapse:collapse;margin:0}.odc-table-details th{text-align:left;padding:8px 10px 8px 0;color:#64748b;font-weight:600;width:140px;vertical-align:top;background:none}.odc-table-details td{padding:8px 0;color:#1e293b;font-family:JetBrains Mono,Fira Mono,Menlo,monospace;font-size:.98em;background:none}.odc-table-details tr:not(:last-child) td,.odc-table-details tr:not(:last-child) th{border-bottom:1px solid #e5e7eb}.odc-table-details pre{background:#f8fafc;color:#334155;border-radius:6px;padding:8px 10px;font-size:.97em;margin:0;max-height:180px;overflow:auto}.odc-table-details .text-blue-600{color:#2563eb;font-weight:600}.odc-table-details .text-yellow-600{color:#ca8a04;font-weight:600}.odc-table-details .text-red-600{color:#dc2626;font-weight:600}.odc-table-details .text-red-800{color:#991b1b;font-weight:600}.odc-collapsed{max-height:0!important;overflow:hidden!important;padding:0!important;margin:0!important;transition:max-height .2s}.odc-btn-xs{font-size:.85em;padding:2px 8px;background:#e0e7ff;color:#2563eb;border:none;border-radius:6px;margin-left:6px;cursor:pointer;transition:background .15s}.odc-btn-xs:hover{background:#c7d2fe}.odc-modal-audit-details{max-width:650px;border-left:8px solid #2563eb}.odc-modal-header-icon{gap:10px}.odc-modal-title-accent{color:#2563eb}.odc-modal-audit-body{background:#f8fafc}.odc-modal-badges{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;margin-bottom:8px}.odc-modal-badge{font-size:1.08em}.odc-modal-badge-model{background:#e0e7ff;color:#2563eb}.odc-modal-badge-date{background:#f1f5f9;color:#64748b}.odc-modal-section{margin:10px 0 0}.odc-modal-section-flex{display:flex;flex-wrap:wrap;gap:16px 24px}.odc-modal-section-col{flex:1 1 180px;min-width:160px}.odc-modal-label{font-size:1.08em;font-weight:600;color:#2563eb;margin-bottom:2px}.odc-modal-secondary{color:#64748b;margin-bottom:8px;font-size:.92em}.odc-modal-secondary-break{word-break:break-all}.odc-modal-pre{background:#f1f5f9;color:#64748b;font-size:.92em;border-radius:6px;padding:8px 10px;margin-bottom:8px;max-height:180px;overflow:auto}.dashboard-container{padding:2rem 0;max-width:1400px;margin:0 auto}.dashboard-welcome{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:2rem;background:linear-gradient(135deg,var(--primary-color) 20%,var(--secondary-color) 100%);border-radius:16px;color:#fff;box-shadow:0 10px 25px #667eea26}.dashboard-welcome .dashboard-welcome-content{flex:1}.dashboard-welcome .dashboard-welcome-content .dashboard-welcome-title{font-size:2.5rem;font-weight:700;margin:0 0 .5rem;line-height:1.2;color:var(--text-white)}.dashboard-welcome .dashboard-welcome-content .dashboard-welcome-subtitle{font-size:1.1rem;opacity:.9;margin:0;font-weight:400;color:var(--text-white)}.dashboard-welcome .dashboard-welcome-actions{display:flex;gap:1rem;align-items:center}.dashboard-welcome .dashboard-welcome-actions .odc-btn,.dashboard-welcome .dashboard-welcome-actions .odc-btn-primary,.dashboard-welcome .dashboard-welcome-actions .odc-btn-secondary,.dashboard-welcome .dashboard-welcome-actions .odc-btn-success,.dashboard-welcome .dashboard-welcome-actions .odc-btn-danger,.dashboard-welcome .dashboard-welcome-actions .odc-btn-warning,.dashboard-welcome .dashboard-welcome-actions .odc-btn-info{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;text-decoration:none;transition:all .2s ease;border:none;cursor:pointer}.dashboard-welcome .dashboard-welcome-actions .odc-btn svg,.dashboard-welcome .dashboard-welcome-actions .odc-btn-primary svg,.dashboard-welcome .dashboard-welcome-actions .odc-btn-secondary svg,.dashboard-welcome .dashboard-welcome-actions .odc-btn-success svg,.dashboard-welcome .dashboard-welcome-actions .odc-btn-danger svg,.dashboard-welcome .dashboard-welcome-actions .odc-btn-warning svg,.dashboard-welcome .dashboard-welcome-actions .odc-btn-info svg{width:16px;height:16px}.dashboard-welcome .dashboard-welcome-actions .odc-btn.odc-btn-primary,.dashboard-welcome .dashboard-welcome-actions .odc-btn-primary{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3)}.dashboard-welcome .dashboard-welcome-actions .odc-btn.odc-btn-primary:hover,.dashboard-welcome .dashboard-welcome-actions .odc-btn-primary:hover{background:#ffffff4d;transform:translateY(-2px)}.dashboard-welcome .dashboard-welcome-actions .odc-btn.odc-btn-secondary,.dashboard-welcome .dashboard-welcome-actions .odc-btn-secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3)}.dashboard-welcome .dashboard-welcome-actions .odc-btn.odc-btn-secondary svg,.dashboard-welcome .dashboard-welcome-actions .odc-btn-secondary svg{stroke:var(--text-white)}.dashboard-welcome .dashboard-welcome-actions .odc-btn.odc-btn-secondary:hover,.dashboard-welcome .dashboard-welcome-actions .odc-btn-secondary:hover{background:#ffffff1a;transform:translateY(-2px)}.dashboard-metrics{margin-bottom:2rem}.dashboard-metrics .dashboard-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.dashboard-metrics .dashboard-metric-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px #0000000d;border:1px solid #f1f5f9;transition:all .3s ease;display:flex;align-items:center;gap:1rem}.dashboard-metrics .dashboard-metric-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #0000001a}.dashboard-metrics .dashboard-metric-card .dashboard-metric-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dashboard-metrics .dashboard-metric-card .dashboard-metric-icon svg{width:28px;height:28px}.dashboard-metrics .dashboard-metric-card .dashboard-metric-icon.dashboard-metric-icon-blue{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.dashboard-metrics .dashboard-metric-card .dashboard-metric-icon.dashboard-metric-icon-green{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.dashboard-metrics .dashboard-metric-card .dashboard-metric-icon.dashboard-metric-icon-purple{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.dashboard-metrics .dashboard-metric-card .dashboard-metric-icon.dashboard-metric-icon-orange{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.dashboard-metrics .dashboard-metric-card .dashboard-metric-icon.dashboard-metric-icon-yellow{background:linear-gradient(135deg,#eab308,#ca8a04);color:#fff}.dashboard-metrics .dashboard-metric-card .dashboard-metric-icon.dashboard-metric-icon-red{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.dashboard-metrics .dashboard-metric-card .dashboard-metric-content{flex:1}.dashboard-metrics .dashboard-metric-card .dashboard-metric-content .dashboard-metric-value{font-size:2rem;font-weight:700;color:#1f2937;margin:0 0 .25rem;line-height:1.2}.dashboard-metrics .dashboard-metric-card .dashboard-metric-content .dashboard-metric-label{font-size:.875rem;color:#6b7280;margin:0 0 .5rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.dashboard-metrics .dashboard-metric-card .dashboard-metric-content .dashboard-metric-growth{font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:6px;display:inline-block}.dashboard-metrics .dashboard-metric-card .dashboard-metric-content .dashboard-metric-growth.positive{background:#dcfce7;color:#166534}.dashboard-metrics .dashboard-metric-card .dashboard-metric-content .dashboard-metric-growth.negative{background:#fef2f2;color:#dc2626}.dashboard-charts{margin-bottom:2rem}.dashboard-charts .dashboard-charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:2rem}.dashboard-charts .dashboard-chart-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000000d;border:1px solid #f1f5f9;overflow:hidden;transition:all .3s ease}.dashboard-charts .dashboard-chart-section:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.dashboard-charts .dashboard-chart-section .dashboard-chart-header{padding:1.5rem;border-bottom:1px solid #f1f5f9;background:#fafafa}.dashboard-charts .dashboard-chart-section .dashboard-chart-header .dashboard-chart-title{font-size:1.125rem;font-weight:600;color:var(--text-light);margin:0}.dashboard-charts .dashboard-chart-section .dashboard-chart-content{padding:1.5rem;height:300px;position:relative}.dashboard-charts .dashboard-chart-section .dashboard-chart-content canvas{max-height:100%;width:100%!important;height:100%!important}.dashboard-content .dashboard-content-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.dashboard-content .dashboard-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000000d;border:1px solid #f1f5f9;overflow:hidden}.dashboard-content .dashboard-section .dashboard-section-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #f1f5f9;background:#fafafa}.dashboard-content .dashboard-section .dashboard-section-header .dashboard-section-title{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.dashboard-content .dashboard-section .dashboard-section-header .dashboard-section-link{font-size:.875rem;color:#3b82f6;text-decoration:none;font-weight:500;transition:color .2s ease}.dashboard-content .dashboard-section .dashboard-section-header .dashboard-section-link:hover{color:#1d4ed8;text-decoration:underline}.dashboard-content .dashboard-section .dashboard-section-content{padding:1.5rem}.dashboard-list .dashboard-list-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid #f1f5f9}.dashboard-list .dashboard-list-item:last-child{border-bottom:none}.dashboard-list .dashboard-list-item .dashboard-list-item-content{flex:1}.dashboard-list .dashboard-list-item .dashboard-list-item-content .dashboard-list-item-title{margin:0 0 .25rem;font-size:1rem;font-weight:600}.dashboard-list .dashboard-list-item .dashboard-list-item-content .dashboard-list-item-title .dashboard-list-item-link{color:#1f2937;text-decoration:none;transition:color .2s ease}.dashboard-list .dashboard-list-item .dashboard-list-item-content .dashboard-list-item-title .dashboard-list-item-link:hover{color:#3b82f6}.dashboard-list .dashboard-list-item .dashboard-list-item-content .dashboard-list-item-subtitle{margin:0 0 .5rem;font-size:.875rem;color:#6b7280}.dashboard-list .dashboard-list-item .dashboard-list-item-content .dashboard-list-item-meta{display:flex;gap:1rem;align-items:center}.dashboard-list .dashboard-list-item .dashboard-list-item-content .dashboard-list-item-meta .dashboard-list-item-date{font-size:.75rem;color:#9ca3af}.dashboard-list .dashboard-list-item .dashboard-list-item-content .dashboard-list-item-meta .dashboard-list-item-amount{font-size:.875rem;font-weight:600;color:#059669}.dashboard-list .dashboard-list-item .dashboard-list-item-content .dashboard-list-item-meta .dashboard-list-item-urgency{font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:4px}.dashboard-list .dashboard-list-item .dashboard-list-item-content .dashboard-list-item-meta .dashboard-list-item-urgency.urgent{background:#fef2f2;color:#dc2626}.dashboard-list .dashboard-list-item .dashboard-list-item-content .dashboard-list-item-meta .dashboard-list-item-urgency.warning{background:#fef3c7;color:#d97706}.dashboard-list .dashboard-list-item .dashboard-list-item-content .dashboard-list-item-meta .dashboard-list-item-urgency.normal{background:#f0f9ff;color:#0ea5e9}.dashboard-list .dashboard-list-item .dashboard-list-item-status{flex-shrink:0;margin-left:1rem}.dashboard-empty-state{text-align:center;padding:3rem 1rem;color:#6b7280}.dashboard-empty-state svg{color:#d1d5db;margin-bottom:1rem}.dashboard-empty-state h3{font-size:1.125rem;font-weight:600;color:#374151;margin:0 0 .5rem}.dashboard-empty-state p{font-size:.875rem;margin:0 0 1.5rem}.dashboard-empty-state .odc-btn,.dashboard-empty-state .odc-btn-primary,.dashboard-empty-state .odc-btn-secondary,.dashboard-empty-state .odc-btn-success,.dashboard-empty-state .odc-btn-danger,.dashboard-empty-state .odc-btn-warning,.dashboard-empty-state .odc-btn-info{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#3b82f6;color:#fff;border-radius:8px;font-weight:600;text-decoration:none;transition:all .2s ease;border:none;cursor:pointer}.dashboard-empty-state .odc-btn:hover,.dashboard-empty-state .odc-btn-primary:hover,.dashboard-empty-state .odc-btn-secondary:hover,.dashboard-empty-state .odc-btn-success:hover,.dashboard-empty-state .odc-btn-danger:hover,.dashboard-empty-state .odc-btn-warning:hover,.dashboard-empty-state .odc-btn-info:hover{background:#1d4ed8;transform:translateY(-2px)}.dashboard-role-charts{margin-bottom:2rem}.dashboard-role-charts .dashboard-role-charts-header{margin-bottom:1.5rem;text-align:center}.dashboard-role-charts .dashboard-role-charts-header .dashboard-role-charts-title{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0}.dashboard-role-charts .dashboard-role-charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem}.dashboard-role-charts .conversion-rate-display{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem}.dashboard-role-charts .conversion-rate-display .conversion-rate-circle{display:flex;flex-direction:column;align-items:center;gap:.5rem}.dashboard-role-charts .conversion-rate-display .conversion-rate-circle .conversion-rate-value{font-size:3rem;font-weight:700;color:#10b981;line-height:1}.dashboard-role-charts .conversion-rate-display .conversion-rate-circle .conversion-rate-label{font-size:.875rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.dashboard-role-charts .conversion-rate-display .conversion-rate-stats{display:flex;gap:2rem}.dashboard-role-charts .conversion-rate-display .conversion-rate-stats .conversion-stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.dashboard-role-charts .conversion-rate-display .conversion-rate-stats .conversion-stat .conversion-stat-value{font-size:1.5rem;font-weight:600;color:#1f2937}.dashboard-role-charts .conversion-rate-display .conversion-rate-stats .conversion-stat .conversion-stat-label{font-size:.75rem;color:#6b7280;font-weight:500}.dashboard-role-charts .approval-rate-display{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-top:1rem}.dashboard-role-charts .approval-rate-display .approval-rate-value{font-size:2rem;font-weight:700;color:#10b981}.dashboard-role-charts .approval-rate-display .approval-rate-label{font-size:.875rem;color:#6b7280;font-weight:500}.dashboard-role-charts .pending-reviews-display{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem}.dashboard-role-charts .pending-reviews-display .pending-reviews-circle{display:flex;flex-direction:column;align-items:center;gap:.5rem}.dashboard-role-charts .pending-reviews-display .pending-reviews-circle .pending-reviews-value{font-size:3rem;font-weight:700;color:#ef4444;line-height:1}.dashboard-role-charts .pending-reviews-display .pending-reviews-circle .pending-reviews-label{font-size:.875rem;color:#6b7280;font-weight:500;text-align:center;max-width:120px}.dashboard-role-charts .pending-reviews-display .odc-btn,.dashboard-role-charts .pending-reviews-display .odc-btn-primary,.dashboard-role-charts .pending-reviews-display .odc-btn-secondary,.dashboard-role-charts .pending-reviews-display .odc-btn-success,.dashboard-role-charts .pending-reviews-display .odc-btn-danger,.dashboard-role-charts .pending-reviews-display .odc-btn-warning,.dashboard-role-charts .pending-reviews-display .odc-btn-info{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#ef4444;color:#fff;border-radius:8px;font-weight:600;text-decoration:none;transition:all .2s ease;border:none;cursor:pointer}.dashboard-role-charts .pending-reviews-display .odc-btn:hover,.dashboard-role-charts .pending-reviews-display .odc-btn-primary:hover,.dashboard-role-charts .pending-reviews-display .odc-btn-secondary:hover,.dashboard-role-charts .pending-reviews-display .odc-btn-success:hover,.dashboard-role-charts .pending-reviews-display .odc-btn-danger:hover,.dashboard-role-charts .pending-reviews-display .odc-btn-warning:hover,.dashboard-role-charts .pending-reviews-display .odc-btn-info:hover{background:#dc2626;transform:translateY(-2px)}.commission-table-container{overflow-x:auto;border-radius:8px;box-shadow:0 2px 4px #0000001a}.commission-table{width:100%;border-collapse:collapse;background:#fff;font-size:.875rem}.commission-table th,.commission-table td{padding:1rem;text-align:left;border-bottom:1px solid #e5e7eb}.commission-table th{background:#f9fafb;font-weight:600;color:#374151;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.commission-table td{color:#1f2937}.commission-table .total-row{background:#f3f4f6;font-weight:600}.commission-table .total-row td{border-top:2px solid #d1d5db}.commission-table tr:hover:not(.total-row){background:#f9fafb}.revenue-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;padding:1rem}.revenue-card{background:#fff;padding:1.5rem;border-radius:8px;text-align:center;box-shadow:0 2px 4px #0000001a;border:1px solid #e5e7eb}.revenue-card .revenue-value{font-size:1.5rem;font-weight:700;color:#10b981;margin-bottom:.5rem}.revenue-card .revenue-label{font-size:.875rem;color:#6b7280;font-weight:500}.revenue-card .target-progress{margin-top:.75rem}.revenue-card .target-progress .target-progress-bar{width:100%;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden;margin-bottom:.5rem}.revenue-card .target-progress .target-progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:3px;transition:width .3s ease}.revenue-card .target-progress .target-progress-text{font-size:.75rem;color:#6b7280;text-align:center}.top-performers{display:flex;flex-direction:column;gap:1rem}.performer-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;border:1px solid #e5e7eb}.performer-item .performer-rank{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.performer-item .performer-info{flex:1}.performer-item .performer-info .performer-name{font-weight:600;color:#1f2937;margin-bottom:.25rem}.performer-item .performer-info .performer-role{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.performer-item .performer-revenue{font-weight:600;color:#10b981;font-size:1.125rem}@media (max-width: 1024px){.dashboard-container{padding:1rem}.dashboard-welcome{flex-direction:column;text-align:center;gap:1.5rem}.dashboard-welcome .dashboard-welcome-title{font-size:2rem;color:var(--text-white)}.dashboard-welcome .dashboard-welcome-actions{flex-direction:column;width:100%}.dashboard-welcome .dashboard-welcome-actions .odc-btn,.dashboard-welcome .dashboard-welcome-actions .odc-btn-primary,.dashboard-welcome .dashboard-welcome-actions .odc-btn-secondary,.dashboard-welcome .dashboard-welcome-actions .odc-btn-success,.dashboard-welcome .dashboard-welcome-actions .odc-btn-danger,.dashboard-welcome .dashboard-welcome-actions .odc-btn-warning,.dashboard-welcome .dashboard-welcome-actions .odc-btn-info{width:100%;justify-content:center}.dashboard-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.dashboard-charts-grid,.dashboard-content-grid{grid-template-columns:1fr;gap:1.5rem}.dashboard-metric-card{padding:1rem}.dashboard-metric-card .dashboard-metric-icon{width:50px;height:50px}.dashboard-metric-card .dashboard-metric-icon svg{width:24px;height:24px}.dashboard-metric-card .dashboard-metric-value{font-size:1.5rem}.dashboard-chart-section .dashboard-chart-content{height:250px}}@media (max-width: 768px){.dashboard-welcome{padding:1.5rem}.dashboard-welcome .dashboard-welcome-title{font-size:1.75rem}.dashboard-metrics-grid,.dashboard-charts-grid{grid-template-columns:1fr}.dashboard-metric-card .dashboard-metric-content .dashboard-metric-value{font-size:1.25rem}.dashboard-list-item{flex-direction:column;align-items:flex-start;gap:.75rem}.dashboard-list-item .dashboard-list-item-status{margin-left:0;align-self:flex-end}.dashboard-chart-section .dashboard-chart-content{height:200px;padding:1rem}}@media (max-width: 480px){.dashboard-container{padding:.5rem}.dashboard-welcome{padding:1rem}.dashboard-welcome .dashboard-welcome-title{font-size:1.5rem}.dashboard-welcome .dashboard-welcome-subtitle{font-size:1rem}.dashboard-metric-card{flex-direction:column;text-align:center;gap:1rem}.dashboard-metric-card .dashboard-metric-icon{width:60px;height:60px}.dashboard-section .dashboard-section-header{padding:1rem;flex-direction:column;gap:.5rem;text-align:center}.dashboard-section .dashboard-section-content,.dashboard-chart-section .dashboard-chart-header{padding:1rem}.dashboard-chart-section .dashboard-chart-content{height:180px;padding:.5rem}}.odc-teams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(450px,1fr));gap:1.5rem;margin-top:1.5rem}.odc-team-card{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:12px;padding:1.75rem;box-shadow:0 1px 3px #0000000d;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.odc-team-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#1d4ed8);opacity:0;transition:opacity .3s ease}.odc-team-card:hover{box-shadow:0 8px 25px #0000001f;transform:translateY(-4px);border-color:#cbd5e1}.odc-team-card:hover:before{opacity:1}.odc-team-card.performance-exceeded:before{background:linear-gradient(90deg,#10b981,#059669)}.odc-team-card.performance-on_track:before{background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.odc-team-card.performance-behind:before{background:linear-gradient(90deg,#f59e0b,#d97706)}.odc-team-card.performance-at_risk:before{background:linear-gradient(90deg,#ef4444,#dc2626)}.odc-team-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;gap:1rem}.odc-team-info{flex:1;min-width:0}.odc-team-name{font-size:1.375rem;font-weight:700;color:#1e293b;margin:0 0 .75rem;line-height:1.3;display:flex;align-items:center;gap:.5rem}.odc-team-name:before{content:"";width:6px;height:6px;background:#3b82f6;border-radius:50%;flex-shrink:0}.odc-team-meta{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.odc-team-department{color:#64748b;font-size:.875rem;font-weight:500;padding:.25rem .75rem;background:#f1f5f9;border-radius:20px;border:1px solid #e2e8f0}.odc-team-actions{display:flex;gap:.5rem;flex-shrink:0;align-items:center}.odc-team-description{color:#64748b;font-size:.875rem;line-height:1.6;margin:0 0 1.5rem;padding:1rem;background:#f8fafc;border-radius:8px;border-left:3px solid #e2e8f0}.odc-team-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:1.5rem;padding:1rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:8px;border:1px solid #e2e8f0}.odc-team-leader,.odc-team-members,.odc-team-location{display:flex;flex-direction:column;gap:.25rem;font-size:.875rem;color:#475569}.odc-team-leader strong,.odc-team-members strong,.odc-team-location strong{color:#1e293b;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.odc-sales-progress{margin-bottom:1.25rem;padding:1.25rem;background:#fff;border-radius:10px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d}.odc-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.odc-progress-label{font-size:.875rem;font-weight:600;color:#374151;display:flex;align-items:center;gap:.5rem}.odc-progress-label:before{content:"";width:8px;height:8px;background:#10b981;border-radius:50%}.odc-progress-percentage{font-size:1rem;font-weight:700;color:#059669;padding:.25rem .75rem;background:#ecfdf5;border-radius:20px;border:1px solid #d1fae5}.odc-progress-bar{width:100%;height:10px;background:linear-gradient(90deg,#f1f5f9,#e2e8f0);border-radius:6px;overflow:hidden;margin-bottom:.75rem;box-shadow:inset 0 1px 2px #0000001a}.odc-progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:6px;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative}.odc-progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.odc-sales-details{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;font-weight:500}.odc-current-sales{font-weight:700;color:#059669;font-size:1rem}.odc-target-sales{color:#64748b;font-size:.875rem}.odc-performance-status{display:flex;justify-content:flex-end;margin-top:1rem}.odc-performance-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:25px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #0000001a;transition:all .2s ease}.odc-performance-badge:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.odc-performance-badge.performance-exceeded{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#065f46;border:1px solid #a7f3d0}.odc-performance-badge.performance-on_track{background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1e40af;border:1px solid #93c5fd}.odc-performance-badge.performance-behind{background:linear-gradient(135deg,#fffbeb,#fde68a);color:#92400e;border:1px solid #fcd34d}.odc-performance-badge.performance-at_risk{background:linear-gradient(135deg,#fef2f2,#fecaca);color:#991b1b;border:1px solid #fca5a5}.odc-performance-badge svg{width:14px;height:14px}.odc-team-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.25rem;padding:1rem;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.odc-stat-item{text-align:center;padding:.75rem;border-radius:6px;background:#f8fafc;border:1px solid #e2e8f0;transition:all .2s ease}.odc-stat-item:hover{background:#f1f5f9;transform:translateY(-1px)}.odc-stat-value{font-size:1.25rem;font-weight:700;color:#1e293b;display:block;margin-bottom:.25rem}.odc-stat-label{font-size:.75rem;color:#64748b;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.odc-user-search-wrapper{position:relative;margin-bottom:1rem}.odc-user-search-input{position:relative}.odc-user-search-input .odc-input,.odc-user-search-input .odc-textarea,.odc-user-search-input .odc-search-input,.odc-user-search-input .odc-password-input{padding-right:2.5rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m19 19-4-4m0-7A7 7 0 1 1 1 8a7 7 0 0 1 14 0Z'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.25rem}.odc-user-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #00000026;z-index:50;max-height:300px;overflow-y:auto;margin-top:.25rem;animation:dropdownSlide .2s ease-out}.odc-user-dropdown::-webkit-scrollbar{width:6px}.odc-user-dropdown::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.odc-user-dropdown::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.odc-user-dropdown::-webkit-scrollbar-thumb:hover{background:#94a3b8}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.odc-user-option{padding:1rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f1f5f9;transition:all .15s ease;position:relative}.odc-user-option:hover{background:linear-gradient(135deg,#f8fafc,#f1f5f9);transform:translate(4px)}.odc-user-option:last-child{border-bottom:none}.odc-user-option:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#3b82f6,#1d4ed8);opacity:0;transition:opacity .15s ease}.odc-user-option:hover:before{opacity:1}.odc-user-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.odc-user-name{font-weight:600;color:#1e293b;font-size:.95rem;display:flex;align-items:center;gap:.5rem}.odc-user-name:before{content:"";width:8px;height:8px;background:#10b981;border-radius:50%;display:inline-block}.odc-user-email{font-size:.8rem;color:#64748b;font-weight:400}.odc-user-role{font-size:.75rem;color:#3b82f6;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:.25rem .5rem;background:#eff6ff;border-radius:12px;border:1px solid #dbeafe}.odc-user-role-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.odc-user-role-badge.admin{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.odc-user-role-badge.manager{background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd}.odc-user-role-badge.sales{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.odc-user-role-badge.estimator{background:#fefce8;color:#ca8a04;border:1px solid #fde047}.odc-user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.875rem;margin-right:.75rem;flex-shrink:0}.odc-user-details{display:flex;align-items:center;flex:1}.odc-user-meta{display:flex;flex-direction:column;gap:.25rem;flex:1}.odc-user-position{font-size:.75rem;color:#94a3b8;font-style:italic}.odc-selected-members{margin-top:1rem}.odc-subsection-title{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.odc-subsection-title:before{content:"";width:4px;height:16px;background:linear-gradient(180deg,#3b82f6,#1d4ed8);border-radius:2px}.odc-members-grid{display:grid;gap:.75rem}.odc-member-card{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:8px;transition:all .2s ease}.odc-member-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.odc-member-info{flex:1;display:flex;align-items:center;gap:.75rem}.odc-member-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1rem;flex-shrink:0}.odc-member-details{display:flex;flex-direction:column;gap:.25rem}.odc-member-name{font-weight:600;color:#1e293b;font-size:.95rem}.odc-member-role{font-size:.75rem;color:#64748b;font-weight:500}.odc-member-actions{display:flex;gap:.5rem}.odc-goal-form{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:1.5rem;border-radius:8px;margin-bottom:1rem;border:1px solid #e2e8f0}.odc-goals-list{margin-top:1rem}.odc-goal-item{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.75rem;transition:all .2s ease}.odc-goal-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.odc-goal-content{flex:1}.odc-goal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.odc-goal-title{font-size:1rem;font-weight:600;color:#1f2937;margin:0}.odc-goal-description{color:#6b7280;font-size:.875rem;margin:0 0 .5rem;line-height:1.5}.odc-goal-meta{font-size:.75rem;color:#6b7280}.odc-goal-date{color:#059669;font-weight:500}.odc-performance-overview .odc-team-info{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.odc-performance-overview .odc-team-info h4{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.odc-performance-overview .odc-team-info p{color:#6b7280;margin:0 0 1rem}.odc-performance-overview .odc-team-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.875rem}.odc-performance-overview .odc-team-meta span{color:#6b7280}.odc-performance-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.odc-stat-card{background:#f9fafb;padding:1rem;border-radius:6px;border:1px solid #e5e7eb}.odc-stat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.odc-stat-header h5{font-size:.875rem;font-weight:600;color:#374151;margin:0}.odc-stat-value{font-size:1.125rem;font-weight:600;color:#059669}.odc-stat-details{font-size:.75rem;color:#6b7280}.odc-member-performance h4{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 1rem}.odc-members-table{overflow-x:auto}.odc-members-table .odc-table{width:100%;font-size:.875rem}.odc-members-table .odc-table th{background:#f9fafb;font-weight:600;color:#374151;text-align:left;padding:.75rem;border-bottom:1px solid #e5e7eb}.odc-members-table .odc-table td{padding:.75rem;border-bottom:1px solid #f3f4f6;color:#6b7280}.odc-members-table .odc-table tr:hover{background:#f9fafb}.odc-badge-low{background-color:#dbeafe;color:#1e40af}.odc-badge-medium{background-color:#fef3c7;color:#92400e}.odc-badge-high{background-color:#fed7aa;color:#ea580c}.odc-badge-critical{background-color:#fecaca;color:#dc2626}@media (max-width: 768px){.odc-teams-grid{grid-template-columns:1fr}.odc-team-header{flex-direction:column;gap:1rem}.odc-team-actions{width:100%;justify-content:flex-end}.odc-performance-stats{grid-template-columns:1fr}.odc-members-table .odc-table{font-size:.75rem}.odc-members-table .odc-table th,.odc-members-table .odc-table td{padding:.5rem}.odc-user-dropdown{max-height:250px}.odc-user-option{padding:.75rem}.odc-team-details,.odc-team-stats{grid-template-columns:1fr}}.odc-estimator-form-container .odc-form-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a;transition:all .2s ease}.odc-estimator-form-container .odc-form-section:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.odc-estimator-form-container .odc-section-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.odc-estimator-form-container .odc-section-header-content{display:flex;align-items:center;gap:.75rem}.odc-estimator-form-container .odc-section-header-icon{width:24px;height:24px;color:#3b82f6;flex-shrink:0}.odc-estimator-form-container .odc-section-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0}.odc-estimator-form-container .odc-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.odc-estimator-form-container .odc-form-group{display:flex;flex-direction:column;gap:.5rem}.odc-estimator-form-container .odc-label{display:flex;align-items:center;gap:.5rem;font-weight:500;color:#374151;font-size:.875rem;margin-bottom:.25rem}.odc-estimator-form-container .odc-label svg{width:16px;height:16px;color:#6b7280;flex-shrink:0}.odc-estimator-form-container .odc-input,.odc-estimator-form-container .odc-textarea,.odc-estimator-form-container .odc-search-input,.odc-estimator-form-container .odc-password-input{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s ease;background:#fff}.odc-estimator-form-container .odc-input:focus,.odc-estimator-form-container .odc-textarea:focus,.odc-estimator-form-container .odc-search-input:focus,.odc-estimator-form-container .odc-password-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.odc-estimator-form-container .odc-input:disabled,.odc-estimator-form-container .odc-textarea:disabled,.odc-estimator-form-container .odc-search-input:disabled,.odc-estimator-form-container .odc-password-input:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.odc-estimator-form-container .odc-textarea{resize:vertical;min-height:100px;line-height:1.5}.odc-estimator-form-container .odc-help-text{font-size:.75rem;color:#6b7280;margin-top:.25rem}.odc-estimator-form-container .odc-error{color:#dc2626;font-size:.75rem;margin-top:.25rem}.odc-estimator-form-container .odc-summary-info{display:flex;flex-direction:column;gap:1rem}.odc-estimator-form-container .odc-summary-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.odc-estimator-form-container .odc-summary-label{font-weight:500;color:#374151;font-size:.875rem}.odc-estimator-form-container .odc-summary-value{font-weight:600;color:#111827;text-align:right}.odc-estimator-form-container .odc-form-actions{margin-top:1rem}.odc-estimator-form-container .odc-btn-full{width:100%;justify-content:center;padding:.875rem 1.5rem;font-weight:600}.odc-searchable-select{position:relative;width:100%}.odc-clear-btn:hover{background:#f3f4f6;color:#374151}.odc-dropdown-menu{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:50;max-height:300px;overflow-y:auto;margin-top:.25rem}.odc-dropdown-item{padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid #f3f4f6;transition:all .2s ease}.odc-dropdown-item:hover{background:#f9fafb}.odc-dropdown-item:active{background:#f3f4f6}.odc-dropdown-item-title{font-weight:600;color:#111827;font-size:.875rem}.odc-dropdown-item-subtitle{color:#6b7280;font-size:.75rem}.odc-dropdown-item-amount{font-weight:600;color:#059669;font-size:.75rem}.odc-dropdown-item-date{color:#6b7280;font-size:.75rem}.odc-dropdown-empty{padding:2rem 1rem;text-align:center;color:#6b7280}.odc-dropdown-empty svg{width:48px;height:48px;color:#d1d5db;margin-bottom:1rem}.odc-dropdown-empty p{margin:.5rem 0;font-size:.875rem}.odc-dropdown-empty .odc-dropdown-empty-hint{font-size:.75rem;color:#9ca3af}.odc-file-upload-area{position:relative;border:2px dashed #d1d5db;border-radius:8px;padding:2rem;text-align:center;background:#f9fafb;transition:all .2s ease;cursor:pointer}.odc-file-upload-area:hover{border-color:#3b82f6;background:#f0f9ff}.odc-file-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.odc-file-upload-content{pointer-events:none}.odc-file-upload-icon{width:48px;height:48px;color:#6b7280;margin-bottom:1rem}.odc-file-upload-text{margin:0}.odc-file-upload-primary{font-weight:500;color:#374151}.odc-file-upload-secondary{font-size:.875rem;color:#6b7280;margin-top:.5rem}.odc-current-file{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#f0f9ff;border:1px solid #7dd3fc;border-radius:6px;margin-top:1rem}.odc-current-file-actions{display:flex;align-items:center;gap:.5rem}.odc-current-file-info{display:flex;align-items:center;gap:.75rem}.odc-current-file-icon{color:#0369a1}.odc-current-file-details{display:flex;flex-direction:column;gap:.25rem}.odc-current-file-name{font-weight:500;color:#0369a1;font-size:.875rem}.odc-current-file-size{font-size:.75rem;color:#0891b2}.odc-file-status{font-size:.75rem;color:#059669;font-weight:500;background:#d1fae5;padding:.25rem .5rem;border-radius:4px}.odc-detail-container{display:grid;grid-template-columns:1fr 320px;gap:2rem;margin-top:2rem}.odc-detail-main{display:flex;flex-direction:column;gap:2rem}.odc-detail-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.odc-detail-section-header{margin-bottom:1.5rem}.odc-detail-section-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0}.odc-detail-status-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.odc-detail-status-info{display:flex;align-items:center;gap:.75rem}.odc-detail-status-label{font-weight:500;color:#374151}.odc-detail-actions{display:flex;gap:.5rem;flex-wrap:wrap}.odc-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.odc-detail-item{display:flex;flex-direction:column;gap:.5rem}.odc-detail-item-full{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.odc-detail-label{font-weight:500;color:#374151;font-size:.875rem}.odc-detail-value{color:#111827;font-weight:500}.odc-detail-amount{font-size:1.125rem;font-weight:600;color:#059669}.odc-detail-content{color:#374151;line-height:1.6;background:#f9fafb;padding:1rem;border-radius:6px;border:1px solid #e5e7eb}.odc-detail-client-info{display:flex;align-items:center;gap:1rem}.odc-detail-client-avatar{width:60px;height:60px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600}.odc-detail-client-details{flex:1}.odc-detail-client-name{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.odc-detail-client-company,.odc-detail-client-email,.odc-detail-client-phone{color:#6b7280;margin:.25rem 0;font-size:.875rem}.odc-detail-file-info{display:flex;align-items:center;justify-content:space-between;gap:1rem}.odc-detail-file-preview{display:flex;align-items:center;gap:1rem}.odc-detail-file-icon{width:60px;height:60px;background:#f3f4f6;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#6b7280}.odc-detail-file-details{flex:1}.odc-detail-file-name{font-weight:600;color:#111827;margin:0 0 .5rem}.odc-detail-file-size,.odc-detail-file-type{color:#6b7280;font-size:.875rem;margin:.25rem 0}.odc-detail-file-actions{display:flex;gap:.5rem}.odc-detail-timeline{position:relative;padding-left:2rem}.odc-detail-timeline:before{content:"";position:absolute;left:.5rem;top:0;bottom:0;width:2px;background:#e5e7eb}.odc-detail-timeline-item{position:relative;margin-bottom:2rem}.odc-detail-timeline-item:last-child{margin-bottom:0}.odc-detail-timeline-marker{position:absolute;left:-1.5rem;top:.5rem;width:12px;height:12px;background:#6b7280;border-radius:50%;border:3px solid white;box-shadow:0 0 0 2px #e5e7eb}.odc-detail-timeline-marker.approved{background:#10b981}.odc-detail-timeline-marker.delivered{background:#3b82f6}.odc-detail-timeline-content{padding-left:1rem}.odc-detail-timeline-title{font-weight:600;color:#111827;margin:0 0 .5rem}.odc-detail-timeline-date{color:#6b7280;font-size:.875rem;margin:0 0 .5rem}.odc-detail-timeline-description{color:#374151;margin:0;line-height:1.5}.odc-detail-sidebar{display:flex;flex-direction:column;gap:1.5rem}.odc-detail-sidebar-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.odc-detail-sidebar-title{font-size:1.125rem;font-weight:600;color:#111827;margin:0 0 1rem}.odc-detail-sidebar-actions{display:flex;flex-direction:column;gap:.75rem}.odc-detail-sidebar-status{display:flex;flex-direction:column;gap:1rem}.odc-detail-sidebar-status-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #f3f4f6}.odc-detail-sidebar-status-item:last-child{border-bottom:none}.odc-detail-sidebar-status-label{font-weight:500;color:#374151;font-size:.875rem}.odc-detail-sidebar-status-value{color:#111827;font-weight:500}.odc-detail-sidebar-financial{display:flex;flex-direction:column;gap:1rem}.odc-detail-sidebar-financial-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #f3f4f6}.odc-detail-sidebar-financial-item:last-child{border-bottom:none}.odc-detail-sidebar-financial-label{font-weight:500;color:#374151;font-size:.875rem}.odc-detail-sidebar-financial-value{color:#111827;font-weight:600}.odc-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.odc-modal{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:800px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.odc-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e5e7eb}.odc-modal-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0}.odc-modal-close{background:none;border:none;color:#6b7280;cursor:pointer;padding:.5rem;border-radius:4px;transition:all .2s ease}.odc-modal-close:hover{background:#f3f4f6;color:#374151}.odc-modal-body{flex:1;overflow-y:auto;padding:1.5rem}.odc-modal-section{margin-bottom:2rem}.odc-modal-section:last-child{margin-bottom:0}.odc-modal-section-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:#111827;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.odc-modal-section-title svg{width:16px;height:16px;color:#6b7280}.odc-modal-grid{display:grid;gap:.75rem}.odc-modal-info-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.odc-modal-info-item.odc-modal-info-total{background:#dbeafe;border-color:#93c5fd;font-weight:600}.odc-modal-info-label{font-weight:500;color:#374151;font-size:.875rem}.odc-modal-info-value{color:#111827;font-size:.875rem;text-align:right}.odc-modal-info-value.text-red-600{color:#dc2626}.odc-modal-scopes{display:flex;flex-direction:column;gap:.75rem}.odc-modal-scope-item{padding:8px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px}.odc-modal-scope-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.odc-modal-scope-name{font-weight:500;color:#111827;font-size:.875rem}.odc-modal-scope-hours{font-size:.75rem;color:#6b7280;background:#e5e7eb;padding:.25rem .5rem;border-radius:4px}.odc-modal-scope-notes{font-size:.75rem;color:#6b7280;font-style:italic;line-height:1.4}.odc-modal-addons{display:flex;flex-direction:column;gap:.75rem}.odc-modal-addon-item{padding:8px;background:#fef3c7;border:1px solid #f59e0b;border-radius:6px}.odc-modal-addon-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.odc-modal-addon-name{font-weight:500;color:#92400e;font-size:.875rem}.odc-modal-addon-cost{font-size:.875rem;color:#d97706;background:#fef3c7;padding:.25rem .5rem;border-radius:4px;font-weight:600}.odc-modal-addon-description{font-size:.75rem;color:#92400e;line-height:1.4;opacity:.8}.odc-so-list-stat-value{font-size:15px;font-weight:600;color:var(--primary-color);margin-bottom:var(--spacing-xs);line-height:1.2}.odc-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.odc-list-sales-order-card{background:var(--surface-color);border:1px solid var(--border-color);padding:var(--spacing-md);transition:all var(--transition-base);box-shadow:var(--shadow-sm);line-height:1.4}.odc-list-sales-order-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--primary-color)}.odc-list-sales-order-card.status-approved{border-top:6px solid var(--success-color)}.odc-list-sales-order-card.status-draft{border-top:6px solid var(--warning-color)}.odc-list-sales-order-card.status-pending{border-left:6px solid var(--info-color)}.odc-list-sales-order-card.status-rejected{border-left:6px solid var(--danger-color)}@media (max-width: 1024px){.odc-detail-container{grid-template-columns:1fr}.odc-detail-sidebar{order:-1}}@media (max-width: 768px){.odc-detail-status-actions{flex-direction:column;align-items:flex-start;gap:1rem}.odc-detail-actions{width:100%;justify-content:flex-start}.odc-detail-grid{grid-template-columns:1fr}.odc-detail-client-info{flex-direction:column;text-align:center}.odc-detail-file-info{flex-direction:column;align-items:flex-start;gap:1rem}.odc-detail-file-actions{width:100%;justify-content:flex-start}.odc-form-grid{grid-template-columns:1fr}}.odc-badge-lg{padding:.5rem 1rem;font-size:.875rem;font-weight:600}.odc-btn-full{width:100%;justify-content:center}.odc-selected-client{margin-top:.75rem}.odc-client-badge{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:#f0f9ff;border:1px solid #7dd3fc;border-radius:6px;font-size:.875rem}.odc-client-badge-name{font-weight:500;color:#0369a1}.odc-client-badge-company{color:#64748b;font-weight:400}.odc-client-badge-remove{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border:none;background:transparent;color:#64748b;border-radius:4px;cursor:pointer;transition:all .2s}.odc-client-badge-remove:hover{background:#f1f5f9;color:#dc2626}.odc-selected-quotation{margin-top:1rem}.odc-quotation-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f0f9ff;border:1px solid #7dd3fc;border-radius:6px;color:#0369a1}.odc-quotation-badge-number{font-weight:500}.odc-quotation-badge-amount{color:#0891b2;font-size:.875rem}.odc-quotation-badge-remove{background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.odc-quotation-badge-remove:hover{background:#ef4444;color:#fff}.odc-searchable-select{position:relative}.odc-search-input-wrapper{position:relative;display:flex;align-items:center}.odc-clear-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.odc-clear-btn:hover{background:#ef4444;color:#fff}.odc-dropdown-menu{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a;z-index:10;max-height:200px;overflow-y:auto}.odc-dropdown-item{padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid #f3f4f6;transition:background-color .2s ease}.odc-dropdown-item:hover{background-color:#f9fafb}.odc-dropdown-item:last-child{border-bottom:none}.odc-dropdown-item-content{display:flex;flex-direction:column;gap:.25rem}.odc-dropdown-item-title{font-weight:500;color:#111827}.odc-dropdown-item-subtitle{font-size:.875rem;color:#6b7280}.odc-dropdown-item-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.25rem}.odc-dropdown-item-amount{font-weight:500;color:#059669;font-size:.875rem}.odc-dropdown-item-date{font-size:.75rem;color:#6b7280}.odc-dropdown-empty{padding:1.5rem;text-align:center;color:#6b7280}.odc-dropdown-empty svg{margin-bottom:.5rem;color:#9ca3af}.odc-dropdown-empty p{margin:.25rem 0;font-size:.875rem}.odc-dropdown-empty-hint{font-size:.75rem!important;color:#9ca3af!important;font-style:italic}.odc-estimate-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:1rem;margin-bottom:1rem}.odc-estimate-info-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #e2e8f0}.odc-estimate-info-item:last-child{border-bottom:none}.odc-estimate-info-label{font-weight:500;color:#374151;font-size:.875rem}.odc-estimate-info-value{color:#059669;font-weight:500;font-size:.875rem}.odc-input-with-actions{display:flex;gap:.5rem;align-items:flex-end}.odc-input-with-actions .odc-input,.odc-input-with-actions .odc-textarea,.odc-input-with-actions .odc-search-input,.odc-input-with-actions .odc-password-input{flex:1}.odc-input-actions{display:flex;gap:.25rem;flex-shrink:0}.odc-btn-sm{padding:.375rem .75rem;font-size:.75rem;border-radius:4px;display:inline-flex;align-items:center;gap:.25rem;transition:all .2s ease;border:1px solid #d1d5db;background:#fff;color:#374151;cursor:pointer}.odc-btn-sm:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.odc-btn-sm:disabled{opacity:.5;cursor:not-allowed}.odc-btn-sm svg{width:12px;height:12px}.odc-dropdown-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.odc-dropdown-item-content{flex:1;cursor:pointer}.odc-dropdown-item-action{background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease;flex-shrink:0}.odc-dropdown-item-action:hover{background:#f3f4f6;color:#374151}.odc-dropdown-item-action svg{width:14px;height:14px}.odc-image-preview-modal{max-width:90vw;max-height:90vh;width:auto;height:auto}.odc-image-preview{display:flex;justify-content:center;align-items:center;max-height:70vh;overflow:auto}.odc-preview-image{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a}.odc-invoice-list-container{padding:2rem 0}.odc-invoice-list-container .odc-invoice-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.odc-invoice-list-container .odc-invoice-stat-card{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.odc-invoice-list-container .odc-invoice-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.odc-invoice-list-container .odc-invoice-stat-card .odc-invoice-stat-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.odc-invoice-list-container .odc-invoice-stat-card .odc-invoice-stat-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem}.odc-invoice-list-container .odc-invoice-stat-card .odc-invoice-stat-title{font-size:.875rem;font-weight:500;color:var(--text-muted);margin:0}.odc-invoice-list-container .odc-invoice-stat-card .odc-invoice-stat-value{font-size:2rem;font-weight:700;color:var(--text-color);margin:.5rem 0}.odc-invoice-list-container .odc-invoice-stat-card .odc-invoice-stat-change{font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:.25rem}.odc-invoice-list-container .odc-invoice-stat-card .odc-invoice-stat-change.positive{color:var(--success-color)}.odc-invoice-list-container .odc-invoice-stat-card .odc-invoice-stat-change.negative{color:var(--danger-color)}.odc-invoice-list-container .odc-invoice-stat-card.odc-invoice-total-invoices .odc-invoice-stat-icon{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color))}.odc-invoice-list-container .odc-invoice-stat-card.odc-invoice-total-amount .odc-invoice-stat-icon{background:linear-gradient(135deg,var(--success-color),#059669)}.odc-invoice-list-container .odc-invoice-stat-card.odc-invoice-total-paid .odc-invoice-stat-icon{background:linear-gradient(135deg,#10b981,#047857)}.odc-invoice-list-container .odc-invoice-stat-card.odc-invoice-overdue-amount .odc-invoice-stat-icon{background:linear-gradient(135deg,var(--danger-color),#dc2626)}.odc-invoice-list-container .odc-invoice-status-overview{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-overview-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-overview-title{font-size:1.125rem;font-weight:600;color:var(--text-color);margin:0}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-item{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px;background:var(--surface-hover-color);transition:all var(--transition-base)}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-item:hover{background:var(--surface-color);box-shadow:var(--shadow-sm)}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-item .odc-invoice-status-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-item .odc-invoice-status-info{flex:1}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-item .odc-invoice-status-label{font-size:.875rem;font-weight:500;color:var(--text-color);margin:0}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-item .odc-invoice-status-count{font-size:1.25rem;font-weight:700;color:var(--text-color);margin:0}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-item.odc-invoice-draft .odc-invoice-status-dot{background:var(--text-muted)}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-item.odc-invoice-sent .odc-invoice-status-dot{background:var(--info-color)}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-item.odc-invoice-paid .odc-invoice-status-dot{background:var(--success-color)}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-item.odc-invoice-overdue .odc-invoice-status-dot{background:var(--danger-color)}.odc-invoice-list-container .odc-invoice-status-overview .odc-invoice-status-item.odc-invoice-cancelled .odc-invoice-status-dot{background:var(--warning-color)}.odc-invoice-list-container .odc-list-search-filters-section{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}.odc-invoice-list-container .odc-list-search-filters-section .odc-list-search-filters-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.odc-invoice-list-container .odc-list-search-filters-section .odc-list-search-wrapper{position:relative;flex:1;max-width:500px}.odc-invoice-list-container .odc-list-search-filters-section .odc-list-search-wrapper .odc-list-search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:1.25rem;height:1.25rem;color:var(--text-muted);pointer-events:none}.odc-invoice-list-container .odc-list-search-filters-section .odc-list-search-wrapper .odc-list-search-input{width:100%;padding:.875rem 1rem .875rem 2.75rem;border:2px solid var(--border-color);border-radius:8px;font-size:.875rem;font-weight:500;transition:all var(--transition-base);background:#fff}.odc-invoice-list-container .odc-list-search-filters-section .odc-list-search-wrapper .odc-list-search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha)}.odc-invoice-list-container .odc-list-search-filters-section .odc-list-search-wrapper .odc-list-search-input::-moz-placeholder{color:var(--text-muted);font-weight:400}.odc-invoice-list-container .odc-list-search-filters-section .odc-list-search-wrapper .odc-list-search-input::placeholder{color:var(--text-muted);font-weight:400}.odc-invoice-list-container .odc-list-search-filters-section .odc-list-filters-toggle{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;border:2px solid var(--border-color);border-radius:8px;background:#fff;color:var(--text-color);font-weight:600;font-size:.875rem;cursor:pointer;transition:all var(--transition-base)}.odc-invoice-list-container .odc-list-search-filters-section .odc-list-filters-toggle:hover{background:var(--surface-hover-color);border-color:var(--primary-color);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.odc-invoice-list-container .odc-list-search-filters-section .odc-list-filters-toggle.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:var(--shadow-md)}.odc-invoice-list-container .odc-list-search-filters-section .odc-list-filters-toggle .odc-list-filters-icon{width:1.125rem;height:1.125rem}.odc-invoice-list-container .odc-list-filters-panel{border-top:1px solid var(--border-color);padding-top:1.5rem;margin-top:1rem}.odc-invoice-list-container .odc-list-filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.odc-invoice-list-container .odc-list-filter-group{display:flex;flex-direction:column;gap:.5rem}.odc-invoice-list-container .odc-list-filter-label{font-size:.875rem;font-weight:500;color:var(--text-color)}.odc-invoice-list-container .odc-list-filter-select,.odc-invoice-list-container .odc-list-filter-input{padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:8px;font-size:.875rem;background:#fff;transition:all var(--transition-base)}.odc-invoice-list-container .odc-list-filter-select:focus,.odc-invoice-list-container .odc-list-filter-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha)}.odc-invoice-list-container .odc-filters-actions{display:flex;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--border-color)}.odc-invoice-list-container .odc-invoice-table-container{background:#fff;border:1px solid var(--border-color);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table-header{padding:1.5rem;border-bottom:1px solid var(--border-color);background:var(--tbl-head-bg)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table-title{font-size:1.125rem;font-weight:600;color:var(--text-color);margin:0}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table{width:100%;border-collapse:collapse}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table th{padding:1rem 1.5rem;text-align:left;font-weight:600;color:var(--text-color);background:var(--tbl-head-bg);border-bottom:1px solid var(--border-color);font-size:.875rem}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table td{padding:1rem 1.5rem;border-bottom:1px solid var(--border-light);vertical-align:middle;font-size:12px}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table tbody tr{transition:all var(--transition-base)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table tbody tr:hover{background:var(--surface-hover-color)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table tbody tr.odc-table-row-overdue{background:var(--danger-color-alpha)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-expand-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border-color);border-radius:6px;background:#fff;color:var(--text-color);cursor:pointer;transition:all var(--transition-base)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-expand-btn:hover{background:var(--surface-hover-color);border-color:var(--primary-color);transform:scale(1.05)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-expand-btn.expanded{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-expand-btn.expanded svg{transform:rotate(180deg)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-expand-btn svg{width:16px;height:16px;transition:transform var(--transition-base)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-invoice-number{font-weight:600;color:var(--primary-color);text-decoration:none}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-invoice-number:hover{text-decoration:underline}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-invoice-amount{font-weight:600;color:var(--text-color)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-invoice-status{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-invoice-status-draft{background:var(--text-muted);color:#fff}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-invoice-status-sent{background:var(--info-color-alpha);color:var(--info-color)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-invoice-status-paid{background:var(--success-color-alpha);color:var(--success-color)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-invoice-status-overdue{background:var(--danger-color-alpha);color:var(--danger-color)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-invoice-status-cancelled{background:var(--warning-color-alpha);color:var(--warning-color)}.odc-invoice-list-container .odc-invoice-table-container .odc-invoice-table .odc-invoice-actions{display:flex;align-items:center;gap:.5rem}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row{background:var(--surface-hover-color)}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-content{padding:1.5rem;background:#fff;margin:0 1.5rem 1.5rem;border-radius:8px;box-shadow:var(--shadow-sm)}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section{margin-bottom:2rem}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section:last-child{margin-bottom:0}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section .odc-expanded-title{font-size:1rem;font-weight:600;color:var(--text-color);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-light)}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section .odc-expanded-table{margin-top:1rem}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section .odc-expanded-table .odc-table{font-size:.875rem}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section .odc-expanded-table .odc-table th{padding:.75rem;font-size:.75rem}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section .odc-expanded-table .odc-table td{padding:.75rem}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section .odc-expanded-summary{background:var(--surface-hover-color);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section .odc-expanded-summary .odc-summary-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border-light)}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section .odc-expanded-summary .odc-summary-row:last-child{border-bottom:none}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section .odc-expanded-summary .odc-summary-row.odc-summary-total{font-weight:600;font-size:1.125rem;border-top:2px solid var(--border-color);margin-top:.5rem;padding-top:.75rem}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section .odc-expanded-summary .odc-summary-label{color:var(--text-color);font-weight:500}.odc-invoice-list-container .odc-invoice-table-container .odc-expanded-row .odc-expanded-section .odc-expanded-summary .odc-summary-value{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;color:#495057;min-height:2.5rem;display:flex;align-items:center;line-height:1.5}.odc-estimator-form .odc-form-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a;transition:all .2s ease}.odc-estimator-form .odc-form-section:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.odc-estimator-form .odc-section-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.odc-estimator-form .odc-section-header-content{display:flex;align-items:center;gap:.75rem}.odc-estimator-form .odc-section-header-icon{width:24px;height:24px;color:#3b82f6;flex-shrink:0}.odc-estimator-form .odc-section-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0}.odc-estimator-form .odc-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.odc-estimator-form .odc-form-group{display:flex;flex-direction:column;gap:.5rem}.odc-estimator-form .odc-label{display:flex;align-items:center;gap:.5rem;font-weight:500;color:#374151;font-size:.875rem;margin-bottom:.25rem}.odc-estimator-form .odc-label svg{width:16px;height:16px;color:#6b7280;flex-shrink:0}.odc-estimator-form .odc-textarea{resize:vertical;min-height:100px;line-height:1.5;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s ease;background:#fff}.odc-estimator-form .odc-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.odc-estimator-form .odc-help-text{font-size:.75rem;color:#6b7280;margin-top:.25rem}.odc-estimator-form .odc-error{color:#dc2626;font-size:.75rem;margin-top:.25rem}.odc-estimator-form .odc-searchable-select{position:relative;width:100%}.odc-estimator-form .odc-search-input-wrapper{position:relative;display:flex;align-items:center}.odc-estimator-form .odc-clear-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.odc-estimator-form .odc-clear-btn:hover{background:#f3f4f6;color:#374151}.odc-estimator-form .odc-dropdown-menu{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:50;max-height:300px;overflow-y:auto;margin-top:.25rem}.odc-estimator-form .odc-dropdown-item{padding:.75rem 1rem;cursor:pointer;transition:all .2s ease;border-bottom:1px solid #f3f4f6}.odc-estimator-form .odc-dropdown-item:last-child{border-bottom:none}.odc-estimator-form .odc-dropdown-item:hover{background:#f9fafb}.odc-estimator-form .odc-dropdown-item-content{display:flex;flex-direction:column;gap:.25rem}.odc-estimator-form .odc-dropdown-item-title{font-weight:600;color:#111827;font-size:.875rem}.odc-estimator-form .odc-dropdown-item-subtitle{color:#6b7280;font-size:.8rem}.odc-estimator-form .odc-dropdown-item-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.25rem}.odc-estimator-form .odc-dropdown-item-amount{font-weight:600;color:#059669;font-size:.8rem}.odc-estimator-form .odc-dropdown-item-date{color:#6b7280;font-size:.75rem}.odc-estimator-form .odc-dropdown-empty{padding:2rem 1rem;text-align:center;color:#6b7280}.odc-estimator-form .odc-dropdown-empty svg{width:3rem;height:3rem;margin:0 auto 1rem;color:#d1d5db}.odc-estimator-form .odc-dropdown-empty p{margin:.5rem 0;font-size:.875rem}.odc-estimator-form .odc-dropdown-empty .odc-dropdown-empty-hint{font-size:.75rem;color:#9ca3af}.odc-estimator-form .odc-selected-sales-order{margin-top:1rem}.odc-estimator-form .odc-sales-order-badge{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#f0f9ff;border:1px solid #0ea5e9;border-radius:8px;color:#0c4a6e}.odc-estimator-form .odc-sales-order-badge-number{font-weight:600;font-size:.875rem}.odc-estimator-form .odc-sales-order-badge-client{color:#0369a1;font-size:.8rem}.odc-estimator-form .odc-sales-order-badge-amount{font-weight:600;color:#059669;font-size:.8rem;margin-left:auto}.odc-estimator-form .odc-sales-order-badge-remove{background:none;border:none;color:#dc2626;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.odc-estimator-form .odc-sales-order-badge-remove:hover{background:#fef2f2}.odc-estimator-form .odc-info-card{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#f0f9ff;border:1px solid #0ea5e9;border-radius:8px;margin-bottom:1.5rem}.odc-estimator-form .odc-info-card-icon{width:1.5rem;height:1.5rem;color:#0ea5e9;flex-shrink:0;margin-top:.125rem}.odc-estimator-form .odc-info-card-content{flex:1}.odc-estimator-form .odc-info-card-title{font-weight:600;color:#0c4a6e;margin:0 0 .5rem;font-size:.875rem}.odc-estimator-form .odc-info-card-description{color:#0369a1;font-size:.8rem;margin:0;line-height:1.4}.odc-estimator-form .odc-table-container{overflow-x:auto;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem}.odc-estimator-form .odc-table{width:100%;border-collapse:collapse;background:#fff}.odc-estimator-form .odc-table th{background:#f9fafb;padding:.75rem 1rem;text-align:left;font-weight:600;color:#374151;font-size:.8rem;border-bottom:1px solid #e5e7eb}.odc-estimator-form .odc-table td{padding:.75rem 1rem;border-bottom:1px solid #f3f4f6;vertical-align:middle}.odc-estimator-form .odc-table tbody tr{transition:all .2s ease}.odc-estimator-form .odc-table tbody tr:hover{background:#f9fafb}.odc-estimator-form .odc-items-summary{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-top:1rem}.odc-estimator-form .odc-items-summary-item{display:flex;flex-direction:column;gap:.25rem}.odc-estimator-form .odc-items-summary-label{font-size:.75rem;color:#6b7280;font-weight:500}.odc-estimator-form .odc-items-summary-value{font-weight:600;color:#111827;font-size:1rem}.odc-estimator-form .odc-empty-state{text-align:center;padding:3rem 1rem;color:#6b7280}.odc-estimator-form .odc-empty-state .odc-empty-state-icon{width:4rem;height:4rem;margin:0 auto 1.5rem;color:#d1d5db}.odc-estimator-form .odc-empty-state .odc-empty-state-title{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:#374151}.odc-estimator-form .odc-empty-state .odc-empty-state-description{font-size:.875rem;max-width:400px;margin:0 auto;line-height:1.5}.odc-estimator-form .odc-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.odc-invoice-detail-container{padding:2rem 0}.odc-invoice-detail-container .odc-invoice-header{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}.odc-invoice-detail-container .odc-invoice-header .odc-invoice-header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.odc-invoice-detail-container .odc-invoice-header .odc-invoice-title{font-size:1.5rem;font-weight:700;color:var(--text-color);margin:0}.odc-invoice-detail-container .odc-invoice-header .odc-invoice-status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.odc-invoice-detail-container .odc-invoice-header .odc-invoice-header-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.odc-invoice-detail-container .odc-invoice-header .odc-invoice-info-group .odc-invoice-info-label{font-size:.875rem;font-weight:500;color:var(--text-muted);margin-bottom:.5rem}.odc-invoice-detail-container .odc-invoice-header .odc-invoice-info-group .odc-invoice-info-value{font-size:1rem;font-weight:600;color:var(--text-color)}.odc-invoice-detail-container .odc-invoice-content{display:grid;grid-template-columns:2fr 1fr;gap:2rem}@media (max-width: 1024px){.odc-invoice-detail-container .odc-invoice-content{grid-template-columns:1fr}}.odc-invoice-detail-container .odc-invoice-items{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-sm)}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-title{font-size:1.25rem;font-weight:600;color:var(--text-color);margin:0}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-table{width:100%;border-collapse:collapse}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-table th{padding:1rem;text-align:left;font-weight:600;color:var(--text-color);background:var(--tbl-head-bg);border-bottom:1px solid var(--border-color);font-size:.875rem}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-table td{padding:1rem;border-bottom:1px solid var(--border-light);vertical-align:middle}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-table .odc-invoice-item-description{font-weight:500;color:var(--text-color)}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-table .odc-invoice-item-amount{font-weight:600;color:var(--text-color);text-align:right}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-summary{background:var(--surface-hover-color);border:1px solid var(--border-color);border-radius:8px;padding:1rem;margin-top:1rem}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-summary .odc-invoice-summary-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border-light)}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-summary .odc-invoice-summary-row:last-child{border-bottom:none;font-weight:600;font-size:1.125rem}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-summary .odc-invoice-summary-label{color:var(--text-color)}.odc-invoice-detail-container .odc-invoice-items .odc-invoice-items-summary .odc-invoice-summary-value{font-weight:600;color:var(--text-color)}.odc-invoice-detail-container .odc-invoice-sidebar{display:flex;flex-direction:column;gap:1.5rem}.odc-invoice-detail-container .odc-invoice-payment-section{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-sm)}.odc-invoice-detail-container .odc-invoice-payment-section .odc-invoice-payment-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}.odc-invoice-detail-container .odc-invoice-payment-section .odc-invoice-payment-title{font-size:1.125rem;font-weight:600;color:var(--text-color);margin:0}.odc-invoice-detail-container .odc-invoice-payment-section .odc-invoice-payment-info{display:flex;flex-direction:column;gap:1rem}.odc-invoice-detail-container .odc-invoice-payment-section .odc-invoice-payment-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--surface-hover-color);border-radius:8px;border:1px solid var(--border-color)}.odc-invoice-detail-container .odc-invoice-payment-section .odc-invoice-payment-label{font-weight:500;color:var(--text-color);font-size:.875rem}.odc-invoice-detail-container .odc-invoice-payment-section .odc-invoice-payment-value{font-weight:600;color:var(--text-color)}.odc-invoice-detail-container .odc-invoice-payment-section .odc-invoice-payment-actions{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem}.odc-invoice-detail-container .odc-invoice-actions{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-sm)}.odc-invoice-detail-container .odc-invoice-actions .odc-invoice-actions-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}.odc-invoice-detail-container .odc-invoice-actions .odc-invoice-actions-title{font-size:1.125rem;font-weight:600;color:var(--text-color);margin:0}.odc-invoice-detail-container .odc-invoice-actions .odc-invoice-actions-list{display:flex;flex-direction:column;gap:1rem}.odc-invoice-detail-container .odc-invoice-actions .odc-invoice-action-button{width:100%;justify-content:center;padding:.875rem 1.5rem;font-weight:600}.odc-invoice-payment-modal .odc-invoice-modal-header{border-bottom:1px solid var(--border-color);padding-bottom:1rem;margin-bottom:1.5rem}.odc-invoice-payment-modal .odc-invoice-modal-title{font-size:1.25rem;font-weight:600;color:var(--text-color);margin:0}.odc-invoice-payment-modal .odc-invoice-payment-form{display:flex;flex-direction:column;gap:1.5rem}.odc-invoice-payment-modal .odc-invoice-form-group{display:flex;flex-direction:column;gap:.5rem}.odc-invoice-payment-modal .odc-invoice-form-label{font-weight:500;color:var(--text-color);font-size:.875rem}.odc-invoice-payment-modal .odc-invoice-form-input{padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:8px;font-size:.875rem;transition:all var(--transition-base)}.odc-invoice-payment-modal .odc-invoice-form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha)}.odc-invoice-payment-modal .odc-invoice-payment-summary{background:var(--surface-hover-color);border:1px solid var(--border-color);border-radius:8px;padding:1rem;margin-top:1rem}.odc-invoice-payment-modal .odc-invoice-payment-summary .odc-invoice-summary-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border-light)}.odc-invoice-payment-modal .odc-invoice-payment-summary .odc-invoice-summary-row:last-child{border-bottom:none;font-weight:600}.odc-invoice-payment-modal .odc-invoice-payment-summary .odc-invoice-summary-label{color:var(--text-color)}.odc-invoice-payment-modal .odc-invoice-payment-summary .odc-invoice-summary-value{font-weight:600;color:var(--text-color)}.odc-invoice-payment-modal .odc-invoice-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}@media (max-width: 768px){.odc-invoice-list-container .odc-invoice-stats-grid{grid-template-columns:1fr}.odc-invoice-list-container .odc-invoice-status-grid{grid-template-columns:repeat(2,1fr)}.odc-invoice-list-container .odc-list-filters-grid{grid-template-columns:1fr}.odc-invoice-list-container .odc-list-search-filters-header{flex-direction:column;align-items:stretch}.odc-invoice-list-container .odc-list-search-wrapper{max-width:none}.odc-estimator-form .odc-form-grid,.odc-invoice-detail-container .odc-invoice-content,.odc-invoice-detail-container .odc-invoice-header-info{grid-template-columns:1fr}}@media (max-width: 480px){.odc-invoice-list-container .odc-invoice-status-grid{grid-template-columns:1fr}}.odc-estimator-form .odc-dropdown-item-details{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:var(--text-muted)}.odc-estimator-form .odc-dropdown-item-billing,.odc-estimator-form .odc-dropdown-item-remaining{display:flex;align-items:center;gap:.25rem}.odc-estimator-form .odc-dropdown-item-warning{color:var(--danger-color);font-weight:600;display:flex;align-items:center;gap:.25rem}.odc-estimator-form .odc-sales-order-details{margin-top:1rem;padding:1rem;background:var(--surface-hover-color);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-direction:column;gap:.5rem}.odc-estimator-form .odc-sales-order-detail-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-color)}.odc-estimator-form .odc-sales-order-detail-item strong{color:var(--text-color);min-width:120px}.odc-estimator-form .odc-sales-order-warning{margin-top:.5rem;padding:.75rem;background:var(--danger-color-alpha);border:1px solid var(--danger-color);border-radius:6px;color:var(--danger-color);font-size:.875rem;display:flex;align-items:center;gap:.5rem}.odc-estimator-form .odc-info-card-details{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:.5rem}.odc-estimator-form .odc-info-card-detail-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-color)}.odc-estimator-form .odc-info-card-detail-item strong{color:var(--text-color);min-width:140px}.odc-estimator-form .odc-billing-breakdown{display:flex;flex-direction:column;gap:1rem}.odc-estimator-form .odc-billing-milestone{background:#fff;border:1px solid var(--border-color);border-radius:8px;padding:1rem;transition:all var(--transition-base)}.odc-estimator-form .odc-billing-milestone:hover{box-shadow:var(--shadow-sm)}.odc-estimator-form .odc-billing-milestone.odc-billing-milestone-paid{background:var(--success-color-alpha);border-color:var(--success-color)}.odc-estimator-form .odc-billing-milestone-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1rem}.odc-estimator-form .odc-billing-milestone-info{flex:1}.odc-estimator-form .odc-billing-milestone-name{font-size:1rem;font-weight:600;color:var(--text-color);margin:0 0 .25rem}.odc-estimator-form .odc-billing-milestone-description{font-size:.875rem;color:var(--text-muted);margin:0}.odc-estimator-form .odc-billing-milestone-status{flex-shrink:0}.odc-estimator-form .odc-billing-milestone-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.odc-estimator-form .odc-billing-milestone-item{display:flex;flex-direction:column;gap:.25rem}.odc-estimator-form .odc-billing-milestone-label{font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.odc-estimator-form .odc-billing-milestone-value{font-size:.875rem;font-weight:600;color:var(--text-color)}.odc-estimator-form .odc-billing-milestone-value.odc-billing-milestone-remaining{color:var(--warning-color)}.odc-estimator-form .odc-billing-milestone-value.odc-billing-milestone-paid{color:var(--success-color)}.odc-estimator-form .odc-billing-tax-summary{margin-top:1.5rem;padding:1rem;background:var(--surface-hover-color);border:1px solid var(--border-color);border-radius:8px;border-left:4px solid var(--primary-color)}.odc-estimator-form .odc-billing-tax-header{margin-bottom:1rem}.odc-estimator-form .odc-billing-tax-title{font-size:1rem;font-weight:600;color:var(--text-color);margin:0}.odc-estimator-form .odc-billing-tax-details{display:flex;flex-direction:column;gap:.5rem}.odc-estimator-form .odc-billing-tax-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border-light)}.odc-estimator-form .odc-billing-tax-item:last-child{border-bottom:none;font-weight:600}.odc-estimator-form .odc-billing-tax-item.odc-billing-tax-total{font-size:1.125rem;color:var(--primary-color);border-top:2px solid var(--border-color);margin-top:.5rem;padding-top:.75rem}.odc-estimator-form .odc-billing-tax-label{font-size:.875rem;color:var(--text-color)}.odc-estimator-form .odc-billing-tax-value{font-size:.875rem;font-weight:600;color:var(--text-color)}.odc-quotation-list .odc-list-title{color:#2563eb;font-weight:700;font-size:2rem;margin-bottom:1rem}.odc-quotation-list .odc-table{background:#fff;border-radius:8px;box-shadow:0 2px 8px #2563eb0d}.odc-quotation-list .odc-table th,.odc-quotation-list .odc-table td{padding:.75em 1em}.odc-quotation-list .odc-table th{background:#f1f5f9;color:#2563eb;font-weight:600}.odc-quotation-list .odc-table td{vertical-align:middle}.odc-quotation-list .odc-badge-status.approved{background:#22c55e;color:#fff}.odc-quotation-list .odc-badge-status.generated{background:#3b82f6;color:#fff}.odc-quotation-list .odc-badge-status.expired{background:#ef4444;color:#fff}.odc-quotation-detail .odc-detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.odc-quotation-detail .odc-detail-title{font-size:1.7rem;font-weight:700;color:#2563eb}.odc-quotation-detail .odc-detail-status{font-size:1rem;font-weight:600;padding:.4em 1em;border-radius:1em}.odc-quotation-detail .odc-detail-status.approved{background:#22c55e;color:#fff}.odc-quotation-detail .odc-detail-status.generated{background:#3b82f6;color:#fff}.odc-quotation-detail .odc-detail-status.expired{background:#ef4444;color:#fff}.odc-quotation-detail .odc-detail-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #2563eb0d;margin-bottom:2rem;padding:1.5rem}.page{min-height:100vh;background-color:var(--background-color)}.page-header{padding:var(--spacing-2xl) 0;background-color:var(--surface-color);border-bottom:1px solid var(--border-color);margin-bottom:var(--spacing-2xl)}.page-header h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-color);margin-bottom:var(--spacing-sm)}.page-header p{color:var(--text-muted);font-size:var(--font-size-base);margin:0}.page-content{padding:var(--spacing-xl) 0}.page-section{margin-bottom:var(--spacing-2xl)}.page-section h2{font-size:var(--font-size-xl);font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-lg)}.page-footer{padding:var(--spacing-xl) 0;border-top:1px solid var(--border-color);background-color:var(--surface-color);margin-top:var(--spacing-2xl);text-align:center;color:var(--text-muted);font-size:var(--font-size-sm)}.odc-login-split{display:flex;min-height:100vh;width:100vw;background:none}.odc-login-cover{flex:2 1 0;display:flex;align-items:center;justify-content:center;background:#eaf0fa;position:relative;min-width:0;overflow:hidden}.odc-login-cover-img{width:100%;height:100vh;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;display:block}.odc-login-cover-text{position:absolute;left:0;right:0;top:0;bottom:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:2rem;font-weight:700;background:#3358e64d;text-shadow:0 2px 8px rgba(0,0,0,.15)}.odc-login-container{flex:1 1 0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:var(--spacing-xl)}.odc-login-card{background-color:var(--surface-color, #fff);border-radius:var(--border-radius-lg, 12px);box-shadow:0 4px 24px #00000014;padding:var(--spacing-2xl, 40px) var(--spacing-xl, 32px);width:100%;max-width:400px;border:1px solid var(--border-color, #e5e7eb);display:flex;flex-direction:column;gap:0}.odc-login-header{text-align:center;margin-bottom:var(--spacing-2xl, 32px)}.odc-login-header img{width:48px;height:48px;margin-bottom:8px}.odc-login-header h1{font-size:var(--font-size-2xl, 1.5rem);font-weight:700;color:var(--text-color, #222);margin-bottom:var(--spacing-xs, 4px)}.odc-login-header p{color:var(--text-muted, #888);font-size:var(--font-size-base, 1rem);margin:0}.odc-login-form{display:flex;flex-direction:column;gap:var(--spacing-lg, 20px)}.odc-input-group{display:flex;flex-direction:column;gap:6px}.odc-input-icon-group{display:flex;align-items:center;background:#f7f8fa;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;padding:0 10px;transition:border .2s;position:relative}.odc-input-icon{display:flex;align-items:center;margin-right:6px;color:var(--text-muted, #888)}.odc-input,.odc-textarea,.odc-search-input,.odc-password-input{border:none;background:transparent;outline:none;flex:1;padding:10px 0;font-size:1rem;color:var(--text-color, #222)}.odc-password-toggle{background:none;border:none;outline:none;cursor:pointer;margin-left:6px;display:flex;align-items:center;color:var(--text-muted, #888);padding:0}.odc-btn-primary.odc-login-btn{width:100%;margin-top:var(--spacing-lg, 20px);background:linear-gradient(90deg,#4f8cff,#3358e6);color:#fff;font-weight:600;border:none;border-radius:6px;padding:12px 0;font-size:1.1rem;box-shadow:0 2px 8px #4f8cff14;transition:background .2s,box-shadow .2s}.odc-btn-primary.odc-login-btn:hover{background:linear-gradient(90deg,#3358e6,#4f8cff);box-shadow:0 4px 16px #3358e61f}.invalid-feedback{color:#e53e3e;font-size:.95em;margin-top:4px;text-align:left}.odc-login-error{margin-top:16px;text-align:center;font-size:1em;font-weight:500}.odc-login-footer{text-align:center;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.odc-login-footer p{color:var(--text-muted);font-size:var(--font-size-sm);margin:0}@media (max-width: 900px){.odc-login-split{flex-direction:column}.odc-login-cover{height:180px;min-height:unset;max-height:220px}.odc-login-cover-img{height:100%;min-height:180px;max-height:220px}.odc-login-container{min-height:unset;padding:24px 0}}@media (max-width: 500px){.odc-login-split{flex-direction:column}.odc-login-cover{display:none}.odc-login-container{min-height:100vh;padding:0}}.odc-calculator-container{margin:0 auto;max-width:1100px;padding:var(--spacing-2xl) 0}.odc-calculator-summary{display:flex;gap:var(--spacing-2xl);margin-bottom:var(--spacing-xl)}.odc-calculator-content{background-color:var(--surface-color);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.odc-calculator-header{margin-bottom:var(--spacing-xl)}.odc-calculator-header h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-color);margin-bottom:var(--spacing-sm)}.odc-calculator-header p{color:var(--text-muted);font-size:var(--font-size-base);margin:0}.odc-calculator-form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.odc-calculator-section{border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-xl);background-color:var(--surface-hover-color)}.odc-calculator-section h3{font-size:var(--font-size-lg);font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-md)}.odc-calculator-results{background-color:var(--primary-color-alpha);border:1px solid var(--primary-color);border-radius:var(--border-radius);padding:var(--spacing-xl);margin-top:var(--spacing-xl)}.odc-calculator-results h3{color:var(--primary-color);font-weight:600;margin-bottom:var(--spacing-md)}@media (max-width: 900px){.odc-calculator-container{padding:var(--spacing-md) 0}.odc-calculator-summary{flex-direction:column;gap:var(--spacing-md)}.odc-calculator-content,.odc-calculator-section{padding:var(--spacing-md)}}.odc-estimator-form-container,.odc-estimator-list-container{margin:0 auto;max-width:900px;padding:var(--spacing-2xl) 0}.odc-estimator-summary{margin-bottom:var(--spacing-xl)}.odc-override-active{background:var(--warning-color-alpha);border:1px solid var(--warning-color)}.odc-scope-select-toolbar{margin-bottom:var(--spacing-sm);display:flex;gap:var(--spacing-sm);align-items:center}.odc-scope-select-search{max-width:250px}.odc-scope-group{margin-bottom:var(--spacing-sm)}.odc-scope-group-header{font-weight:600;font-size:var(--font-size-base);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-sm);color:var(--text-color);text-transform:uppercase;letter-spacing:.025em}.odc-scope-select-item{margin-bottom:var(--spacing-sm);padding-left:var(--spacing-sm);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-base)}.odc-scope-select-item:hover{background-color:var(--surface-hover-color);border-radius:var(--border-radius)}.odc-scope-info,.odc-scope-desc{color:var(--text-muted);font-size:var(--font-size-xs)}.odc-scope-selected-count{font-size:var(--font-size-xs);color:var(--primary-color);font-weight:500}.odc-client-dropdown-list{position:absolute;z-index:10;background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius);width:100%;max-height:220px;overflow-y:auto;box-shadow:var(--shadow-md)}.odc-client-dropdown-item{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background-color var(--transition-base);color:var(--text-color)}.odc-client-dropdown-item:hover{background:var(--surface-hover-color)}@media (max-width: 900px){.odc-estimator-form-container,.odc-estimator-list-container{padding:var(--spacing-md) 0}}.odc-estimator-form-container{padding:2rem 0}.odc-estimator-form .odc-form-main-row{display:grid;grid-template-columns:2fr 1fr;gap:3rem}.odc-timeline-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;margin-top:1rem}.odc-timeline-info .odc-timeline-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.odc-timeline-info .odc-timeline-header svg{color:#3b82f6}.odc-timeline-info .odc-timeline-header .odc-timeline-title{font-weight:600;color:#1f2937}.odc-timeline-info .odc-timeline-details .odc-timeline-item{margin-bottom:.5rem;color:#374151;font-size:13px}.odc-timeline-info .odc-timeline-details .odc-timeline-item .odc-timeline-days{color:#3b82f6;font-weight:600;font-size:13px}.odc-feasibility-info{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;margin-top:1rem}.odc-feasibility-info .odc-feasibility-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.odc-feasibility-info .odc-feasibility-header svg{color:#6b7280}.odc-feasibility-info .odc-feasibility-header .odc-feasibility-title{font-weight:600;color:#1f2937}.odc-feasibility-info .odc-feasibility-details .odc-feasibility-item{margin-bottom:.5rem;color:#374151;font-size:13px}.odc-feasibility-info .odc-feasibility-message{margin-top:1rem;padding:.75rem;background:#f3f4f6;border-radius:6px;color:#6b7280;font-size:.875rem}.odc-feasibility-header.odc-feasibility-success{background:#e6f9ed;border-radius:6px;padding:.5rem 1rem;color:#16a34a;border-left:5px solid #22c55e}.odc-feasibility-header.odc-feasibility-warning{background:#fff7e6;border-radius:6px;padding:.5rem 1rem;color:#f59e42;border-left:5px solid #f59e42}.odc-feasibility-header.odc-feasibility-danger{background:#fef2f2;border-radius:6px;padding:.5rem 1rem;color:#ef4444;border-left:5px solid #ef4444}.odc-feasibility-header .odc-feasibility-title{font-weight:700;font-size:1rem;margin-left:.5rem}.odc-pending-review{background:#fef3c7;border:1px solid #fde68a;border-radius:8px;padding:1.5rem;margin-top:1rem;margin-bottom:1rem}.odc-pending-review .odc-pending-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.odc-pending-review .odc-pending-header svg{color:#f59e0b}.odc-pending-review .odc-pending-header .odc-pending-title{font-weight:600;color:#92400e}.odc-pending-review .odc-pending-list .odc-pending-item{padding:.75rem;background:#fff;border-radius:6px;border:1px solid #fde68a;display:flex;flex-direction:column}.odc-pending-review .odc-pending-list .odc-pending-item .odc-pending-name{font-weight:600;color:#92400e;display:block;margin-bottom:.25rem}.odc-pending-review .odc-pending-list .odc-pending-item .odc-pending-description{color:#6b7280;font-size:.875rem;margin-bottom:.5rem}.odc-pending-review .odc-pending-notice{padding:.75rem;background:#fef3c7;border-radius:6px;color:#92400e;font-size:.875rem;display:flex;align-items:flex-start;gap:.5rem}.odc-pending-review .odc-pending-notice svg{color:#f59e0b;margin-top:.125rem}@media (max-width: 1024px){.odc-estimator-form .odc-form-main-row{grid-template-columns:1fr;gap:2rem}}.odc-estimator-form-container{max-width:1200px;margin:0 auto;padding:var(--spacing-2xl);background:var(--surface-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.odc-form-header{text-align:center;margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid var(--border-color)}.odc-form-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-color);margin-bottom:var(--spacing-sm)}.odc-form-subtitle{font-size:var(--font-size-base);color:var(--text-muted);margin:0}.odc-form-section{margin-bottom:var(--spacing-2xl);padding:var(--spacing-xl);background:var(--surface-hover-color);border-radius:var(--border-radius);border:1px solid var(--border-color)}.odc-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.odc-section-title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-color);margin:0}.odc-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.odc-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--text-color);margin-bottom:var(--spacing-sm)}.odc-input,.odc-textarea,.odc-search-input,.odc-password-input{width:100%;padding:var(--spacing-md);border:1px solid var(--input-border);border-radius:var(--border-radius);font-size:var(--font-size-sm);transition:all var(--transition-base);background:var(--input-bg);color:var(--text-color)}.odc-input:focus,.odc-textarea:focus,.odc-search-input:focus,.odc-password-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha);background:var(--surface-color)}.odc-input::-moz-placeholder,.odc-textarea::-moz-placeholder,.odc-search-input::-moz-placeholder,.odc-password-input::-moz-placeholder{color:var(--text-muted)}.odc-input::placeholder,.odc-textarea::placeholder,.odc-search-input::placeholder,.odc-password-input::placeholder{color:var(--text-muted)}.odc-textarea{resize:vertical;min-height:80px}.odc-help-text{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:var(--spacing-xs)}.odc-client-search-wrapper{position:relative}.odc-client-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d1d5db;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a;z-index:10;max-height:200px;overflow-y:auto}.odc-client-option{padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid #f3f4f6;transition:background-color .2s ease}.odc-client-option:hover{background-color:#f9fafb}.odc-client-option:last-child{border-bottom:none}.odc-client-info{display:flex;flex-direction:column;gap:.25rem}.odc-client-name{font-weight:500;color:#111827}.odc-client-company{font-size:.75rem;color:#6b7280}.odc-client-email{font-size:.75rem;color:#6b7280;margin-top:.25rem}.odc-no-results{color:#6b7280;font-style:italic}.odc-selected-client{margin-top:1rem}.odc-client-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#dbeafe;border:1px solid #93c5fd;border-radius:6px;color:#1e40af}.odc-client-badge-name{font-weight:500}.odc-client-badge-company{color:#3b82f6}.odc-client-badge-remove{background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.odc-client-badge-remove:hover{background:#ef4444;color:#fff}.odc-link{display:inline-flex;align-items:center;gap:.5rem;color:#3b82f6;text-decoration:none;font-size:.875rem;margin-top:.5rem;transition:color .2s ease}.odc-link:hover{color:#1d4ed8;text-decoration:underline}.odc-scope-toolbar{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.odc-search-wrapper{position:relative;flex:1;min-width:200px}.odc-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#9ca3af}.odc-search-input{padding-left:2.5rem}.odc-scope-actions{display:flex;align-items:center;gap:.75rem}.odc-scope-count{font-size:.875rem;color:#6b7280;font-weight:500}.odc-scope-list{max-height:400px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:6px;background:#fff}.odc-scope-group{border-bottom:1px solid #f3f4f6}.odc-scope-group:last-child{border-bottom:none}.odc-scope-group-header{padding:1rem;background:#f9fafb;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.odc-scope-items{padding:.5rem}.odc-scope-item{display:flex;align-items:center;gap:1rem;padding:.5em;border-radius:6px;transition:all .2s ease;cursor:pointer;border:1px solid transparent}.odc-scope-item:hover{background:#f9fafb;border-color:#e5e7eb;transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.odc-scope-item:active{transform:translateY(0);box-shadow:0 1px 2px #0000001a}.odc-scope-checkbox{position:relative;display:inline-block;cursor:pointer;flex-shrink:0}.odc-scope-checkbox input{opacity:0;position:absolute;cursor:pointer}.odc-checkmark{width:18px;height:18px;border:2px solid #d1d5db;border-radius:4px;background:#fff;transition:all .2s ease;display:block}.odc-scope-checkbox input:checked+.odc-checkmark{background:#3b82f6;border-color:#3b82f6}.odc-scope-checkbox input:checked+.odc-checkmark:after{content:"";position:absolute;left:6px;top:2px;width:4px;height:8px;border:solid white;border-width:0 3px 3px 0;transform:rotate(45deg)}.odc-scope-content{flex:1}.odc-scope-name{font-weight:500;color:#111827;margin-bottom:.25rem}.odc-scope-description{font-size:.75rem;color:#6b7280}.odc-scope-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.odc-scope-price,.odc-scope-hours{font-weight:600;color:#059669}.odc-new-scope-form{background:#fff;padding:1.5rem;border-radius:6px;border:1px solid #e5e7eb;margin-bottom:1.5rem}.odc-form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.odc-pending-scopes{background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;padding:1.5rem}.odc-pending-title{font-size:1rem;font-weight:600;color:#92400e;margin-bottom:1rem}.odc-pending-list{margin-bottom:1rem}.odc-pending-item{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem;background:#fff;border-radius:6px;margin-bottom:.75rem;border:1px solid #fde68a}.odc-pending-content{flex:1}.odc-pending-name{font-weight:500;color:#111827;margin-bottom:.25rem}.odc-pending-description{font-size:.875rem;color:#6b7280;margin-bottom:.5rem}.odc-pending-meta{display:flex;gap:1rem;font-size:.75rem;color:#6b7280}.odc-pending-notice{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;color:#92400e;padding:1rem;background:#fef3c7;border-radius:6px}.odc-custom-items{display:flex;flex-direction:column;gap:1rem}.odc-custom-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff;border:1px solid #e5e7eb;border-radius:6px}.odc-custom-item-content{display:grid;grid-template-columns:2fr 1fr;gap:1rem;flex:1}.odc-empty-state{text-align:center;padding:2rem;color:#6b7280;font-style:italic}.odc-pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.odc-estimate-summary{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:6px;padding:1.5rem}.odc-summary-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #e0f2fe}.odc-summary-item:last-child{border-bottom:none}.odc-summary-label{color:#0c4a6e;font-size:.9rem}.odc-summary-value{font-weight:600;color:#0c4a6e;font-size:.8rem}.odc-summary-total{border-top:2px solid #0ea5e9;margin-top:.5rem;padding-top:1rem}.odc-summary-total .odc-summary-label{font-weight:700;font-size:1rem;color:#0c4a6e}.odc-summary-total .odc-summary-value{font-weight:700;font-size:1.1rem;color:#0c4a6e}.odc-timeline-list{display:flex;flex-direction:column;gap:.5rem}.odc-timeline-item{display:flex;justify-content:space-between;align-items:center;padding:.3rem 1rem;background:#fff;border-radius:6px}.odc-scope-timeline-list{display:flex;flex-direction:column;gap:.5rem}.odc-scope-timeline-list .odc-scope-timeline-item{display:flex;border:1px solid #e5e7eb;flex-direction:column}.odc-scope-timeline-list .odc-scope-timeline-item .item{display:flex;justify-content:space-between;align-items:center;padding:.3rem 1rem;background:#fff;border-radius:6px}.odc-scope-timeline-list .odc-scope-timeline-item .odc-timeline-notes{padding:.3rem 1rem;font-size:12px}.odc-timeline-name{font-weight:500;font-size:12px;color:#111827}.odc-timeline-hours{font-weight:600;font-size:12px;color:#059669}.odc-flexible-pricing{display:flex;flex-direction:column;gap:1.5rem}.odc-pricing-override{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:1.5rem}.odc-override-header{margin-bottom:1rem}.odc-override-title{font-size:1rem;font-weight:600;color:#111827;margin:0}.odc-override-content{display:grid;grid-template-columns:1fr 2fr;gap:1.5rem}.odc-override-active{border-color:#3b82f6;background:#eff6ff}.odc-toggle-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:500;color:#374151}.odc-toggle{position:relative;width:44px;height:24px;background:#d1d5db;border-radius:12px;border:none;cursor:pointer;transition:background-color .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none}.odc-toggle:checked{background:#3b82f6}.odc-toggle:checked+.odc-toggle-slider{transform:translate(20px)}.odc-toggle-slider{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s ease}.odc-discount-type-selector{display:flex;gap:.5rem;margin-bottom:1rem}.odc-type-option{flex:1;display:flex;align-items:center;gap:.75rem;padding:1rem;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;background:#fff;position:relative;overflow:hidden}.odc-type-option:hover{border-color:#3b82f6;background:#f8fafc;transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.odc-type-option.active{border-color:#3b82f6;background:linear-gradient(135deg,#eff6ff,#dbeafe);box-shadow:0 4px 6px -1px #3b82f633}.odc-type-option.active:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.odc-type-option.active .odc-type-icon{background:#3b82f6;color:#fff}.odc-type-option.active .odc-type-label{color:#1e40af;font-weight:600}.odc-type-option.active .odc-type-unit{background:#3b82f6;color:#fff}.odc-type-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:#f3f4f6;color:#6b7280;transition:all .2s ease}.odc-type-content{display:flex;flex-direction:column;gap:.25rem}.odc-type-label{font-size:.875rem;font-weight:500;color:#374151;transition:color .2s ease}.odc-type-unit{display:inline-block;padding:.25rem .5rem;background:#f3f4f6;color:#6b7280;border-radius:4px;font-size:.75rem;font-weight:600;text-align:center;min-width:24px;transition:all .2s ease}.odc-action-buttons{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.odc-alert,.alert{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-radius:6px;margin-top:1.5rem;font-weight:500}.odc-alert-success,.alert-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.odc-alert-info{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.odc-error{color:#dc2626;font-size:.75rem;margin-top:.25rem;display:block}@media (max-width: 768px){.odc-estimator-form-container,.odc-form-section{padding:1rem}.odc-form-grid{grid-template-columns:1fr}.odc-scope-toolbar{flex-direction:column;align-items:stretch}.odc-override-content{grid-template-columns:1fr}.odc-action-buttons{flex-direction:column}.odc-custom-item-content{grid-template-columns:1fr}}.odc-addon-list{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.odc-addon-card{display:flex;flex-direction:column;border:1px solid #ececec;border-radius:8px;padding:1rem;background:#fff;cursor:pointer;transition:box-shadow .2s,border-color .2s;box-shadow:0 1px 2px #00000005;font-size:.97em}.odc-addon-card:hover{box-shadow:0 2px 8px #0000000f;border-color:#d1d5db}.odc-addon-name{font-weight:600;font-size:.75em}.odc-addon-title{color:#6b7280;font-size:.75em}.odc-addon-cost{margin-left:auto;font-weight:500;color:#2563eb;font-size:.75em}.odc-addon-description{margin-top:.5rem;color:#888;font-size:.7em;line-height:1.4}.odc-summary-addon-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.5rem;font-size:.95em}.odc-summary-addon-list li{background:#f3f4f6;border-radius:6px;padding:.4em .8em;font-size:.95em;display:flex;align-items:center;gap:.5em}.odc-project-search-wrapper{position:relative;width:100%}.odc-project-search-input{width:100%;font-size:1em}.odc-project-dropdown{position:absolute;z-index:20;background:#fff;border:1px solid #e5e7eb;border-radius:8px;width:100%;max-height:220px;overflow-y:auto;box-shadow:0 4px 16px #00000012;margin-top:.25rem}.odc-project-option{padding:.75em 1em;cursor:pointer;transition:background .15s;display:flex;align-items:center;gap:.5em;font-size:.97em}.odc-project-option:hover{background:#f3f4f6}.odc-project-name{font-weight:500}.odc-project-client{color:#6b7280;font-size:.95em}.odc-selected-project{margin-top:.5rem}.odc-project-badge{display:inline-flex;align-items:center;background:var(--primary-color);border-radius:6px;padding:.4em .8em;font-size:.97em;font-weight:500;gap:.5em}.odc-project-badge .odc-project-badge-name{color:var(--text-white)}.odc-project-badge .odc-project-badge-remove{background:none;border:none;margin-left:.5em;cursor:pointer;color:#b91c1c;padding:0;display:flex;align-items:center}.odc-project-badge .odc-project-badge-remove svg{stroke:var(--text-white);width:1em;height:1em}.odc-project-dropdown.odc-no-results{color:#888;padding:.75em 1em;font-size:.97em}.odc-estimate-status-bar{margin-bottom:1.5rem;display:flex;align-items:center;flex-wrap:wrap;gap:1rem;justify-content:space-between}.odc-estimate-status-bar .odc-estimate-action{display:flex;flex-wrap:wrap;gap:10px}.odc-badge-status{padding:.4em 1em;border-radius:1em;font-weight:600;font-size:.95em}.odc-badge-status.approved{background:#22c55e;color:#fff}.odc-badge-status.draft{background:#fde68a;color:#b45309}.odc-badge-status.rejected{background:#ef4444;color:#fff}.odc-badge-status.pending{background:#3b82f6;color:#fff}.odc-badge-status.default{background:#e5e7eb;color:#374151}.odc-approve-btn{margin-left:.5rem}.odc-approve-icon{vertical-align:middle;margin-right:.3em}.odc-client-search-input[readonly]{background:#f8f9fa;cursor:not-allowed}.odc-addon-card-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.odc-addon-card-main{display:flex;align-items:center;gap:.75rem;flex:1}.odc-addon-card-info{display:flex;flex-direction:column;gap:.15rem}.odc-addon-card-row .odc-checkbox{margin-top:2px}.odc-addon-card-row .odc-addon-name{font-weight:600;font-size:1em;color:#222}.odc-addon-card-row .odc-addon-title{color:#6b7280;font-size:.97em;margin-top:.1em}.odc-addon-card-row .odc-addon-cost{font-weight:600;color:#2563eb;font-size:1em;margin-left:1.5em;white-space:nowrap}.odc-section.mb-1-5{margin-bottom:1.5rem}.odc-modal-preview{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001f;padding:0}.odc-modal-preview-header{border-bottom:1px solid #e5e7eb;padding:1.25rem 2rem 1rem;background:#f8fafc}.odc-modal-preview-body{padding:2rem;max-height:70vh;overflow-y:auto}.odc-modal-preview-section{margin-bottom:2rem}.odc-modal-preview-section-header{display:flex;align-items:center;gap:.75rem;font-size:1.08em;font-weight:600;color:#2563eb;margin-bottom:.7em}.odc-modal-preview-timeline-grid{display:flex;flex-wrap:wrap;gap:2.5em;font-size:1em;color:#374151}.odc-modal-preview-feasibility-msg{background:#f3f4f6;border-radius:6px;padding:1em;color:#1e293b;font-size:1em}.odc-modal-preview-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5em}.odc-modal-preview-scope-name{font-weight:500;color:#0c4a6e}.odc-modal-preview-scope-hours{color:#059669;font-size:.97em}.odc-modal-preview-addon-title{font-weight:500;color:#1e293b}.odc-modal-preview-addon-cost{color:#2563eb;font-size:.97em}.odc-modal-preview-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7em 2em;font-size:1.08em;margin-top:.5em}.odc-modal-preview-summary-total{grid-column:1/-1;background:#f0f9ff;border-radius:6px;padding:.7em 1em;font-size:1.15em;font-weight:700;color:#0c4a6e;margin-top:.5em;display:flex;justify-content:space-between}@media (max-width: 600px){.odc-modal-preview-body{padding:1rem}.odc-modal-preview-header{padding:1rem 1rem .75rem}.odc-modal-preview-summary-grid{grid-template-columns:1fr}}.odc-change-log-list{max-height:500px;overflow-y:auto}.odc-change-log-item{border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-bottom:12px;background:#fff;transition:all .2s ease}.odc-change-log-item:hover{box-shadow:0 2px 8px #0000001a;border-color:#cbd5e0}.odc-change-log-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:8px}.odc-change-log-icon{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:#f7fafc;display:flex;align-items:center;justify-content:center;border:2px solid #e2e8f0}.odc-change-log-info{flex:1;min-width:0}.odc-change-log-title{font-weight:600;font-size:14px;color:#2d3748;margin-bottom:4px}.odc-change-log-meta{display:flex;align-items:center;gap:16px;font-size:12px;color:#718096}.odc-change-log-user,.odc-change-log-time{display:flex;align-items:center}.odc-change-log-description{font-size:13px;color:#4a5568;margin-bottom:8px;line-height:1.4}.odc-change-log-details{background:#f7fafc;border-radius:6px;padding:12px;border-left:3px solid #3182ce}.odc-change-log-detail-item{display:flex;align-items:center;font-size:12px;color:#4a5568;margin-bottom:4px;line-height:1.3}.odc-change-log-detail-item:last-child{margin-bottom:0}.odc-empty-state{text-align:center;padding:40px 20px}@media (max-width: 768px){.odc-modal{margin:10px;max-width:calc(100vw - 20px)!important}.odc-form-grid-3{grid-template-columns:1fr!important}.odc-change-log-meta,.odc-change-log-header{flex-direction:column;align-items:flex-start;gap:8px}.odc-change-log-icon{align-self:flex-start}}.odc-list-search-filters-section{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-2xl);box-shadow:var(--shadow-sm)}.odc-list-search-filters-header{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.odc-list-search-wrapper{position:relative;flex:1;min-width:350px}.odc-list-search-icon{position:absolute;left:var(--spacing-lg);top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--text-muted);z-index:1}.odc-list-search-input{width:100%;padding:1rem 3rem;border:2px solid var(--border-color);border-radius:var(--border-radius-lg);font-size:var(--font-size-base);font-weight:500;transition:all var(--transition-base);background:var(--surface-color);line-height:1.5}.odc-list-search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px var(--primary-color-alpha);background:var(--surface-color)}.odc-list-search-input::-moz-placeholder{color:var(--text-muted);font-weight:400}.odc-list-search-input::placeholder{color:var(--text-muted);font-weight:400}.odc-list-filters-toggle{display:flex;align-items:center;gap:var(--spacing-md);padding:2rem 3rem;border:2px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-color);color:var(--text-color);font-weight:600;font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-base);line-height:1.4}.odc-list-filters-toggle:hover{background:var(--surface-hover-color);border-color:var(--primary-color);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.odc-list-filters-toggle.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:var(--shadow-md)}.odc-list-filters-icon{width:18px;height:18px}.odc-list-filters-panel{border-top:2px solid var(--border-color);padding-top:var(--spacing-xl);margin-top:var(--spacing-lg)}.odc-list-filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.odc-list-filter-group{display:flex;flex-direction:column;gap:var(--spacing-md)}.odc-list-filter-label{font-size:var(--font-size-sm);font-weight:700;color:var(--text-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-xs)}.odc-list-filter-select,.odc-list-filter-input{padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--border-color);border-radius:var(--border-radius-lg);font-size:var(--font-size-base);font-weight:500;background:var(--surface-color);color:var(--text-color);transition:all var(--transition-base);line-height:1.5}.odc-list-filter-select:focus,.odc-list-filter-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px var(--primary-color-alpha)}.odc-list-filters-actions{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-lg);border-top:2px solid var(--border-color)}.odc-list-filters-summary{font-size:var(--font-size-sm);color:var(--text-muted);font-weight:500}.odc-list-clear-filters-btn{padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--border-color);border-radius:var(--border-radius-lg);background:var(--surface-color);color:var(--text-color);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-base);line-height:1.4}.odc-list-clear-filters-btn:hover{background:var(--danger-color-alpha);border-color:var(--danger-color);color:var(--danger-color);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.odc-list-results-summary{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-xl);background:var(--info-color-alpha);border:2px solid var(--info-color);border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-xl);color:var(--info-color);font-size:var(--font-size-base);font-weight:600;line-height:1.5}.odc-list-results-icon{width:24px;height:24px;flex-shrink:0}.odc-list-estimates-grid{display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.odc-list-estimate-card{background:var(--surface-color);border:1px solid var(--border-color);padding:var(--spacing-md);transition:all var(--transition-base);box-shadow:var(--shadow-sm);line-height:1.4}.odc-list-estimate-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--primary-color)}.odc-list-estimate-card.status-approved{border-top:6px solid var(--success-color)}.odc-list-estimate-card.status-draft{border-top:6px solid var(--warning-color)}.odc-list-estimate-card.status-pending{border-left:6px solid var(--info-color)}.odc-list-estimate-card.status-rejected{border-left:6px solid var(--danger-color)}.odc-list-estimate-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md);gap:var(--spacing-sm)}.odc-list-estimate-info{flex:1;min-width:0}.odc-list-estimate-title-section{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs);flex-wrap:wrap}.odc-list-estimate-title{font-size:var(--font-size-base);font-weight:800;color:var(--text-color);margin:0;line-height:1.3;letter-spacing:-.025em}.odc-list-estimate-code{font-size:var(--font-size-xs);color:var(--text-muted);background:var(--surface-hover-color);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-weight:600;letter-spacing:.5px}.odc-list-estimate-meta{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;margin-top:var(--spacing-xs)}.odc-list-client-info{display:flex;align-items:center;gap:var(--spacing-sm)}.odc-list-client-avatar{width:28px;height:28px;background:linear-gradient(135deg,var(--primary-color),var(--primary-color-alpha));color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--font-size-xs);flex-shrink:0;box-shadow:var(--shadow-sm)}.odc-list-client-details{display:flex;flex-direction:column;gap:1px}.odc-list-client-name{font-weight:700;color:var(--text-color);font-size:var(--font-size-sm);line-height:1.3}.odc-list-client-company{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:500;line-height:1.2}.odc-list-estimate-status{font-size:var(--font-size-xs);font-weight:800;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);text-transform:uppercase;letter-spacing:1px;line-height:1.2}.odc-list-estimate-actions{display:flex;gap:var(--spacing-xs);flex-shrink:0}.odc-list-estimate-description{color:var(--text-muted);font-size:var(--font-size-sm);line-height:1.4;margin-bottom:var(--spacing-md);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:400}.odc-list-estimate-details{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.odc-list-estimate-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.odc-list-stat-item{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm);background:var(--surface-hover-color);border-radius:var(--border-radius);text-align:center;border:1px solid var(--border-color);transition:all var(--transition-base)}.odc-list-stat-item:hover{background:var(--surface-color);border-color:var(--primary-color);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.odc-list-stat-value{font-size:var(--font-size-base);font-weight:800;color:var(--primary-color);margin-bottom:var(--spacing-xs);line-height:1.2}.odc-list-stat-label{font-size:.5rem;color:var(--text-muted);font-weight:700;text-transform:uppercase;letter-spacing:1px;line-height:1.2}.odc-list-estimate-timeline{display:flex;flex-direction:column;gap:var(--spacing-xs)}.odc-list-timeline-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background:var(--surface-hover-color);border-radius:var(--border-radius);font-size:var(--font-size-xs);border:1px solid var(--border-color);transition:all var(--transition-base)}.odc-list-timeline-item:hover{background:var(--surface-color);border-color:var(--primary-color)}.odc-list-timeline-label{color:var(--text-muted);font-weight:600;line-height:1.3}.odc-list-timeline-value{color:var(--text-color);font-weight:700;line-height:1.3}.odc-list-financial-summary{background:linear-gradient(135deg,var(--surface-hover-color),var(--surface-color));border:2px solid var(--border-color);border-radius:var(--border-radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.odc-list-financial-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.odc-list-financial-label{font-size:var(--font-size-sm);color:var(--text-muted);font-weight:600;line-height:1.3}.odc-list-financial-amount{font-size:var(--font-size-base);font-weight:800;color:var(--success-color);line-height:1.2}.odc-list-budget-info{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;padding-top:var(--spacing-sm);border-top:1px solid var(--border-color)}.odc-list-budget-label{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:600;line-height:1.3}.odc-list-budget-amount{font-size:var(--font-size-sm);font-weight:700;color:var(--text-color);line-height:1.3}.odc-list-budget-status{font-size:var(--font-size-xs);font-weight:800;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);text-transform:uppercase;letter-spacing:1px;line-height:1.2}.odc-list-approval-info{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:linear-gradient(135deg,var(--success-color-alpha),var(--success-color-light));border:2px solid var(--success-color);border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-md)}.odc-list-approval-label{font-size:var(--font-size-sm);color:var(--success-color);font-weight:700;line-height:1.3}.odc-list-user-info{display:flex;align-items:center;gap:var(--spacing-sm)}.odc-list-user-avatar{width:20px;height:20px;background:var(--success-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--font-size-xs);box-shadow:var(--shadow-sm)}.odc-list-user-details{display:flex;flex-direction:column;gap:1px}.odc-list-user-name{font-size:var(--font-size-sm);font-weight:700;color:var(--success-color);line-height:1.3}.odc-list-user-role{font-size:var(--font-size-xs);color:var(--text-muted);font-weight:500;line-height:1.2}.odc-list-recent-activity{display:flex;align-items:center;gap:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color);font-size:var(--font-size-xs);color:var(--text-muted);line-height:1.3}.odc-list-activity-label{font-weight:600}.odc-list-activity-time{color:var(--text-color);font-weight:500}.odc-empty-state{text-align:center;padding:var(--spacing-4xl);color:var(--text-muted);line-height:1.6}.odc-pagination-wrapper{margin-top:var(--spacing-2xl);display:flex;justify-content:center}@media (max-width: 768px){.odc-list-search-filters-header{flex-direction:column;align-items:stretch}.odc-list-search-wrapper{min-width:auto}.odc-list-filters-grid,.odc-list-estimates-grid{grid-template-columns:1fr}.odc-list-estimate-header{flex-direction:column;align-items:stretch;gap:var(--spacing-lg)}.odc-list-estimate-actions{justify-content:flex-start}.odc-list-estimate-details{grid-template-columns:1fr;gap:var(--spacing-lg)}.odc-list-estimate-stats{grid-template-columns:repeat(2,1fr)}.odc-list-estimate-meta,.odc-list-budget-info,.odc-list-approval-info{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}}@media (max-width: 480px){.odc-list-estimate-stats{grid-template-columns:1fr}.odc-list-estimate-actions{flex-direction:column;width:100%}.odc-list-estimate-actions .odc-btn,.odc-list-estimate-actions .odc-btn-primary,.odc-list-estimate-actions .odc-btn-secondary,.odc-list-estimate-actions .odc-btn-success,.odc-list-estimate-actions .odc-btn-danger,.odc-list-estimate-actions .odc-btn-warning,.odc-list-estimate-actions .odc-btn-info{width:100%;justify-content:center}.odc-list-estimate-title{font-size:var(--font-size-lg)}.odc-list-estimate-card{padding:var(--spacing-lg)}}.odc-scopes-container{max-width:1200px;margin:0 auto;padding:var(--spacing-2xl)}.odc-scopes-header{margin-bottom:var(--spacing-xl)}.odc-scopes-header h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-color);margin-bottom:var(--spacing-sm)}.odc-scopes-header p{color:var(--text-muted);font-size:var(--font-size-base);margin:0}.odc-scopes-content{background-color:var(--surface-color);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.odc-scopes-filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.odc-scope-item{border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-md);background-color:var(--surface-color);transition:all var(--transition-base)}.odc-scope-item:hover{box-shadow:var(--shadow-md);border-color:var(--primary-color)}.odc-scope-item h3{font-size:var(--font-size-lg);font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-sm)}.odc-scope-item p{color:var(--text-muted);font-size:var(--font-size-sm);margin-bottom:var(--spacing-md)}.odc-scope-form-container{max-width:1000px;margin:0 auto;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.odc-scope-form .odc-form-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid #e5e7eb}.odc-scope-form .odc-form-title{font-size:2rem;font-weight:700;color:#111827;margin-bottom:.5rem}.odc-scope-form .odc-form-subtitle{font-size:1rem;color:#6b7280;margin:0}.odc-scope-roles-section{margin-top:24px}@media (max-width: 700px){.odc-scope-form-container{padding:16px 4px}}.odc-scope-list-container{margin:0 auto;max-width:1100px;padding:32px 0}@media (max-width: 900px){.odc-scope-list-container{padding:8px 0}}.odc-module-guidance{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:6px;padding:1rem;margin-top:1rem}.odc-guidance-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.odc-guidance-title{font-weight:600;color:#0c4a6e;font-size:.875rem}.odc-guidance-text{font-size:.875rem;color:#0c4a6e;margin:0;line-height:1.5}.odc-role-assignments{display:flex;flex-direction:column;gap:1rem}.odc-role-item{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:6px;transition:all .2s ease}.odc-role-item:hover{border-color:#3b82f6;box-shadow:0 2px 4px #0000000d}.odc-role-content{display:grid;grid-template-columns:2fr 1fr 2fr;gap:1rem;flex:1}@media (max-width: 768px){.odc-scope-form-container{padding:1rem}.odc-role-content{grid-template-columns:1fr}.odc-role-item{flex-direction:column}}.odc-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.odc-badge-feature{background:#dbeafe;color:#1e40af}.odc-badge-full_module{background:#fef3c7;color:#92400e}.odc-badge-enhancement{background:#d1fae5;color:#065f46}.odc-disabled-field{padding:.75rem 1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280}.odc-disabled-text{font-size:.875rem;font-weight:500;display:block;margin-bottom:.25rem}.project-list-container{padding:2rem 0}.project-list-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;padding:2rem}.project-list-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.project-list-title{font-size:2rem;font-weight:700;color:#222}.project-list-create-btn{background:#2563eb;color:#fff;border:none;border-radius:6px;padding:.5rem 1.25rem;font-weight:600;transition:background .2s;text-decoration:none}.project-list-create-btn:hover{background:#1d4ed8;color:#fff}.project-list-filters-row{display:flex;gap:1rem;margin-bottom:1.5rem}.project-list-filter{flex:1;display:flex;flex-direction:column}.project-list-input{border:1px solid #e5e7eb;border-radius:6px;padding:.5rem .75rem;font-size:1rem;margin-top:.25rem}.project-list-table-wrapper{overflow-x:auto}.project-list-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff}.project-list-table th,.project-list-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #f1f1f1}.project-list-table th{background:#f9fafb;font-weight:600;color:#444}.project-list-description{color:#6b7280}.project-list-badge-info{background:#e0f2fe;color:#0369a1;border-radius:4px;padding:.25em .75em;font-size:.95em;font-weight:500}.project-list-badge-status,.project-list-badge-priority{border-radius:4px;padding:.25em .75em;font-size:.95em;font-weight:500;background:#f3f4f6;color:#374151}.project-list-actual-cost{color:#64748b}.project-list-text-muted{color:#a1a1aa}.project-list-progress-bar-wrapper{background:#f3f4f6;border-radius:6px;height:22px;width:100%;overflow:hidden}.project-list-progress-bar{background:#22c55e;color:#fff;height:100%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.95em;border-radius:6px 0 0 6px;transition:width .3s}.project-list-actions{display:flex;gap:.5rem}.project-list-action-edit,.project-list-action-view,.project-list-action-delete{background:none;border:none;color:#64748b;font-size:1.1em;padding:.3em .6em;border-radius:4px;transition:background .15s,color .15s;cursor:pointer;text-decoration:none}.project-list-action-edit:hover{background:#e0e7ff;color:#3730a3}.project-list-action-view:hover{background:#dbeafe;color:#0369a1}.project-list-action-delete:hover{background:#fee2e2;color:#b91c1c}.project-list-empty{text-align:center;padding:2rem 0}.project-list-empty-content{color:#a1a1aa}.project-list-empty-icon{font-size:2.5rem;margin-bottom:.5rem;color:#e5e7eb}.project-list-pagination{display:flex;justify-content:center;margin-top:2rem}.project-form-container{padding:2rem 0}.project-form-header-section{text-align:center;margin-bottom:2rem;padding:2rem 0;background:#f8fafc;color:#374151;border-radius:12px;border:1px solid #e2e8f0}.project-form-header-section .project-form-header-icon{font-size:2.5rem;margin-bottom:1rem;color:#6b7280}.project-form-header-section .project-form-header-title{font-size:1.75rem;font-weight:700;margin-bottom:.5rem;color:#1f2937}.project-form-header-section .project-form-header-subtitle{font-size:1rem;color:#6b7280;margin:0}.project-form-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:2.5rem;transition:all .3s ease}.project-form-card:hover{box-shadow:0 4px 16px #00000014}.project-form-main-row{display:grid;grid-template-columns:2fr 1fr;gap:3rem}.project-form-section{margin-bottom:2rem}.project-form-section .project-form-section-title{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.project-form-section .project-form-section-title .project-form-section-icon{color:#6b7280}.project-form-timeline-section{background:#f9fafb;padding:1.5rem;border-radius:8px;border:1px solid #e5e7eb}.project-form-timeline-section .project-form-section-title .project-form-section-icon{color:#6b7280}.project-form-budget-section{background:#f9fafb;padding:1.5rem;border-radius:8px;border:1px solid #e5e7eb}.project-form-budget-section .project-form-section-title{color:#1f2937}.project-form-budget-section .project-form-section-title .project-form-section-icon{color:#6b7280}.project-form-settings-section{background:#f9fafb;padding:1.5rem;border-radius:8px;border:1px solid #e5e7eb}.project-form-settings-section .project-form-section-title{color:#1f2937}.project-form-settings-section .project-form-section-title .project-form-section-icon{color:#6b7280}.project-form-group{margin-bottom:1.5rem;display:flex;flex-direction:column}.project-form-label{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#374151;margin-bottom:.5rem}.project-form-label .project-form-label-icon{color:#6b7280}.project-form-input{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;transition:all .2s;width:100%}.project-form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.project-form-input:hover{border-color:#9ca3af}.project-form-input.project-form-textarea{resize:vertical}.project-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.project-form-back-btn{background:#f3f4f6;color:#374151;border:none;border-radius:6px;padding:.75rem 1.5rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex;align-items:center;gap:.5rem}.project-form-back-btn:hover{background:#e5e7eb;transform:translateY(-1px)}.project-form-save-btn{background:#3b82f6;color:#fff;border:none;border-radius:6px;padding:.75rem 2rem;font-weight:600;transition:all .2s;display:flex;align-items:center;gap:.5rem;font-size:1rem}.project-form-save-btn:hover{background:#2563eb;transform:translateY(-1px)}.project-form-footer-row{margin-top:3rem;padding-top:2rem;border-top:1px solid #e5e7eb}.project-form-footer-actions{display:flex;justify-content:space-between;align-items:center}.project-form-estimate-alert{background:#eff6ff;color:#1e40af;border-radius:6px;padding:1rem;border:1px solid #bfdbfe;margin-top:1rem}.project-form-estimate-alert .project-form-alert-header{display:flex;align-items:center;gap:.5rem;font-weight:600;margin-bottom:.5rem}.project-form-estimate-alert .project-form-alert-text{margin:0;font-size:.95rem}.project-form-no-estimates{color:#6b7280;font-size:.875rem;margin-top:.25rem;display:block}.project-form-error{color:#dc2626;font-size:.875rem;margin-top:.25rem}@media (max-width: 768px){.project-form-main-row{grid-template-columns:1fr;gap:2rem}.project-form-row{grid-template-columns:1fr}.project-form-footer-actions{flex-direction:column;gap:1rem}.project-form-card{padding:1.5rem}}.project-detail-container{padding:2rem 0}.project-detail-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;padding:2rem;margin-bottom:2rem}.project-detail-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.project-detail-title{font-size:2rem;font-weight:700;color:#222}.project-detail-description{color:#6b7280;margin-bottom:0}.project-detail-header-actions{display:flex;gap:1rem}.project-detail-edit-btn,.project-detail-back-btn{background:#f3f4f6;color:#222;border:none;border-radius:6px;padding:.5rem 1.25rem;font-weight:600;text-decoration:none;transition:background .2s}.project-detail-edit-btn:hover{background:#e0e7ff;color:#3730a3}.project-detail-back-btn:hover{background:#e5e7eb}.project-detail-header-body{margin-bottom:1.5rem}.project-detail-header-info-row{display:flex;gap:2rem}.project-detail-header-info-col{flex:1}.project-detail-header-info-group{margin-bottom:.75rem}.project-detail-label{font-weight:600;color:#374151;margin-right:.5em}.project-detail-badge-info{background:#e0f2fe;color:#0369a1;border-radius:4px;padding:.25em .75em;font-size:.95em;font-weight:500}.project-detail-badge-status,.project-detail-badge-priority{border-radius:4px;padding:.25em .75em;font-size:.95em;font-weight:500;background:#f3f4f6;color:#374151}.project-detail-progress-bar-wrapper{background:#f3f4f6;border-radius:6px;height:22px;width:100%;overflow:hidden;margin-top:.25em}.project-detail-progress-bar{background:#22c55e;color:#fff;height:100%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.95em;border-radius:6px 0 0 6px;transition:width .3s}.project-detail-notes{margin-top:1.5rem;color:#374151;font-size:1.05em}.project-detail-table-wrapper{overflow-x:auto}.project-detail-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff}.project-detail-table th,.project-detail-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #f1f1f1}.project-detail-table th{background:#f9fafb;font-weight:600;color:#444}.project-detail-scope-notes{color:#6b7280}.project-detail-scope-status-select{border:1px solid #e5e7eb;border-radius:6px;padding:.25em .75em;font-size:1em}.project-detail-scope-view-btn{background:#f3f4f6;color:#0369a1;border:none;border-radius:6px;padding:.3em .8em;font-size:1em;transition:background .2s,color .2s;cursor:pointer}.project-detail-scope-view-btn:hover{background:#dbeafe;color:#1e40af}.project-detail-empty{text-align:center;padding:2rem 0}.project-detail-empty-content{color:#a1a1aa}.project-detail-empty-icon{font-size:2.5rem;margin-bottom:.5rem;color:#e5e7eb}.project-detail-estimate-header{margin-bottom:1rem}.project-detail-badge-estimate-status{border-radius:4px;padding:.25em .75em;font-size:.95em;font-weight:500;background:#f3f4f6;color:#374151}.project-detail-badge-warning{background:#fef9c3;color:#b45309}.project-detail-badge-success{background:#dcfce7;color:#166534}.project-detail-estimate-edit-btn{background:#f3f4f6;color:#0369a1;border:none;border-radius:6px;padding:.5rem 1.25rem;font-weight:600;text-decoration:none;transition:background .2s,color .2s}.project-detail-estimate-edit-btn:hover{background:#dbeafe;color:#1e40af}.odc-client-search-group{position:relative}.odc-client-search-input{border:1px solid #e5e7eb;border-radius:6px;padding:.5rem .75rem;font-size:1rem;margin-top:.25rem;width:100%}.odc-client-dropdown-list{position:absolute;z-index:10;background:#fff;border:1px solid #e5e7eb;border-radius:6px;width:100%;max-height:220px;overflow-y:auto;box-shadow:0 2px 8px #00000014;top:100%;left:0}.odc-client-dropdown-item{padding:8px 12px;cursor:pointer;transition:background .15s;font-size:1em}.odc-client-dropdown-item:hover{background:#f3f4f6}.odc-client-selected{display:flex;align-items:center;gap:.5em;margin-top:.5em;background:#f3f4f6;border-radius:6px;padding:.4em .8em}.odc-client-selected-name{font-weight:600;color:#222}.odc-client-clear-btn{background:none;border:none;color:#b91c1c;font-size:1.2em;cursor:pointer;padding:0 .3em;border-radius:4px;transition:background .15s}.odc-client-clear-btn:hover{background:#fee2e2}.project-detail-scope-card{background:#fff;border-radius:14px;box-shadow:0 2px 8px #2563eb12;padding:1.5em;display:flex;flex-direction:column;gap:.7em;transition:box-shadow .2s;min-width:0;position:relative}.project-detail-scope-card:hover{box-shadow:0 4px 16px #2563eb21}.project-detail-scope-card .scope-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1em;flex-direction:column}.project-detail-scope-card .scope-card-header .scope-card-title{font-weight:700;font-size:1.15em;word-break:break-word;flex:1;min-width:0}.project-detail-scope-card .scope-card-header .scope-card-status-group{display:flex;align-items:center;gap:.5em}.project-detail-scope-card .scope-card-header .scope-card-status-group .project-detail-badge-status{font-size:.98em}.project-detail-scope-card .scope-card-header .scope-card-status-group .project-detail-scope-status-select{margin-left:.2em}.project-detail-scope-card .scope-card-description{color:#6b7280;font-size:.97em;margin-top:.2em}.project-detail-scope-card .scope-card-details-row{display:flex;flex-wrap:wrap;gap:1.2em;margin-top:.5em;font-size:.98em;align-items:center}.project-detail-scope-card .scope-card-details-row .scope-card-detail-muted{color:#64748b}.project-detail-scope-card .scope-card-details-row i{margin-right:.3em}.project-detail-scope-card .scope-card-actions{margin-top:auto;text-align:right}.project-detail-header-progress{margin-top:2.5em;display:flex;flex-direction:column;gap:.5em}.project-detail-progress-label{font-weight:600;font-size:1.1em;margin-bottom:.3em}.project-detail-progress-bar-wrapper{height:32px}.project-detail-progress-bar{font-size:1.15em;font-weight:700;display:flex;align-items:center;justify-content:center;background:#22c55e;color:#fff;border-radius:6px;transition:width .3s}.scope-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1em}.scope-card-header .scope-card-title{font-weight:700;font-size:1.15em;word-break:break-word;flex:1;min-width:0;text-align:left}.scope-card-header .scope-card-status-group{display:flex;align-items:center;gap:.5em;margin-bottom:.2em}@media (max-width: 600px){.project-detail-scope-card{padding:1em .7em}.project-detail-scope-card .scope-card-header{flex-direction:column;align-items:flex-start;gap:.5em}.project-detail-scope-card .scope-card-header .scope-card-status-group{order:-1;margin-bottom:.5em}.project-detail-scope-card .scope-card-header .scope-card-title{text-align:left}.project-detail-scope-card .scope-card-details-row{gap:.7em;font-size:.95em}}.odc-roles-container{max-width:1200px;margin:0 auto;padding:var(--spacing-2xl)}.odc-roles-header{margin-bottom:var(--spacing-xl)}.odc-roles-header h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-color);margin-bottom:var(--spacing-sm)}.odc-roles-header p{color:var(--text-muted);font-size:var(--font-size-base);margin:0}.odc-roles-content{background-color:var(--surface-color);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.odc-role-item{border:1px solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);background-color:var(--surface-color);transition:all var(--transition-base);display:flex;align-items:center}.odc-role-item:hover{box-shadow:var(--shadow-md);border-color:var(--primary-color)}.odc-role-item h3{font-size:var(--font-size-lg);font-weight:600;color:var(--text-color);margin-bottom:var(--spacing-sm)}.odc-role-item p{color:var(--text-muted);font-size:var(--font-size-sm);margin-bottom:var(--spacing-md)}.odc-roles-list-container{margin:0 auto;max-width:900px;padding:32px 0}.odc-roles-form-container{background:#fff;padding:24px 32px;border-radius:8px;box-shadow:0 2px 8px #0000000a;max-width:400px;margin:0 auto}@media (max-width: 600px){.odc-roles-list-container{padding:8px 0}.odc-roles-form-container{padding:12px 4px}}
