.object-visual-editor-drawer .ant-drawer-content{display:flex;flex-direction:column;background:var(--app-bg)}.object-visual-editor-drawer .ant-drawer-header{border-bottom:1px solid var(--app-border);padding:12px 18px;align-items:flex-start;background:var(--app-surface);backdrop-filter:blur(14px)}.object-visual-editor-drawer .ant-drawer-header-title{min-width:0;align-items:flex-start}.object-visual-editor-drawer .ant-drawer-title{width:100%}.object-visual-editor-drawer .ant-drawer-body{flex:1;min-height:0}.object-visual-editor{font-family:var(--font-family-base);--ove-text:var(--app-text-primary);--ove-muted:var(--app-text-secondary);--ove-accent:var(--color-blue-main);--ove-accent-strong:var(--color-blue-main-2);--ove-accent-soft:color-mix(in srgb,var(--color-blue-main) 14%,transparent);--ove-border:var(--app-border);--ove-soft-border:var(--color-gray-2);--ove-shell-bg:var(--app-surface);--ove-toolbar-bg:var(--app-surface);--ove-chip-bg:var(--app-surface-muted);--ove-card-bg:var(--app-surface);--ove-assignment-bg:var(--app-surface-muted);--ove-assignment-panel-bg:var(--app-surface);--ove-assignment-panel-border:var(--app-border);--ove-assignment-chip-bg:color-mix(in srgb,var(--app-surface-muted) 86%,var(--app-surface));--ove-assignment-chip-border:color-mix(in srgb,var(--app-border) 82%,transparent);--ove-assignment-badge-bg:color-mix(in srgb,var(--color-blue-main) 12%,var(--app-surface));--ove-assignment-badge-border:color-mix(in srgb,var(--color-blue-main) 28%,transparent);--ove-input-bg:color-mix(in srgb,var(--app-bg) 34%,var(--app-surface));--ove-input-border:color-mix(in srgb,var(--app-border) 88%,transparent);--ove-empty-bg:var(--app-surface-muted);--ove-empty-border:var(--color-gray-2);--ove-shadow:0 16px 34px rgba(15,23,42,0.08);--ove-panel-shadow:0 10px 22px rgba(15,23,42,0.04);--ove-fullscreen-bg:linear-gradient(180deg,color-mix(in srgb,var(--color-gray-bg) 78%,transparent),color-mix(in srgb,var(--color-gray-1) 86%,transparent));--ove-fullscreen-border:color-mix(in srgb,var(--color-gray-2) 78%,var(--color-white));--ove-fullscreen-stage-border:var(--app-border);--ove-fullscreen-shadow:0 28px 70px rgba(15,23,42,0.18);display:flex;flex-direction:column;gap:12px;min-height:100%;height:100%;padding:0;border-radius:0;border:none;background:transparent;overflow:visible}.object-visual-editor__drawer-header{display:block;width:100%;min-width:0}.object-visual-editor__drawer-heading{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 420px}.object-visual-editor__drawer-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.object-visual-editor__drawer-start{display:flex;align-items:center;gap:18px;min-width:0;flex:1;flex-wrap:wrap}.object-visual-editor__drawer-title-row{display:flex;align-items:center;gap:14px;min-width:0;flex-wrap:wrap}.object-visual-editor__drawer-title-text{font-size:18px;font-weight:var(--font-weight-bold);line-height:1.2;color:var(--ove-text);white-space:normal;text-wrap:balance}.object-visual-editor__object-pill{display:inline-flex;align-items:center;min-width:0;max-width:min(36vw,320px);padding:6px 14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-blue-main) 22%,var(--app-border));background:var(--color-blue-light);color:var(--color-blue-main-2);font-size:14px;font-weight:var(--font-weight-bold);line-height:1.15;letter-spacing:.01em;box-shadow:inset 0 1px 0 rgba(255,255,255,.72);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.object-visual-editor__drawer-subtitle{font-size:12px;line-height:1.4;padding-top:2px;color:var(--ove-muted);max-width:420px}.object-visual-editor-drawer.is-canvas-expanded .ant-drawer-header{height:0;min-height:0;padding:0;border-bottom:none;opacity:0;pointer-events:none;overflow:hidden}.object-visual-editor-drawer.is-canvas-expanded .ant-drawer-body{padding-top:0!important}.object-visual-editor__back-button{flex-direction:row!important;justify-content:center;min-height:34px;padding-inline:10px!important;border-radius:12px!important;box-shadow:inset 0 0 0 1px var(--ove-border);font-size:12px!important}.object-visual-editor__back-button,.object-visual-editor__back-button span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.object-visual-editor__header-guide{flex:0 0 auto;min-height:40px;padding-inline:14px!important;border-radius:12px!important;font-size:12px!important}.object-visual-editor__drawer-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0;flex:0 1 auto;flex-wrap:nowrap}.object-visual-editor__saved-select-panel{display:flex;align-items:center;width:260px;min-width:260px;height:36px;box-sizing:border-box}.object-visual-editor__saved-select-row{display:grid;grid-template-columns:minmax(0,216px) 36px;gap:8px;min-width:0;align-items:center;flex:0 0 260px;height:36px;box-sizing:border-box}.object-visual-editor__saved-select{width:100%;min-width:0;height:36px!important;line-height:36px}.object-visual-editor__saved-select.ant-select .ant-select-selector{height:36px!important;min-height:36px;max-height:36px;border-radius:8px!important;border-color:color-mix(in srgb,var(--ove-input-border) 92%,transparent)!important;background:color-mix(in srgb,var(--ove-input-bg) 82%,var(--ove-shell-bg))!important;box-shadow:none!important;align-items:center}.object-visual-editor__saved-select.ant-select-single .ant-select-selector .ant-select-selection-search-input{height:34px!important}.object-visual-editor__saved-select.ant-select-single .ant-select-selector .ant-select-selection-item,.object-visual-editor__saved-select.ant-select-single .ant-select-selector .ant-select-selection-placeholder{display:flex;align-items:center;min-width:0;font-size:12px;font-weight:var(--font-weight-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.object-visual-editor__saved-select.ant-select-single .ant-select-selector .ant-select-selection-item{color:var(--ove-text)}.object-visual-editor__saved-select.ant-select .ant-select-arrow,.object-visual-editor__saved-select.ant-select-single .ant-select-selector .ant-select-selection-placeholder{color:var(--ove-muted)}.object-visual-editor__saved-select.ant-select-disabled .ant-select-selector{opacity:.7}.object-visual-editor__saved-select-remove{width:36px;height:36px;min-width:36px;max-width:36px;min-height:36px;max-height:36px;border:none;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:var(--color-red-main);background:color-mix(in srgb,var(--color-red-main) 12%,var(--app-surface));cursor:pointer;transition:background .18s ease,transform .18s ease,opacity .18s ease}.object-visual-editor__saved-select-remove:hover:not(:disabled){transform:translateY(-1px);background:color-mix(in srgb,var(--color-red-main) 18%,var(--app-surface))}.object-visual-editor__saved-select-remove:disabled{cursor:not-allowed;opacity:.45}.object-visual-editor__saved-select-dropdown{min-width:216px!important}.object-visual-editor__saved-select-dropdown .ant-select-item-option{min-height:32px;padding:6px 10px;font-size:12px;line-height:20px}.object-visual-editor__saved-select-dropdown .ant-select-item-option-content{min-width:0}.object-visual-editor__drawer-toolbar{display:grid;gap:8px;min-width:0;padding:0;border:none;background:transparent;box-shadow:none}.object-visual-editor__toolbar-group{display:grid;gap:8px;min-width:0}.object-visual-editor__toolbar-group--stacked{grid-template-columns:1fr}.object-visual-editor__toolbar-group--compact-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.object-visual-editor__loading{min-height:360px;display:flex;align-items:center;justify-content:center}.object-visual-editor__topbar{display:flex;flex-direction:column;gap:10px}.object-visual-editor__topbar-main{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.object-visual-editor__topbar-meta{display:flex;gap:10px;flex-direction:column}.object-visual-editor__upload{display:flex;align-items:center}.object-visual-editor__upload .ant-upload-select,.object-visual-editor__upload .ant-upload-wrapper{width:100%}.object-visual-editor__upload-button{white-space:nowrap}.object-visual-editor__tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.object-visual-editor__tool-field{min-width:0;padding:11px 12px 10px;border-radius:14px;background:color-mix(in srgb,var(--ove-chip-bg) 72%,var(--ove-shell-bg));border:1px solid color-mix(in srgb,var(--ove-border) 84%,transparent);display:flex;flex-direction:column;gap:7px;min-height:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.28)}.object-visual-editor__tool-field label{font-size:11px;font-weight:var(--font-weight-medium);line-height:1.3;letter-spacing:.01em;color:var(--ove-text)}.object-visual-editor__tool-field--block{min-width:260px}.object-visual-editor__tool-field--slider{min-width:180px}.object-visual-editor__tool-field:has(.object-visual-editor__color){gap:8px;padding:10px}.object-visual-editor__tool-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.object-visual-editor__tool-head span{font-size:11px;font-weight:var(--font-weight-medium);color:var(--ove-muted)}.object-visual-editor__toolbar-button{min-height:36px;padding-inline:10px!important;font-size:12px!important;font-weight:var(--font-weight-medium)!important;border-radius:12px!important;white-space:nowrap}.object-visual-editor__ruler-toggle.is-active{color:var(--color-blue-main)!important;border-color:color-mix(in srgb,var(--color-blue-main) 34%,var(--ove-border))!important;background:color-mix(in srgb,var(--color-blue-main) 12%,var(--ove-chip-bg))!important}.object-visual-editor__attach-button{width:100%}.object-visual-editor__color{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px;padding:8px 10px;border-radius:12px;background:color-mix(in srgb,var(--ove-chip-bg) 72%,var(--ove-shell-bg));border:1px solid color-mix(in srgb,var(--ove-border) 84%,transparent);color:var(--ove-text);width:100%;min-height:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.28)}.object-visual-editor__color span{font-size:11px;font-weight:var(--font-weight-medium);line-height:1.3}.object-visual-editor__color input{width:22px;height:22px;border:none;background:transparent;padding:0;cursor:pointer}.object-visual-editor__slider{margin:0!important}.object-visual-editor__slider .ant-slider-rail{background:var(--color-gray-2)}.object-visual-editor__slider .ant-slider-track{background:var(--color-blue-main)}.object-visual-editor__slider:hover .ant-slider-track{background:var(--color-blue-main-2)}.object-visual-editor__slider .ant-slider-handle:after{box-shadow:0 0 0 2px #ffffff;border-color:var(--color-blue-main)}.object-visual-editor__slider .ant-slider-handle.ant-slider-handle-dragging:after,.object-visual-editor__slider .ant-slider-handle:focus:after,.object-visual-editor__slider .ant-slider-handle:hover:after{box-shadow:0 0 0 2px #ffffff,0 0 0 6px color-mix(in srgb,var(--color-blue-main) 18%,transparent)!important;border-color:var(--color-blue-main-2)!important}.object-visual-editor__hint{padding:8px 12px;border-radius:14px;color:var(--ove-muted);background:var(--app-surface-muted);font-size:12px}.object-visual-editor__compact-alert{margin:0!important}.object-visual-editor__compact-alert .ant-alert{padding-block:8px}.object-visual-editor__workspace{display:grid;grid-template-columns:minmax(280px,320px) minmax(0,1fr);grid-template-areas:"sidebar canvas";gap:18px;flex:1;min-height:0}.object-visual-editor__canvas-panel{grid-area:canvas;min-width:0;min-height:min(72vh,760px);display:flex}.object-visual-editor__sidebar{grid-area:sidebar;min-width:0;display:flex;min-height:0;overflow:hidden;align-self:stretch}.object-visual-editor__sidebar-shell{min-width:0;min-height:0;height:100%;width:100%;display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden;border-radius:24px;border:1px solid var(--ove-border);background:linear-gradient(180deg,color-mix(in srgb,var(--ove-card-bg) 94%,var(--ove-shell-bg)),color-mix(in srgb,var(--ove-shell-bg) 90%,var(--ove-chip-bg)));box-shadow:var(--ove-panel-shadow),inset 0 1px 0 rgba(255,255,255,.42)}.object-visual-editor__sidebar-scroll{display:flex;flex:1 1 auto;flex-direction:column;gap:12px;min-width:0;min-height:0;padding:12px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--ove-border) transparent}.object-visual-editor__sidebar-scroll>.object-visual-editor__sidebar-section{flex:0 0 auto}.object-visual-editor__sidebar-footer{flex:0 0 auto;min-width:0;padding:12px;border-top:1px solid var(--ove-border);background:var(--ove-card-bg)}.object-visual-editor__sidebar-footer .object-visual-editor__sidebar-actions,.object-visual-editor__sidebar-footer .object-visual-editor__status-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.object-visual-editor__sidebar-footer .ant-upload,.object-visual-editor__sidebar-footer .ant-upload-wrapper{display:block;min-width:0;min-height:0;width:100%;padding:0!important}.object-visual-editor__sidebar-footer button{min-width:0;min-height:34px;border-radius:8px!important}.object-visual-editor__sidebar-footer button>span{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}.object-visual-editor__sidebar-section{display:grid;gap:10px;min-width:0}.object-visual-editor__sidebar-section--controls{order:1}.object-visual-editor__sidebar-section--assignment{order:2}.object-visual-editor__sidebar-section--meta{order:3}.object-visual-editor__sidebar-section+.object-visual-editor__sidebar-section{padding-top:14px;border-top:1px solid color-mix(in srgb,var(--ove-border) 76%,transparent)}.object-visual-editor__sidebar-section--saved{flex:1 1 auto;min-height:0}.object-visual-editor__saved-strip{display:flex;flex-direction:column;gap:12px;flex:1 1 auto;min-height:100%}.object-visual-editor__saved-strip-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.object-visual-editor__saved-strip-label{display:flex;flex-direction:column;gap:4px;min-width:0}.object-visual-editor__saved-strip-label strong{color:var(--ove-text);font-size:15px;font-weight:var(--font-weight-semibold);line-height:1.25;letter-spacing:-.01em}.object-visual-editor__saved-strip-label span{color:var(--ove-muted);font-size:12px;font-weight:var(--font-weight-regular)}.object-visual-editor__saved-strip-list{display:flex;flex-direction:column;gap:10px;width:100%;min-height:0;flex:1 1 auto;overflow-y:auto;padding:2px 2px 2px 0}.object-visual-editor__saved-strip-empty{color:var(--ove-muted);font-size:12px;line-height:1.55;display:flex;align-items:center;flex:1 1 auto;min-height:clamp(96px,14vh,132px);padding:14px 16px;border-radius:16px;border:1px dashed var(--ove-border);background:var(--ove-empty-bg);white-space:normal}.object-visual-editor__status-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.object-visual-editor__status-actions button{width:100%;min-height:36px;padding-inline:7px!important;border-radius:12px!important;font-size:11.5px!important;font-weight:var(--font-weight-medium)!important;white-space:nowrap}.object-visual-editor__image-editor{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,360px);gap:18px;min-height:0}.object-visual-editor__image-editor-stage{display:flex;flex-direction:column;gap:12px;min-width:0}.object-visual-editor__image-editor-cropper{position:relative;min-height:460px;border-radius:22px;overflow:hidden;border:1px solid var(--ove-border);background:radial-gradient(circle at top left,color-mix(in srgb,var(--color-blue-main) 14%,transparent),transparent 34%),linear-gradient(180deg,color-mix(in srgb,var(--app-surface) 96%,transparent),color-mix(in srgb,var(--app-bg) 92%,transparent))}.object-visual-editor__cropper{display:block;width:100%;height:100%}.object-visual-editor__image-editor-cropper .cropper-bg{background:linear-gradient(135deg,color-mix(in srgb,var(--app-bg) 92%,transparent),color-mix(in srgb,var(--app-surface) 88%,transparent)),repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 16px,transparent 16px,transparent 32px)}.object-visual-editor__image-editor-cropper .cropper-modal{background:rgba(15,23,42,.48)}.object-visual-editor__image-editor-cropper .cropper-view-box{outline:2px solid color-mix(in srgb,var(--color-blue-main) 84%,white);outline-offset:-2px;border-radius:18px;box-shadow:0 0 0 1px rgba(255,255,255,.28),0 18px 28px rgba(15,23,42,.2)}.object-visual-editor__image-editor-cropper .cropper-line{background-color:color-mix(in srgb,var(--color-blue-main) 74%,white);opacity:.85}.object-visual-editor__image-editor-cropper .cropper-dashed{border-color:rgba(255,255,255,.35)}.object-visual-editor__image-editor-cropper .cropper-point{width:12px;height:12px;border-radius:999px;background:color-mix(in srgb,var(--color-blue-main) 90%,white);border:2px solid rgba(255,255,255,.92);opacity:1;box-shadow:0 6px 16px rgba(15,23,42,.24)}.object-visual-editor__image-editor-cropper .cropper-point.point-ne,.object-visual-editor__image-editor-cropper .cropper-point.point-nw,.object-visual-editor__image-editor-cropper .cropper-point.point-se,.object-visual-editor__image-editor-cropper .cropper-point.point-sw{width:14px;height:14px}.object-visual-editor__image-editor-meta{display:flex;flex-wrap:wrap;gap:8px}.object-visual-editor__image-editor-meta span{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--ove-border) 86%,transparent);background:color-mix(in srgb,var(--ove-chip-bg) 74%,var(--ove-shell-bg));color:var(--ove-text);font-size:12px;line-height:1.3}.object-visual-editor__image-editor-controls{display:grid;align-content:start;gap:12px;min-width:0}.object-visual-editor__image-editor-alert{margin:0!important}.object-visual-editor__image-editor-footer{display:flex;justify-content:flex-end;gap:10px;width:100%}.object-visual-editor__assignment-item{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:12px 13px;border-radius:16px;background:color-mix(in srgb,var(--ove-assignment-bg) 82%,var(--ove-shell-bg));cursor:pointer;transition:border-color .2s ease,transform .2s ease,background .2s ease;border:1px solid color-mix(in srgb,var(--ove-border) 74%,transparent);width:100%;min-width:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.2)}.object-visual-editor__assignment-item.is-selected{border-color:color-mix(in srgb,var(--color-blue-main) 34%,transparent);background:color-mix(in srgb,var(--color-blue-main) 11%,var(--ove-shell-bg));box-shadow:0 10px 18px rgba(15,23,42,.06),inset 0 1px 0 rgba(255,255,255,.38)}.object-visual-editor__assignment-meta{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1 auto}.object-visual-editor__assignment-meta span,.object-visual-editor__assignment-meta strong{display:block}.object-visual-editor__assignment-text{min-width:0}.object-visual-editor__assignment-meta strong{color:var(--ove-text);font-size:13px;font-weight:var(--font-weight-semibold);line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.object-visual-editor__assignment-meta span{color:var(--ove-muted);font-size:12px;font-weight:var(--font-weight-regular);line-height:1.5}.object-visual-editor__assignment-color{width:14px;height:14px;border-radius:999px;flex-shrink:0;box-shadow:0 0 0 3px rgba(255,255,255,.92)}.object-visual-editor__assignment-remove{width:36px;height:36px;border:none;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-red-main) 14%,var(--app-surface));color:var(--color-red-main);cursor:pointer;flex-shrink:0;transition:background .2s ease,transform .2s ease}.object-visual-editor__assignment-remove:hover{transform:translateY(-1px);background:color-mix(in srgb,var(--color-red-main) 18%,var(--app-surface))}.object-visual-editor__canvas-shell{position:relative;min-height:0;flex:1;display:flex;align-items:center;justify-content:center;padding:8px;border-radius:24px;border:1px solid var(--ove-border);background:linear-gradient(180deg,var(--app-surface),var(--app-surface-muted));box-shadow:var(--ove-panel-shadow);overflow:auto}.object-visual-editor__canvas-shell.is-expanded{position:fixed;inset:0;z-index:1600;padding:6px;border-radius:0;border:none;background:color-mix(in srgb,var(--app-bg) 34%,transparent);box-shadow:none;backdrop-filter:blur(14px) saturate(.86);-webkit-backdrop-filter:blur(14px) saturate(.86);isolation:isolate}.object-visual-editor__canvas-shell.is-expanded:before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(circle at top,color-mix(in srgb,var(--app-surface) 10%,transparent),transparent 58%),color-mix(in srgb,var(--app-bg) 42%,transparent)}.object-visual-editor__canvas-shell.is-expanded>*{position:relative;z-index:1}.object-visual-editor__fullscreen-button{position:absolute;top:12px;right:12px;z-index:6;width:36px;height:36px;border:none;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;padding:0;background:color-mix(in srgb,var(--app-surface) 88%,transparent);color:var(--ove-text);box-shadow:0 10px 22px rgba(15,23,42,.14);cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.object-visual-editor__fullscreen-button:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(15,23,42,.18)}.object-visual-editor__canvas-shell.is-expanded .object-visual-editor__fullscreen-button{top:18px;right:18px;box-shadow:0 12px 28px rgba(15,23,42,.14),inset 0 1px 0 rgba(255,255,255,.32)}.object-visual-editor__canvas-stage{position:relative;border-radius:20px;overflow:visible;box-shadow:var(--ove-shadow);background:var(--app-surface);flex-shrink:0}.object-visual-editor__canvas-shell.is-expanded .object-visual-editor__canvas-stage{border-radius:18px;border:none;box-shadow:0 18px 40px rgba(15,23,42,.14);background:transparent}.object-visual-editor__fullscreen-close{position:absolute;top:12px;right:12px;z-index:7;width:36px;height:36px;border:none;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--app-surface) 88%,transparent);color:var(--ove-text);box-shadow:0 10px 22px rgba(15,23,42,.18);cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.object-visual-editor__canvas,.object-visual-editor__image{position:absolute;inset:0;width:100%;height:100%}.object-visual-editor__image{object-fit:contain;user-select:none}.object-visual-editor__canvas{cursor:crosshair;touch-action:none}.object-visual-editor__polygon-popover{position:absolute;z-index:4;display:grid;gap:10px;min-width:228px;max-width:276px;padding:14px;border-radius:20px;background:var(--app-surface);border:1px solid var(--app-border);box-shadow:0 20px 38px rgba(15,23,42,.14),0 6px 16px rgba(15,23,42,.08);transform:translate(-50%,calc(-100% - 12px));backdrop-filter:blur(14px) saturate(1.06);-webkit-backdrop-filter:blur(14px) saturate(1.06)}.object-visual-editor__polygon-popover-title{margin:0;font-size:12px;font-weight:var(--font-weight-bold);line-height:1.25;letter-spacing:.01em;color:var(--ove-text)}.object-visual-editor__polygon-select{width:100%}.object-visual-editor__polygon-select.ant-select .ant-select-selector{min-height:38px!important;padding:0 11px!important;border-radius:12px!important;border-color:var(--ove-input-border)!important;background:var(--ove-input-bg)!important;box-shadow:none!important;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.object-visual-editor__polygon-select.ant-select .ant-select-selection-wrap{align-self:stretch}.object-visual-editor__polygon-select.ant-select-single .ant-select-selector .ant-select-selection-item,.object-visual-editor__polygon-select.ant-select-single .ant-select-selector .ant-select-selection-placeholder,.object-visual-editor__polygon-select.ant-select-single .ant-select-selector .ant-select-selection-search{display:flex;align-items:center}.object-visual-editor__polygon-select.ant-select-single .ant-select-selector .ant-select-selection-item,.object-visual-editor__polygon-select.ant-select-single .ant-select-selector .ant-select-selection-placeholder{font-size:13px;line-height:1.2}.object-visual-editor__polygon-select.ant-select-single .ant-select-selector .ant-select-selection-item{font-weight:600;color:var(--ove-text)}.object-visual-editor__polygon-select.ant-select-single .ant-select-selector .ant-select-selection-placeholder{color:color-mix(in srgb,var(--ove-muted) 88%,#64748b)}.object-visual-editor__polygon-select.ant-select .ant-select-arrow{color:var(--ove-muted)}.object-visual-editor__polygon-select.ant-select-focused .ant-select-selector,.object-visual-editor__polygon-select.ant-select-open .ant-select-selector,.object-visual-editor__polygon-select.ant-select:hover .ant-select-selector{border-color:var(--color-blue-main)!important}.object-visual-editor__polygon-select.ant-select-focused .ant-select-selector,.object-visual-editor__polygon-select.ant-select-open .ant-select-selector{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-blue-main) 14%,transparent)!important}.object-visual-editor__polygon-select-dropdown{padding:6px;border-radius:16px!important;border:1px solid var(--app-border)!important;background:var(--app-surface)!important;box-shadow:0 18px 36px rgba(15,23,42,.14),0 8px 18px rgba(15,23,42,.08)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.object-visual-editor__polygon-select-dropdown .ant-select-item{min-height:38px;padding:9px 12px!important;border-radius:12px;color:var(--ove-text);font-size:13px;font-weight:500}.object-visual-editor__polygon-select-dropdown .ant-select-item-option-active:not(.ant-select-item-option-disabled){background:color-mix(in srgb,var(--color-blue-main) 8%,var(--app-surface-muted))!important}.object-visual-editor__polygon-select-dropdown .ant-select-item-option-selected:not(.ant-select-item-option-disabled){background:color-mix(in srgb,var(--color-blue-main) 12%,var(--app-surface-muted))!important;color:var(--color-blue-main-2)!important}.object-visual-editor__empty{min-height:320px;width:100%;border:2px dashed var(--ove-empty-border);border-radius:24px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;text-align:center;color:var(--ove-muted);background:var(--ove-empty-bg)}.object-visual-editor__empty-upload,.object-visual-editor__empty-upload .ant-upload{width:100%}.object-visual-editor__empty p{margin:0;font-size:18px;font-weight:600;color:var(--ove-text)}.object-visual-editor__empty span{max-width:520px}.object-visual-editor__empty-icon{font-size:28px}.object-visual-editor__status-card{min-width:0;display:flex;flex-direction:column;gap:6px;padding:0;border:none;background:transparent;box-shadow:none}.object-visual-editor__status-card-top{display:none;align-items:flex-start;justify-content:space-between;gap:12px}.object-visual-editor__status-file{font-size:14px;font-weight:var(--font-weight-semibold);line-height:1.35;letter-spacing:-.01em;color:var(--ove-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.object-visual-editor__status-text{display:none;color:var(--ove-muted);font-size:12px;font-weight:var(--font-weight-regular);line-height:1.55}.object-visual-editor__status-legacy-source{display:none;flex-direction:column;align-items:flex-start;gap:10px;padding-top:8px}.object-visual-editor__status-legacy-source span{color:var(--ove-muted);font-size:12px;line-height:1.45}.object-visual-editor__sidebar-section--assignment{gap:0}.object-visual-editor__assignment-panel{display:grid;gap:8px;min-width:0;padding:10px;border-radius:12px;border:1px solid var(--ove-assignment-panel-border);background:var(--ove-assignment-panel-bg);box-shadow:0 1px 0 color-mix(in srgb,var(--app-surface) 70%,transparent) inset}.object-visual-editor__assignment-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.object-visual-editor__assignment-panel-heading{display:grid;gap:3px;min-width:0}.object-visual-editor__assignment-panel-kicker{display:none;font-size:10px;font-weight:var(--font-weight-medium);line-height:1.2;letter-spacing:.08em;text-transform:uppercase;color:var(--ove-muted)}.object-visual-editor__assignment-panel-heading strong{color:var(--ove-text);font-size:14px;font-weight:var(--font-weight-semibold);line-height:1.3}.object-visual-editor__assignment-shape-badge{display:inline-flex;align-items:center;gap:7px;min-height:24px;padding:4px 8px;border-radius:8px;background:var(--ove-assignment-badge-bg);border:1px solid var(--ove-assignment-badge-border);color:var(--ove-accent-strong);font-size:11px;font-weight:var(--font-weight-semibold);white-space:nowrap}.object-visual-editor__assignment-shape-color{width:10px;height:10px;border-radius:999px;box-shadow:0 0 0 2px var(--app-surface);flex-shrink:0}.object-visual-editor__assignment-panel-meta{display:flex;flex-wrap:wrap;gap:6px}.object-visual-editor__assignment-panel-meta-item{display:inline-flex;align-items:center;min-height:30px;padding:6px 9px;border-radius:11px;background:var(--ove-assignment-chip-bg);border:1px solid var(--ove-assignment-chip-border);color:var(--ove-muted);font-size:11px;line-height:1.4}.object-visual-editor__assignment-panel-meta-item strong{color:var(--ove-text);font-weight:var(--font-weight-semibold)}.object-visual-editor__assignment-field{display:block;min-width:0;margin-bottom:0}.object-visual-editor__assignment-select{width:100%}.object-visual-editor__assignment-select.ant-select{height:38px!important}.object-visual-editor__assignment-select.ant-select .ant-select-selector{height:100%!important;min-height:100%!important;border-radius:8px!important}.object-visual-editor__assignment-field+.object-visual-editor__attach-button{margin-top:0}.object-visual-editor__sidebar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.object-visual-editor__sidebar-actions>button{min-height:36px;padding-inline:8px!important;font-size:11.5px!important;font-weight:var(--font-weight-medium)!important;border-radius:12px!important;white-space:nowrap}.object-visual-editor__primary-button{background:var(--color-blue-main)!important;border-color:var(--color-blue-main)!important;color:var(--color-white)!important;box-shadow:none}.object-visual-editor__primary-button:hover:not(:disabled){background:var(--color-blue-main-2)!important;border-color:var(--color-blue-main-2)!important}.object-visual-editor__guide{display:grid;grid-template-columns:minmax(280px,360px) 1fr;gap:24px;align-items:start}.object-visual-editor__guide-demo{border-radius:20px;padding:18px;background:var(--app-surface);border:1px solid var(--app-border)}.object-visual-editor__guide-stage{position:relative;aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,var(--app-surface),var(--app-surface-muted)),repeating-linear-gradient(0deg,color-mix(in srgb,var(--app-border) 42%,transparent) 0,color-mix(in srgb,var(--app-border) 42%,transparent) 1px,transparent 1px,transparent 44px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--app-border) 42%,transparent) 0,color-mix(in srgb,var(--app-border) 42%,transparent) 1px,transparent 1px,transparent 44px)}.guide-fill,.guide-line,.guide-point{position:absolute;opacity:0;animation:guide-fade 4.8s infinite}.guide-point{width:26px;height:26px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;background:var(--color-blue-main);box-shadow:0 8px 18px rgba(15,23,42,.18);transform:translate(-50%,-50%)}.guide-point--a{left:24%;top:26%;animation-delay:0s}.guide-point--b{left:72%;top:28%;animation-delay:.7s}.guide-point--c{left:70%;top:70%;animation-delay:1.4s}.guide-point--d{left:26%;top:72%;animation-delay:2.1s}.guide-line{height:3px;border-radius:999px;background:var(--color-blue-main);transform-origin:left center}.guide-line--ab{left:24%;top:26%;width:48%;transform:rotate(2deg);animation-delay:.35s}.guide-line--bc{left:72%;top:28%;width:42%;transform:rotate(88deg);animation-delay:1.05s}.guide-line--cd{left:26%;top:72%;width:44%;transform:rotate(-2deg);animation-delay:1.75s}.guide-line--da{left:26%;top:72%;width:46%;transform:rotate(-88deg);animation-delay:2.45s}.guide-fill{left:24%;top:26%;width:48%;height:44%;background:color-mix(in srgb,var(--color-blue-main) 20%,transparent);clip-path:polygon(0 0,100% 2%,96% 100%,4% 98%);animation-delay:2.8s}.object-visual-editor__guide-text p{margin-top:0;margin-bottom:14px;color:var(--app-text-secondary)}.object-visual-editor__guide-text ol{margin:0;padding-left:18px;color:var(--app-text-primary)}.object-visual-editor__guide-text li{margin-bottom:10px}body.dark .object-visual-editor-drawer .ant-drawer-content{background:var(--app-bg)}body.dark .object-visual-editor-drawer .ant-drawer-header{border-bottom-color:var(--app-border);background:var(--color-dark-1)}body.dark .object-visual-editor{--ove-text:var(--app-text-primary);--ove-muted:var(--app-text-secondary);--ove-border:var(--app-border);--ove-soft-border:var(--color-dark-4);--ove-shell-bg:var(--app-surface);--ove-toolbar-bg:var(--color-dark-2);--ove-chip-bg:var(--color-dark-3);--ove-card-bg:var(--color-dark-22);--ove-assignment-bg:var(--color-dark-2);--ove-assignment-panel-bg:var(--app-surface);--ove-assignment-panel-border:var(--app-border);--ove-assignment-chip-bg:color-mix(in srgb,var(--app-surface-muted) 84%,var(--app-surface));--ove-assignment-chip-border:color-mix(in srgb,var(--app-border) 86%,transparent);--ove-assignment-badge-bg:color-mix(in srgb,var(--color-blue-main) 18%,var(--app-surface));--ove-assignment-badge-border:color-mix(in srgb,var(--color-blue-main) 32%,transparent);--ove-input-bg:color-mix(in srgb,var(--app-bg) 56%,var(--app-surface));--ove-input-border:color-mix(in srgb,var(--app-border) 90%,transparent);--ove-empty-bg:var(--color-dark-2);--ove-empty-border:var(--color-dark-4);--ove-shadow:0 22px 54px rgba(2,8,23,0.38);--ove-panel-shadow:0 12px 28px rgba(2,8,23,0.22);--ove-fullscreen-bg:linear-gradient(180deg,color-mix(in srgb,var(--color-dark-bg) 78%,transparent),color-mix(in srgb,var(--color-dark-1) 84%,transparent));--ove-fullscreen-border:var(--color-dark-4);--ove-fullscreen-stage-border:var(--color-dark-3);--ove-fullscreen-shadow:0 30px 80px rgba(2,8,23,0.42);border-color:transparent;background:transparent}body.dark .object-visual-editor__sidebar-shell{box-shadow:0 18px 32px rgba(2,8,23,.26),inset 0 1px 0 rgba(255,255,255,.04);background:linear-gradient(180deg,color-mix(in srgb,var(--color-dark-22) 96%,transparent),color-mix(in srgb,var(--color-dark-1) 94%,transparent))}body.dark .object-visual-editor__color,body.dark .object-visual-editor__hint,body.dark .object-visual-editor__tool-field{color:var(--app-text-primary)}body.dark .object-visual-editor__color,body.dark .object-visual-editor__tool-field{border-color:var(--app-border)}body.dark .object-visual-editor__assignment-item,body.dark .object-visual-editor__assignment-panel,body.dark .object-visual-editor__assignment-panel-meta-item,body.dark .object-visual-editor__color,body.dark .object-visual-editor__tool-field{box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}body.dark .object-visual-editor__back-button,body.dark .object-visual-editor__header-guide,body.dark .object-visual-editor__sidebar-actions>button:not(.object-visual-editor__primary-button),body.dark .object-visual-editor__toolbar-button{background:var(--color-dark-3)!important;border-color:var(--color-dark-3)!important;color:var(--color-white)!important;box-shadow:0 10px 20px rgba(2,8,23,.18),inset 0 1px 0 rgba(255,255,255,.04)}body.dark .object-visual-editor__back-button:hover,body.dark .object-visual-editor__header-guide:hover,body.dark .object-visual-editor__sidebar-actions>button:not(.object-visual-editor__primary-button):hover,body.dark .object-visual-editor__toolbar-button:hover{background:var(--color-dark-2)!important;border-color:var(--color-dark-2)!important}body.dark .object-visual-editor__ruler-toggle.is-active{color:#8fb2ff!important;border-color:color-mix(in srgb,var(--color-blue-main) 46%,var(--app-border))!important;background:color-mix(in srgb,var(--color-blue-main) 24%,var(--app-surface))!important}body.dark .object-visual-editor__saved-select-panel{background:transparent;box-shadow:none}body.dark .object-visual-editor__saved-select.ant-select .ant-select-selector{border-color:var(--app-border)!important;background:color-mix(in srgb,var(--color-dark-1) 78%,var(--color-dark-2))!important}body.dark .object-visual-editor__saved-select.ant-select-single .ant-select-selector .ant-select-selection-item{color:var(--color-white)}body.dark .object-visual-editor__saved-select-remove{color:var(--color-red-main);background:color-mix(in srgb,var(--color-red-main) 18%,var(--color-dark-3))}body.dark .object-visual-editor__saved-select-remove:hover:not(:disabled){background:color-mix(in srgb,var(--color-red-main) 24%,var(--color-dark-3))}body.dark .object-visual-editor__saved-select-dot{box-shadow:0 0 0 3px var(--color-dark-2)}body.dark .object-visual-editor__saved-select-dropdown{border-color:var(--app-border)!important;background:var(--color-dark-2)!important;box-shadow:0 22px 44px rgba(2,8,23,.44),0 10px 20px rgba(2,8,23,.18)!important}body.dark .object-visual-editor__saved-select-dropdown .ant-select-item{color:var(--color-white)}body.dark .object-visual-editor__saved-select-dropdown .ant-select-item-option-active:not(.ant-select-item-option-disabled){background:var(--color-dark-3)!important}body.dark .object-visual-editor__saved-select-dropdown .ant-select-item-option-selected:not(.ant-select-item-option-disabled){background:color-mix(in srgb,var(--color-blue-main) 18%,var(--color-dark-3))!important;color:var(--color-white)!important}body.dark .object-visual-editor__saved-strip-empty{border-color:var(--color-dark-4);background:var(--color-dark-2)}body.dark .object-visual-editor__assignment-color{box-shadow:0 0 0 3px var(--app-bg)}body.dark .object-visual-editor__assignment-shape-color{box-shadow:0 0 0 2px var(--app-bg)}body.dark .object-visual-editor__assignment-item{background:color-mix(in srgb,var(--color-dark-2) 88%,var(--color-dark-22));border-color:color-mix(in srgb,var(--color-dark-4) 72%,transparent)}body.dark .object-visual-editor__assignment-item.is-selected{border-color:color-mix(in srgb,var(--color-blue-main) 34%,transparent);background:color-mix(in srgb,var(--color-blue-main) 18%,var(--color-dark-2));box-shadow:0 14px 26px rgba(2,8,23,.32),inset 0 1px 0 rgba(255,255,255,.06)}body.dark .object-visual-editor__object-pill{border-color:var(--color-blue-main);background:var(--color-dark-3);color:var(--color-white);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}body.dark .object-visual-editor__canvas-shell{border-color:var(--app-border);background:linear-gradient(180deg,var(--color-dark-2),var(--color-dark-22))}body.dark .object-visual-editor__canvas-shell.is-expanded{background:color-mix(in srgb,var(--color-dark-bg) 26%,transparent)}body.dark .object-visual-editor__canvas-shell.is-expanded:before{content:"";background:radial-gradient(circle at top,color-mix(in srgb,var(--color-dark-2) 16%,transparent),transparent 58%),color-mix(in srgb,var(--color-dark-bg) 48%,transparent)}body.dark .object-visual-editor__canvas-stage{background:var(--color-dark-1)}body.dark .object-visual-editor__canvas-shell.is-expanded .object-visual-editor__canvas-stage{background:transparent;box-shadow:0 24px 52px rgba(2,8,23,.34)}body.dark .object-visual-editor__fullscreen-close{background:color-mix(in srgb,var(--color-dark-2) 84%,transparent);color:var(--color-white);box-shadow:0 12px 26px rgba(2,8,23,.32)}body.dark .object-visual-editor__polygon-popover{background:var(--color-dark-2);border-color:var(--app-border);box-shadow:0 22px 44px rgba(2,8,23,.44),0 8px 22px rgba(2,8,23,.2)}body.dark .object-visual-editor__polygon-select.ant-select .ant-select-selector{border-color:var(--app-border)!important;background:var(--ove-input-bg)!important;box-shadow:none!important}body.dark .object-visual-editor__polygon-select.ant-select-single .ant-select-selector .ant-select-selection-item{color:var(--color-white)}body.dark .object-visual-editor__polygon-select.ant-select .ant-select-arrow,body.dark .object-visual-editor__polygon-select.ant-select-single .ant-select-selector .ant-select-selection-placeholder{color:var(--color-dark-5)}body.dark .object-visual-editor__polygon-select-dropdown{border-color:var(--app-border)!important;background:var(--color-dark-2)!important;box-shadow:0 22px 44px rgba(2,8,23,.44),0 10px 20px rgba(2,8,23,.18)!important}body.dark .object-visual-editor__polygon-select-dropdown .ant-select-item{color:var(--color-white)}body.dark .object-visual-editor__polygon-select-dropdown .ant-select-item-option-active:not(.ant-select-item-option-disabled){background:var(--color-dark-3)!important}body.dark .object-visual-editor__polygon-select-dropdown .ant-select-item-option-selected:not(.ant-select-item-option-disabled){background:color-mix(in srgb,var(--color-blue-main) 18%,var(--color-dark-3))!important;color:var(--color-white)!important}body.dark .object-visual-editor__polygon-popover-title{color:var(--app-text-primary)}body.dark .object-visual-editor__empty{color:var(--app-text-secondary)}body.dark .object-visual-editor__guide-demo{border-color:var(--app-border);background:var(--color-dark-2)}body.dark .object-visual-editor__guide-stage{background:linear-gradient(135deg,var(--color-dark-2),var(--color-dark-22)),repeating-linear-gradient(0deg,color-mix(in srgb,var(--color-dark-4) 38%,transparent) 0,color-mix(in srgb,var(--color-dark-4) 38%,transparent) 1px,transparent 1px,transparent 44px),repeating-linear-gradient(90deg,color-mix(in srgb,var(--color-dark-4) 38%,transparent) 0,color-mix(in srgb,var(--color-dark-4) 38%,transparent) 1px,transparent 1px,transparent 44px)}body.dark .object-visual-editor__guide-text p{color:var(--app-text-secondary)}body.dark .object-visual-editor__guide-text ol{color:var(--app-text-primary)}@keyframes guide-fade{0%,8%{opacity:0}16%,to{opacity:1}}@media (min-width:1081px){.object-visual-editor-drawer .ant-drawer-body{overflow:hidden}.object-visual-editor{min-height:0;overflow:hidden}.object-visual-editor__workspace{grid-template-rows:minmax(0,1fr)}.object-visual-editor__workspace .object-visual-editor__canvas-panel{min-height:0}}@media (max-width:1360px){.object-visual-editor__workspace{grid-template-columns:minmax(260px,300px) minmax(0,1fr)}.object-visual-editor__canvas-panel{min-height:min(68vh,700px)}}@media (max-width:1080px){.object-visual-editor{height:auto}.object-visual-editor__workspace{flex:0 0 auto;grid-template-columns:1fr;grid-template-rows:auto auto;grid-template-areas:"canvas" "sidebar"}.object-visual-editor__canvas-panel{min-height:480px}.object-visual-editor__sidebar{overflow:visible}.object-visual-editor__sidebar-shell{height:auto;max-height:min(780px,85dvh)}}@media (max-width:920px){.object-visual-editor__drawer-topline{flex-direction:column;align-items:stretch}.object-visual-editor__drawer-start{width:100%;align-items:flex-start;flex-direction:row;gap:14px}.object-visual-editor__drawer-actions{width:100%;justify-content:stretch;flex-wrap:wrap}.object-visual-editor__saved-select-panel{width:100%;min-width:0}.object-visual-editor__saved-select-row{flex:1 1 260px;grid-template-columns:minmax(0,1fr) 36px}.object-visual-editor__header-guide,.object-visual-editor__sidebar-actions{width:100%}.object-visual-editor__sidebar-actions,.object-visual-editor__toolbar-group--compact-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.object-visual-editor__image-editor{grid-template-columns:1fr}.object-visual-editor__image-editor-cropper{min-height:360px}}@media (max-width:640px){.object-visual-editor-drawer .ant-drawer-header{padding:12px 14px}.object-visual-editor{padding:0;border-radius:0}.object-visual-editor__sidebar-shell{min-height:0;padding:0;border-radius:20px}.object-visual-editor__drawer-toolbar,.object-visual-editor__sidebar-actions,.object-visual-editor__toolbar-group{width:100%}.object-visual-editor__attach-button,.object-visual-editor__color,.object-visual-editor__header-guide,.object-visual-editor__tool-field,.object-visual-editor__tool-field--block,.object-visual-editor__tool-field--slider,.object-visual-editor__toolbar-button{width:100%;min-width:0}.object-visual-editor__canvas-panel{min-height:360px}.object-visual-editor__saved-select-panel{height:auto;flex-direction:column;align-items:stretch;gap:8px}.object-visual-editor__saved-select-row{width:100%;flex:0 0 auto;grid-template-columns:minmax(0,1fr) 36px}.object-visual-editor__saved-strip{max-height:none}.object-visual-editor__sidebar-actions,.object-visual-editor__status-actions,.object-visual-editor__toolbar-group--compact-actions{grid-template-columns:1fr}.object-visual-editor__canvas-shell.is-expanded{padding:4px}.object-visual-editor__fullscreen-close{top:10px;right:10px}.object-visual-editor__saved-strip-list{overflow:visible}.object-visual-editor__sidebar-actions>button{width:100%}.object-visual-editor__polygon-popover{min-width:190px;max-width:min(240px,calc(100vw - 48px))}.object-visual-editor__guide{grid-template-columns:1fr}.object-visual-editor__image-editor-cropper{min-height:300px}.object-visual-editor__image-editor-footer{flex-direction:column-reverse}}.visual-cad-toolbar{display:grid;gap:10px;min-width:0;padding:12px;border:1px solid var(--ove-border,var(--app-border));border-radius:12px;background:var(--ove-card-bg,var(--app-surface));color:var(--ove-text,var(--app-text-primary));font-size:12px;line-height:1.4}.visual-cad-heading{display:flex;align-items:center;gap:7px;min-width:0;margin-bottom:2px}.visual-cad-heading>svg{color:var(--ove-accent,#5174ff);flex:none}.visual-cad-heading>strong{font-size:12px;font-weight:650}.visual-cad-heading>span{margin-left:auto;color:var(--ove-muted,var(--app-text-secondary));font-size:10px;white-space:nowrap}.visual-cad-finish,.visual-cad-history,.visual-cad-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.visual-cad-modes{padding:3px;border-radius:9px;background:var(--ove-chip-bg,var(--app-surface-muted))}.visual-cad-actions,.visual-cad-constraints{display:grid;gap:5px;grid-template-columns:repeat(3,minmax(0,1fr))}.visual-cad-button{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:34px;padding:6px 8px;border:1px solid var(--ove-border,var(--app-border));border-radius:7px;background:transparent;color:inherit;font:inherit;font-size:11px;font-weight:550;line-height:1.4;text-align:center;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.visual-cad-button>svg{flex:none}.visual-cad-button>span{min-width:0}.visual-cad-button>kbd{margin-left:auto;font-size:9px;font-weight:400;opacity:.65;white-space:nowrap}.visual-cad-button:hover:not(:disabled){background:var(--ove-chip-bg,var(--app-surface-muted));border-color:var(--ove-accent,#5174ff)}.visual-cad-button[data-active=true]{background:var(--ove-accent-soft,#5174ff1a);border-color:color-mix(in srgb,var(--ove-accent,#5174ff) 40%,transparent);color:var(--crm-accent-text,#4169e1)}.visual-cad-button:disabled{opacity:.4;cursor:default}.visual-cad-button:focus-visible,.visual-cad-command:focus-within,.visual-cad-help>summary:focus-visible{outline:2px solid var(--ove-accent,#5174ff);outline-offset:2px}.visual-cad-actions .visual-cad-button,.visual-cad-constraints .visual-cad-button{position:relative;flex-direction:column;gap:4px;min-height:59px;padding:8px 3px 17px;font-size:10px}.visual-cad-actions .visual-cad-button>kbd,.visual-cad-constraints .visual-cad-button>kbd{position:absolute;bottom:3px;left:0;right:0;margin:0;font-size:8px}.visual-cad-finish{padding-top:9px;border-top:1px solid var(--ove-border,var(--app-border))}.visual-cad-finish .visual-cad-button{font-size:10px}.visual-cad-finish .visual-cad-button:last-child:not(:disabled){background:var(--ove-accent,#5174ff);border-color:transparent;color:#fff}.visual-cad-advanced{display:grid;min-width:0;border-top:1px solid var(--ove-border,var(--app-border));padding-top:8px}.visual-cad-advanced>summary{color:var(--ove-muted,var(--app-text-secondary));cursor:pointer;font-size:11px}.visual-cad-advanced[open]>.visual-cad-actions{margin-top:10px}.visual-cad-advanced .visual-cad-command{margin-top:8px}.visual-cad-canvas-status{position:absolute;z-index:4;left:12px;right:12px;bottom:12px;display:flex;align-items:center;gap:8px;width:fit-content;max-width:calc(100% - 24px);margin-inline:auto;padding:8px 12px;border:1px solid var(--ove-border);border-radius:9px;background:var(--ove-card-bg);color:var(--ove-text);box-shadow:0 2px 12px #0000000a;font-size:11px;line-height:1.5;pointer-events:none}.visual-cad-status-dot{flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:var(--ove-accent,#5174ff)}.visual-cad-canvas-status[data-ready=true] .visual-cad-status-dot{background:#16a34a}.object-visual-editor__canvas-shell:has(>.visual-cad-viewport){padding:50px 12px;overflow:hidden}.visual-cad-viewport{display:flex;flex:1 1 auto;align-items:safe center;width:100%;height:100%;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;overflow-anchor:none;scrollbar-width:none;scroll-behavior:auto}.visual-cad-viewport::-webkit-scrollbar{display:none;width:0;height:0}.visual-cad-viewport>.object-visual-editor__canvas-stage{flex:0 0 auto;margin:auto}.visual-cad-viewport[data-panning=true],.visual-cad-viewport[data-panning=true] .object-visual-editor__canvas{cursor:grab!important;touch-action:none}.visual-cad-viewport[data-dragging=true],.visual-cad-viewport[data-dragging=true] .object-visual-editor__canvas,.visual-cad-viewport[data-panning=true]:active,.visual-cad-viewport[data-panning=true]:active .object-visual-editor__canvas{cursor:grabbing!important}.visual-cad-navigation{position:absolute;top:12px;left:12px;z-index:5;display:flex;align-items:center;gap:1px;padding:3px;max-width:calc(100% - 64px);border:1px solid var(--ove-border);border-radius:8px;background:var(--ove-card-bg);color:var(--ove-text);box-shadow:0 2px 8px #00000008}.visual-cad-navigation>button{min-width:27px;min-height:27px;padding:4px 7px;border:0;border-radius:5px;background:transparent;color:inherit;font:inherit;font-size:11px;cursor:pointer}.visual-cad-navigation>button:hover,.visual-cad-navigation>button[aria-pressed=true]{background:var(--ove-accent-soft);color:var(--ove-accent-strong)}.visual-cad-navigation>button:disabled{opacity:.35;cursor:default}.visual-cad-navigation>button:focus-visible{outline:2px solid var(--ove-accent);outline-offset:1px}.visual-cad-navigation>span{min-width:36px;text-align:center;font-size:10px;font-variant-numeric:tabular-nums}.visual-cad-navigation>button[data-scale]{min-width:44px;font-variant-numeric:tabular-nums}.object-visual-editor__sidebar-footer .visual-cad-save-ready:not(:disabled){background:#15803d!important;color:#fff!important;box-shadow:0 0 0 2px #16a34a20}.object-visual-editor__sidebar-footer .visual-cad-save-ready:hover:not(:disabled){background:#166534!important}.visual-cad-hint{margin:0;font-size:11px;line-height:1.5}.visual-cad-command,.visual-cad-hint{color:var(--ove-muted,var(--app-text-secondary))}.visual-cad-command{display:flex;align-items:center;gap:8px;min-width:0;min-height:36px;padding:0 8px;border:1px solid var(--ove-border,var(--app-border));border-radius:7px;background:var(--ove-input-bg,var(--app-bg))}.visual-cad-command>svg{flex:none}.visual-cad-command input{min-width:0;width:100%;padding:8px 0;border:0;outline:0;background:transparent;color:var(--ove-text,var(--app-text-primary));font:inherit;font-size:10px}.visual-cad-command input::placeholder{color:var(--ove-muted,var(--app-text-secondary))}.visual-cad-command button{display:grid;flex:0 0 25px;place-items:center;width:25px;height:25px;padding:0;border:0;border-radius:4px;background:var(--ove-chip-bg,var(--app-surface-muted));color:inherit;cursor:pointer}.visual-cad-command button:disabled{opacity:.4;cursor:default}.visual-cad-command-error{margin:0;color:var(--color-red-main,#dc5353);font-size:10px}.visual-cad-help{border-top:1px solid var(--ove-border,var(--app-border));padding-top:9px;color:var(--ove-muted,var(--app-text-secondary))}.visual-cad-help>summary{display:flex;align-items:center;gap:7px;width:fit-content;border-radius:4px;color:inherit;font-size:11px;cursor:pointer;list-style:none}.visual-cad-help>summary::-webkit-details-marker{display:none}.visual-cad-help>summary:after{content:"+";margin-left:3px;font-size:14px}.visual-cad-help[open]>summary:after{content:"−"}.visual-cad-help dl{display:grid;gap:6px;margin:12px 0 0}.visual-cad-help dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:10px}.visual-cad-help dt{min-width:0}.visual-cad-help dd{margin:0;text-align:right;white-space:nowrap}.visual-cad-help kbd{font-family:inherit;color:var(--ove-text,var(--app-text-primary));font-size:9px}.visual-cad-help p{margin:10px 0 0;padding-top:8px;border-top:1px solid var(--ove-border,var(--app-border));font-size:10px;line-height:1.7}.visual-cad-appearance{border:1px solid var(--ove-border,var(--app-border));border-radius:9px;padding:10px 12px}.visual-cad-appearance>summary{color:var(--ove-muted,var(--app-text-secondary));font-size:11px;cursor:pointer}.visual-cad-appearance-fields{display:grid;gap:10px;padding-top:12px}.object-visual-editor:has(.visual-cad-toolbar) .object-visual-editor__canvas:focus-visible{outline:2px solid var(--ove-accent,#5174ff);outline-offset:2px}@media (max-width:680px){.visual-cad-toolbar{padding:10px}.visual-cad-button{min-height:38px}}@media (prefers-reduced-motion:reduce){.visual-cad-button{transition:none}}.object-visual-editor-drawer:has(.visual-editor-workbench) .ant-drawer-header{padding:8px 12px!important}.ant-drawer-content-wrapper:has(.visual-editor-workbench){width:100vw!important;max-width:100vw!important}.object-visual-editor-drawer.is-canvas-expanded:has(.visual-editor-workbench) .ant-drawer-header{padding:0!important}.object-visual-editor-drawer:has(.visual-editor-workbench) .ant-drawer-body{padding:8px!important;overflow:hidden}.object-visual-editor:has(.visual-editor-workbench){min-height:0;height:100%;overflow:hidden;gap:8px}.object-visual-editor:has(.visual-editor-workbench) .object-visual-editor__drawer-title-text{font-size:15px}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-title-text{font-size:15px}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__object-pill{padding:4px 9px;font-size:11px}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-start{gap:12px}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-heading{flex:1 1 auto}.visual-editor-workbench{--workbench-tools-width:0px;--workbench-inspector-width:0px;display:flex;flex:1 1 auto;flex-direction:column;gap:8px;min-height:0;min-width:0;color:var(--ove-text)}.visual-editor-workbench[data-tools-open=true]{--workbench-tools-width:252px}.visual-editor-workbench[data-inspector-open=true]{--workbench-inspector-width:260px}.visual-editor-workbench__toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;min-width:0;padding:6px 8px;border:1px solid var(--ove-border);border-radius:10px;background:var(--ove-card-bg)}.visual-editor-workbench__toolbar .visual-cad-toolbar{display:flex;flex:1 1 auto;align-items:center;flex-wrap:wrap;gap:8px;padding:0;border:0;border-radius:0;background:transparent}.visual-editor-workbench__toolbar .visual-cad-heading,.visual-editor-workbench__toolbar .visual-cad-hint{display:none}.visual-editor-workbench__toolbar .visual-cad-constraints,.visual-editor-workbench__toolbar .visual-cad-finish,.visual-editor-workbench__toolbar .visual-cad-history,.visual-editor-workbench__toolbar .visual-cad-modes{display:flex;gap:4px;margin:0;padding:0;border:0;background:transparent}.visual-editor-workbench__toolbar .visual-cad-button{flex-direction:row;min-height:31px;gap:5px;padding:5px 8px;font-size:11px;border-color:transparent;border-radius:6px}.visual-editor-workbench__toolbar .visual-cad-button>kbd{display:none}.visual-editor-workbench__toolbar .visual-cad-button[data-active=true]{border-color:color-mix(in srgb,var(--ove-accent) 26%,transparent)}.visual-editor-workbench__toolbar .visual-cad-constraints,.visual-editor-workbench__toolbar .visual-cad-finish,.visual-editor-workbench__toolbar .visual-cad-history{border-left:1px solid var(--ove-border);padding-left:8px}.visual-editor-workbench__toolbar .visual-cad-history .visual-cad-button{width:31px;padding:5px}.visual-editor-workbench__toolbar .visual-cad-history .visual-cad-button>span{display:none}.visual-editor-workbench__toolbar .visual-cad-advanced{position:relative;display:block;padding:0;border:0}.visual-editor-workbench__toolbar .visual-cad-advanced>summary{display:flex;align-items:center;min-height:31px;padding:5px 8px;border-radius:6px;font-size:11px;list-style:none}.visual-editor-workbench__toolbar .visual-cad-advanced>summary:after{content:"⌄";margin-left:6px}.visual-editor-workbench__toolbar .visual-cad-advanced[open]>summary{background:var(--ove-chip-bg);color:var(--ove-text)}.visual-editor-workbench__toolbar .visual-cad-advanced-body{position:absolute;z-index:30;top:calc(100% + 10px);right:0;width:min(330px,calc(100vw - 32px));max-height:min(70dvh,540px);overflow-y:auto;display:grid;gap:10px;padding:12px;border:1px solid var(--ove-border);border-radius:10px;background:var(--ove-card-bg);box-shadow:0 12px 40px #00000020}.visual-editor-workbench__toolbar .visual-cad-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.visual-editor-workbench__toolbar .visual-cad-actions .visual-cad-button{justify-content:flex-start;border-color:var(--ove-border)}.visual-editor-workbench__toolbar .visual-cad-navigation{position:static;flex:0 0 auto;max-width:100%;margin-left:auto;box-shadow:none;border:0;border-left:1px solid var(--ove-border);border-radius:0;padding:0 0 0 8px}.visual-editor-workbench__stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);flex:1 1 auto;min-height:0;min-width:0}.visual-editor-workbench__stage>.object-visual-editor__canvas-panel{grid-area:auto;grid-column:1;grid-row:1;min-height:0;height:100%}.visual-editor-workbench__stage .object-visual-editor__canvas-shell:not(.is-expanded){padding:8px;border-radius:10px;background-color:var(--ove-shell-bg);background-image:radial-gradient(var(--ove-border) .75px,transparent .75px);background-size:18px 18px;box-shadow:none}.visual-editor-workbench__stage .object-visual-editor__canvas-stage{border-radius:2px;box-shadow:0 3px 18px #0000000b}.visual-editor-workbench .object-visual-editor__canvas-shell.is-expanded>.visual-cad-canvas-status,.visual-editor-workbench .object-visual-editor__canvas-shell.is-expanded>.visual-cad-navigation{position:absolute;z-index:6}.visual-editor-workbench .object-visual-editor__canvas-shell.is-expanded .object-visual-editor__fullscreen-close{position:fixed;top:12px;right:12px;z-index:10}.visual-editor-workbench__inspector,.visual-editor-workbench__tools{position:absolute;top:0;bottom:0;z-index:10;display:flex;flex-direction:column;min-height:0;min-width:0;border:1px solid var(--ove-border);border-radius:10px;background:var(--ove-card-bg);box-shadow:0 6px 24px #00000018;overflow:hidden}.visual-editor-workbench__tools{left:0;width:252px}.visual-editor-workbench__inspector{right:0;width:260px}.visual-editor-workbench__inspector[hidden],.visual-editor-workbench__tools[hidden]{display:none}.visual-editor-workbench__panel-head{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-bottom:1px solid var(--ove-border)}.visual-editor-workbench__panel-head>strong{font-size:12px;font-weight:650}.visual-editor-workbench__panel-head>button{display:grid;place-items:center;width:25px;height:25px;border:0;border-radius:5px;color:var(--ove-muted);background:transparent;cursor:pointer;font-size:20px;line-height:1}.visual-editor-workbench__panel-head>button:hover{background:var(--ove-chip-bg)}.visual-editor-workbench__panel-content{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:12px;scrollbar-width:thin;overscroll-behavior:contain}.visual-editor-workbench__panel-content .object-visual-editor__assignment-panel{border:0;padding:0;box-shadow:none;background:transparent}.visual-editor-workbench__inspector .object-visual-editor__assignment-panel-head,.visual-editor-workbench__panel-content .object-visual-editor__assignment-shape-badge{display:none}.visual-editor-workbench__empty{color:var(--ove-muted);font-size:12px;line-height:1.7;margin:0}.visual-editor-workbench__toggle{position:absolute;z-index:11;top:48%;display:grid;place-items:center;width:25px;height:42px;padding:0;border:1px solid var(--ove-border);border-radius:7px;color:var(--ove-accent-strong);background:var(--ove-card-bg);box-shadow:0 2px 8px #0000000a;font-size:24px;line-height:1;cursor:pointer}.visual-editor-workbench__toggle--tools{left:max(0px,calc(var(--workbench-tools-width) - 13px))}.visual-editor-workbench__toggle--inspector{right:max(0px,calc(var(--workbench-inspector-width) - 13px))}.visual-editor-workbench__toggle:hover{background:var(--ove-chip-bg)}.visual-editor-workbench__panel-head>button:focus-visible,.visual-editor-workbench__toggle:focus-visible,.visual-editor-workbench__toolbar summary:focus-visible{outline:2px solid var(--ove-accent);outline-offset:2px}.visual-editor-workbench__footer{display:flex;flex:0 0 auto;align-items:center;gap:12px;min-width:0;min-height:38px;padding:2px 0}.visual-editor-workbench__footer .object-visual-editor__sidebar-section--meta{display:contents}.visual-editor-workbench__footer .object-visual-editor__status-card{order:0;flex:0 0 auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.visual-editor-workbench__footer .object-visual-editor__status-card-top,.visual-editor-workbench__footer .object-visual-editor__status-text{display:none}.visual-editor-workbench__footer .object-visual-editor__sidebar-actions,.visual-editor-workbench__footer .object-visual-editor__status-actions{display:flex;gap:6px;min-width:0}.visual-editor-workbench__footer .object-visual-editor__sidebar-actions{order:2;flex:0 0 auto;width:auto;margin-left:auto}.visual-editor-workbench__footer .ant-upload,.visual-editor-workbench__footer .ant-upload-wrapper{display:block;padding:0!important;min-width:0}.visual-editor-workbench__footer button{width:auto;min-width:0;min-height:32px;padding-inline:10px!important;border-radius:7px!important;font-size:11px!important;white-space:nowrap}.visual-editor-workbench__footer .visual-cad-canvas-status{position:static;order:1;flex:1 1 auto;min-width:0;max-width:none;margin:0;padding:4px;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:10px}.visual-editor-workbench__footer .visual-cad-canvas-status>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.visual-editor-workbench__footer .visual-cad-save-ready:not(:disabled){background:#15803d!important;color:#fff!important}@media (max-width:1100px){.visual-editor-workbench__toolbar,.visual-editor-workbench__toolbar .visual-cad-toolbar{gap:4px}.visual-editor-workbench__toolbar .visual-cad-navigation{margin-left:0}}@media (max-width:900px){.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-topline{flex-direction:row;align-items:center;flex-wrap:wrap;gap:6px}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-start{flex-direction:row;width:auto}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-start{flex:1 1 360px}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-actions{width:auto}.visual-editor-workbench__stage{grid-template-columns:minmax(0,1fr)}.visual-editor-workbench__stage>.object-visual-editor__canvas-panel{grid-column:1}.visual-editor-workbench__inspector,.visual-editor-workbench__tools{position:absolute;top:0;bottom:0;z-index:10;width:min(280px,calc(100% - 40px));margin:0;box-shadow:0 6px 24px #00000018}.visual-editor-workbench__tools{left:0}.visual-editor-workbench__inspector{right:0}.visual-editor-workbench__toggle--tools{left:0}.visual-editor-workbench__toggle--inspector{right:0}.visual-editor-workbench__footer{flex-wrap:wrap;gap:4px 8px}.visual-editor-workbench__footer .visual-cad-canvas-status{display:none}.visual-editor-workbench__toolbar .visual-cad-advanced-body{position:fixed;top:50%;left:50%;right:auto;transform:translate(-50%,-50%)}}@media (max-width:520px){.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-topline{display:grid;grid-template-columns:minmax(0,1fr);gap:6px}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-start{width:100%;flex-wrap:nowrap;flex-direction:row;align-items:center;gap:8px}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-title-row{flex-wrap:nowrap;gap:6px}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-title-text{min-width:0;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__object-pill{max-width:80px;padding:4px 6px;font-size:10px}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__drawer-actions{width:100%;flex-wrap:nowrap;gap:6px}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__saved-select-panel{flex:1 1 auto;width:auto}.object-visual-editor-drawer:has(.visual-editor-workbench) .object-visual-editor__header-guide{width:auto;min-height:34px;padding-inline:8px!important}.visual-editor-workbench__toolbar .visual-cad-button{font-size:10px;padding:5px 6px}.visual-editor-workbench__toolbar .visual-cad-finish .visual-cad-button:first-child>span{display:none}.visual-editor-workbench__toolbar .visual-cad-advanced>summary{width:30px;padding-inline:6px;font-size:0}.visual-editor-workbench__toolbar .visual-cad-advanced>summary:after{content:"···";margin:0;font-size:18px}.visual-editor-workbench__footer button{padding-inline:7px!important;font-size:10px!important}}.stage-visual-editor-drawer .stage-visual-editor__header{--ove-text:var(--app-text-primary);--ove-muted:var(--app-text-secondary);--ove-border:var(--app-border);--ove-card-bg:var(--app-surface);--ove-chip-bg:var(--app-surface-muted)}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__drawer-topline{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(160px,236px);align-items:center;gap:10px 18px}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__drawer-start{width:auto;flex:0 1 auto;flex-wrap:nowrap;gap:10px}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__drawer-heading{flex:0 1 auto}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__drawer-title-row{flex-wrap:nowrap;gap:10px}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__drawer-title-text{white-space:nowrap;font-size:15px;line-height:20px}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__object-pill{max-width:146px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__drawer-actions{width:100%;min-width:0}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__saved-select-panel{width:100%;min-width:0;height:34px}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__saved-select-row{flex:1 1 auto;width:100%;height:34px;grid-template-columns:minmax(0,1fr) 30px;gap:6px}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__saved-select{height:34px!important}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__saved-select .ant-select-selector{height:34px!important;min-height:34px!important;max-height:34px!important}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__saved-select-remove{width:30px;height:30px}.stage-visual-editor-drawer .visual-editor-workbench{gap:6px}.stage-visual-editor-drawer .visual-editor-workbench__toolbar{padding:4px 6px;gap:6px 10px}.stage-visual-editor-drawer .visual-editor-workbench__footer{min-height:34px;padding:0}@media (max-width:1000px){.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__drawer-topline{grid-template-columns:minmax(0,1fr) minmax(140px,220px);gap:6px 12px}.stage-visual-editor-drawer .stage-visual-editor__header .stage-visual-controls{grid-column:1/-1;grid-row:2}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__drawer-actions{grid-column:2;grid-row:1}}@media (max-width:600px){.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__drawer-topline{grid-template-columns:minmax(0,1fr) minmax(120px,155px);gap:6px 8px}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__drawer-start{gap:6px}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__drawer-title-text{font-size:12px;overflow:hidden;text-overflow:ellipsis}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__back-button>span:last-child,.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__object-pill{display:none}.stage-visual-editor-drawer .stage-visual-editor__header .object-visual-editor__back-button{width:30px;min-width:30px;min-height:32px;padding:0!important;font-size:0!important}}.stage-visual-controls,.stage-visual-operations-modal{--app-form-control-bg:var(--app-surface-muted);--app-form-control-bg-hover:var(--app-surface);--app-form-control-bg-focus:var(--app-surface);--app-form-control-border:var(--app-border);--app-form-control-border-hover:var(--color-blue-main);--app-form-control-border-focus:var(--color-blue-main);--app-form-control-text:var(--app-text-primary);--app-form-control-placeholder:var(--app-text-secondary);--app-form-control-icon:var(--app-text-secondary);color:var(--app-text-primary)}.stage-visual-controls{display:flex;align-items:center;gap:8px;min-width:0;width:auto;padding:0}.stage-visual-controls__current{flex:0 0 128px;width:128px;min-width:0}.stage-visual-controls__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.stage-visual-controls .stage-visual-controls__select.ant-select{width:100%;min-width:0;height:34px;margin:0}.stage-visual-controls .stage-visual-controls__select.ant-select .ant-select-selector{height:34px!important;min-height:34px!important;padding:0 10px!important;align-items:center}.stage-visual-controls .stage-visual-controls__select .ant-select-selection-item,.stage-visual-controls .stage-visual-controls__select .ant-select-selection-placeholder{font-size:12px!important;font-weight:500!important}.stage-visual-controls__select .ant-select-arrow{margin-top:0;transform:translateY(-50%)}.stage-visual-controls__progress{display:inline-flex;align-items:center;gap:6px;min-width:0;padding:4px 8px;border-radius:7px;background:var(--app-surface-muted);color:var(--app-text-secondary);font-size:11px;line-height:18px;white-space:nowrap}.stage-visual-controls__progress strong{color:var(--app-text-primary);font-weight:600;font-variant-numeric:tabular-nums}.stage-visual-controls .stage-visual-controls__operations.ant-btn{flex:0 0 auto;height:34px;padding:0 12px;border:1px solid rgba(81,116,255,.25)!important;border-radius:8px;background:rgba(81,116,255,.08)!important;color:var(--color-blue-main)!important;font-size:12px;font-weight:600;white-space:nowrap}body.dark .stage-visual-controls .stage-visual-controls__operations.ant-btn{color:#b6c5ff!important}.stage-visual-controls .stage-visual-controls__operations.ant-btn:hover{background:rgba(81,116,255,.15)!important}.stage-visual-controls .stage-visual-controls__operations.ant-btn:disabled{opacity:.5}.stage-visual-operations-modal{max-width:calc(100vw - 24px)}body .ant-modal-centered .stage-visual-operations-modal{display:inline-block!important}.stage-visual-operations-modal .ant-modal-content{padding:0!important;overflow:hidden;border:1px solid var(--app-border);border-radius:16px!important;background:var(--app-surface)!important}.stage-visual-operations-modal .ant-modal-header{padding:18px 24px 14px!important;margin:0!important;border-bottom:1px solid var(--app-border);background:var(--app-surface)!important}.stage-visual-operations-modal .ant-modal-title{color:var(--app-text-primary)!important;font-size:16px;line-height:24px}.stage-visual-operations-modal__title{display:flex;align-items:center;gap:10px;padding-right:20px}.stage-visual-operations-modal__title strong{font-weight:600}.stage-visual-operations-modal__title>span{padding:2px 8px;border-radius:6px;background:var(--app-surface-muted);color:var(--app-text-secondary);font-size:11px;font-weight:500}.stage-visual-operations-modal .ant-modal-close{top:14px;right:14px;color:var(--app-text-secondary)}.stage-visual-operations-modal .ant-modal-body{max-height:calc(100dvh - 140px);padding:18px 24px 22px!important;overflow-y:auto}.stage-visual-operations-modal__modes{display:flex;gap:4px;padding:4px;margin-bottom:18px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-muted)}.stage-visual-operations-modal__modes button{flex:1 1 0;min-width:0;min-height:38px;padding:7px 10px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--app-text-secondary);font:inherit;font-size:12px;font-weight:500;line-height:18px;cursor:pointer}.stage-visual-operations-modal__modes button[aria-selected=true]{border-color:var(--app-border);background:var(--app-surface);color:var(--app-text-primary);box-shadow:0 1px 4px #0000000a}.stage-visual-operations-modal__modes button:focus-visible{outline:2px solid var(--color-blue-main);outline-offset:2px}.stage-visual-operations-modal__panel{display:grid;gap:16px;min-width:0}.stage-visual-operations-modal__heading{margin:0;color:var(--app-text-primary);font-size:14px;font-weight:600;line-height:20px}.stage-visual-operations-modal__modes+.stage-visual-operations-modal__panel .stage-visual-operations-modal__heading{display:none}.stage-visual-controls__field{display:grid;gap:6px;min-width:0}.stage-visual-controls__label{color:var(--app-text-secondary);font-size:12px;font-weight:500;line-height:18px}.stage-visual-operations-modal .stage-visual-controls__select.ant-select{width:100%;min-width:0;height:44px}.stage-visual-operations-modal .stage-visual-controls__select.ant-select .ant-select-selector{height:44px!important;min-height:44px!important;padding:0 12px!important;align-items:center}.stage-visual-operations-modal .stage-visual-controls__select .ant-select-selection-item,.stage-visual-operations-modal .stage-visual-controls__select .ant-select-selection-placeholder{font-size:13px!important}.stage-visual-controls__hint,.stage-visual-controls__note{margin:0;color:var(--app-text-secondary);font-size:12px;font-weight:400;line-height:1.65}.stage-visual-controls__note[data-invalid=true]{color:var(--color-red-main,#ef4444)}.stage-visual-operations-modal .stage-visual-range__source-summary{margin:0!important;padding:8px 10px;border:1px solid rgba(81,116,255,.25);border-radius:8px;background:rgba(81,116,255,.08);color:var(--app-text-primary)!important;font-size:13px!important;font-weight:600!important}.stage-visual-controls__copy-error{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.stage-visual-controls__copy-error .ant-btn{height:auto;padding:0;font-size:12px}.stage-visual-operations-modal__footer{display:flex;justify-content:flex-end;padding-top:14px;margin-top:2px;border-top:1px solid var(--app-border)}.stage-visual-operations-modal__footer .ant-btn{min-height:40px;height:40px;padding-inline:16px;border-radius:9px;font-size:12px}.stage-visual-operations-modal__footer .ant-btn:disabled{border-color:var(--app-border)!important;background:var(--app-surface-muted)!important;color:var(--app-text-secondary)!important;box-shadow:none!important;opacity:.7}body .stage-visual-controls-dropdown.ant-select-dropdown{max-width:calc(100vw - 32px);border:1px solid var(--app-form-dropdown-border)!important;background:var(--app-form-dropdown-bg)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.stage-visual-controls-dropdown .ant-select-item-option-content{white-space:normal;overflow-wrap:anywhere;font-size:13px;line-height:1.5}@media (max-width:1200px){.stage-visual-controls__progress-label{display:none}}@media (max-width:600px){.stage-visual-controls{gap:8px;width:100%}.stage-visual-controls__current{flex-basis:110px;width:110px}.stage-visual-controls .stage-visual-controls__operations.ant-btn{margin-left:auto}.stage-visual-operations-modal .ant-modal-header{padding-inline:18px!important}.stage-visual-operations-modal .ant-modal-body{padding:16px 18px 18px!important}.stage-visual-operations-modal__footer .ant-btn{width:100%}}.home-category-fields{min-width:0;margin:0 0 24px;padding:16px;border:1px solid var(--app-form-control-border,#e3e8eb);border-radius:14px;background:var(--app-form-dropdown-bg,#fff)}.home-category-fields__heading{margin-bottom:16px}.home-category-fields__heading strong{display:block;color:var(--app-form-control-text);font-size:13px;font-weight:600;line-height:20px}.home-category-fields__heading p,.home-category-fields__hint{margin:4px 0 0;color:var(--app-form-control-placeholder);font-size:12px;font-weight:400;line-height:1.6}.home-category-fields .ant-form-item{min-width:0;margin-bottom:0!important}.home-category-fields .ant-form-item-label{margin-bottom:0!important;padding:0 0 6px!important}.home-category-fields .ant-form-item-label>label{height:auto;font-size:12px!important;font-weight:500!important;line-height:20px!important}.home-category-fields .home-category-control.ant-select{width:100%;min-width:0;height:48px}.home-category-fields .home-category-control.ant-select .ant-select-selector{min-height:48px!important;padding-inline:12px!important}.home-category-fields .home-category-control.ant-select .ant-select-selection-item,.home-category-fields .home-category-control.ant-select .ant-select-selection-placeholder{font-size:13px!important}.home-category-fields .home-category-control.ant-select-multiple{height:auto;min-height:48px}.home-category-fields .home-category-control.ant-select-multiple .ant-select-selection-item{max-width:100%}.home-category-fields .home-category-control .ant-select-arrow{margin-top:0;transform:translateY(-50%)}.home-category-fields__hint{margin-top:12px}.home-category-fields__error{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;color:var(--color-red-main,#ef4444);font-size:12px;line-height:1.5}.home-category-fields__error .ant-btn{height:auto;padding:0;font-size:inherit}body .home-category-dropdown.ant-select-dropdown{max-width:calc(100vw - 32px)}.home-category-dropdown .ant-select-item-option-content{white-space:normal;overflow-wrap:anywhere;font-size:13px;line-height:1.5}.home-category-empty{padding:12px;color:var(--app-form-control-placeholder);font-size:12px;text-align:center}.home-category-tag.ant-tag{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.home-category-fields--template .ant-form-item+.ant-form-item{margin-top:16px}@media (max-width:575px){.home-category-fields{padding:12px}}.home-repair-categories-btn.ant-btn{display:inline-flex;align-items:center;height:40px;gap:8px;padding-inline:14px;border-color:var(--app-border,#e3e8ef);border-radius:10px;background:var(--app-surface,#ffffff);color:var(--app-text-primary,#172338);font-size:12px;font-weight:500}.home-repair-categories-modal{--repair-surface:var(--app-surface,#ffffff);--repair-muted-surface:var(--app-surface-muted,#f5f7fb);--repair-text:var(--app-text-primary,#172338);--repair-muted:var(--app-text-secondary,#748092);--repair-border:var(--app-border,#e3e8ef);--repair-accent:#5174ff;color:var(--repair-text)}.home-repair-categories-modal .ant-modal-header{margin-bottom:0;padding-right:22px}.repair-category-heading{display:flex;align-items:flex-start;gap:12px;min-width:0}.repair-category-heading__icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid color-mix(in srgb,var(--repair-accent) 20%,transparent);border-radius:11px;background:color-mix(in srgb,var(--repair-accent) 9%,transparent);color:var(--repair-accent);font-size:18px}.repair-category-heading strong{display:block;color:var(--repair-text);font-size:17px;font-weight:650;line-height:1.5}.repair-category-heading p{margin:4px 0 0;color:var(--repair-muted);font-size:12px;font-weight:400;line-height:1.6}.repair-category-form{margin:0 0 20px;padding:14px;border:1px solid var(--repair-border);border-radius:12px;background:var(--repair-muted-surface)}.repair-category-form[data-editing=true]{border-color:color-mix(in srgb,var(--repair-accent) 45%,var(--repair-border))}.repair-category-form__heading{display:flex;align-items:center;justify-content:space-between;min-height:28px;gap:8px;margin-bottom:8px}.repair-category-form__heading strong{color:var(--repair-text);font-size:13px;font-weight:600}.repair-category-form__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:10px}.home-repair-categories-modal .repair-category-form__row .ant-form-item{flex:1 1 auto;min-width:0;margin-bottom:0!important}.home-repair-categories-modal .repair-category-form__row .ant-form-item-label{display:flex;align-items:center;height:25px;padding:0 0 5px!important;margin-bottom:0!important}.home-repair-categories-modal .repair-category-form__row .ant-form-item-label>label{height:20px!important;font-size:12px!important;line-height:20px!important}.home-repair-categories-modal .repair-category-form__row>.ant-btn{flex:0 0 auto;height:40px;margin-top:25px;padding-inline:14px;border-radius:10px;font-size:12px}.home-repair-categories-modal .repair-category-form input.ant-input{min-height:40px!important;height:40px;padding-inline:11px!important;font-size:13px}.repair-category-list__toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:10px}.repair-category-filters{display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:3px;border-radius:10px;background:var(--repair-muted-surface)}.repair-category-filters button{display:inline-flex;align-items:center;gap:6px;min-height:31px;padding:5px 9px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--repair-muted);font:inherit;font-size:12px;cursor:pointer}.repair-category-filters button[aria-pressed=true]{border-color:var(--repair-border);background:var(--repair-surface);color:var(--repair-text);box-shadow:0 1px 3px #00000008}.repair-category-filters button>span{min-width:16px;color:var(--repair-muted);font-size:10px;font-variant-numeric:tabular-nums}.repair-category-filters button:focus-visible{outline:2px solid var(--repair-accent);outline-offset:2px}.home-repair-categories-modal .repair-category-search.ant-input-affix-wrapper{flex:1 1 170px;width:170px;max-width:235px;min-height:36px!important;height:36px;padding:5px 10px!important}.repair-category-list__body{min-height:84px;max-height:min(370px,46dvh);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.repair-category-list__body>ul{list-style:none;padding:0;margin:0}.repair-category-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 2px;border-bottom:1px solid var(--repair-border)}.repair-category-row:last-child{border-bottom:0}.repair-category-row[data-editing=true]{padding-inline:9px;border-radius:9px;background:color-mix(in srgb,var(--repair-accent) 5%,transparent)}.repair-category-row__details{display:grid;gap:5px;flex:1 1 auto;min-width:0}.repair-category-row__details>strong{color:var(--repair-text);font-size:13px;font-weight:550;line-height:1.5;overflow-wrap:anywhere}.repair-category-row__status{display:inline-flex;align-items:center;gap:5px;color:var(--repair-muted);font-size:11px;line-height:16px}.repair-category-row__status>span{width:6px;height:6px;border-radius:50%;background:var(--repair-muted)}.repair-category-row__status[data-active=true]>span{background:#16a578}.repair-category-row__actions{display:flex;align-items:center;flex:0 0 auto;gap:4px}.home-repair-categories-modal .repair-category-row__actions .ant-btn{min-height:30px;padding-inline:8px;font-size:11px;border-radius:7px}.home-repair-categories-modal .ant-btn-text{color:color-mix(in srgb,var(--repair-text) 72%,var(--repair-muted))!important}.home-repair-categories-modal .ant-btn-text:not(:disabled):hover{color:var(--repair-text)!important;background:var(--repair-muted-surface)!important}.home-repair-categories-modal .ant-btn-text:disabled{color:color-mix(in srgb,var(--repair-muted) 55%,transparent)!important}.repair-category-empty{padding:10px 0 16px;text-align:center}.repair-category-empty .ant-empty{margin-block:10px 5px}.repair-category-empty p{margin:0;color:var(--repair-muted);font-size:12px;line-height:1.6}.home-repair-categories-modal .ant-alert{margin-bottom:14px}@media (max-width:520px){.home-repair-categories-modal .ant-modal-content{padding:18px 14px}.repair-category-heading{gap:9px}.repair-category-heading strong{font-size:15px}.repair-category-form{padding:12px}.repair-category-form__row{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px}.home-repair-categories-modal .repair-category-form__row>.ant-btn{width:100%;margin-top:0}.repair-category-list__toolbar{align-items:stretch}.home-repair-categories-modal .repair-category-search.ant-input-affix-wrapper{width:100%;max-width:none}.repair-category-row{align-items:flex-start;flex-direction:column;gap:5px}.repair-category-row__actions{align-self:flex-end}}