.BestekPreviewModal-module__g_8AyW__backdrop{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.BestekPreviewModal-module__g_8AyW__modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:900px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 10px 40px #0003}.BestekPreviewModal-module__g_8AyW__header{background:#f8f9fa;border-bottom:1px solid #e5e5e5;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.BestekPreviewModal-module__g_8AyW__headerLeft{flex-direction:column;gap:2px;display:flex}.BestekPreviewModal-module__g_8AyW__title{color:#333;margin:0;font-size:18px;font-weight:600}.BestekPreviewModal-module__g_8AyW__projectName{color:#666;font-size:13px}.BestekPreviewModal-module__g_8AyW__closeButton{color:#666;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:20px;transition:background-color .2s}.BestekPreviewModal-module__g_8AyW__closeButton:hover{color:#333;background-color:#0000001a}.BestekPreviewModal-module__g_8AyW__content{flex:1;min-height:200px;padding:16px 20px;overflow-y:auto}.BestekPreviewModal-module__g_8AyW__emptyState{color:#666;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px 20px;display:flex}.BestekPreviewModal-module__g_8AyW__emptyIcon{font-size:32px}.BestekPreviewModal-module__g_8AyW__accordion{border:1px solid #e5e5e5;border-radius:8px;margin-bottom:12px;overflow:hidden}.BestekPreviewModal-module__g_8AyW__accordionHeader{cursor:pointer;text-align:left;background:#f8f9fa;border:none;align-items:center;width:100%;padding:12px 16px;transition:background-color .2s;display:flex}.BestekPreviewModal-module__g_8AyW__accordionHeader:hover{background:#eef0f2}.BestekPreviewModal-module__g_8AyW__accordionChevron{color:#666;margin-right:10px;font-size:12px;transition:transform .2s}.BestekPreviewModal-module__g_8AyW__accordionTitle{color:#333;flex:1;font-size:14px;font-weight:600}.BestekPreviewModal-module__g_8AyW__accordionBadge{color:#666;background:#e0e0e0;border-radius:12px;padding:2px 8px;font-size:12px}.BestekPreviewModal-module__g_8AyW__accordionContent{background:#fff;border-top:1px solid #e5e5e5;padding:16px}.BestekPreviewModal-module__g_8AyW__section{margin-bottom:16px}.BestekPreviewModal-module__g_8AyW__section:last-child{margin-bottom:0}.BestekPreviewModal-module__g_8AyW__sectionTitle{color:#555;border-bottom:1px solid #eee;margin:0 0 8px;padding-bottom:4px;font-size:13px;font-weight:600}.BestekPreviewModal-module__g_8AyW__emptyTable{text-align:center;color:#888;background:#fafafa;border-radius:4px;padding:12px;font-size:13px}.BestekPreviewModal-module__g_8AyW__tableWrapper{overflow-x:auto}.BestekPreviewModal-module__g_8AyW__table{border-collapse:collapse;color:#333;width:100%;font-size:13px}.BestekPreviewModal-module__g_8AyW__table th,.BestekPreviewModal-module__g_8AyW__table td{text-align:left;color:inherit;border-bottom:1px solid #eee;padding:8px 10px}.BestekPreviewModal-module__g_8AyW__table th{color:#555;background:#f5f5f5;font-weight:600;position:sticky;top:0}.BestekPreviewModal-module__g_8AyW__table tbody tr:hover{background:#f8f9fa}.BestekPreviewModal-module__g_8AyW__codeCell{color:#1a73e8;white-space:nowrap;font-family:monospace;font-weight:600}.BestekPreviewModal-module__g_8AyW__descCell{text-overflow:ellipsis;white-space:nowrap;color:#333;max-width:300px;overflow:hidden}.BestekPreviewModal-module__g_8AyW__unitCell{text-align:center;color:#333}.BestekPreviewModal-module__g_8AyW__priceCell{text-align:right;white-space:nowrap;color:#333}.BestekPreviewModal-module__g_8AyW__qtyCell{text-align:right;white-space:nowrap;color:#333;font-weight:500}.BestekPreviewModal-module__g_8AyW__costCell{text-align:right;white-space:nowrap;font-weight:600;color:#2e7d32!important}.BestekPreviewModal-module__g_8AyW__overriddenRow{background:#fff8e1}.BestekPreviewModal-module__g_8AyW__overriddenRow:hover{background:#fff3cd}.BestekPreviewModal-module__g_8AyW__overrideIcon{font-size:12px}.BestekPreviewModal-module__g_8AyW__multiplierBadge{color:#1565c0;cursor:help;background-color:#e3f2fd;border-radius:4px;margin-left:4px;padding:1px 5px;font-size:11px;font-weight:600;display:inline-block}.BestekPreviewModal-module__g_8AyW__depthBadge{color:#5d4037;cursor:help;background-color:#efebe9;border-radius:4px;margin-left:4px;padding:1px 5px;font-size:10px;display:inline-block}.BestekPreviewModal-module__g_8AyW__surchargeBadge{color:#b45309;cursor:help;vertical-align:middle;background-color:#fef3c7;border:1px solid #fcd34d;border-radius:4px;margin-left:6px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-block}.BestekPreviewModal-module__g_8AyW__trenchlessBadge{color:#6d28d9;cursor:help;vertical-align:middle;background-color:#ede9fe;border:1px solid #c4b5fd;border-radius:4px;margin-left:4px;padding:1px 5px;font-size:10px;font-weight:600;display:inline-block}.BestekPreviewModal-module__g_8AyW__manualRow{background:#e8f5e9}.BestekPreviewModal-module__g_8AyW__manualRow:hover{background:#c8e6c9}.BestekPreviewModal-module__g_8AyW__noteIcon{cursor:help;margin-left:4px}.BestekPreviewModal-module__g_8AyW__sourceSegmentBadge,.BestekPreviewModal-module__g_8AyW__sourceObstacleBadge{cursor:help;margin-left:6px;font-size:.9em}.BestekPreviewModal-module__g_8AyW__totalsSection{border-top:2px solid #1a73e8;margin-top:20px;padding-top:16px}.BestekPreviewModal-module__g_8AyW__totalsTitle{color:#1a73e8;margin:0 0 12px;font-size:16px;font-weight:600}.BestekPreviewModal-module__g_8AyW__checkboxHeader,.BestekPreviewModal-module__g_8AyW__checkboxCell{text-align:center;width:32px}.BestekPreviewModal-module__g_8AyW__checkboxCell input[type=checkbox]{cursor:pointer;width:16px;height:16px}.BestekPreviewModal-module__g_8AyW__actionsHeader,.BestekPreviewModal-module__g_8AyW__actionsCell{text-align:center;width:40px}.BestekPreviewModal-module__g_8AyW__qtyInputWrapper{align-items:center;gap:4px;display:flex}.BestekPreviewModal-module__g_8AyW__qtyInput{text-align:right;color:#333;background:#fff;border:1px solid #ddd;border-radius:4px;width:80px;padding:4px 6px;font-size:13px}.BestekPreviewModal-module__g_8AyW__qtyInput:focus{border-color:#1a73e8;outline:none;box-shadow:0 0 0 2px #1a73e833}.BestekPreviewModal-module__g_8AyW__qtyInput::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.BestekPreviewModal-module__g_8AyW__qtyInput::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.BestekPreviewModal-module__g_8AyW__qtyInput[type=number]{-moz-appearance:textfield}.BestekPreviewModal-module__g_8AyW__resetButton{cursor:pointer;color:#666;background:0 0;border:1px solid #ddd;border-radius:4px;padding:2px 8px;font-size:14px;transition:all .2s}.BestekPreviewModal-module__g_8AyW__resetButton:hover{color:#333;background:#f0f0f0;border-color:#bbb}.BestekPreviewModal-module__g_8AyW__excludedRow{opacity:.5}.BestekPreviewModal-module__g_8AyW__excludedRow td{text-decoration:line-through}.BestekPreviewModal-module__g_8AyW__excludedRow .BestekPreviewModal-module__g_8AyW__checkboxCell,.BestekPreviewModal-module__g_8AyW__excludedRow .BestekPreviewModal-module__g_8AyW__actionsCell{text-decoration:none}.BestekPreviewModal-module__g_8AyW__footer{background:#f8f9fa;border-top:1px solid #e5e5e5;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.BestekPreviewModal-module__g_8AyW__footerTotal{color:#333;font-size:16px;font-weight:600}.BestekPreviewModal-module__g_8AyW__downloadButton{color:#fff;cursor:pointer;background:#1a73e8;border:none;border-radius:6px;align-items:center;gap:6px;padding:10px 24px;font-size:14px;font-weight:500;transition:background-color .2s;display:flex}.BestekPreviewModal-module__g_8AyW__downloadButton:hover{background:#1557b0}.BestekPreviewModal-module__g_8AyW__addCodeButton{color:#fff;cursor:pointer;background:#4caf50;border:none;border-radius:6px;margin-top:12px;padding:8px 16px;font-size:13px;font-weight:500;transition:background-color .2s}.BestekPreviewModal-module__g_8AyW__addCodeButton:hover{background:#388e3c}.BestekPreviewModal-module__g_8AyW__deleteButton{cursor:pointer;color:#f44336;background:0 0;border:1px solid #f44336;border-radius:4px;padding:2px 8px;font-size:12px;transition:all .2s}.BestekPreviewModal-module__g_8AyW__deleteButton:hover{background:#ffebee;border-color:#d32f2f}.BestekPreviewModal-module__g_8AyW__dialogBackdrop{z-index:1100;background-color:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.BestekPreviewModal-module__g_8AyW__dialog{background:#fff;border-radius:12px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.BestekPreviewModal-module__g_8AyW__dialogHeader{background:#f8f9fa;border-bottom:1px solid #e5e5e5;border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.BestekPreviewModal-module__g_8AyW__dialogHeader h3{color:#333;margin:0;font-size:16px;font-weight:600}.BestekPreviewModal-module__g_8AyW__dialogClose{color:#666;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:18px;transition:background-color .2s}.BestekPreviewModal-module__g_8AyW__dialogClose:hover{color:#333;background-color:#0000001a}.BestekPreviewModal-module__g_8AyW__dialogForm{padding:20px}.BestekPreviewModal-module__g_8AyW__formField{margin-bottom:16px}.BestekPreviewModal-module__g_8AyW__formField label{color:#333;margin-bottom:6px;font-size:13px;font-weight:500;display:block}.BestekPreviewModal-module__g_8AyW__formField input,.BestekPreviewModal-module__g_8AyW__formField textarea{color:#333;box-sizing:border-box;background:#fff;border:1px solid #ddd;border-radius:6px;width:100%;padding:10px 12px;font-size:14px}.BestekPreviewModal-module__g_8AyW__formField input:focus,.BestekPreviewModal-module__g_8AyW__formField textarea:focus{border-color:#1a73e8;outline:none;box-shadow:0 0 0 2px #1a73e833}.BestekPreviewModal-module__g_8AyW__formField input.BestekPreviewModal-module__g_8AyW__readOnlyInput{color:#666;cursor:not-allowed;background:#f5f5f5}.BestekPreviewModal-module__g_8AyW__formField textarea{resize:vertical;min-height:80px}.BestekPreviewModal-module__g_8AyW__fieldError{color:#d32f2f;margin-top:4px;font-size:12px;display:block}.BestekPreviewModal-module__g_8AyW__dialogActions{border-top:1px solid #eee;justify-content:flex-end;gap:12px;margin-top:8px;padding-top:16px;display:flex}.BestekPreviewModal-module__g_8AyW__cancelButton{color:#666;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.BestekPreviewModal-module__g_8AyW__cancelButton:hover{background:#f5f5f5;border-color:#bbb}.BestekPreviewModal-module__g_8AyW__submitButton{color:#fff;cursor:pointer;background:#4caf50;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:background-color .2s}.BestekPreviewModal-module__g_8AyW__submitButton:hover:not(:disabled){background:#388e3c}.BestekPreviewModal-module__g_8AyW__submitButton:disabled{color:#9e9e9e;cursor:not-allowed;background:#c8e6c9}@media (max-width:700px){.BestekPreviewModal-module__g_8AyW__backdrop{padding:10px}.BestekPreviewModal-module__g_8AyW__modal{max-height:90vh}.BestekPreviewModal-module__g_8AyW__header{padding:12px 16px}.BestekPreviewModal-module__g_8AyW__title{font-size:16px}.BestekPreviewModal-module__g_8AyW__content{padding:12px}.BestekPreviewModal-module__g_8AyW__accordionHeader{padding:10px 12px}.BestekPreviewModal-module__g_8AyW__accordionContent{padding:12px}.BestekPreviewModal-module__g_8AyW__table{font-size:12px}.BestekPreviewModal-module__g_8AyW__table th,.BestekPreviewModal-module__g_8AyW__table td{padding:6px 8px}.BestekPreviewModal-module__g_8AyW__descCell{max-width:150px}}.BestekPreviewModal-module__g_8AyW__segmentBreakdown{background:#f5f7fa;border:1px solid #e0e4e8;border-radius:6px;margin-bottom:16px}.BestekPreviewModal-module__g_8AyW__segmentBreakdownToggle{cursor:pointer;color:#555;text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:10px 12px;font-size:13px;font-weight:500;display:flex}.BestekPreviewModal-module__g_8AyW__segmentBreakdownToggle:hover{background:#00000008}.BestekPreviewModal-module__g_8AyW__segmentBreakdownChevron{color:#888;font-size:10px}.BestekPreviewModal-module__g_8AyW__segmentBreakdownContent{flex-direction:column;gap:12px;padding:0 12px 12px;display:flex}.BestekPreviewModal-module__g_8AyW__segmentItem{background:#fff;border:1px solid #e0e4e8;border-radius:4px;overflow:hidden}.BestekPreviewModal-module__g_8AyW__segmentHeader{background:#fafbfc;border-bottom:1px solid #e0e4e8;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.BestekPreviewModal-module__g_8AyW__segmentLabel{color:#333;font-size:12px;font-weight:600}.BestekPreviewModal-module__g_8AyW__segmentCodeCount{color:#888;font-size:11px}.BestekPreviewModal-module__g_8AyW__segmentCodes{padding:8px 12px}.BestekPreviewModal-module__g_8AyW__segmentCodeRow{color:#555;border-bottom:1px solid #f0f0f0;grid-template-columns:70px 1fr auto;gap:8px;padding:4px 0;font-size:12px;display:grid}.BestekPreviewModal-module__g_8AyW__segmentCodeRow:last-child{border-bottom:none}.BestekPreviewModal-module__g_8AyW__segmentCode{color:#333;font-family:monospace;font-weight:500}.BestekPreviewModal-module__g_8AyW__segmentCodeDesc{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.BestekPreviewModal-module__g_8AyW__segmentCodeQty{text-align:right;color:#666;white-space:nowrap;font-weight:500}.BestekPreviewModal-module__g_8AyW__segmentNoCode{color:#999;padding:4px 0;font-size:12px;font-style:italic}.BestekPreviewModal-module__g_8AyW__segmentCodeRowInteractive{color:#555;border-bottom:1px solid #f0f0f0;grid-template-columns:28px 70px 1fr 80px 60px;align-items:center;gap:8px;padding:6px 0;font-size:12px;display:grid}.BestekPreviewModal-module__g_8AyW__segmentCodeRowInteractive:last-child{border-bottom:none}.BestekPreviewModal-module__g_8AyW__segmentCheckbox{justify-content:center;align-items:center;display:flex}.BestekPreviewModal-module__g_8AyW__segmentCheckbox input[type=checkbox]{cursor:pointer;accent-color:#1a73e8;width:14px;height:14px}.BestekPreviewModal-module__g_8AyW__segmentQtyInput{text-align:right;color:#333;background:#fff;border:1px solid #ddd;border-radius:3px;width:60px;padding:3px 5px;font-size:11px}.BestekPreviewModal-module__g_8AyW__segmentQtyInput:focus{border-color:#1a73e8;outline:none;box-shadow:0 0 0 1px #1a73e833}.BestekPreviewModal-module__g_8AyW__segmentQtyInput::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.BestekPreviewModal-module__g_8AyW__segmentQtyInput::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.BestekPreviewModal-module__g_8AyW__segmentCodeRowExcluded{opacity:.5}.BestekPreviewModal-module__g_8AyW__segmentCodeRowExcluded .BestekPreviewModal-module__g_8AyW__segmentCode,.BestekPreviewModal-module__g_8AyW__segmentCodeRowExcluded .BestekPreviewModal-module__g_8AyW__segmentCodeDesc,.BestekPreviewModal-module__g_8AyW__segmentCodeRowExcluded .BestekPreviewModal-module__g_8AyW__segmentCodeQty{color:#999;text-decoration:line-through}.BestekPreviewModal-module__g_8AyW__segmentQtyOverridden{background:#fff8e1;border-color:#ffc107}.BestekPreviewModal-module__g_8AyW__segmentActions{justify-content:center;display:flex}.BestekPreviewModal-module__g_8AyW__segmentDeleteBtn{color:#999;cursor:pointer;background:0 0;border:none;border-radius:3px;padding:2px 4px;font-size:14px;line-height:1}.BestekPreviewModal-module__g_8AyW__segmentDeleteBtn:hover{color:#d32f2f;background:#fee}.BestekPreviewModal-module__g_8AyW__segmentManualSection{border-top:1px dashed #e0e4e8;margin-top:8px;padding-top:8px}.BestekPreviewModal-module__g_8AyW__segmentManualHeader{color:#888;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:11px;display:flex}.BestekPreviewModal-module__g_8AyW__segmentManualLabel{text-transform:uppercase;letter-spacing:.5px;font-weight:500}.BestekPreviewModal-module__g_8AyW__segmentAddCodeBtn{color:#34a853;cursor:pointer;background:0 0;border:1px solid #34a853;border-radius:3px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;transition:background .15s,color .15s;display:inline-flex}.BestekPreviewModal-module__g_8AyW__segmentAddCodeBtn:hover{color:#fff;background:#34a853}.BestekPreviewModal-module__g_8AyW__segmentManualEmpty{color:#bbb;padding:2px 0;font-size:11px;font-style:italic}
.RestoreConfirmDialog-module__glhqPW__backdrop{z-index:1000;background:#00000080;justify-content:center;align-items:center;animation:.15s ease-out RestoreConfirmDialog-module__glhqPW__fadeIn;display:flex;position:fixed;inset:0}@keyframes RestoreConfirmDialog-module__glhqPW__fadeIn{0%{opacity:0}to{opacity:1}}.RestoreConfirmDialog-module__glhqPW__dialog{background:#fff;border-radius:8px;width:90%;max-width:400px;padding:1.5rem;animation:.15s ease-out RestoreConfirmDialog-module__glhqPW__slideIn;box-shadow:0 4px 20px #0003}@keyframes RestoreConfirmDialog-module__glhqPW__slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.RestoreConfirmDialog-module__glhqPW__title{color:#1a1a1a;margin:0 0 1rem;font-size:1.25rem;font-weight:600}.RestoreConfirmDialog-module__glhqPW__content{margin-bottom:1.5rem}.RestoreConfirmDialog-module__glhqPW__message{color:#444;margin:0 0 .5rem;font-size:.95rem}.RestoreConfirmDialog-module__glhqPW__snapshotName{color:#06c;word-break:break-word;background:#f0f7ff;border-radius:4px;margin:0 0 1rem;padding:.5rem .75rem;font-size:.9rem;font-weight:500}.RestoreConfirmDialog-module__glhqPW__warning{color:#856404;background:#fff3cd;border:1px solid #ffeeba;border-radius:4px;margin:0;padding:.5rem .75rem;font-size:.85rem}.RestoreConfirmDialog-module__glhqPW__actions{justify-content:flex-end;gap:.75rem;display:flex}.RestoreConfirmDialog-module__glhqPW__cancelButton{color:#666;cursor:pointer;background:#f0f0f0;border:1px solid #ddd;border-radius:4px;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:all .15s}.RestoreConfirmDialog-module__glhqPW__cancelButton:hover:not(:disabled){background:#e0e0e0;border-color:#ccc}.RestoreConfirmDialog-module__glhqPW__cancelButton:disabled{opacity:.6;cursor:not-allowed}.RestoreConfirmDialog-module__glhqPW__confirmButton{color:#fff;cursor:pointer;background:#dc3545;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:all .15s}.RestoreConfirmDialog-module__glhqPW__confirmButton:hover:not(:disabled){background:#c82333}.RestoreConfirmDialog-module__glhqPW__confirmButton:disabled{opacity:.6;cursor:not-allowed}
.SnapshotList-module__NDOcdq__container{width:100%;padding:.5rem}.SnapshotList-module__NDOcdq__header{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.SnapshotList-module__NDOcdq__title{color:#333;margin:0;font-size:.95rem;font-weight:600}.SnapshotList-module__NDOcdq__count{color:#666;background:#f0f0f0;border-radius:10px;padding:.2rem .5rem;font-size:.75rem}.SnapshotList-module__NDOcdq__list{flex-direction:column;gap:.5rem;max-height:300px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.SnapshotList-module__NDOcdq__item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;justify-content:space-between;align-items:center;padding:.5rem .75rem;transition:background-color .15s;display:flex}.SnapshotList-module__NDOcdq__item:hover{background:#e9ecef}.SnapshotList-module__NDOcdq__itemContent{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.SnapshotList-module__NDOcdq__name{color:#333;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:500;overflow:hidden}.SnapshotList-module__NDOcdq__date{color:#666;font-size:.7rem}.SnapshotList-module__NDOcdq__restoreButton{color:#fff;cursor:pointer;background:#06c;border:none;border-radius:4px;flex-shrink:0;margin-left:.75rem;padding:.35rem .75rem;font-size:.75rem;font-weight:500;transition:background-color .15s}.SnapshotList-module__NDOcdq__restoreButton:hover:not(:disabled){background:#0052a3}.SnapshotList-module__NDOcdq__restoreButton:disabled{cursor:not-allowed;background:#ccc}.SnapshotList-module__NDOcdq__loading{color:#666;justify-content:center;align-items:center;gap:.5rem;padding:1.5rem;font-size:.85rem;display:flex}.SnapshotList-module__NDOcdq__spinner{border:2px solid #e0e0e0;border-top-color:#06c;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite SnapshotList-module__NDOcdq__spin;display:inline-block}@keyframes SnapshotList-module__NDOcdq__spin{to{transform:rotate(360deg)}}.SnapshotList-module__NDOcdq__empty{text-align:center;color:#666;padding:1.5rem}.SnapshotList-module__NDOcdq__empty p{margin:0;font-size:.85rem}.SnapshotList-module__NDOcdq__emptyHint{color:#999;margin-top:.5rem!important;font-size:.75rem!important}.SnapshotList-module__NDOcdq__error{text-align:center;color:#dc3545;padding:1.5rem}.SnapshotList-module__NDOcdq__error p{margin:0 0 .5rem;font-size:.85rem}.SnapshotList-module__NDOcdq__errorDetail{color:#999;font-size:.75rem}.SnapshotList-module__NDOcdq__retryButton{color:#06c;cursor:pointer;background:#fff;border:1px solid #06c;border-radius:4px;margin-top:.75rem;padding:.4rem 1rem;font-size:.8rem;transition:all .15s}.SnapshotList-module__NDOcdq__retryButton:hover{color:#fff;background:#06c}.SnapshotList-module__NDOcdq__restoreError{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.8rem}.SnapshotList-module__NDOcdq__nameRow{align-items:center;gap:.3rem;display:flex}.SnapshotList-module__NDOcdq__typeBadge{flex-shrink:0;font-size:.75rem}.SnapshotList-module__NDOcdq__pinnedBadge{flex-shrink:0;font-size:.65rem}.SnapshotList-module__NDOcdq__description{color:#555;white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;font-style:italic;overflow:hidden}.SnapshotList-module__NDOcdq__triggerLabel{color:#888;font-style:italic}.SnapshotList-module__NDOcdq__sizeLabel{color:#999;font-size:.65rem}.SnapshotList-module__NDOcdq__itemActions{flex-shrink:0;align-items:center;gap:.25rem;margin-left:.5rem;display:flex}.SnapshotList-module__NDOcdq__pinButton{cursor:pointer;opacity:.6;background:0 0;border:none;padding:.25rem;font-size:.8rem;transition:opacity .15s}.SnapshotList-module__NDOcdq__pinButton:hover{opacity:1}.SnapshotList-module__NDOcdq__headerActions{align-items:center;gap:.5rem;display:flex}.SnapshotList-module__NDOcdq__saveButton{color:#06c;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #06c;border-radius:4px;padding:.3rem .6rem;font-size:.75rem;font-weight:500;transition:all .15s}.SnapshotList-module__NDOcdq__saveButton:hover:not(:disabled){color:#fff;background:#06c}.SnapshotList-module__NDOcdq__saveButton:disabled{opacity:.5;cursor:not-allowed}.SnapshotList-module__NDOcdq__pinnedWarning{color:#856404;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;margin-bottom:.5rem;padding:.4rem .6rem;font-size:.75rem}.SnapshotList-module__NDOcdq__pinnedFull{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;margin-bottom:.5rem;padding:.4rem .6rem;font-size:.75rem}.SnapshotList-module__NDOcdq__backdrop{z-index:10000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.SnapshotList-module__NDOcdq__saveConfirmDialog{background:#fff;border-radius:8px;width:90%;max-width:360px;padding:1.25rem;box-shadow:0 4px 20px #00000026}.SnapshotList-module__NDOcdq__saveConfirmTitle{color:#333;margin:0 0 .75rem;font-size:1rem;font-weight:600}.SnapshotList-module__NDOcdq__saveConfirmMessage{color:#555;margin:0 0 1rem;font-size:.85rem;line-height:1.4}.SnapshotList-module__NDOcdq__saveConfirmActions{justify-content:flex-end;gap:.5rem;display:flex}.SnapshotList-module__NDOcdq__cancelBtn{color:#333;cursor:pointer;background:#e9ecef;border:1px solid #ced4da;border-radius:4px;padding:.4rem .8rem;font-size:.8rem}.SnapshotList-module__NDOcdq__cancelBtn:hover{background:#dee2e6}.SnapshotList-module__NDOcdq__confirmBtn{color:#fff;cursor:pointer;background:#dc3545;border:none;border-radius:4px;padding:.4rem .8rem;font-size:.8rem;font-weight:500}.SnapshotList-module__NDOcdq__confirmBtn:hover:not(:disabled){background:#c82333}.SnapshotList-module__NDOcdq__confirmBtn:disabled{opacity:.6;cursor:not-allowed}
.driver-active .driver-overlay,.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}@keyframes animate-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay{animation:.2s ease-in-out animate-fade-in}.driver-fade .driver-popover{animation:.2s animate-fade-in}.driver-popover{all:unset;box-sizing:border-box;color:#2d2d2d;z-index:1000000000;background-color:#fff;border-radius:5px;min-width:250px;max-width:300px;margin:0;padding:15px;position:fixed;top:0;right:0;box-shadow:0 1px 10px #0006}.driver-popover *{font-family:Helvetica Neue,Inter,ui-sans-serif,Apple Color Emoji,Helvetica,Arial,sans-serif}.driver-popover-title{zoom:1;margin:0;font:700 19px/1.5 sans-serif;display:block;position:relative}.driver-popover-close-btn{all:unset;cursor:pointer;color:#d2d2d2;z-index:1;text-align:center;width:32px;height:28px;font-size:18px;font-weight:500;transition:color .2s;position:absolute;top:0;right:0}.driver-popover-close-btn:hover,.driver-popover-close-btn:focus{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{zoom:1;margin-bottom:0;font:400 14px/1.5 sans-serif}.driver-popover-footer{text-align:right;zoom:1;justify-content:space-between;align-items:center;margin-top:15px;display:flex}.driver-popover-progress-text{color:#727272;zoom:1;font-size:13px;font-weight:400}.driver-popover-footer button{all:unset;box-sizing:border-box;text-shadow:1px 1px #fff;color:#2d2d2d;cursor:pointer;zoom:1;background-color:#fff;border:1px solid #ccc;border-radius:3px;outline:0;padding:3px 7px;font:12px/1.3 sans-serif;text-decoration:none;display:inline-block}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}:not(body):has(>.driver-active-element){overflow:hidden!important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none!important}.driver-popover-footer button:hover,.driver-popover-footer button:focus{background-color:#f7f7f7}.driver-popover-navigation-btns{flex-grow:1;justify-content:flex-end;display:flex}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{content:"";border:5px solid #fff;position:absolute}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{border-top-color:#0000;border-bottom-color:#0000;border-right-color:#0000;left:100%}.driver-popover-arrow-side-right{border-top-color:#0000;border-bottom-color:#0000;border-left-color:#0000;right:100%}.driver-popover-arrow-side-top{border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;top:100%}.driver-popover-arrow-side-bottom{border-top-color:#0000;border-left-color:#0000;border-right-color:#0000;bottom:100%}.driver-popover-arrow-side-center{display:none}.driver-popover-arrow-side-left.driver-popover-arrow-align-start,.driver-popover-arrow-side-right.driver-popover-arrow-align-start{top:15px}.driver-popover-arrow-side-top.driver-popover-arrow-align-start,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-start{left:15px}.driver-popover-arrow-align-end.driver-popover-arrow-side-left,.driver-popover-arrow-align-end.driver-popover-arrow-side-right{bottom:15px}.driver-popover-arrow-side-top.driver-popover-arrow-align-end,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-end{right:15px}.driver-popover-arrow-side-left.driver-popover-arrow-align-center,.driver-popover-arrow-side-right.driver-popover-arrow-align-center{margin-top:-5px;top:50%}.driver-popover-arrow-side-top.driver-popover-arrow-align-center,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-center{margin-left:-5px;left:50%}.driver-popover-arrow-none{display:none}
.LearnMenu-module__j_4joG__root{flex-shrink:0;position:relative}.LearnMenu-module__j_4joG__trigger{color:#7a7d8e;cursor:pointer;background:0 0;border:1px solid #1e2030b3;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;font-weight:700;transition:background .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1);display:flex}.LearnMenu-module__j_4joG__trigger:hover{color:#ecedf2;background:#ffffff0f;border-color:#3b82f680}.LearnMenu-module__j_4joG__trigger:focus-visible{outline-offset:2px;outline:2px solid #3b82f6}.LearnMenu-module__j_4joG__menu{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1f2333;z-index:1200;background:#fff;border:1px solid #e2e4ec;border-radius:10px;min-width:300px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 30px #0f12222e}.LearnMenu-module__j_4joG__menuHeader{justify-content:space-between;align-items:baseline;padding:8px 10px 6px;font-size:13px;font-weight:700;display:flex}.LearnMenu-module__j_4joG__menuCount{color:#7a7d8e;font-size:11px;font-weight:600}.LearnMenu-module__j_4joG__item{color:#1f2333;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:13px;display:flex}.LearnMenu-module__j_4joG__item:hover:not(:disabled){background:#f1f3f9}.LearnMenu-module__j_4joG__item:disabled{opacity:.55;cursor:default}.LearnMenu-module__j_4joG__itemMark,.LearnMenu-module__j_4joG__itemMarkDone{text-align:center;flex-shrink:0;width:18px}.LearnMenu-module__j_4joG__itemMark{color:#b5b8c6}.LearnMenu-module__j_4joG__itemMarkDone{color:#16a34a;font-weight:700}.LearnMenu-module__j_4joG__itemTitle{flex:1;min-width:0}.LearnMenu-module__j_4joG__itemMinutes{color:#9a9db0;flex-shrink:0;font-size:11px}
.LearnPrompt-module__VxNiyG__prompt{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1f2333;z-index:1100;background:#fff;border:1px solid #e2e4ec;border-radius:12px;gap:10px;max-width:320px;padding:12px 14px;display:flex;position:fixed;bottom:16px;right:16px;box-shadow:0 12px 32px #0f122238}.LearnPrompt-module__VxNiyG__icon{padding-top:2px;font-size:22px;line-height:1}.LearnPrompt-module__VxNiyG__body{min-width:0}.LearnPrompt-module__VxNiyG__title{font-size:13px;font-weight:700}.LearnPrompt-module__VxNiyG__subtitle{color:#7a7d8e;margin-top:2px;font-size:12px}.LearnPrompt-module__VxNiyG__actions{gap:8px;margin-top:8px;display:flex}.LearnPrompt-module__VxNiyG__accept{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:600}.LearnPrompt-module__VxNiyG__accept:hover{background:#1d4ed8}.LearnPrompt-module__VxNiyG__dismiss{color:#7a7d8e;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:5px 8px;font-size:12px}.LearnPrompt-module__VxNiyG__dismiss:hover{color:#1f2333;background:#f1f3f9}
.ConnectorEditorModal-module__gsDCta__backdrop{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ConnectorEditorModal-module__gsDCta__modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:480px;max-height:90vh;margin:16px;display:flex;overflow:auto;box-shadow:0 10px 40px #0003}.ConnectorEditorModal-module__gsDCta__header{border-bottom:1px solid #eee;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.ConnectorEditorModal-module__gsDCta__headerRight{align-items:center;gap:12px;display:flex}.ConnectorEditorModal-module__gsDCta__title{color:#333;margin:0;font-size:18px;font-weight:600}.ConnectorEditorModal-module__gsDCta__saveStatus{border-radius:4px;padding:4px 8px;font-size:13px;font-weight:500}.ConnectorEditorModal-module__gsDCta__saveStatus.ConnectorEditorModal-module__gsDCta__saving{color:#666;background:#f5f5f5}.ConnectorEditorModal-module__gsDCta__saveStatus.ConnectorEditorModal-module__gsDCta__saved{color:#28a745;background:#e8f5e9}.ConnectorEditorModal-module__gsDCta__saveStatus.ConnectorEditorModal-module__gsDCta__error{color:#c00;background:#fee}.ConnectorEditorModal-module__gsDCta__closeButton{cursor:pointer;color:#666;background:0 0;border:none;border-radius:4px;padding:8px;font-size:18px;line-height:1;transition:background .2s,color .2s}.ConnectorEditorModal-module__gsDCta__closeButton:hover:not(:disabled){color:#333;background:#f0f0f0}.ConnectorEditorModal-module__gsDCta__closeButton:disabled{opacity:.5;cursor:not-allowed}.ConnectorEditorModal-module__gsDCta__menuContainer{position:relative}.ConnectorEditorModal-module__gsDCta__menuButton{cursor:pointer;color:#666;background:0 0;border:none;border-radius:4px;padding:8px 10px;font-size:18px;font-weight:700;line-height:1;transition:background .2s,color .2s}.ConnectorEditorModal-module__gsDCta__menuButton:hover:not(:disabled){color:#333;background:#f0f0f0}.ConnectorEditorModal-module__gsDCta__menuButton:disabled{opacity:.5;cursor:not-allowed}.ConnectorEditorModal-module__gsDCta__menuDropdown{z-index:10;background:#fff;border:1px solid #ddd;border-radius:6px;min-width:160px;margin-top:4px;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.ConnectorEditorModal-module__gsDCta__menuItem{text-align:left;color:#333;cursor:pointer;background:0 0;border:none;width:100%;padding:10px 14px;font-size:14px;transition:background .2s;display:block}.ConnectorEditorModal-module__gsDCta__menuItem:hover:not(:disabled){background:#f5f5f5}.ConnectorEditorModal-module__gsDCta__menuItem:disabled{opacity:.5;cursor:not-allowed}.ConnectorEditorModal-module__gsDCta__form{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow-y:auto}.ConnectorEditorModal-module__gsDCta__field{flex-direction:column;gap:6px;display:flex}.ConnectorEditorModal-module__gsDCta__fieldRow{gap:16px;display:flex}.ConnectorEditorModal-module__gsDCta__fieldRow .ConnectorEditorModal-module__gsDCta__field{flex:1}.ConnectorEditorModal-module__gsDCta__label{color:#333;font-size:14px;font-weight:500}.ConnectorEditorModal-module__gsDCta__hint{color:#666;font-size:12px;font-weight:400}.ConnectorEditorModal-module__gsDCta__input,.ConnectorEditorModal-module__gsDCta__select,.ConnectorEditorModal-module__gsDCta__textarea{color:#333;background:#fff;border:1px solid #ddd;border-radius:6px;padding:10px 12px;font-size:14px;transition:border-color .2s,box-shadow .2s}.ConnectorEditorModal-module__gsDCta__input:focus,.ConnectorEditorModal-module__gsDCta__select:focus,.ConnectorEditorModal-module__gsDCta__textarea:focus{border-color:#4a7cff;outline:none;box-shadow:0 0 0 3px #4a7cff1a}.ConnectorEditorModal-module__gsDCta__input:disabled,.ConnectorEditorModal-module__gsDCta__select:disabled{cursor:not-allowed;background:#f5f5f5}.ConnectorEditorModal-module__gsDCta__textarea{resize:vertical;min-height:80px}.ConnectorEditorModal-module__gsDCta__select{cursor:pointer}.ConnectorEditorModal-module__gsDCta__radioGroup{gap:16px;display:flex}.ConnectorEditorModal-module__gsDCta__radioLabel{color:#333;cursor:pointer;align-items:center;gap:6px;font-size:14px;display:flex}.ConnectorEditorModal-module__gsDCta__radioLabel input{cursor:pointer}.ConnectorEditorModal-module__gsDCta__radioLabel input:disabled{cursor:not-allowed}.ConnectorEditorModal-module__gsDCta__distanceInputGroup{flex-direction:column;gap:8px;display:flex}.ConnectorEditorModal-module__gsDCta__slider{appearance:none;cursor:pointer;background:#e0e0e0;border-radius:3px;width:100%;height:6px}.ConnectorEditorModal-module__gsDCta__slider::-webkit-slider-thumb{appearance:none;cursor:pointer;background:#4a7cff;border-radius:50%;width:16px;height:16px;transition:background .2s}.ConnectorEditorModal-module__gsDCta__slider::-webkit-slider-thumb:hover{background:#3a6ce0}.ConnectorEditorModal-module__gsDCta__slider::-moz-range-thumb{cursor:pointer;background:#4a7cff;border:none;border-radius:50%;width:16px;height:16px}.ConnectorEditorModal-module__gsDCta__error{color:#c00;background:#fee;border:1px solid #fcc;border-radius:6px;padding:10px 12px;font-size:13px}.ConnectorEditorModal-module__gsDCta__errorContainer{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:12px 14px}.ConnectorEditorModal-module__gsDCta__errorHeader{color:#b91c1c;margin-bottom:6px;font-size:14px;font-weight:600}.ConnectorEditorModal-module__gsDCta__errorBody{color:#dc2626;font-size:13px;line-height:1.5}.ConnectorEditorModal-module__gsDCta__errorHint{color:#92400e;border-top:1px solid #fecaca;margin-top:10px;padding-top:10px;font-size:12px;line-height:1.4}.ConnectorEditorModal-module__gsDCta__footer{border-top:1px solid #eee;flex-shrink:0;justify-content:flex-end;gap:12px;padding:16px 20px;display:flex}.ConnectorEditorModal-module__gsDCta__cancelButton,.ConnectorEditorModal-module__gsDCta__saveButton,.ConnectorEditorModal-module__gsDCta__deleteButton{cursor:pointer;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:background .2s,border-color .2s}.ConnectorEditorModal-module__gsDCta__cancelButton{color:#666;background:#fff;border:1px solid #ddd}.ConnectorEditorModal-module__gsDCta__cancelButton:hover:not(:disabled){background:#f5f5f5;border-color:#ccc}.ConnectorEditorModal-module__gsDCta__saveButton{color:#fff;background:#4a7cff;border:1px solid #4a7cff}.ConnectorEditorModal-module__gsDCta__saveButton:hover:not(:disabled){background:#3a6ce0;border-color:#3a6ce0}.ConnectorEditorModal-module__gsDCta__deleteButton{color:#fff;background:#dc3545;border:1px solid #dc3545}.ConnectorEditorModal-module__gsDCta__deleteButton:hover:not(:disabled){background:#c82333;border-color:#c82333}.ConnectorEditorModal-module__gsDCta__deletingStatus{color:#666;font-size:14px}.ConnectorEditorModal-module__gsDCta__saveButton:disabled,.ConnectorEditorModal-module__gsDCta__cancelButton:disabled,.ConnectorEditorModal-module__gsDCta__deleteButton:disabled{opacity:.5;cursor:not-allowed}@media (max-width:480px){.ConnectorEditorModal-module__gsDCta__modal{max-height:95vh;margin:8px}.ConnectorEditorModal-module__gsDCta__header{padding:14px 16px}.ConnectorEditorModal-module__gsDCta__title{font-size:16px}.ConnectorEditorModal-module__gsDCta__form{padding:16px}.ConnectorEditorModal-module__gsDCta__fieldRow{flex-direction:column;gap:16px}.ConnectorEditorModal-module__gsDCta__footer{padding:14px 16px}.ConnectorEditorModal-module__gsDCta__cancelButton,.ConnectorEditorModal-module__gsDCta__saveButton{flex:1;padding:12px 16px}}
.SegmentContextMenu-module__rFO72a__menu{z-index:2000;background:#fff;border-radius:8px;min-width:160px;animation:.1s ease-out SegmentContextMenu-module__rFO72a__fadeIn;position:fixed;overflow:hidden;box-shadow:0 4px 16px #0003}@keyframes SegmentContextMenu-module__rFO72a__fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.SegmentContextMenu-module__rFO72a__header{color:#333;background:#f8f9fa;border-bottom:1px solid #eee;align-items:center;gap:6px;padding:10px 14px;font-size:12px;font-weight:600;display:flex}.SegmentContextMenu-module__rFO72a__groundType{color:#666;text-transform:capitalize;font-weight:400}.SegmentContextMenu-module__rFO72a__menuItems{padding:4px 0}.SegmentContextMenu-module__rFO72a__menuItem{text-align:left;color:#333;cursor:pointer;background:0 0;border:none;width:100%;padding:10px 14px;font-size:14px;transition:background .15s;display:block}.SegmentContextMenu-module__rFO72a__menuItem:hover:not(:disabled){background:#f5f5f5}.SegmentContextMenu-module__rFO72a__menuItem:disabled{opacity:.5;cursor:not-allowed}.SegmentContextMenu-module__rFO72a__addObstacleItem{color:#0d6efd}.SegmentContextMenu-module__rFO72a__addObstacleItem:hover:not(:disabled){background:#e7f1ff}
.AddObstacleModal-module__X_dYkq__backdrop{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.AddObstacleModal-module__X_dYkq__modal{background:#fff;border-radius:8px;flex-direction:column;width:90%;max-width:500px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 4px 20px #00000026}.AddObstacleModal-module__X_dYkq__header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.AddObstacleModal-module__X_dYkq__title{color:#111827;margin:0;font-size:18px;font-weight:600}.AddObstacleModal-module__X_dYkq__closeButton{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;font-size:20px;line-height:1}.AddObstacleModal-module__X_dYkq__closeButton:hover{color:#111827;background:#f3f4f6}.AddObstacleModal-module__X_dYkq__content{flex:1;padding:20px;overflow-y:auto}.AddObstacleModal-module__X_dYkq__addedSection{background:#f0fdf4;border:1px solid #86efac;border-radius:6px;margin-bottom:12px;padding:10px 12px}.AddObstacleModal-module__X_dYkq__addedHeader{align-items:center;margin-bottom:6px;display:flex}.AddObstacleModal-module__X_dYkq__addedTitle{color:#16a34a;font-size:13px;font-weight:600}.AddObstacleModal-module__X_dYkq__addedList{flex-wrap:wrap;gap:8px;display:flex}.AddObstacleModal-module__X_dYkq__addedItem{background:#fff;border:1px solid #bbf7d0;border-radius:4px;align-items:center;gap:4px;padding:4px 8px;font-size:13px;display:flex}.AddObstacleModal-module__X_dYkq__addedIcon{font-size:14px}.AddObstacleModal-module__X_dYkq__addedName{color:#166534;font-weight:500}.AddObstacleModal-module__X_dYkq__positionInfo{background:#f9fafb;border-radius:6px;align-items:center;gap:8px;margin-bottom:16px;padding:8px 12px;font-size:14px;display:flex}.AddObstacleModal-module__X_dYkq__positionLabel{color:#6b7280}.AddObstacleModal-module__X_dYkq__positionValue{color:#111827;font-weight:600}.AddObstacleModal-module__X_dYkq__separator{color:#d1d5db}.AddObstacleModal-module__X_dYkq__groundType{color:#059669;text-transform:capitalize}.AddObstacleModal-module__X_dYkq__section{margin-bottom:16px}.AddObstacleModal-module__X_dYkq__sectionLabel{color:#6b7280;margin-bottom:8px;font-size:13px;font-weight:500;display:block}.AddObstacleModal-module__X_dYkq__quantitySection{background:#ecfdf5;border:2px solid #10b981;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}.AddObstacleModal-module__X_dYkq__quantityHeader{align-items:center;gap:8px;min-width:150px;display:flex}.AddObstacleModal-module__X_dYkq__quantityTypeIcon{font-size:20px}.AddObstacleModal-module__X_dYkq__quantityTypeName{color:#065f46;font-size:14px;font-weight:600}.AddObstacleModal-module__X_dYkq__quantityControls{align-items:center;gap:6px;display:flex}.AddObstacleModal-module__X_dYkq__quantityUnit{color:#065f46;margin-left:4px;font-size:13px}.AddObstacleModal-module__X_dYkq__quantityCost{color:#047857;margin-left:8px;font-size:16px;font-weight:600}.AddObstacleModal-module__X_dYkq__addButton{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:6px;margin-left:auto;padding:8px 16px;font-size:14px;font-weight:600;transition:background .15s}.AddObstacleModal-module__X_dYkq__addButton:hover:not(:disabled){background:#059669}.AddObstacleModal-module__X_dYkq__addButton:disabled{cursor:not-allowed;background:#9ca3af}.AddObstacleModal-module__X_dYkq__typeGrid{flex-direction:column;gap:12px;display:flex}.AddObstacleModal-module__X_dYkq__categoryGroup{flex-direction:column;gap:4px;display:flex}.AddObstacleModal-module__X_dYkq__categoryName{color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;padding:4px 0;font-size:12px;font-weight:600}.AddObstacleModal-module__X_dYkq__typeButton{cursor:pointer;text-align:left;background:#f9fafb;border:2px solid #0000;border-radius:6px;align-items:center;gap:8px;padding:10px 12px;transition:all .15s;display:flex}.AddObstacleModal-module__X_dYkq__typeButton:hover{background:#f3f4f6;border-color:#e5e7eb}.AddObstacleModal-module__X_dYkq__typeButtonSelected{background:#ecfdf5;border-color:#10b981}.AddObstacleModal-module__X_dYkq__typeIcon{text-align:center;flex-shrink:0;width:28px;font-size:20px}.AddObstacleModal-module__X_dYkq__typeName{color:#111827;flex:1;font-size:14px;font-weight:500}.AddObstacleModal-module__X_dYkq__typePrice{color:#6b7280;white-space:nowrap;font-size:12px}.AddObstacleModal-module__X_dYkq__customSection{margin-bottom:16px}.AddObstacleModal-module__X_dYkq__customFields{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;flex-direction:column;gap:12px;padding:12px;display:flex}.AddObstacleModal-module__X_dYkq__customQuantityRow{border-top:1px solid #e5e7eb;align-items:center;gap:12px;padding-top:8px;display:flex}.AddObstacleModal-module__X_dYkq__customQuantityRow .AddObstacleModal-module__X_dYkq__fieldLabel{min-width:80px;margin-bottom:0}.AddObstacleModal-module__X_dYkq__customCost{color:#047857;background:#ecfdf5;border-radius:4px;padding:8px 12px;font-size:14px}.AddObstacleModal-module__X_dYkq__fieldRow{gap:12px;display:flex}.AddObstacleModal-module__X_dYkq__field{flex:1}.AddObstacleModal-module__X_dYkq__fieldLabel{color:#6b7280;margin-bottom:4px;font-size:12px;font-weight:500;display:block}.AddObstacleModal-module__X_dYkq__input,.AddObstacleModal-module__X_dYkq__select{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:4px;width:100%;padding:8px 10px;font-size:14px}.AddObstacleModal-module__X_dYkq__input:focus,.AddObstacleModal-module__X_dYkq__select:focus{border-color:#10b981;outline:none;box-shadow:0 0 0 2px #10b9811a}.AddObstacleModal-module__X_dYkq__input::placeholder{color:#9ca3af}.AddObstacleModal-module__X_dYkq__notesSection{border-top:1px solid #e5e7eb;margin-top:12px;padding-top:12px}.AddObstacleModal-module__X_dYkq__notesToggle{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:13px}.AddObstacleModal-module__X_dYkq__notesToggle:hover{color:#374151}.AddObstacleModal-module__X_dYkq__notesField{flex-direction:column;gap:4px;display:flex}.AddObstacleModal-module__X_dYkq__quantityButton{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;font-weight:500;display:flex}.AddObstacleModal-module__X_dYkq__quantityButton:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.AddObstacleModal-module__X_dYkq__quantityButton:disabled{opacity:.5;cursor:not-allowed}.AddObstacleModal-module__X_dYkq__quantityInput{text-align:center;color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:6px;width:60px;height:32px;padding:4px 8px;font-size:15px;font-weight:500}.AddObstacleModal-module__X_dYkq__quantityInput:focus{border-color:#10b981;outline:none;box-shadow:0 0 0 2px #10b9811a}.AddObstacleModal-module__X_dYkq__quantityInput::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.AddObstacleModal-module__X_dYkq__quantityInput::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.AddObstacleModal-module__X_dYkq__quantityInput[type=number]{-moz-appearance:textfield}.AddObstacleModal-module__X_dYkq__textarea{color:#111827;resize:vertical;background:#fff;border:1px solid #d1d5db;border-radius:6px;width:100%;min-height:50px;padding:10px 12px;font-family:inherit;font-size:14px}.AddObstacleModal-module__X_dYkq__textarea:focus{border-color:#10b981;outline:none;box-shadow:0 0 0 2px #10b9811a}.AddObstacleModal-module__X_dYkq__textarea::placeholder{color:#9ca3af}
.ConnectorContextMenu-module__71xwWG__menu{z-index:2000;background:#fff;border-radius:8px;min-width:160px;animation:.1s ease-out ConnectorContextMenu-module__71xwWG__fadeIn;position:fixed;overflow:hidden;box-shadow:0 4px 16px #0003}@keyframes ConnectorContextMenu-module__71xwWG__fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.ConnectorContextMenu-module__71xwWG__header{color:#333;background:#f8f9fa;border-bottom:1px solid #eee;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 14px;font-size:12px;font-weight:600;display:flex}.ConnectorContextMenu-module__71xwWG__label{color:#666;font-weight:400}.ConnectorContextMenu-module__71xwWG__capacityBadge{border-radius:10px;margin-left:auto;padding:2px 6px;font-size:10px;font-weight:500}.ConnectorContextMenu-module__71xwWG__capacityavailable{color:#166534;background:#dcfce7}.ConnectorContextMenu-module__71xwWG__capacityfull{color:#92400e;background:#fef3c7}.ConnectorContextMenu-module__71xwWG__capacityover{color:#991b1b;background:#fee2e2}.ConnectorContextMenu-module__71xwWG__capacityunlimited{color:#0369a1;background:#e0f2fe}.ConnectorContextMenu-module__71xwWG__menuItems{padding:4px 0}.ConnectorContextMenu-module__71xwWG__menuItem{text-align:left;color:#333;cursor:pointer;background:0 0;border:none;width:100%;padding:10px 14px;font-size:14px;transition:background .15s;display:block}.ConnectorContextMenu-module__71xwWG__menuItem:hover:not(:disabled){background:#f5f5f5}.ConnectorContextMenu-module__71xwWG__menuItem:disabled{opacity:.5;cursor:not-allowed}.ConnectorContextMenu-module__71xwWG__deleteItem{color:#dc3545}.ConnectorContextMenu-module__71xwWG__deleteItem:hover:not(:disabled){background:#fef2f2}.ConnectorContextMenu-module__71xwWG__branchItem{color:#0d6efd}.ConnectorContextMenu-module__71xwWG__branchItem:hover:not(:disabled){background:#e7f1ff}.ConnectorContextMenu-module__71xwWG__branchItem:disabled{color:#999}.ConnectorContextMenu-module__71xwWG__capacityWarning{color:#dc3545;font-size:11px}.ConnectorContextMenu-module__71xwWG__error{background:#fef2f2;border-bottom:1px solid #fecaca;padding:8px 14px}.ConnectorContextMenu-module__71xwWG__errorText{color:#dc2626;font-size:12px;line-height:1.4}.ConnectorContextMenu-module__71xwWG__errorHint{color:#92400e;margin-top:4px;font-size:11px}
.CableEditorModal-module__2j5L8a__backdrop{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.CableEditorModal-module__2j5L8a__modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:520px;max-height:90vh;margin:16px;display:flex;overflow:hidden auto;box-shadow:0 10px 40px #0003}.CableEditorModal-module__2j5L8a__header{border-bottom:1px solid #eee;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.CableEditorModal-module__2j5L8a__headerRight{align-items:center;gap:12px;display:flex}.CableEditorModal-module__2j5L8a__title{color:#333;margin:0;font-size:18px;font-weight:600}.CableEditorModal-module__2j5L8a__saveStatus{border-radius:4px;padding:4px 8px;font-size:13px;font-weight:500}.CableEditorModal-module__2j5L8a__saveStatus.CableEditorModal-module__2j5L8a__saving{color:#666;background:#f5f5f5}.CableEditorModal-module__2j5L8a__saveStatus.CableEditorModal-module__2j5L8a__saved{color:#28a745;background:#e8f5e9}.CableEditorModal-module__2j5L8a__saveStatus.CableEditorModal-module__2j5L8a__error{color:#c00;background:#fee}.CableEditorModal-module__2j5L8a__closeButton{cursor:pointer;color:#666;background:0 0;border:none;border-radius:4px;padding:8px;font-size:18px;line-height:1;transition:background .2s,color .2s}.CableEditorModal-module__2j5L8a__closeButton:hover:not(:disabled){color:#333;background:#f0f0f0}.CableEditorModal-module__2j5L8a__closeButton:disabled{opacity:.5;cursor:not-allowed}.CableEditorModal-module__2j5L8a__menuContainer{position:relative}.CableEditorModal-module__2j5L8a__menuButton{cursor:pointer;color:#666;background:0 0;border:none;border-radius:4px;padding:8px 10px;font-size:18px;font-weight:700;line-height:1;transition:background .2s,color .2s}.CableEditorModal-module__2j5L8a__menuButton:hover:not(:disabled){color:#333;background:#f0f0f0}.CableEditorModal-module__2j5L8a__menuButton:disabled{opacity:.5;cursor:not-allowed}.CableEditorModal-module__2j5L8a__menuDropdown{z-index:10;background:#fff;border:1px solid #ddd;border-radius:6px;min-width:160px;margin-top:4px;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.CableEditorModal-module__2j5L8a__menuItem{text-align:left;color:#333;cursor:pointer;background:0 0;border:none;width:100%;padding:10px 14px;font-size:14px;transition:background .2s;display:block}.CableEditorModal-module__2j5L8a__menuItem:hover:not(:disabled){background:#f5f5f5}.CableEditorModal-module__2j5L8a__menuItem:disabled{opacity:.5;cursor:not-allowed}.CableEditorModal-module__2j5L8a__form{flex-direction:column;flex:1;gap:16px;min-width:0;padding:20px;display:flex;overflow:hidden auto}.CableEditorModal-module__2j5L8a__form *,.CableEditorModal-module__2j5L8a__form :before,.CableEditorModal-module__2j5L8a__form :after{box-sizing:border-box}.CableEditorModal-module__2j5L8a__field{flex-direction:column;gap:6px;display:flex}.CableEditorModal-module__2j5L8a__fieldRow{gap:16px;display:flex}.CableEditorModal-module__2j5L8a__fieldRow .CableEditorModal-module__2j5L8a__field{flex:1}.CableEditorModal-module__2j5L8a__label{color:#333;font-size:14px;font-weight:500}.CableEditorModal-module__2j5L8a__hint{color:#666;font-size:12px;font-weight:400}.CableEditorModal-module__2j5L8a__input,.CableEditorModal-module__2j5L8a__select,.CableEditorModal-module__2j5L8a__textarea{color:#333;background:#fff;border:1px solid #ddd;border-radius:6px;padding:10px 12px;font-size:14px;transition:border-color .2s,box-shadow .2s}.CableEditorModal-module__2j5L8a__input:focus,.CableEditorModal-module__2j5L8a__select:focus,.CableEditorModal-module__2j5L8a__textarea:focus{border-color:#4a7cff;outline:none;box-shadow:0 0 0 3px #4a7cff1a}.CableEditorModal-module__2j5L8a__input:disabled,.CableEditorModal-module__2j5L8a__select:disabled{cursor:not-allowed;background:#f5f5f5}.CableEditorModal-module__2j5L8a__textarea{resize:vertical;min-height:80px}.CableEditorModal-module__2j5L8a__select{cursor:pointer}.CableEditorModal-module__2j5L8a__codeInputGroup{align-items:center;gap:10px;display:flex}.CableEditorModal-module__2j5L8a__codeInputGroup .CableEditorModal-module__2j5L8a__input,.CableEditorModal-module__2j5L8a__codeInputGroup .CableEditorModal-module__2j5L8a__select{flex:1;min-width:0}.CableEditorModal-module__2j5L8a__disciplineBadge{color:#fff;text-transform:uppercase;white-space:nowrap;border-radius:4px;padding:4px 10px;font-size:12px;font-weight:600}.CableEditorModal-module__2j5L8a__connectorPath{background:#fafafa;border:1px solid #ddd;border-radius:6px;min-height:60px;max-height:200px;overflow-y:auto}.CableEditorModal-module__2j5L8a__emptyPath{text-align:center;color:#999;padding:20px;font-size:13px}.CableEditorModal-module__2j5L8a__pathItem{border-bottom:1px solid #eee;align-items:center;gap:10px;padding:10px 12px;display:flex}.CableEditorModal-module__2j5L8a__pathItem:last-child{border-bottom:none}.CableEditorModal-module__2j5L8a__pathIndex{color:#666;background:#e0e0e0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:600;display:flex}.CableEditorModal-module__2j5L8a__pathIcon{flex-shrink:0;font-size:18px}.CableEditorModal-module__2j5L8a__pathLabel{color:#333;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;overflow:hidden}.CableEditorModal-module__2j5L8a__pathActions{flex-shrink:0;gap:4px;display:flex}.CableEditorModal-module__2j5L8a__pathActionBtn,.CableEditorModal-module__2j5L8a__pathRemoveBtn{cursor:pointer;color:#666;background:0 0;border:1px solid #ddd;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;transition:background .2s,border-color .2s;display:flex}.CableEditorModal-module__2j5L8a__pathActionBtn:hover:not(:disabled){background:#f0f0f0;border-color:#ccc}.CableEditorModal-module__2j5L8a__pathActionBtn:disabled{opacity:.3;cursor:not-allowed}.CableEditorModal-module__2j5L8a__pathRemoveBtn{color:#c00;border-color:#fcc}.CableEditorModal-module__2j5L8a__pathRemoveBtn:hover{background:#fee;border-color:#c00}.CableEditorModal-module__2j5L8a__addConnectorRow{gap:8px;margin-top:8px;display:flex}.CableEditorModal-module__2j5L8a__addConnectorRow .CableEditorModal-module__2j5L8a__select{flex:1}.CableEditorModal-module__2j5L8a__addConnectorBtn{color:#fff;cursor:pointer;background:#4a7cff;border:1px solid #4a7cff;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .2s}.CableEditorModal-module__2j5L8a__addConnectorBtn:hover:not(:disabled){background:#3a6ce0}.CableEditorModal-module__2j5L8a__addConnectorBtn:disabled{opacity:.5;cursor:not-allowed}.CableEditorModal-module__2j5L8a__overridesSection{background:#fafafa;border:1px solid #eee;border-radius:8px;padding:16px}.CableEditorModal-module__2j5L8a__sectionTitle{color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:13px;font-weight:600}.CableEditorModal-module__2j5L8a__error{color:#c00;background:#fee;border:1px solid #fcc;border-radius:6px;padding:10px 12px;font-size:13px}.CableEditorModal-module__2j5L8a__errorContainer{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:12px 14px}.CableEditorModal-module__2j5L8a__errorHeader{color:#b91c1c;margin-bottom:6px;font-size:14px;font-weight:600}.CableEditorModal-module__2j5L8a__errorBody{color:#dc2626;font-size:13px;line-height:1.5}.CableEditorModal-module__2j5L8a__footer{border-top:1px solid #eee;flex-shrink:0;justify-content:flex-end;gap:12px;padding:16px 20px;display:flex}.CableEditorModal-module__2j5L8a__deletingStatus{color:#666;font-size:14px}.CableEditorModal-module__2j5L8a__footerRight{gap:12px;display:flex}.CableEditorModal-module__2j5L8a__deleteButton{cursor:pointer;color:#c62828;background:#fff;border:1px solid #e57373;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:background .2s,border-color .2s}.CableEditorModal-module__2j5L8a__deleteButton:hover:not(:disabled){background:#ffebee;border-color:#c62828}.CableEditorModal-module__2j5L8a__deleteButton:disabled{opacity:.5;cursor:not-allowed}.CableEditorModal-module__2j5L8a__cancelButton,.CableEditorModal-module__2j5L8a__saveButton{cursor:pointer;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:background .2s,border-color .2s}.CableEditorModal-module__2j5L8a__cancelButton{color:#666;background:#fff;border:1px solid #ddd}.CableEditorModal-module__2j5L8a__cancelButton:hover:not(:disabled){background:#f5f5f5;border-color:#ccc}.CableEditorModal-module__2j5L8a__saveButton{color:#fff;background:#4a7cff;border:1px solid #4a7cff}.CableEditorModal-module__2j5L8a__saveButton:hover:not(:disabled){background:#3a6ce0;border-color:#3a6ce0}.CableEditorModal-module__2j5L8a__saveButton:disabled,.CableEditorModal-module__2j5L8a__cancelButton:disabled,.CableEditorModal-module__2j5L8a__deleteButton:disabled{opacity:.5;cursor:not-allowed}@media (max-width:480px){.CableEditorModal-module__2j5L8a__modal{max-height:95vh;margin:8px}.CableEditorModal-module__2j5L8a__header{padding:14px 16px}.CableEditorModal-module__2j5L8a__title{font-size:16px}.CableEditorModal-module__2j5L8a__form{padding:16px}.CableEditorModal-module__2j5L8a__fieldRow{flex-direction:column;gap:16px}.CableEditorModal-module__2j5L8a__connectorPath{max-height:150px}.CableEditorModal-module__2j5L8a__addConnectorRow{flex-direction:column}.CableEditorModal-module__2j5L8a__footer{padding:14px 16px}.CableEditorModal-module__2j5L8a__cancelButton,.CableEditorModal-module__2j5L8a__saveButton{flex:1;padding:12px 16px}}
