:root{--separator-border: rgba(128, 128, 128, .35);--sash-hover-transition-duration: .1s}.allotment-module_splitView__L-yRc{height:100%;overflow:hidden;position:relative;width:100%}.allotment-module_splitView__L-yRc>.allotment-module_sashContainer__fzwJF{height:100%;pointer-events:none;position:absolute;width:100%}.allotment-module_splitView__L-yRc>.allotment-module_sashContainer__fzwJF>.allotment-module_sash__QA-2t{pointer-events:auto}.allotment-module_splitView__L-yRc>.allotment-module_splitViewContainer__rQnVa{height:100%;position:relative;white-space:nowrap;width:100%}.allotment-module_splitView__L-yRc>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O{overflow:hidden;position:absolute;white-space:initial}.allotment-module_splitView__L-yRc.allotment-module_vertical__WSwwa>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O{width:100%}.allotment-module_splitView__L-yRc.allotment-module_horizontal__7doS8>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O{height:100%}.allotment-module_splitView__L-yRc.allotment-module_separatorBorder__x-rDS>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O:not(:first-child):before{background-color:var(--separator-border);content:" ";left:0;pointer-events:none;position:absolute;top:0;z-index:5}.allotment-module_splitView__L-yRc.allotment-module_separatorBorder__x-rDS.allotment-module_vertical__WSwwa>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O:not(:first-child):before{height:1px;width:100%}.allotment-module_splitView__L-yRc.allotment-module_separatorBorder__x-rDS.allotment-module_horizontal__7doS8>.allotment-module_splitViewContainer__rQnVa>.allotment-module_splitViewView__MGZ6O:not(:first-child):before{height:100%;width:1px}:root{--focus-border: #007fd4;--sash-size: 8px;--sash-hover-size: 4px}.sash-module_sash__K-9lB{position:absolute;z-index:35;touch-action:none;pointer-events:auto;text-align:initial}.sash-module_sash__K-9lB.sash-module_disabled__Hm-wx{pointer-events:none}.sash-module_sash__K-9lB.sash-module_mac__Jf6OJ.sash-module_vertical__pB-rs{cursor:col-resize}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs.sash-module_minimum__-UKxp{cursor:e-resize}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs.sash-module_maximum__TCWxD{cursor:w-resize}.sash-module_sash__K-9lB.sash-module_mac__Jf6OJ.sash-module_horizontal__kFbiw{cursor:row-resize}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_minimum__-UKxp{cursor:s-resize}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_maximum__TCWxD{cursor:n-resize}.sash-module_sash__K-9lB.sash-module_disabled__Hm-wx{cursor:default!important;pointer-events:none!important}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs{cursor:ew-resize;top:0;width:var(--sash-size);height:100%}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw{cursor:ns-resize;left:0;width:100%;height:var(--sash-size)}.sash-module_sash__K-9lB:not(.sash-module_disabled__Hm-wx)>.sash-module_orthogonal-drag-handle__Yii2-{content:" ";height:calc(var(--sash-size) * 2);width:calc(var(--sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_orthogonal-edge-north__f7Noe:not(.sash-module_disabled__Hm-wx)>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_start__uZEDk,.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_orthogonal-edge-south__6ZrFC:not(.sash-module_disabled__Hm-wx)>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_end__0TP-R{cursor:nwse-resize}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_orthogonal-edge-north__f7Noe:not(.sash-module_disabled__Hm-wx)>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_end__0TP-R,.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw.sash-module_orthogonal-edge-south__6ZrFC:not(.sash-module_disabled__Hm-wx)>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_start__uZEDk{cursor:nesw-resize}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_start__uZEDk{left:calc(var(--sash-size) * -.5);top:calc(var(--sash-size) * -1)}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_end__0TP-R{left:calc(var(--sash-size) * -.5);bottom:calc(var(--sash-size) * -1)}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_start__uZEDk{top:calc(var(--sash-size) * -.5);left:calc(var(--sash-size) * -1)}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw>.sash-module_orthogonal-drag-handle__Yii2-.sash-module_end__0TP-R{top:calc(var(--sash-size) * -.5);right:calc(var(--sash-size) * -1)}.sash-module_sash__K-9lB:before{content:"";pointer-events:none;position:absolute;width:100%;height:100%;transition:background-color var(--sash-hover-transition-duration) ease-out;background:transparent}.sash-module_sash__K-9lB.sash-module_vertical__pB-rs:before{width:var(--sash-hover-size);left:calc(50% - (var(--sash-hover-size) / 2))}.sash-module_sash__K-9lB.sash-module_horizontal__kFbiw:before{height:var(--sash-hover-size);top:calc(50% - (var(--sash-hover-size) / 2))}.sash-module_sash__K-9lB.sash-module_hover__80W6I:before,.sash-module_sash__K-9lB.sash-module_active__bJspD:before{background:var(--focus-border)}.graph-domain-select{width:100%;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius);padding:6px 8px;font-family:var(--font-family-mono);font-size:12px}.graph-viz-container{width:100%;height:100%;position:relative;overflow:hidden}.graph-viz-container svg{width:100%;height:100%}.graph-inventory{display:flex;flex-direction:column;gap:8px}.graph-inventory-row{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-family-mono);font-size:11px;color:var(--color-text-muted)}.graph-inventory-count{color:var(--color-cyan);font-weight:600}.graph-node-editor{position:absolute;top:0;right:0;width:320px;height:100%;background:var(--color-surface);border-left:1px solid var(--color-border);padding:16px;overflow-y:auto;z-index:10}.graph-node-editor-title{font-size:14px;font-weight:700;color:var(--color-cyan);margin-bottom:12px}.graph-node-editor .form-group{margin-bottom:8px}.graph-node-editor label{font-size:10px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.graph-node-editor input{width:100%;background:var(--color-elevated);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius);padding:4px 8px;font-family:var(--font-family-mono);font-size:12px}.graph-hierarchy-legend{position:absolute;top:8px;left:8px;z-index:5;display:flex;flex-wrap:wrap;gap:10px;padding:6px 10px;background:#0a0a0fd9;border:1px solid var(--color-border);border-radius:var(--radius)}.graph-hierarchy-legend-item{display:flex;align-items:center;gap:4px;font-family:var(--font-family-mono);font-size:10px;color:var(--color-text-muted)}.graph-hierarchy-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.pipeline-launcher{display:flex;flex-direction:column;gap:12px;padding:16px;max-width:720px}.pipeline-step{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:12px}.pipeline-step--running{border-color:var(--color-cyan)}.pipeline-step-header{display:flex;align-items:center;gap:8px}.pipeline-step-number{width:24px;height:24px;border-radius:50%;background:var(--color-elevated);color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.pipeline-step-number--active{background:var(--color-cyan);color:var(--color-void)}.pipeline-step-number--done{background:var(--color-green);color:var(--color-void)}.pipeline-step-title{font-size:13px;font-weight:600}.pipeline-dropzone{border:1px dashed var(--color-border);border-radius:var(--radius);padding:24px 16px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:border-color .15s,background .15s;background:var(--color-surface)}.pipeline-dropzone:hover{border-color:var(--color-cyan);background:#00f0ff08}.pipeline-dropzone--active{border-color:var(--color-cyan);background:#00f0ff0f;border-style:solid}.pipeline-dropzone-icon{font-size:28px;color:var(--color-cyan);font-weight:300;line-height:1;opacity:.7}.pipeline-dropzone-text{font-size:12px;color:var(--color-text);font-family:var(--font-family-mono)}.pipeline-dropzone-types{font-size:10px;color:var(--color-text-muted);font-family:var(--font-family-mono);letter-spacing:.03em}.pipeline-file-list{display:flex;flex-direction:column;gap:2px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:4px}.pipeline-file-row{display:flex;align-items:center;gap:8px;padding:4px 8px;border-radius:var(--radius);font-family:var(--font-family-mono);font-size:11px}.pipeline-file-row:hover{background:var(--color-elevated)}.pipeline-file-badge{font-size:9px;font-weight:700;padding:1px 4px;border:1px solid;border-radius:var(--radius);flex-shrink:0;min-width:30px;text-align:center}.pipeline-file-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text)}.pipeline-file-size{color:var(--color-text-muted);font-size:10px;flex-shrink:0}.pipeline-file-remove{background:none;border:none;color:var(--color-text-muted);font-size:14px;cursor:pointer;padding:0 4px;line-height:1;font-family:var(--font-family-mono)}.pipeline-file-remove:hover{color:var(--color-red)}.pipeline-start-btn{width:100%;padding:10px 16px;font-size:13px;font-weight:600;font-family:var(--font-family-mono);cursor:pointer;border:1px solid var(--color-green);background:transparent;color:var(--color-green);border-radius:var(--radius);transition:background .15s}.pipeline-start-btn:hover:not(:disabled){background:#39ff1414}.pipeline-start-btn:disabled{opacity:.4;cursor:default;border-color:var(--color-border);color:var(--color-text-muted)}.pipeline-progress{display:flex;align-items:center;gap:0;padding:8px 0}.pipeline-progress-step{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.pipeline-progress-dot{width:20px;height:20px;border-radius:50%;border:1px solid;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;flex-shrink:0;font-family:var(--font-family-mono)}.pipeline-progress-label{font-size:9px;font-family:var(--font-family-mono);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.pipeline-progress-line{flex:1;height:1px;margin:0 4px;min-width:8px}.pipeline-spinner{width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-cyan);border-radius:50%;animation:pipeline-spin .8s linear infinite;flex-shrink:0}@keyframes pipeline-spin{to{transform:rotate(360deg)}}.pipeline-review-table{width:100%;font-size:11px;border-collapse:collapse}.pipeline-review-table th{text-align:left;padding:4px 8px;border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:10px;text-transform:uppercase}.pipeline-review-table td{padding:4px 8px;border-bottom:1px solid var(--color-border)}.pipeline-review-actions{display:flex;gap:4px}.pipeline-review-actions button{font-size:10px;padding:2px 6px;border-radius:var(--radius);border:1px solid;cursor:pointer;font-family:var(--font-family-mono)}.btn-confirm{color:var(--color-green);border-color:var(--color-green);background:transparent}.btn-reject{color:var(--color-red);border-color:var(--color-red);background:transparent}.btn-skip{color:var(--color-text-muted);border-color:var(--color-border);background:transparent}.shell-v2{display:grid;grid-template-columns:1fr;grid-template-rows:32px 1fr 22px;grid-template-areas:"topbar" "body" "statusbar";height:100vh;width:100vw;overflow:hidden;background:var(--color-void);color:var(--color-text-pri);font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:13px}.shell-topbar{grid-area:topbar}.shell-body{grid-area:body;overflow:hidden}.shell-right{display:flex;flex-direction:column;height:100%;overflow:hidden}.shell-explorer{height:100%}.shell-breadcrumbs{flex-shrink:0}.shell-tabbar{grid-area:tabbar}.shell-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.shell-statusbar{grid-area:statusbar}.shell-topbar{height:32px;background:var(--color-surface);border-bottom:1px solid var(--color-b-subtle);display:flex;align-items:center;gap:12px;padding:0 12px;overflow:hidden}.shell-topbar-brand{color:var(--color-cyan);font-size:12px;font-weight:700;letter-spacing:.05em;white-space:nowrap;flex-shrink:0}.shell-topbar-project{color:var(--color-text-sec);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.shell-topbar-right{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.shell-topbar-utc{color:var(--color-text-mut);font-size:11px}.shell-topbar-label{color:var(--color-text-mut);font-size:11px;margin-right:6px}.shell-status-dot{width:6px;height:6px;border-radius:50%;background:var(--color-b-active);flex-shrink:0}.shell-status-dot--ok{background:var(--color-green)}.shell-status-dot--warn{background:var(--color-yellow)}.shell-status-dot--error{background:var(--color-red)}.shell-explorer{background:var(--color-surface);border-right:1px solid var(--color-b-subtle);overflow-y:auto;overflow-x:hidden;font-size:13px;display:flex;flex-direction:column}.ex-section{border-bottom:1px solid var(--color-b-subtle);margin-bottom:1px}.ex-header{position:sticky;top:0;z-index:1;background:var(--color-surface);color:var(--color-text-pri);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:6px 10px 5px;display:flex;align-items:center;gap:4px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ex-header:hover{background:var(--color-elevated)}.ex-badge{color:var(--color-text-mut);font-size:8px;margin-left:auto}.ex-chevron{font-size:9px;width:10px;flex-shrink:0;color:var(--color-text-mut);cursor:pointer;text-align:center}.ex-body{overflow:hidden}.ex-item{display:flex;align-items:center;gap:5px;padding:2px 10px;cursor:pointer;border-left:2px solid transparent;line-height:1.5;font-size:13px;height:22px}.ex-chevron-spacer{display:inline-block;width:10px;flex-shrink:0}.ex-item:hover{background:var(--oe-surface-hover)}.ex-item--active{background:var(--color-elevated);color:var(--color-cyan);border-left-color:var(--color-cyan)}.ex-item-left{display:flex;align-items:center;gap:4px;overflow:hidden;flex:1;min-width:0}.ex-item-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;color:var(--color-text-sec)}.ex-item:hover .ex-item-label{color:var(--color-text-pri)}.ex-item--active .ex-item-label{color:var(--color-cyan)}.ex-manage-link{font-size:11px;color:var(--color-text-mut);font-style:italic}.ex-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;background:var(--color-b-active)}.ex-dot--approved,.ex-dot--reviewed{background:var(--color-green)}.ex-dot--progress{background:var(--color-yellow)}.ex-dot--unbuilt{background:var(--color-b-active)}.ex-dot--manage{background:var(--color-text-mut);opacity:.5}.ex-cost{color:var(--color-text-mut);font-size:11px;white-space:nowrap;flex-shrink:0;margin-left:4px}.ex-meta{color:var(--color-text-mut);font-size:11px;white-space:nowrap;flex-shrink:0}.shell-breadcrumbs{background:var(--color-surface);border-bottom:1px solid var(--color-b-subtle);display:flex;align-items:center;padding:0 8px;gap:4px;font-size:9px;color:var(--color-text-mut);overflow:hidden;white-space:nowrap}.shell-bread-sep{color:var(--color-text-mut);flex-shrink:0}.shell-bread-link{color:var(--color-text-mut);cursor:pointer;text-decoration:none;white-space:nowrap}.shell-bread-link:hover{color:var(--color-cyan)}.shell-bread-current{color:var(--color-cyan);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shell-tabbar{background:var(--color-void);border-bottom:1px solid var(--color-b-subtle);display:flex;align-items:flex-end;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.shell-tabbar::-webkit-scrollbar{display:none}.shell-tab{display:flex;align-items:center;gap:6px;font-size:12px;height:34px;padding:0 10px;background:#12121a;border-right:1px solid var(--oe-b-subtle);color:var(--oe-text-sec);cursor:pointer;white-space:nowrap;flex-shrink:0;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.shell-tab:hover{color:var(--oe-text-pri);background:var(--oe-surface-hover)}.shell-tab--active{background:var(--oe-surface);color:var(--oe-text-pri);border-top:2px solid var(--oe-cyan);padding-top:0}.shell-tab-glyph{font-size:13px;flex-shrink:0}.shell-tab-label{max-width:180px;overflow:hidden;text-overflow:ellipsis}.shell-tab-kind{color:var(--oe-text-mut);font-size:10px;text-transform:lowercase;margin-left:4px}.shell-tab-close{color:var(--oe-text-mut);font-size:13px;line-height:1;padding:2px 3px;margin-left:4px;border-radius:2px;flex-shrink:0;opacity:0;transition:opacity .12s ease-out}.shell-tab:hover .shell-tab-close,.shell-tab--active .shell-tab-close{opacity:.7}.shell-tab-close:hover{color:var(--oe-red);background:#ff33551a;opacity:1}.shell-center{background:var(--color-surface);overflow:hidden;display:flex;flex-direction:column;height:100%}.shell-center-body{flex:1;overflow:hidden;display:flex;flex-direction:column}.shell-split-pane{display:flex;flex-direction:column;height:100%;overflow:hidden}.shell-tab-split{color:var(--color-text-mut);font-size:10px;margin-left:2px;cursor:pointer;line-height:1}.shell-tab-split:hover{color:var(--color-cyan)}.drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none}.drop-zone{position:absolute;background:#00f0ff14;border:2px solid rgba(0,240,255,.3);border-radius:2px;transition:all .1s ease}.drop-zone--left{left:0;top:0;bottom:0;width:50%}.drop-zone--right{right:0;top:0;bottom:0;width:50%}.drop-zone--center{top:4px;right:4px;bottom:4px;left:4px;background:#00f0ff0a;border:2px dashed rgba(0,240,255,.2)}.shell-bottom--drop-target{outline:2px solid rgba(0,240,255,.3);outline-offset:-2px;background:#00f0ff08}.shell-center .split-view-view{border-right:1px solid var(--color-elevated)}.tab-surface{height:100%;display:flex;flex-direction:column;overflow:hidden}.tab-surface--map{position:relative;height:100%;flex:1}.tab-surface--scroll{overflow-y:auto;flex:1}.tab-surface--placeholder,.tab-surface--empty{display:flex;align-items:center;justify-content:center;height:100%}.tab-placeholder-content{text-align:center;padding:24px}.tab-placeholder-glyph{font-size:24px;color:var(--color-text-mut);margin-bottom:8px}.tab-placeholder-label{font-size:12px;color:var(--color-text-mut);margin-bottom:4px}.tab-placeholder-hint{font-size:9px;color:var(--color-text-mut)}.shell-bottom{background:var(--color-void);border-top:1px solid var(--color-b-subtle);display:flex;flex-direction:column;overflow:hidden;height:100%}.shell-bottom-tabs{display:flex;align-items:flex-end;background:var(--color-surface);height:30px;flex-shrink:0;overflow-x:auto;scrollbar-width:none}.shell-bottom-tabs::-webkit-scrollbar{display:none}.shell-bottom-tab{font-size:12px;color:var(--color-text-mut);padding:0 14px;height:30px;display:flex;align-items:center;border-right:1px solid var(--color-b-subtle);cursor:pointer;white-space:nowrap;flex-shrink:0;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.shell-bottom-tab:hover{color:var(--color-text-sec)}.shell-bottom-tab--active{color:var(--color-text-pri)}.shell-bottom-tab--active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--color-magenta)}.shell-bottom-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.shell-bottom-placeholder{padding:8px;color:var(--color-text-mut);font-size:9px}.findings-panel{overflow-y:auto;height:100%;font-size:10px}.findings-empty{padding:12px;color:var(--color-text-mut);font-style:italic}.findings-row{display:flex;align-items:center;gap:8px;padding:3px 12px;cursor:pointer;border-bottom:1px solid var(--color-b-subtle)}.findings-row:hover{background:var(--color-elevated)}.findings-icon{flex-shrink:0;font-size:8px}.findings-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.findings-type{color:var(--color-text-mut);font-size:8px;flex-shrink:0;text-transform:uppercase;letter-spacing:.5px}.findings-dismiss{flex-shrink:0;color:var(--color-text-mut);font-size:10px;cursor:pointer;padding:0 4px;border-radius:2px}.findings-dismiss:hover{color:var(--color-green);background:#4ec86a1a}.findings-badge{color:var(--color-red);font-size:8px;margin-left:4px}.shell-statusbar{display:flex;align-items:center;gap:10px;padding:0 12px;height:22px;background:var(--color-surface);border-top:1px solid var(--color-elevated);font-family:JetBrains Mono,monospace;font-size:11px;color:var(--color-text-pri);overflow:hidden;white-space:nowrap}.sb-total{color:var(--color-green);font-weight:600}.sb-cost{color:var(--color-cyan)}.sb-meta{color:var(--color-text-sec)}.sb-sep,.sb-dot{color:var(--color-text-mut)}.sb-right-cluster{margin-left:auto;display:inline-flex;align-items:center;gap:10px}.sb-indicator{display:inline-flex;align-items:center;gap:4px;color:var(--color-text-sec)}.sb-indicator--btn{background:none;border:none;padding:0;font-family:inherit;font-size:inherit;cursor:pointer}.sb-indicator--btn:hover .sb-indicator-label{color:var(--color-text-pri)}.sb-indicator-label{color:var(--color-text-sec);font-size:10px;letter-spacing:.04em}.sb-dot-indicator{width:6px;height:6px;border-radius:50%;flex-shrink:0}.sb-user{color:var(--color-text-sec);margin-left:4px}.dev-tag{background:var(--color-surface);border-bottom:1px solid var(--color-b-subtle);padding:2px 10px;font-size:8px;display:flex;gap:8px;align-items:center;flex-shrink:0}.dev-tag-component{color:var(--color-magenta);font-weight:700}.dev-tag-file{color:var(--color-text-mut);font-family:var(--font-mono)}.shell-topbar-btn{background:none;border:1px solid var(--color-b-subtle);color:var(--color-text-mut);font-family:inherit;font-size:11px;padding:3px 10px;cursor:pointer;border-radius:2px}.shell-topbar-btn:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.map-row-panel-wrapper{height:100%;overflow-y:auto;border-left:1px solid var(--color-elevated)}.map-row-panel-wrapper .row-panel{height:100%;border-top:none}.palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:flex;justify-content:center;padding-top:15vh}.palette{width:560px;max-height:400px;background:var(--color-surface);border:1px solid var(--color-b-subtle);border-radius:4px;box-shadow:0 8px 32px #0009;display:flex;flex-direction:column;overflow:hidden}.palette-input{background:var(--color-void);border:none;border-bottom:1px solid var(--color-b-subtle);color:var(--color-text-pri);font-family:var(--font-mono);font-size:13px;padding:12px 16px;outline:none;width:100%}.palette-input::-moz-placeholder{color:var(--color-text-mut)}.palette-input::placeholder{color:var(--color-text-mut)}.palette-results{overflow-y:auto;flex:1}.palette-item{display:flex;align-items:center;gap:8px;padding:6px 16px;cursor:pointer;font-size:11px}.palette-item:hover,.palette-item--selected{background:var(--color-elevated)}.palette-glyph{font-size:12px;flex-shrink:0;width:16px;text-align:center}.palette-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-pri)}.palette-detail{color:var(--color-text-mut);font-size:9px;flex-shrink:0}.palette-kind{color:var(--color-text-mut);font-size:8px;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.palette-empty{padding:16px;text-align:center;color:var(--color-text-mut);font-size:11px}.shell-topbar-palette{background:var(--color-void);border:1px solid var(--color-b-subtle);color:var(--color-text-mut);font-family:inherit;font-size:11px;padding:3px 14px;cursor:pointer;border-radius:2px;margin-right:4px}.shell-topbar-palette:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.map-status-bar{padding:6px 12px;font-size:10px;display:flex;align-items:center;gap:8px;flex-shrink:0}.map-status-bar--processing{background:#ff00aa14;color:var(--color-magenta);border-bottom:1px solid rgba(255,0,170,.2)}.map-status-bar--confirm{background:#ff00aa0f;color:var(--color-magenta);border-bottom:1px solid rgba(255,0,170,.2);flex-wrap:wrap}.map-spinner{width:12px;height:12px;border:2px solid rgba(255,0,170,.3);border-top-color:var(--color-magenta);border-radius:50%;animation:map-spin .8s linear infinite}@keyframes map-spin{to{transform:rotate(360deg)}}.map-candidates{display:flex;gap:6px;flex-wrap:wrap}.map-candidate-btn{background:none;border:1px solid rgba(255,0,170,.3);color:var(--color-magenta);font-family:inherit;font-size:9px;padding:2px 8px;cursor:pointer;border-radius:2px}.map-candidate-btn:hover{background:#ff00aa1a;border-color:var(--color-magenta)}.map-candidate-btn:disabled{opacity:.5;cursor:not-allowed}.wbs-summary{font-size:10px;font-family:var(--font-mono)}.wbs-summary-header{background:var(--color-elevated);border-bottom:1px solid var(--color-b-subtle);padding:10px 16px}.wbs-summary-header-row1{display:flex;align-items:center;gap:8px;margin-bottom:4px}.wbs-summary-code{color:var(--color-cyan);font-weight:700;font-size:13px}.wbs-summary-name{font-size:13px;font-weight:700}.wbs-summary-badge{font-size:7px;padding:1px 6px;border-radius:2px;background:var(--color-b-active);color:var(--color-text-sec);letter-spacing:.5px}.wbs-summary-total{color:var(--color-green);font-size:18px;font-weight:700;margin-left:auto}.wbs-summary-header-row2{display:flex;gap:20px;font-size:12px;color:var(--color-text-sec)}.wbs-summary-val{color:var(--color-cyan)}.wbs-summary-section-label{color:var(--color-text-pri);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:12px 18px 6px;border-bottom:1px solid var(--color-b-subtle)}.wbs-summary-children{padding:0 18px}.wbs-summary-child-header{display:grid;grid-template-columns:14px 1fr 70px 70px 60px 60px 80px 45px 80px 45px;gap:4px;font-size:10px;color:var(--color-text-mut);text-transform:uppercase;letter-spacing:.3px;padding:6px 0;border-bottom:1px solid var(--color-b-subtle)}.wbs-summary-child-row{display:grid;grid-template-columns:14px 1fr 70px 70px 60px 60px 80px 45px 80px 45px;gap:4px;padding:5px 0;border-bottom:1px solid var(--color-b-subtle);cursor:pointer;align-items:center;font-size:12px}.wbs-summary-child-row:hover{background:var(--color-elevated)}.wbs-summary-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.wbs-summary-child-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wbs-summary-child-code{color:var(--color-cyan);margin-right:6px;font-weight:600}.wbs-summary-right{text-align:right;color:var(--color-cyan);font-size:12px}.wbs-summary-costs{padding:4px 18px}.wbs-summary-cost-row{display:grid;grid-template-columns:100px 1fr 80px 40px;gap:8px;padding:5px 0;align-items:center;font-size:12px}.wbs-summary-cost-bar{height:6px;background:var(--color-elevated);border-radius:3px;overflow:hidden}.wbs-summary-cost-fill{height:100%;border-radius:3px}.wbs-summary-pct{color:var(--color-text-mut);font-size:11px;text-align:right}.wbs-summary-crews{padding:0 18px}.wbs-summary-crew-row{display:flex;align-items:center;gap:10px;padding:5px 0;border-bottom:1px solid var(--color-b-subtle);font-size:12px}.wbs-summary-crew-row:hover{background:var(--color-elevated)}.wbs-summary-crew-name{color:var(--color-text-pri);font-weight:600;cursor:pointer;white-space:nowrap}.wbs-summary-crew-name:hover{color:var(--color-cyan)}.wbs-summary-crew-task{color:var(--color-text-mut);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.wbs-summary-crew-section{color:var(--color-cyan);font-size:11px;flex-shrink:0}.wbs-summary-crew-cost{color:var(--color-cyan);font-weight:600;flex-shrink:0}.section-detail-task-group{padding:0 16px;margin-bottom:4px}.section-detail-task-header{display:flex;align-items:center;gap:8px;padding:6px 0 4px;border-bottom:1px solid var(--color-b-subtle);cursor:pointer;font-size:12px}.section-detail-task-header:hover{color:var(--color-cyan)}.section-detail-task-code{color:var(--color-cyan);font-weight:700;flex-shrink:0}.section-detail-task-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wbs-struct{font-size:13px}.wbs-struct-header{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;background:var(--color-elevated);border-bottom:1px solid var(--color-b-subtle)}.wbs-struct-table{padding:0;overflow-x:auto}.wbs-struct-row{display:flex;align-items:center;border-bottom:1px solid var(--color-b-subtle);min-height:32px;min-width:700px}.wbs-struct-row:hover{background:var(--color-elevated)}.wbs-struct-row--header{font-size:10px;color:var(--color-text-mut);text-transform:uppercase;letter-spacing:.3px;background:var(--color-surface);position:sticky;top:0;z-index:1;min-height:28px;border-bottom:1px solid var(--color-b-subtle)}.wbs-struct-row--header:hover{background:var(--color-surface)}.wbs-struct-row--phase{font-weight:600}.wbs-struct-cell{padding:4px 8px;flex-shrink:0}.wbs-struct-cell--indent{padding:0}.wbs-struct-cell--code{width:100px;color:var(--color-cyan);font-weight:600}.wbs-struct-cell--desc{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wbs-struct-cell--num{width:70px;text-align:right}.wbs-struct-cell--unit{width:50px;text-align:center;color:var(--color-text-sec)}.wbs-struct-cell--status{width:90px;text-align:center}.wbs-struct-cell--actions{width:100px;display:flex;gap:4px;justify-content:flex-end;padding-right:12px}.wbs-struct-editable{cursor:pointer;border-bottom:1px dashed transparent;padding:1px 2px}.wbs-struct-editable:hover{border-bottom-color:var(--color-cyan);color:var(--color-cyan)}.wbs-struct-input{background:var(--color-void);border:1px solid var(--color-cyan);color:var(--color-cyan);font-family:inherit;font-size:13px;padding:1px 4px;outline:none}.wbs-struct-status-badge{font-size:9px;padding:2px 6px;border-radius:3px;cursor:pointer;letter-spacing:.3px;font-weight:600}.wbs-struct-status-badge[data-status=defined]{background:var(--color-b-subtle);color:var(--color-text-mut)}.wbs-struct-status-badge[data-status=estimated]{background:#d4a84326;color:var(--color-yellow)}.wbs-struct-status-badge[data-status=approved]{background:#4ec86a26;color:var(--color-green)}.wbs-struct-status-badge[data-status=complete]{background:#4ec86a40;color:var(--color-green)}.wbs-struct-btn{background:none;border:1px solid var(--color-b-subtle);color:var(--color-text-sec);font-family:inherit;font-size:11px;padding:2px 8px;cursor:pointer;border-radius:3px}.wbs-struct-btn:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.wbs-struct-btn--danger{border-color:var(--color-red);color:var(--color-red)}.wbs-struct-btn--danger:hover{background:#d450501a}.wbs-struct-btn--dim{border:none;color:var(--color-text-mut);font-size:12px}.wbs-struct-btn--dim:hover{color:var(--color-red)}.wbs-struct-add-root{padding:8px 18px}.crew-mgr-assignments{background:var(--color-void);border-bottom:1px solid var(--color-b-subtle);padding:4px 0}.crew-mgr-no-asgn{padding:8px 18px;color:var(--color-text-mut);font-style:italic;font-size:12px}.crew-mgr-asgn-header{display:flex;gap:8px;padding:2px 18px 2px 32px;font-size:10px;color:var(--color-text-mut);text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid var(--color-b-subtle)}.crew-mgr-asgn-row{display:flex;align-items:center;gap:8px;padding:3px 18px 3px 32px;font-size:12px;border-bottom:1px solid var(--color-b-subtle);cursor:pointer}.crew-mgr-asgn-row:hover{background:var(--color-surface)}.shell-dock{display:flex;flex-direction:column;height:100%;background:var(--color-surface);border-top:1px solid var(--color-elevated)}.shell-dock--right{border-top:none;border-left:1px solid var(--color-elevated)}.shell-dock-body{flex:1;min-height:0;overflow:hidden;position:relative}.shell-dock-header{display:flex;align-items:stretch;flex-shrink:0;min-width:0}.shell-dock-header .shell-tabbar{flex:1;min-width:0}.shell-dock-collapse{flex-shrink:0;width:28px;background:var(--color-void);border:none;border-bottom:1px solid var(--color-b-subtle);border-left:1px solid var(--color-b-subtle);color:var(--color-text-sec);font-family:var(--font-mono);font-size:14px;line-height:1;cursor:pointer;padding:0}.shell-dock-collapse:hover{color:var(--color-cyan);background:var(--color-elevated)}.shell-dock.dock-empty .shell-dock-collapse{position:absolute;top:0;right:0;height:35px;border-bottom:1px solid var(--color-b-subtle)}.shell-dock.dock-empty{align-items:center;justify-content:center;position:relative}.dock-empty-hint{color:var(--color-text-mut);font-size:11px;font-style:italic}.shell-dock--drop-active{background:#7ec8d40f;outline:1px dashed var(--color-cyan);outline-offset:-2px}.dock-rail{background:var(--color-surface);display:flex;overflow:hidden;width:100%;height:100%}.dock-rail--right{flex-direction:column;align-items:center;border-left:1px solid var(--color-elevated);padding:6px 0;justify-content:space-between}.dock-rail--bottom{flex-direction:row;align-items:center;border-top:1px solid var(--color-elevated);padding:0 6px;justify-content:space-between}.dock-rail-glyphs{display:flex;gap:6px}.dock-rail--right .dock-rail-glyphs{flex-direction:column}.rail-glyph{background:none;border:none;padding:4px;font-family:JetBrains Mono,monospace;font-size:14px;cursor:pointer;opacity:.75;line-height:1}.rail-glyph:hover{opacity:1}.rail-chevron{background:none;border:none;padding:4px;color:var(--color-text-mut);cursor:pointer;font-family:JetBrains Mono,monospace}.rail-empty-hint{color:var(--color-text-mut);font-size:10px;font-style:italic;padding:4px}.dock-rail--right .rail-empty-hint{writing-mode:vertical-rl}.dock-rail--drop-active{background:#7ec8d414;outline:1px dashed var(--color-cyan);outline-offset:-2px}.tab-ctx-menu{position:fixed;background:var(--color-elevated);border:1px solid var(--color-b-subtle);border-radius:3px;min-width:180px;z-index:1000;padding:4px 0;font-family:JetBrains Mono,monospace;font-size:12px;box-shadow:0 4px 12px #0006}.tab-ctx-item{display:block;width:100%;background:none;border:none;text-align:left;padding:6px 12px;color:var(--color-text-pri);cursor:pointer}.tab-ctx-item:hover:not([disabled]){background:var(--color-cyan);color:var(--oe-on-primary)}.tab-ctx-item[disabled]{color:var(--color-text-mut);cursor:default}.tab-ctx-sep{height:1px;background:var(--color-b-active);margin:4px 0}.shell-topbar-chip{background:none;border:none;padding:2px 6px;display:inline-flex;align-items:center;gap:4px;font-family:JetBrains Mono,monospace;cursor:pointer;color:var(--color-text-pri)}.shell-topbar-chip:hover{background:var(--color-elevated)}.shell-topbar-badge{background:var(--color-yellow);color:var(--oe-on-primary);font-size:10px;padding:0 4px;border-radius:2px;margin-left:2px}.jones-v3-badge{color:var(--color-red)}.ex-item--other-pane:after{content:"○";color:var(--oe-cyan);font-size:8px;opacity:.7;margin-left:6px}.sb-jones{background:transparent;border:none;color:var(--oe-cyan);font-size:11px;cursor:pointer;padding:0 8px}.sb-jones:hover{color:var(--oe-cyan-hover)}.lobby-shell-v2{display:flex;flex-direction:column;height:100vh;font-family:var(--font-mono);color:var(--color-text-pri);background:var(--color-void)}.lobby-shell-v2 .shell-body{flex:1;min-height:0}.lobby-topbar{display:flex;align-items:center;gap:12px;height:32px;padding:0 12px;background:var(--color-surface);border-bottom:1px solid var(--color-b-subtle);font-size:12px;flex-shrink:0}.lobby-topbar-kchip{color:var(--color-text-sec);font-size:11px;border:1px solid var(--color-b-subtle);padding:1px 6px;border-radius:var(--oe-radius-sm);cursor:pointer;transition:color var(--oe-motion-fast),border-color var(--oe-motion-fast)}.lobby-topbar-kchip:hover{color:var(--color-cyan);border-color:var(--color-cyan)}.lobby-statusbar-bottom{display:flex;align-items:center;gap:14px;height:22px;padding:0 12px;background:var(--color-surface);border-top:1px solid var(--color-b-subtle);font-size:11px;color:var(--color-text-sec);flex-shrink:0}.lobby-explorer{background:var(--color-surface);border-right:1px solid var(--color-b-subtle);font-size:13px;height:100%;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}.lobby-explorer-section{border-bottom:1px solid var(--color-b-subtle);margin-bottom:1px}.lobby-explorer-header{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;padding:6px 10px 5px;background:var(--color-surface);color:var(--color-text-pri);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color var(--oe-motion-fast)}.lobby-explorer-header.clickable{cursor:pointer}.lobby-explorer-header.clickable:hover{background:var(--color-elevated)}.lobby-explorer-item{display:flex;align-items:center;gap:5px;height:22px;padding:2px 10px;color:var(--color-text-pri);cursor:pointer;border-left:2px solid transparent;line-height:1.5;font-size:13px;transition:background-color var(--oe-motion-fast),color var(--oe-motion-fast)}.lobby-explorer-item:hover{background:var(--oe-surface-hover)}.lobby-explorer-item--active{background:var(--color-elevated);color:var(--color-cyan);border-left-color:var(--color-cyan)}.lobby-explorer-placeholder{padding:2px 10px;color:var(--color-text-mut);font-style:italic;font-size:11px}.lobby-tab-bar{display:flex;align-items:flex-end;background:var(--color-void);border-bottom:1px solid var(--color-b-subtle);font-size:12px;height:35px;flex-shrink:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.lobby-tab-bar::-webkit-scrollbar{display:none}.lobby-tab-bar--empty{align-items:center;padding:0 12px;color:var(--color-text-mut);font-style:italic}.lobby-tab{display:flex;align-items:center;gap:6px;height:35px;padding:0 12px;border-right:1px solid var(--color-elevated);cursor:pointer;color:var(--color-text-sec);white-space:nowrap;flex-shrink:0;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color var(--oe-motion-fast),background-color var(--oe-motion-fast)}.lobby-tab:hover{color:var(--color-text-sec);background:var(--oe-surface-hover)}.lobby-tab--active{background:var(--color-elevated);color:var(--color-cyan)}.lobby-tab--active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--color-cyan)}.lobby-tab-glyph{font-size:13px;flex-shrink:0}.lobby-tab-close{color:var(--color-text-mut);padding:2px 3px;margin-left:4px;border-radius:2px;transition:color var(--oe-motion-fast),background-color var(--oe-motion-fast)}.lobby-tab-close:hover{color:var(--color-red);background:#d450501a}.lobby-explorer-count{color:var(--color-text-mut);font-size:11px;margin-left:auto}.lobby-explorer-open{color:var(--color-text-mut);padding:0 6px;cursor:pointer;transition:color var(--oe-motion-fast)}.lobby-explorer-open:hover{color:var(--color-cyan)}.lobby-filter-chips{padding:4px 10px 6px;display:flex;gap:4px;flex-wrap:wrap}.lobby-filter-chip{padding:1px 8px;border:1px solid var(--color-b-subtle);border-radius:var(--oe-radius-sm);font-size:11px;color:var(--color-text-sec);cursor:pointer;text-transform:capitalize;background:transparent;font-family:inherit;transition:color var(--oe-motion-fast),border-color var(--oe-motion-fast)}.lobby-filter-chip:hover,.lobby-filter-chip--active{color:var(--color-cyan);border-color:var(--color-cyan)}.lobby-status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:6px;vertical-align:middle}.lobby-status-dot--active{background:var(--color-cyan)}.lobby-status-dot--submitted{background:var(--color-text-sec)}.lobby-status-dot--archived{background:var(--color-text-mut)}.lobby-explorer-action{color:var(--color-text-mut);font-style:italic}.lobby-explorer-action:hover{color:var(--color-cyan)}.lobby-explorer-subgroup{margin:2px 0 4px}.lobby-explorer-subheader{padding:2px 10px 2px 22px;color:var(--color-text-sec);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.welcome-tab{height:100%;overflow-y:auto}.welcome-inner{max-width:980px;padding:48px 56px 40px;font-family:var(--font-mono)}.welcome-hero{color:var(--color-text-pri);font-size:20px;font-weight:500;letter-spacing:-.2px;line-height:1.2}.welcome-subtitle{color:var(--color-text-sec);font-size:13px;margin-top:4px;font-weight:400}.welcome-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-top:32px}.welcome-section-label{color:var(--color-text-pri);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.welcome-section-label--spaced{margin-top:24px}.welcome-action{color:var(--color-cyan);padding:3px 0;cursor:pointer;font-size:13px;transition:opacity var(--oe-motion-fast)}.welcome-action:hover{opacity:.85}.welcome-action-glyph{display:inline-block;width:16px;color:var(--color-text-mut)}.welcome-recent-row{display:flex;justify-content:space-between;padding:3px 0;font-size:13px;cursor:pointer;transition:opacity var(--oe-motion-fast)}.welcome-recent-row:hover .welcome-recent-name{opacity:.85}.welcome-recent-name{color:var(--color-cyan)}.welcome-recent-meta,.welcome-recent-time{color:var(--color-text-mut);font-size:11px}.welcome-more{color:var(--color-text-mut);padding:6px 0 0;font-size:11px;cursor:pointer;transition:color var(--oe-motion-fast)}.welcome-more:hover{color:var(--color-cyan)}.welcome-empty{color:var(--color-text-mut);font-size:11px;font-style:italic}.walkthrough-card{background:var(--color-surface);border:1px solid var(--color-b-subtle);border-radius:var(--oe-radius-sm);padding:10px 14px;margin-bottom:6px;cursor:pointer;display:flex;gap:12px;align-items:center;transition:border-color var(--oe-motion-fast),background-color var(--oe-motion-fast)}.walkthrough-card:hover{border-color:var(--color-cyan);background:var(--color-elevated)}.walkthrough-card-icon{flex:0 0 28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--color-cyan);font-size:14px}.walkthrough-card-title{color:var(--color-text-pri);font-size:13px}.walkthrough-card--featured{padding:14px 16px;margin-bottom:10px;align-items:flex-start}.walkthrough-card-tile{flex:0 0 40px;height:40px;background:var(--color-elevated);border:1px solid var(--color-b-subtle);border-radius:var(--oe-radius-sm);display:flex;align-items:center;justify-content:center;color:var(--color-cyan);font-size:18px}.walkthrough-card-body{flex:1}.walkthrough-card--featured .walkthrough-card-title{color:var(--color-cyan);font-size:13px;font-weight:500}.walkthrough-card-subtitle{color:var(--color-text-sec);font-size:11px;margin-top:3px;line-height:1.4}.welcome-footer{margin-top:48px;padding-top:14px;border-top:1px solid var(--color-b-subtle);display:flex;align-items:center;gap:14px;font-size:11px;color:var(--color-text-sec)}.welcome-autoshow{display:flex;align-items:center;gap:6px;cursor:pointer}.welcome-autoshow input{accent-color:var(--color-cyan)}.welcome-footer-meta{color:var(--color-text-mut)}.welcome-footer-total{color:var(--color-green)}.walkthrough-surface{overflow-y:auto}.walkthrough-article{max-width:720px;margin:48px auto;padding:0 32px 64px;font-family:var(--font-mono);color:var(--color-text-pri);line-height:1.6;font-size:13px}.walkthrough-article h1{font-size:28px;font-weight:400;letter-spacing:-.3px;margin:0 0 16px}.walkthrough-article h2{font-size:18px;font-weight:500;margin:28px 0 10px}.walkthrough-article h3{font-size:14px;font-weight:500;margin:20px 0 8px}.walkthrough-article p{margin:8px 0}.walkthrough-article a{color:var(--color-cyan);text-decoration:none}.walkthrough-article a:hover{text-decoration:underline}.walkthrough-article code{background:var(--color-elevated);padding:1px 6px;border-radius:2px;font-size:12px}.walkthrough-article pre{background:var(--color-surface);border:1px solid var(--color-b-subtle);border-radius:3px;padding:12px 14px;overflow-x:auto}.walkthrough-article ul{padding-left:20px}.walkthrough-article li{margin:4px 0}.walkthrough-article em{color:var(--color-text-sec)}.walkthrough-article img{max-width:100%;display:block;margin:16px 0;border:1px solid var(--color-b-subtle)}.lobby-project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.lobby-project-card{background:var(--color-elevated);border:1px solid var(--color-b-subtle);border-radius:var(--oe-radius-sm);padding:14px;cursor:pointer;transition:border-color var(--oe-motion-fast),background-color var(--oe-motion-fast)}.lobby-project-card:hover{border-color:var(--color-cyan);background:var(--color-hover)}.lobby-project-card--archived{opacity:.6}.lobby-project-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.lobby-project-card-name{font-size:13px;color:var(--color-text-pri);font-weight:500}.lobby-project-card-code{font-size:11px;color:var(--color-text-sec)}.lobby-project-card-meta{font-size:10px;color:var(--color-text-sec);margin-top:6px}.lobby-project-card-status{font-size:10px;margin-top:4px}.lobby-project-section-label{font-size:10px;text-transform:uppercase;color:var(--color-text-sec);margin:20px 0 6px;letter-spacing:.5px}.lobby-project-row{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:var(--color-surface);border-radius:var(--oe-radius-sm);margin-bottom:2px;cursor:pointer;font-size:13px;transition:background-color var(--oe-motion-fast)}.lobby-project-row:hover{background:var(--color-elevated)}.lobby-kebab{position:relative}.lobby-kebab-btn{background:none;border:none;color:var(--color-text-sec);cursor:pointer;padding:2px 6px;font-size:16px;line-height:1;font-family:var(--font-mono)}.lobby-kebab-btn:hover{color:var(--color-text-pri)}.lobby-kebab-menu{position:absolute;right:0;top:100%;background:var(--color-elevated);border:1px solid var(--color-b-subtle);border-radius:3px;min-width:140px;z-index:100;padding:4px 0}.lobby-kebab-menu button{display:block;width:100%;text-align:left;padding:6px 12px;font-size:12px;color:var(--color-text-pri);background:none;border:none;cursor:pointer;font-family:var(--font-mono)}.lobby-kebab-menu button:hover{background:var(--color-surface)}.lobby-kebab-menu button.danger{color:var(--color-red)}.lobby-palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:1000;display:flex;justify-content:center;align-items:flex-start;padding-top:12vh}.lobby-palette{background:var(--color-surface);border:1px solid var(--color-cyan);border-radius:4px;width:560px;max-width:90vw;font-family:var(--font-mono);overflow:hidden}.lobby-palette input{width:100%;border:none;border-bottom:1px solid var(--color-b-subtle);background:var(--color-void);color:var(--color-text-pri);font-family:var(--font-mono);font-size:13px;padding:10px 14px;outline:none}.lobby-palette-list{max-height:360px;overflow-y:auto}.lobby-palette-item{display:flex;justify-content:space-between;padding:6px 14px;color:var(--color-text-pri);font-size:12px;cursor:pointer}.lobby-palette-item--active{background:var(--color-elevated);color:var(--color-cyan)}.lobby-palette-item--pinned{font-weight:500}.lobby-palette-item--pinned:before{content:"★ ";color:var(--color-cyan);margin-right:6px}.lobby-palette-hint{color:var(--color-text-mut);font-size:11px}.lobby-palette-empty{padding:12px 14px;color:var(--color-text-mut);font-size:12px;font-style:italic}.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0,0,0,0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}@media (hover:hover){.maplibregl-ctrl button:not(:disabled):hover{background-color:#0000000d}}.maplibregl-ctrl button:not(:disabled):active{background-color:#0000000d}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-globe .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='%23333' viewBox='0 0 22 22'%3E%3Ccircle cx='11' cy='11' r='8.5'/%3E%3Cpath d='M17.5 11c0 4.819-3.02 8.5-6.5 8.5S4.5 15.819 4.5 11 7.52 2.5 11 2.5s6.5 3.681 6.5 8.5Z'/%3E%3Cpath d='M13.5 11c0 2.447-.331 4.64-.853 6.206-.262.785-.562 1.384-.872 1.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831 15.64 8.5 13.446 8.5 11s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872 1.777.522 1.565.853 3.76.853 6.206Z'/%3E%3Cpath d='M11 7.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138q.07-.058.224-.138c.299-.151.763-.302 1.379-.434C7.378 5.666 9.091 5.5 11 5.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428ZM4.486 6.436ZM11 16.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138 1.3 1.3 0 0 1 .224-.138c.299-.151.763-.302 1.379-.434C7.378 14.666 9.091 14.5 11 14.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138a1.3 1.3 0 0 1-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm-6.514-1.064ZM11 12.5c-2.46 0-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5 1.5 0 0 1-.39-.272.3.3 0 0 1-.047-.064.3.3 0 0 1 .048-.064c.066-.073.189-.167.389-.272.399-.21 1.009-.413 1.805-.59C6.328 9.722 8.54 9.5 11 9.5s4.672.222 6.256.574c.795.177 1.405.38 1.804.59.2.105.323.2.39.272a.3.3 0 0 1 .047.064.3.3 0 0 1-.048.064 1.4 1.4 0 0 1-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0 .018v.002zm17.002.002v-.002zm0-.018v-.002z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-globe-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='%2333b5e5' viewBox='0 0 22 22'%3E%3Ccircle cx='11' cy='11' r='8.5'/%3E%3Cpath d='M17.5 11c0 4.819-3.02 8.5-6.5 8.5S4.5 15.819 4.5 11 7.52 2.5 11 2.5s6.5 3.681 6.5 8.5Z'/%3E%3Cpath d='M13.5 11c0 2.447-.331 4.64-.853 6.206-.262.785-.562 1.384-.872 1.777-.314.399-.58.517-.775.517s-.461-.118-.775-.517c-.31-.393-.61-.992-.872-1.777C8.831 15.64 8.5 13.446 8.5 11s.331-4.64.853-6.206c.262-.785.562-1.384.872-1.777.314-.399.58-.517.775-.517s.461.118.775.517c.31.393.61.992.872 1.777.522 1.565.853 3.76.853 6.206Z'/%3E%3Cpath d='M11 7.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138q.07-.058.224-.138c.299-.151.763-.302 1.379-.434C7.378 5.666 9.091 5.5 11 5.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138q-.07.058-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428ZM4.486 6.436ZM11 16.5c-1.909 0-3.622-.166-4.845-.428-.616-.132-1.08-.283-1.379-.434a1.3 1.3 0 0 1-.224-.138 1.3 1.3 0 0 1 .224-.138c.299-.151.763-.302 1.379-.434C7.378 14.666 9.091 14.5 11 14.5s3.622.166 4.845.428c.616.132 1.08.283 1.379.434.105.053.177.1.224.138a1.3 1.3 0 0 1-.224.138c-.299.151-.763.302-1.379.434-1.223.262-2.936.428-4.845.428Zm-6.514-1.064ZM11 12.5c-2.46 0-4.672-.222-6.255-.574-.796-.177-1.406-.38-1.805-.59a1.5 1.5 0 0 1-.39-.272.3.3 0 0 1-.047-.064.3.3 0 0 1 .048-.064c.066-.073.189-.167.389-.272.399-.21 1.009-.413 1.805-.59C6.328 9.722 8.54 9.5 11 9.5s4.672.222 6.256.574c.795.177 1.405.38 1.804.59.2.105.323.2.39.272a.3.3 0 0 1 .047.064.3.3 0 0 1-.048.064 1.4 1.4 0 0 1-.389.272c-.399.21-1.009.413-1.804.59-1.584.352-3.796.574-6.256.574Zm-8.501-1.51v.002zm0 .018v.002zm17.002.002v-.002zm0-.018v-.002z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:#0000000d}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.maplibregl-ctrl-attrib a{color:#000000bf;text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}[dir=rtl] .maplibregl-popup-anchor-left{flex-direction:row-reverse}[dir=rtl] .maplibregl-popup-anchor-right{flex-direction:row}[dir=rtl] .maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-end}[dir=rtl] .maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-start}[dir=rtl] .maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-end}[dir=rtl] .maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-start}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:#0000000d}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@media (prefers-reduced-motion:reduce){.maplibregl-user-location-dot:before{animation:none}}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:#0006;color:#fff;display:flex;font-size:1.4em;top:0;right:0;bottom:0;left:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(pointer:coarse){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}.map-canvas{width:100%;height:100%;position:relative}.map-canvas .maplibregl-map{width:100%;height:100%}.map-kp-readout{position:absolute;bottom:10px;left:10px;background:var(--color-elevated);border:1px solid var(--color-surface);padding:4px 10px;font-family:var(--font-family-mono);font-size:11px;color:var(--color-cyan);display:flex;gap:10px;z-index:2;pointer-events:none}.map-kp-readout .sep{color:var(--color-text-mut)}.map-processing-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-surface);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;z-index:5}.map-processing-overlay span{color:var(--color-cyan);font-family:var(--font-family-mono);font-size:13px}.map-status-banner{position:absolute;top:10px;left:50%;transform:translate(-50%);background:var(--color-elevated);border:1px solid var(--color-cyan);padding:6px 14px;font-family:var(--font-family-mono);font-size:11px;color:var(--color-cyan);z-index:3;pointer-events:none;white-space:nowrap}.map-toolbar{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:2px;z-index:4}.map-toolbar-btn{width:34px;height:34px;background:var(--color-elevated);border:1px solid var(--color-b-subtle);color:var(--color-text-sec);font-family:var(--font-family-mono);font-size:11px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius)}.map-toolbar-btn:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.map-toolbar-btn.active{background:var(--color-cyan);color:var(--color-void);border-color:var(--color-cyan)}.map-basemap-switcher{position:absolute;bottom:10px;left:10px;display:flex;flex-direction:row;gap:2px;z-index:4}.map-create-form{background:var(--color-surface);border:1px solid var(--color-cyan);padding:10px 12px;width:250px;z-index:10;font-family:var(--font-family-mono);font-size:11px;color:var(--color-text-pri);border-radius:var(--radius)}.map-create-form-title{color:var(--color-cyan);font-weight:700;font-size:12px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.map-create-form label{display:flex;flex-direction:column;gap:2px;margin-bottom:6px;color:var(--color-text-sec);font-size:9px;text-transform:uppercase}.map-create-form input,.map-create-form select{background:var(--color-elevated);border:1px solid var(--color-b-subtle);color:var(--color-text-pri);font-family:var(--font-family-mono);font-size:11px;padding:4px 6px;border-radius:var(--radius)}.map-create-form input:focus,.map-create-form select:focus{border-color:var(--color-cyan);outline:none}.map-create-form-row{display:flex;gap:8px}.map-create-form-row label{flex:1;min-width:0}.map-create-form-row input{width:100%;min-width:0;box-sizing:border-box}.map-create-form-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}.map-create-form-actions button{background:var(--color-elevated);border:1px solid var(--color-b-subtle);color:var(--color-text-pri);font-family:var(--font-family-mono);font-size:10px;padding:4px 10px;cursor:pointer;border-radius:var(--radius)}.map-create-form-actions button[type=submit]{border-color:var(--color-cyan);color:var(--color-cyan)}.map-create-form-actions button:hover{border-color:var(--color-cyan)}.map-create-form-actions button:disabled{opacity:.5;cursor:default}.map-popup-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9}.map-popup{background:var(--color-surface);border:1px solid var(--color-b-subtle);padding:10px 12px;width:300px;z-index:10;font-family:var(--font-family-mono);font-size:11px;color:var(--color-text-pri);border-radius:var(--radius)}.map-popup-close{position:absolute;top:4px;right:6px;background:none;border:none;color:var(--color-text-mut);font-size:14px;cursor:pointer;font-family:var(--font-family-mono)}.map-popup-close:hover{color:var(--oe-on-primary)}.map-popup-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.map-popup-title{color:var(--color-cyan);font-weight:700;font-size:12px}.map-popup-subtitle{color:var(--color-text-sec);font-size:10px}.map-popup-detail{color:var(--color-text-sec);font-size:10px;margin-bottom:2px}.map-popup-section{border-top:1px solid var(--color-b-subtle);margin-top:6px;padding-top:6px}.map-popup-section-title{color:var(--color-text-mut);font-size:9px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.map-popup-crew{display:flex;gap:6px;padding:2px 0;cursor:pointer;font-size:10px}.map-popup-crew:hover{color:var(--color-cyan)}.map-popup-crew--name{color:var(--color-green);font-weight:700;white-space:nowrap}.map-popup-crew--task{color:var(--color-text-sec);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-popup-row{display:flex;justify-content:space-between;padding:1px 0}.map-popup-cost{color:var(--color-green);font-weight:700}.map-popup-total{border-top:1px solid var(--color-b-subtle);margin-top:4px;padding-top:4px;font-weight:700}.map-popup-empty{color:var(--color-text-mut);font-style:italic;margin-top:6px}.map-popup-note-text{background:var(--color-elevated);padding:6px 8px;margin:4px 0;white-space:pre-wrap;cursor:pointer;border-radius:var(--radius)}.map-popup-note-text:hover{border:1px solid var(--color-magenta);margin:3px -1px}.row-panel{height:100%;background:var(--color-surface);border-top:1px solid var(--color-elevated);display:flex;flex-direction:column;overflow:hidden;font-family:var(--font-family-mono)}.row-panel--vertical{overflow-y:auto;border-top:none}.rp-group{border-bottom:1px solid var(--color-elevated)}.rp-group-header{color:var(--color-text-pri);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;padding:6px 10px;cursor:pointer;position:sticky;top:0;background:var(--color-surface);z-index:2;-webkit-user-select:none;-moz-user-select:none;user-select:none}.rp-group-header:hover{color:var(--color-text-pri)}.rp-group-chevron{font-size:9px;margin-right:4px;display:inline-block;width:10px}.row-panel-header{display:none}.row-panel-body{flex:1;overflow:hidden;display:flex;flex-direction:row;gap:0}.rp-column{flex:1;min-width:0;border-right:1px solid var(--color-elevated);overflow-y:auto;overflow-x:hidden}.rp-column:last-child{border-right:none}.rp-column:empty{display:none}.rp-section-header{color:var(--color-text-pri);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;padding:6px 10px 4px;border-bottom:1px solid var(--color-elevated);position:sticky;top:0;background:var(--color-surface);z-index:1}.rp-layer{padding:2px 10px;cursor:pointer;font-size:11px;display:flex;align-items:center;gap:6px;line-height:1.4}.rp-layer:hover{color:var(--color-text-pri)}.rp-layer--on{color:var(--color-green)}.rp-layer--off{color:var(--color-text-mut)}.rp-layer-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.rp-layer-count{margin-left:auto;font-size:9px;color:var(--color-text-mut)}.rp-layer--fixed{cursor:default;opacity:.7}.rp-layer--ref{padding-left:20px;font-size:10px}.rp-section-card{padding:4px 10px;margin:2px 6px;background:var(--color-elevated);border-left:3px solid;cursor:pointer;transition:background .15s}.rp-section-card:hover{background:var(--oe-surface-hover)}.rp-section-card--name{font-size:10px;font-weight:700;margin-bottom:1px}.rp-section-card--kp{font-size:9px;color:var(--color-magenta)}.rp-section-card--detail{font-size:9px;color:var(--color-text-mut);margin-top:1px}.rp-feature{padding:2px 10px;font-size:10px;display:flex;align-items:center;gap:6px}.rp-feature--water{color:var(--color-cyan)}.rp-feature--road{color:var(--color-red)}.rp-feature--rail{color:var(--color-yellow)}.rp-feature--kp{color:var(--color-text-mut);margin-left:auto;font-size:9px}.rp-checkbox{width:12px;height:12px;flex-shrink:0;accent-color:var(--color-cyan);cursor:pointer;margin:0}.rp-layer-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;cursor:pointer}.rp-layer-label:hover{color:var(--color-cyan)}.rp-folder-header{font-weight:700;color:var(--color-text-sec);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.rp-folder-header:hover{color:var(--color-text-pri)}.rp-folder-chevron{font-size:10px;width:12px;flex-shrink:0;text-align:center}.rp-section-header--estimating{color:var(--color-green)}.rp-section-header--reference{color:var(--color-cyan)}.rp-minor-drawer{padding:2px 10px;font-size:10px;color:var(--color-text-mut);cursor:pointer}.rp-minor-drawer:hover{color:var(--color-text-sec)}.rp-context-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}.rp-context-menu{position:fixed;z-index:1000;background:var(--color-elevated);border:1px solid var(--color-b-subtle);border-radius:2px;padding:4px 0;min-width:160px;font-family:var(--font-family-mono);font-size:11px}.rp-context-menu button{display:block;width:100%;padding:4px 12px;background:none;border:none;color:var(--color-text-pri);text-align:left;cursor:pointer;font-family:inherit;font-size:inherit}.rp-context-menu button:hover{background:var(--color-surface);color:var(--color-cyan)}.rp-context-divider{height:1px;background:var(--color-b-subtle);margin:4px 0}.rp-coverage-bar{padding:4px 10px;display:flex;align-items:center;gap:8px}.rp-coverage-bar--track{flex:1;height:4px;background:var(--oe-surface-hover);border-radius:2px;overflow:hidden}.rp-coverage-bar--fill{height:100%;border-radius:2px;transition:width .3s ease}.rp-coverage-bar--label{font-size:9px;color:var(--color-magenta);white-space:nowrap}.rp-section-card--coverage{font-size:8px;color:var(--color-text-mut);margin-top:1px}.rp-section-card--coverage-full{color:var(--color-green)}.rp-section-card--name{display:flex;justify-content:space-between;align-items:center}.rp-section-card--zoom{font-size:12px;opacity:.4;cursor:pointer}.rp-section-card--zoom:hover{opacity:1;color:var(--color-cyan)}.rp-section-crews{padding:2px 10px 4px 16px}.rp-section-crew{display:flex;align-items:baseline;gap:6px;padding:1px 0;font-size:9px;color:var(--color-text-sec)}.rp-section-crew--name{color:var(--color-green);font-weight:700;white-space:nowrap}.rp-section-crew--task{color:var(--color-text-mut);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.rp-section-crew--qty{margin-left:auto;white-space:nowrap;color:var(--color-magenta)}.rp-section-crew-empty{font-size:9px;color:var(--color-text-mut);font-style:italic;padding:2px 0}.rp-artifact-link{padding:4px 10px;font-size:9px;color:var(--color-cyan);cursor:pointer;opacity:.7}.rp-artifact-link:hover{opacity:1;text-decoration:underline}.rp-group-card{padding:4px 10px;margin:2px 6px;background:var(--color-elevated);border-left:3px solid var(--color-cyan);cursor:pointer;transition:background .15s}.rp-group-card:hover{background:var(--oe-surface-hover)}.rp-group-card--name{font-size:10px;font-weight:700;color:var(--color-cyan);margin-bottom:1px}.rp-group-card--meta{font-size:9px;color:var(--color-text-mut)}.rp-group-card--linked{color:var(--color-green)}.rp-group-card--unlinked{color:var(--color-yellow)}.rp-feature--ungrouped{padding-left:20px;opacity:.5;font-size:10px}.sections-summary{padding:8px 16px;font-size:11px;color:var(--color-magenta)}.sections-editable{cursor:pointer;border-bottom:1px dashed var(--color-b-active);padding:1px 2px}.sections-editable:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.sections-edit-input{background:var(--color-void);border:1px solid var(--color-cyan);color:var(--color-cyan);font-family:var(--font-family-mono);font-size:11px;padding:1px 4px;width:100%;outline:none}.sections-terrain-select{background:var(--color-void);border:1px solid var(--color-b-subtle);color:var(--color-text-pri);font-family:var(--font-family-mono);font-size:10px;padding:1px 2px;outline:none}.sections-terrain-select:focus{border-color:var(--color-cyan)}.sections-wbs-links{display:flex;flex-wrap:wrap;gap:4px}.sections-wbs-chip{font-size:9px;color:var(--color-cyan);background:var(--color-void);border:1px solid var(--color-b-subtle);padding:1px 6px;border-radius:2px;cursor:pointer}.sections-wbs-chip:hover{border-color:var(--color-cyan)}.sections-no-links{color:var(--color-text-mut);font-size:9px;font-style:italic}.sections-delete-btn{background:none;border:none;color:var(--color-text-mut);cursor:pointer;font-family:var(--font-family-mono);font-size:11px;padding:2px 6px}.sections-delete-btn:hover{color:var(--color-red)}.fg-summary{padding:8px 16px;font-size:11px;color:var(--color-cyan)}.fg-summary--warn{color:var(--color-yellow)}.fg-summary-divider{margin:0 6px;color:var(--color-text-mut)}.fg-summary-toggle{margin-left:6px;background:transparent;border:none;color:var(--color-cyan);font-family:var(--font-mono);font-size:11px;cursor:pointer;padding:0}.fg-summary-toggle:hover{text-decoration:underline}.fg-expand-btn{cursor:pointer;color:var(--color-text-mut);font-size:10px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fg-expand-btn:hover{color:var(--color-cyan)}.fg-row-expanded{background:var(--color-elevated)}.fg-members-cell{padding:4px 8px 8px 24px!important;background:var(--color-void)}.fg-members-table{width:100%;border-collapse:collapse}.fg-members-table td,.fg-members-table th{padding:2px 6px}.fg-no-members{font-size:10px;color:var(--color-text-mut);padding:4px 8px;font-style:italic}.fg-edit-input{background:var(--color-void);border:1px solid var(--color-b-subtle);color:var(--color-text-pri);font-family:var(--font-mono);font-size:11px;padding:2px 6px;border-radius:3px;width:100%;box-sizing:border-box}.fg-edit-input:focus{outline:none;border-color:var(--color-cyan)}.fg-edit-input--num{width:70px;text-align:right}.fg-edit-input--narrow{width:60px}.fg-action-btn{background:transparent;border:1px solid var(--color-b-subtle);color:var(--color-text-sec);font-family:var(--font-mono);font-size:10px;padding:2px 6px;margin-right:4px;border-radius:3px;cursor:pointer}.fg-action-btn:hover:not(:disabled){color:var(--color-cyan);border-color:var(--color-cyan)}.fg-action-btn:disabled{opacity:.4;cursor:not-allowed}.fg-action-btn--save{color:var(--color-cyan);border-color:var(--color-cyan)}.fg-action-btn--danger{color:var(--color-red);border-color:#d4505059}.fg-action-btn--danger:hover:not(:disabled){color:var(--color-red);border-color:var(--color-red);background:#d4505014}.fg-ungrouped-toolbar{display:flex;align-items:center;gap:8px;padding:6px 16px;background:var(--color-surface);border-bottom:1px solid var(--color-b-subtle);font-size:11px}.fg-ungrouped-count{color:var(--color-text-sec);margin-right:auto}.fg-assign-select{background:var(--color-void);border:1px solid var(--color-b-subtle);color:var(--color-text-pri);font-family:var(--font-mono);font-size:11px;padding:2px 6px;border-radius:3px}.fg-assign-select:disabled{opacity:.4;cursor:not-allowed}.td-chart{display:flex;flex-direction:column;height:100%;background:var(--color-surface);color:var(--color-text-pri);font-family:JetBrains Mono,monospace}.td-toolbar{display:flex;align-items:center;gap:12px;padding:6px 12px;background:var(--color-surface);border-bottom:1px solid var(--color-b-active);flex-shrink:0;font-size:11px}.td-toolbar-group{display:flex;align-items:center;gap:4px}.td-toolbar-label{color:var(--color-text-mut);margin-right:4px;text-transform:uppercase;font-size:10px;letter-spacing:.5px}.td-toolbar-btn{background:var(--color-elevated);border:1px solid var(--color-b-active);color:var(--color-text-sec);padding:3px 8px;border-radius:2px;cursor:pointer;font-family:JetBrains Mono,monospace;font-size:11px;transition:all .15s}.td-toolbar-btn:hover{background:var(--color-b-active);color:var(--color-text-pri)}.td-toolbar-btn--active{background:var(--color-cyan);color:var(--color-void);border-color:var(--color-cyan)}.td-toolbar-btn--active:hover{background:var(--oe-primary-hover)}.td-toolbar-select{background:var(--color-elevated);border:1px solid var(--color-b-active);color:var(--color-text-pri);padding:3px 8px;border-radius:2px;font-family:JetBrains Mono,monospace;font-size:11px;cursor:pointer}.td-toolbar-select:focus{outline:none;border-color:var(--color-cyan)}.td-toolbar-spacer{flex:1}.td-toolbar-legend{display:flex;align-items:center;gap:8px}.td-legend-item{display:flex;align-items:center;gap:4px;color:var(--color-text-mut);font-size:10px}.td-legend-swatch{width:10px;height:3px;border-radius:1px}.td-fill{flex:1;overflow:hidden;position:relative;background:var(--color-surface)}.td-svg{display:block}.td-section-label{fill:var(--color-text-sec);font-size:10px;font-family:JetBrains Mono,monospace}.td-grid-line{stroke:var(--color-b-active);stroke-width:.5}.td-grid-line--major{stroke:var(--color-b-active);stroke-width:1}.td-axis-label{fill:var(--color-text-sec);font-size:10px;font-family:JetBrains Mono,monospace}.td-axis-label--kp{text-anchor:middle;dominant-baseline:hanging}.td-axis-label--date{text-anchor:end;dominant-baseline:middle}.td-today-line{stroke:var(--color-red);stroke-width:1.5;stroke-dasharray:6 3}.td-today-label{fill:var(--color-red);font-size:9px;font-family:JetBrains Mono,monospace;text-anchor:end}.td-crew-line{stroke-width:1.8;stroke-linecap:round;cursor:pointer;transition:stroke-width .1s}.td-crew-line:hover{stroke-width:3.2}.td-crew-connector{stroke-width:1;stroke-dasharray:4 3;opacity:.5}.td-crew-dot{cursor:pointer;transition:r .1s}.td-crew-dot:hover{r:5}.td-crew-label{font-size:10px;font-family:JetBrains Mono,monospace;font-weight:600;pointer-events:none}.td-restriction-rect{pointer-events:none}.td-restriction-label{fill:var(--color-yellow);font-size:9px;font-family:JetBrains Mono,monospace;pointer-events:none}.td-feature-line{stroke:var(--color-cyan);stroke-width:.5;stroke-dasharray:3 4;opacity:.4}.td-feature-label{fill:var(--color-cyan);font-size:8px;font-family:JetBrains Mono,monospace;opacity:.5}.td-non-working{pointer-events:none}.td-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100}.td-popup{position:fixed;z-index:101;background:var(--color-surface);border:1px solid var(--color-b-active);border-radius:2px;padding:10px 14px;min-width:220px;max-width:320px;box-shadow:0 4px 16px #00000080;font-size:11px;line-height:1.6}.td-popup-crew{font-size:13px;font-weight:600;margin-bottom:6px}.td-popup-row{display:flex;justify-content:space-between;gap:12px}.td-popup-label{color:var(--color-text-mut)}.td-popup-value{color:var(--color-text-pri);text-align:right}.td-popup-link{display:block;margin-top:8px;padding-top:6px;border-top:1px solid var(--color-b-active);color:var(--color-cyan);cursor:pointer;text-decoration:none;font-size:11px}.td-popup-link:hover{color:var(--oe-primary-hover)}.td-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-mut);font-size:13px;font-style:italic}.td-annotation-dot{pointer-events:none}.td-annotation-label{font-size:8px;font-family:JetBrains Mono,monospace;pointer-events:none}.td-toolbar-btn--placing{background:#d4a84326;color:var(--color-yellow);border-color:var(--color-yellow);animation:td-placing-pulse 1.2s ease-in-out infinite}.td-toolbar-btn--placing:hover{background:#d4a84340;color:var(--color-yellow)}@keyframes td-placing-pulse{0%,to{opacity:1}50%{opacity:.6}}.td-form-input{width:100%;background:var(--color-void);border:1px solid var(--color-b-active);color:var(--color-text-pri);padding:4px 7px;border-radius:2px;font-family:JetBrains Mono,monospace;font-size:11px;box-sizing:border-box}.td-form-input:focus{outline:none;border-color:var(--color-yellow)}.td-form-select{width:100%;background:var(--color-void);border:1px solid var(--color-b-active);color:var(--color-text-pri);padding:4px 7px;border-radius:2px;font-family:JetBrains Mono,monospace;font-size:11px;cursor:pointer;box-sizing:border-box}.td-form-select:focus{outline:none;border-color:var(--color-yellow)}.td-form-btn{background:var(--color-elevated);border:1px solid var(--color-b-active);color:var(--color-text-sec);padding:3px 10px;border-radius:2px;cursor:pointer;font-family:JetBrains Mono,monospace;font-size:11px;transition:all .15s}.td-form-btn:hover{background:var(--color-b-active);color:var(--color-text-pri)}.td-form-btn:disabled{opacity:.4;cursor:not-allowed}.td-form-btn--primary{background:#d4a84326;border-color:var(--color-yellow);color:var(--color-yellow)}.td-form-btn--primary:hover:not(:disabled){background:#d4a84340;color:var(--color-yellow)}.td-form-btn--danger{background:#ff33551a;border-color:var(--color-red);color:var(--color-red)}.td-form-btn--danger:hover:not(:disabled){background:#f353}.mc-shell{max-width:1100px;margin:0 auto;padding:32px 40px;font-family:var(--font-family-mono)}.mc-identity{display:flex;align-items:baseline;gap:12px;padding-bottom:20px;border-bottom:1px solid var(--color-b-subtle)}.mc-identity-title{font-size:14px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--oe-mc-accent);margin:0}.mc-tag{font-size:10px;color:var(--color-text-mut);letter-spacing:.08em}.mc-badge{font-size:9px;color:var(--oe-mc-accent);border:1px solid rgba(255,0,170,.3);padding:2px 8px;letter-spacing:.1em;text-transform:uppercase}.mc-actions{margin-left:auto;display:flex;gap:8px}.mc-btn{font-family:inherit;font-size:10px;padding:4px 12px;border:1px solid rgba(255,0,170,.3);color:var(--oe-mc-accent);background:transparent;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.mc-btn:hover{background:#ff00aa0d}.mc-btn-active,.mc-btn-run{background:#ff00aa1a;border-color:var(--oe-mc-accent)}.mc-btn:disabled{opacity:.3;cursor:default}.mc-hero{padding:32px 0;border-bottom:1px solid var(--color-b-subtle)}.mc-hero-question{font-size:13px;color:var(--color-text-sec);margin-bottom:16px;line-height:1.5}.mc-hero-grid{display:flex;gap:40px;align-items:baseline;flex-wrap:wrap}.mc-hero-item{display:flex;flex-direction:column;gap:4px}.mc-hero-label{font-size:10px;color:var(--color-text-mut);letter-spacing:.1em;text-transform:uppercase}.mc-hero-value{font-size:28px;font-weight:700;font-variant-numeric:tabular-nums}.mc-hero-explain{font-size:10px;color:var(--color-text-sec);max-width:180px;line-height:1.4}.mc-hero-divider{width:1px;height:48px;background:var(--color-surface)}.mc-section{padding:28px 0;border-bottom:1px solid var(--color-b-subtle)}.mc-section:last-child{border-bottom:none}.mc-section-title{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--oe-mc-accent)}.mc-section-desc{font-size:11px;color:var(--color-text-sec);margin-top:4px;line-height:1.5;max-width:700px}.mc-conf-table{width:100%;max-width:640px;border-collapse:collapse;margin-top:16px}.mc-conf-table th{text-align:left;padding:5px 10px;font-size:10px;font-weight:500;letter-spacing:.06em;color:var(--color-text-mut);text-transform:uppercase;border-bottom:1px solid var(--color-b-active)}.mc-conf-table th:nth-child(2),.mc-conf-table th:nth-child(3){text-align:right}.mc-conf-table td{padding:5px 10px;font-size:12px;border-bottom:1px solid var(--color-b-subtle);font-variant-numeric:tabular-nums}.mc-conf-table td:nth-child(2),.mc-conf-table td:nth-child(3){text-align:right}.mc-row-key{background:var(--color-void)}.mc-row-key td{padding:7px 10px;font-weight:600;border-bottom:1px solid var(--color-b-active)}.mc-meaning{font-size:10px;color:var(--color-text-mut)}.mc-tornado-table{width:100%;border-collapse:collapse;margin-top:16px}.mc-tornado-table th{text-align:left;padding:5px 10px;font-size:10px;font-weight:500;letter-spacing:.06em;color:var(--color-text-mut);text-transform:uppercase;border-bottom:1px solid var(--color-b-active)}.mc-tornado-table td{padding:5px 10px;font-size:12px;border-bottom:1px solid var(--color-b-subtle);font-variant-numeric:tabular-nums}.mc-tornado-bar{position:relative;height:14px}.mc-tornado-center{position:absolute;left:50%;width:1px;height:100%;background:var(--color-b-active)}.mc-tornado-low{position:absolute;height:12px;background:var(--color-green);top:1px}.mc-tornado-high{position:absolute;left:50%;height:12px;background:var(--color-red);top:1px}.mc-defaults{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--color-surface);margin-top:16px;border:1px solid var(--color-b-subtle)}.mc-defaults-cell{background:var(--color-void);padding:10px 12px}.mc-defaults-header{background:var(--color-void);padding:6px 12px;font-size:10px;font-weight:500;letter-spacing:.06em;color:var(--color-text-mut);text-transform:uppercase}.mc-defaults-label{font-size:10px;color:var(--color-text-sec)}.mc-input{font-family:inherit;font-size:12px;background:var(--color-surface);border:1px solid var(--color-b-active);color:var(--color-text-pri);padding:3px 6px;width:52px;text-align:right;font-variant-numeric:tabular-nums}.mc-input:focus{outline:none;border-color:var(--oe-mc-accent)}.mc-input-invalid{border-color:var(--color-red)}.mc-dist-select{font-family:inherit;font-size:10px;background:var(--color-surface);border:1px solid var(--color-b-active);color:var(--color-text-sec);padding:3px 6px}.mc-hint{font-size:10px;color:var(--color-text-mut);margin-top:8px;line-height:1.4}.mc-node-table{width:100%;border-collapse:collapse;margin-top:16px}.mc-node-table th{text-align:left;padding:5px 10px;font-size:10px;font-weight:500;letter-spacing:.06em;color:var(--color-text-mut);text-transform:uppercase;border-bottom:1px solid var(--color-b-active);white-space:nowrap}.mc-node-table td{padding:0;font-size:12px;border-bottom:1px solid var(--color-b-subtle);vertical-align:top}.mc-node-row{cursor:pointer}.mc-node-row:hover{background:var(--color-void)}.mc-node-row td{padding:6px 10px}.mc-node-configured{color:var(--oe-mc-accent);font-size:10px}.mc-node-default{color:var(--color-text-mut);font-size:10px}.mc-node-detail{background:var(--color-void);border-top:1px solid var(--color-b-subtle)}.mc-node-detail-inner{padding:12px 10px 16px 32px}.mc-node-detail-head{display:flex;align-items:baseline;gap:12px;margin-bottom:10px}.mc-node-detail-name{font-size:12px;font-weight:600;color:var(--oe-mc-accent)}.mc-cat-grid{display:grid;grid-template-columns:160px repeat(3,60px) 80px;gap:0;align-items:center}.mc-cat-header{font-size:9px;font-weight:500;letter-spacing:.06em;color:var(--color-text-mut);text-transform:uppercase;padding:4px 0;border-bottom:1px solid var(--color-b-subtle)}.mc-cat-label{font-size:11px;color:var(--color-text-sec);padding:5px 0;border-bottom:1px solid rgba(26,26,46,.5)}.mc-cat-input-cell{padding:4px 2px;border-bottom:1px solid rgba(26,26,46,.5);text-align:right}.mc-cat-input{font-family:inherit;font-size:11px;background:var(--color-surface);border:1px solid var(--color-b-active);color:var(--color-text-pri);padding:2px 4px;width:48px;text-align:right;font-variant-numeric:tabular-nums}.mc-cat-input:focus{outline:none;border-color:var(--oe-mc-accent)}.mc-cat-input-inherited{color:var(--color-text-mut);border-color:var(--color-b-subtle)}.mc-cat-range-bar{display:flex;align-items:center;height:10px}.mc-cat-range-low{background:#39ff1426;height:100%}.mc-cat-range-high{background:#ff335526;height:100%}.mc-btn-sm{font-family:inherit;font-size:9px;padding:2px 8px;border:1px solid var(--color-b-active);color:var(--color-text-sec);background:transparent;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.mc-btn-sm:hover{border-color:var(--oe-mc-accent);color:var(--oe-mc-accent)}.mc-footer{padding-top:20px;display:flex;gap:20px;font-size:10px;color:var(--color-text-mut);border-top:1px solid var(--color-b-subtle)}.mc-chart{margin-top:16px}.mc-chart-area{position:relative;height:220px;border-left:1px solid var(--color-elevated);border-bottom:1px solid var(--color-elevated);margin-left:44px}.mc-chart-ylabel{position:absolute;font-size:9px;color:var(--color-text-mut)}.mc-chart-xaxis{display:flex;justify-content:space-between;font-size:9px;color:var(--color-text-mut);margin-top:4px;margin-left:44px}.mc-chart-legend{display:flex;gap:20px;margin-top:10px;margin-left:44px;font-size:10px}.mc-chart-legend-item{display:flex;align-items:center;gap:6px;color:var(--color-text-sec)}.wiki-artifact{max-width:600px;margin:80px auto;padding:0 24px}.wiki-artifact-header{margin-bottom:16px}.wiki-artifact-header h2{font-size:20px;font-weight:700;color:var(--color-text-pri);margin:0 0 8px}.wiki-artifact-desc{font-size:13px;color:var(--color-text-sec);line-height:1.6;margin:0 0 24px}.wiki-progress{display:flex;flex-direction:row;align-items:center;gap:10px;color:var(--color-cyan);font-size:13px}.wiki-spinner{width:16px;height:16px;border:2px solid rgba(126,200,212,.2);border-top-color:var(--color-cyan);border-radius:50%;flex-shrink:0;animation:wiki-spin .7s linear infinite}@keyframes wiki-spin{to{transform:rotate(360deg)}}.wiki-progress-msg{color:var(--color-text-sec)}.wiki-error{color:var(--color-red);font-size:13px;margin-bottom:16px}.wiki-result{background:var(--color-surface);border:1px solid var(--color-b-subtle);border-radius:3px;padding:20px 24px;display:flex;flex-direction:column;gap:12px}.wiki-result-label{color:var(--color-green);font-size:13px;font-weight:700}.wiki-result-meta{font-size:11px;color:var(--color-text-mut);line-height:1.5}.wiki-result-actions{display:flex;flex-direction:row;gap:8px;margin-top:4px}.act-rail{width:32px;background:var(--oe-surface);display:flex;flex-direction:column;border-right:1px solid var(--oe-b-subtle);height:100%}.act-rail-top{display:flex;flex-direction:column}.act-rail-bottom{margin-top:auto;display:flex;flex-direction:column}.act-item{width:32px;height:32px;background:transparent;border:none;border-left:2px solid transparent;margin-left:-2px;color:var(--oe-text-mut);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;padding:0}.act-item:hover{color:var(--oe-text-pri)}.act-item.active{color:var(--oe-text-pri);border-left-color:var(--oe-cyan)}.act-badge{position:absolute;top:4px;right:4px;min-width:10px;height:10px;padding:0 3px;background:var(--oe-yellow);color:#0a1016;font-size:8px;font-weight:700;border-radius:6px;display:flex;align-items:center;justify-content:center;line-height:1}.jones-panel{background:var(--oe-surface);border-left:1px solid var(--oe-b-subtle);height:100%;display:flex;flex-direction:column}.jones-panel--rail{width:44px}.jones-panel--expanded{width:370px}.jones-rail{display:flex;flex-direction:column;align-items:center;padding:8px 0;gap:10px;height:100%}.jones-rail .avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--oe-cyan),var(--oe-blue));display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--oe-on-primary);cursor:pointer;position:relative;border:none;transition:var(--oe-motion-fast)}.jones-rail .avatar:hover{filter:brightness(1.1)}.jones-rail .avatar:after{content:"";position:absolute;bottom:-1px;right:-1px;width:8px;height:8px;border-radius:50%;background:var(--oe-green);border:2px solid var(--oe-surface)}.jones-rail .sep{width:20px;height:1px;background:var(--oe-b-subtle)}.jones-rail .ic{color:var(--oe-text-mut);font-size:14px;cursor:pointer;padding:4px;position:relative;background:transparent;border:none;transition:color var(--oe-motion-fast)}.jones-rail .ic:hover{color:var(--oe-text-pri)}.jones-rail .ic .b{position:absolute;background:var(--oe-yellow);color:var(--oe-on-warning);font-size:8px;font-weight:700;border-radius:6px;padding:0 3px;margin-left:-4px;margin-top:-4px}.jones-rail .count{font-size:9px;color:var(--oe-text-mut);writing-mode:vertical-rl;transform:rotate(180deg);margin-top:auto;padding:10px 0;letter-spacing:.1em}.jones-head{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--oe-b-subtle);flex-wrap:nowrap}.jones-head .avatar-sm{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,var(--oe-cyan),var(--oe-blue));display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:var(--oe-on-primary);flex-shrink:0}.jones-head .name{color:var(--oe-text-pri);font-weight:600;font-size:12px;white-space:nowrap}.jones-head .ctx{color:var(--oe-text-mut);font-size:11px;margin-left:auto;display:flex;align-items:center;gap:4px;white-space:nowrap;flex-shrink:0}.jones-head .dot{width:4px;height:4px;border-radius:50%}.jones-head .dot--green{background:var(--oe-green)}.jones-head .collapse{margin-left:8px;color:var(--oe-text-mut);background:transparent;border:none;cursor:pointer;transition:color var(--oe-motion-fast);flex-shrink:0;padding:4px}.jones-head .collapse:hover{color:var(--oe-text-pri)}.jones-body{flex:1;overflow:auto;display:flex;flex-direction:column}.audit-page{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--color-void);font-family:var(--font-family-mono)}.audit-page[data-status=pass]{border-top:3px solid var(--color-green)}.audit-page[data-status=fail]{border-top:3px solid var(--color-red)}.audit-page[data-status=loading]{border-top:3px solid var(--color-b-subtle)}.audit-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--color-surface);border-bottom:1px solid var(--color-b-subtle);flex-shrink:0}.audit-header-title{font-size:13px;font-weight:700;letter-spacing:.08em;color:var(--color-cyan)}.audit-header-project{font-size:12px;color:var(--color-text-mut)}.audit-header-refreshed{margin-left:auto;font-size:11px;color:var(--color-text-mut)}.audit-refresh-btn{margin-left:12px;padding:3px 10px;background:transparent;border:1px solid var(--color-b-subtle);border-radius:var(--radius);color:var(--color-cyan);font-family:var(--font-family-mono);font-size:11px;cursor:pointer}.audit-refresh-btn:hover{border-color:var(--color-cyan)}.audit-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:32px}.audit-section-header{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--color-text-mut);text-transform:uppercase;margin-bottom:12px;padding-bottom:6px;border-bottom:1px solid var(--color-b-subtle)}.audit-counts{display:flex;gap:24px;margin-bottom:12px;font-size:12px;color:var(--color-text-sec)}.audit-counts-item strong{color:var(--color-cyan)}.audit-counts-item.failing strong{color:var(--color-red)}.audit-counts-item.pending strong{color:var(--color-yellow)}.audit-counts-item.passing strong{color:var(--color-green)}.audit-totals{display:flex;gap:32px;padding:10px 16px;background:var(--color-surface);border:1px solid var(--color-b-subtle);border-radius:var(--radius);margin-bottom:16px;flex-wrap:wrap}.audit-total-item{display:flex;flex-direction:column;gap:2px}.audit-total-label{font-size:10px;color:var(--color-text-mut);text-transform:uppercase;letter-spacing:.08em}.audit-total-value{font-size:14px;font-weight:700;color:var(--color-cyan)}.audit-total-delta{font-size:12px}.audit-total-delta.pass{color:var(--color-green)}.audit-total-delta.fail{color:var(--color-red)}.audit-table{width:100%;border-collapse:collapse;font-size:12px}.audit-table th{text-align:left;font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--color-text-mut);text-transform:uppercase;padding:4px 8px;border-bottom:1px solid var(--color-b-subtle)}.audit-table td{padding:5px 8px;border-bottom:1px solid var(--color-b-subtle);color:var(--color-text-sec);white-space:nowrap}.audit-table tr.pass td{color:var(--color-text-mut)}.audit-table tr.fail td{color:var(--color-text-pri)}.audit-table tr.fail{border-left:2px solid var(--color-red)}.audit-table tr.pending td{color:var(--color-text-mut)}.audit-table tr.pending{border-left:2px solid var(--color-yellow)}.audit-table tr.unauditable td{color:var(--color-text-mut)}.audit-status-pass{color:var(--color-green)}.audit-status-fail{color:var(--color-red)}.audit-status-pending{color:var(--color-yellow)}.audit-status-unauditable{color:var(--color-text-mut)}.audit-reasons{display:flex;gap:4px;flex-wrap:wrap}.audit-badge{font-size:9px;font-weight:700;letter-spacing:.06em;padding:1px 5px;border-radius:var(--radius);border:1px solid var(--color-red);color:var(--color-red)}.audit-violation-expected{color:var(--color-yellow)}.audit-violation-unexpected{color:var(--color-red)}.audit-violation-badge{font-size:10px;font-weight:700;letter-spacing:.06em;padding:1px 6px;border-radius:var(--radius)}.audit-violation-badge.expected{border:1px solid var(--color-yellow);color:var(--color-yellow)}.audit-violation-badge.unexpected{border:1px solid var(--color-red);color:var(--color-red)}.audit-counts-item.expected{color:var(--color-yellow)}.audit-rollup-section{margin-top:20px}.audit-calendar-counts{margin-bottom:16px}.audit-loading{padding:12px 0;font-size:12px;color:var(--color-cyan);font-family:var(--font-family-mono)}.audit-empty{padding:12px 0;font-size:12px;color:var(--color-green)}.audit-rollup-toggle{font-size:11px;color:var(--color-text-mut);cursor:pointer;margin-bottom:8px;background:none;border:none;font-family:var(--font-family-mono);padding:0}.audit-rollup-toggle:hover{color:var(--color-cyan)}.jones-v3-dev-panel{font-family:var(--font-mono);padding:16px 24px;background:var(--color-void);color:var(--color-text-pri);min-height:100vh}.jones-v3-dev-header{display:flex;align-items:center;gap:24px;margin-bottom:16px}.jones-v3-dev-header h1{font-size:16px;font-weight:700;margin:0}.jones-v3-dev-header nav button{margin-right:8px;padding:4px 12px;font-family:var(--font-mono);font-size:12px;background:transparent;border:1px solid var(--color-b-subtle);color:var(--color-text-pri);border-radius:3px;cursor:pointer}.jones-v3-dev-header nav button.active{background:var(--color-cyan);color:var(--color-void);border-color:var(--color-cyan)}.jones-v3-dev-header nav button:hover:not(.active){background:var(--color-elevated)}.jones-v3-table{width:100%;border-collapse:collapse;font-size:12px}.jones-v3-table th,.jones-v3-table td{padding:6px 8px;text-align:left;border-bottom:1px solid var(--color-elevated)}.jones-v3-table th{color:var(--color-text-sec);font-weight:400;text-transform:uppercase;font-size:10px}.jones-v3-table tr.reviewed{opacity:.4}.jones-v3-table tr.over-budget{background:#d450501a}.chip{display:inline-block;padding:2px 6px;border-radius:2px;font-size:10px;font-family:var(--font-mono);margin-right:4px}.chip.computed{background:var(--color-elevated);color:var(--color-text-sec)}.chip.missed{background:#d4505033;color:var(--color-red)}.chip.suggest{background:#7ec8d426;color:var(--color-cyan);border:none;cursor:pointer}.chip.suggest:hover{background:#7ec8d44d}.chip-delete{background:none;border:none;color:var(--color-text-mut);cursor:pointer;padding:0 2px;margin-left:4px;font-size:12px}.chip-delete:hover{color:var(--color-red)}.jones-v3-btn{font-family:var(--font-mono);font-size:11px;background:transparent;border:1px solid var(--color-b-subtle);color:var(--color-text-pri);border-radius:3px;padding:2px 8px;cursor:pointer}.jones-v3-btn:hover{background:var(--color-elevated)}.jones-v3-loading{color:var(--color-text-sec);padding:16px}.jones-v3-keywords{display:flex;flex-direction:column;gap:16px}.jones-v3-keyword-group h3{font-size:13px;font-weight:700;margin:0 0 8px;color:var(--color-cyan)}.jones-v3-chip-list{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.jones-v3-keyword-form{display:flex;gap:8px}.jones-v3-keyword-form input{font-family:var(--font-mono);font-size:12px;background:var(--color-surface);border:1px solid var(--color-b-subtle);color:var(--color-text-pri);border-radius:3px;padding:4px 8px;width:200px}.jones-v3-token-reality label{font-size:12px;margin-bottom:12px;display:block}.jones-v3-token-reality input[type=number]{font-family:var(--font-mono);font-size:12px;background:var(--color-surface);border:1px solid var(--color-b-subtle);color:var(--color-text-pri);border-radius:3px;padding:4px 8px;width:60px;margin-left:4px}:root{--color-void: #111118;--color-surface: #1a1a24;--color-elevated: #222230;--color-hover: #2a2a35;--color-cyan: #7ec8d4;--color-green: #4ec86a;--color-yellow: #d4a843;--color-red: #d45050;--color-blue: #5095d4;--color-magenta: #c87ea0;--color-text-pri: #d4d4d4;--color-text-sec: #888898;--color-text-mut: #555565;--color-b-subtle: #252530;--color-b-active: #2a2a38;--oe-bg: var(--color-void);--oe-surface: var(--color-surface);--oe-surface-alt: var(--color-elevated);--oe-border: var(--color-b-subtle);--oe-text: var(--color-text-pri);--oe-text-muted: var(--color-text-sec);--oe-primary: var(--color-cyan);--oe-primary-hover: #6ab8c4;--oe-accent: var(--color-cyan);--oe-danger: var(--color-red);--oe-success: var(--color-green);--oe-warning: var(--color-yellow);--oe-table-header: #161620;--oe-space-xs: 4px;--oe-space-sm: 8px;--oe-space-md: 12px;--oe-space-lg: 16px;--oe-space-xl: 20px;--oe-space-2xl: 24px;--oe-space-3xl: 32px;--spacing-row: 28px;--oe-radius-sm: 3px;--oe-radius-md: 3px;--oe-radius-lg: 3px;--oe-surface-hover: rgba(255, 255, 255, .03);--oe-surface-selected: rgba(126, 200, 212, .08);--oe-border-subtle: rgba(255, 255, 255, .04);--font-mono: "JetBrains Mono", "Fira Code", "Consolas", monospace;--font-family-mono: var(--font-mono);--oe-shadow-card: 0 1px 3px rgba(0, 0, 0, .4);--oe-shadow-soft: 0 1px 2px rgba(0, 0, 0, .3);--oe-shadow-elevated: 0 4px 12px rgba(0, 0, 0, .5);--oe-transition-expand: .2s cubic-bezier(.4, 0, .2, 1);--oe-motion-fast: .12s ease-out;--oe-motion-med: .18s ease-out;--oe-chart-grid: #2a2a30;--oe-chart-axis: #555565;--oe-map-section-band: #7ec8d4;--oe-map-marker-note: #d4a843;--oe-sync-dot-synced: #4ec86a;--oe-sync-dot-pending: #d4a843;--oe-sync-dot-error: #d45050;--oe-jones-user-chevron: #4ec86a;--oe-jones-assistant-dot: #7ec8d4;--oe-mc-accent: #ff00aa;--oe-mc-accent-hover: #d9008f;--oe-table-row-hover: rgba(255, 255, 255, .04);--oe-table-row-selected: rgba(126, 200, 212, .12);--oe-on-primary: #111118;--oe-on-warning: #111118;--oe-cyan: var(--color-cyan);--oe-cyan-hover: var(--oe-primary-hover);--oe-green: var(--color-green);--oe-yellow: var(--color-yellow);--oe-red: var(--color-red);--oe-blue: var(--color-blue);--oe-magenta: var(--color-magenta);--oe-text-pri: var(--color-text-pri);--oe-text-sec: var(--color-text-sec);--oe-text-mut: var(--color-text-mut);--oe-elevated: var(--color-elevated);--oe-hover: var(--color-hover);--oe-void: var(--color-void);--oe-b-subtle: var(--color-b-subtle);--oe-b-active: var(--color-b-active);--oe-radius: var(--oe-radius-sm);--oe-row: 28px;--oe-fs-base: 13px}:root[data-theme=light]{--color-void: #eef1f6;--color-surface: #f8f9fc;--color-elevated: #ffffff;--color-hover: #e8ecf1;--color-cyan: #1a73e8;--color-green: #188038;--color-yellow: #b06000;--color-red: #c5221f;--color-blue: #1a73e8;--color-magenta: #9c4a72;--color-text-pri: #202124;--color-text-sec: #5f6368;--color-text-mut: #80868b;--color-b-subtle: #e8eaed;--color-b-active: #dadce0;--oe-primary-hover: #1557b0;--oe-table-header: #f1f3f4;--oe-surface-hover: rgba(0, 0, 0, .04);--oe-surface-selected: rgba(26, 115, 232, .1);--oe-border-subtle: #e8eaed;--oe-shadow-card: 0 1px 2px rgba(60, 64, 67, .08);--oe-shadow-soft: 0 1px 1px rgba(60, 64, 67, .06);--oe-shadow-elevated: 0 4px 12px rgba(60, 64, 67, .15);--oe-chart-grid: #e8eaed;--oe-chart-axis: #80868b;--oe-map-section-band: #1a73e8;--oe-map-marker-note: #b06000;--oe-sync-dot-synced: #188038;--oe-sync-dot-pending: #b06000;--oe-sync-dot-error: #c5221f;--oe-jones-user-chevron: #188038;--oe-jones-assistant-dot: #1a73e8;--oe-mc-accent: #9c4a72;--oe-mc-accent-hover: #7a3858;--oe-table-row-hover: rgba(0, 0, 0, .04);--oe-table-row-selected: rgba(26, 115, 232, .12);--oe-on-primary: #ffffff;--oe-on-warning: #ffffff}.brand-prefix{color:var(--color-cyan);font-weight:700}.brand-hyphen{color:var(--color-cyan)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{font-family:var(--font-mono);background:var(--oe-bg);color:var(--oe-text);font-size:13px;line-height:1.4;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-b-subtle);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-b-active)}.dot-success,.dot-warning,.dot-error{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.dot-success{background:var(--color-green)}.dot-warning{background:var(--color-yellow)}.dot-error{background:var(--color-red)}.text-muted{color:var(--color-text-sec)}.text-green{color:var(--color-green)}.text-red{color:var(--color-red)}.btn-primary{background:var(--color-cyan);color:var(--oe-on-primary);border:none;padding:6px 14px;font-size:12px;font-weight:600;font-family:inherit;border-radius:2px;cursor:pointer;transition:background .15s}.link-primary{background:transparent;border:none;color:var(--color-cyan);font-size:12px;font-family:inherit;cursor:pointer;padding:2px 6px}@media print{.no-print{display:none!important}}.app-grid{display:grid;grid-template-rows:auto 1fr;height:100vh;overflow:hidden;transition:grid-template-columns .2s ease}.app-grid--jones-center{grid-template-columns:320px 1fr;grid-template-rows:auto 1fr auto;grid-template-areas:"header header" "sidebar jones" "sidebar kmz-bar"}.app-grid--artifact{grid-template-columns:320px 1fr 380px;grid-template-areas:"header header header" "sidebar center jones"}.app-grid--geo-home{grid-template-columns:280px 1fr 480px;grid-template-areas:"header header header" "sidebar center jones"}.geo-row-strip{height:140px;flex-shrink:0;overflow:hidden}.app-header{grid-area:header;display:flex;align-items:center;gap:16px;min-height:40px;padding:0 16px;background:var(--oe-surface);border-bottom:1px solid var(--oe-border)}.app-header-left{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-prefix{font-size:15px;font-weight:700;color:var(--color-cyan);letter-spacing:-.02em;flex-shrink:0}.app-header-title{font-size:13px;font-weight:600;margin:0;white-space:nowrap;text-transform:uppercase;letter-spacing:.02em}.app-header-code{font-size:11px;color:var(--oe-text-muted);letter-spacing:.02em}.header-beta-badge{background:var(--color-red);color:var(--oe-on-primary);font-size:10px;font-weight:700;letter-spacing:.1em;padding:2px 7px;border-radius:2px;line-height:1.4}.header-domain-badge{font-family:var(--font-family-mono);font-size:10px;font-weight:700;letter-spacing:.08em;padding:2px 8px;border-radius:var(--radius);border:1px solid;margin-left:8px}.header-domain-badge--pipeline{color:var(--color-cyan);border-color:var(--color-cyan)}.header-domain-badge--heavy_civil{color:var(--color-yellow);border-color:var(--color-yellow)}.header-domain-badge--facilities{color:var(--color-green);border-color:var(--color-green)}.app-header-right{margin-left:auto;display:flex;align-items:center;gap:10px;flex-shrink:0;font-size:11px}.header-session{color:var(--color-text-sec);font-weight:600}.header-time{color:var(--color-text-mut)}.header-status{color:var(--color-text-mut);font-weight:600;font-size:11px}.header-status--ok{color:var(--color-green)}.header-conn-group{display:inline-flex;align-items:center;gap:4px}.header-conn-label{color:var(--color-text-mut);font-weight:700;font-size:10px;letter-spacing:.06em}.header-conn-label.header-status--ok{color:var(--color-green)}.header-text-btn{background:transparent;border:none;color:var(--color-text-sec);font-size:11px;cursor:pointer;padding:4px 8px;font-family:inherit;transition:color .15s}.header-text-btn:hover{color:var(--color-cyan)}.header-icon-btn{width:28px;height:28px;border-radius:2px;border:none;background:transparent;color:var(--oe-text-muted);font-size:14px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s;text-decoration:none}.header-icon-btn:hover{background:var(--oe-surface-alt);color:var(--oe-text)}.app-sidebar{grid-area:sidebar;background:var(--oe-surface);border-right:1px solid var(--oe-border);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;font-size:12px}.sidebar-jones-toggle{border-bottom:1px solid var(--oe-border)}.sidebar-wbs-header{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--color-text-sec);padding:8px 12px 4px;text-transform:uppercase}.sidebar-wbs-tree{flex:1;overflow-y:auto;min-height:0;padding-bottom:4px;border-bottom:1px solid var(--oe-border)}.sidebar-wbs-node{display:flex;align-items:center;gap:4px;padding:4px 8px;cursor:pointer;transition:background .1s;white-space:nowrap;min-height:28px}.sidebar-wbs-node:hover{background:var(--color-hover)}.sidebar-wbs-node--selected{background:#00f0ff1a}.sidebar-wbs-marker{font-size:10px;color:var(--color-text-mut);flex-shrink:0;cursor:pointer;font-family:inherit;width:24px;text-align:center}.sidebar-wbs-marker--leaf{cursor:default}.sidebar-wbs-code{font-size:11px;font-weight:600;color:var(--color-cyan);flex-shrink:0}.sidebar-wbs-desc{font-size:11px;color:var(--color-text-sec);overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.sidebar-wbs-cost{font-size:10px;color:var(--color-text-mut);font-weight:600;flex-shrink:0;margin-left:auto;padding-left:8px}.sidebar-empty{font-size:11px;color:var(--color-text-mut);padding:8px 12px}.sidebar-section{border-bottom:1px solid var(--oe-border)}.sidebar-section-header{display:flex;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-sec);background:transparent;border:none;cursor:pointer;width:100%;text-align:left;font-family:inherit;transition:color .15s}.sidebar-section-header:hover{color:var(--color-text-pri)}.sidebar-section-chevron{font-size:9px;color:var(--color-text-mut);width:10px;flex-shrink:0}.sidebar-section-badge{font-size:10px;font-weight:700;color:var(--color-cyan);background:#00f0ff1a;padding:0 6px;border-radius:2px;margin-left:auto}.sidebar-section-body{padding:0 0 4px}.report-drawer-list{padding:2px 0}.report-drawer-item{display:flex;align-items:center;gap:6px;width:100%;padding:6px 12px;font-size:12px;color:var(--color-text-sec);background:transparent;border:none;cursor:pointer;font-family:inherit;text-align:left;transition:color .15s,background .15s}.report-drawer-item:hover{color:var(--color-text-pri);background:var(--color-hover)}.report-drawer-item--active{color:var(--color-cyan);font-weight:600}.report-drawer-chevron{font-size:8px;color:var(--color-text-mut)}.report-drawer-item--active .report-drawer-chevron{color:var(--color-cyan)}.app-center{grid-area:center;display:flex;flex-direction:column;overflow:hidden;background:var(--oe-bg)}.app-main{flex:1;overflow-y:auto;padding:20px 24px}.settings-tabs{display:flex;gap:4px;padding-bottom:8px;margin-bottom:16px;border-bottom:1px solid var(--oe-border)}.settings-tab{padding:8px 16px;background:transparent;border:none;color:var(--oe-text-muted);font-size:14px;cursor:pointer;border-radius:2px;transition:all .2s;text-decoration:none}.settings-tab:hover{background:var(--oe-surface-alt);color:var(--oe-text)}.settings-tab.active{background:var(--oe-primary);color:#fff}.placeholder-card{background:var(--oe-surface);box-shadow:var(--oe-shadow-card);border-radius:2px;padding:32px;text-align:center}.placeholder-card h2{font-size:18px;font-weight:600;margin-bottom:8px}.placeholder-card p{font-size:14px;color:var(--oe-text-muted)}@media (max-width: 768px){.app-grid{grid-template-columns:1fr;grid-template-areas:"header" "center"}.app-sidebar{display:none}}.topbar-sync-badge{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-family-mono);font-size:10px;color:var(--color-yellow);text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border:1px solid var(--color-yellow);border-radius:2px;animation:sync-pulse 1.5s ease-in-out infinite}.topbar-sync-dot{width:6px;height:6px;border-radius:50%;background:var(--color-yellow);animation:sync-blink .8s ease-in-out infinite}@keyframes sync-pulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes sync-blink{0%,to{opacity:.3}50%{opacity:1}}.jones-lock-banner{grid-column:1 / -1;display:flex;align-items:center;gap:8px;padding:6px 16px;background:#ffe60014;border-bottom:1px solid var(--color-yellow);font-family:var(--font-family-mono);font-size:11px;color:var(--color-yellow);letter-spacing:.03em}.kmz-processing-bar{grid-area:kmz-bar;display:flex;align-items:center;gap:8px;height:32px;padding:0 16px;background:var(--color-elevated);border-top:1px solid rgba(255,0,170,.25);font-family:var(--font-family-mono);font-size:11px;color:var(--color-magenta);letter-spacing:.03em}.kmz-spinner{width:14px;height:14px;border:2px solid rgba(255,0,170,.2);border-top-color:var(--color-magenta);border-radius:50%;animation:kmz-spin .8s linear infinite;flex-shrink:0}@keyframes kmz-spin{to{transform:rotate(360deg)}}.kmz-confirm-bar{display:flex;align-items:center;gap:10px;min-height:36px;padding:4px 16px;background:var(--color-elevated);border-bottom:1px solid rgba(255,0,170,.25);font-family:var(--font-family-mono);font-size:11px;color:var(--color-magenta);letter-spacing:.03em;flex-shrink:0}.kmz-confirm-label{flex-shrink:0;font-weight:600}.kmz-candidates{display:flex;gap:6px;flex-wrap:wrap}.kmz-candidate-btn{font-family:var(--font-family-mono);font-size:11px;padding:3px 10px;border:1px solid rgba(255,0,170,.4);border-radius:2px;background:transparent;color:var(--color-magenta);cursor:pointer;transition:background .15s,border-color .15s}.kmz-candidate-btn:hover{background:#ff00aa1f;border-color:var(--color-magenta)}.kmz-candidate-btn:disabled{opacity:.4;cursor:wait}.oe-table{width:100%;border-collapse:collapse;font-size:13px}.oe-table thead{background:var(--oe-table-header)}.oe-table th{text-align:left;padding:6px 12px;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--oe-text-muted);border-bottom:1px solid var(--oe-border);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.oe-table td{padding:5px 12px;border-bottom:1px solid rgba(255,255,255,.025);color:var(--oe-text);font-variant-numeric:tabular-nums}.oe-table tbody tr:hover{background:var(--color-hover)}.oe-table tbody tr.clickable{cursor:pointer}.oe-table .empty-row td{padding:32px 10px;text-align:center;color:var(--oe-text-muted)}.oe-section{background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;overflow:hidden}.text-muted{color:var(--oe-text-muted)}.text-danger{color:var(--oe-danger)}.badge{display:inline-block;padding:2px 8px;border-radius:2px;font-size:10px;font-weight:700;letter-spacing:.04em}.badge-default{background:var(--oe-surface-alt);color:var(--oe-text)}.badge-success{background:#39ff1426;color:var(--oe-success)}.badge-warning{background:#ffe60026;color:var(--oe-warning)}.badge-danger{background:#dc262626;color:var(--color-red)}.badge-primary{background:#00f0ff26;color:var(--oe-primary)}.oe-table tfoot td{border-bottom:none;padding-top:8px}.oe-table .text-right{text-align:right}.action-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.btn-primary{background:var(--oe-primary);color:var(--oe-on-primary);border:none;padding:6px 14px;border-radius:2px;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s}.btn-primary:hover{background:var(--oe-primary-hover)}.search-input{width:240px;padding:6px 12px;background:var(--oe-surface-alt);border:1px solid var(--oe-border);border-radius:2px;color:var(--oe-text);font-size:13px}.search-input:focus{outline:none;border-color:var(--oe-primary)}.search-input::-moz-placeholder{color:var(--oe-text-muted)}.search-input::placeholder{color:var(--oe-text-muted)}.editable-cell{padding:2px 4px;border-radius:2px;min-width:40px;display:inline-block;cursor:pointer}.editable-cell:hover{background:var(--oe-surface-alt)}.editable-input{background:var(--oe-bg);border:1px solid var(--oe-primary);color:var(--oe-text);padding:4px 8px;border-radius:2px;font-size:inherit;font-family:inherit;width:100%;min-width:60px}.editable-input:focus{outline:none;box-shadow:0 0 0 2px #00f0ff4d}.inline-select{background:var(--oe-surface-alt);border:1px solid var(--oe-border);color:var(--oe-text);padding:4px 8px;border-radius:2px;font-size:13px;cursor:pointer}.inline-select:focus{outline:none;border-color:var(--oe-primary)}.delete-link{background:transparent;border:none;color:var(--color-red);font-size:12px;cursor:pointer;opacity:.5;padding:0}.delete-link:hover{opacity:1;text-decoration:underline}.link-primary{background:transparent;border:none;color:var(--oe-primary);font-size:13px;cursor:pointer;padding:0}.link-primary:hover{text-decoration:underline}.form-group{display:flex;flex-direction:column;gap:4px}.form-group label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted)}.form-group input,.form-group select{background:var(--oe-bg);border:1px solid var(--oe-border);color:var(--oe-text);padding:6px 10px;border-radius:2px;font-size:13px;font-family:inherit}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--oe-primary)}.form-group input[type=color]{padding:2px;height:32px;cursor:pointer}.inline-select.compact,.editable-input.compact{padding:3px 6px;font-size:12px;max-width:120px}.ctx-menu{position:fixed;z-index:1000;min-width:160px;background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;box-shadow:0 8px 24px #0000004d;padding:4px 0}.ctx-menu-item{display:block;width:100%;padding:6px 14px;font-size:12px;text-align:left;background:none;border:none;color:var(--oe-text);cursor:pointer;transition:background .1s}.ctx-menu-item:hover{background:var(--oe-surface-alt)}.ctx-menu-item--danger{color:var(--oe-danger, var(--color-red))}.ctx-menu-item--danger:hover{background:#ff33551a}.ctx-menu-divider{height:1px;background:var(--oe-border);margin:4px 0}.btn-secondary{background:var(--oe-surface-alt);color:var(--oe-text);border:1px solid var(--oe-border);padding:6px 14px;border-radius:2px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.btn-secondary:hover{background:var(--oe-surface)}.btn-sm{padding:3px 10px;font-size:12px}.btn-primary:disabled,.btn-secondary:disabled{opacity:.4;cursor:not-allowed}.link-button{background:none;border:none;color:var(--oe-primary);font-size:12px;cursor:pointer;padding:0}.link-button:hover{text-decoration:underline}.work-day-chip{width:28px;height:22px;padding:0;border:1px solid var(--oe-border);border-radius:2px;background:var(--oe-bg);color:var(--oe-text-muted);font-size:10px;font-weight:500;cursor:pointer;transition:all .15s}.work-day-chip.active{background:var(--oe-primary);border-color:var(--oe-primary);color:#fff}.work-day-chip:hover{border-color:var(--oe-primary)}.inline-list-editor{display:flex;flex-direction:column;gap:4px;font-size:12px}.inline-list-item{display:flex;align-items:center;gap:6px}.inline-list-add{display:flex;align-items:center;gap:4px;margin-top:2px}.inline-list-add input{width:120px}.project-settings-editor{max-width:480px}.settings-form{display:flex;flex-direction:column;gap:16px}.form-actions{padding-top:8px}.form-group-full{grid-column:1 / -1}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999}.modal-content{background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;padding:24px;width:100%;max-width:380px;box-shadow:0 16px 48px #00000080}.modal-title{font-size:16px;font-weight:600;margin-bottom:8px;color:var(--oe-text)}.modal-body{font-size:14px;color:var(--oe-text-muted);margin-bottom:16px}.modal-warning{background:#ffe6001a;border:1px solid var(--oe-warning);border-radius:2px;padding:8px 12px;font-size:13px;color:var(--oe-warning);margin-bottom:16px}.modal-actions{display:flex;justify-content:flex-end;gap:8px}.btn-cancel{padding:6px 14px;border-radius:2px;font-size:13px;background:transparent;color:var(--oe-text);border:1px solid var(--oe-border);cursor:pointer;transition:all .2s}.btn-cancel:hover{border-color:var(--oe-text-muted)}.btn-danger{padding:6px 14px;border-radius:2px;font-size:13px;font-weight:500;background:var(--oe-danger);color:#fff;border:none;cursor:pointer;transition:opacity .2s}.btn-danger:hover{opacity:.9}.modal-content-wide{background:var(--oe-surface);border-radius:2px;padding:20px 24px;width:100%;min-width:500px;max-width:700px;max-height:80vh;overflow-y:auto;box-shadow:0 12px 40px #0000004d}.dep-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.dep-modal-title{font-size:15px;margin:0}.dep-modal-close{font-size:18px;padding:4px 8px}.dep-section-title{font-size:12px;font-weight:600;color:var(--oe-text-muted);text-transform:uppercase;letter-spacing:.5px;margin:12px 0 6px}.dep-empty{font-size:12px;margin:4px 0 12px}.dep-add-row{display:flex;align-items:center;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid var(--oe-border)}.dep-task-select{flex:1;min-width:0}.dep-lag-input{width:60px}.modal-content-assignment{background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;padding:24px;width:100%;max-width:480px;box-shadow:0 16px 48px #00000080}.assignment-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin-bottom:16px}.assignment-form-grid .form-group{min-width:0}.assignment-form-grid select,.assignment-form-grid input,.assignment-form-grid textarea{width:100%;box-sizing:border-box}.assignment-form-grid .form-group-full{grid-column:1 / -1}.assignment-form-grid textarea{background:var(--oe-bg);border:1px solid var(--oe-border);color:var(--oe-text);padding:6px 10px;border-radius:2px;font-size:13px;font-family:inherit;resize:vertical}.assignment-form-grid textarea:focus{outline:none;border-color:var(--oe-primary)}.btn-secondary{background:var(--oe-surface-alt);border:1px solid var(--oe-border);color:var(--oe-text);padding:6px 16px;border-radius:2px;font-size:13px;cursor:pointer}.btn-secondary:hover{background:var(--oe-border)}.modal-content-calendar{background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;padding:24px;width:100%;max-width:700px;max-height:85vh;overflow-y:auto;box-shadow:0 16px 48px #00000080}.cal-editor-header{display:flex;gap:16px;align-items:flex-end;margin-bottom:20px}.cal-editor-header .form-group{flex:1}.cal-editor-section{margin-bottom:20px;padding:12px 16px;background:var(--oe-bg);border-radius:2px;border:1px solid var(--oe-border)}.cal-editor-section-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);margin-bottom:8px;display:flex;align-items:center;gap:8px}.cal-editor-section-count{background:var(--oe-surface-alt);padding:1px 7px;border-radius:2px;font-size:11px;font-weight:600;color:var(--oe-text)}.cal-editor-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:8px}.cal-editor-table th{text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);padding:4px 8px 6px;border-bottom:1px solid var(--oe-border)}.cal-editor-table td{padding:4px 8px;border-bottom:1px solid var(--oe-border);vertical-align:middle}.cal-editor-table tr:last-child td{border-bottom:none}.cal-date-cell{font-family:var(--font-mono);font-size:12px;white-space:nowrap;color:var(--oe-text-muted)}.cal-name-input{width:100%;min-width:120px}.cal-toggle-cell{text-align:center;width:60px}.cal-paid-toggle{display:inline-block;padding:2px 10px;border-radius:2px;font-size:11px;font-weight:600;border:1px solid var(--oe-border);background:var(--oe-surface);color:var(--oe-text-muted);cursor:pointer;transition:all .15s}.cal-paid-toggle.active{background:#39ff1426;border-color:var(--oe-success);color:var(--oe-success)}.cal-editor-add-row{display:flex;align-items:center;gap:8px;padding-top:8px;border-top:1px solid var(--oe-border);margin-top:4px}.cal-checkbox-label{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--oe-text-muted);white-space:nowrap;cursor:pointer}.cal-editor-summary{display:flex;gap:16px;padding:10px 16px;background:var(--oe-surface-alt);border-radius:2px;font-size:12px;color:var(--oe-text-muted);margin-bottom:12px}.cal-editor-stat{display:flex;align-items:center;gap:4px}.cal-editor-stat-value{font-weight:700;color:var(--oe-text)}.toast-container{position:fixed;bottom:16px;right:16px;z-index:50;display:flex;flex-direction:column;gap:8px}.toast{padding:8px 16px;border-radius:2px;font-size:13px;font-weight:500;box-shadow:0 4px 16px #0006}.toast-success{background:var(--oe-success);color:var(--oe-on-primary)}.toast-error{background:var(--oe-danger);color:var(--oe-on-primary)}.toast-warning{background:var(--oe-warning);color:var(--oe-on-primary)}.crewsheet{display:grid;grid-template-columns:280px 1fr;gap:16px;height:100%}.crewsheet-sidebar{background:var(--oe-surface);box-shadow:var(--oe-shadow-card);border-radius:2px;overflow-y:auto;padding:12px 0;display:flex;flex-direction:column}.crewsheet-main{overflow-y:auto;overflow-x:hidden;min-width:0}.crew-sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:0 12px;margin-bottom:8px}.crew-sidebar-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted)}.crew-sidebar-search{padding:0 12px;margin-bottom:8px}.crew-sidebar-search .search-input{width:100%}.crew-list{list-style:none;margin:0;padding:0;flex:1}.crew-list-item{display:flex;align-items:center;gap:8px;padding:6px 12px;font-size:13px;cursor:pointer;transition:background .15s;border-left:3px solid transparent}.crew-list-item:hover{background:var(--oe-surface-alt)}.crew-list-item.selected{background:#00f0ff1a;border-left-color:var(--oe-primary)}.crew-color-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.crew-list-info{flex:1;min-width:0}.crew-list-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-list-code{font-size:11px;color:var(--oe-text-muted)}.crew-list-cost{font-size:12px;color:var(--oe-success);flex-shrink:0}.crew-list-actions{opacity:0;transition:opacity .15s}.crew-list-item:hover .crew-list-actions{opacity:1}.crew-add-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;font-size:13px;color:var(--oe-text-muted);cursor:pointer;background:transparent;border:none;width:100%;text-align:left}.crew-add-btn:hover{background:var(--oe-surface-alt);color:var(--oe-text)}.crew-header-form{display:flex;flex-direction:column;gap:6px;padding:12px 16px 14px;margin-bottom:2px;background:var(--oe-surface);border-radius:2px 2px 0 0;border-bottom:1px solid var(--oe-border)}.crew-form-row{display:flex;gap:10px;align-items:flex-end}.crew-form-row--identity{align-items:flex-end}.crew-color-group{flex:0 0 auto;width:52px}.crew-header-form .form-group label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--oe-text-muted);opacity:.7;margin-bottom:2px}.crew-header-form .form-group input,.crew-header-form .form-group select{background:transparent;border:1px solid transparent;border-radius:2px;color:var(--oe-text);padding:5px 8px;font-size:13px;transition:border-color .2s,background .2s}.crew-header-form .form-group input:hover{border-color:var(--oe-border);background:var(--oe-surface-alt)}.crew-header-form .form-group input:focus{outline:none;border-color:var(--oe-primary);background:var(--oe-surface-alt);box-shadow:0 0 0 3px #00f0ff26}.crew-header-form .form-group input::-moz-placeholder{color:var(--oe-text-muted);opacity:.4}.crew-header-form .form-group input::placeholder{color:var(--oe-text-muted);opacity:.4}.crew-header-form .form-group input[type=color]{padding:0;width:28px;height:28px;border-radius:50%;border:2px solid var(--oe-border);cursor:pointer;overflow:hidden;background:transparent}.crew-header-form .form-group input[type=color]:hover{border-color:var(--oe-text-muted)}.crew-header-form .form-group input[type=color]::-webkit-color-swatch-wrapper{padding:0}.crew-header-form .form-group input[type=color]::-webkit-color-swatch{border:none;border-radius:50%}.kpi-bar{display:flex;flex-direction:column;gap:0;margin-bottom:16px;background:var(--oe-surface);border-radius:0 0 2px 2px;overflow:hidden}.kpi-hero-row{display:flex;align-items:center;padding:14px 20px;gap:0}.kpi-hero{flex:1;display:flex;flex-direction:column;gap:2px}.kpi-hero:last-of-type{padding-left:20px}.kpi-hero-divider{width:1px;height:36px;background:var(--oe-border);flex-shrink:0}.kpi-hero-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--oe-text-muted);opacity:.7}.kpi-hero-value{font-size:22px;font-weight:700;color:var(--oe-success);letter-spacing:-.5px}.kpi-detail-row{display:flex;gap:0;padding:0 16px 12px;flex-wrap:wrap}.kpi-detail{display:flex;flex-direction:column;align-items:center;gap:1px;flex:1;min-width:0;padding:6px 4px;position:relative}.kpi-detail+.kpi-detail:before{content:"";position:absolute;left:0;top:25%;height:50%;width:1px;background:var(--oe-border);opacity:.5}.kpi-detail-label{font-size:9px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);opacity:.6;white-space:nowrap}.kpi-detail-value{font-size:13px;font-weight:600;color:var(--oe-text);white-space:nowrap}.crew-editor-header{background:var(--oe-surface);border:1px solid var(--color-b-active);border-radius:3px;margin-bottom:12px;overflow:hidden}.crew-editor-topline{display:flex;align-items:stretch;flex-wrap:wrap;border-bottom:1px solid var(--color-b-subtle)}.crew-editor-color{width:4px;align-self:stretch;flex-shrink:0;border:none;padding:0;background:var(--oe-text-muted);cursor:pointer}.crew-editor-color::-webkit-color-swatch-wrapper{padding:0}.crew-editor-color::-webkit-color-swatch{border:none}.crew-editor-identity{padding:10px 14px;min-width:220px;flex:1 1 220px;display:flex;flex-direction:column;gap:3px;justify-content:center}.crew-editor-name{background:transparent;border:1px solid transparent;border-radius:2px;color:var(--color-text-pri);font-size:13px;font-weight:700;font-family:inherit;padding:2px 4px;margin:-2px -4px;transition:border-color .15s,background .15s}.crew-editor-name:hover{border-color:var(--color-b-subtle);background:var(--oe-surface-alt)}.crew-editor-name:focus{outline:none;border-color:var(--color-cyan);background:var(--oe-surface-alt)}.crew-editor-subline{display:flex;align-items:center;gap:8px}.crew-editor-code{background:transparent;border:1px solid transparent;border-radius:2px;color:var(--color-cyan);font-family:inherit;font-size:10px;width:70px;padding:1px 4px;transition:border-color .15s}.crew-editor-code:hover{border-color:var(--color-b-subtle)}.crew-editor-code:focus{outline:none;border-color:var(--color-cyan)}.crew-editor-code::-moz-placeholder{color:var(--color-text-mut);opacity:.5}.crew-editor-code::placeholder{color:var(--color-text-mut);opacity:.5}.crew-editor-summary{color:var(--color-text-mut);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.crew-editor-costs{display:flex;flex:1 1 320px;flex-wrap:wrap;min-width:0}.crew-editor-cost-cell{padding:8px 12px;text-align:center;flex:1 1 80px;min-width:80px;display:flex;flex-direction:column;justify-content:center;gap:2px;border-left:1px solid var(--color-b-subtle)}.crew-editor-cost-label{color:var(--color-text-mut);font-size:8px;text-transform:uppercase;letter-spacing:.06em}.crew-editor-cost-value{color:var(--color-text-pri);font-weight:700;font-size:11px;font-variant-numeric:tabular-nums}.crew-editor-cost-value--empty{color:var(--color-text-mut);font-weight:400}.crew-editor-totals{padding:8px 14px;border-left:1px solid var(--color-b-active);display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:120px;flex:0 1 auto}.crew-editor-total-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.crew-editor-total-label{color:var(--color-text-mut);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.crew-editor-total-value{color:var(--color-green);font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}.crew-editor-total-value--sec{color:var(--color-cyan);font-size:11px}.crew-editor-fields{display:flex;gap:16px;padding:8px 16px;flex-wrap:wrap}.crew-editor-field{display:flex;flex-direction:column;gap:2px;min-width:70px}.crew-editor-field-label{color:var(--color-text-mut);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.crew-editor-field-value input{background:transparent;border:1px solid transparent;border-radius:2px;color:var(--color-text-pri);font-family:inherit;font-size:12px;padding:2px 4px;width:70px;transition:border-color .15s,background .15s}.crew-editor-field-value input:hover{border-color:var(--color-b-subtle);background:var(--oe-surface-alt)}.crew-editor-field-value input:focus{outline:none;border-color:var(--color-cyan);background:var(--oe-surface-alt)}.crew-editor-field-value input::-moz-placeholder{color:var(--color-text-mut);opacity:.5}.crew-editor-field-value input::placeholder{color:var(--color-text-mut);opacity:.5}.crew-editor-readonly{color:var(--color-text-sec);font-size:12px;font-variant-numeric:tabular-nums;padding:2px 4px;display:inline-block}.crew-editor-section{background:var(--oe-surface);border:1px solid var(--color-b-subtle);border-radius:3px;margin-bottom:8px;overflow:hidden}.crew-editor-section .cc-section-header{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .15s}.crew-editor-section .cc-section-header:hover{background:var(--oe-surface-alt)}.cc-section-chevron{font-size:9px;color:var(--color-text-mut);margin-right:8px}.cc-table-foot td{padding:5px 8px;color:var(--color-text-mut);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-top:1px solid var(--color-b-subtle);border-bottom:none}.cc-table-foot td:first-child{padding-left:16px}.cc-table-foot td.r{text-align:right}.cc-table-foot td.pri{color:var(--color-cyan);font-variant-numeric:tabular-nums}.cc-table.cc-table--clickable tbody tr{transition:background .12s}.cc-table.cc-table--clickable tbody tr:hover{background:var(--oe-surface-alt)}.cc-table.cc-table--clickable tbody tr:hover td.pri{color:var(--color-cyan)}.crew-asgn-table .inline-select{min-width:100px;font-size:11px}.crew-asgn-date{font-family:var(--font-mono);font-size:11px;padding:2px 4px;background:var(--oe-surface-alt);color:var(--color-text-pri);border:1px solid transparent;border-radius:2px}.crew-asgn-date:hover{border-color:var(--color-b-active)}.crew-asgn-date:focus{border-color:var(--color-cyan);outline:none}.crew-editor-danger-zone{display:flex;justify-content:flex-end;padding:16px 0 24px;border-top:1px solid var(--color-elevated);margin-top:16px}.crew-editor-footer{display:flex;align-items:center;gap:18px;padding:10px 16px;background:var(--oe-surface);border:1px solid var(--color-b-active);border-radius:3px;margin:12px 0}.crew-editor-footer-chip{display:flex;flex-direction:column;gap:2px;line-height:1}.crew-editor-footer-label{color:var(--color-text-mut);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.crew-editor-footer-value{color:var(--color-text-pri);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.crew-editor-footer-value--cyan{color:var(--color-cyan)}.crew-editor-footer-total{color:var(--color-green);font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}.crew-editor-footer-spacer{flex:1}.crew-section{background:var(--oe-surface);box-shadow:var(--oe-shadow-card);border-radius:2px;padding:16px 20px;margin-bottom:16px}.crew-section.collapsed{padding-bottom:12px}.crew-section-header{display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:4px 0;margin:-4px 0 6px;border-radius:2px;transition:background .15s}.crew-section-header:hover{background:var(--oe-surface-alt);padding:4px 6px;margin:-4px -6px 6px}.crew-section.collapsed .crew-section-header{margin-bottom:0}.collapse-icon{font-size:10px;color:var(--oe-text-muted);margin-right:8px;width:12px;flex-shrink:0}.crew-section-title{font-size:14px;font-weight:600}.crew-section-total{font-size:15px;color:var(--oe-primary);margin-right:auto;margin-left:8px}.crew-section-add{background:var(--oe-primary);color:#fff;border:none;padding:4px 8px;border-radius:2px;font-size:12px;cursor:pointer;margin-left:auto}.crew-section-add:hover{background:var(--oe-primary-hover)}.crew-assignments-table{width:100%;border-collapse:collapse;font-size:13px}.crew-assignments-table th{text-align:left;padding:6px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);border-bottom:1px solid var(--oe-border)}.crew-assignments-table td{padding:8px 12px;border-bottom:1px solid var(--oe-border)}.crew-assignment-row{cursor:pointer;transition:background .15s}.crew-assignment-row:hover{background:var(--oe-row-hover)}.assignment-status{font-size:11px;padding:2px 8px;border-radius:2px;text-transform:capitalize}.assignment-status--draft{background:var(--color-b-subtle);color:var(--color-text-sec)}.assignment-status--scheduled{background:var(--color-b-active);color:var(--color-cyan)}.assignment-status--active{background:#39ff141a;color:var(--color-green)}.assignment-status--complete{background:var(--color-b-subtle);color:var(--color-text-mut)}.crew-section .oe-table{table-layout:fixed;width:100%}.crew-section .oe-table th:first-child,.crew-section .oe-table td:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-section .oe-table th.text-right,.crew-section .oe-table td.text-right{width:100px}.crew-section .oe-table th:last-child,.crew-section .oe-table td:last-child{width:32px}.crew-name-cell{display:flex;align-items:center;gap:4px;min-width:0;max-width:260px}.crew-name-cell>:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.open-deck-btn{flex-shrink:0;background:transparent;border:1px solid var(--oe-border);color:var(--oe-text-muted);font-size:10px;width:20px;height:20px;border-radius:2px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .15s}.crew-section .oe-table tbody tr:hover .open-deck-btn{opacity:.6}.open-deck-btn:hover{opacity:1!important;border-color:var(--oe-primary);color:var(--oe-primary);background:#00f0ff1a}.burden-toggle{cursor:pointer;text-decoration:none;color:var(--oe-primary)}.burden-toggle:hover{text-decoration:underline}.burden-detail-row td{padding:0 10px;border-bottom:none}.burden-detail-table{width:100%;font-size:12px;border-collapse:collapse;margin:4px 0 8px;background:var(--oe-bg);border-radius:2px}.burden-detail-table th{text-align:left;padding:4px 8px;font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);border-bottom:1px solid var(--oe-border)}.burden-detail-table td{padding:3px 8px;color:var(--oe-text-muted);border-bottom:1px solid var(--color-b-subtle)}.burden-detail-table .text-right{text-align:right}.cost-summary{background:var(--oe-surface);box-shadow:var(--oe-shadow-card);border-radius:2px;padding:16px 20px;margin-bottom:16px}.cost-summary-title{font-size:14px;font-weight:600;margin-bottom:10px}.cost-summary-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:14px}.cost-summary-row.grand-total{padding-top:8px;margin-top:4px;border-top:2px solid var(--oe-border);font-weight:600}.cost-summary-amount{text-align:right}.cost-summary-amount.total{color:var(--oe-success)}.cost-summary-pct{font-size:12px;color:var(--oe-text-muted);min-width:50px;text-align:right}.floor-badge{display:inline-block;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--color-yellow);background:#ffe60026;padding:1px 5px;border-radius:2px;margin-left:4px;vertical-align:middle;cursor:help}.crew-empty-state{display:flex;align-items:center;justify-content:center;height:100%;color:var(--oe-text-muted);font-size:14px}.sidebar-add-menu{position:relative}.sidebar-add-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;box-shadow:0 4px 12px #00000026;z-index:100;min-width:140px;overflow:hidden}.sidebar-add-option{display:block;width:100%;padding:8px 14px;font-size:13px;text-align:left;background:none;border:none;color:var(--oe-text);cursor:pointer;transition:background .15s}.sidebar-add-option:hover{background:var(--oe-surface-alt)}.sidebar-add-option+.sidebar-add-option{border-top:1px solid var(--oe-border)}.sidebar-section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);padding:10px 12px 4px}.crew-list-scroll{flex:1;overflow-y:auto}.sub-empty-hint{padding:8px 16px}.cost-summary-total-row td{border-top:2px solid var(--oe-border);padding-top:8px}.ownership-badge{display:inline-block;padding:2px 8px;border-radius:2px;font-size:11px;font-weight:500;text-transform:capitalize}.ownership-badge.owned{background:#39ff1426;color:var(--oe-success)}.ownership-badge.rented{background:#ffe60026;color:var(--oe-warning)}.ownership-badge.third-party{background:#00f0ff26;color:var(--oe-primary)}.assignment-workspace{display:flex;flex-direction:column;height:100%}.nd-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;gap:16px}.nd-empty-text{font-size:13px;color:var(--color-text-mut)}.nd-assign-btn{background:var(--color-cyan);color:var(--oe-on-primary);border:none;padding:10px 24px;font-size:13px;font-weight:600;font-family:inherit;border-radius:2px;cursor:pointer;transition:background .15s}.nd-assign-btn:hover{background:var(--oe-primary-hover)}.nd-assign-another{display:block;margin:8px 0 0;background:transparent;border:1px dashed var(--color-b-active);border-radius:2px;color:var(--color-text-mut);font-size:11px;font-family:inherit;padding:6px 14px;cursor:pointer;transition:all .15s}.nd-assign-another:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.crew-inline{background:var(--color-surface);border:1px solid var(--color-b-active);border-radius:2px;margin-bottom:16px}.crew-inline-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-elevated);border-bottom:1px solid var(--color-b-active)}.crew-inline-name{font-size:13px;font-weight:700;color:var(--color-cyan);cursor:pointer;letter-spacing:.02em}.crew-inline-name:hover{text-decoration:underline}.asgn-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px 20px;padding:12px 16px;background:var(--color-surface);border-bottom:1px solid var(--color-b-active)}.asgn-panel-field{display:flex;flex-direction:column;gap:3px;min-width:0}.asgn-panel-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-mut)}.asgn-panel-value{font-size:13px;color:var(--color-text-pri);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asgn-panel-value--empty{color:var(--color-text-mut)}.crew-inline-section-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:8px 16px;background:var(--color-elevated);border:none;border-bottom:1px solid var(--color-b-active);color:var(--color-text-pri);font-size:11px;font-weight:700;font-family:inherit;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;text-align:left;transition:background .1s}.crew-inline-section-toggle:hover{background:var(--color-hover)}.crew-inline-marker{font-size:10px;color:var(--color-text-mut);width:20px;flex-shrink:0}.crew-inline-section-cost{margin-left:auto;color:var(--color-cyan);font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}.crew-inline-table{width:100%;border-collapse:collapse;font-size:12px}.crew-inline-table th{text-align:left;padding:4px 16px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-mut);background:var(--color-elevated);border-bottom:1px solid var(--color-b-active)}.crew-inline-table td{padding:4px 16px;color:var(--color-text-pri);border-bottom:1px solid var(--color-b-subtle);font-variant-numeric:tabular-nums}.crew-inline-table tbody tr:hover td{background:var(--color-hover)}.crew-inline-table .num{text-align:right}.crew-inline-table .cost{font-weight:600;color:var(--color-cyan)}.crew-inline-table .muted{color:var(--color-text-mut)}.crew-inline-empty{padding:10px 16px;font-size:12px;color:var(--color-text-mut)}.crew-inline-actions{display:flex;gap:8px;padding:8px 16px;flex-wrap:wrap}.crew-inline-add-btn{background:transparent;border:1px dashed var(--color-b-active);border-radius:2px;color:var(--color-text-mut);font-size:11px;font-family:inherit;padding:3px 10px;cursor:pointer;transition:all .15s}.crew-inline-add-btn:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.crew-inline-cost-footer{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:var(--color-elevated);border-top:1px solid var(--color-b-active);font-size:12px;color:var(--color-text-sec);font-weight:600}.crew-inline-cost-footer strong{color:var(--color-green);font-size:15px}.crew-inline-remove{background:none;border:none;color:var(--color-text-mut);font-size:16px;cursor:pointer;padding:0 4px;line-height:1;opacity:0;transition:opacity .15s,color .15s;margin-left:8px}.crew-inline:hover .crew-inline-remove{opacity:.6}.crew-inline-remove:hover{opacity:1!important;color:var(--color-red)}.crew-inline-line-delete{background:none;border:none;color:var(--color-text-mut);font-size:13px;cursor:pointer;padding:0 2px;line-height:1;opacity:0;transition:opacity .15s}.crew-inline-table tbody tr:hover .crew-inline-line-delete{opacity:.5}.crew-inline-line-delete:hover{opacity:1!important;color:var(--color-red)}.crew-inline-section-add{background:none;border:none;color:var(--color-text-mut);font-size:10px;font-family:inherit;cursor:pointer;margin-left:8px;padding:0 4px;transition:color .15s}.crew-inline-section-add:hover{color:var(--color-cyan)}.crew-inline-add-form{display:flex;align-items:center;gap:6px;padding:6px 16px;background:var(--color-elevated);border-bottom:1px solid var(--color-b-subtle);flex-wrap:wrap}.crew-inline-add-select{background:var(--color-void);border:1px solid var(--color-b-active);color:var(--color-text-pri);font-size:11px;font-family:inherit;padding:3px 6px;border-radius:2px;min-width:200px}.crew-inline-add-select:focus{outline:none;border-color:var(--color-cyan)}.crew-inline-add-qty{background:var(--color-void);border:1px solid var(--color-b-active);color:var(--color-text-pri);font-size:11px;font-family:inherit;padding:3px 6px;border-radius:2px;width:50px;text-align:center}.crew-inline-add-qty:focus{outline:none;border-color:var(--color-cyan)}.crew-inline-add-submit{background:none;border:none;color:var(--color-cyan);font-size:11px;font-family:inherit;cursor:pointer}.crew-inline-add-submit:disabled{color:var(--color-text-mut);cursor:not-allowed}.crew-inline-add-cancel{background:none;border:none;color:var(--color-text-mut);font-size:11px;font-family:inherit;cursor:pointer}.crew-inline-add-cancel:hover{color:var(--color-text-sec)}.crew-inline-empty-add{background:none;border:none;color:var(--color-cyan);font-size:12px;font-family:inherit;cursor:pointer;padding:0;text-decoration:underline}.assignment-detail-panel{width:320px;min-width:320px;border-left:1px solid var(--oe-border);background:var(--oe-surface);display:flex;flex-direction:column;overflow-y:auto}.detail-panel-header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--oe-border)}.detail-panel-title{font-size:15px;font-weight:600;margin:0}.detail-panel-body{padding:14px;flex:1}.detail-section{margin-bottom:14px}.detail-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);margin-bottom:2px}.detail-panel-actions{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--oe-border)}.detail-panel-actions .btn-primary,.detail-panel-actions .btn-danger{flex:1}.status-badge{display:inline-block;padding:2px 8px;border-radius:2px;font-size:11px;font-weight:600;text-transform:capitalize}.status-badge.status-draft{background:#a0a0a033;color:var(--oe-text-muted)}.status-badge.status-estimated{background:#00f0ff33;color:var(--oe-primary)}.status-badge.status-approved{background:#39ff1433;color:var(--oe-success)}.status-badge.status-locked{background:#ffe60033;color:var(--oe-warning)}.assignment-table{width:100%;border-collapse:collapse;font-size:13px}.assignment-table th{text-align:left;padding:8px 10px;font-size:11px;font-weight:600;color:var(--oe-text-muted);text-transform:uppercase;letter-spacing:.5px;background:var(--oe-table-header);border-bottom:1px solid var(--oe-border);position:sticky;top:0;z-index:1}.assignment-table th.col-actions{width:70px;text-align:center}.assignment-row{border-bottom:1px solid var(--oe-border);transition:background .1s;cursor:pointer}.assignment-row:hover{background:var(--oe-surface-alt)}.assignment-row.selected{background:#00f0ff14}.assignment-row.locked{opacity:.7}.assignment-row td{padding:6px 10px;vertical-align:middle}.assignment-row .cell-label{display:flex;align-items:center;gap:6px;min-width:180px}.assignment-row .label-desc{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assignment-row .cell-readonly{color:var(--oe-text-muted)}.assignment-row .col-actions{text-align:center;white-space:nowrap}.assignment-table-empty{padding:32px 16px;text-align:center;color:var(--oe-text-muted);font-size:13px}.coverage-summary{padding:8px 12px;margin-bottom:8px;background:var(--oe-surface);border-radius:var(--oe-radius-md);border:1px solid var(--oe-border-subtle)}.coverage-info{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}.coverage-label{font-size:11px;color:var(--oe-text-muted);font-weight:600}.coverage-value{font-size:13px;font-weight:600}.coverage-value.exact{color:var(--color-green)}.coverage-value.under{color:var(--oe-text)}.coverage-value.over{color:var(--color-red)}.coverage-remaining{font-size:11px;font-weight:500;padding:1px 6px;border-radius:2px}.coverage-remaining.under{color:var(--oe-primary);background:#00f0ff1a}.coverage-remaining.over{color:var(--color-red);background:#ff33551a}.coverage-bar{position:relative;width:100%;height:4px;background:var(--oe-border);border-radius:2px;overflow:hidden}.coverage-bar-fill{position:absolute;top:0;left:0;height:100%;border-radius:2px;transition:width .3s}.coverage-bar-over{background:repeating-linear-gradient(-45deg,transparent,transparent 3px,rgba(255,51,85,.3) 3px,rgba(255,51,85,.3) 6px)!important}.coverage-bar-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.asgn-cards{display:flex;flex-direction:column;gap:8px}.asgn-card{box-shadow:var(--oe-shadow-soft);border-radius:var(--oe-radius-md);border:1px solid var(--oe-border-subtle);background:var(--oe-surface);overflow:hidden}.asgn-card-header{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--oe-border-subtle)}.asgn-card-crew-name{font-weight:600;font-size:13px;cursor:pointer;color:var(--oe-primary)}.asgn-card-crew-name:hover{text-decoration:underline}.asgn-card-crew-code{font-size:11px;color:var(--oe-text-muted)}.asgn-card-spacer{flex:1}.asgn-card-fields{display:flex;flex-wrap:wrap;gap:4px 16px;padding:10px 12px}.asgn-field{display:flex;align-items:center;gap:6px;min-width:0}.asgn-field label{font-size:11px;color:var(--oe-text-muted);white-space:nowrap}.asgn-field label.calc-label{color:var(--oe-primary);font-style:italic}.asgn-field .editable-cell{font-weight:600;font-size:13px;min-width:40px}.asgn-field-unit{font-size:11px;color:var(--oe-text-muted);white-space:nowrap}.asgn-field-hint{width:100%}.asgn-computed-hint{font-size:11px;color:var(--oe-text-muted);font-style:italic}.asgn-field-full{width:100%}.asgn-notes{font-size:12px;color:var(--oe-text-muted)}.asgn-card-cost{width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding-top:6px;margin-top:4px;border-top:1px solid var(--oe-border)}.asgn-cost-total{font-size:13px;font-weight:600;color:var(--oe-primary)}.asgn-cost-daily{font-size:11px;color:var(--oe-text-muted)}.asgn-cost-breakdown{display:flex;gap:10px;font-size:11px;color:var(--oe-text-muted);width:100%}.asgn-cost-breakdown>span{white-space:nowrap}.btn-secondary{padding:4px 12px;font-size:12px;font-weight:600;background:transparent;border:1px solid var(--oe-border-subtle);border-radius:2px;cursor:pointer;color:var(--oe-text);transition:all .15s}.btn-secondary:hover{background:var(--oe-surface-alt);border-color:var(--oe-border)}.cc-inline-select{background:var(--color-surface);color:var(--color-cyan);border:1px solid var(--color-elevated);font-family:var(--font-family-mono);font-size:.7rem;padding:1px 2px;border-radius:2px;width:100%}.cc-inline-select:focus{border-color:var(--color-cyan);outline:none}.cc-muted{color:var(--color-text-mut);font-size:.75rem}.gantt-view-wrapper{display:flex;flex-direction:column;height:100%;overflow:hidden}.gantt-toolbar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px 2px 0 0;border-bottom:none}.gantt-toolbar-group{display:flex;border:1px solid var(--oe-border);border-radius:2px;overflow:hidden}.gantt-zoom-btn{background:var(--oe-bg);border:none;border-right:1px solid var(--oe-border);color:var(--oe-text-muted);padding:4px 12px;font-size:12px;cursor:pointer;transition:background .15s,color .15s}.gantt-zoom-btn:last-child{border-right:none}.gantt-zoom-btn:hover{background:var(--oe-surface-alt)}.gantt-zoom-btn.active{background:var(--oe-primary);color:var(--oe-on-primary)}.gantt-today-btn{background:var(--oe-surface-alt);border:1px solid var(--oe-border);color:var(--oe-text);padding:4px 12px;border-radius:2px;font-size:12px;cursor:pointer}.gantt-today-btn:hover{background:var(--oe-border)}.gantt-toolbar-spacer{flex:1}.gantt-container{display:flex;flex:1;border:1px solid var(--oe-border);border-radius:0 0 6px 6px;overflow:hidden;position:relative}.gantt-sidebar{width:280px;min-width:280px;border-right:1px solid var(--oe-border);overflow-y:auto;overflow-x:hidden;background:var(--oe-surface)}.gantt-sidebar-header{height:52px;display:flex;align-items:center;padding:0 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);background:var(--oe-table-header);border-bottom:1px solid var(--oe-border);position:sticky;top:0;z-index:2}.gantt-sidebar-row{display:flex;align-items:center;font-size:13px;cursor:default;transition:background .1s}.gantt-sidebar-row:hover{background:var(--oe-surface-alt)}.gantt-sidebar-row.wbs-row{font-weight:600;color:var(--oe-text-muted);cursor:pointer}.gantt-sidebar-chevron{display:inline-block;width:14px;font-size:9px;flex-shrink:0;text-align:center}.gantt-sidebar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.gantt-sidebar-assign-count{background:var(--oe-primary);color:var(--oe-on-primary);font-size:10px;font-weight:600;padding:1px 5px;border-radius:2px;margin-left:6px;flex-shrink:0}.gantt-timeline-wrapper{flex:1;overflow:auto;position:relative;background:var(--oe-bg)}.gantt-header{position:sticky;top:0;z-index:2;height:52px;background:var(--oe-table-header);border-bottom:1px solid var(--oe-border)}.gantt-header-months{position:relative;height:26px;border-bottom:1px solid var(--oe-border)}.gantt-header-month{position:absolute;top:0;height:26px;display:flex;align-items:center;padding:0 8px;font-size:12px;font-weight:600;color:var(--oe-text);border-right:1px solid var(--oe-border);overflow:hidden;white-space:nowrap}.gantt-header-days{position:relative;height:25px}.gantt-header-day{position:absolute;top:0;height:25px;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--oe-text-muted)}.gantt-header-day.weekend{background:var(--oe-surface-hover);color:#ffffff4d}.gantt-svg{display:block;-webkit-user-select:none;-moz-user-select:none;user-select:none}.gantt-weekend-rect{fill:var(--oe-surface-hover)}.gantt-grid-line{stroke:var(--oe-border);stroke-width:1;shape-rendering:crispEdges}.gantt-today-line{stroke:var(--oe-warning);stroke-width:2;stroke-dasharray:4 3}.gantt-bar{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:bounding-box}.gantt-bar.dragging{cursor:grabbing}.gantt-bar.locked{cursor:not-allowed;opacity:.5}.gantt-bar.selected .gantt-bar-rect{filter:brightness(1.2);stroke:#fff;stroke-width:2}.gantt-bar-rect{transition:filter .1s}.gantt-bar-rect.status-draft{opacity:.75;stroke-dasharray:4 2;stroke:#ffffff4d;stroke-width:1}.gantt-bar-rect.status-estimated{opacity:.9}.gantt-bar-rect.status-approved{opacity:1;stroke-width:2}.gantt-bar-rect.status-locked{opacity:.5}.gantt-bar-label{fill:#fff;font-size:11px;font-weight:500;pointer-events:none}.gantt-bar:hover .gantt-bar-rect{filter:brightness(1.25)}.gantt-bar-handle{fill:#0006;cursor:ew-resize;opacity:0;transition:opacity .15s}.gantt-bar:hover .gantt-bar-handle{opacity:1}.gantt-shell{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--color-void)}.gantt-shell-body{display:flex;flex:1;overflow:hidden;position:relative}.gantt-shell-center{flex:1;overflow:hidden;display:flex;flex-direction:column}.crew-panel{width:240px;min-width:240px;background:var(--color-surface);border-right:1px solid var(--color-b-subtle);display:flex;flex-direction:column;font-family:var(--font-family-mono);overflow:hidden}.crew-panel-header{padding:8px 12px;border-bottom:1px solid var(--color-b-subtle);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.crew-panel-title{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted, var(--color-text-mut))}.crew-panel-new-btn{background:transparent;border:1px solid rgba(0,240,255,.3);color:var(--color-cyan);font-family:inherit;font-size:10px;padding:2px 8px;cursor:pointer;letter-spacing:.05em}.crew-panel-new-btn:hover{background:#00f0ff14}.crew-panel-list{flex:1;overflow-y:auto}.crew-panel-empty{padding:16px 12px;font-size:11px;color:var(--color-text-mut);font-family:var(--font-family-mono)}.crew-panel-row{display:flex;align-items:center;gap:8px;padding:7px 10px 7px 12px;border-bottom:1px solid rgba(26,26,46,.5);cursor:pointer;transition:background .1s}.crew-panel-row:hover{background:var(--color-surface)}.crew-panel-row.selected{background:#00f0ff0f;border-left:2px solid var(--color-cyan);padding-left:10px}.crew-panel-row-body{flex:1;min-width:0}.crew-panel-name{font-size:11px;color:var(--color-text-pri);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-family-mono)}.crew-panel-row.selected .crew-panel-name{color:var(--color-cyan)}.crew-panel-stats{font-size:9px;color:var(--color-text-mut);margin-top:2px;font-family:var(--font-family-mono)}.crew-panel-actions{display:flex;gap:4px;opacity:0;transition:opacity .1s;flex-shrink:0}.crew-panel-row:hover .crew-panel-actions{opacity:1}.crew-action-btn{background:transparent;border:none;color:var(--color-text-mut);cursor:pointer;font-size:12px;padding:2px 4px;font-family:var(--font-family-mono);line-height:1}.crew-action-btn:hover{color:var(--color-text-sec)}.crew-action-btn.danger:hover{color:var(--color-red)}.crew-color-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;display:inline-block}.gantt-sidebar-row.task-row{cursor:pointer}.gantt-sidebar-assign-hint{font-size:11px;color:var(--color-b-active);flex-shrink:0;margin-left:4px;transition:color .1s}.gantt-sidebar-row.task-row:hover .gantt-sidebar-assign-hint{color:var(--color-cyan)}.gantt-bar.crew-selected .gantt-bar-rect{filter:brightness(1.4) drop-shadow(0 0 4px currentColor)}.gantt-jones-toggle{background:transparent;border:1px solid rgba(57,255,20,.3);color:var(--color-green);font-family:var(--font-family-mono);font-size:10px;padding:2px 10px;cursor:pointer;letter-spacing:.08em}.gantt-jones-toggle:hover{background:#39ff1414}.jones-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;background:transparent}.jones-drawer{position:fixed;top:0;right:0;width:380px;height:100vh;z-index:100;transform:translate(100%);transition:transform .2s ease;background:var(--color-surface);border-left:1px solid var(--color-b-subtle);display:flex;flex-direction:column}.jones-drawer.open{transform:translate(0)}.wbs-assign-modal{width:360px}.wbs-assign-crew-list{max-height:320px;overflow-y:auto;padding:8px 0}.wbs-assign-empty{padding:12px 20px;font-size:11px;color:var(--color-text-mut);font-family:var(--font-family-mono)}.wbs-assign-crew-row{display:flex;align-items:center;gap:10px;padding:8px 20px;cursor:pointer;transition:background .1s;font-family:var(--font-family-mono);font-size:11px;color:var(--color-text-pri)}.wbs-assign-crew-row:hover{background:var(--color-surface)}.wbs-assign-crew-row.already-assigned{opacity:.5;cursor:default}.wbs-assign-crew-row input[type=checkbox]{accent-color:var(--color-cyan);flex-shrink:0}.already-assigned-label{font-size:9px;color:var(--color-text-mut);margin-left:auto;letter-spacing:.08em;text-transform:uppercase}.basic-crew-modal{width:320px}.color-swatches{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.color-swatch{width:24px;height:24px;border-radius:2px;border:2px solid transparent;cursor:pointer;padding:0}.color-swatch.selected{border-color:var(--oe-on-primary)}.color-hex-input{width:100px;font-family:var(--font-family-mono)}.btn-ghost{background:transparent;border:none;color:var(--color-text-mut);font-family:var(--font-family-mono);font-size:11px;cursor:pointer;padding:4px 0;text-decoration:underline}.btn-ghost:hover{color:var(--color-text-sec)}.hierarchy-edit-input{flex:1;min-width:0}.crew-tag{display:inline-block;padding:1px 7px;border-radius:2px;font-size:9px;font-weight:600;color:#fff;cursor:pointer;transition:filter .15s}.crew-tag:hover{filter:brightness(1.2)}.crew-tag--unassigned{background:transparent;border:1px dashed var(--oe-text-muted);color:var(--oe-text-muted);cursor:default}.crew-tag--unassigned:hover{filter:none}.wbs-tree-container{flex:1;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--oe-border);border-radius:0 0 2px 2px;background:var(--oe-bg)}.wbs-tree-scroll{flex:1;overflow:auto}.wbs-tree-table{width:100%;border-collapse:collapse;font-size:13px}.wbs-tree-th{position:sticky;top:0;z-index:2;padding:8px 12px;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);background:var(--oe-surface);border-bottom:2px solid var(--oe-border);white-space:nowrap}.wbs-tree-th--code,.wbs-tree-th--scope{width:140px}.wbs-tree-th--crews{width:180px}.wbs-tree-th--cost{width:140px;text-align:right}.wbs-tree-row{cursor:pointer;border-bottom:1px solid var(--oe-border);transition:background .1s}.wbs-tree-row--scope{background:#00f0ff0a}.wbs-tree-row--org{opacity:.75}.wbs-tree-row--org:hover{opacity:1}.wbs-tree-row--unassigned{border-left:3px solid var(--oe-warning)}@keyframes tree-row-highlight{0%{background:#39ff1440}to{background:transparent}}.wbs-tree-row--highlighted{animation:tree-row-highlight 2.5s ease-out}.wbs-tree-td{padding:6px 10px;vertical-align:middle;white-space:nowrap}.wbs-tree-code-inner{display:flex;align-items:center}.wbs-tree-td--desc{font-weight:500}.wbs-tree-td--cost{text-align:right;font-weight:600;color:var(--oe-primary);font-size:12px}.wbs-tree-td--scope{font-size:12px;color:var(--oe-text-muted)}.wbs-tree-indent{display:inline-block;flex-shrink:0}.wbs-tree-chevron{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;border:none;background:transparent;color:var(--oe-text-muted);font-size:10px;cursor:pointer;border-radius:2px;transition:background .1s,color .1s;padding:0}.wbs-tree-chevron:hover{background:var(--oe-surface-alt);color:var(--oe-primary)}.wbs-tree-chevron-spacer{display:inline-block;width:18px;flex-shrink:0}.wbs-tree-code{font-weight:700;font-size:12px;color:var(--oe-primary);margin-left:4px}.wbs-tree-desc{color:var(--oe-text)}.wbs-tree-edit-input{width:100%;min-width:120px}.wbs-tree-crew-tags{display:flex;flex-wrap:wrap;gap:3px}.wbs-tree-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--oe-text-muted);font-size:13px}.flow-summary-bar{display:flex;gap:32px;padding:10px 20px;border-bottom:1px solid var(--oe-border);background:var(--oe-surface);flex-shrink:0}.flow-stat{display:flex;align-items:baseline;gap:6px}.flow-stat-value{font-size:15px;font-weight:700;color:var(--oe-text)}.flow-stat-label{font-size:11px;color:var(--oe-text-muted);text-transform:uppercase;letter-spacing:.5px}.flow-stat--success .flow-stat-value{color:var(--color-green)}.flow-stat--warning .flow-stat-value{color:var(--oe-warning)}.flow-stat--primary .flow-stat-value{color:var(--oe-primary)}.flow-summary-spacer{flex:1}.flow-summary-btn{padding:4px 12px;border:1px solid var(--oe-border);border-radius:2px;background:var(--oe-surface-alt);color:var(--oe-text-muted);font-size:11px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.flow-summary-btn:hover{background:var(--oe-primary);color:#fff;border-color:var(--oe-primary)}.nd-header{display:flex;align-items:center;gap:10px;padding:8px 24px;background:var(--oe-surface);border-bottom:1px solid var(--oe-border);flex-shrink:0}.nd-header-label{font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--color-text-mut);text-transform:uppercase}.nd-header-code{font-size:13px;font-weight:500;color:var(--color-text-sec)}.nd-header-spacer{flex:1}.nd-refresh-btn{background:transparent;border:1px solid var(--oe-border);border-radius:2px;color:var(--color-text-sec);font-size:11px;font-family:inherit;padding:3px 10px;cursor:pointer;transition:all .15s}.nd-refresh-btn:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.nd-status-line{display:flex;align-items:center;gap:12px;padding:14px 24px;background:var(--color-elevated);border-bottom:1px solid var(--color-b-active);flex-shrink:0}.nd-wbs-code{font-size:13px;font-weight:700;color:var(--color-cyan)}.nd-title{font-size:15px;font-weight:700;color:var(--color-text-pri)}.nd-status-badge{font-size:10px;font-weight:700;padding:2px 10px;border-radius:2px;letter-spacing:.04em}.nd-status-badge--ok{color:var(--color-green);background:#39ff141f}.nd-status-badge--draft{color:var(--color-text-mut);background:var(--color-elevated);border:1px solid var(--color-b-subtle)}.nd-total-cost{font-size:22px;font-weight:800;color:var(--color-green);font-variant-numeric:tabular-nums}.nd-unit-cost{font-size:12px;font-weight:700;color:var(--color-cyan);margin-left:4px;padding:3px 10px;background:#00f0ff1a;border-radius:2px;font-variant-numeric:tabular-nums}.nd-body{flex:1;overflow-y:auto;padding:16px 24px}.nd-cost-footer{display:flex;align-items:center;padding:12px 24px;background:var(--color-elevated);border-top:2px solid var(--color-b-active);flex-shrink:0;font-size:13px}.nd-footer-daily{font-weight:700;color:var(--color-cyan);font-variant-numeric:tabular-nums}.nd-footer-total{font-weight:600;color:var(--color-text-sec)}.nd-footer-total strong{font-weight:800;color:var(--color-green);font-size:15px}.task-manager{display:grid;grid-template-columns:320px 1fr;gap:16px;height:100%}.task-manager-sidebar{background:var(--oe-surface);box-shadow:var(--oe-shadow-card);border-radius:2px;overflow-y:auto;padding:12px 0}.task-manager-main{overflow-y:auto}.wbs-tree{font-size:13px}.wbs-tree-row{display:flex;align-items:flex-start;gap:4px;padding:5px 8px;cursor:pointer;transition:background .1s;border-left:3px solid transparent}.wbs-tree-row:hover{background:var(--oe-surface-alt)}.wbs-tree-row.selected{background:#00f0ff1a;border-left-color:var(--oe-primary)}.wbs-tree-chevron{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;color:var(--oe-text-muted);flex-shrink:0;cursor:pointer}.wbs-tree-chevron:hover{color:var(--oe-text)}.wbs-code{font-weight:600;color:var(--oe-primary);margin-right:6px;flex-shrink:0}.wbs-description{flex:1;min-width:0;line-height:1.3}.wbs-task-count{font-size:11px;color:var(--oe-text-muted);background:var(--oe-surface-alt);padding:1px 6px;border-radius:2px;flex-shrink:0}.wbs-task-leaf{font-size:12px;color:var(--oe-text-muted);cursor:pointer}.wbs-task-leaf:hover{color:var(--oe-text)}.wbs-task-leaf-label{line-height:1.3}.wbs-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s}.wbs-tree-row:hover .wbs-actions{opacity:1}.wbs-action-btn{background:transparent;border:none;color:var(--oe-text-muted);font-size:14px;cursor:pointer;padding:0 2px;line-height:1}.wbs-action-btn:hover{color:var(--oe-text)}.wbs-action-btn.danger:hover{color:var(--oe-danger)}.wbs-add-root{display:flex;align-items:center;gap:6px;padding:8px 12px;font-size:13px;color:var(--oe-text-muted);cursor:pointer;background:transparent;border:none;width:100%;text-align:left}.wbs-add-root:hover{background:var(--oe-surface-alt);color:var(--oe-text)}.task-manager-sidebar-heading{padding:0 12px;margin-bottom:8px}.task-manager-hint{font-size:13px}.wbs-all-tasks-label{font-weight:600;font-size:13px}.wbs-all-tasks-row{padding-left:8px}.wbs-edit-input{flex:1;min-width:0}.task-wbs-code{font-size:12px}.node-detail-layout{display:flex;flex:1;overflow:hidden;height:100%}.split-focus-layout{display:flex;flex:1;overflow:hidden;border:1px solid var(--oe-border);border-radius:0 0 2px 2px}.focus-sidebar{width:380px;min-width:380px;border-right:1px solid var(--oe-border-subtle);background:var(--oe-surface);display:flex;flex-direction:column;overflow:hidden}.focus-sidebar-search{padding:8px}.focus-sidebar-search .search-input{width:100%;box-sizing:border-box;border-radius:2px}.focus-sidebar-list{flex:1;overflow-y:auto}.focus-sidebar-empty{padding:16px;text-align:center;color:var(--oe-text-muted);font-size:12px}.focus-entity-list{list-style:none;margin:0;padding:4px 0}.focus-entity-item{display:flex;align-items:baseline;gap:6px;padding:7px 10px;margin:1px 6px;cursor:pointer;transition:background .15s;font-size:13px;border-radius:var(--oe-radius-sm)}.focus-entity-item:hover{background:var(--oe-surface-hover)}.focus-entity-item.selected{background:var(--oe-surface-selected)}.focus-entity-item.has-scope{font-weight:500}.focus-entity-info{flex:1;min-width:0}.focus-entity-name{font-size:13px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.focus-entity-sub{font-size:11px;color:var(--oe-text-muted)}.focus-entity-badge{background:var(--oe-surface-alt);color:var(--oe-text-muted);font-size:10px;font-weight:600;padding:1px 6px;border-radius:2px;flex-shrink:0}.wbs-scope-badge{width:7px;height:7px;border-radius:50%;background:var(--oe-primary);flex-shrink:0;font-size:0}.focus-main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--oe-bg)}.focus-header{display:flex;align-items:center;gap:10px;padding:20px 24px;background:var(--oe-surface)}.focus-header-title{font-size:18px;font-weight:600;margin:0;white-space:nowrap;letter-spacing:-.01em}.focus-header-badge{font-size:11px;color:var(--oe-primary);background:#00f0ff1a;padding:2px 8px;border-radius:2px;font-weight:600}.focus-header-scope{font-size:12px;color:var(--oe-text-muted);background:var(--oe-surface-alt);padding:3px 10px;border-radius:2px}.focus-header-count{font-size:12px;color:var(--oe-text-muted)}.focus-header-cost{font-size:13px;font-weight:600;color:var(--oe-primary)}.sidebar-node-cost{margin-left:auto;font-size:11px;font-weight:600;color:var(--oe-text-muted);white-space:nowrap;padding-right:4px}.focus-header-spacer{flex:1}.focus-table-wrapper{flex:1;overflow:auto;padding:8px 24px 24px}.focus-empty-state{display:flex;align-items:center;justify-content:center;height:100%;color:var(--oe-text-muted);font-size:13px}.wbs-dict-section{background:var(--color-surface);border:1px solid var(--color-b-subtle);border-radius:2px;padding:0;margin-bottom:12px}.wbs-dict-section--collapsed{padding:0}.wbs-dict-section:last-child{margin-bottom:0}.wbs-dict-section-title{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-sec);padding:8px 16px;background:var(--color-elevated);border-bottom:1px solid var(--color-b-active);-webkit-user-select:none;-moz-user-select:none;user-select:none}.wbs-dict-section-count{font-size:11px;font-weight:600;color:var(--oe-text-muted);background:var(--oe-surface-alt);padding:1px 7px;border-radius:2px}.section-chevron{display:inline-block;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:6px solid var(--oe-text-muted);transition:transform var(--oe-transition-expand);flex-shrink:0}.section-chevron--open{transform:rotate(90deg)}.wbs-dict-section-body{animation:sectionFadeIn .2s ease-out}@keyframes sectionFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.wbs-dict-section-spacer{flex:1}.wbs-dict-empty{font-size:12px;color:var(--oe-text-muted);margin:4px 0 8px}.scope-detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px 12px;padding:8px 16px 10px}.scope-field{display:flex;align-items:baseline;gap:6px;padding:2px 0;font-size:12px}.scope-field>label{font-size:11px;font-weight:600;color:var(--color-text-mut);white-space:nowrap;min-width:0}.scope-field-full{grid-column:1 / -1}.scope-deps-btn,.scope-toggle-btn{padding:2px 8px;font-size:10px;font-weight:600;background:transparent;border:1px solid var(--color-b-subtle);border-radius:2px;cursor:pointer;color:var(--color-text-mut);font-family:inherit;transition:all .15s}.scope-deps-btn:hover,.scope-toggle-btn:hover{background:var(--color-hover);color:var(--color-cyan);border-color:var(--oe-border)}.scope-toggle-btn--active{background:var(--oe-primary);color:var(--color-text-pri);border-color:var(--oe-primary)}.dep-inline-summary{padding:4px 0}.dep-inline-label{font-size:11px;font-weight:600;color:var(--oe-text-muted);margin:6px 0 2px}.dep-inline-label:first-child{margin-top:0}.dep-inline-row{display:flex;align-items:center;gap:8px;padding:3px 8px;font-size:12px;border-radius:2px;transition:background .1s}.dep-inline-row:hover{background:var(--oe-surface-alt)}.dep-inline-desc{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dep-inline-type{font-size:11px;font-weight:600;color:var(--oe-text-muted);background:var(--oe-surface-alt);padding:1px 6px;border-radius:2px}.dep-inline-lag{font-size:11px;color:var(--oe-text-muted)}.children-chips{display:flex;flex-wrap:wrap;gap:6px;padding:4px 0}.children-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;font-size:12px;border-radius:2px;cursor:pointer;background:var(--oe-surface-alt);border:1px solid var(--oe-border-subtle);color:var(--oe-text);transition:all .15s}.children-chip:hover{background:var(--oe-surface-hover);border-color:var(--oe-border)}.children-chip .wbs-code{font-size:11px}.chip-remove{font-size:13px;color:var(--oe-text-muted);opacity:0;transition:opacity .15s;cursor:pointer;line-height:1}.children-chip:hover .chip-remove{opacity:1}.chip-remove:hover{color:var(--oe-danger)}.children-actions{display:flex;gap:8px;margin-top:8px}.assigned-crews-list{display:flex;flex-direction:column;gap:4px}.assigned-crew-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:2px;font-size:13px;cursor:pointer}.assigned-crew-row:hover{background:var(--oe-surface-alt)}.assigned-crew-name{font-weight:500;color:var(--oe-text)}.assigned-crew-code{color:var(--oe-text-muted);font-size:11px}.assigned-crew-count{margin-left:auto;color:var(--oe-text-muted);font-size:11px}.node-tree-item{position:relative}.node-sidebar-actions{display:none;position:absolute;right:4px;top:50%;transform:translateY(-50%);gap:2px;background:var(--oe-surface);padding:2px 4px;border-radius:2px;z-index:1}.node-tree-item:hover .node-sidebar-actions{display:flex}.node-tree-item:hover .wbs-scope-badge,.node-tree-item:hover .focus-entity-badge{visibility:hidden}.wbs-action-btn.scope-action{font-size:10px;font-weight:700;color:var(--oe-primary)}.wbs-action-btn.scope-action:hover{background:var(--oe-primary);color:var(--color-text-pri)}.crew-detail-panel{width:420px;min-width:420px;border-left:1px solid var(--oe-border-subtle);background:var(--oe-surface);display:flex;flex-direction:column;overflow:hidden}.cdp-header{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--oe-border);background:var(--oe-surface)}.cdp-header-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.cdp-crew-name{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cdp-crew-code{font-size:11px;color:var(--oe-text-muted)}.cdp-close{background:transparent;border:none;color:var(--oe-text-muted);font-size:18px;cursor:pointer;padding:0 4px;line-height:1}.cdp-close:hover{color:var(--oe-text)}.cdp-override-banner{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#ffe6001f;border-bottom:2px solid var(--color-yellow);color:var(--color-yellow);font-size:12px;font-weight:600}.cdp-override-banner-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--color-yellow);color:var(--oe-on-warning);font-size:12px;font-weight:800;flex-shrink:0}.cdp-body{flex:1;overflow-y:auto;padding:12px 16px}.cdp-section{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--oe-border)}.cdp-section:last-child{border-bottom:none}.cdp-section-title{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--oe-text);margin-bottom:8px}.cdp-section-count{font-size:10px;font-weight:600;color:var(--oe-primary);background:#00f0ff1a;padding:1px 6px;border-radius:2px}.cdp-section-modified{font-size:10px;font-weight:700;color:var(--color-yellow);background:#ffe60026;padding:2px 8px;border-radius:2px;letter-spacing:.5px}.cdp-empty{font-size:12px;margin:4px 0}.cdp-field-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.cdp-field{display:flex;flex-direction:column;gap:2px}.cdp-field>label{font-size:11px;font-weight:600;color:var(--oe-text-muted)}.cdp-field-cost{grid-column:1 / -1}.cdp-cost-value{font-size:14px;font-weight:600;color:var(--oe-primary)}.cdp-subsection-label{font-size:11px;font-weight:600;color:var(--oe-text-muted);padding:8px 8px 4px}.cdp-lines{display:flex;flex-direction:column;gap:2px;margin-bottom:4px}.cdp-line{border-radius:2px;border-left:3px solid transparent;transition:background .1s}.cdp-line:hover{background:var(--oe-surface-alt)}.cdp-line--modified{border-left-color:var(--oe-primary);background:#00f0ff0f}.cdp-line--modified:hover{background:#00f0ff1a}.cdp-line--excluded{border-left-color:var(--oe-danger);background:#ff33550a}.cdp-line--excluded:hover{background:#ff335514}.cdp-line--added{border-left-color:var(--color-green);background:#39ff140f}.cdp-line--added:hover{background:#39ff141a}.cdp-line-main{display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:12px;min-height:28px}.cdp-line-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex-shrink:1}.cdp-line-detail{color:var(--oe-text-muted);font-size:11px;white-space:nowrap;flex-shrink:0}.cdp-line-original{font-size:11px;color:var(--oe-text-muted);white-space:nowrap;flex-shrink:0}.cdp-line-original s{text-decoration:line-through;opacity:.6}.cdp-line-effective{font-size:12px;font-weight:600;color:var(--oe-text);white-space:nowrap;flex-shrink:0}.cdp-line--modified .cdp-line-effective{color:var(--oe-primary)}.cdp-line--added .cdp-line-effective{color:var(--color-green)}.cdp-tag{font-size:9px;font-weight:800;padding:2px 8px;border-radius:2px;letter-spacing:.8px;flex-shrink:0}.cdp-tag--excluded{background:#ff33552e;color:var(--color-red)}.cdp-tag--added{background:#39ff142e;color:var(--color-green)}.cdp-line-actions{margin-left:auto;display:flex;align-items:center;gap:4px;flex-shrink:0}.cdp-action-btn{background:transparent;border:none;color:var(--oe-text-muted);font-size:11px;cursor:pointer;padding:2px 6px;border-radius:2px;transition:all .1s}.cdp-action-btn:hover{background:var(--oe-surface-alt);color:var(--oe-text)}.cdp-action-btn--danger:hover{color:var(--oe-danger)}.cdp-inline-form{display:flex;align-items:center;gap:6px;padding:4px 10px 8px;flex-wrap:wrap}.cdp-inline-input{width:80px;font-size:12px;padding:3px 6px}.cdp-inline-submit{padding:3px 12px;font-size:11px}.cdp-add-section{margin-top:10px}.cdp-add-form{flex-direction:column;align-items:stretch}.cdp-add-form .inline-select{width:100%;box-sizing:border-box;font-size:12px}.cdp-add-row{display:flex;align-items:center;gap:6px}.cdp-add-buttons{display:flex;gap:8px}.cdp-footer{padding:8px 0;text-align:center}.cdp-link{background:transparent;border:none;color:var(--oe-primary);font-size:12px;cursor:pointer;padding:4px 8px}.cdp-link:hover{text-decoration:underline}.asgn-override-badge{font-size:10px;font-weight:700;color:var(--color-yellow);background:#ffe60026;padding:2px 8px;border-radius:2px;letter-spacing:.3px;flex-shrink:0}.reports-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:40px}.report-kpi-card{background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;padding:20px 24px;position:relative;overflow:hidden;transition:border-color .2s,box-shadow .2s}.report-kpi-card:hover{border-color:#00f0ff4d;box-shadow:0 4px 20px #0003}.report-kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--kpi-accent, var(--oe-primary));opacity:.7}.report-kpi-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);margin-bottom:8px}.report-kpi-value{font-size:32px;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--oe-text)}.heatmap-grid{display:flex;flex-wrap:wrap;gap:3px}.heatmap-cell{width:64px;height:48px;border-radius:2px;border:1px solid var(--oe-border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;cursor:default;transition:border-color .15s}.heatmap-cell:hover{border-color:var(--oe-primary)}.heatmap-legend{display:flex;align-items:center;gap:8px;margin-top:16px;justify-content:center}@media (max-width: 900px){.reports-kpi-row{grid-template-columns:repeat(2,1fr)}}@media print{:root{--oe-bg: #ffffff !important;--oe-surface: #ffffff !important;--oe-surface-alt: #f8f9fa !important;--oe-border: #dee2e6 !important;--oe-text: #1a1a1a !important;--oe-text-muted: #6c757d !important;--oe-table-header: #f1f3f5 !important;--oe-primary: #2563eb !important;--oe-success: #16a34a !important;--oe-warning: #d97706 !important;--oe-danger: #dc2626 !important}.app-header,.jones-chat-panel{display:none!important}.app-grid{display:block}.app-main{overflow:visible}.oe-table{border-collapse:collapse;width:100%}.oe-table th,.oe-table td{border:1px solid #dee2e6}.oe-table tbody tr{page-break-inside:avoid}.oe-table tbody tr:nth-child(2n){background:#f8f9fa}@page{margin:1.5cm;size:A4 landscape}.oe-section{page-break-inside:avoid}.report-kpi-card{border-color:#dee2e6}.report-kpi-card:before{background:#2563eb}}.rpt-frame{height:100%;overflow:auto;background:var(--oe-void);color:var(--oe-text-pri);font-family:var(--oe-font, "JetBrains Mono", monospace);font-size:var(--oe-fs-base, 13px)}.rpt-breadcrumb{display:flex;align-items:center;gap:6px;padding:8px 14px;height:32px;background:#14141e;border-bottom:1px solid var(--oe-b-subtle);font-size:12px;color:var(--oe-text-sec)}.rpt-breadcrumb-left{display:flex;align-items:center;gap:8px;min-width:0}.rpt-breadcrumb-right{margin-left:auto;font-size:11px;color:var(--oe-text-mut);letter-spacing:.03em;display:flex;align-items:center;gap:10px}.rpt-breadcrumb-sep{color:var(--oe-text-mut);opacity:.7}.rpt-breadcrumb-current{color:var(--oe-text-pri);font-weight:500}.rpt-breadcrumb-back{color:var(--oe-cyan);cursor:pointer;padding:2px 6px 2px 4px;border-radius:var(--oe-radius, 3px);font-weight:500;background:transparent;border:none;font-family:inherit;font-size:inherit;display:inline-flex;align-items:center;gap:4px}.rpt-breadcrumb-back:hover{background:#7ec8d414}.rpt-breadcrumb-stamp{font-variant-numeric:tabular-nums;opacity:.85;white-space:nowrap}.rpt-title-block{display:flex;align-items:flex-start;gap:16px;padding:12px 16px;border-bottom:1px solid var(--oe-b-subtle)}.rpt-title-main{flex:1 1 auto;min-width:0}.rpt-title-actions{display:flex;gap:6px;flex-shrink:0}.rpt-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--oe-text-mut);margin-bottom:3px}.rpt-title{margin:0 0 2px;font-size:16px;font-weight:600;color:var(--oe-text-pri);font-family:inherit}.rpt-subtitle{font-size:11px;color:var(--oe-text-sec);line-height:1.45}.rpt-btn-ghost,.rpt-btn-cyan{font-family:inherit;font-size:11px;padding:5px 12px;border-radius:var(--oe-radius, 3px);cursor:pointer;line-height:1.2}.rpt-btn-ghost{background:var(--oe-surface);color:var(--oe-text-pri);border:1px solid var(--oe-b-subtle);font-weight:500}.rpt-btn-ghost:hover:not(:disabled){background:var(--oe-surface-hover, rgba(255,255,255,.03));color:var(--oe-text-pri)}.rpt-btn-ghost:disabled{opacity:.5;cursor:default}.rpt-btn-cyan{background:var(--oe-cyan);color:#0a1016;border:none;font-weight:600}.rpt-btn-cyan:hover:not(:disabled){background:var(--oe-cyan-hover, #6ab8c4)}.rpt-btn-cyan:disabled{opacity:.5;cursor:default}.rpt-kpi-strip{display:grid;gap:1px;background:var(--oe-b-subtle);border-bottom:1px solid var(--oe-b-subtle)}.rpt-kpi-cell{background:var(--oe-surface);padding:8px 14px;min-width:0}.rpt-kpi-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--oe-text-mut);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rpt-kpi-value{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rpt-body{padding:14px 16px 20px}.rpt-table-wrap{background:var(--oe-void);border:1px solid var(--oe-b-subtle);border-radius:var(--oe-radius, 3px);overflow:hidden}.rpt-table{width:100%;border-collapse:collapse;font-size:12px}.rpt-th{padding:8px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--oe-text-sec);font-weight:600;background:var(--oe-table-header, #161620);border-bottom:1px solid var(--oe-b-subtle);white-space:nowrap}.rpt-th-l{text-align:left}.rpt-th-r{text-align:right}.rpt-row{height:28px;color:var(--oe-text-pri)}.rpt-row:nth-child(2n){background:#ffffff04}.rpt-row:hover{background:#7ec8d40a}.rpt-row-warn{color:var(--oe-yellow)}.rpt-td{padding:5px 12px;border-bottom:1px solid var(--oe-b-subtle);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:0}.rpt-td-l{text-align:left}.rpt-td-r{text-align:right}.rpt-td-meta{color:var(--oe-text-mut)}.rpt-row-totals{background:#7ec8d417!important;font-weight:700;height:34px}.rpt-row-totals .rpt-td{border-bottom:none;border-top:2px solid var(--oe-cyan);padding-top:8px;padding-bottom:8px}.rpt-row-totals:hover{background:#7ec8d421!important}.rpt-td-total-num{color:var(--oe-cyan)}.rpt-td-total-txt{color:var(--oe-text-sec)}.rpt-row-empty{height:48px}.rpt-td-empty{padding:14px;text-align:center;color:var(--oe-text-mut);font-size:12px}.rpt-dash-groups{padding:14px 16px;display:grid;gap:16px}.rpt-dash-group-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--oe-text-mut);font-weight:600}.rpt-dash-group-rule{flex:1;height:1px;background:var(--oe-b-subtle)}.rpt-dash-group-count{color:var(--oe-text-mut);font-weight:400;letter-spacing:.05em;font-variant-numeric:tabular-nums}.rpt-dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--oe-b-subtle);border:1px solid var(--oe-b-subtle);border-radius:var(--oe-radius, 3px)}@media (max-width: 900px){.rpt-dash-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.rpt-dash-grid{grid-template-columns:1fr}}.rpt-dash-card{background:var(--oe-void);padding:12px 14px 14px 12px;cursor:pointer;display:grid;gap:4px;transition:background var(--oe-motion-fast, .12s ease-out);position:relative}.rpt-dash-card:hover{background:var(--oe-hover, #2a2a35)}.rpt-dash-card:hover .rpt-dash-card-arrow{opacity:1;transform:translate(2px)}.rpt-dash-card:focus-visible{outline:1px solid var(--oe-cyan);outline-offset:-2px}.rpt-dash-card-arrow{position:absolute;right:10px;bottom:10px;font-size:12px;color:var(--oe-cyan);opacity:.4;transition:opacity var(--oe-motion-fast, .12s ease-out),transform var(--oe-motion-fast, .12s ease-out);pointer-events:none;font-weight:600}.rpt-dash-card-row{display:flex;align-items:center;gap:6px;min-width:0}.rpt-dash-card-glyph{font-size:11px;color:var(--oe-cyan)}.rpt-dash-card-glyph-warn{color:var(--oe-yellow)}.rpt-dash-card-name{color:var(--oe-text-pri);font-weight:600;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rpt-dash-card-stat{margin-left:auto;font-size:10px;color:var(--oe-text-mut);font-variant-numeric:tabular-nums;flex-shrink:0}.rpt-dash-card-stat-warn{color:var(--oe-yellow)}.rpt-dash-card-desc{color:var(--oe-text-sec);font-size:11px;line-height:1.45;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.rpt-chart-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--oe-text-mut);margin-bottom:6px}.rpt-chart-card{background:var(--oe-void);border:1px solid var(--oe-b-subtle);border-radius:var(--oe-radius, 3px);padding:10px}.rpt-chart-svg{width:100%;height:200px;display:block}.rpt-heatmap-card{background:var(--oe-void);border:1px solid var(--oe-b-subtle);border-radius:var(--oe-radius, 3px);padding:12px;overflow-x:auto}.rpt-heatmap-grid{display:grid;gap:2px;font-variant-numeric:tabular-nums;min-width:-moz-min-content;min-width:min-content}.rpt-heatmap-colhead{font-size:9px;color:var(--oe-text-mut);text-align:center;white-space:nowrap}.rpt-heatmap-rowlabel{font-size:10px;color:var(--oe-text-sec);padding:3px 8px 3px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.rpt-heatmap-cell{height:22px;font-size:10px;font-weight:500;display:flex;align-items:center;justify-content:center;color:var(--oe-text-pri);border-radius:1px}.rpt-heatmap-cell--dark{color:#0b0b12}.rpt-heatmap-cell--empty{color:var(--oe-text-mut);opacity:.5}.rpt-heatmap-legend{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:10px;color:var(--oe-text-sec)}.rpt-heatmap-legend-tick{font-variant-numeric:tabular-nums}.rpt-heatmap-swatch{width:18px;height:10px}.rpt-coverage{display:grid;grid-template-columns:240px 1fr;gap:16px}@media (max-width: 720px){.rpt-coverage{grid-template-columns:1fr}}.rpt-donut-card{background:var(--oe-void);border:1px solid var(--oe-b-subtle);border-radius:var(--oe-radius, 3px);padding:14px;display:flex;flex-direction:column;align-items:center}.rpt-donut-eyebrow{align-self:flex-start;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--oe-text-mut)}.rpt-donut-legend{display:flex;gap:14px;margin-top:10px;font-size:11px;width:100%;justify-content:center}.rpt-donut-legend-item{display:flex;align-items:center;gap:5px;color:var(--oe-text-sec)}.rpt-donut-legend-swatch{width:8px;height:8px}.rpt-unassigned-card{background:var(--oe-void);border:1px solid var(--oe-b-subtle);border-radius:var(--oe-radius, 3px);overflow:hidden;min-width:0}.rpt-unassigned-header{padding:6px 12px;border-bottom:1px solid var(--oe-b-subtle);font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--oe-text-mut);display:flex;justify-content:space-between}.rpt-sidebar-group-row{display:flex;align-items:center;gap:6px;padding:4px 8px 4px 18px;cursor:pointer;font-size:11px;color:var(--oe-text-sec);-webkit-user-select:none;-moz-user-select:none;user-select:none}.rpt-sidebar-group-row:hover{background:var(--oe-surface-hover, rgba(255,255,255,.03))}.rpt-sidebar-group-caret{display:inline-block;width:10px;font-size:10px;color:var(--oe-text-mut);transition:transform .12s ease-out}.rpt-sidebar-group-caret--open{transform:rotate(90deg)}.rpt-sidebar-group-label{flex:1;text-transform:none;letter-spacing:0}.rpt-sidebar-group-count{font-size:10px;color:var(--oe-text-mut);font-variant-numeric:tabular-nums}.rpt-sidebar-leaf{padding-left:38px!important}.rpt-sidebar-leaf .ex-item-label{color:var(--oe-text-pri)}.rpt-sidebar-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0;font-size:11px;line-height:1;color:var(--oe-cyan);background:transparent!important;border-radius:0}.rpt-sidebar-icon--warn{color:var(--oe-yellow)}.jones-panel{grid-area:jones;background:var(--oe-surface);border-left:1px solid var(--oe-border);display:flex;flex-direction:column;overflow:hidden}.jones-panel--center{border-left:none;background:var(--oe-bg);height:100%}.jones-panel--center .jones-messages{max-width:900px;margin:0 auto;width:100%;padding:24px 32px}.jones-panel--center .jones-msg{max-width:90%}.jones-panel--center .jones-input-wrapper{max-width:900px;margin:0 auto;width:100%}.jones-panel--center .jones-input{padding:12px 32px}.jones-panel--center .jones-empty{margin-top:120px;font-size:14px}.jones-panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--oe-border);flex-shrink:0}.jones-panel-title{font-size:14px;font-weight:600}.jones-panel-tabs{display:flex;gap:0}.jones-panel-tab{background:transparent;border:none;font-family:inherit;font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--color-text-mut);padding:4px 12px;cursor:pointer;transition:color .15s}.jones-panel-tab:hover{color:var(--color-text-sec)}.jones-panel-tab--active{color:var(--color-text-pri)}.jones-panel-status{display:flex;align-items:center;gap:6px;font-size:11px}.jones-status-label{font-size:11px;font-weight:600;color:var(--color-text-mut)}.jones-status-label--ok{color:var(--color-green)}.jones-stream{flex:1;overflow-y:auto;padding:12px;font-size:11px;color:var(--color-text-sec)}.jones-stream-entry{padding:2px 0;font-family:var(--font-mono)}.jones-stream-tag{color:var(--color-text-mut);margin-right:8px}.jones-messages{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px}.jones-empty,.jones-loading{color:var(--oe-text-muted);font-size:13px;text-align:center;margin-top:40px;padding:0 20px;line-height:1.5}.jones-msg{display:flex;flex-direction:column;max-width:85%}.jones-msg--user{align-self:flex-end}.jones-msg--jones{align-self:flex-start}.jones-msg-label{font-size:11px;color:var(--oe-primary);font-weight:600;margin-bottom:2px}.jones-msg-bubble{padding:8px 12px;border-radius:2px;font-size:13px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.jones-msg--user .jones-msg-bubble{background:#39ff1414;color:var(--color-text-pri);border-left:2px solid var(--color-green);border-bottom-right-radius:2px}.jones-msg--jones .jones-msg-bubble{background:var(--oe-surface-alt);color:var(--oe-text);border-bottom-left-radius:2px;white-space:normal}.jones-markdown{line-height:1.55}.jones-markdown p{margin:0 0 10px}.jones-link--artifact{background:none;border:none;padding:0;margin:0;font:inherit;color:var(--color-cyan);text-decoration:underline;text-underline-offset:2px;text-decoration-color:#7ec8d466;cursor:pointer;display:inline}.jones-link--artifact:hover{text-decoration-color:var(--color-cyan);background:#7ec8d414}.jones-markdown p:last-child{margin-bottom:0}.jones-markdown ul,.jones-markdown ol{margin:4px 0 10px;padding-left:18px}.jones-markdown li{margin-bottom:4px}.jones-markdown li>p{margin-bottom:2px}.jones-markdown strong{font-weight:700;color:var(--color-text-pri)}.jones-markdown em{color:var(--color-text-sec);font-style:italic}.jones-markdown code{background:#00f0ff12;border:1px solid rgba(0,240,255,.18);color:var(--color-cyan);padding:1px 5px;border-radius:2px;font-size:11.5px;font-family:var(--font-family-mono)}.jones-markdown pre{background:var(--color-void);border:1px solid rgba(0,240,255,.12);border-left:2px solid var(--color-cyan);padding:10px 12px;border-radius:2px;overflow-x:auto;margin:8px 0}.jones-markdown pre code{background:none;border:none;color:var(--color-text-sec);padding:0;font-size:11.5px}.jones-markdown table{border-collapse:collapse;margin:8px 0;font-size:11px;width:100%}.jones-markdown th,.jones-markdown td{border:1px solid var(--oe-border);padding:4px 8px;text-align:left}.jones-markdown th{background:#00f0ff0f;color:var(--color-cyan);font-weight:600;font-size:10.5px;text-transform:uppercase;letter-spacing:.4px}.jones-markdown td{color:var(--color-text-sec)}.jones-markdown tr:nth-child(2n) td{background:#ffffff05}.jones-msg-bubble:has(table){overflow-x:auto}.jones-markdown h1{font-size:14px;font-weight:700;color:var(--color-text-pri);margin:12px 0 6px;border-bottom:1px solid var(--oe-border);padding-bottom:4px}.jones-markdown h2{font-size:13px;font-weight:700;color:var(--color-cyan);margin:10px 0 5px}.jones-markdown h3{font-size:12px;font-weight:600;color:var(--color-text-sec);margin:8px 0 4px}.jones-markdown blockquote{border-left:2px solid var(--color-cyan);margin:8px 0;padding:4px 12px;background:#00f0ff0a;color:var(--color-text-sec)}.jones-markdown hr{border:none;border-top:1px solid var(--oe-border);margin:10px 0}.jones-msg-bubble--streaming{opacity:.9}.jones-thinking{display:flex;align-items:center;padding:12px 16px}.jones-thinking-dots{display:flex;gap:5px}.jones-thinking-dots span{width:7px;height:7px;border-radius:50%;background:var(--oe-text-muted);animation:jones-thinking-pulse 1.4s ease-in-out infinite}.jones-thinking-dots span:nth-child(2){animation-delay:.2s}.jones-thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes jones-thinking-pulse{0%,80%,to{opacity:.25;transform:scale(.85)}40%{opacity:1;transform:scale(1.1)}}.jones-cursor{display:inline-block;width:6px;height:14px;background:var(--oe-primary);margin-left:2px;vertical-align:text-bottom;animation:jones-blink .8s step-end infinite}@keyframes jones-blink{50%{opacity:0}}.jones-msg-model{font-size:10px;color:var(--color-cyan);opacity:.4;margin-top:2px;margin-right:8px;font-family:var(--font-family-mono, monospace)}.jones-msg-tokens{font-size:10px;color:var(--oe-text-muted);opacity:.5;margin-top:2px;font-family:var(--font-family-mono, monospace)}.jones-msg-time{font-size:10px;color:var(--oe-text-muted);margin-top:2px}.jones-msg--user .jones-msg-time{text-align:right}.jones-input-wrapper{border-top:1px solid var(--oe-border);flex-shrink:0}.jones-file-chips{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px 0}.jones-file-chip{display:inline-flex;align-items:center;gap:4px;background:var(--oe-surface-alt);border:1px solid var(--oe-border);border-radius:2px;padding:2px 8px;font-size:11px;color:var(--oe-text-muted)}.jones-file-chip--loading{animation:chip-pulse 1.2s ease-in-out infinite}@keyframes chip-pulse{0%,to{opacity:1}50%{opacity:.4}}.jones-file-chip-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jones-file-chip-remove{background:none;border:none;color:var(--oe-text-muted);cursor:pointer;font-size:13px;padding:0 2px;line-height:1}.jones-file-chip-remove:hover{color:var(--oe-danger)}.jones-file-chip--error{border-color:var(--oe-danger);color:var(--oe-danger)}.jones-extract-preview{border-top:1px solid var(--oe-border);background:var(--oe-surface-alt);max-height:50vh;display:flex;flex-direction:column}.jones-extract-preview-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--oe-border);flex-shrink:0}.jones-extract-preview-title{font-size:12px;font-weight:600;color:var(--oe-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jones-extract-preview-close{background:none;border:none;color:var(--oe-text-muted);cursor:pointer;font-size:18px;line-height:1;padding:0 4px}.jones-extract-preview-close:hover{color:var(--oe-text)}.jones-extract-preview-body{flex:1;overflow:auto;padding:10px 12px;margin:0;font-size:11px;line-height:1.5;color:var(--oe-text);white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono)}.jones-extract-preview-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:6px 12px;border-top:1px solid var(--oe-border);flex-shrink:0}.jones-extract-preview-size{font-size:11px;color:var(--oe-text-muted)}.jones-input{display:flex;align-items:flex-end;gap:8px;padding:10px 12px}.jones-input-attach{width:32px;height:32px;border-radius:50%;background:transparent;color:var(--oe-text-muted);border:1px solid var(--oe-border);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .15s,border-color .15s}.jones-input-attach:hover:not(:disabled){color:var(--oe-primary);border-color:var(--oe-primary)}.jones-input-attach:disabled{opacity:.4;cursor:not-allowed}.jones-input-prompt,.jones-input-cursor{display:none}.jones-input-field{flex:1;background:var(--oe-bg);border:1px solid var(--oe-border);border-radius:2px;color:var(--oe-text);font-size:13px;padding:8px 12px;resize:none;font-family:inherit;max-height:100px;line-height:1.4}.jones-input-field::-moz-placeholder{color:var(--oe-text-muted)}.jones-input-field::placeholder{color:var(--oe-text-muted)}.jones-input-field:focus{outline:none;border-color:var(--oe-primary)}.jones-input-send{width:32px;height:32px;border-radius:50%;background:var(--oe-primary);color:var(--oe-on-primary);border:none;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.jones-input-send:hover:not(:disabled){background:var(--oe-primary-hover)}.jones-input-send:disabled{opacity:.4;cursor:not-allowed}.jones-new-chat-btn{background:transparent;border:1px solid var(--color-elevated);color:var(--color-text-sec);padding:2px 8px;font-family:var(--font-family-mono);font-size:10px;border-radius:2px;cursor:pointer;margin-left:auto}.jones-new-chat-btn:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.jones-date-separator{text-align:center;font-size:10px;color:var(--color-text-sec);padding:8px 0 4px}.jones-tool-card{border:1px solid var(--oe-border);border-left:2px solid transparent;border-radius:2px;font-family:var(--font-family-mono, "JetBrains Mono", monospace);font-size:12px;margin:3px 0;overflow:hidden}.jones-tool-card--pending{border-left-color:var(--color-cyan)}.jones-tool-card--call{border-left-color:var(--color-yellow);opacity:.85}.jones-tool-call-icon{color:var(--color-yellow);font-weight:700;margin-right:4px}.jones-tool-card--ok{border-left-color:var(--color-green)}.jones-tool-card--err{border-left-color:var(--color-red)}.jones-tool-header{display:flex;flex-direction:row;align-items:center;gap:8px;width:100%;background:var(--color-elevated);padding:5px 10px;cursor:pointer;border:none;color:inherit;font-family:inherit;font-size:inherit;text-align:left;min-height:28px}.jones-tool-header:hover{background:var(--color-b-subtle)}.jones-spinner-char{color:var(--color-cyan);font-size:13px;line-height:1;flex-shrink:0;width:14px;display:inline-block}.jones-tool-status-icon{font-size:12px;font-weight:700;line-height:1;flex-shrink:0;width:14px;display:inline-block}.jones-tool-status-icon--ok{color:var(--color-green)}.jones-tool-status-icon--err{color:var(--color-red)}.jones-tool-verb{font-size:12px;color:var(--color-text-sec);flex-shrink:0}.jones-tool-hint{font-size:11px;color:var(--color-text-mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.jones-tool-right{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.jones-elapsed{font-size:11px;color:var(--color-text-mut);font-variant-numeric:tabular-nums}.jones-tool-chevron{color:var(--color-text-mut);font-size:10px;flex-shrink:0}.jones-text-step{padding:6px 2px;font-size:13px;color:var(--color-text-pri);line-height:1.55}.jones-text-step:first-child{padding-top:2px}.jones-text-step+.jones-tool-card{margin-top:6px}.jones-tool-card+.jones-text-step{margin-top:6px}.jones-tool-args,.jones-tool-result{margin:0;background:var(--color-void);color:var(--color-text-mut);font-family:var(--font-family-mono, "JetBrains Mono", monospace);font-size:11px;padding:8px 10px;max-height:200px;overflow-y:auto;border-top:1px solid var(--oe-border);white-space:pre-wrap;word-break:break-all}.jones-thought-card{border:1px solid rgba(255,255,255,.06);border-left:2px solid rgba(255,255,255,.15);border-radius:2px;font-family:var(--font-family-mono, "JetBrains Mono", monospace);font-size:11px;margin:3px 0;overflow:hidden;opacity:.6}.jones-thought-card:hover{opacity:.85}.jones-thought-header{display:flex;flex-direction:row;align-items:center;gap:6px;width:100%;background:transparent;border:none;padding:4px 10px;cursor:pointer;color:var(--color-text-mut);text-align:left}.jones-thought-header:hover{color:var(--color-text-sec)}.jones-thought-icon{font-size:13px;line-height:1;opacity:.7}.jones-thought-label{font-style:italic;flex:1;font-size:11px}.jones-thought-chevron{font-size:10px;opacity:.5}.jones-thought-body{margin:0;background:var(--color-void);color:var(--color-text-mut);font-family:var(--font-family-mono, "JetBrains Mono", monospace);font-size:11px;padding:8px 10px;max-height:300px;overflow-y:auto;border-top:1px solid rgba(255,255,255,.05);white-space:pre-wrap;word-break:break-word;font-style:italic}.jones-step-error{border:1px solid var(--color-red);background:#ff335514;color:var(--color-red);font-family:var(--font-family-mono, "JetBrains Mono", monospace);font-size:12px;padding:6px 10px;border-radius:2px;margin:6px 0}.jones-v2-toggle{background:var(--color-elevated);border:1px solid var(--oe-border);border-radius:2px;color:var(--color-cyan);font-family:var(--font-family-mono, "JetBrains Mono", monospace);font-size:11px;padding:2px 8px;cursor:pointer;letter-spacing:.5px}.jones-v2-toggle:hover{background:var(--color-b-subtle);border-color:var(--color-cyan)}.jones-model-bar{display:flex;align-items:center;gap:8px;padding:4px 12px 6px;border-top:1px solid rgba(26,26,46,.6);flex-shrink:0}.jones-model-label{font-size:9px;color:var(--color-text-mut);font-family:var(--font-family-mono);letter-spacing:.08em;text-transform:uppercase;flex-shrink:0}.jones-model-select{background:transparent;border:none;color:var(--color-text-mut);font-family:var(--font-family-mono);font-size:9px;cursor:pointer;flex:1;min-width:0;outline:none}.jones-model-select:hover{color:var(--color-text-sec)}.jones-model-select:focus{color:var(--color-cyan)}.jones-model-select:disabled{opacity:.4;cursor:default}.jones-status-strip{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 12px;font-family:var(--font-mono);font-size:10px;color:var(--color-text-mut);border-top:1px solid var(--color-b-subtle);background:var(--color-void);flex-shrink:0;min-width:0}.jones-status-model{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jones-status-model-select{background:transparent;border:none;padding:0;color:var(--color-text-mut);font-family:inherit;font-size:10px;cursor:pointer;outline:none;max-width:100%;text-overflow:ellipsis}.jones-status-model-select:hover{color:var(--color-text-sec)}.jones-status-model-select:disabled{opacity:.4;cursor:default}.jones-status-right{flex-shrink:0;white-space:nowrap}.jones-status-conn--connected{color:var(--color-green)}.jones-status-conn--connecting{color:var(--color-yellow)}.jones-status-conn--disconnected{color:var(--color-red)}.jones-drafting-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;background:color-mix(in srgb,var(--color-yellow) 8%,var(--color-surface));border-bottom:1px solid color-mix(in srgb,var(--color-yellow) 25%,transparent);flex-shrink:0;animation:jones-drafting-pulse 2s ease-in-out infinite}@keyframes jones-drafting-pulse{0%,to{opacity:1}50%{opacity:.8}}.jones-drafting-dot{width:8px;height:8px;border-radius:50%;background:var(--color-yellow);flex-shrink:0;animation:jones-dot-blink 1.5s ease-in-out infinite}@keyframes jones-dot-blink{0%,to{opacity:1}50%{opacity:.3}}.jones-drafting-text{display:flex;flex-direction:column;gap:1px;font-size:12px;line-height:1.3}.jones-drafting-text strong{color:var(--color-yellow);font-weight:600;font-size:12px}.jones-drafting-text span{color:var(--color-text-muted);font-size:11px}:is(.shell-dock,.jones-panel--expanded) .jones-panel{background:var(--color-void);border-left:none;min-width:0}:is(.shell-dock,.jones-panel--expanded) .jones-messages,:is(.shell-dock,.jones-panel--expanded) .jones-msg,:is(.shell-dock,.jones-panel--expanded) .jones-msg-bubble,:is(.shell-dock,.jones-panel--expanded) .jones-markdown{min-width:0;overflow-wrap:anywhere;word-break:break-word}:is(.shell-dock,.jones-panel--expanded) .jones-markdown pre{max-width:100%;overflow-x:auto}:is(.shell-dock,.jones-panel--expanded) .jones-markdown table{max-width:100%}:is(.shell-dock,.jones-panel--expanded) .jones-panel-header{display:none}:is(.shell-dock,.jones-panel--expanded) .jones-drafting-banner{padding:4px 12px 4px 20px;font-size:10px}:is(.shell-dock,.jones-panel--expanded) .jones-messages{padding:6px 12px;gap:0;font-family:var(--font-mono);font-size:12px;line-height:1.5;max-width:none;margin:0}:is(.shell-dock,.jones-panel--expanded) .jones-msg{max-width:100%;align-self:stretch;margin-bottom:0}:is(.shell-dock,.jones-panel--expanded) .jones-msg+.jones-msg{margin-top:6px}:is(.shell-dock,.jones-panel--expanded) .jones-msg-label,:is(.shell-dock,.jones-panel--expanded) .jones-msg-time,:is(.shell-dock,.jones-panel--expanded) .jones-msg-model{display:none}:is(.shell-dock,.jones-panel--expanded) .jones-msg-tokens{display:inline-block;margin-left:20px;margin-top:2px;font-size:10px;color:var(--color-text-mut);opacity:.5;font-family:var(--font-family-mono, monospace)}:is(.shell-dock,.jones-panel--expanded) .jones-msg--user .jones-msg-bubble{background:none;border:none;border-radius:0;padding:0 0 0 20px;position:relative;font-size:12px;color:var(--color-text-pri)}:is(.shell-dock,.jones-panel--expanded) .jones-msg--user .jones-msg-bubble:before{content:"❯";position:absolute;left:2px;top:0;color:var(--color-green);font-weight:700;font-size:13px}:is(.shell-dock,.jones-panel--expanded) .jones-msg--jones .jones-msg-bubble{background:none;border-radius:0;padding:0 0 0 20px;position:relative;font-size:12px;color:var(--color-text-pri)}:is(.shell-dock,.jones-panel--expanded) .jones-msg--jones .jones-msg-bubble:before{content:"●";position:absolute;left:4px;top:2px;color:var(--color-cyan);font-size:10px}:is(.shell-dock,.jones-panel--expanded) .jones-markdown{font-size:12px;line-height:1.5}:is(.shell-dock,.jones-panel--expanded) .jones-markdown p{margin:0}:is(.shell-dock,.jones-panel--expanded) .jones-markdown p+p{margin-top:4px}:is(.shell-dock,.jones-panel--expanded) .jones-markdown ul,:is(.shell-dock,.jones-panel--expanded) .jones-markdown ol{padding-left:16px;margin:2px 0}:is(.shell-dock,.jones-panel--expanded) .jones-markdown li{margin:0}:is(.shell-dock,.jones-panel--expanded) .jones-markdown code{background:none;padding:0;border:none;border-radius:0;color:var(--color-cyan);font-size:12px}:is(.shell-dock,.jones-panel--expanded) .jones-markdown pre{background:var(--color-surface);border:none;border-left:2px solid var(--color-cyan);padding:6px 10px;margin:4px 0;border-radius:0}:is(.shell-dock,.jones-panel--expanded) .jones-markdown pre code{color:var(--color-text-pri)}:is(.shell-dock,.jones-panel--expanded) .jones-markdown h1,:is(.shell-dock,.jones-panel--expanded) .jones-markdown h2,:is(.shell-dock,.jones-panel--expanded) .jones-markdown h3{font-size:12px;font-weight:700;color:var(--color-cyan);margin:6px 0 2px;border:none;padding:0}:is(.shell-dock,.jones-panel--expanded) .jones-markdown strong{color:var(--color-text-pri)}:is(.shell-dock,.jones-panel--expanded) .jones-thinking{padding:0 0 0 20px;background:none;position:relative}:is(.shell-dock,.jones-panel--expanded) .jones-thinking:before{content:"●";position:absolute;left:4px;top:2px;color:var(--color-cyan);font-size:10px;animation:jones-terminal-pulse 1s ease-in-out infinite}:is(.shell-dock,.jones-panel--expanded) .jones-thinking-dots{display:none}@keyframes jones-terminal-pulse{0%,to{opacity:1}50%{opacity:.3}}:is(.shell-dock,.jones-panel--expanded) .jones-cursor{background:var(--color-cyan);animation:jones-terminal-pulse .6s ease-in-out infinite}:is(.shell-dock,.jones-panel--expanded) .jones-date-separator{font-size:9px;color:var(--color-text-mut);padding:8px 0 4px;border:none;margin:4px 0 0;text-align:center;display:flex;align-items:center;gap:8px}:is(.shell-dock,.jones-panel--expanded) .jones-date-separator:before,:is(.shell-dock,.jones-panel--expanded) .jones-date-separator:after{content:"";flex:1;border-top:1px solid var(--color-b-subtle)}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line-wrap{margin:0}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line{background:none;border:none;padding:0 0 0 20px;color:var(--color-text-sec);font-family:inherit;font-size:12px;line-height:1.5;cursor:pointer;text-align:left;display:flex;align-items:baseline;gap:8px;width:100%;position:relative}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line:hover{color:var(--color-text-pri)}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line-glyph{position:absolute;left:4px;top:2px;font-size:11px;width:14px;flex-shrink:0}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line-glyph--call{color:var(--color-yellow)}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line-glyph--ok{color:var(--color-green);font-weight:700}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line-glyph--err{color:var(--color-red);font-weight:700}:is(.shell-dock,.jones-panel--expanded) .jones-spinner-char{position:absolute;left:4px;top:2px;width:14px;font-size:11px;color:var(--color-cyan)}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line-verb{color:var(--color-text-sec);flex-shrink:0}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line-hint{color:var(--color-text-mut);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line-hint:before{content:"· ";color:var(--color-text-mut)}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line-elapsed{margin-left:auto;color:var(--color-text-mut);font-variant-numeric:tabular-nums;flex-shrink:0}:is(.shell-dock,.jones-panel--expanded) .jones-tool-line-payload{background:var(--color-surface);color:var(--color-text-mut);font-family:inherit;font-size:11px;line-height:1.5;margin:2px 0 4px 20px;padding:6px 10px;max-height:200px;overflow:auto;white-space:pre-wrap;word-break:break-all;border-radius:2px}:is(.shell-dock,.jones-panel--expanded) .jones-tool-card{display:none}:is(.shell-dock,.jones-panel--expanded) .jones-input{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--color-void);position:relative;border-top:1px solid var(--color-b-subtle)}:is(.shell-dock,.jones-panel--expanded) .jones-input-prompt{display:inline-block;color:var(--color-green);font-weight:700;font-size:13px;flex-shrink:0;font-family:var(--font-mono)}:is(.shell-dock,.jones-panel--expanded) .jones-input-field{background:transparent;border:none;padding:0;color:var(--color-text-pri);font-family:var(--font-mono);font-size:13px;line-height:1.5;flex:1;outline:none;resize:none;max-height:100px}:is(.shell-dock,.jones-panel--expanded) .jones-input-field::-moz-placeholder{color:var(--color-text-mut)}:is(.shell-dock,.jones-panel--expanded) .jones-input-field::placeholder{color:var(--color-text-mut)}:is(.shell-dock,.jones-panel--expanded) .jones-input-field{caret-color:transparent}:is(.shell-dock,.jones-panel--expanded) .jones-input-cursor{display:inline-block;width:7px;height:14px;background:var(--color-cyan);animation:jones-blink 1s step-end infinite;position:absolute;left:24px;top:50%;transform:translateY(-50%);pointer-events:none;flex-shrink:0;font-family:var(--font-mono);font-size:13px}:is(.shell-dock,.jones-panel--expanded) .jones-input-attach,:is(.shell-dock,.jones-panel--expanded) .jones-input-send{display:none}:is(.shell-dock,.jones-panel--expanded) .jones-status-strip{padding:2px 12px;font-size:9px;background:var(--color-void)}:is(.shell-dock,.jones-panel--expanded) .jones-status-model-select{font-size:9px}:is(.shell-dock,.jones-panel--expanded) .jones-model-bar{display:none}.jones-empty-terminal{padding:12px 16px;font-family:var(--font-mono);font-size:13px;line-height:1.5}.jones-empty-greeting{padding-left:20px;position:relative;color:var(--color-text-pri)}.jones-empty-greeting:before{content:"●";position:absolute;left:4px;top:4px;color:var(--color-cyan);font-size:10px}.jones-empty-hint{padding-left:20px;color:var(--color-text-mut);margin-top:4px}:is(.shell-dock,.jones-panel--expanded) .jones-empty-terminal{padding:6px 12px;font-size:12px}:is(.shell-dock,.jones-panel--expanded) .jones-empty-greeting:before{top:2px}:is(.shell-dock,.jones-panel--expanded) .jones-empty-hint{margin-top:2px}:is(.shell-dock,.jones-panel--expanded) .jones-input-wrapper{position:relative;max-width:none;margin:0}:is(.shell-dock,.jones-panel--expanded) .jones-empty{display:none}:is(.shell-dock,.jones-panel--expanded) .jones-loading{font-size:12px;font-family:var(--font-mono);color:var(--color-text-mut, var(--oe-text-muted));padding-left:20px;text-align:left;margin-top:8px}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-popover{position:absolute;bottom:100%;left:12px;right:12px;background:var(--color-void);border:1px solid var(--color-b-subtle);border-radius:3px;box-shadow:0 6px 24px #0009;max-height:260px;overflow-y:auto;font-family:var(--font-mono);z-index:100}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-popover-header{display:flex;justify-content:space-between;padding:4px 10px 3px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-mut);border-bottom:1px solid var(--color-b-subtle)}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-popover-kbd kbd{background:var(--color-elevated);color:var(--color-text-sec);padding:0 4px;border-radius:2px;border:1px solid var(--color-b-subtle);font-family:inherit;font-size:9px;margin:0 2px}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-item{display:grid;grid-template-columns:150px 1fr auto;gap:12px;padding:4px 10px;font-size:12px;align-items:baseline;width:100%;background:none;border:none;text-align:left;cursor:pointer;color:inherit;font-family:inherit}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-item--sel{background:#7ec8d414;border-left:2px solid var(--color-cyan);padding-left:8px}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-item-name{color:var(--color-cyan)}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-item-args{color:var(--color-text-mut);font-weight:400}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-item-desc{color:var(--color-text-sec)}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-item-badge{font-size:9px;text-transform:uppercase;letter-spacing:.08em;padding:1px 5px;border-radius:2px;color:var(--color-text-mut)}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-item-badge--local{background:#7ec8d41f;color:var(--color-cyan)}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-item-badge--prompt{background:#d4a8431f;color:var(--color-yellow)}:is(.shell-dock,.jones-panel--expanded) .jones-cmd-item-badge--action{background:#4ec86a1f;color:var(--color-green)}.jones-intent-chips{display:flex;gap:4px;padding:4px 8px}.jones-intent-chip{font-size:10px;font-family:var(--font-mono);background:var(--color-elevated);color:var(--color-text-sec);padding:1px 6px;border-radius:2px}.jones-msg--queued{opacity:.5;cursor:pointer}.jones-msg--queued:hover{opacity:.75}.jones-msg-caption{font-size:11px;color:var(--color-text-sec);margin-top:4px}.jones-msg-caption--interrupted{color:var(--color-yellow)}.jones-input-edit-badge{font-size:11px;color:var(--color-cyan);padding:2px 6px;border:1px solid var(--color-cyan);border-radius:3px;margin-right:6px}.jones-shortcuts-hint{position:relative;display:inline-block;flex-shrink:0}.jones-shortcuts-hint-btn{background:transparent;border:none;color:var(--color-text-mut);font-size:11px;font-family:var(--font-mono);cursor:pointer;padding:2px 6px;white-space:nowrap}.jones-shortcuts-hint-btn:hover{color:var(--color-text-pri)}.jones-shortcuts-hint-popover{position:absolute;bottom:100%;left:0;margin-bottom:6px;background:var(--color-elevated);border:1px solid var(--color-b-subtle);border-radius:3px;padding:8px 10px;font-size:11px;white-space:nowrap;z-index:100}.jones-shortcuts-hint-row{margin:4px 0;color:var(--color-text-pri)}.jones-shortcuts-hint-row kbd{background:var(--color-void);border:1px solid var(--color-b-subtle);border-radius:2px;padding:1px 4px;font-family:var(--font-mono)}.project-landing-shell{display:grid;grid-template-columns:1fr;grid-template-areas:"main";height:100vh;overflow:hidden;transition:grid-template-columns .2s ease}.project-landing-shell--jones-open{grid-template-columns:1fr 380px;grid-template-areas:"main jones"}.project-landing{position:relative;min-height:100vh;background:var(--oe-bg);display:flex;flex-direction:column;align-items:center;padding:80px 24px 40px;overflow-y:auto}.project-landing-header{text-align:center;margin-bottom:48px}.project-landing-logo{width:64px;height:64px;border-radius:2px;margin:0 auto 16px;display:block}.project-landing-title{font-size:36px;font-weight:800;letter-spacing:-.02em;margin:0 0 8px;color:var(--oe-text)}.project-landing-subtitle{font-size:16px;color:var(--oe-text-muted);margin:0}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;width:100%;max-width:960px}.project-card{background:#11182780;border:1px solid var(--color-b-subtle);border-radius:2px;padding:24px;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;flex-direction:column;gap:10px}.project-card:hover{border-color:var(--color-cyan);box-shadow:0 4px 24px #00f0ff1f;transform:translateY(-2px)}.project-card--new{border-style:dashed;border-color:var(--color-b-active);align-items:center;justify-content:center;text-align:center;min-height:160px}.project-card--new:hover{border-color:var(--color-cyan);background:#00f0ff0d}.project-card-header{display:flex;justify-content:space-between;align-items:center}.project-card-code{font-size:12px;font-weight:600;color:var(--oe-primary);background:#00f0ff1a;padding:2px 10px;border-radius:2px}.project-card-delete{background:none;border:none;color:var(--oe-text-muted);font-size:18px;cursor:pointer;padding:0 4px;line-height:1;opacity:0;transition:opacity .15s,color .15s}.project-card:hover .project-card-delete{opacity:1}.project-card-delete:hover{color:var(--oe-danger)}.project-card-name{font-size:16px;font-weight:600;color:var(--oe-text)}.project-card-meta{display:flex;gap:12px;font-size:12px;color:var(--oe-text-muted)}.project-card-plus{font-size:36px;font-weight:300;color:var(--oe-text-muted);line-height:1}.landing-top-bar{position:absolute;top:16px;right:24px;z-index:10;display:flex;align-items:center;gap:12px}.landing-jones-toggle{width:36px;height:36px;border-radius:2px;border:1px solid var(--oe-border);background:var(--oe-surface);color:var(--oe-text-muted);font-weight:700;font-size:14px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.landing-jones-toggle:hover{border-color:var(--oe-primary);color:var(--oe-primary)}.landing-jones-toggle--active{background:var(--oe-primary);border-color:var(--oe-primary);color:var(--oe-on-primary)}.overview-dashboard{padding:24px;overflow-y:auto;height:100%;display:flex;flex-direction:column;gap:20px}.overview-loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--oe-text-muted);font-size:14px}.overview-empty-state{text-align:center;padding:48px 24px;color:var(--oe-text);font-size:15px}.overview-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.overview-stat-card{background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;padding:24px 20px 20px;display:flex;flex-direction:column;gap:6px}.overview-stat-value{font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.1}.overview-stat--cost{color:var(--color-green)}.overview-stat--hours{color:var(--color-cyan)}.overview-stat--days{color:var(--color-yellow)}.overview-stat--peak{color:var(--color-red)}.overview-stat-label{font-size:12px;font-weight:500;color:var(--oe-text-muted);text-transform:uppercase;letter-spacing:.05em}.overview-card{background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;overflow:hidden}.overview-card--tree{overflow:visible;flex-shrink:0}.overview-card--chart{min-width:0}.overview-card-header{display:flex;align-items:baseline;justify-content:space-between;padding:16px 20px 12px}.overview-card-title{font-size:15px;font-weight:600;color:var(--oe-text);margin:0}.overview-card-subtitle{font-size:12px;color:var(--oe-text-muted)}.overview-phase-bars{padding:0 20px 16px;display:flex;flex-direction:column;gap:10px}.overview-phase-row{display:grid;grid-template-columns:200px 1fr 100px;align-items:center;gap:12px}.overview-phase-label{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden}.overview-phase-code{font-size:12px;font-weight:600;color:var(--oe-primary);flex-shrink:0}.overview-phase-name{font-size:13px;color:var(--oe-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overview-phase-bar-track{height:20px;background:#ffffff08;border-radius:2px;overflow:hidden}.overview-phase-bar{height:100%;display:flex;border-radius:2px;overflow:hidden;transition:width .4s ease}.overview-phase-segment{height:100%;min-width:1px;transition:width .3s ease}.overview-phase-amount{font-size:13px;font-weight:500;color:var(--oe-text);text-align:right;font-variant-numeric:tabular-nums}.overview-phase-legend{display:flex;gap:16px;padding-top:8px;border-top:1px solid var(--oe-border);margin-top:4px}.overview-legend-item{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--oe-text-muted)}.overview-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.overview-chart-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.overview-coverage-body{display:flex;align-items:center;gap:32px;padding:16px 24px 24px}.overview-ring-container{flex-shrink:0}.overview-ring{width:100px;height:100px;border-radius:50%;background:conic-gradient(var(--color-green) 0deg var(--coverage-pct),rgba(255,255,255,.08) var(--coverage-pct) 360deg);display:flex;align-items:center;justify-content:center;position:relative}.overview-ring:after{content:"";position:absolute;width:68px;height:68px;border-radius:50%;background:var(--oe-surface)}.overview-ring-value{position:relative;z-index:1;font-size:22px;font-weight:700;color:var(--oe-text)}.overview-coverage-detail{display:flex;flex-direction:column;gap:10px}.overview-coverage-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--oe-text)}.overview-coverage-row strong{margin-left:auto;font-variant-numeric:tabular-nums}.overview-crew-list{padding:0 4px 8px;max-height:260px;overflow-y:auto}.overview-crew-row{display:flex;align-items:center;gap:10px;padding:8px 16px;font-size:13px;border-radius:2px;transition:background .1s}.overview-crew-row:hover{background:#ffffff08}.overview-crew-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.overview-crew-name{font-weight:500;color:var(--oe-text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-crew-asgn{font-size:11px;color:var(--oe-text-muted);flex-shrink:0}.overview-crew-cost{font-weight:500;color:var(--oe-text);font-variant-numeric:tabular-nums;flex-shrink:0}.overview-tree-actions{display:flex;gap:8px}.overview-tree-btn{font-size:12px;padding:4px 12px;border-radius:2px;border:1px solid var(--oe-border);background:transparent;color:var(--oe-text-muted);cursor:pointer;transition:border-color .15s,color .15s}.overview-tree-btn:hover{border-color:var(--oe-primary);color:var(--oe-primary)}.overview-tree-wrap{overflow:visible}.overview-tree-table{width:100%;border-collapse:collapse;font-size:13px}.overview-tree-table thead th{padding:8px 16px;text-align:left;font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--oe-text-muted);border-bottom:1px solid var(--oe-border);position:sticky;top:0;background:var(--oe-surface)}.overview-tree-table thead th.overview-tree-num{text-align:right}.overview-tree-table tbody td{padding:7px 16px;color:var(--oe-text);border-bottom:1px solid rgba(255,255,255,.025);font-variant-numeric:tabular-nums;white-space:nowrap}.overview-tree-num{text-align:right;color:var(--oe-text-muted);min-width:90px}.overview-tree-total{font-weight:600;color:var(--oe-text)}.overview-tree-pct{min-width:55px;color:var(--oe-text-muted);font-size:12px}.overview-tree-row{cursor:default;transition:background .1s}.overview-tree-row:hover td{background:#ffffff05}.overview-tree-row--phase>td{font-weight:600;border-bottom:1px solid var(--oe-border)}.overview-tree-row--phase>td:first-child{font-size:14px}.overview-tree-row--zero .overview-tree-num{opacity:.35}.overview-tree-toggle{font-size:9px;margin-right:6px;color:var(--oe-text-muted);display:inline-block;width:14px;text-align:center;cursor:pointer}.overview-tree-code{font-weight:600;color:var(--oe-primary);margin-right:10px}.overview-tree-desc{color:var(--oe-text);font-weight:400}.overview-tree-row{cursor:pointer}.overview-tree-row--detail-open>td{background:#00f0ff0a;border-bottom-color:transparent}.overview-detail-row>td{padding:2px 16px 4px;background:#00f0ff05;border-bottom:1px solid var(--oe-border)}.detail-fold{display:flex;flex-direction:column;gap:1px}.detail-fold--empty{color:var(--oe-text-muted);font-size:11px;padding:2px 8px}.detail-fold-line{display:flex;align-items:center;gap:8px;padding:2px 8px 2px 0;font-size:12px;border-radius:2px}.detail-fold-line:hover{background:#ffffff05}.detail-fold-line--sub{border-left:2px solid var(--color-yellow)}.detail-fold-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.detail-fold-crew{font-weight:500;color:var(--oe-primary);white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis;max-width:160px}.detail-fold-field{color:var(--oe-text-muted);white-space:nowrap;font-size:11px}.detail-fold-cost{margin-left:auto;font-weight:600;color:var(--oe-text);font-variant-numeric:tabular-nums;white-space:nowrap}.detail-fold-meta{display:flex;align-items:center;gap:10px;padding:1px 8px 2px 0;font-size:11px}.detail-fold-tag{color:var(--oe-text-muted);white-space:nowrap}.detail-fold-focus{margin-left:auto;font-size:11px;font-weight:500;color:var(--oe-primary);background:none;border:none;padding:0;cursor:pointer;white-space:nowrap}.detail-fold-focus:hover{text-decoration:underline}@media (max-width: 900px){.overview-stats-row{grid-template-columns:repeat(2,1fr)}.overview-chart-row{grid-template-columns:1fr}.overview-phase-row{grid-template-columns:140px 1fr 80px}}.deck-empty{text-align:center;color:var(--oe-text-muted);font-size:14px;padding:40px 20px}.deck-group{background:var(--oe-surface);box-shadow:var(--oe-shadow-card);border-radius:2px;margin-bottom:12px;overflow:hidden}.deck-group-header{display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .15s}.deck-group-header:hover{background:var(--oe-surface-alt)}.deck-group-chevron{font-size:10px;color:var(--oe-text-muted);width:14px;flex-shrink:0}.deck-group-name{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.deck-group-count{font-size:11px;font-weight:600;color:var(--oe-primary);background:#00f0ff1a;padding:1px 7px;border-radius:2px}.deck-group-body{border-top:1px solid var(--oe-border)}.deck-table{width:100%;border-collapse:collapse;font-size:13px}.deck-table thead{background:var(--oe-table-header)}.deck-table th{text-align:left;padding:8px 12px;font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);border-bottom:1px solid var(--oe-border)}.deck-table td{padding:8px 12px;border-bottom:1px solid var(--oe-border)}.deck-row:hover{background:var(--oe-surface-alt)}.deck-cell-blended{font-weight:600;color:var(--oe-success)}.deck-burden-container td{border-bottom:1px solid var(--oe-border)}.deck-burden-rows{padding:6px 16px 10px 32px;background:var(--oe-bg)}.deck-burden-table{width:100%;border-collapse:collapse;font-size:12px;margin-bottom:6px}.deck-burden-table th{text-align:left;padding:4px 8px;font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--oe-text-muted);border-bottom:1px solid var(--oe-border)}.deck-burden-table td{padding:3px 8px;color:var(--oe-text-muted);border-bottom:1px solid var(--color-b-subtle)}.deck-burden-row:hover{background:var(--oe-surface-alt)}.deck-add-line-btn{background:transparent;border:1px dashed var(--oe-border);color:var(--oe-text-muted);padding:4px 12px;border-radius:2px;font-size:12px;cursor:pointer;transition:all .15s}.deck-add-line-btn:hover{border-color:var(--oe-primary);color:var(--oe-primary);background:#00f0ff0d}.sub-cost-detail{color:var(--oe-text-muted);font-size:13px}.asgn-card-sub{border-left:3px solid var(--color-yellow)}.asgn-card-type-badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-yellow);background:#ffe6001a;padding:1px 6px;border-radius:2px;margin-left:4px}.sub-modal-subdef{padding:8px 16px;margin-bottom:12px;background:var(--oe-surface-alt);border-radius:2px;font-weight:500;display:flex;align-items:center;gap:8px}.import-modal{background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;width:100%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 16px 48px #00000080}.import-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--oe-border)}.import-modal-body{padding:16px;overflow-y:auto;flex:1}.import-modal-input-group{display:flex;align-items:center;gap:12px;margin-bottom:8px}.import-file-input{font-size:12px;color:var(--oe-text-muted)}.import-textarea{width:100%;background:var(--oe-bg);border:1px solid var(--oe-border);border-radius:2px;color:var(--oe-text);font-size:12px;font-family:monospace;padding:10px;resize:vertical}.import-textarea:focus{outline:none;border-color:var(--oe-primary)}.import-preview{margin-top:12px}.import-preview-count{font-size:12px;font-weight:600;color:var(--oe-text-muted);margin-bottom:6px}.import-preview-scroll{max-height:200px;overflow:auto;border:1px solid var(--oe-border);border-radius:2px}.modal-content-override{background:var(--oe-surface);border-radius:2px;padding:20px 24px;min-width:560px;max-width:760px;max-height:80vh;overflow-y:auto;box-shadow:0 12px 40px #0000004d}.override-section-title{font-size:12px;font-weight:600;color:var(--oe-text-muted);text-transform:uppercase;letter-spacing:.5px;margin:16px 0 6px}.override-badge{display:inline-block;font-size:10px;font-weight:600;padding:1px 6px;border-radius:2px;text-transform:uppercase;letter-spacing:.3px}.override-badge--exclude{background:#ff335526;color:var(--color-red)}.override-badge--modify{background:#ffe60026;color:var(--color-yellow)}.override-badge--add{background:#39ff1426;color:var(--color-green)}.override-line-excluded td{text-decoration:line-through;opacity:.5}.override-summary{font-size:11px;color:var(--oe-text-muted);margin-top:2px}.override-date-range{font-size:10px;color:var(--oe-text-muted);margin-left:6px}.override-add-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid var(--oe-border)}.override-add-form label{display:flex;flex-direction:column;font-size:11px;font-weight:500;color:var(--oe-text-muted);gap:3px}.override-input{font-size:12px;padding:4px 8px;border:1px solid var(--oe-border);border-radius:2px;background:var(--oe-bg);color:var(--oe-text);width:90px}.override-input--wide{width:160px}.override-empty{font-size:12px;color:var(--oe-text-muted);margin:4px 0 12px;font-style:italic}.deck-grid{position:relative;background:var(--oe-surface);box-shadow:var(--oe-shadow-card);border-radius:2px;overflow:hidden;display:flex;flex-direction:column;height:100%}.deck-grid-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid var(--oe-border);flex-wrap:wrap}.deck-grid-toolbar-left,.deck-grid-toolbar-right{display:flex;align-items:center;gap:8px}.deck-grid-toolbar-label{font-size:11px;color:var(--oe-text-muted);white-space:nowrap}.deck-grid-toolbar-input{width:56px;font-size:12px;padding:3px 6px;background:var(--oe-bg);border:1px solid var(--oe-border);border-radius:2px;color:var(--oe-text);text-align:center}.deck-grid-toolbar-input:focus{outline:none;border-color:var(--oe-primary)}.deck-grid-scroll{flex:1;overflow:auto}.deck-grid-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:auto}.deck-grid-table thead{position:sticky;top:0;z-index:10;background:var(--oe-table-header)}.deck-grid-table th{text-align:left;padding:6px 10px;font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--oe-text-muted);border-bottom:2px solid var(--oe-border);border-right:1px solid var(--oe-border);white-space:nowrap}.deck-grid-table th:last-child{border-right:none}.deck-grid-table td{padding:3px 8px;border-bottom:1px solid var(--oe-border);border-right:1px solid var(--oe-border);white-space:nowrap}.deck-grid-table td:last-child{border-right:none}.deck-grid-table tbody tr:hover td{background:var(--oe-surface-alt)}.deck-grid-table .col-sticky-0{position:sticky;left:0;z-index:5;background:var(--oe-surface)}.deck-grid-table .col-sticky-1{position:sticky;left:80px;z-index:5;background:var(--oe-surface)}.deck-grid-table thead .col-sticky-0,.deck-grid-table thead .col-sticky-1{background:var(--oe-table-header);z-index:15}.deck-grid-table tbody tr:hover .col-sticky-0,.deck-grid-table tbody tr:hover .col-sticky-1{background:var(--oe-surface-alt)}.deck-col-code{width:80px;min-width:80px}.deck-col-name{min-width:140px;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deck-col-rate{width:90px;min-width:90px}.deck-col-group,.deck-col-class{width:100px;min-width:100px}.deck-col-ownership{width:80px;min-width:80px}.deck-col-burden{width:85px;min-width:85px;text-align:right}.deck-col-computed{width:100px;min-width:100px;text-align:right}.deck-col-actions,.deck-col-add{width:36px;min-width:36px;text-align:center}.deck-col-header{display:flex;flex-direction:column;gap:1px;text-align:right}.deck-col-header-code{font-size:11px;font-weight:600}.deck-col-header-basis{font-size:9px;font-weight:400;color:var(--oe-text-muted);text-transform:none;letter-spacing:0}.deck-cell-empty{color:var(--oe-text-muted);opacity:.3;cursor:pointer;text-align:right;font-size:12px}.deck-cell-empty:hover{opacity:.7}.deck-cell-burden{text-align:right}.deck-cell-burden .editable-cell{text-align:right;justify-content:flex-end}.deck-cell-computed{font-weight:600;color:var(--oe-success);text-align:right;font-size:13px}.deck-add-col-btn{background:transparent;border:1px dashed var(--oe-border);color:var(--oe-text-muted);font-size:14px;width:28px;height:28px;border-radius:2px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.deck-add-col-btn:hover{border-color:var(--oe-primary);color:var(--oe-primary)}.deck-add-col-form{position:absolute;top:100%;right:0;margin-top:4px;background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;padding:12px;box-shadow:0 4px 12px #0000004d;z-index:100;min-width:200px;display:flex;flex-direction:column;gap:8px}.deck-add-col-form label{font-size:11px;font-weight:500;color:var(--oe-text-muted);display:flex;flex-direction:column;gap:3px}.deck-add-col-form input,.deck-add-col-form select{font-size:12px;padding:4px 8px;background:var(--oe-bg);border:1px solid var(--oe-border);border-radius:2px;color:var(--oe-text)}.deck-add-col-form input:focus,.deck-add-col-form select:focus{outline:none;border-color:var(--oe-primary)}.deck-add-col-actions{display:flex;gap:6px;justify-content:flex-end;margin-top:4px}.deck-row-delete{background:transparent;border:none;color:var(--oe-text-muted);font-size:14px;cursor:pointer;opacity:0;transition:all .1s;padding:0 4px;line-height:1}.deck-grid-table tbody tr:hover .deck-row-delete{opacity:.5}.deck-row-delete:hover{opacity:1!important;color:var(--oe-danger)}.deck-col-header-clickable .deck-col-header{cursor:pointer;border-radius:2px;padding:2px 4px;margin:-2px -4px;transition:background .1s}.deck-col-header-clickable .deck-col-header:hover{background:#00f0ff1a}.deck-col-edit-form{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:4px;background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;padding:12px;box-shadow:0 4px 12px #0000004d;z-index:100;min-width:200px;display:flex;flex-direction:column;gap:8px;text-transform:none;letter-spacing:0}.deck-col-edit-form label{font-size:11px;font-weight:500;color:var(--oe-text-muted);display:flex;flex-direction:column;gap:3px}.deck-col-edit-form input,.deck-col-edit-form select{font-size:12px;padding:4px 8px;background:var(--oe-bg);border:1px solid var(--oe-border);border-radius:2px;color:var(--oe-text)}.deck-col-edit-form input:focus,.deck-col-edit-form select:focus{outline:none;border-color:var(--oe-primary)}.deck-col-bulk-rate{border-top:1px solid var(--oe-border);padding-top:8px;margin-top:4px}.deck-col-bulk-row{display:flex;gap:6px;align-items:center}.deck-col-bulk-row input{flex:1;min-width:0}.deck-col-edit-actions{display:flex;gap:6px;justify-content:flex-end;margin-top:4px}.deck-cell-with-delete{position:relative}.deck-cell-delete-btn{display:none;position:absolute;top:1px;right:1px;background:var(--oe-surface);border:none;color:var(--oe-text-muted);font-size:11px;cursor:pointer;padding:0 3px;line-height:1;border-radius:2px}.deck-cell-with-delete:hover .deck-cell-delete-btn{display:block}.deck-cell-delete-btn:hover{color:var(--oe-danger)}.deck-cell-floor{color:var(--color-yellow);font-weight:600}.deck-cell-clickable{cursor:pointer;transition:background .1s}.deck-cell-clickable:hover{background:#39ff1414!important;text-decoration:underline}.breakdown-modal{background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;width:100%;max-width:560px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 16px 48px #00000080}.breakdown-header{display:flex;align-items:flex-start;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--oe-border)}.breakdown-title{margin:0;font-size:15px;font-weight:600}.breakdown-subtitle{font-size:12px;color:var(--oe-text-muted)}.breakdown-close{background:transparent;border:none;color:var(--oe-text-muted);font-size:20px;cursor:pointer;padding:0 4px;line-height:1}.breakdown-close:hover{color:var(--oe-text)}.breakdown-body{padding:16px 20px;overflow-y:auto;flex:1}.breakdown-hint{margin:0 0 12px;font-size:11px;color:var(--oe-text-muted);font-style:italic}.breakdown-section{margin-bottom:16px}.breakdown-section:last-child{margin-bottom:0}.breakdown-section-title{font-size:11px;font-weight:600;color:var(--oe-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.breakdown-section-result{background:var(--oe-bg);border-radius:2px;padding:12px;margin-top:8px}.breakdown-table{width:100%;border-collapse:collapse;font-size:13px}.breakdown-table th{text-align:left;padding:4px 8px;font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--oe-text-muted);border-bottom:1px solid var(--oe-border)}.breakdown-th-right{text-align:right!important}.breakdown-table td{padding:4px 8px}.breakdown-label{color:var(--oe-text-muted);font-size:12px}.breakdown-label.indent{padding-left:20px}.breakdown-value{text-align:right;font-variant-numeric:tabular-nums}.breakdown-value-bold{font-weight:600}.breakdown-cell-mono{font-family:monospace;font-size:12px}.breakdown-cell-muted{color:var(--oe-text-muted);font-size:11px}.breakdown-cell-right{text-align:right;font-variant-numeric:tabular-nums}.breakdown-row-highlight{border-top:1px solid var(--oe-border)}.breakdown-row-highlight td{font-weight:600;padding-top:6px}.breakdown-row-total{border-top:1px solid var(--oe-border)}.breakdown-row-total td{font-weight:600;padding-top:6px}.breakdown-row-divider td{padding-top:8px;color:var(--oe-text-muted)}.breakdown-row-blended td{font-weight:700;font-size:15px;color:var(--oe-success);padding-top:6px}.rental-terms-form{display:flex;flex-direction:column;gap:8px}.rental-terms-row{display:flex;align-items:center;gap:8px}.rental-terms-label{width:120px;flex-shrink:0;font-size:12px;color:var(--oe-text-secondary)}.rental-terms-input{display:flex;align-items:center;gap:2px;flex:1}.rental-terms-prefix{font-size:12px;color:var(--oe-text-muted)}.rental-terms-suffix{font-size:12px;color:var(--oe-text-muted);margin-left:2px}.rental-terms-row .editable-input{width:120px;text-align:right}.rental-terms-preview{display:flex;justify-content:space-between;align-items:center;margin-top:6px;padding-top:8px;border-top:1px solid var(--oe-border)}.rental-terms-preview-label{font-size:12px;font-weight:600;color:var(--oe-text-secondary)}.rental-terms-preview-value{font-size:14px;font-weight:700;color:var(--oe-success)}.deck-grid-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:100;border-radius:2px}.deck-grid-loading-content{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 48px;background:var(--oe-bg);border:1px solid var(--oe-border);border-radius:2px;box-shadow:0 8px 32px #0006;color:var(--oe-text);font-size:15px;font-weight:600}.deck-grid-spinner{width:32px;height:32px;border:3px solid var(--oe-border);border-top-color:var(--color-cyan);border-radius:50%;animation:deck-spin .8s linear infinite}@keyframes deck-spin{to{transform:rotate(360deg)}}.deck-grid-loading-sub{font-size:12px;font-weight:400;color:var(--color-text-sec)}.sidebar-section-label--toggle{cursor:pointer;display:flex;align-items:center;gap:6px;transition:background .1s;border-radius:2px;margin:0 4px;padding:8px 8px 4px}.sidebar-section-label--toggle:hover{background:var(--oe-surface-alt)}.sidebar-section-chevron{font-size:8px;color:var(--oe-text-muted);width:12px;flex-shrink:0}.sidebar-section-count{margin-left:auto;font-size:10px;font-weight:600;color:var(--oe-text-muted);background:var(--oe-surface-alt);padding:1px 6px;border-radius:2px}.crew-sort-btn{margin-left:auto;margin-right:6px;background:var(--oe-surface-alt);border:1px solid var(--oe-border);border-radius:2px;padding:1px 6px;font-size:9px;font-weight:500;color:var(--oe-text-muted);cursor:pointer;text-transform:uppercase;letter-spacing:.3px;transition:background .15s,color .15s}.crew-sort-btn:hover{background:var(--oe-primary);color:#fff;border-color:var(--oe-primary)}.crew-groups{margin:0;padding:0}.crew-group+.crew-group{margin-top:2px}.crew-group-header{display:flex;align-items:center;gap:5px;padding:4px 12px 4px 20px;cursor:pointer;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--oe-text-muted);transition:background .1s;border-radius:3px;margin:0 4px}.crew-group-header:hover{background:var(--oe-surface-alt)}.crew-group-chevron{font-size:7px;width:10px;flex-shrink:0;color:var(--oe-text-muted)}.crew-group-label{flex:1}.crew-group-count{font-size:9px;font-weight:600;color:var(--oe-text-muted);opacity:.7}.resource-detail-placeholder .form-value{font-size:14px;font-weight:500;color:var(--oe-text);padding:4px 0}.markup-editor{max-width:640px;padding:16px 24px}.markup-loading{padding:40px;text-align:center;color:var(--color-text-mut);font-size:13px}.markup-bridge{margin-top:12px}.markup-section{margin:16px 0;padding:12px 16px;background:var(--color-surface);border:1px solid var(--color-b-subtle);border-radius:2px}.markup-section-title{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--color-text-sec);margin-bottom:8px}.markup-row{display:flex;align-items:center;gap:12px;padding:4px 0;font-size:13px}.markup-row--header{padding:10px 16px;background:var(--color-elevated);border:1px solid var(--color-b-active);margin-bottom:4px}.markup-row--subtotal{padding-top:8px;margin-top:4px;border-top:1px solid var(--color-b-subtle)}.markup-row--grand{padding:12px 16px;background:var(--color-elevated);border:1px solid var(--color-b-active);font-size:15px;font-weight:700}.markup-label{flex:1;color:var(--color-text-sec)}.markup-value{font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-text-pri)}.markup-value--cyan{color:var(--color-cyan)}.markup-value--green{color:var(--color-green);font-size:18px}.markup-computed{font-size:11px;color:var(--color-text-mut);font-variant-numeric:tabular-nums}.markup-editable{cursor:text;font-variant-numeric:tabular-nums;color:var(--color-cyan);font-weight:600}.markup-editable:hover{text-decoration:underline}.markup-input{background:var(--color-void);border:1px solid var(--color-cyan);color:var(--color-cyan);font-size:13px;font-family:inherit;padding:2px 6px;outline:none;font-variant-numeric:tabular-nums}.markup-checkbox{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-sec);cursor:pointer}.markup-checkbox input{accent-color:var(--color-cyan)}.markup-divider{border-top:2px solid var(--color-b-active);margin:16px 0}.cbs-layout{display:flex;flex-direction:column;height:100%}.cbs-tabs{display:flex;gap:0;padding:0 16px;background:var(--color-surface);border-bottom:1px solid var(--color-b-subtle);flex-shrink:0}.cbs-tab{padding:8px 14px;font-size:12px;font-weight:500;color:var(--color-text-sec);text-decoration:none;border-bottom:2px solid transparent;transition:color .15s,border-color .15s;font-family:inherit}.cbs-tab:hover{color:var(--color-text-pri)}.cbs-tab.active{color:var(--color-text-pri);border-bottom-color:var(--color-cyan);font-weight:600}.cbs-content{flex:1;overflow:auto;padding:16px}.cbs-content:has(.cbs-split-layout){padding:0;overflow:hidden}.cbs-split-layout{display:flex;height:100%;gap:0}.cbs-sidebar{width:280px;min-width:240px;border-right:1px solid var(--color-b-subtle);background:var(--color-surface);display:flex;flex-direction:column;overflow:hidden}.cbs-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 6px}.cbs-sidebar-header h3{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin:0;color:var(--color-text-sec)}.cbs-sidebar-toolbar{display:flex;align-items:center;gap:6px;padding:0 12px 8px;border-bottom:1px solid var(--color-b-subtle)}.cbs-sidebar-tree{flex:1;overflow-y:auto;padding:4px 0}.cbs-sidebar-row{display:flex;align-items:center;gap:4px;padding:4px 8px;font-size:12px;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .1s}.cbs-sidebar-row:hover{background:var(--color-hover)}.cbs-sidebar-row .cbs-node-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-pri)}.cbs-sidebar-row .cbs-node-name:hover{color:var(--color-cyan)}.cbs-sidebar-code{font-size:10px;color:var(--color-text-mut);flex-shrink:0;margin-left:auto;margin-right:4px}.cbs-sidebar-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s;flex-shrink:0}.cbs-sidebar-row:hover .cbs-sidebar-actions{opacity:1}.cbs-main-pane{flex:1;overflow:auto;padding:16px;min-width:0}.tree-toggle-btn{background:none;border:none;color:var(--color-text-mut);cursor:pointer;font-size:10px;width:20px;padding:0;flex-shrink:0}.inline-edit-input{background:var(--color-void);border:1px solid var(--color-cyan);color:var(--color-text-pri);padding:2px 6px;font-size:12px;font-family:inherit;border-radius:2px;width:200px;outline:none}.btn-xs{font-size:11px;padding:2px 8px;min-width:unset}.text-xs{font-size:11px}.cbs-empty-state{padding:48px 24px;text-align:center;color:var(--color-text-mut);font-size:13px}.cbs-template-menu{position:absolute;top:100%;left:0;z-index:100;background:var(--color-surface);border:1px solid var(--color-b-active);border-radius:2px;padding:4px;min-width:280px;box-shadow:0 8px 24px #00000080}.cbs-template-option{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 12px;text-align:left;background:none;border:none;color:var(--color-text-pri);cursor:pointer;border-radius:2px;font-size:12px;font-family:inherit}.cbs-template-option:hover{background:var(--color-hover)}.cbs-alloc-table th,.cbs-alloc-table td{text-align:center;min-width:70px;padding:4px 8px;font-size:12px;border-bottom:1px solid var(--color-b-subtle)}.cbs-alloc-table th{background:var(--color-elevated);border-bottom:1px solid var(--color-b-active);font-size:11px;font-weight:500;letter-spacing:.04em;color:var(--color-text-sec)}.cbs-alloc-table .sticky-col{text-align:left;position:sticky;left:0;background:var(--color-surface);z-index:1;min-width:200px}.cbs-alloc-table thead .sticky-col{background:var(--color-elevated)}.alloc-cell{cursor:pointer;transition:background .15s ease}.alloc-cell:hover{background:#00f0ff1a}.alloc-cell--filled{background:#00f0ff14;color:var(--color-cyan);font-weight:600}.alloc-cell-input{width:50px;text-align:center;background:var(--color-void);border:1px solid var(--color-cyan);color:var(--color-cyan);padding:2px 4px;font-size:12px;font-family:inherit;border-radius:2px;outline:none}.alloc-total{font-weight:600}.alloc-full{color:var(--color-green)}.alloc-under{color:var(--color-yellow)}.alloc-over{color:var(--color-red)}.alloc-none{color:var(--color-text-mut)}.alloc-row--disabled{opacity:.5}.alloc-row--disabled td{cursor:default}.recon-summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.recon-card{background:var(--color-elevated);border:1px solid var(--color-b-active);border-radius:2px;padding:12px 16px;text-align:center}.recon-card-label{font-size:11px;color:var(--color-text-sec);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.recon-card-value{font-size:18px;font-weight:700;color:var(--color-cyan);font-variant-numeric:tabular-nums}.recon-match .recon-card-value{color:var(--color-green)}.recon-under .recon-card-value{color:var(--color-yellow)}.recon-over .recon-card-value{color:var(--color-red)}.recon-success{background:#39ff1414;border:1px solid rgba(57,255,20,.25);border-radius:2px;padding:10px 16px;color:var(--color-green);font-weight:500;font-size:12px;text-align:center}.cbs-summary-view{max-width:900px;margin:0 auto}.cbs-summary-section{margin-top:24px}.cbs-summary-section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-sec);margin-bottom:8px;padding:8px 16px 4px;border-bottom:1px solid var(--color-b-subtle)}.cbs-summary-view .pricing-bridge{max-width:640px}.cbs-cost-parent-row{background:#ffffff05}.pricing-bridge{background:var(--color-surface);border:1px solid var(--color-b-subtle);border-radius:2px;overflow:hidden}.pricing-row{display:flex;justify-content:space-between;align-items:flex-start;padding:10px 16px;border-bottom:1px solid var(--color-b-subtle);font-size:12px}.pricing-row:last-child{border-bottom:none}.pricing-row--primary{background:#00f0ff0d}.pricing-row--subtotal{background:var(--color-elevated);border-top:1px solid var(--color-b-active);border-bottom:1px solid var(--color-b-active)}.pricing-row--total{background:#39ff140f}.pricing-row--detail{padding:4px 16px 4px 32px;border-bottom:none}.pricing-row--detail+.pricing-row--detail{padding-top:0}.pricing-value--detail{font-size:12px;font-weight:500;color:var(--color-text-mut)}.pricing-row--meta{background:none;padding:8px 16px;font-size:11px}.pricing-label{font-size:12px;font-weight:500;color:var(--color-text-sec)}.pricing-value{font-size:15px;font-weight:700;color:var(--color-cyan);white-space:nowrap;font-variant-numeric:tabular-nums}.pricing-row--total .pricing-value{color:var(--color-green);font-size:18px}.pricing-value--add{color:var(--color-text-mut);font-weight:600}.pricing-inputs{display:flex;gap:10px;margin-top:6px}.pricing-inputs label{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--color-text-sec)}.pricing-input{width:70px;background:var(--color-void);border:1px solid var(--color-b-active);color:var(--color-cyan);padding:3px 6px;font-size:12px;font-family:inherit;border-radius:2px;text-align:right;outline:none;font-variant-numeric:tabular-nums}.pricing-input:focus{border-color:var(--color-cyan)}.pricing-toggle{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--color-text-sec);cursor:pointer;white-space:nowrap}.pricing-toggle input[type=checkbox]{accent-color:var(--color-cyan)}.auth-page{min-height:100vh;background:var(--oe-bg);display:flex;justify-content:center;align-items:center;padding:24px}.auth-card{background:var(--oe-surface);border:1px solid var(--oe-border);border-radius:2px;padding:40px;width:100%;max-width:400px;box-shadow:0 4px 24px #0000004d}.auth-header{text-align:center;margin-bottom:32px}.auth-logo{width:56px;height:56px;border-radius:2px;margin:0 auto 12px;display:block}.auth-title{font-size:28px;font-weight:800;letter-spacing:-.02em;margin:0;color:var(--oe-text)}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-form .form-group{margin-bottom:0}.auth-form label{display:block;font-size:13px;font-weight:600;color:var(--oe-text-secondary);margin-bottom:4px}.auth-form input{width:100%;padding:10px 12px;border:1px solid var(--oe-border);border-radius:2px;background:var(--oe-bg);color:var(--oe-text);font-size:13px;font-family:inherit}.auth-form input:focus{border-color:var(--oe-primary);outline:none;box-shadow:0 0 0 2px #00f0ff33}.auth-submit{width:100%;padding:10px 16px;margin-top:8px;font-size:15px;font-weight:600}.auth-error{color:var(--oe-danger, var(--color-red));font-size:13px;margin:0;padding:8px 12px;background:#ff33551a;border-radius:2px}.auth-footer{text-align:center;margin-top:24px;font-size:13px;color:var(--oe-text-secondary)}.auth-link{color:var(--oe-primary);text-decoration:none;font-weight:600}.auth-link:hover{text-decoration:underline}.cal-artifact{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--color-void)}.cal-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-mut);font-size:13px}.cal-header{display:flex;align-items:center;gap:12px;padding:12px 20px;flex-shrink:0}.cal-title{font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--color-cyan);margin:0}.cal-header-spacer{flex:1}.cal-select{background:var(--color-surface);border:1px solid var(--color-b-subtle);border-radius:2px;color:var(--color-text-pri);font-size:12px;font-family:inherit;padding:4px 8px;cursor:pointer}.cal-nav-btn{background:transparent;border:1px solid var(--color-b-subtle);border-radius:2px;color:var(--color-text-sec);font-size:14px;font-family:inherit;width:28px;height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.cal-nav-btn:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.cal-year-label{font-size:14px;font-weight:700;color:var(--color-text-pri);min-width:48px;text-align:center}.cal-legend-bar{display:flex;align-items:center;gap:20px;padding:6px 20px;font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--color-text-sec);border-bottom:1px solid var(--color-b-subtle);flex-shrink:0}.cal-legend-item{display:flex;align-items:center;gap:6px}.cal-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.cal-swatch--billing{background:var(--color-surface);border:1px solid var(--color-b-active)}.cal-swatch--blocked{background:var(--color-magenta);opacity:.7}.cal-swatch--past{background:var(--color-surface);opacity:.4}.cal-swatch--today{background:transparent;border:2px solid var(--color-cyan)}.cal-bulk-bar{display:flex;align-items:center;gap:8px;padding:10px 20px;flex-wrap:wrap;flex-shrink:0}.cal-bulk-btn{background:transparent;border:1px solid var(--color-b-active);border-radius:2px;color:var(--color-text-sec);font-size:11px;font-weight:600;font-family:inherit;letter-spacing:.04em;padding:5px 14px;cursor:pointer;transition:all .15s}.cal-bulk-btn:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.cal-bulk-btn--cyan{background:var(--color-cyan);border-color:var(--color-cyan);color:var(--oe-on-primary)}.cal-bulk-btn--cyan:hover{background:var(--oe-primary-hover);border-color:var(--oe-primary-hover);color:var(--oe-on-primary)}.cal-bulk-btn--magenta{background:var(--color-magenta);border-color:var(--color-magenta);color:var(--oe-on-primary)}.cal-bulk-btn--magenta:hover{background:var(--oe-mc-accent-hover);border-color:var(--oe-mc-accent-hover);color:var(--oe-on-primary)}.cal-bulk-btn--danger{border-color:var(--color-red);color:var(--color-red)}.cal-bulk-btn--danger:hover{background:var(--color-red);color:var(--oe-on-primary)}.cal-bulk-btn:disabled{opacity:.3;cursor:not-allowed}.cal-range-group{display:flex;align-items:center;gap:6px;margin-left:auto}.cal-range-input{background:var(--color-surface);border:1px solid var(--color-b-subtle);border-radius:2px;color:var(--color-text-pri);font-size:11px;font-family:inherit;padding:4px 8px}.cal-range-input:focus{outline:none;border-color:var(--color-cyan)}.cal-range-to{font-size:11px;color:var(--color-text-mut)}.cal-stats-bar{padding:6px 20px;font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--color-text-mut);border-bottom:1px solid var(--color-b-subtle);flex-shrink:0}.cal-stats-blocked{color:var(--color-magenta)}.cal-stats-billing{color:var(--color-cyan)}.cal-year-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:16px 20px;overflow-y:auto;flex:1}.cal-month{background:var(--color-surface);border:1px solid var(--color-b-subtle);border-radius:2px;padding:8px}.cal-month-name{font-size:13px;font-weight:700;color:var(--color-cyan);text-align:center;padding:6px 0;letter-spacing:.1em}.cal-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-dow{font-size:9px;font-weight:600;color:var(--color-text-mut);text-align:center;padding:3px 0;letter-spacing:.05em}.cal-day{height:28px;display:flex;align-items:center;justify-content:center;font-size:11px;border-radius:2px;cursor:pointer;transition:all .1s;border:1px solid transparent;color:var(--color-text-pri)}.cal-day--blank{cursor:default}.cal-day--billing{background:var(--color-elevated)}.cal-day--billing:hover{background:var(--color-hover);border-color:var(--color-cyan)}.cal-day--blocked{background:#ff00aa40;border-color:#f0a6;color:var(--color-magenta)}.cal-day--blocked:hover{background:#f0a6}.cal-day--today{border-color:var(--color-cyan)!important;font-weight:700;color:var(--color-cyan)}.cal-day--past{opacity:.45}.cal-day--past:hover{opacity:.7}@media (max-width: 1200px){.cal-year-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 900px){.cal-year-grid{grid-template-columns:repeat(2,1fr)}}.artifact-content{max-width:720px;padding:16px 24px}.artifact-state{display:flex;align-items:center;justify-content:center;height:120px;font-size:12px;color:var(--color-text-sec)}.artifact-state--error{color:var(--color-red)}.artifact-section-title{padding:12px 16px 4px;font-size:11px;font-weight:600;letter-spacing:.1em;color:var(--color-text-sec);border-bottom:1px solid var(--color-b-subtle)}.artifact-banner{margin:12px 16px;padding:8px 12px;border:1px solid var(--color-yellow);color:var(--color-yellow);font-size:12px;font-weight:600}.artifact-meta-block{padding:8px 16px 12px}.artifact-meta-row{display:flex;gap:8px;font-size:12px;padding:2px 0}.artifact-meta-label{color:var(--color-text-sec);width:140px;flex-shrink:0}.artifact-meta-value{color:var(--color-text-pri)}.artifact-total-bar{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;margin:8px 0;background:var(--color-elevated);border:1px solid var(--color-b-active)}.artifact-total-label{font-size:11px;font-weight:600;letter-spacing:.1em;color:var(--color-text-sec)}.artifact-total-value{font-size:18px;font-weight:700;color:var(--color-cyan);font-variant-numeric:tabular-nums}.artifact-table{width:100%;border-collapse:collapse}.artifact-th{padding:4px 8px;text-align:left;font-size:11px;font-weight:500;letter-spacing:.06em;color:var(--color-text-sec);background:var(--color-elevated);border-bottom:1px solid var(--color-b-active)}.artifact-th-r{padding:4px 8px;text-align:right;font-size:11px;font-weight:500;letter-spacing:.06em;color:var(--color-text-sec);background:var(--color-elevated);border-bottom:1px solid var(--color-b-active)}.artifact-row{border-bottom:1px solid var(--color-b-subtle)}.artifact-row:hover{background:var(--color-hover)}.artifact-td{padding:4px 8px;font-size:12px;color:var(--color-text-pri)}.artifact-td-r{padding:4px 8px;font-size:12px;text-align:right;color:var(--color-text-sec);font-variant-numeric:tabular-nums}.artifact-td-c{padding:4px 8px;font-size:12px;text-align:right;color:var(--color-cyan);font-weight:500;font-variant-numeric:tabular-nums}.artifact-total-row{border-top:1px solid var(--color-b-active);background:var(--color-elevated)}.artifact-total-row td{font-weight:600}.artifact-provenance{padding:8px 16px;border-top:1px solid var(--color-b-subtle);font-size:11px;color:var(--color-text-sec)}.artifact-deck-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.artifact-deck-header{background:var(--color-elevated)}.artifact-deck-th{padding:4px 8px;text-align:left;font-size:10px;font-weight:500;letter-spacing:.06em;color:var(--color-text-mut)}.artifact-deck-th-r{padding:4px 8px;text-align:right;font-size:10px;font-weight:500;letter-spacing:.06em;color:var(--color-text-mut)}.artifact-deck-th-c{padding:4px 8px;text-align:center;font-size:10px;font-weight:500;color:var(--color-text-mut)}.artifact-deck-sub{font-size:9px;color:var(--color-text-mut);font-weight:400}.artifact-deck-accent{color:var(--color-cyan)!important}.artifact-deck-row{border-bottom:1px solid var(--color-b-subtle)}.artifact-deck-row:hover{background:var(--color-hover)}.artifact-deck-td{padding:3px 8px;color:var(--color-text-pri);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.artifact-deck-td-r{padding:3px 8px;text-align:right;color:var(--color-text-pri);font-variant-numeric:tabular-nums}.artifact-deck-td-c{padding:3px 8px;text-align:center}.artifact-deck-muted{color:var(--color-text-mut)!important}.artifact-deck-empty{padding:16px 8px;text-align:center;color:var(--color-text-sec)}.artifact-deck-select{background:var(--color-void);border:1px solid var(--color-b-subtle);color:var(--color-text-sec);padding:1px 4px;font-size:11px;font-family:inherit;border-radius:2px}.artifact-deck-select:focus{outline:none;border-color:var(--color-cyan)}.artifact-deck-delete{background:none;border:none;color:var(--color-text-mut);cursor:pointer;font-size:13px;opacity:0;transition:opacity .15s}.artifact-deck-row:hover .artifact-deck-delete{opacity:.6}.artifact-deck-delete:hover{opacity:1!important;color:var(--color-red)}.artifact-edit-input{width:100%;background:var(--color-void);border:1px solid var(--color-cyan);color:var(--color-cyan);padding:1px 4px;font-size:12px;font-family:inherit;font-variant-numeric:tabular-nums;outline:none}.artifact-edit-cell{cursor:text;font-variant-numeric:tabular-nums}.artifact-edit-cell:hover{color:var(--color-cyan)}.artifact-add-btn{font-size:11px;color:var(--color-text-mut);background:none;border:none;cursor:pointer;font-family:inherit}.artifact-add-btn:hover{color:var(--color-cyan)}.artifact-add-form{border:1px solid var(--color-b-active);background:var(--color-elevated);padding:8px 12px}.artifact-add-row{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.artifact-add-field{display:flex;flex-direction:column;gap:2px}.artifact-add-label{font-size:9px;color:var(--color-text-mut);letter-spacing:.05em}.artifact-add-input{background:var(--color-void);border:1px solid var(--color-b-active);color:var(--color-text-pri);padding:2px 6px;font-size:11px;font-family:inherit;outline:none}.artifact-add-input:focus{border-color:var(--color-cyan)}.artifact-add-submit{font-size:11px;color:var(--color-cyan);background:none;border:none;cursor:pointer;font-family:inherit;padding-bottom:2px}.artifact-add-submit:disabled{color:var(--color-text-mut);cursor:not-allowed}.artifact-add-cancel{font-size:11px;color:var(--color-text-mut);background:none;border:none;cursor:pointer;font-family:inherit;padding-bottom:2px}.artifact-add-cancel:hover{color:var(--color-text-sec)}.sync-indicator{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-family-mono);font-size:10px;letter-spacing:.03em;line-height:1;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sync-indicator--idle{display:none}.sync-indicator--syncing{color:var(--color-yellow)}.sync-indicator--syncing .sync-indicator__icon{display:inline-block;width:8px;height:8px;border:1.5px solid var(--color-yellow);border-top-color:transparent;border-radius:50%;animation:sync-spin .8s linear infinite}@keyframes sync-spin{to{transform:rotate(360deg)}}.sync-indicator--syncing .sync-indicator__label{opacity:.8}.sync-indicator--confirmed{color:var(--color-green);animation:sync-fade-in .2s ease-out}.sync-indicator--confirmed .sync-indicator__icon:before{content:"✓";font-size:11px;font-weight:700}@keyframes sync-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.sync-indicator--discrepancy{color:var(--color-yellow);background:#ffe6000f;padding:2px 6px;border:1px solid rgba(255,230,0,.15);border-radius:var(--radius)}.sync-indicator--discrepancy .sync-indicator__icon:before{content:"!";font-size:11px;font-weight:700}.sync-indicator--compact{gap:0}.sync-indicator--compact .sync-indicator__label{display:none}.sync-indicator--compact.sync-indicator--syncing .sync-indicator__icon{width:6px;height:6px}.project-docs-status{padding:6px 12px;font-size:11px;color:var(--color-text-sec);letter-spacing:.02em}.project-docs-status--empty{color:var(--color-text-mut);font-style:italic}.project-docs-status--loaded{color:var(--color-cyan)}.project-docs-upload{padding:6px 12px;display:flex;flex-direction:column;gap:6px}.project-docs-upload-row{display:flex;gap:6px;align-items:center}.project-docs-upload-btn{background:var(--color-elevated);color:var(--color-cyan);border:1px solid var(--color-b-subtle);border-radius:2px;padding:4px 10px;font-size:11px;font-family:var(--font-mono);cursor:pointer;white-space:nowrap;transition:background .15s}.project-docs-upload-btn:hover{background:var(--color-hover)}.project-docs-upload-btn:disabled{opacity:.4;cursor:not-allowed}.project-docs-section-select{background:var(--color-elevated);color:var(--color-text-pri);border:1px solid var(--color-b-subtle);border-radius:2px;padding:4px 6px;font-size:11px;font-family:var(--font-mono);flex:1;min-width:0}.project-docs-file-name{font-size:11px;color:var(--color-text-sec);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.project-docs-progress{height:2px;background:var(--color-b-subtle);border-radius:1px;overflow:hidden}.project-docs-progress-bar{height:100%;background:var(--color-cyan);transition:width .3s ease}.project-docs-progress--indeterminate .project-docs-progress-bar{width:30%;animation:project-docs-slide 1.2s infinite ease-in-out}@keyframes project-docs-slide{0%{transform:translate(-100%)}to{transform:translate(400%)}}.project-docs-list{display:flex;flex-direction:column}.project-docs-item{display:flex;align-items:center;gap:8px;padding:5px 12px;font-size:11px;cursor:default;transition:background .1s}.project-docs-item:hover{background:var(--oe-surface-hover)}.project-docs-item-name{color:var(--color-text-pri);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-docs-item-chunks{color:var(--color-text-mut);font-size:10px;flex-shrink:0}.project-docs-item-type{color:var(--color-cyan);font-size:10px;flex-shrink:0;opacity:.7}.project-docs-item-delete{background:none;border:none;color:var(--color-text-mut);font-size:13px;cursor:pointer;padding:0 2px;line-height:1;flex-shrink:0;opacity:0;transition:opacity .15s,color .15s}.project-docs-item:hover .project-docs-item-delete{opacity:1}.project-docs-item-delete:hover{color:var(--color-red)}.project-docs-error{padding:4px 12px;font-size:11px;color:var(--color-red)}.review-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:6px 12px}.review-drawer__run-btn{font-family:var(--font-family-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;padding:4px 10px;border:1px solid var(--color-cyan);color:var(--color-cyan);background:transparent;border-radius:2px;cursor:pointer;transition:background .15s}.review-drawer__run-btn:hover:not(:disabled){background:#00f0ff1a}.review-drawer__run-btn:disabled{opacity:.4;cursor:not-allowed}.review-drawer__badge{display:flex;gap:4px}.review-drawer__badge--critical{font-family:var(--font-family-mono);font-size:10px;padding:1px 5px;border-radius:2px;background:#ff335526;color:var(--color-red)}.review-drawer__badge--warning{font-family:var(--font-family-mono);font-size:10px;padding:1px 5px;border-radius:2px;background:#ffe6001f;color:var(--color-yellow)}.review-drawer__section{border-bottom:1px solid var(--oe-border)}.review-drawer__section-header{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;font-family:var(--font-family-mono);font-size:11px;color:var(--color-text-sec);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.review-drawer__section-header:hover{color:var(--color-text-pri)}.review-drawer__section-count{display:flex;gap:4px}.review-drawer__section-body{padding:0 4px 4px}.review-finding{margin:2px 0;border-radius:2px;background:var(--oe-surface-alt, var(--color-surface));transition:background .15s}.review-finding--dimmed{opacity:.5}.review-finding__header{display:flex;align-items:center;gap:6px;width:100%;padding:5px 8px;border:none;background:transparent;color:var(--color-text-pri);font-family:var(--font-family-mono);font-size:11px;text-align:left;cursor:pointer}.review-finding__header:hover{background:var(--color-hover, rgba(255, 255, 255, .03))}.review-finding__icon{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:2px;font-size:10px;font-weight:700}.review-finding__icon--critical{background:#f353;color:var(--color-red)}.review-finding__icon--warning{background:#ffe60026;color:var(--color-yellow)}.review-finding__icon--info{background:#ffffff14;color:var(--color-text-sec)}.review-finding__title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-finding__chevron{flex-shrink:0;font-size:10px;color:var(--color-text-sec)}.review-finding__body{padding:4px 8px 8px 30px;font-family:var(--font-family-mono);font-size:10px;color:var(--color-text-sec);line-height:1.5}.review-finding__detail{margin:0 0 6px;white-space:pre-wrap}.review-finding__source{margin:0 0 6px;font-style:italic;opacity:.7}.review-finding__actions{display:flex;gap:6px}.review-finding__btn{font-family:var(--font-family-mono);font-size:9px;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border:1px solid var(--color-text-sec);color:var(--color-text-sec);background:transparent;border-radius:2px;cursor:pointer;transition:all .15s}.review-finding__btn:hover:not(:disabled){border-color:var(--color-cyan);color:var(--color-cyan)}.review-finding__btn:disabled{opacity:.4;cursor:not-allowed}.review-run-progress{padding:6px 12px;border-bottom:1px solid var(--oe-border)}.review-run-progress__item{display:flex;align-items:center;gap:6px;padding:2px 0;font-family:var(--font-family-mono);font-size:10px;color:var(--color-text-sec)}.review-run-progress__item--running{color:var(--color-cyan)}.review-run-progress__item--complete{color:var(--color-green)}.review-run-progress__item--error{color:var(--color-red)}.review-run-progress__icon{width:10px;text-align:center}.review-run-progress__label{min-width:120px}.review-run-progress__summary{margin-top:4px;padding-top:4px;border-top:1px solid var(--oe-border);font-family:var(--font-family-mono);font-size:10px;color:var(--color-text-pri)}.cs-alert-bar{display:flex;align-items:center;justify-content:space-between;padding:4px 12px;background:#ffe60014;border-bottom:1px solid rgba(255,230,0,.2);font-family:var(--font-family-mono);font-size:10px;color:var(--color-yellow)}.cs-alert-bar__text{display:flex;align-items:center;gap:6px}.cs-alert-bar__btn{font-family:var(--font-family-mono);font-size:9px;text-transform:uppercase;padding:2px 6px;border:1px solid var(--color-yellow);color:var(--color-yellow);background:transparent;border-radius:2px;cursor:pointer}.cs-alert-bar__btn:hover{background:#ffe6001a}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.bottom-1{bottom:.25rem}.right-1{right:.25rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.w-full{width:100%}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.overflow-x-auto{overflow-x:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-b-active{border-color:var(--color-b-active)}.border-b-subtle{border-color:var(--color-b-subtle)}.bg-elevated{background-color:var(--color-elevated)}.bg-oe-bg{background-color:var(--oe-bg)}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.text-left{text-align:left}.text-right{text-align:right}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.tracking-wider{letter-spacing:.05em}.text-cyan{color:var(--color-cyan)}.text-oe-text{color:var(--oe-text)}.text-text-pri{color:var(--color-text-pri)}.text-text-sec{color:var(--color-text-sec)}.text-yellow{color:var(--color-yellow)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:bg-hover:hover{background-color:var(--color-hover)}.command-strip{flex-shrink:0;background:var(--oe-surface);border-bottom:2px solid var(--color-b-active)}.cs-row1{display:flex;align-items:center;gap:16px;padding:14px 24px 6px}.cs-code{color:var(--color-cyan);font-size:14px;font-weight:700}.cs-title{color:var(--color-text-pri);font-size:16px;font-weight:700}.cs-badge{font-size:10px;font-weight:700;padding:2px 10px;border-radius:2px}.cs-badge--ok{color:var(--color-green);background:#39ff141f}.cs-badge--draft{color:var(--color-text-mut);background:var(--color-elevated);border:1px solid var(--color-b-subtle)}.cs-badge--progress{color:var(--color-yellow);background:#ffe6001f}.cs-badge--approved{color:var(--color-green);background:#39ff141f;border:1px solid rgba(57,255,20,.3)}.cs-spacer{flex:1}.cs-total-cost{color:var(--color-green);font-size:28px;font-weight:800;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.cs-row2{display:flex;align-items:flex-end;gap:20px;padding:4px 24px 14px}.cs-metric{display:flex;flex-direction:column;gap:2px}.cs-metric-label{color:var(--color-text-mut);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.cs-metric-value{color:var(--color-text-sec);font-size:13px;font-variant-numeric:tabular-nums}.cs-metric-value--emphasis{color:var(--color-text-pri);font-weight:700;font-size:14px}.cs-metric-value--cyan{color:var(--color-cyan);font-weight:700;font-size:14px}.cs-divider{width:1px;height:28px;background:var(--color-b-active);align-self:center}.crew-card{margin-bottom:4px;overflow:hidden}.crew-card-header{display:flex;align-items:center;background:var(--oe-surface);border:1px solid var(--color-b-active);border-radius:2px;cursor:pointer;transition:border-color .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.crew-card-header:hover{border-color:var(--color-cyan)}.crew-card.expanded .crew-card-header{border-color:var(--color-cyan);border-radius:2px 2px 0 0;border-bottom-color:#00f0ff40}.crew-card-color{width:4px;align-self:stretch;flex-shrink:0;border-radius:2px 0 0 2px}.crew-card.expanded .crew-card-color{border-radius:2px 0 0}.crew-card-identity{padding:10px 14px;flex:1 1 160px;min-width:0}.crew-card-name{font-size:12px;font-weight:700;letter-spacing:.02em;white-space:normal;overflow-wrap:anywhere}.crew-card-summary{color:var(--color-text-mut);font-size:9px;margin-top:2px}.crew-card-costs{display:flex;flex:2 1 200px}.crew-card-cost-cell{padding:8px;text-align:center;flex:1 1 100px;min-width:0;border-left:1px solid var(--color-b-subtle)}.crew-card-cost-label{color:var(--color-text-mut);font-size:8px;text-transform:uppercase;letter-spacing:.06em}.crew-card-cost-value{color:var(--color-text-pri);font-weight:700;font-size:11px;margin-top:2px;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crew-card-cost-value--empty{color:var(--color-text-mut);font-weight:400}.crew-card-cost-subvalue{color:var(--color-text-mut);font-size:9px;font-weight:400;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crew-card-aggregate{padding:8px 12px;text-align:right;border-left:1px solid var(--color-b-active);flex:1 1 100px;min-width:0}.crew-card-agg-label{color:var(--color-text-mut);font-size:8px;text-transform:uppercase}.crew-card-agg-value{font-weight:700;font-size:12px;margin-top:2px;font-variant-numeric:tabular-nums}.crew-card-chevron{padding:8px 12px;font-size:14px;color:var(--color-text-mut);transition:color .15s}.crew-card.expanded .crew-card-chevron,.crew-card-header:hover .crew-card-chevron{color:var(--color-cyan)}.crew-card-detail{display:none;border:1px solid var(--color-cyan);border-top:none;border-radius:0 0 2px 2px;background:var(--color-void)}.crew-card.expanded .crew-card-detail{display:block}.sub-card .crew-card-header:hover{border-color:var(--color-yellow)}.sub-card.expanded .crew-card-header{border-color:var(--color-yellow);border-bottom-color:#ffe60040}.sub-card .crew-card-detail{border-color:var(--color-yellow)}.sub-card.expanded .crew-card-chevron,.sub-card .crew-card-header:hover .crew-card-chevron{color:var(--color-yellow)}.crew-card-fields{display:flex;gap:16px;padding:8px 16px;border-bottom:1px solid var(--color-b-subtle);flex-wrap:wrap}.crew-card-field{display:flex;flex-direction:column;gap:2px}.crew-card-field-label{color:var(--color-text-mut);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.crew-card-field-value{color:var(--color-text-sec);font-size:12px}.crew-card-location-select{background:var(--color-void);border:1px solid var(--color-b-subtle);color:var(--color-text-pri);font-family:var(--font-family-mono);font-size:10px;padding:2px 4px;outline:none;max-width:200px}.crew-card-location-select:focus{border-color:var(--color-cyan)}.cc-section-header{display:flex;align-items:center;padding:5px 16px;background:#112c;border-bottom:1px solid var(--color-b-subtle);border-top:1px solid var(--color-b-subtle)}.cc-section-header:first-child{border-top:none}.cc-section-name{color:var(--color-text-sec);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.cc-section-cost{margin-left:auto;color:var(--color-cyan);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.cc-section-cost--empty{color:var(--color-text-mut);font-weight:400}.cc-add-btn{margin-left:12px;color:var(--color-text-mut);font-size:10px;cursor:pointer;border:1px dashed var(--color-b-active);padding:1px 6px;border-radius:2px;background:none;font-family:inherit;transition:all .15s}.cc-add-btn:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.cc-table{width:100%;border-collapse:collapse;font-size:11px}.cc-table th{padding:4px 8px;color:var(--color-text-mut);font-size:9px;font-weight:600;text-transform:uppercase;text-align:left;border-bottom:1px solid var(--color-b-subtle)}.cc-table th:first-child{padding-left:16px}.cc-table th.r{text-align:right}.cc-table td{padding:5px 8px;color:var(--color-text-sec);border-bottom:1px solid rgba(17,17,34,.6)}.cc-table td:first-child{padding-left:16px}.cc-table td.r{text-align:right}.cc-table td.editable{color:var(--color-text-pri);cursor:pointer;border-bottom:1px dashed var(--color-b-active)}.cc-table td.editable:hover{color:var(--color-cyan)}.cc-table td.pri{color:var(--color-text-pri)}.cc-table td.action{text-align:center;color:var(--color-b-active);cursor:pointer;width:28px}.cc-table td.action:hover{color:var(--color-red)}.cc-empty{padding:5px 16px;font-size:10px;color:var(--color-b-active);font-style:italic}th.cc-burden-col,td.cc-burden-col{color:var(--color-text-mut);font-size:9px;font-variant-numeric:tabular-nums;text-align:center;padding-left:4px!important;padding-right:4px!important;white-space:nowrap}.crew-card-footer{display:flex;align-items:center;padding:7px 16px;background:var(--oe-surface);border-top:1px solid var(--color-b-active);font-size:11px}.crew-card-footer .spacer{flex:1}.crew-card-footer .daily-value{color:var(--color-cyan);font-weight:700;font-variant-numeric:tabular-nums}.crew-card-footer .total-value{color:var(--color-green);font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}.crew-card-footer .remove-btn{margin-left:16px;color:var(--color-text-mut);font-size:10px;cursor:pointer;border:1px solid var(--color-b-active);padding:2px 8px;border-radius:2px;background:none;font-family:inherit;transition:all .15s}.crew-card-footer .remove-btn:hover{border-color:var(--color-red);color:var(--color-red)}.cc-section-label{padding:4px 8px 8px;font-size:10px;color:var(--color-text-mut);text-transform:uppercase;letter-spacing:.08em}.cc-assign-btn{display:block;margin:8px 0;background:transparent;border:1px dashed var(--color-b-active);border-radius:2px;color:var(--color-text-mut);font-size:11px;font-family:inherit;padding:8px 14px;cursor:pointer;transition:all .15s}.cc-assign-btn:hover{border-color:var(--color-cyan);color:var(--color-cyan)}.cc-scope-link{margin-top:16px;border-top:1px solid var(--color-b-subtle);padding-top:4px}.cc-scope-row{display:flex;align-items:center;padding:7px 8px;font-size:11px;color:var(--color-text-sec);cursor:pointer;border-bottom:1px solid var(--color-b-subtle);transition:color .15s}.cc-scope-row:hover{color:var(--color-cyan)}.cc-scope-chevron{color:var(--color-text-mut);margin-right:8px;font-size:10px}.cc-scope-action{margin-left:auto;color:var(--color-text-mut);font-size:10px}.tree-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-left:4px}.tree-status-dot--built{background:var(--color-green)}.tree-status-dot--partial{background:var(--color-yellow)}.tree-status-dot--empty{background:var(--color-text-mut);opacity:.4}.cs-prod-rate-trigger{cursor:pointer;position:relative}.cs-prod-rate-trigger:hover{color:var(--color-cyan)}.cs-prod-rate-popover{position:absolute;top:100%;left:0;margin-top:4px;background:var(--color-elevated);border:1px solid var(--color-b-active);border-radius:2px;padding:8px 12px;font-size:11px;white-space:nowrap;z-index:10;min-width:200px}.cs-prod-rate-popover-row{display:flex;justify-content:space-between;gap:16px;padding:2px 0;color:var(--color-text-sec)}.cs-prod-rate-popover-row .rate{color:var(--color-text-pri);font-weight:600}.crew-card-cal-info{display:flex;align-items:center;gap:16px;padding:4px 16px 8px;border-bottom:1px solid var(--color-b-subtle);flex-wrap:wrap;font-size:11px}.crew-card-cal-metric{display:flex;flex-direction:column;gap:2px}.crew-card-cal-summary{color:var(--color-text-mut);font-size:10px;flex:1}.crew-card-exempt-badge{font-size:9px;font-weight:700;color:var(--color-yellow);background:#ffe6001a;padding:1px 6px;border-radius:2px;text-transform:uppercase;letter-spacing:.06em}.crew-card-exemptions{display:flex;flex-direction:row;align-items:center;gap:16px;align-self:center}.crew-card-exempt-toggle{display:flex;align-items:center;gap:6px;cursor:pointer;font-family:var(--font-family-mono);font-size:11px;color:var(--color-text-sec);-webkit-user-select:none;-moz-user-select:none;user-select:none}.crew-card-exempt-toggle input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:11px;height:11px;border:1px solid var(--color-text-mut);border-radius:2px;background:transparent;cursor:pointer;flex-shrink:0;position:relative}.crew-card-exempt-toggle input[type=checkbox]:checked{background:var(--color-text-mut);border-color:var(--color-text-sec)}.crew-card-exempt-toggle input[type=checkbox]:checked:after{content:"";position:absolute;left:2px;top:0;width:4px;height:7px;border:1.5px solid var(--color-elevated);border-top:none;border-left:none;transform:rotate(45deg)}.crew-card-unit{font-size:9px;color:var(--color-cyan);margin-left:4px}
