ui-sniper 3.0.7 → 3.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +12 -1
- package/dist/index.d.ts +12 -1
- package/dist/index.js +397 -18
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +412 -34
- package/dist/index.mjs.map +1 -1
- package/package.json +12 -10
package/dist/index.js
CHANGED
|
@@ -64,6 +64,7 @@ __export(index_exports, {
|
|
|
64
64
|
IconSendAnimated: () => IconSendAnimated,
|
|
65
65
|
IconSendArrow: () => IconSendArrow,
|
|
66
66
|
IconSun: () => IconSun,
|
|
67
|
+
IconTarget: () => IconTarget,
|
|
67
68
|
IconTrash: () => IconTrash,
|
|
68
69
|
IconTrashAlt: () => IconTrashAlt,
|
|
69
70
|
IconXmark: () => IconXmark,
|
|
@@ -92,8 +93,8 @@ var import_react_dom2 = require("react-dom");
|
|
|
92
93
|
var import_react = require("react");
|
|
93
94
|
|
|
94
95
|
// src/components/annotation-popup-css/styles.module.scss
|
|
95
|
-
var css = '.styles-module__popup___IhzrD svg[fill=none] {\n fill: none !important;\n}\n.styles-module__popup___IhzrD svg[fill=none] :not([fill]) {\n fill: none !important;\n}\n\n@keyframes styles-module__popupEnter___AuQDN {\n from {\n opacity: 0;\n transform: translateX(-50%) scale(0.95) translateY(4px);\n }\n to {\n opacity: 1;\n transform: translateX(-50%) scale(1) translateY(0);\n }\n}\n@keyframes styles-module__popupExit___JJKQX {\n from {\n opacity: 1;\n transform: translateX(-50%) scale(1) translateY(0);\n }\n to {\n opacity: 0;\n transform: translateX(-50%) scale(0.95) translateY(4px);\n }\n}\n@keyframes styles-module__shake___jdbWe {\n 0%, 100% {\n transform: translateX(-50%) scale(1) translateY(0) translateX(0);\n }\n 20% {\n transform: translateX(-50%) scale(1) translateY(0) translateX(-3px);\n }\n 40% {\n transform: translateX(-50%) scale(1) translateY(0) translateX(3px);\n }\n 60% {\n transform: translateX(-50%) scale(1) translateY(0) translateX(-2px);\n }\n 80% {\n transform: translateX(-50%) scale(1) translateY(0) translateX(2px);\n }\n}\n.styles-module__popup___IhzrD {\n position: fixed;\n transform: translateX(-50%);\n width: 280px;\n padding: 0.75rem 1rem 14px;\n background: #1a1a1a;\n border-radius: 16px;\n box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.08);\n z-index: 100001;\n font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n will-change: transform, opacity;\n opacity: 0;\n}\n.styles-module__popup___IhzrD.styles-module__enter___L7U7N {\n animation: styles-module__popupEnter___AuQDN 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;\n}\n.styles-module__popup___IhzrD.styles-module__entered___COX-w {\n opacity: 1;\n transform: translateX(-50%) scale(1) translateY(0);\n}\n.styles-module__popup___IhzrD.styles-module__exit___5eGjE {\n animation: styles-module__popupExit___JJKQX 0.15s ease-in forwards;\n}\n.styles-module__popup___IhzrD.styles-module__entered___COX-w.styles-module__shake___jdbWe {\n animation: styles-module__shake___jdbWe 0.25s ease-out;\n}\n\n.styles-module__header___wWsSi {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 0.5625rem;\n}\n\n.styles-module__element___fTV2z {\n font-size: 0.75rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.5);\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n flex: 1;\n}\n\n.styles-module__headerToggle___WpW0b {\n display: flex;\n align-items: center;\n gap: 0.25rem;\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n flex: 1;\n min-width: 0;\n text-align: left;\n}\n.styles-module__headerToggle___WpW0b .styles-module__element___fTV2z {\n flex: 1;\n}\n\n.styles-module__chevron___ZZJlR {\n color: rgba(255, 255, 255, 0.5);\n transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);\n flex-shrink: 0;\n}\n.styles-module__chevron___ZZJlR.styles-module__expanded___2Hxgv {\n transform: rotate(90deg);\n}\n\n.styles-module__stylesWrapper___pnHgy {\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n}\n.styles-module__stylesWrapper___pnHgy.styles-module__expanded___2Hxgv {\n grid-template-rows: 1fr;\n}\n\n.styles-module__stylesInner___YYZe2 {\n overflow: hidden;\n}\n\n.styles-module__stylesBlock___VfQKn {\n background: rgba(255, 255, 255, 0.05);\n border-radius: 0.375rem;\n padding: 0.5rem 0.625rem;\n margin-bottom: 0.5rem;\n font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;\n font-size: 0.6875rem;\n line-height: 1.5;\n}\n\n.styles-module__styleLine___1YQiD {\n color: rgba(255, 255, 255, 0.85);\n word-break: break-word;\n}\n\n.styles-module__styleProperty___84L1i {\n color: #c792ea;\n}\n\n.styles-module__styleValue___q51-h {\n color: rgba(255, 255, 255, 0.85);\n}\n\n.styles-module__timestamp___Dtpsv {\n font-size: 0.625rem;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.35);\n font-variant-numeric: tabular-nums;\n margin-left: 0.5rem;\n flex-shrink: 0;\n}\n\n.styles-module__quote___mcMmQ {\n font-size: 12px;\n font-style: italic;\n color: rgba(255, 255, 255, 0.6);\n margin-bottom: 0.5rem;\n padding: 0.4rem 0.5rem;\n background: rgba(255, 255, 255, 0.05);\n border-radius: 0.25rem;\n line-height: 1.45;\n}\n\n.styles-module__textarea___jrSae {\n box-sizing: border-box;\n width: 100%;\n padding: 0.5rem 0.625rem;\n font-size: 0.8125rem;\n font-family: inherit;\n background: rgba(255, 255, 255, 0.05);\n color: #fff;\n border: 1px solid rgba(255, 255, 255, 0.15);\n border-radius: 8px;\n resize: none;\n outline: none;\n transition: border-color 0.15s ease;\n}\n.styles-module__textarea___jrSae:focus {\n border-color: var(--ui-sniper-color-blue);\n}\n.styles-module__textarea___jrSae.styles-module__green___99l3h:focus {\n border-color: var(--ui-sniper-color-green);\n}\n.styles-module__textarea___jrSae::placeholder {\n color: rgba(255, 255, 255, 0.35);\n}\n.styles-module__textarea___jrSae::-webkit-scrollbar {\n width: 6px;\n}\n.styles-module__textarea___jrSae::-webkit-scrollbar-track {\n background: transparent;\n}\n.styles-module__textarea___jrSae::-webkit-scrollbar-thumb {\n background: rgba(255, 255, 255, 0.2);\n border-radius: 3px;\n}\n\n.styles-module__actions___D6x3f {\n display: flex;\n justify-content: flex-end;\n gap: 0.375rem;\n margin-top: 0.5rem;\n}\n\n.styles-module__cancel___hRjnL,\n.styles-module__submit___K-mIR {\n padding: 0.4rem 0.875rem;\n font-size: 0.75rem;\n font-weight: 500;\n border-radius: 1rem;\n border: none;\n cursor: pointer;\n transition: background-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;\n}\n\n.styles-module__cancel___hRjnL {\n background: transparent;\n color: rgba(255, 255, 255, 0.5);\n}\n.styles-module__cancel___hRjnL:hover {\n background: rgba(255, 255, 255, 0.1);\n color: rgba(255, 255, 255, 0.8);\n}\n\n.styles-module__submit___K-mIR {\n color: white;\n}\n.styles-module__submit___K-mIR:hover:not(:disabled) {\n filter: brightness(0.9);\n}\n.styles-module__submit___K-mIR:disabled {\n cursor: not-allowed;\n}\n\n.styles-module__deleteWrapper___oSjdo {\n margin-right: auto;\n}\n\n.styles-module__deleteButton___4VuAE {\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border-radius: 50%;\n border: none;\n background: transparent;\n color: rgba(255, 255, 255, 0.4);\n transition: background-color 0.15s ease, color 0.15s ease, transform 0.1s ease;\n}\n.styles-module__deleteButton___4VuAE:hover {\n background-color: color-mix(in srgb, var(--ui-sniper-color-red) 25%, transparent);\n color: var(--ui-sniper-color-red);\n}\n.styles-module__deleteButton___4VuAE:active {\n transform: scale(0.92);\n}\n\n.styles-module__light___6AaSQ.styles-module__popup___IhzrD {\n background: #fff;\n box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.06);\n}\n.styles-module__light___6AaSQ .styles-module__element___fTV2z {\n color: rgba(0, 0, 0, 0.6);\n}\n.styles-module__light___6AaSQ .styles-module__timestamp___Dtpsv {\n color: rgba(0, 0, 0, 0.4);\n}\n.styles-module__light___6AaSQ .styles-module__chevron___ZZJlR {\n color: rgba(0, 0, 0, 0.4);\n}\n.styles-module__light___6AaSQ .styles-module__stylesBlock___VfQKn {\n background: rgba(0, 0, 0, 0.03);\n}\n.styles-module__light___6AaSQ .styles-module__styleLine___1YQiD {\n color: rgba(0, 0, 0, 0.75);\n}\n.styles-module__light___6AaSQ .styles-module__styleProperty___84L1i {\n color: #7c3aed;\n}\n.styles-module__light___6AaSQ .styles-module__styleValue___q51-h {\n color: rgba(0, 0, 0, 0.75);\n}\n.styles-module__light___6AaSQ .styles-module__quote___mcMmQ {\n color: rgba(0, 0, 0, 0.55);\n background: rgba(0, 0, 0, 0.04);\n}\n.styles-module__light___6AaSQ .styles-module__textarea___jrSae {\n background: rgba(0, 0, 0, 0.03);\n color: #1a1a1a;\n border-color: rgba(0, 0, 0, 0.12);\n}\n.styles-module__light___6AaSQ .styles-module__textarea___jrSae::placeholder {\n color: rgba(0, 0, 0, 0.4);\n}\n.styles-module__light___6AaSQ .styles-module__textarea___jrSae::-webkit-scrollbar-thumb {\n background: rgba(0, 0, 0, 0.15);\n}\n.styles-module__light___6AaSQ .styles-module__cancel___hRjnL {\n color: rgba(0, 0, 0, 0.5);\n}\n.styles-module__light___6AaSQ .styles-module__cancel___hRjnL:hover {\n background: rgba(0, 0, 0, 0.06);\n color: rgba(0, 0, 0, 0.75);\n}\n.styles-module__light___6AaSQ .styles-module__deleteButton___4VuAE {\n color: rgba(0, 0, 0, 0.4);\n}\n.styles-module__light___6AaSQ .styles-module__deleteButton___4VuAE:hover {\n background-color: color-mix(in srgb, var(--ui-sniper-color-red) 25%, transparent);\n color: var(--ui-sniper-color-red);\n}';
|
|
96
|
-
var classNames = { "popup": "styles-module__popup___IhzrD", "enter": "styles-module__enter___L7U7N", "popupEnter": "styles-module__popupEnter___AuQDN", "entered": "styles-module__entered___COX-w", "exit": "styles-module__exit___5eGjE", "popupExit": "styles-module__popupExit___JJKQX", "shake": "styles-module__shake___jdbWe", "header": "styles-module__header___wWsSi", "element": "styles-module__element___fTV2z", "headerToggle": "styles-module__headerToggle___WpW0b", "chevron": "styles-module__chevron___ZZJlR", "expanded": "styles-module__expanded___2Hxgv", "stylesWrapper": "styles-module__stylesWrapper___pnHgy", "stylesInner": "styles-module__stylesInner___YYZe2", "stylesBlock": "styles-module__stylesBlock___VfQKn", "styleLine": "styles-module__styleLine___1YQiD", "styleProperty": "styles-module__styleProperty___84L1i", "styleValue": "styles-module__styleValue___q51-h", "timestamp": "styles-module__timestamp___Dtpsv", "quote": "styles-module__quote___mcMmQ", "textarea": "styles-module__textarea___jrSae", "green": "styles-module__green___99l3h", "actions": "styles-module__actions___D6x3f", "cancel": "styles-module__cancel___hRjnL", "submit": "styles-module__submit___K-mIR", "deleteWrapper": "styles-module__deleteWrapper___oSjdo", "deleteButton": "styles-module__deleteButton___4VuAE", "light": "styles-module__light___6AaSQ" };
|
|
96
|
+
var css = '.styles-module__popup___IhzrD svg[fill=none] {\n fill: none !important;\n}\n.styles-module__popup___IhzrD svg[fill=none] :not([fill]) {\n fill: none !important;\n}\n\n@keyframes styles-module__popupEnter___AuQDN {\n from {\n opacity: 0;\n transform: translateX(-50%) scale(0.95) translateY(4px);\n }\n to {\n opacity: 1;\n transform: translateX(-50%) scale(1) translateY(0);\n }\n}\n@keyframes styles-module__popupExit___JJKQX {\n from {\n opacity: 1;\n transform: translateX(-50%) scale(1) translateY(0);\n }\n to {\n opacity: 0;\n transform: translateX(-50%) scale(0.95) translateY(4px);\n }\n}\n@keyframes styles-module__shake___jdbWe {\n 0%, 100% {\n transform: translateX(-50%) scale(1) translateY(0) translateX(0);\n }\n 20% {\n transform: translateX(-50%) scale(1) translateY(0) translateX(-3px);\n }\n 40% {\n transform: translateX(-50%) scale(1) translateY(0) translateX(3px);\n }\n 60% {\n transform: translateX(-50%) scale(1) translateY(0) translateX(-2px);\n }\n 80% {\n transform: translateX(-50%) scale(1) translateY(0) translateX(2px);\n }\n}\n.styles-module__popup___IhzrD {\n position: fixed;\n transform: translateX(-50%);\n width: 280px;\n padding: 0.75rem 1rem 14px;\n background: #1a1a1a;\n border-radius: 16px;\n box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.08);\n z-index: 100001;\n font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n will-change: transform, opacity;\n max-height: calc(100vh - 40px);\n overflow-y: auto;\n opacity: 0;\n}\n.styles-module__popup___IhzrD.styles-module__enter___L7U7N {\n animation: styles-module__popupEnter___AuQDN 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;\n}\n.styles-module__popup___IhzrD.styles-module__entered___COX-w {\n opacity: 1;\n transform: translateX(-50%) scale(1) translateY(0);\n}\n.styles-module__popup___IhzrD.styles-module__exit___5eGjE {\n animation: styles-module__popupExit___JJKQX 0.15s ease-in forwards;\n}\n.styles-module__popup___IhzrD.styles-module__entered___COX-w.styles-module__shake___jdbWe {\n animation: styles-module__shake___jdbWe 0.25s ease-out;\n}\n\n.styles-module__header___wWsSi {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 0.5625rem;\n}\n\n.styles-module__element___fTV2z {\n font-size: 0.75rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.5);\n max-width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n flex: 1;\n}\n\n.styles-module__headerToggle___WpW0b {\n display: flex;\n align-items: center;\n gap: 0.25rem;\n background: none;\n border: none;\n padding: 0;\n cursor: pointer;\n flex: 1;\n min-width: 0;\n text-align: left;\n}\n.styles-module__headerToggle___WpW0b .styles-module__element___fTV2z {\n flex: 1;\n}\n\n.styles-module__chevron___ZZJlR {\n color: rgba(255, 255, 255, 0.5);\n transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);\n flex-shrink: 0;\n}\n.styles-module__chevron___ZZJlR.styles-module__expanded___2Hxgv {\n transform: rotate(90deg);\n}\n\n.styles-module__breadcrumbs___YsPav {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 0.125rem;\n font-size: 0.6875rem;\n color: rgba(255, 255, 255, 0.4);\n flex: 1;\n}\n\n.styles-module__breadcrumbCrumb___yXezw {\n background: none;\n border: none;\n padding: 0;\n margin: 0;\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n cursor: pointer;\n transition: color 0.15s ease;\n}\n.styles-module__breadcrumbCrumb___yXezw:hover {\n color: rgba(255, 255, 255, 0.8);\n text-decoration: underline;\n}\n.styles-module__breadcrumbCrumb___yXezw.styles-module__activeCrumb___ZYB1j {\n color: rgba(255, 255, 255, 0.9);\n font-weight: 500;\n}\n\n.styles-module__breadcrumbSeparator___YtUz4 {\n opacity: 0.5;\n margin: 0 0.125rem;\n}\n\n.styles-module__stylesWrapper___pnHgy {\n display: grid;\n grid-template-rows: 0fr;\n transition: grid-template-rows 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n}\n.styles-module__stylesWrapper___pnHgy.styles-module__expanded___2Hxgv {\n grid-template-rows: 1fr;\n}\n\n.styles-module__stylesInner___YYZe2 {\n overflow: hidden;\n}\n\n.styles-module__stylesBlock___VfQKn {\n background: rgba(255, 255, 255, 0.05);\n border-radius: 0.375rem;\n padding: 0.5rem 0.625rem;\n margin-bottom: 0.5rem;\n font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;\n font-size: 0.6875rem;\n line-height: 1.5;\n}\n\n.styles-module__styleLine___1YQiD {\n color: rgba(255, 255, 255, 0.85);\n word-break: break-word;\n}\n\n.styles-module__styleProperty___84L1i {\n color: #c792ea;\n}\n\n.styles-module__styleValue___q51-h {\n color: rgba(255, 255, 255, 0.85);\n}\n\n.styles-module__timestamp___Dtpsv {\n font-size: 0.625rem;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.35);\n font-variant-numeric: tabular-nums;\n margin-left: 0.5rem;\n flex-shrink: 0;\n}\n\n.styles-module__messageNumber___TpnX9 {\n font-size: 0.75rem;\n font-weight: 600;\n color: var(--ui-sniper-color-accent, #3c82f7);\n margin-right: 0.5rem;\n flex-shrink: 0;\n}\n\n.styles-module__screenshot___7dYA7 {\n margin-bottom: 0.5rem;\n border-radius: 0.375rem;\n overflow: hidden;\n background: rgba(0, 0, 0, 0.2);\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.styles-module__screenshot___7dYA7 img {\n max-width: 100%;\n max-height: 120px;\n object-fit: contain;\n display: block;\n}\n\n.styles-module__quote___mcMmQ {\n font-size: 12px;\n font-style: italic;\n color: rgba(255, 255, 255, 0.6);\n margin-bottom: 0.5rem;\n padding: 0.4rem 0.5rem;\n background: rgba(255, 255, 255, 0.05);\n border-radius: 0.25rem;\n line-height: 1.45;\n}\n\n.styles-module__textarea___jrSae {\n box-sizing: border-box;\n width: 100%;\n padding: 0.5rem 0.625rem;\n font-size: 0.8125rem;\n font-family: inherit;\n background: rgba(255, 255, 255, 0.05);\n color: #fff;\n border: 1px solid rgba(255, 255, 255, 0.15);\n border-radius: 8px;\n resize: none;\n outline: none;\n transition: border-color 0.15s ease;\n}\n.styles-module__textarea___jrSae:focus {\n border-color: var(--ui-sniper-color-blue);\n}\n.styles-module__textarea___jrSae.styles-module__green___99l3h:focus {\n border-color: var(--ui-sniper-color-green);\n}\n.styles-module__textarea___jrSae::placeholder {\n color: rgba(255, 255, 255, 0.35);\n}\n.styles-module__textarea___jrSae::-webkit-scrollbar {\n width: 6px;\n}\n.styles-module__textarea___jrSae::-webkit-scrollbar-track {\n background: transparent;\n}\n.styles-module__textarea___jrSae::-webkit-scrollbar-thumb {\n background: rgba(255, 255, 255, 0.2);\n border-radius: 3px;\n}\n\n.styles-module__actions___D6x3f {\n display: flex;\n justify-content: flex-end;\n gap: 0.375rem;\n margin-top: 0.5rem;\n}\n\n.styles-module__cancel___hRjnL,\n.styles-module__submit___K-mIR {\n padding: 0.4rem 0.875rem;\n font-size: 0.75rem;\n font-weight: 500;\n border-radius: 1rem;\n border: none;\n cursor: pointer;\n transition: background-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;\n}\n\n.styles-module__cancel___hRjnL {\n background: transparent;\n color: rgba(255, 255, 255, 0.5);\n}\n.styles-module__cancel___hRjnL:hover {\n background: rgba(255, 255, 255, 0.1);\n color: rgba(255, 255, 255, 0.8);\n}\n\n.styles-module__submit___K-mIR {\n color: white;\n}\n.styles-module__submit___K-mIR:hover:not(:disabled) {\n filter: brightness(0.9);\n}\n.styles-module__submit___K-mIR:disabled {\n cursor: not-allowed;\n}\n\n.styles-module__deleteWrapper___oSjdo {\n margin-right: auto;\n}\n\n.styles-module__deleteButton___4VuAE {\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border-radius: 50%;\n border: none;\n background: transparent;\n color: rgba(255, 255, 255, 0.4);\n transition: background-color 0.15s ease, color 0.15s ease, transform 0.1s ease;\n}\n.styles-module__deleteButton___4VuAE:hover {\n background-color: color-mix(in srgb, var(--ui-sniper-color-red) 25%, transparent);\n color: var(--ui-sniper-color-red);\n}\n.styles-module__deleteButton___4VuAE:active {\n transform: scale(0.92);\n}\n\n.styles-module__light___6AaSQ.styles-module__popup___IhzrD {\n background: #fff;\n box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.06);\n}\n.styles-module__light___6AaSQ .styles-module__element___fTV2z {\n color: rgba(0, 0, 0, 0.6);\n}\n.styles-module__light___6AaSQ .styles-module__timestamp___Dtpsv {\n color: rgba(0, 0, 0, 0.4);\n}\n.styles-module__light___6AaSQ .styles-module__chevron___ZZJlR {\n color: rgba(0, 0, 0, 0.4);\n}\n.styles-module__light___6AaSQ .styles-module__breadcrumbs___YsPav {\n color: rgba(0, 0, 0, 0.4);\n}\n.styles-module__light___6AaSQ .styles-module__breadcrumbs___YsPav .styles-module__breadcrumbCrumb___yXezw:hover {\n color: rgba(0, 0, 0, 0.8);\n}\n.styles-module__light___6AaSQ .styles-module__breadcrumbs___YsPav .styles-module__breadcrumbCrumb___yXezw.styles-module__activeCrumb___ZYB1j {\n color: rgba(0, 0, 0, 0.9);\n}\n.styles-module__light___6AaSQ .styles-module__stylesBlock___VfQKn {\n background: rgba(0, 0, 0, 0.03);\n}\n.styles-module__light___6AaSQ .styles-module__styleLine___1YQiD {\n color: rgba(0, 0, 0, 0.75);\n}\n.styles-module__light___6AaSQ .styles-module__styleProperty___84L1i {\n color: #7c3aed;\n}\n.styles-module__light___6AaSQ .styles-module__styleValue___q51-h {\n color: rgba(0, 0, 0, 0.75);\n}\n.styles-module__light___6AaSQ .styles-module__messageNumber___TpnX9 {\n color: var(--ui-sniper-color-blue, #2563eb);\n}\n.styles-module__light___6AaSQ .styles-module__screenshot___7dYA7 {\n background: rgba(0, 0, 0, 0.05);\n}\n.styles-module__light___6AaSQ .styles-module__quote___mcMmQ {\n color: rgba(0, 0, 0, 0.55);\n background: rgba(0, 0, 0, 0.04);\n}\n.styles-module__light___6AaSQ .styles-module__textarea___jrSae {\n background: rgba(0, 0, 0, 0.03);\n color: #1a1a1a;\n border-color: rgba(0, 0, 0, 0.12);\n}\n.styles-module__light___6AaSQ .styles-module__textarea___jrSae::placeholder {\n color: rgba(0, 0, 0, 0.4);\n}\n.styles-module__light___6AaSQ .styles-module__textarea___jrSae::-webkit-scrollbar-thumb {\n background: rgba(0, 0, 0, 0.15);\n}\n.styles-module__light___6AaSQ .styles-module__cancel___hRjnL {\n color: rgba(0, 0, 0, 0.5);\n}\n.styles-module__light___6AaSQ .styles-module__cancel___hRjnL:hover {\n background: rgba(0, 0, 0, 0.06);\n color: rgba(0, 0, 0, 0.75);\n}\n.styles-module__light___6AaSQ .styles-module__deleteButton___4VuAE {\n color: rgba(0, 0, 0, 0.4);\n}\n.styles-module__light___6AaSQ .styles-module__deleteButton___4VuAE:hover {\n background-color: color-mix(in srgb, var(--ui-sniper-color-red) 25%, transparent);\n color: var(--ui-sniper-color-red);\n}';
|
|
97
|
+
var classNames = { "popup": "styles-module__popup___IhzrD", "enter": "styles-module__enter___L7U7N", "popupEnter": "styles-module__popupEnter___AuQDN", "entered": "styles-module__entered___COX-w", "exit": "styles-module__exit___5eGjE", "popupExit": "styles-module__popupExit___JJKQX", "shake": "styles-module__shake___jdbWe", "header": "styles-module__header___wWsSi", "element": "styles-module__element___fTV2z", "headerToggle": "styles-module__headerToggle___WpW0b", "chevron": "styles-module__chevron___ZZJlR", "expanded": "styles-module__expanded___2Hxgv", "breadcrumbs": "styles-module__breadcrumbs___YsPav", "breadcrumbCrumb": "styles-module__breadcrumbCrumb___yXezw", "activeCrumb": "styles-module__activeCrumb___ZYB1j", "breadcrumbSeparator": "styles-module__breadcrumbSeparator___YtUz4", "stylesWrapper": "styles-module__stylesWrapper___pnHgy", "stylesInner": "styles-module__stylesInner___YYZe2", "stylesBlock": "styles-module__stylesBlock___VfQKn", "styleLine": "styles-module__styleLine___1YQiD", "styleProperty": "styles-module__styleProperty___84L1i", "styleValue": "styles-module__styleValue___q51-h", "timestamp": "styles-module__timestamp___Dtpsv", "messageNumber": "styles-module__messageNumber___TpnX9", "screenshot": "styles-module__screenshot___7dYA7", "quote": "styles-module__quote___mcMmQ", "textarea": "styles-module__textarea___jrSae", "green": "styles-module__green___99l3h", "actions": "styles-module__actions___D6x3f", "cancel": "styles-module__cancel___hRjnL", "submit": "styles-module__submit___K-mIR", "deleteWrapper": "styles-module__deleteWrapper___oSjdo", "deleteButton": "styles-module__deleteButton___4VuAE", "light": "styles-module__light___6AaSQ" };
|
|
97
98
|
if (typeof document !== "undefined") {
|
|
98
99
|
let style = document.getElementById("feedback-tool-styles-annotation-popup-css-styles");
|
|
99
100
|
if (!style) {
|
|
@@ -718,6 +719,11 @@ var IconPauseAlt = ({ size = 16 }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx
|
|
|
718
719
|
}
|
|
719
720
|
)
|
|
720
721
|
] });
|
|
722
|
+
var IconTarget = ({ size = 24 }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", children: [
|
|
723
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("circle", { cx: "12", cy: "12", r: "8", stroke: "currentColor", strokeWidth: "1.5" }),
|
|
724
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("circle", { cx: "12", cy: "12", r: "2", fill: "currentColor" }),
|
|
725
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M12 2V6M12 18V22M2 12H6M18 12H22", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round" })
|
|
726
|
+
] });
|
|
721
727
|
var IconPause = ({ size = 24 }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", children: [
|
|
722
728
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
723
729
|
"path",
|
|
@@ -1442,7 +1448,11 @@ var AnnotationPopupCSS = (0, import_react.forwardRef)(
|
|
|
1442
1448
|
accentColor = "#3c82f7",
|
|
1443
1449
|
isExiting = false,
|
|
1444
1450
|
lightMode = false,
|
|
1445
|
-
computedStyles
|
|
1451
|
+
computedStyles,
|
|
1452
|
+
targetElement,
|
|
1453
|
+
onRefineTarget,
|
|
1454
|
+
messageNumber,
|
|
1455
|
+
screenshotData
|
|
1446
1456
|
}, ref) {
|
|
1447
1457
|
const [text, setText] = (0, import_react.useState)(initialValue);
|
|
1448
1458
|
const [isShaking, setIsShaking] = (0, import_react.useState)(false);
|
|
@@ -1453,6 +1463,23 @@ var AnnotationPopupCSS = (0, import_react.forwardRef)(
|
|
|
1453
1463
|
const popupRef = (0, import_react.useRef)(null);
|
|
1454
1464
|
const cancelTimerRef = (0, import_react.useRef)(null);
|
|
1455
1465
|
const shakeTimerRef = (0, import_react.useRef)(null);
|
|
1466
|
+
const breadcrumbs = targetElement ? (() => {
|
|
1467
|
+
const crumbs = [];
|
|
1468
|
+
let curr = targetElement;
|
|
1469
|
+
while (curr && curr !== document.body && crumbs.length < 4) {
|
|
1470
|
+
const tagName = curr.tagName.toLowerCase();
|
|
1471
|
+
let label = tagName;
|
|
1472
|
+
if (curr.id) {
|
|
1473
|
+
label += `#${curr.id}`;
|
|
1474
|
+
} else if (curr.className && typeof curr.className === "string") {
|
|
1475
|
+
const firstClass = curr.className.split(" ")[0];
|
|
1476
|
+
if (firstClass) label += `.${firstClass}`;
|
|
1477
|
+
}
|
|
1478
|
+
crumbs.unshift({ el: curr, label });
|
|
1479
|
+
curr = curr.parentElement;
|
|
1480
|
+
}
|
|
1481
|
+
return crumbs;
|
|
1482
|
+
})() : [];
|
|
1456
1483
|
(0, import_react.useEffect)(() => {
|
|
1457
1484
|
if (isExiting && animState !== "exit") {
|
|
1458
1485
|
setAnimState("exit");
|
|
@@ -1567,10 +1594,52 @@ var AnnotationPopupCSS = (0, import_react.forwardRef)(
|
|
|
1567
1594
|
)
|
|
1568
1595
|
}
|
|
1569
1596
|
),
|
|
1570
|
-
/* @__PURE__ */ (0, import_jsx_runtime2.
|
|
1597
|
+
messageNumber !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("span", { className: styles_module_default.messageNumber, children: [
|
|
1598
|
+
"#",
|
|
1599
|
+
messageNumber
|
|
1600
|
+
] }),
|
|
1601
|
+
breadcrumbs.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: styles_module_default.breadcrumbs, children: breadcrumbs.map((crumb, i) => /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("span", { children: [
|
|
1602
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
1603
|
+
"button",
|
|
1604
|
+
{
|
|
1605
|
+
type: "button",
|
|
1606
|
+
className: `${styles_module_default.breadcrumbCrumb} ${i === breadcrumbs.length - 1 ? styles_module_default.activeCrumb : ""}`,
|
|
1607
|
+
onClick: (e) => {
|
|
1608
|
+
e.stopPropagation();
|
|
1609
|
+
if (crumb.el !== targetElement && onRefineTarget) {
|
|
1610
|
+
onRefineTarget(crumb.el);
|
|
1611
|
+
}
|
|
1612
|
+
},
|
|
1613
|
+
children: crumb.label
|
|
1614
|
+
}
|
|
1615
|
+
),
|
|
1616
|
+
i < breadcrumbs.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { className: styles_module_default.breadcrumbSeparator, children: "/" })
|
|
1617
|
+
] }, i)) }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { className: styles_module_default.element, children: element })
|
|
1571
1618
|
]
|
|
1572
1619
|
}
|
|
1573
|
-
) : /* @__PURE__ */ (0, import_jsx_runtime2.
|
|
1620
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_jsx_runtime2.Fragment, { children: [
|
|
1621
|
+
messageNumber !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("span", { className: styles_module_default.messageNumber, children: [
|
|
1622
|
+
"#",
|
|
1623
|
+
messageNumber
|
|
1624
|
+
] }),
|
|
1625
|
+
breadcrumbs.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: styles_module_default.breadcrumbs, children: breadcrumbs.map((crumb, i) => /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("span", { children: [
|
|
1626
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
1627
|
+
"button",
|
|
1628
|
+
{
|
|
1629
|
+
type: "button",
|
|
1630
|
+
className: `${styles_module_default.breadcrumbCrumb} ${i === breadcrumbs.length - 1 ? styles_module_default.activeCrumb : ""}`,
|
|
1631
|
+
onClick: (e) => {
|
|
1632
|
+
e.stopPropagation();
|
|
1633
|
+
if (crumb.el !== targetElement && onRefineTarget) {
|
|
1634
|
+
onRefineTarget(crumb.el);
|
|
1635
|
+
}
|
|
1636
|
+
},
|
|
1637
|
+
children: crumb.label
|
|
1638
|
+
}
|
|
1639
|
+
),
|
|
1640
|
+
i < breadcrumbs.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { className: styles_module_default.breadcrumbSeparator, children: "/" })
|
|
1641
|
+
] }, i)) }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { className: styles_module_default.element, children: element })
|
|
1642
|
+
] }),
|
|
1574
1643
|
timestamp && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { className: styles_module_default.timestamp, children: timestamp })
|
|
1575
1644
|
] }),
|
|
1576
1645
|
computedStyles && Object.keys(computedStyles).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: `${styles_module_default.stylesWrapper} ${isStylesExpanded ? styles_module_default.expanded : ""}`, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: styles_module_default.stylesInner, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: styles_module_default.stylesBlock, children: Object.entries(computedStyles).map(([key, value]) => /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: styles_module_default.styleLine, children: [
|
|
@@ -1579,6 +1648,7 @@ var AnnotationPopupCSS = (0, import_react.forwardRef)(
|
|
|
1579
1648
|
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { className: styles_module_default.styleValue, children: value }),
|
|
1580
1649
|
";"
|
|
1581
1650
|
] }, key)) }) }) }),
|
|
1651
|
+
screenshotData && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: styles_module_default.screenshot, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("img", { src: screenshotData, alt: "Annotation screenshot" }) }),
|
|
1582
1652
|
selectedText && /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: styles_module_default.quote, children: [
|
|
1583
1653
|
"\u201C",
|
|
1584
1654
|
selectedText.slice(0, 80),
|
|
@@ -2703,7 +2773,7 @@ function Skeleton({ type, width, height, text }) {
|
|
|
2703
2773
|
}
|
|
2704
2774
|
|
|
2705
2775
|
// src/components/design-mode/styles.module.scss
|
|
2706
|
-
var css4 = 'svg[fill=none] {\n fill: none !important;\n}\n\n.styles-module__overlayExiting___iEmYr {\n opacity: 0 !important;\n transition: opacity 0.25s ease !important;\n pointer-events: none !important;\n}\n\n.styles-module__overlay___aWh-q {\n position: fixed;\n inset: 0;\n z-index: 99995;\n pointer-events: auto;\n cursor: default;\n animation: styles-module__overlayFadeIn___aECVy 0.15s ease;\n --agd-stroke: rgba(59, 130, 246, 0.35);\n --agd-fill: rgba(59, 130, 246, 0.06);\n --agd-bar: rgba(59, 130, 246, 0.18);\n --agd-bar-strong: rgba(59, 130, 246, 0.28);\n --agd-text-3: rgba(255, 255, 255, 0.6);\n --agd-surface: #fff;\n}\n.styles-module__overlay___aWh-q.styles-module__light___ORIft {\n --agd-surface: #fff;\n}\n.styles-module__overlay___aWh-q:not(.styles-module__light___ORIft) {\n --agd-surface: #141414;\n}\n.styles-module__overlay___aWh-q.styles-module__wireframe___itvQU {\n --agd-stroke: rgba(249, 115, 22, 0.35);\n --agd-fill: rgba(249, 115, 22, 0.06);\n --agd-bar: rgba(249, 115, 22, 0.18);\n --agd-bar-strong: rgba(249, 115, 22, 0.28);\n}\n.styles-module__overlay___aWh-q.styles-module__placing___45yD8 {\n cursor: crosshair;\n}\n.styles-module__overlay___aWh-q.styles-module__passthrough___xaFeE {\n pointer-events: none;\n}\n\n.styles-module__blankCanvas___t2Eue {\n position: fixed;\n inset: 0;\n z-index: 99994;\n background: #fff;\n opacity: 0;\n pointer-events: none;\n transition: opacity 0.25s ease;\n}\n.styles-module__blankCanvas___t2Eue.styles-module__visible___OKKqX {\n opacity: var(--canvas-opacity, 1);\n pointer-events: auto;\n}\n.styles-module__blankCanvas___t2Eue::after {\n content: "";\n position: absolute;\n inset: 0;\n background-image: radial-gradient(circle, rgba(0, 0, 0, 0.08) 1px, transparent 1px);\n background-size: 24px 24px;\n background-position: 12px 12px;\n pointer-events: none;\n transition: opacity 0.2s ease;\n}\n.styles-module__blankCanvas___t2Eue.styles-module__gridActive___OZ-cf::after {\n opacity: 1;\n background-image: radial-gradient(circle, rgba(0, 0, 0, 0.22) 1px, transparent 1px);\n}\n\n.styles-module__paletteHeader___-Q5gQ {\n padding: 0 1rem 0.375rem;\n}\n\n.styles-module__paletteHeaderTitle___oHqZC {\n font-size: 0.8125rem;\n font-weight: 500;\n color: #fff;\n letter-spacing: -0.0094em;\n}\n.styles-module__light___ORIft .styles-module__paletteHeaderTitle___oHqZC {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.styles-module__paletteHeaderDesc___6i74T {\n font-size: 0.6875rem;\n font-weight: 300;\n color: rgba(255, 255, 255, 0.45);\n margin-top: 2px;\n line-height: 14px;\n}\n.styles-module__light___ORIft .styles-module__paletteHeaderDesc___6i74T {\n color: rgba(0, 0, 0, 0.45);\n}\n.styles-module__paletteHeaderDesc___6i74T a {\n color: rgba(255, 255, 255, 0.8);\n text-decoration: underline dotted;\n text-decoration-color: rgba(255, 255, 255, 0.2);\n text-underline-offset: 2px;\n transition: color 0.15s ease;\n}\n.styles-module__paletteHeaderDesc___6i74T a:hover {\n color: #fff;\n}\n.styles-module__light___ORIft .styles-module__paletteHeaderDesc___6i74T a {\n color: rgba(0, 0, 0, 0.6);\n text-decoration-color: rgba(0, 0, 0, 0.2);\n}\n.styles-module__light___ORIft .styles-module__paletteHeaderDesc___6i74T a:hover {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.styles-module__wireframePurposeWrap___To-tS {\n display: grid;\n grid-template-rows: 1fr;\n transition: grid-template-rows 0.2s ease, opacity 0.15s ease;\n opacity: 1;\n}\n.styles-module__wireframePurposeWrap___To-tS.styles-module__collapsed___Ms9vS {\n grid-template-rows: 0fr;\n opacity: 0;\n}\n\n.styles-module__wireframePurposeInner___Lrahs {\n overflow: hidden;\n}\n\n.styles-module__wireframePurposeInput___7EtBN {\n display: block;\n width: calc(100% - 2rem);\n margin: 0.25rem 1rem 0.375rem;\n padding: 0.375rem 0.5rem;\n font-size: 0.8125rem;\n font-family: inherit;\n color: rgba(255, 255, 255, 0.85);\n background: rgba(255, 255, 255, 0.03);\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 0.375rem;\n resize: none;\n outline: none;\n transition: border-color 0.15s ease;\n letter-spacing: -0.0094em;\n}\n.styles-module__wireframePurposeInput___7EtBN::placeholder {\n color: rgba(255, 255, 255, 0.3);\n}\n.styles-module__wireframePurposeInput___7EtBN:focus {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgba(255, 255, 255, 0.05);\n}\n.styles-module__light___ORIft .styles-module__wireframePurposeInput___7EtBN {\n color: rgba(0, 0, 0, 0.7);\n background: rgba(0, 0, 0, 0.03);\n border-color: rgba(0, 0, 0, 0.1);\n}\n.styles-module__light___ORIft .styles-module__wireframePurposeInput___7EtBN::placeholder {\n color: rgba(0, 0, 0, 0.3);\n}\n.styles-module__light___ORIft .styles-module__wireframePurposeInput___7EtBN:focus {\n border-color: rgba(0, 0, 0, 0.25);\n background: rgba(0, 0, 0, 0.05);\n}\n\n.styles-module__canvasToggle___-QqSy {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.375rem;\n margin: 0.25rem 1rem 0.25rem;\n padding: 0.375rem 0.5rem;\n border-radius: 0.5rem;\n cursor: pointer;\n border: 1px dashed rgba(255, 255, 255, 0.1);\n background: transparent;\n transition: background 0.15s ease, border-color 0.15s ease;\n}\n.styles-module__canvasToggle___-QqSy:hover {\n background: rgba(255, 255, 255, 0.04);\n border-color: rgba(255, 255, 255, 0.15);\n}\n.styles-module__canvasToggle___-QqSy.styles-module__active___hosp7 {\n background: #f97316;\n border-color: transparent;\n border-style: solid;\n box-shadow: none;\n}\n.styles-module__light___ORIft .styles-module__canvasToggle___-QqSy {\n border-color: rgba(0, 0, 0, 0.08);\n}\n.styles-module__light___ORIft .styles-module__canvasToggle___-QqSy:hover {\n background: rgba(0, 0, 0, 0.02);\n border-color: rgba(0, 0, 0, 0.12);\n}\n.styles-module__light___ORIft .styles-module__canvasToggle___-QqSy.styles-module__active___hosp7 {\n background: #f97316;\n border-color: transparent;\n border-style: solid;\n box-shadow: none;\n}\n\n.styles-module__canvasToggleIcon___7pJ82 {\n width: 14px;\n height: 14px;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: rgba(255, 255, 255, 0.35);\n}\n.styles-module__active___hosp7 .styles-module__canvasToggleIcon___7pJ82 {\n color: rgba(255, 255, 255, 0.85);\n}\n.styles-module__light___ORIft .styles-module__canvasToggleIcon___7pJ82 {\n color: rgba(0, 0, 0, 0.25);\n}\n.styles-module__light___ORIft .styles-module__active___hosp7 .styles-module__canvasToggleIcon___7pJ82 {\n color: rgba(255, 255, 255, 0.85);\n}\n\n.styles-module__canvasToggleLabel___OanpY {\n font-size: 0.8125rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.6);\n letter-spacing: -0.0094em;\n}\n.styles-module__active___hosp7 .styles-module__canvasToggleLabel___OanpY {\n color: #fff;\n}\n.styles-module__light___ORIft .styles-module__canvasToggleLabel___OanpY {\n color: rgba(0, 0, 0, 0.5);\n}\n.styles-module__light___ORIft .styles-module__active___hosp7 .styles-module__canvasToggleLabel___OanpY {\n color: #fff;\n}\n\n.styles-module__canvasPurposeWrap___hj6zk {\n display: grid;\n grid-template-rows: 1fr;\n transition: grid-template-rows 0.2s ease, opacity 0.15s ease;\n opacity: 1;\n}\n.styles-module__canvasPurposeWrap___hj6zk.styles-module__collapsed___Ms9vS {\n grid-template-rows: 0fr;\n opacity: 0;\n}\n\n.styles-module__canvasPurposeInner___VWiyu {\n overflow: hidden;\n}\n\n.styles-module__canvasPurposeToggle___byDH2 {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n cursor: pointer;\n margin: 0.375rem 1rem 0.375rem 1.1875rem;\n}\n.styles-module__canvasPurposeToggle___byDH2 input[type=checkbox] {\n position: absolute;\n opacity: 0;\n width: 0;\n height: 0;\n}\n\n.styles-module__canvasPurposeCheck___xqd7l {\n position: relative;\n width: 14px;\n height: 14px;\n border: 1px solid rgba(255, 255, 255, 0.2);\n border-radius: 4px;\n background: rgba(255, 255, 255, 0.05);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n transition: background 0.25s ease, border-color 0.25s ease;\n}\n.styles-module__canvasPurposeCheck___xqd7l svg {\n color: #1a1a1a;\n opacity: 1;\n transition: opacity 0.15s ease;\n}\n.styles-module__canvasPurposeCheck___xqd7l.styles-module__checked___-1JGH {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgb(255, 255, 255);\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeCheck___xqd7l {\n border: 1px solid rgba(0, 0, 0, 0.15);\n background: #fff;\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeCheck___xqd7l.styles-module__checked___-1JGH {\n border-color: #1a1a1a;\n background: #1a1a1a;\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeCheck___xqd7l.styles-module__checked___-1JGH svg {\n color: #fff;\n}\n\n.styles-module__canvasPurposeLabel___Zu-tD {\n font-size: 0.8125rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.5);\n letter-spacing: -0.0094em;\n display: flex;\n align-items: center;\n gap: 0.25rem;\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeLabel___Zu-tD {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__canvasPurposeHelp___jijwR {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n cursor: help;\n}\n.styles-module__canvasPurposeHelp___jijwR svg {\n color: rgba(255, 255, 255, 0.2);\n transform: translateY(2px);\n transition: color 0.15s ease;\n}\n.styles-module__canvasPurposeHelp___jijwR:hover svg {\n color: rgba(255, 255, 255, 0.5);\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeHelp___jijwR svg {\n color: rgba(0, 0, 0, 0.2);\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeHelp___jijwR:hover svg {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__placement___zcxv8 {\n position: absolute;\n border: 1.5px dashed rgba(59, 130, 246, 0.4);\n border-radius: 6px;\n background: rgba(59, 130, 246, 0.08);\n cursor: grab;\n transition: box-shadow 0.15s, border-color 0.15s, opacity 0.15s ease, transform 0.15s ease;\n user-select: none;\n pointer-events: auto;\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);\n animation: styles-module__placementEnter___TdRhf 0.25s cubic-bezier(0.34, 1.2, 0.64, 1);\n}\n.styles-module__placement___zcxv8:active {\n cursor: grabbing;\n}\n.styles-module__placement___zcxv8:hover {\n border-color: rgba(59, 130, 246, 0.5);\n background: rgba(59, 130, 246, 0.1);\n box-shadow: 0 2px 8px rgba(59, 130, 246, 0.12);\n}\n.styles-module__placement___zcxv8.styles-module__selected___6yrp6 {\n border-color: #3c82f7;\n border-style: solid;\n background: rgba(59, 130, 246, 0.1);\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15), 0 2px 8px rgba(59, 130, 246, 0.15);\n}\n.styles-module__placement___zcxv8.styles-module__selected___6yrp6:hover {\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15), 0 2px 8px rgba(59, 130, 246, 0.15);\n}\n.styles-module__wireframe___itvQU .styles-module__placement___zcxv8 {\n border-color: rgba(249, 115, 22, 0.4);\n background: rgba(249, 115, 22, 0.08);\n}\n.styles-module__wireframe___itvQU .styles-module__placement___zcxv8:hover {\n border-color: rgba(249, 115, 22, 0.5);\n background: rgba(249, 115, 22, 0.1);\n box-shadow: 0 2px 8px rgba(249, 115, 22, 0.12);\n}\n.styles-module__wireframe___itvQU .styles-module__placement___zcxv8.styles-module__selected___6yrp6 {\n border-color: #f97316;\n background: rgba(249, 115, 22, 0.1);\n box-shadow: 0 0 0 2px rgba(249, 115, 22, 0.15), 0 2px 8px rgba(249, 115, 22, 0.15);\n}\n.styles-module__wireframe___itvQU .styles-module__placement___zcxv8.styles-module__selected___6yrp6:hover {\n box-shadow: 0 0 0 2px rgba(249, 115, 22, 0.15), 0 2px 8px rgba(249, 115, 22, 0.15);\n}\n.styles-module__placement___zcxv8.styles-module__dragging___le6KZ {\n opacity: 0.85;\n z-index: 50;\n}\n.styles-module__placement___zcxv8.styles-module__exiting___YrM8F {\n opacity: 0;\n transform: scale(0.97);\n pointer-events: none;\n animation: none;\n transition: opacity 0.2s ease, transform 0.2s cubic-bezier(0.32, 0.72, 0, 1);\n}\n\n.styles-module__placementContent___f64A4 {\n width: 100%;\n height: 100%;\n overflow: hidden;\n pointer-events: none;\n}\n\n.styles-module__placementLabel___0KvWl {\n position: absolute;\n top: -18px;\n left: 0;\n font-size: 10px;\n font-weight: 600;\n color: rgba(59, 130, 246, 0.7);\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n text-shadow: 0 0 4px rgba(255, 255, 255, 0.8), 0 0 8px rgba(255, 255, 255, 0.5);\n}\n.styles-module__selected___6yrp6 .styles-module__placementLabel___0KvWl {\n color: #3c82f7;\n}\n.styles-module__wireframe___itvQU .styles-module__placementLabel___0KvWl {\n color: rgba(249, 115, 22, 0.7);\n}\n.styles-module__wireframe___itvQU .styles-module__selected___6yrp6 .styles-module__placementLabel___0KvWl {\n color: #f97316;\n}\n\n.styles-module__placementAnnotation___78pTr {\n position: absolute;\n bottom: -18px;\n left: 0;\n right: 0;\n font-weight: 450;\n color: rgba(0, 0, 0, 0.5);\n font-size: 10px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n text-shadow: 0 0 4px rgba(255, 255, 255, 0.9), 0 0 8px rgba(255, 255, 255, 0.6);\n opacity: 0;\n transform: translateY(-2px);\n transition: opacity 0.2s ease, transform 0.2s ease;\n}\n.styles-module__placementAnnotation___78pTr.styles-module__annotationVisible___mrUyA {\n opacity: 1;\n transform: translateY(0);\n}\n\n.styles-module__sectionAnnotation___aUIs0 {\n position: absolute;\n bottom: -18px;\n left: 0;\n right: 0;\n font-weight: 450;\n color: rgba(59, 130, 246, 0.6);\n font-size: 10px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n text-shadow: 0 0 4px rgba(255, 255, 255, 0.9), 0 0 8px rgba(255, 255, 255, 0.6);\n opacity: 0;\n transform: translateY(-2px);\n transition: opacity 0.2s ease, transform 0.2s ease;\n}\n.styles-module__sectionAnnotation___aUIs0.styles-module__annotationVisible___mrUyA {\n opacity: 1;\n transform: translateY(0);\n}\n\n.styles-module__handle___Ikbxm {\n position: absolute;\n width: 8px;\n height: 8px;\n background: #fff;\n border: 1.5px solid #3c82f7;\n border-radius: 2px;\n z-index: 12;\n box-shadow: 0 0 0 0.5px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.12);\n opacity: 0;\n transform: scale(0.3);\n pointer-events: none;\n will-change: opacity, transform;\n transition: opacity 0.2s ease-out, transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);\n}\n.styles-module__placement___zcxv8:hover .styles-module__handle___Ikbxm, .styles-module__sectionOutline___s0hy-:hover .styles-module__handle___Ikbxm, .styles-module__ghostOutline___po-kO:hover .styles-module__handle___Ikbxm, .styles-module__placement___zcxv8:active .styles-module__handle___Ikbxm, .styles-module__sectionOutline___s0hy-:active .styles-module__handle___Ikbxm, .styles-module__ghostOutline___po-kO:active .styles-module__handle___Ikbxm, .styles-module__selected___6yrp6 .styles-module__handle___Ikbxm {\n opacity: 1;\n transform: scale(1);\n pointer-events: auto;\n}\n.styles-module__sectionOutline___s0hy- .styles-module__handle___Ikbxm {\n border-color: inherit;\n}\n.styles-module__wireframe___itvQU .styles-module__handle___Ikbxm {\n border-color: #f97316;\n}\n\n.styles-module__handleNw___4TMIj {\n top: -4px;\n left: -4px;\n cursor: nw-resize;\n}\n\n.styles-module__handleNe___mnsTh {\n top: -4px;\n right: -4px;\n cursor: ne-resize;\n}\n\n.styles-module__handleSe___oSFnk {\n bottom: -4px;\n right: -4px;\n cursor: se-resize;\n}\n\n.styles-module__handleSw___pi--Z {\n bottom: -4px;\n left: -4px;\n cursor: sw-resize;\n}\n\n.styles-module__handleN___aBA-Q, .styles-module__handleE___0hM5u, .styles-module__handleS___JjDRv, .styles-module__handleW___ERWGQ {\n opacity: 0 !important;\n pointer-events: none !important;\n}\n\n.styles-module__edgeHandle___XxXdT {\n position: absolute;\n z-index: 11;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.styles-module__edgeHandle___XxXdT::after {\n content: "";\n position: absolute;\n border-radius: 4px;\n background: #3c82f7;\n}\n.styles-module__wireframe___itvQU .styles-module__edgeHandle___XxXdT::after {\n background: #f97316;\n}\n.styles-module__edgeHandle___XxXdT::after {\n opacity: 0;\n transition: opacity 0.1s ease, transform 0.1s ease;\n transform: scale(0.8);\n}\n.styles-module__edgeHandle___XxXdT:hover::after {\n opacity: 0.85;\n transform: scale(1);\n}\n.styles-module__edgeHandle___XxXdT svg {\n position: relative;\n z-index: 1;\n opacity: 0;\n transition: opacity 0.1s ease;\n filter: drop-shadow(0 0 2px var(--agd-surface));\n}\n.styles-module__edgeHandle___XxXdT:hover svg {\n opacity: 1;\n}\n\n.styles-module__edgeN___-JJDj, .styles-module__edgeS___66lMX {\n left: 12px;\n right: 12px;\n height: 12px;\n cursor: n-resize;\n}\n.styles-module__edgeN___-JJDj::after, .styles-module__edgeS___66lMX::after {\n width: 24px;\n height: 4px;\n}\n\n.styles-module__edgeN___-JJDj {\n top: -6px;\n}\n\n.styles-module__edgeS___66lMX {\n bottom: -6px;\n cursor: s-resize;\n}\n\n.styles-module__edgeE___1bGDa, .styles-module__edgeW___lHQNo {\n top: 12px;\n bottom: 12px;\n width: 12px;\n cursor: e-resize;\n}\n.styles-module__edgeE___1bGDa::after, .styles-module__edgeW___lHQNo::after {\n width: 4px;\n height: 24px;\n}\n\n.styles-module__edgeE___1bGDa {\n right: -6px;\n}\n\n.styles-module__edgeW___lHQNo {\n left: -6px;\n cursor: w-resize;\n}\n\n.styles-module__deleteButton___LkGCb {\n position: absolute;\n top: -8px;\n right: -8px;\n width: 18px;\n height: 18px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.9);\n backdrop-filter: blur(8px);\n border: 1px solid rgba(0, 0, 0, 0.08);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n color: rgba(0, 0, 0, 0.35);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 10px;\n line-height: 1;\n z-index: 15;\n pointer-events: none;\n opacity: 0;\n transform: scale(0.8);\n will-change: opacity, transform;\n transition: opacity 0.2s ease-out, transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.12s ease, color 0.12s ease, border-color 0.12s ease, box-shadow 0.12s ease;\n}\n.styles-module__placement___zcxv8:hover .styles-module__deleteButton___LkGCb, .styles-module__selected___6yrp6 .styles-module__deleteButton___LkGCb, .styles-module__sectionOutline___s0hy-:hover .styles-module__deleteButton___LkGCb, .styles-module__sectionOutline___s0hy-.styles-module__selected___6yrp6 .styles-module__deleteButton___LkGCb, .styles-module__ghostOutline___po-kO:hover .styles-module__deleteButton___LkGCb, .styles-module__ghostOutline___po-kO.styles-module__selected___6yrp6 .styles-module__deleteButton___LkGCb {\n opacity: 1;\n transform: scale(1);\n pointer-events: auto;\n}\n.styles-module__deleteButton___LkGCb:hover {\n background: #ef4444;\n color: #fff;\n border-color: #ef4444;\n box-shadow: 0 1px 4px rgba(239, 68, 68, 0.3);\n transform: scale(1.1);\n}\n.styles-module__overlay___aWh-q:not(.styles-module__light___ORIft) .styles-module__deleteButton___LkGCb, .styles-module__rearrangeOverlay___-3R3t:not(.styles-module__light___ORIft) .styles-module__deleteButton___LkGCb {\n background: rgba(40, 40, 40, 0.9);\n border-color: rgba(255, 255, 255, 0.1);\n color: rgba(255, 255, 255, 0.5);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);\n}\n.styles-module__overlay___aWh-q:not(.styles-module__light___ORIft) .styles-module__deleteButton___LkGCb:hover, .styles-module__rearrangeOverlay___-3R3t:not(.styles-module__light___ORIft) .styles-module__deleteButton___LkGCb:hover {\n background: #ef4444;\n color: #fff;\n border-color: #ef4444;\n}\n\n.styles-module__drawBox___BrVAa {\n position: fixed;\n pointer-events: none;\n z-index: 99996;\n border: 2px solid #3c82f7;\n border-radius: 6px;\n background: rgba(59, 130, 246, 0.15);\n}\n\n.styles-module__selectBox___Iu8kB {\n position: fixed;\n pointer-events: none;\n z-index: 99996;\n border: 1px dashed #3c82f7;\n background: rgba(59, 130, 246, 0.08);\n border-radius: 2px;\n}\n\n.styles-module__sizeIndicator___7zJ4y {\n position: fixed;\n pointer-events: none;\n z-index: 100001;\n font-size: 10px;\n color: #fff;\n background: #3c82f7;\n padding: 2px 6px;\n border-radius: 4px;\n white-space: nowrap;\n font-weight: 500;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);\n}\n\n.styles-module__guideLine___DUQY2 {\n pointer-events: none;\n z-index: 100001;\n background: #f0f;\n opacity: 0.5;\n}\n\n.styles-module__dragPreview___onPbU {\n position: fixed;\n z-index: 100002;\n pointer-events: none;\n border: 1.5px dashed #3c82f7;\n border-radius: 6px;\n background: rgba(59, 130, 246, 0.1);\n backdrop-filter: blur(8px);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 9px;\n font-weight: 600;\n color: #3c82f7;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n text-transform: uppercase;\n letter-spacing: 0.04em;\n box-shadow: 0 4px 16px rgba(59, 130, 246, 0.15);\n transition: width 0.08s ease, height 0.08s ease, opacity 0.08s ease;\n}\n\n.styles-module__dragPreviewWireframe___jsg0G {\n border-color: #f97316;\n background: rgba(249, 115, 22, 0.1);\n color: #f97316;\n box-shadow: 0 4px 16px rgba(249, 115, 22, 0.15);\n}\n\n.styles-module__palette___C7iSH {\n position: absolute;\n right: 5px;\n bottom: calc(100% + 0.5rem);\n width: 256px;\n overflow: hidden;\n background: #1c1c1c;\n border: none;\n border-radius: 1rem;\n padding: 13px 0 16px;\n box-shadow: 0 1px 8px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(0, 0, 0, 0.04);\n z-index: 100001;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n cursor: default;\n opacity: 0;\n filter: blur(5px);\n}\n.styles-module__palette___C7iSH .styles-module__paletteItem___6TlnA,\n.styles-module__palette___C7iSH .styles-module__paletteItemLabel___6ncO4,\n.styles-module__palette___C7iSH .styles-module__paletteSectionTitle___PqnjX,\n.styles-module__palette___C7iSH .styles-module__paletteFooter___QYnAG {\n transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;\n}\n.styles-module__palette___C7iSH.styles-module__enter___6LYk5 {\n opacity: 1;\n transform: translateY(0);\n filter: blur(0px);\n transition: opacity 0.2s ease, transform 0.2s ease, filter 0.2s ease;\n}\n.styles-module__palette___C7iSH.styles-module__exit___iSGRw {\n opacity: 0;\n transform: translateY(6px);\n filter: blur(5px);\n pointer-events: none;\n transition: opacity 0.1s ease, transform 0.1s ease, filter 0.1s ease;\n}\n.styles-module__palette___C7iSH.styles-module__light___ORIft {\n background: #fff;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(0, 0, 0, 0.04);\n}\n\n.styles-module__paletteSection___V8DEA {\n padding: 0 1rem;\n}\n.styles-module__paletteSection___V8DEA + .styles-module__paletteSection___V8DEA {\n margin-top: 0.5rem;\n padding-top: 0.5rem;\n border-top: 1px solid rgba(255, 255, 255, 0.07);\n}\n.styles-module__light___ORIft .styles-module__paletteSection___V8DEA + .styles-module__paletteSection___V8DEA {\n border-top-color: rgba(0, 0, 0, 0.07);\n}\n\n.styles-module__paletteSectionTitle___PqnjX {\n font-size: 0.6875rem;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.5);\n letter-spacing: -0.0094em;\n padding: 0 0 3px 3px;\n}\n.styles-module__light___ORIft .styles-module__paletteSectionTitle___PqnjX {\n color: rgba(0, 0, 0, 0.4);\n}\n\n.styles-module__paletteItem___6TlnA {\n display: flex;\n align-items: center;\n gap: 0.375rem;\n padding: 0.25rem 0.25rem;\n margin-bottom: 1px;\n border-radius: 0.375rem;\n cursor: pointer;\n transition: background-color 0.15s ease, border-color 0.15s ease;\n border: 1px solid transparent;\n user-select: none;\n min-height: 24px;\n}\n.styles-module__paletteItem___6TlnA:hover {\n background: rgba(255, 255, 255, 0.1);\n}\n.styles-module__paletteItem___6TlnA.styles-module__active___hosp7 {\n background: #3c82f7;\n border-color: transparent;\n}\n.styles-module__paletteItem___6TlnA.styles-module__wireframe___itvQU.styles-module__active___hosp7 {\n background: #f97316;\n}\n.styles-module__light___ORIft .styles-module__paletteItem___6TlnA:hover {\n background: rgba(0, 0, 0, 0.05);\n}\n.styles-module__light___ORIft .styles-module__paletteItem___6TlnA.styles-module__active___hosp7 {\n background: #3c82f7;\n border-color: transparent;\n}\n.styles-module__light___ORIft .styles-module__paletteItem___6TlnA.styles-module__wireframe___itvQU.styles-module__active___hosp7 {\n background: #f97316;\n}\n\n.styles-module__paletteItemIcon___0NPQK {\n width: 20px;\n height: 16px;\n border-radius: 2px;\n border: 1px dashed rgba(255, 255, 255, 0.15);\n background: rgba(255, 255, 255, 0.04);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n overflow: hidden;\n color: rgba(255, 255, 255, 0.45);\n}\n.styles-module__paletteItemIcon___0NPQK svg {\n display: block;\n width: 20px;\n height: 16px;\n}\n.styles-module__active___hosp7 .styles-module__paletteItemIcon___0NPQK {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgba(255, 255, 255, 0.15);\n color: #fff;\n}\n.styles-module__light___ORIft .styles-module__paletteItemIcon___0NPQK {\n border-color: rgba(0, 0, 0, 0.12);\n background: rgba(0, 0, 0, 0.02);\n color: rgba(0, 0, 0, 0.4);\n}\n.styles-module__light___ORIft .styles-module__active___hosp7 .styles-module__paletteItemIcon___0NPQK {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgba(255, 255, 255, 0.15);\n color: #fff;\n}\n\n.styles-module__paletteItemLabel___6ncO4 {\n font-size: 0.8125rem;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.85);\n letter-spacing: -0.0094em;\n line-height: 1;\n min-width: 0;\n}\n.styles-module__active___hosp7 .styles-module__paletteItemLabel___6ncO4 {\n color: #fff;\n font-weight: 600;\n}\n.styles-module__light___ORIft .styles-module__paletteItemLabel___6ncO4 {\n color: rgba(0, 0, 0, 0.7);\n}\n.styles-module__light___ORIft .styles-module__active___hosp7 .styles-module__paletteItemLabel___6ncO4 {\n color: #fff;\n font-weight: 600;\n}\n\n.styles-module__placeScroll___7sClM {\n max-height: 240px;\n overflow-y: auto;\n overflow-x: hidden;\n padding-top: 0.25rem;\n}\n.styles-module__placeScroll___7sClM.styles-module__fadeTop___KT9tF {\n -webkit-mask-image: linear-gradient(to bottom, transparent 0, black 32px);\n mask-image: linear-gradient(to bottom, transparent 0, black 32px);\n}\n.styles-module__placeScroll___7sClM.styles-module__fadeBottom___x3ShT {\n -webkit-mask-image: linear-gradient(to bottom, black calc(100% - 32px), transparent 100%);\n mask-image: linear-gradient(to bottom, black calc(100% - 32px), transparent 100%);\n}\n.styles-module__placeScroll___7sClM.styles-module__fadeTop___KT9tF.styles-module__fadeBottom___x3ShT {\n -webkit-mask-image: linear-gradient(to bottom, transparent 0, black 32px, black calc(100% - 32px), transparent 100%);\n mask-image: linear-gradient(to bottom, transparent 0, black 32px, black calc(100% - 32px), transparent 100%);\n}\n.styles-module__placeScroll___7sClM::-webkit-scrollbar {\n width: 3px;\n}\n.styles-module__placeScroll___7sClM::-webkit-scrollbar-thumb {\n background: rgba(255, 255, 255, 0.12);\n border-radius: 2px;\n}\n.styles-module__light___ORIft .styles-module__placeScroll___7sClM::-webkit-scrollbar-thumb {\n background: rgba(0, 0, 0, 0.1);\n}\n\n.styles-module__paletteFooterWrap___71-fI {\n display: grid;\n grid-template-rows: 1fr;\n transition: grid-template-rows 0.25s cubic-bezier(0.32, 0.72, 0, 1);\n}\n.styles-module__paletteFooterWrap___71-fI.styles-module__footerHidden___fJUik {\n grid-template-rows: 0fr;\n}\n\n.styles-module__paletteFooterInnerContent___VC26h {\n opacity: 1;\n transform: translateY(0);\n transition: opacity 0.15s ease, transform 0.15s ease;\n}\n.styles-module__footerHidden___fJUik .styles-module__paletteFooterInnerContent___VC26h {\n opacity: 0;\n transform: translateY(4px);\n}\n\n.styles-module__paletteFooterInner___dfylY {\n overflow: hidden;\n}\n\n.styles-module__paletteFooter___QYnAG {\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-height: 24px;\n padding: 0 1rem;\n margin-top: 0.5rem;\n padding-top: 0.5rem;\n border-top: 1px solid rgba(255, 255, 255, 0.07);\n}\n.styles-module__light___ORIft .styles-module__paletteFooter___QYnAG {\n border-top-color: rgba(0, 0, 0, 0.07);\n}\n\n.styles-module__paletteFooterCount___D3Fia {\n font-size: 0.8125rem;\n font-weight: 400;\n letter-spacing: -0.0094em;\n color: rgba(255, 255, 255, 0.5);\n}\n.styles-module__light___ORIft .styles-module__paletteFooterCount___D3Fia {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__paletteFooterClear___ybBoa {\n font-size: 0.8125rem;\n font-weight: 400;\n letter-spacing: -0.0094em;\n color: rgba(255, 255, 255, 0.5);\n background: none;\n border: none;\n cursor: pointer;\n padding: 0;\n font-family: inherit;\n transition: color 0.15s ease;\n}\n.styles-module__paletteFooterClear___ybBoa:hover {\n color: rgba(255, 255, 255, 0.7);\n}\n.styles-module__light___ORIft .styles-module__paletteFooterClear___ybBoa {\n color: rgba(0, 0, 0, 0.5);\n}\n.styles-module__light___ORIft .styles-module__paletteFooterClear___ybBoa:hover {\n color: rgba(0, 0, 0, 0.6);\n}\n\n.styles-module__paletteFooterActions___fLzv8 {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n}\n\n.styles-module__rollingWrap___S75jM {\n display: inline-block;\n overflow: hidden;\n height: 1.15em;\n position: relative;\n vertical-align: bottom;\n}\n\n.styles-module__rollingNum___1RKDx {\n position: absolute;\n left: 0;\n top: 0;\n}\n\n.styles-module__exitUp___AFDRW {\n animation: styles-module__numExitUp___FRQqx 0.25s cubic-bezier(0.32, 0.72, 0, 1) forwards;\n}\n\n.styles-module__enterUp___CPlXb {\n animation: styles-module__numEnterUp___2Yd-w 0.25s cubic-bezier(0.32, 0.72, 0, 1) forwards;\n}\n\n.styles-module__exitDown___-1yAy {\n animation: styles-module__numExitDown___xm5by 0.25s cubic-bezier(0.32, 0.72, 0, 1) forwards;\n}\n\n.styles-module__enterDown___DDuFR {\n animation: styles-module__numEnterDown___hpxBk 0.25s cubic-bezier(0.32, 0.72, 0, 1) forwards;\n}\n\n@keyframes styles-module__numExitUp___FRQqx {\n from {\n transform: translateY(0);\n opacity: 1;\n }\n to {\n transform: translateY(-110%);\n opacity: 0;\n }\n}\n@keyframes styles-module__numEnterUp___2Yd-w {\n from {\n transform: translateY(110%);\n opacity: 0;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n@keyframes styles-module__numExitDown___xm5by {\n from {\n transform: translateY(0);\n opacity: 1;\n }\n to {\n transform: translateY(110%);\n opacity: 0;\n }\n}\n@keyframes styles-module__numEnterDown___hpxBk {\n from {\n transform: translateY(-110%);\n opacity: 0;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n.styles-module__rearrangeOverlay___-3R3t {\n position: fixed;\n inset: 0;\n z-index: 99995;\n pointer-events: none;\n cursor: default;\n user-select: none;\n animation: styles-module__overlayFadeIn___aECVy 0.15s ease;\n}\n\n.styles-module__hoverHighlight___8eT-v {\n position: fixed;\n pointer-events: none;\n z-index: 99994;\n border: 2px dashed rgba(59, 130, 246, 0.5);\n border-radius: 4px;\n background: rgba(59, 130, 246, 0.06);\n animation: styles-module__highlightFadeIn___Lg7KY 0.12s ease;\n}\n\n.styles-module__sectionOutline___s0hy- {\n position: fixed;\n border: 2px solid;\n border-radius: 4px;\n cursor: grab;\n}\n.styles-module__sectionOutline___s0hy-:active {\n cursor: grabbing;\n}\n.styles-module__sectionOutline___s0hy- {\n transition: box-shadow 0.15s, border-color 0.3s, background-color 0.3s, border-style 0s;\n user-select: none;\n pointer-events: auto;\n animation: styles-module__sectionEnter___-8BXT 0.2s ease;\n}\n.styles-module__sectionOutline___s0hy-:hover {\n box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.1), 0 4px 12px rgba(0, 0, 0, 0.15);\n}\n.styles-module__sectionOutline___s0hy-.styles-module__selected___6yrp6 {\n border-style: solid;\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15), 0 2px 8px rgba(59, 130, 246, 0.15);\n}\n.styles-module__sectionOutline___s0hy-.styles-module__selected___6yrp6:hover {\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15), 0 2px 8px rgba(59, 130, 246, 0.15);\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6) {\n border: 1.5px dashed rgba(150, 150, 150, 0.35);\n background-color: transparent !important;\n box-shadow: none;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6):hover {\n border-color: rgba(150, 150, 150, 0.6);\n box-shadow: none;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6) .styles-module__sectionLabel___F80HQ {\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6):hover .styles-module__sectionLabel___F80HQ {\n opacity: 1;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6) .styles-module__movedBadge___s8z-q,\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6) .styles-module__sectionDimensions___RcJSL {\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6):hover .styles-module__sectionDimensions___RcJSL {\n opacity: 1;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__exiting___YrM8F {\n opacity: 0;\n transform: scale(0.97);\n pointer-events: none;\n animation: none;\n transition: opacity 0.2s ease, transform 0.2s cubic-bezier(0.32, 0.72, 0, 1);\n}\n\n.styles-module__sectionLabel___F80HQ {\n position: absolute;\n top: 4px;\n left: 4px;\n font-size: 10px;\n font-weight: 600;\n color: #fff;\n padding: 2px 8px;\n border-radius: 4px;\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);\n max-width: calc(100% - 8px);\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.styles-module__movedBadge___s8z-q {\n position: absolute;\n bottom: 22px;\n right: 4px;\n font-size: 9px;\n font-weight: 700;\n color: #fff;\n background: #22c55e;\n padding: 2px 6px;\n border-radius: 4px;\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n text-transform: uppercase;\n letter-spacing: 0.04em;\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);\n opacity: 0;\n transform: scale(0.8);\n transition: opacity 0.15s ease, transform 0.15s ease;\n}\n.styles-module__movedBadge___s8z-q.styles-module__badgeVisible___npbdS {\n opacity: 1;\n transform: scale(1);\n transition: opacity 0.2s cubic-bezier(0.34, 1.2, 0.64, 1), transform 0.2s cubic-bezier(0.34, 1.2, 0.64, 1);\n}\n\n.styles-module__resizedBadge___u51V8 {\n background: #3c82f7;\n bottom: 40px;\n}\n\n.styles-module__sectionDimensions___RcJSL {\n position: absolute;\n bottom: 4px;\n right: 4px;\n font-size: 9px;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.7);\n background: rgba(0, 0, 0, 0.5);\n padding: 1px 5px;\n border-radius: 3px;\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n}\n.styles-module__light___ORIft .styles-module__sectionDimensions___RcJSL {\n color: rgba(0, 0, 0, 0.5);\n background: rgba(255, 255, 255, 0.7);\n}\n\n.styles-module__wireframeNotice___4GJyB {\n position: fixed;\n bottom: 16px;\n left: 24px;\n z-index: 99995;\n font-size: 9.5px;\n font-weight: 400;\n color: rgba(0, 0, 0, 0.4);\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n pointer-events: auto;\n animation: styles-module__overlayFadeIn___aECVy 0.3s ease;\n line-height: 1.5;\n max-width: 280px;\n}\n\n.styles-module__wireframeOpacityRow___CJXzi {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: 8px;\n}\n\n.styles-module__wireframeOpacityLabel___afkfT {\n font-size: 9px;\n font-weight: 500;\n color: rgba(0, 0, 0, 0.32);\n letter-spacing: 0.02em;\n white-space: nowrap;\n user-select: none;\n}\n\n.styles-module__wireframeOpacitySlider___YcoEs {\n -webkit-appearance: none;\n appearance: none;\n width: 56px;\n height: 4px;\n background: rgba(0, 0, 0, 0.08);\n border-radius: 2px;\n outline: none;\n cursor: pointer;\n flex-shrink: 0;\n transition: background 0.15s ease;\n}\n.styles-module__wireframeOpacitySlider___YcoEs:hover {\n background: rgba(0, 0, 0, 0.13);\n}\n.styles-module__wireframeOpacitySlider___YcoEs::-webkit-slider-thumb {\n -webkit-appearance: none;\n appearance: none;\n width: 10px;\n height: 10px;\n border-radius: 50%;\n background: #f97316;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n.styles-module__wireframeOpacitySlider___YcoEs::-webkit-slider-thumb:hover {\n background: rgb(224.4209205021, 95.3548117155, 5.7790794979);\n}\n.styles-module__wireframeOpacitySlider___YcoEs::-moz-range-thumb {\n width: 10px;\n height: 10px;\n border-radius: 50%;\n background: #f97316;\n border: none;\n cursor: pointer;\n}\n.styles-module__wireframeOpacitySlider___YcoEs::-moz-range-track {\n background: rgba(0, 0, 0, 0.08);\n height: 4px;\n border-radius: 2px;\n}\n\n.styles-module__wireframeNoticeTitleRow___PJqyG {\n display: flex;\n align-items: center;\n gap: 0;\n margin-bottom: 2px;\n}\n\n.styles-module__wireframeNoticeTitle___okr08 {\n font-weight: 600;\n color: rgba(0, 0, 0, 0.55);\n}\n\n.styles-module__wireframeNoticeDivider___PNKQ6 {\n width: 1px;\n height: 8px;\n background: rgba(0, 0, 0, 0.12);\n margin: 0 8px;\n flex-shrink: 0;\n}\n\n.styles-module__wireframeStartOver___YFk-I {\n font-size: 9.5px;\n font-weight: 500;\n color: rgba(0, 0, 0, 0.35);\n cursor: pointer;\n background: none;\n border: none;\n padding: 0;\n font-family: inherit;\n text-decoration: none;\n transition: color 0.12s ease;\n white-space: nowrap;\n}\n.styles-module__wireframeStartOver___YFk-I:hover {\n color: rgba(0, 0, 0, 0.6);\n}\n\n.styles-module__ghostOutline___po-kO {\n position: fixed;\n border: 1.5px dashed rgba(59, 130, 246, 0.4);\n border-radius: 4px;\n background: rgba(59, 130, 246, 0.04);\n cursor: grab;\n opacity: 0.5;\n user-select: none;\n pointer-events: auto;\n animation: styles-module__ghostEnter___EC3Mb 0.25s ease;\n transition: box-shadow 0.15s, border-color 0.3s, opacity 0.25s;\n}\n.styles-module__ghostOutline___po-kO:active {\n cursor: grabbing;\n}\n.styles-module__ghostOutline___po-kO:hover {\n opacity: 0.7;\n box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.1), 0 4px 12px rgba(0, 0, 0, 0.08);\n}\n.styles-module__ghostOutline___po-kO.styles-module__selected___6yrp6 {\n opacity: 1;\n border-style: solid;\n border-width: 2px;\n border-color: #3c82f7;\n background: rgba(59, 130, 246, 0.08);\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15), 0 2px 8px rgba(59, 130, 246, 0.15);\n}\n.styles-module__ghostOutline___po-kO.styles-module__exiting___YrM8F {\n opacity: 0;\n transform: scale(0.97);\n pointer-events: none;\n animation: none;\n transition: opacity 0.2s ease, transform 0.2s cubic-bezier(0.32, 0.72, 0, 1);\n}\n\n.styles-module__ghostBadge___tsQUK {\n position: absolute;\n bottom: calc(100% + 4px);\n left: -1px;\n font-size: 9px;\n font-weight: 600;\n color: rgba(59, 130, 246, 0.9);\n background: rgba(59, 130, 246, 0.08);\n border: 1px solid rgba(59, 130, 246, 0.2);\n padding: 1px 5px;\n border-radius: 3px;\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n letter-spacing: 0.02em;\n line-height: 1.2;\n animation: styles-module__badgeSlideIn___typJ7 0.2s ease both;\n}\n\n@keyframes styles-module__badgeSlideIn___typJ7 {\n from {\n opacity: 0;\n transform: translateY(4px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n.styles-module__ghostBadgeExtra___6CVoD {\n display: inline;\n animation: styles-module__badgeExtraIn___i4W8F 0.2s ease both;\n}\n\n@keyframes styles-module__badgeExtraIn___i4W8F {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n.styles-module__originalOutline___Y6DD1 {\n position: fixed;\n border: 1.5px dashed rgba(150, 150, 150, 0.3);\n border-radius: 4px;\n background: transparent;\n pointer-events: none;\n user-select: none;\n animation: styles-module__sectionEnter___-8BXT 0.2s ease;\n}\n\n.styles-module__originalLabel___HqI9g {\n position: absolute;\n top: 4px;\n left: 4px;\n font-size: 9px;\n font-weight: 500;\n color: rgba(150, 150, 150, 0.5);\n padding: 1px 6px;\n border-radius: 3px;\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n background: rgba(150, 150, 150, 0.08);\n}\n\n.styles-module__connectorSvg___Lovld {\n position: fixed;\n inset: 0;\n width: 100vw;\n height: 100vh;\n pointer-events: none;\n z-index: 99996;\n}\n\n.styles-module__connectorLine___XeWh- {\n transition: opacity 0.2s ease;\n animation: styles-module__connectorDraw___8sK5I 0.3s ease both;\n}\n\n.styles-module__connectorDot___yvf7C {\n transform-box: fill-box;\n transform-origin: center;\n animation: styles-module__connectorDotIn___NwTUq 0.25s cubic-bezier(0.34, 1.56, 0.64, 1) 0.15s both;\n}\n\n@keyframes styles-module__connectorDraw___8sK5I {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes styles-module__connectorDotIn___NwTUq {\n from {\n transform: scale(0);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n}\n.styles-module__connectorExiting___2lLOs {\n animation: styles-module__connectorOut___5QoPl 0.2s ease forwards;\n}\n.styles-module__connectorExiting___2lLOs .styles-module__connectorDot___yvf7C {\n animation: styles-module__connectorDotOut___FEq7e 0.2s ease forwards;\n}\n\n@keyframes styles-module__connectorOut___5QoPl {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes styles-module__connectorDotOut___FEq7e {\n from {\n transform: scale(1);\n opacity: 1;\n }\n to {\n transform: scale(0);\n opacity: 0;\n }\n}\n@keyframes styles-module__placementEnter___TdRhf {\n from {\n opacity: 0;\n transform: scale(0.85);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes styles-module__sectionEnter___-8BXT {\n from {\n opacity: 0;\n transform: scale(0.96);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes styles-module__highlightFadeIn___Lg7KY {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes styles-module__overlayFadeIn___aECVy {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes styles-module__ghostEnter___EC3Mb {\n from {\n opacity: 0;\n transform: scale(0.96);\n }\n to {\n opacity: 0.6;\n transform: scale(1);\n }\n}';
|
|
2776
|
+
var css4 = 'svg[fill=none] {\n fill: none !important;\n}\n\n.styles-module__overlayExiting___iEmYr {\n opacity: 0 !important;\n transition: opacity 0.25s ease !important;\n pointer-events: none !important;\n}\n\n.styles-module__overlay___aWh-q {\n position: fixed;\n inset: 0;\n z-index: 99995;\n pointer-events: auto;\n cursor: default;\n animation: styles-module__overlayFadeIn___aECVy 0.15s ease;\n --agd-stroke: rgba(59, 130, 246, 0.35);\n --agd-fill: rgba(59, 130, 246, 0.06);\n --agd-bar: rgba(59, 130, 246, 0.18);\n --agd-bar-strong: rgba(59, 130, 246, 0.28);\n --agd-text-3: rgba(255, 255, 255, 0.6);\n --agd-surface: #fff;\n}\n.styles-module__overlay___aWh-q.styles-module__light___ORIft {\n --agd-surface: #fff;\n}\n.styles-module__overlay___aWh-q:not(.styles-module__light___ORIft) {\n --agd-surface: #141414;\n}\n.styles-module__overlay___aWh-q.styles-module__wireframe___itvQU {\n --agd-stroke: rgba(249, 115, 22, 0.35);\n --agd-fill: rgba(249, 115, 22, 0.06);\n --agd-bar: rgba(249, 115, 22, 0.18);\n --agd-bar-strong: rgba(249, 115, 22, 0.28);\n}\n.styles-module__overlay___aWh-q.styles-module__placing___45yD8 {\n cursor: crosshair;\n}\n.styles-module__overlay___aWh-q.styles-module__passthrough___xaFeE {\n pointer-events: none;\n}\n\n.styles-module__blankCanvas___t2Eue {\n position: fixed;\n inset: 0;\n z-index: 99994;\n background: #fff;\n opacity: 0;\n pointer-events: none;\n transition: opacity 0.25s ease;\n}\n.styles-module__blankCanvas___t2Eue.styles-module__visible___OKKqX {\n opacity: var(--canvas-opacity, 1);\n pointer-events: auto;\n}\n.styles-module__blankCanvas___t2Eue::after {\n content: "";\n position: absolute;\n inset: 0;\n background-image: radial-gradient(circle, rgba(0, 0, 0, 0.08) 1px, transparent 1px);\n background-size: 24px 24px;\n background-position: 12px 12px;\n pointer-events: none;\n transition: opacity 0.2s ease;\n}\n.styles-module__blankCanvas___t2Eue.styles-module__gridActive___OZ-cf::after {\n opacity: 1;\n background-image: radial-gradient(circle, rgba(0, 0, 0, 0.22) 1px, transparent 1px);\n}\n\n.styles-module__paletteHeader___-Q5gQ {\n padding: 0 1rem 0.375rem;\n}\n\n.styles-module__paletteHeaderTitle___oHqZC {\n font-size: 0.8125rem;\n font-weight: 500;\n color: #fff;\n letter-spacing: -0.0094em;\n}\n.styles-module__light___ORIft .styles-module__paletteHeaderTitle___oHqZC {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.styles-module__paletteHeaderDesc___6i74T {\n font-size: 0.6875rem;\n font-weight: 300;\n color: rgba(255, 255, 255, 0.45);\n margin-top: 2px;\n line-height: 14px;\n}\n.styles-module__light___ORIft .styles-module__paletteHeaderDesc___6i74T {\n color: rgba(0, 0, 0, 0.45);\n}\n.styles-module__paletteHeaderDesc___6i74T a {\n color: rgba(255, 255, 255, 0.8);\n text-decoration: underline dotted;\n text-decoration-color: rgba(255, 255, 255, 0.2);\n text-underline-offset: 2px;\n transition: color 0.15s ease;\n}\n.styles-module__paletteHeaderDesc___6i74T a:hover {\n color: #fff;\n}\n.styles-module__light___ORIft .styles-module__paletteHeaderDesc___6i74T a {\n color: rgba(0, 0, 0, 0.6);\n text-decoration-color: rgba(0, 0, 0, 0.2);\n}\n.styles-module__light___ORIft .styles-module__paletteHeaderDesc___6i74T a:hover {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.styles-module__wireframePurposeWrap___To-tS {\n display: grid;\n grid-template-rows: 1fr;\n transition: grid-template-rows 0.2s ease, opacity 0.15s ease;\n opacity: 1;\n}\n.styles-module__wireframePurposeWrap___To-tS.styles-module__collapsed___Ms9vS {\n grid-template-rows: 0fr;\n opacity: 0;\n}\n\n.styles-module__wireframePurposeInner___Lrahs {\n overflow: hidden;\n}\n\n.styles-module__wireframePurposeInput___7EtBN {\n display: block;\n width: calc(100% - 2rem);\n margin: 0.25rem 1rem 0.375rem;\n padding: 0.375rem 0.5rem;\n font-size: 0.8125rem;\n font-family: inherit;\n color: rgba(255, 255, 255, 0.85);\n background: rgba(255, 255, 255, 0.03);\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 0.375rem;\n resize: none;\n outline: none;\n transition: border-color 0.15s ease;\n letter-spacing: -0.0094em;\n}\n.styles-module__wireframePurposeInput___7EtBN::placeholder {\n color: rgba(255, 255, 255, 0.3);\n}\n.styles-module__wireframePurposeInput___7EtBN:focus {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgba(255, 255, 255, 0.05);\n}\n.styles-module__light___ORIft .styles-module__wireframePurposeInput___7EtBN {\n color: rgba(0, 0, 0, 0.7);\n background: rgba(0, 0, 0, 0.03);\n border-color: rgba(0, 0, 0, 0.1);\n}\n.styles-module__light___ORIft .styles-module__wireframePurposeInput___7EtBN::placeholder {\n color: rgba(0, 0, 0, 0.3);\n}\n.styles-module__light___ORIft .styles-module__wireframePurposeInput___7EtBN:focus {\n border-color: rgba(0, 0, 0, 0.25);\n background: rgba(0, 0, 0, 0.05);\n}\n\n.styles-module__canvasToggle___-QqSy {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.375rem;\n margin: 0.25rem 1rem 0.25rem;\n padding: 0.375rem 0.5rem;\n border-radius: 0.5rem;\n cursor: pointer;\n border: 1px dashed rgba(255, 255, 255, 0.1);\n background: transparent;\n transition: background 0.15s ease, border-color 0.15s ease;\n}\n.styles-module__canvasToggle___-QqSy:hover {\n background: rgba(255, 255, 255, 0.04);\n border-color: rgba(255, 255, 255, 0.15);\n}\n.styles-module__canvasToggle___-QqSy.styles-module__active___hosp7 {\n background: #f97316;\n border-color: transparent;\n border-style: solid;\n box-shadow: none;\n}\n.styles-module__light___ORIft .styles-module__canvasToggle___-QqSy {\n border-color: rgba(0, 0, 0, 0.08);\n}\n.styles-module__light___ORIft .styles-module__canvasToggle___-QqSy:hover {\n background: rgba(0, 0, 0, 0.02);\n border-color: rgba(0, 0, 0, 0.12);\n}\n.styles-module__light___ORIft .styles-module__canvasToggle___-QqSy.styles-module__active___hosp7 {\n background: #f97316;\n border-color: transparent;\n border-style: solid;\n box-shadow: none;\n}\n\n.styles-module__canvasToggleIcon___7pJ82 {\n width: 14px;\n height: 14px;\n flex-shrink: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: rgba(255, 255, 255, 0.35);\n}\n.styles-module__active___hosp7 .styles-module__canvasToggleIcon___7pJ82 {\n color: rgba(255, 255, 255, 0.85);\n}\n.styles-module__light___ORIft .styles-module__canvasToggleIcon___7pJ82 {\n color: rgba(0, 0, 0, 0.25);\n}\n.styles-module__light___ORIft .styles-module__active___hosp7 .styles-module__canvasToggleIcon___7pJ82 {\n color: rgba(255, 255, 255, 0.85);\n}\n\n.styles-module__canvasToggleLabel___OanpY {\n font-size: 0.8125rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.6);\n letter-spacing: -0.0094em;\n}\n.styles-module__active___hosp7 .styles-module__canvasToggleLabel___OanpY {\n color: #fff;\n}\n.styles-module__light___ORIft .styles-module__canvasToggleLabel___OanpY {\n color: rgba(0, 0, 0, 0.5);\n}\n.styles-module__light___ORIft .styles-module__active___hosp7 .styles-module__canvasToggleLabel___OanpY {\n color: #fff;\n}\n\n.styles-module__canvasPurposeWrap___hj6zk {\n display: grid;\n grid-template-rows: 1fr;\n transition: grid-template-rows 0.2s ease, opacity 0.15s ease;\n opacity: 1;\n}\n.styles-module__canvasPurposeWrap___hj6zk.styles-module__collapsed___Ms9vS {\n grid-template-rows: 0fr;\n opacity: 0;\n}\n\n.styles-module__canvasPurposeInner___VWiyu {\n overflow: hidden;\n}\n\n.styles-module__canvasPurposeToggle___byDH2 {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n cursor: pointer;\n margin: 0.375rem 1rem 0.375rem 1.1875rem;\n}\n.styles-module__canvasPurposeToggle___byDH2 input[type=checkbox] {\n position: absolute;\n opacity: 0;\n width: 0;\n height: 0;\n}\n\n.styles-module__canvasPurposeCheck___xqd7l {\n position: relative;\n width: 14px;\n height: 14px;\n border: 1px solid rgba(255, 255, 255, 0.2);\n border-radius: 4px;\n background: rgba(255, 255, 255, 0.05);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n transition: background 0.25s ease, border-color 0.25s ease;\n}\n.styles-module__canvasPurposeCheck___xqd7l svg {\n color: #1a1a1a;\n opacity: 1;\n transition: opacity 0.15s ease;\n}\n.styles-module__canvasPurposeCheck___xqd7l.styles-module__checked___-1JGH {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgb(255, 255, 255);\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeCheck___xqd7l {\n border: 1px solid rgba(0, 0, 0, 0.15);\n background: #fff;\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeCheck___xqd7l.styles-module__checked___-1JGH {\n border-color: #1a1a1a;\n background: #1a1a1a;\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeCheck___xqd7l.styles-module__checked___-1JGH svg {\n color: #fff;\n}\n\n.styles-module__canvasPurposeLabel___Zu-tD {\n font-size: 0.8125rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.5);\n letter-spacing: -0.0094em;\n display: flex;\n align-items: center;\n gap: 0.25rem;\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeLabel___Zu-tD {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__canvasPurposeHelp___jijwR {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n cursor: help;\n}\n.styles-module__canvasPurposeHelp___jijwR svg {\n color: rgba(255, 255, 255, 0.2);\n transform: translateY(2px);\n transition: color 0.15s ease;\n}\n.styles-module__canvasPurposeHelp___jijwR:hover svg {\n color: rgba(255, 255, 255, 0.5);\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeHelp___jijwR svg {\n color: rgba(0, 0, 0, 0.2);\n}\n.styles-module__light___ORIft .styles-module__canvasPurposeHelp___jijwR:hover svg {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__placement___zcxv8 {\n position: absolute;\n border: 1.5px dashed rgba(59, 130, 246, 0.4);\n border-radius: 6px;\n background: rgba(59, 130, 246, 0.08);\n cursor: grab;\n transition: box-shadow 0.15s, border-color 0.15s, opacity 0.15s ease, transform 0.15s ease;\n user-select: none;\n pointer-events: auto;\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);\n animation: styles-module__placementEnter___TdRhf 0.25s cubic-bezier(0.34, 1.2, 0.64, 1);\n}\n.styles-module__placement___zcxv8:active {\n cursor: grabbing;\n}\n.styles-module__placement___zcxv8:hover {\n border-color: rgba(59, 130, 246, 0.5);\n background: rgba(59, 130, 246, 0.1);\n box-shadow: 0 2px 8px rgba(59, 130, 246, 0.12);\n}\n.styles-module__placement___zcxv8.styles-module__selected___6yrp6 {\n border-color: #3c82f7;\n border-style: solid;\n background: rgba(59, 130, 246, 0.1);\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15), 0 2px 8px rgba(59, 130, 246, 0.15);\n}\n.styles-module__placement___zcxv8.styles-module__selected___6yrp6:hover {\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15), 0 2px 8px rgba(59, 130, 246, 0.15);\n}\n.styles-module__wireframe___itvQU .styles-module__placement___zcxv8 {\n border-color: rgba(249, 115, 22, 0.4);\n background: rgba(249, 115, 22, 0.08);\n}\n.styles-module__wireframe___itvQU .styles-module__placement___zcxv8:hover {\n border-color: rgba(249, 115, 22, 0.5);\n background: rgba(249, 115, 22, 0.1);\n box-shadow: 0 2px 8px rgba(249, 115, 22, 0.12);\n}\n.styles-module__wireframe___itvQU .styles-module__placement___zcxv8.styles-module__selected___6yrp6 {\n border-color: #f97316;\n background: rgba(249, 115, 22, 0.1);\n box-shadow: 0 0 0 2px rgba(249, 115, 22, 0.15), 0 2px 8px rgba(249, 115, 22, 0.15);\n}\n.styles-module__wireframe___itvQU .styles-module__placement___zcxv8.styles-module__selected___6yrp6:hover {\n box-shadow: 0 0 0 2px rgba(249, 115, 22, 0.15), 0 2px 8px rgba(249, 115, 22, 0.15);\n}\n.styles-module__placement___zcxv8.styles-module__dragging___le6KZ {\n opacity: 0.85;\n z-index: 50;\n}\n.styles-module__placement___zcxv8.styles-module__exiting___YrM8F {\n opacity: 0;\n transform: scale(0.97);\n pointer-events: none;\n animation: none;\n transition: opacity 0.2s ease, transform 0.2s cubic-bezier(0.32, 0.72, 0, 1);\n}\n\n.styles-module__placementContent___f64A4 {\n width: 100%;\n height: 100%;\n overflow: hidden;\n pointer-events: none;\n}\n\n.styles-module__placementLabel___0KvWl {\n position: absolute;\n top: -18px;\n left: 0;\n font-size: 10px;\n font-weight: 600;\n color: rgba(59, 130, 246, 0.7);\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n text-shadow: 0 0 4px rgba(255, 255, 255, 0.8), 0 0 8px rgba(255, 255, 255, 0.5);\n}\n.styles-module__selected___6yrp6 .styles-module__placementLabel___0KvWl {\n color: #3c82f7;\n}\n.styles-module__wireframe___itvQU .styles-module__placementLabel___0KvWl {\n color: rgba(249, 115, 22, 0.7);\n}\n.styles-module__wireframe___itvQU .styles-module__selected___6yrp6 .styles-module__placementLabel___0KvWl {\n color: #f97316;\n}\n\n.styles-module__placementAnnotation___78pTr {\n position: absolute;\n bottom: -18px;\n left: 0;\n right: 0;\n font-weight: 450;\n color: rgba(0, 0, 0, 0.5);\n font-size: 10px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n text-shadow: 0 0 4px rgba(255, 255, 255, 0.9), 0 0 8px rgba(255, 255, 255, 0.6);\n opacity: 0;\n transform: translateY(-2px);\n transition: opacity 0.2s ease, transform 0.2s ease;\n}\n.styles-module__placementAnnotation___78pTr.styles-module__annotationVisible___mrUyA {\n opacity: 1;\n transform: translateY(0);\n}\n\n.styles-module__sectionAnnotation___aUIs0 {\n position: absolute;\n bottom: -18px;\n left: 0;\n right: 0;\n font-weight: 450;\n color: rgba(59, 130, 246, 0.6);\n font-size: 10px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n text-shadow: 0 0 4px rgba(255, 255, 255, 0.9), 0 0 8px rgba(255, 255, 255, 0.6);\n opacity: 0;\n transform: translateY(-2px);\n transition: opacity 0.2s ease, transform 0.2s ease;\n}\n.styles-module__sectionAnnotation___aUIs0.styles-module__annotationVisible___mrUyA {\n opacity: 1;\n transform: translateY(0);\n}\n\n.styles-module__handle___Ikbxm {\n position: absolute;\n width: 8px;\n height: 8px;\n background: #fff;\n border: 1.5px solid #3c82f7;\n border-radius: 2px;\n z-index: 12;\n box-shadow: 0 0 0 0.5px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.12);\n opacity: 0;\n transform: scale(0.3);\n pointer-events: none;\n will-change: opacity, transform;\n transition: opacity 0.2s ease-out, transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);\n}\n.styles-module__placement___zcxv8:hover .styles-module__handle___Ikbxm, .styles-module__sectionOutline___s0hy-:hover .styles-module__handle___Ikbxm, .styles-module__ghostOutline___po-kO:hover .styles-module__handle___Ikbxm, .styles-module__placement___zcxv8:active .styles-module__handle___Ikbxm, .styles-module__sectionOutline___s0hy-:active .styles-module__handle___Ikbxm, .styles-module__ghostOutline___po-kO:active .styles-module__handle___Ikbxm, .styles-module__selected___6yrp6 .styles-module__handle___Ikbxm {\n opacity: 1;\n transform: scale(1);\n pointer-events: auto;\n}\n.styles-module__sectionOutline___s0hy- .styles-module__handle___Ikbxm {\n border-color: inherit;\n}\n.styles-module__wireframe___itvQU .styles-module__handle___Ikbxm {\n border-color: #f97316;\n}\n\n.styles-module__handleNw___4TMIj {\n top: -4px;\n left: -4px;\n cursor: nw-resize;\n}\n\n.styles-module__handleNe___mnsTh {\n top: -4px;\n right: -4px;\n cursor: ne-resize;\n}\n\n.styles-module__handleSe___oSFnk {\n bottom: -4px;\n right: -4px;\n cursor: se-resize;\n}\n\n.styles-module__handleSw___pi--Z {\n bottom: -4px;\n left: -4px;\n cursor: sw-resize;\n}\n\n.styles-module__handleN___aBA-Q, .styles-module__handleE___0hM5u, .styles-module__handleS___JjDRv, .styles-module__handleW___ERWGQ {\n opacity: 0 !important;\n pointer-events: none !important;\n}\n\n.styles-module__edgeHandle___XxXdT {\n position: absolute;\n z-index: 11;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.styles-module__edgeHandle___XxXdT::after {\n content: "";\n position: absolute;\n border-radius: 4px;\n background: #3c82f7;\n}\n.styles-module__wireframe___itvQU .styles-module__edgeHandle___XxXdT::after {\n background: #f97316;\n}\n.styles-module__edgeHandle___XxXdT::after {\n opacity: 0;\n transition: opacity 0.1s ease, transform 0.1s ease;\n transform: scale(0.8);\n}\n.styles-module__edgeHandle___XxXdT:hover::after {\n opacity: 0.85;\n transform: scale(1);\n}\n.styles-module__edgeHandle___XxXdT svg {\n position: relative;\n z-index: 1;\n opacity: 0;\n transition: opacity 0.1s ease;\n filter: drop-shadow(0 0 2px var(--agd-surface));\n}\n.styles-module__edgeHandle___XxXdT:hover svg {\n opacity: 1;\n}\n\n.styles-module__edgeN___-JJDj, .styles-module__edgeS___66lMX {\n left: 12px;\n right: 12px;\n height: 12px;\n cursor: n-resize;\n}\n.styles-module__edgeN___-JJDj::after, .styles-module__edgeS___66lMX::after {\n width: 24px;\n height: 4px;\n}\n\n.styles-module__edgeN___-JJDj {\n top: -6px;\n}\n\n.styles-module__edgeS___66lMX {\n bottom: -6px;\n cursor: s-resize;\n}\n\n.styles-module__edgeE___1bGDa, .styles-module__edgeW___lHQNo {\n top: 12px;\n bottom: 12px;\n width: 12px;\n cursor: e-resize;\n}\n.styles-module__edgeE___1bGDa::after, .styles-module__edgeW___lHQNo::after {\n width: 4px;\n height: 24px;\n}\n\n.styles-module__edgeE___1bGDa {\n right: -6px;\n}\n\n.styles-module__edgeW___lHQNo {\n left: -6px;\n cursor: w-resize;\n}\n\n.styles-module__deleteButton___LkGCb {\n position: absolute;\n top: -8px;\n right: -8px;\n width: 18px;\n height: 18px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.9);\n backdrop-filter: blur(8px);\n border: 1px solid rgba(0, 0, 0, 0.08);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n color: rgba(0, 0, 0, 0.35);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 10px;\n line-height: 1;\n z-index: 15;\n pointer-events: none;\n opacity: 0;\n transform: scale(0.8);\n will-change: opacity, transform;\n transition: opacity 0.2s ease-out, transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.12s ease, color 0.12s ease, border-color 0.12s ease, box-shadow 0.12s ease;\n}\n.styles-module__placement___zcxv8:hover .styles-module__deleteButton___LkGCb, .styles-module__selected___6yrp6 .styles-module__deleteButton___LkGCb, .styles-module__sectionOutline___s0hy-:hover .styles-module__deleteButton___LkGCb, .styles-module__sectionOutline___s0hy-.styles-module__selected___6yrp6 .styles-module__deleteButton___LkGCb, .styles-module__ghostOutline___po-kO:hover .styles-module__deleteButton___LkGCb, .styles-module__ghostOutline___po-kO.styles-module__selected___6yrp6 .styles-module__deleteButton___LkGCb {\n opacity: 1;\n transform: scale(1);\n pointer-events: auto;\n}\n.styles-module__deleteButton___LkGCb:hover {\n background: #ef4444;\n color: #fff;\n border-color: #ef4444;\n box-shadow: 0 1px 4px rgba(239, 68, 68, 0.3);\n transform: scale(1.1);\n}\n.styles-module__overlay___aWh-q:not(.styles-module__light___ORIft) .styles-module__deleteButton___LkGCb, .styles-module__rearrangeOverlay___-3R3t:not(.styles-module__light___ORIft) .styles-module__deleteButton___LkGCb {\n background: rgba(40, 40, 40, 0.9);\n border-color: rgba(255, 255, 255, 0.1);\n color: rgba(255, 255, 255, 0.5);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);\n}\n.styles-module__overlay___aWh-q:not(.styles-module__light___ORIft) .styles-module__deleteButton___LkGCb:hover, .styles-module__rearrangeOverlay___-3R3t:not(.styles-module__light___ORIft) .styles-module__deleteButton___LkGCb:hover {\n background: #ef4444;\n color: #fff;\n border-color: #ef4444;\n}\n\n.styles-module__drawBox___BrVAa {\n position: fixed;\n pointer-events: none;\n z-index: 99996;\n border: 2px solid #3c82f7;\n border-radius: 6px;\n background: rgba(59, 130, 246, 0.15);\n}\n\n.styles-module__selectBox___Iu8kB {\n position: fixed;\n pointer-events: none;\n z-index: 99996;\n border: 1px dashed #3c82f7;\n background: rgba(59, 130, 246, 0.08);\n border-radius: 2px;\n}\n\n.styles-module__sizeIndicator___7zJ4y {\n position: fixed;\n pointer-events: none;\n z-index: 100001;\n font-size: 10px;\n color: #fff;\n background: #3c82f7;\n padding: 2px 6px;\n border-radius: 4px;\n white-space: nowrap;\n font-weight: 500;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);\n}\n\n.styles-module__guideLine___DUQY2 {\n pointer-events: none;\n z-index: 100001;\n background: #f0f;\n opacity: 0.5;\n}\n\n.styles-module__dragPreview___onPbU {\n position: fixed;\n z-index: 100002;\n pointer-events: none;\n border: 1.5px dashed #3c82f7;\n border-radius: 6px;\n background: rgba(59, 130, 246, 0.1);\n backdrop-filter: blur(8px);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 9px;\n font-weight: 600;\n color: #3c82f7;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n text-transform: uppercase;\n letter-spacing: 0.04em;\n box-shadow: 0 4px 16px rgba(59, 130, 246, 0.15);\n transition: width 0.08s ease, height 0.08s ease, opacity 0.08s ease;\n}\n\n.styles-module__dragPreviewWireframe___jsg0G {\n border-color: #f97316;\n background: rgba(249, 115, 22, 0.1);\n color: #f97316;\n box-shadow: 0 4px 16px rgba(249, 115, 22, 0.15);\n}\n\n.styles-module__palette___C7iSH {\n position: absolute;\n right: 5px;\n bottom: calc(100% + 0.5rem);\n width: 256px;\n overflow: hidden;\n background: #1c1c1c;\n border: none;\n border-radius: 1rem;\n padding: 13px 0 16px;\n box-shadow: 0 1px 8px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(0, 0, 0, 0.04);\n z-index: 100001;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n cursor: default;\n opacity: 0;\n filter: blur(5px);\n}\n.styles-module__palette___C7iSH .styles-module__paletteItem___6TlnA,\n.styles-module__palette___C7iSH .styles-module__paletteItemLabel___6ncO4,\n.styles-module__palette___C7iSH .styles-module__paletteSectionTitle___PqnjX,\n.styles-module__palette___C7iSH .styles-module__paletteFooter___QYnAG {\n transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;\n}\n.styles-module__palette___C7iSH.styles-module__enter___6LYk5 {\n opacity: 1;\n transform: translateY(0);\n filter: blur(0px);\n transition: opacity 0.2s ease, transform 0.2s ease, filter 0.2s ease;\n}\n.styles-module__palette___C7iSH.styles-module__exit___iSGRw {\n opacity: 0;\n transform: translateY(6px);\n filter: blur(5px);\n pointer-events: none;\n transition: opacity 0.1s ease, transform 0.1s ease, filter 0.1s ease;\n}\n.styles-module__palette___C7iSH.styles-module__light___ORIft {\n background: #fff;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(0, 0, 0, 0.04);\n}\n\n.styles-module__paletteSection___V8DEA {\n padding: 0 1rem;\n}\n.styles-module__paletteSection___V8DEA + .styles-module__paletteSection___V8DEA {\n margin-top: 0.5rem;\n padding-top: 0.5rem;\n border-top: 1px solid rgba(255, 255, 255, 0.07);\n}\n.styles-module__light___ORIft .styles-module__paletteSection___V8DEA + .styles-module__paletteSection___V8DEA {\n border-top-color: rgba(0, 0, 0, 0.07);\n}\n\n.styles-module__paletteSectionTitle___PqnjX {\n font-size: 0.6875rem;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.5);\n letter-spacing: -0.0094em;\n padding: 0 0 3px 3px;\n}\n.styles-module__light___ORIft .styles-module__paletteSectionTitle___PqnjX {\n color: rgba(0, 0, 0, 0.4);\n}\n\n.styles-module__paletteItem___6TlnA {\n display: flex;\n align-items: center;\n gap: 0.375rem;\n padding: 0.25rem 0.25rem;\n margin-bottom: 1px;\n border-radius: 0.375rem;\n cursor: pointer;\n transition: background-color 0.15s ease, border-color 0.15s ease;\n border: 1px solid transparent;\n user-select: none;\n min-height: 24px;\n}\n.styles-module__paletteItem___6TlnA:hover {\n background: rgba(255, 255, 255, 0.1);\n}\n.styles-module__paletteItem___6TlnA.styles-module__active___hosp7 {\n background: #3c82f7;\n border-color: transparent;\n}\n.styles-module__paletteItem___6TlnA.styles-module__wireframe___itvQU.styles-module__active___hosp7 {\n background: #f97316;\n}\n.styles-module__light___ORIft .styles-module__paletteItem___6TlnA:hover {\n background: rgba(0, 0, 0, 0.05);\n}\n.styles-module__light___ORIft .styles-module__paletteItem___6TlnA.styles-module__active___hosp7 {\n background: #3c82f7;\n border-color: transparent;\n}\n.styles-module__light___ORIft .styles-module__paletteItem___6TlnA.styles-module__wireframe___itvQU.styles-module__active___hosp7 {\n background: #f97316;\n}\n\n.styles-module__paletteItemIcon___0NPQK {\n width: 20px;\n height: 16px;\n border-radius: 2px;\n border: 1px dashed rgba(255, 255, 255, 0.15);\n background: rgba(255, 255, 255, 0.04);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n overflow: hidden;\n color: rgba(255, 255, 255, 0.45);\n}\n.styles-module__paletteItemIcon___0NPQK svg {\n display: block;\n width: 20px;\n height: 16px;\n}\n.styles-module__active___hosp7 .styles-module__paletteItemIcon___0NPQK {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgba(255, 255, 255, 0.15);\n color: #fff;\n}\n.styles-module__light___ORIft .styles-module__paletteItemIcon___0NPQK {\n border-color: rgba(0, 0, 0, 0.12);\n background: rgba(0, 0, 0, 0.02);\n color: rgba(0, 0, 0, 0.4);\n}\n.styles-module__light___ORIft .styles-module__active___hosp7 .styles-module__paletteItemIcon___0NPQK {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgba(255, 255, 255, 0.15);\n color: #fff;\n}\n\n.styles-module__paletteItemLabel___6ncO4 {\n font-size: 0.8125rem;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.85);\n letter-spacing: -0.0094em;\n line-height: 1;\n min-width: 0;\n}\n.styles-module__active___hosp7 .styles-module__paletteItemLabel___6ncO4 {\n color: #fff;\n font-weight: 600;\n}\n.styles-module__light___ORIft .styles-module__paletteItemLabel___6ncO4 {\n color: rgba(0, 0, 0, 0.7);\n}\n.styles-module__light___ORIft .styles-module__active___hosp7 .styles-module__paletteItemLabel___6ncO4 {\n color: #fff;\n font-weight: 600;\n}\n\n.styles-module__placeScroll___7sClM {\n max-height: 240px;\n overflow-y: auto;\n overflow-x: hidden;\n padding-top: 0.25rem;\n}\n.styles-module__placeScroll___7sClM.styles-module__fadeTop___KT9tF {\n -webkit-mask-image: linear-gradient(to bottom, transparent 0, black 32px);\n mask-image: linear-gradient(to bottom, transparent 0, black 32px);\n}\n.styles-module__placeScroll___7sClM.styles-module__fadeBottom___x3ShT {\n -webkit-mask-image: linear-gradient(to bottom, black calc(100% - 32px), transparent 100%);\n mask-image: linear-gradient(to bottom, black calc(100% - 32px), transparent 100%);\n}\n.styles-module__placeScroll___7sClM.styles-module__fadeTop___KT9tF.styles-module__fadeBottom___x3ShT {\n -webkit-mask-image: linear-gradient(to bottom, transparent 0, black 32px, black calc(100% - 32px), transparent 100%);\n mask-image: linear-gradient(to bottom, transparent 0, black 32px, black calc(100% - 32px), transparent 100%);\n}\n.styles-module__placeScroll___7sClM::-webkit-scrollbar {\n width: 3px;\n}\n.styles-module__placeScroll___7sClM::-webkit-scrollbar-thumb {\n background: rgba(255, 255, 255, 0.12);\n border-radius: 2px;\n}\n.styles-module__light___ORIft .styles-module__placeScroll___7sClM::-webkit-scrollbar-thumb {\n background: rgba(0, 0, 0, 0.1);\n}\n\n.styles-module__paletteFooterWrap___71-fI {\n display: grid;\n grid-template-rows: 1fr;\n transition: grid-template-rows 0.25s cubic-bezier(0.32, 0.72, 0, 1);\n}\n.styles-module__paletteFooterWrap___71-fI.styles-module__footerHidden___fJUik {\n grid-template-rows: 0fr;\n}\n\n.styles-module__paletteFooterInnerContent___VC26h {\n opacity: 1;\n transform: translateY(0);\n transition: opacity 0.15s ease, transform 0.15s ease;\n}\n.styles-module__footerHidden___fJUik .styles-module__paletteFooterInnerContent___VC26h {\n opacity: 0;\n transform: translateY(4px);\n}\n\n.styles-module__paletteFooterInner___dfylY {\n overflow: hidden;\n}\n\n.styles-module__paletteFooter___QYnAG {\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-height: 24px;\n padding: 0 1rem;\n margin-top: 0.5rem;\n padding-top: 0.5rem;\n border-top: 1px solid rgba(255, 255, 255, 0.07);\n}\n.styles-module__light___ORIft .styles-module__paletteFooter___QYnAG {\n border-top-color: rgba(0, 0, 0, 0.07);\n}\n\n.styles-module__paletteFooterCount___D3Fia {\n font-size: 0.8125rem;\n font-weight: 400;\n letter-spacing: -0.0094em;\n color: rgba(255, 255, 255, 0.5);\n}\n.styles-module__light___ORIft .styles-module__paletteFooterCount___D3Fia {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__paletteFooterClear___ybBoa {\n font-size: 0.8125rem;\n font-weight: 400;\n letter-spacing: -0.0094em;\n color: rgba(255, 255, 255, 0.5);\n background: none;\n border: none;\n cursor: pointer;\n padding: 0;\n font-family: inherit;\n transition: color 0.15s ease;\n}\n.styles-module__paletteFooterClear___ybBoa:hover {\n color: rgba(255, 255, 255, 0.7);\n}\n.styles-module__light___ORIft .styles-module__paletteFooterClear___ybBoa {\n color: rgba(0, 0, 0, 0.5);\n}\n.styles-module__light___ORIft .styles-module__paletteFooterClear___ybBoa:hover {\n color: rgba(0, 0, 0, 0.6);\n}\n\n.styles-module__paletteFooterActions___fLzv8 {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n}\n\n.styles-module__rollingWrap___S75jM {\n display: inline-block;\n overflow: hidden;\n height: 1.15em;\n position: relative;\n vertical-align: bottom;\n}\n\n.styles-module__rollingNum___1RKDx {\n position: absolute;\n left: 0;\n top: 0;\n}\n\n.styles-module__exitUp___AFDRW {\n animation: styles-module__numExitUp___FRQqx 0.25s cubic-bezier(0.32, 0.72, 0, 1) forwards;\n}\n\n.styles-module__enterUp___CPlXb {\n animation: styles-module__numEnterUp___2Yd-w 0.25s cubic-bezier(0.32, 0.72, 0, 1) forwards;\n}\n\n.styles-module__exitDown___-1yAy {\n animation: styles-module__numExitDown___xm5by 0.25s cubic-bezier(0.32, 0.72, 0, 1) forwards;\n}\n\n.styles-module__enterDown___DDuFR {\n animation: styles-module__numEnterDown___hpxBk 0.25s cubic-bezier(0.32, 0.72, 0, 1) forwards;\n}\n\n@keyframes styles-module__numExitUp___FRQqx {\n from {\n transform: translateY(0);\n opacity: 1;\n }\n to {\n transform: translateY(-110%);\n opacity: 0;\n }\n}\n@keyframes styles-module__numEnterUp___2Yd-w {\n from {\n transform: translateY(110%);\n opacity: 0;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n@keyframes styles-module__numExitDown___xm5by {\n from {\n transform: translateY(0);\n opacity: 1;\n }\n to {\n transform: translateY(110%);\n opacity: 0;\n }\n}\n@keyframes styles-module__numEnterDown___hpxBk {\n from {\n transform: translateY(-110%);\n opacity: 0;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n.styles-module__rearrangeOverlay___-3R3t {\n position: fixed;\n inset: 0;\n z-index: 99995;\n pointer-events: none;\n cursor: default;\n user-select: none;\n animation: styles-module__overlayFadeIn___aECVy 0.15s ease;\n}\n\n.styles-module__hoverHighlight___8eT-v {\n position: fixed;\n pointer-events: none;\n z-index: 99994;\n border: 2px dashed rgba(59, 130, 246, 0.5);\n border-radius: 4px;\n background: rgba(59, 130, 246, 0.06);\n animation: styles-module__highlightFadeIn___Lg7KY 0.12s ease;\n}\n\n.styles-module__sectionOutline___s0hy- {\n position: fixed;\n border: 2px solid;\n border-radius: 4px;\n cursor: grab;\n}\n.styles-module__sectionOutline___s0hy-:active {\n cursor: grabbing;\n}\n.styles-module__sectionOutline___s0hy- {\n transition: box-shadow 0.15s, border-color 0.3s, background-color 0.3s, border-style 0s;\n user-select: none;\n pointer-events: auto;\n animation: styles-module__sectionEnter___-8BXT 0.2s ease;\n}\n.styles-module__sectionOutline___s0hy-:hover {\n box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.1), 0 4px 12px rgba(0, 0, 0, 0.15);\n}\n.styles-module__sectionOutline___s0hy-.styles-module__selected___6yrp6 {\n border-style: solid;\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15), 0 2px 8px rgba(59, 130, 246, 0.15);\n}\n.styles-module__sectionOutline___s0hy-.styles-module__selected___6yrp6:hover {\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15), 0 2px 8px rgba(59, 130, 246, 0.15);\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6) {\n border: 1.5px dashed rgba(150, 150, 150, 0.35);\n background-color: transparent !important;\n box-shadow: none;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6):hover {\n border-color: rgba(150, 150, 150, 0.6);\n box-shadow: none;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6) .styles-module__sectionLabel___F80HQ {\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6):hover .styles-module__sectionLabel___F80HQ {\n opacity: 1;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6) .styles-module__movedBadge___s8z-q,\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6) .styles-module__sectionDimensions___RcJSL {\n opacity: 0;\n transition: opacity 0.15s ease;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__settled___b5U5o:not(.styles-module__selected___6yrp6):hover .styles-module__sectionDimensions___RcJSL {\n opacity: 1;\n}\n.styles-module__sectionOutline___s0hy-.styles-module__exiting___YrM8F {\n opacity: 0;\n transform: scale(0.97);\n pointer-events: none;\n animation: none;\n transition: opacity 0.2s ease, transform 0.2s cubic-bezier(0.32, 0.72, 0, 1);\n}\n\n.styles-module__sectionLabel___F80HQ {\n position: absolute;\n top: 4px;\n left: 4px;\n font-size: 10px;\n font-weight: 600;\n color: #fff;\n padding: 2px 8px;\n border-radius: 4px;\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);\n max-width: calc(100% - 8px);\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.styles-module__movedBadge___s8z-q {\n position: absolute;\n bottom: 22px;\n right: 4px;\n font-size: 9px;\n font-weight: 700;\n color: #fff;\n background: #22c55e;\n padding: 2px 6px;\n border-radius: 4px;\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n text-transform: uppercase;\n letter-spacing: 0.04em;\n box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);\n opacity: 0;\n transform: scale(0.8);\n transition: opacity 0.15s ease, transform 0.15s ease;\n}\n.styles-module__movedBadge___s8z-q.styles-module__badgeVisible___npbdS {\n opacity: 1;\n transform: scale(1);\n transition: opacity 0.2s cubic-bezier(0.34, 1.2, 0.64, 1), transform 0.2s cubic-bezier(0.34, 1.2, 0.64, 1);\n}\n\n.styles-module__resizedBadge___u51V8 {\n background: #3c82f7;\n bottom: 40px;\n}\n\n.styles-module__sectionDimensions___RcJSL {\n position: absolute;\n bottom: 4px;\n right: 4px;\n font-size: 9px;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.7);\n background: rgba(0, 0, 0, 0.5);\n padding: 1px 5px;\n border-radius: 3px;\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n}\n.styles-module__light___ORIft .styles-module__sectionDimensions___RcJSL {\n color: rgba(0, 0, 0, 0.5);\n background: rgba(255, 255, 255, 0.7);\n}\n\n.styles-module__wireframeNotice___4GJyB {\n position: fixed;\n bottom: 16px;\n left: 24px;\n z-index: 99995;\n font-size: 9.5px;\n font-weight: 400;\n color: rgba(0, 0, 0, 0.4);\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n pointer-events: auto;\n animation: styles-module__overlayFadeIn___aECVy 0.3s ease;\n line-height: 1.5;\n max-width: 280px;\n}\n\n.styles-module__wireframeOpacityRow___CJXzi {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: 8px;\n}\n\n.styles-module__wireframeOpacityLabel___afkfT {\n font-size: 9px;\n font-weight: 500;\n color: rgba(0, 0, 0, 0.32);\n letter-spacing: 0.02em;\n white-space: nowrap;\n user-select: none;\n}\n\n.styles-module__wireframeOpacitySlider___YcoEs {\n -webkit-appearance: none;\n appearance: none;\n width: 56px;\n height: 4px;\n background: rgba(0, 0, 0, 0.08);\n border-radius: 2px;\n outline: none;\n cursor: pointer;\n flex-shrink: 0;\n transition: background 0.15s ease;\n}\n.styles-module__wireframeOpacitySlider___YcoEs:hover {\n background: rgba(0, 0, 0, 0.13);\n}\n.styles-module__wireframeOpacitySlider___YcoEs::-webkit-slider-thumb {\n -webkit-appearance: none;\n appearance: none;\n width: 10px;\n height: 10px;\n border-radius: 50%;\n background: #f97316;\n cursor: pointer;\n transition: background 0.15s ease;\n}\n.styles-module__wireframeOpacitySlider___YcoEs::-webkit-slider-thumb:hover {\n background: color-mix(in srgb, #f97316, black 15%);\n}\n.styles-module__wireframeOpacitySlider___YcoEs::-moz-range-thumb {\n width: 10px;\n height: 10px;\n border-radius: 50%;\n background: #f97316;\n border: none;\n cursor: pointer;\n}\n.styles-module__wireframeOpacitySlider___YcoEs::-moz-range-track {\n background: rgba(0, 0, 0, 0.08);\n height: 4px;\n border-radius: 2px;\n}\n\n.styles-module__wireframeNoticeTitleRow___PJqyG {\n display: flex;\n align-items: center;\n gap: 0;\n margin-bottom: 2px;\n}\n\n.styles-module__wireframeNoticeTitle___okr08 {\n font-weight: 600;\n color: rgba(0, 0, 0, 0.55);\n}\n\n.styles-module__wireframeNoticeDivider___PNKQ6 {\n width: 1px;\n height: 8px;\n background: rgba(0, 0, 0, 0.12);\n margin: 0 8px;\n flex-shrink: 0;\n}\n\n.styles-module__wireframeStartOver___YFk-I {\n font-size: 9.5px;\n font-weight: 500;\n color: rgba(0, 0, 0, 0.35);\n cursor: pointer;\n background: none;\n border: none;\n padding: 0;\n font-family: inherit;\n text-decoration: none;\n transition: color 0.12s ease;\n white-space: nowrap;\n}\n.styles-module__wireframeStartOver___YFk-I:hover {\n color: rgba(0, 0, 0, 0.6);\n}\n\n.styles-module__ghostOutline___po-kO {\n position: fixed;\n border: 1.5px dashed rgba(59, 130, 246, 0.4);\n border-radius: 4px;\n background: rgba(59, 130, 246, 0.04);\n cursor: grab;\n opacity: 0.5;\n user-select: none;\n pointer-events: auto;\n animation: styles-module__ghostEnter___EC3Mb 0.25s ease;\n transition: box-shadow 0.15s, border-color 0.3s, opacity 0.25s;\n}\n.styles-module__ghostOutline___po-kO:active {\n cursor: grabbing;\n}\n.styles-module__ghostOutline___po-kO:hover {\n opacity: 0.7;\n box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.1), 0 4px 12px rgba(0, 0, 0, 0.08);\n}\n.styles-module__ghostOutline___po-kO.styles-module__selected___6yrp6 {\n opacity: 1;\n border-style: solid;\n border-width: 2px;\n border-color: #3c82f7;\n background: rgba(59, 130, 246, 0.08);\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15), 0 2px 8px rgba(59, 130, 246, 0.15);\n}\n.styles-module__ghostOutline___po-kO.styles-module__exiting___YrM8F {\n opacity: 0;\n transform: scale(0.97);\n pointer-events: none;\n animation: none;\n transition: opacity 0.2s ease, transform 0.2s cubic-bezier(0.32, 0.72, 0, 1);\n}\n\n.styles-module__ghostBadge___tsQUK {\n position: absolute;\n bottom: calc(100% + 4px);\n left: -1px;\n font-size: 9px;\n font-weight: 600;\n color: rgba(59, 130, 246, 0.9);\n background: rgba(59, 130, 246, 0.08);\n border: 1px solid rgba(59, 130, 246, 0.2);\n padding: 1px 5px;\n border-radius: 3px;\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n letter-spacing: 0.02em;\n line-height: 1.2;\n animation: styles-module__badgeSlideIn___typJ7 0.2s ease both;\n}\n\n@keyframes styles-module__badgeSlideIn___typJ7 {\n from {\n opacity: 0;\n transform: translateY(4px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n.styles-module__ghostBadgeExtra___6CVoD {\n display: inline;\n animation: styles-module__badgeExtraIn___i4W8F 0.2s ease both;\n}\n\n@keyframes styles-module__badgeExtraIn___i4W8F {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n.styles-module__originalOutline___Y6DD1 {\n position: fixed;\n border: 1.5px dashed rgba(150, 150, 150, 0.3);\n border-radius: 4px;\n background: transparent;\n pointer-events: none;\n user-select: none;\n animation: styles-module__sectionEnter___-8BXT 0.2s ease;\n}\n\n.styles-module__originalLabel___HqI9g {\n position: absolute;\n top: 4px;\n left: 4px;\n font-size: 9px;\n font-weight: 500;\n color: rgba(150, 150, 150, 0.5);\n padding: 1px 6px;\n border-radius: 3px;\n white-space: nowrap;\n pointer-events: none;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n background: rgba(150, 150, 150, 0.08);\n}\n\n.styles-module__connectorSvg___Lovld {\n position: fixed;\n inset: 0;\n width: 100vw;\n height: 100vh;\n pointer-events: none;\n z-index: 99996;\n}\n\n.styles-module__connectorLine___XeWh- {\n transition: opacity 0.2s ease;\n animation: styles-module__connectorDraw___8sK5I 0.3s ease both;\n}\n\n.styles-module__connectorDot___yvf7C {\n transform-box: fill-box;\n transform-origin: center;\n animation: styles-module__connectorDotIn___NwTUq 0.25s cubic-bezier(0.34, 1.56, 0.64, 1) 0.15s both;\n}\n\n@keyframes styles-module__connectorDraw___8sK5I {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes styles-module__connectorDotIn___NwTUq {\n from {\n transform: scale(0);\n opacity: 0;\n }\n to {\n transform: scale(1);\n opacity: 1;\n }\n}\n.styles-module__connectorExiting___2lLOs {\n animation: styles-module__connectorOut___5QoPl 0.2s ease forwards;\n}\n.styles-module__connectorExiting___2lLOs .styles-module__connectorDot___yvf7C {\n animation: styles-module__connectorDotOut___FEq7e 0.2s ease forwards;\n}\n\n@keyframes styles-module__connectorOut___5QoPl {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes styles-module__connectorDotOut___FEq7e {\n from {\n transform: scale(1);\n opacity: 1;\n }\n to {\n transform: scale(0);\n opacity: 0;\n }\n}\n@keyframes styles-module__placementEnter___TdRhf {\n from {\n opacity: 0;\n transform: scale(0.85);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes styles-module__sectionEnter___-8BXT {\n from {\n opacity: 0;\n transform: scale(0.96);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes styles-module__highlightFadeIn___Lg7KY {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes styles-module__overlayFadeIn___aECVy {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes styles-module__ghostEnter___EC3Mb {\n from {\n opacity: 0;\n transform: scale(0.96);\n }\n to {\n opacity: 0.6;\n transform: scale(1);\n }\n}';
|
|
2707
2777
|
var classNames4 = { "overlayExiting": "styles-module__overlayExiting___iEmYr", "overlay": "styles-module__overlay___aWh-q", "overlayFadeIn": "styles-module__overlayFadeIn___aECVy", "light": "styles-module__light___ORIft", "wireframe": "styles-module__wireframe___itvQU", "placing": "styles-module__placing___45yD8", "passthrough": "styles-module__passthrough___xaFeE", "blankCanvas": "styles-module__blankCanvas___t2Eue", "visible": "styles-module__visible___OKKqX", "gridActive": "styles-module__gridActive___OZ-cf", "paletteHeader": "styles-module__paletteHeader___-Q5gQ", "paletteHeaderTitle": "styles-module__paletteHeaderTitle___oHqZC", "paletteHeaderDesc": "styles-module__paletteHeaderDesc___6i74T", "wireframePurposeWrap": "styles-module__wireframePurposeWrap___To-tS", "collapsed": "styles-module__collapsed___Ms9vS", "wireframePurposeInner": "styles-module__wireframePurposeInner___Lrahs", "wireframePurposeInput": "styles-module__wireframePurposeInput___7EtBN", "canvasToggle": "styles-module__canvasToggle___-QqSy", "active": "styles-module__active___hosp7", "canvasToggleIcon": "styles-module__canvasToggleIcon___7pJ82", "canvasToggleLabel": "styles-module__canvasToggleLabel___OanpY", "canvasPurposeWrap": "styles-module__canvasPurposeWrap___hj6zk", "canvasPurposeInner": "styles-module__canvasPurposeInner___VWiyu", "canvasPurposeToggle": "styles-module__canvasPurposeToggle___byDH2", "canvasPurposeCheck": "styles-module__canvasPurposeCheck___xqd7l", "checked": "styles-module__checked___-1JGH", "canvasPurposeLabel": "styles-module__canvasPurposeLabel___Zu-tD", "canvasPurposeHelp": "styles-module__canvasPurposeHelp___jijwR", "placement": "styles-module__placement___zcxv8", "placementEnter": "styles-module__placementEnter___TdRhf", "selected": "styles-module__selected___6yrp6", "dragging": "styles-module__dragging___le6KZ", "exiting": "styles-module__exiting___YrM8F", "placementContent": "styles-module__placementContent___f64A4", "placementLabel": "styles-module__placementLabel___0KvWl", "placementAnnotation": "styles-module__placementAnnotation___78pTr", "annotationVisible": "styles-module__annotationVisible___mrUyA", "sectionAnnotation": "styles-module__sectionAnnotation___aUIs0", "handle": "styles-module__handle___Ikbxm", "sectionOutline": "styles-module__sectionOutline___s0hy-", "ghostOutline": "styles-module__ghostOutline___po-kO", "handleNw": "styles-module__handleNw___4TMIj", "handleNe": "styles-module__handleNe___mnsTh", "handleSe": "styles-module__handleSe___oSFnk", "handleSw": "styles-module__handleSw___pi--Z", "handleN": "styles-module__handleN___aBA-Q", "handleE": "styles-module__handleE___0hM5u", "handleS": "styles-module__handleS___JjDRv", "handleW": "styles-module__handleW___ERWGQ", "edgeHandle": "styles-module__edgeHandle___XxXdT", "edgeN": "styles-module__edgeN___-JJDj", "edgeS": "styles-module__edgeS___66lMX", "edgeE": "styles-module__edgeE___1bGDa", "edgeW": "styles-module__edgeW___lHQNo", "deleteButton": "styles-module__deleteButton___LkGCb", "rearrangeOverlay": "styles-module__rearrangeOverlay___-3R3t", "drawBox": "styles-module__drawBox___BrVAa", "selectBox": "styles-module__selectBox___Iu8kB", "sizeIndicator": "styles-module__sizeIndicator___7zJ4y", "guideLine": "styles-module__guideLine___DUQY2", "dragPreview": "styles-module__dragPreview___onPbU", "dragPreviewWireframe": "styles-module__dragPreviewWireframe___jsg0G", "palette": "styles-module__palette___C7iSH", "paletteItem": "styles-module__paletteItem___6TlnA", "paletteItemLabel": "styles-module__paletteItemLabel___6ncO4", "paletteSectionTitle": "styles-module__paletteSectionTitle___PqnjX", "paletteFooter": "styles-module__paletteFooter___QYnAG", "enter": "styles-module__enter___6LYk5", "exit": "styles-module__exit___iSGRw", "paletteSection": "styles-module__paletteSection___V8DEA", "paletteItemIcon": "styles-module__paletteItemIcon___0NPQK", "placeScroll": "styles-module__placeScroll___7sClM", "fadeTop": "styles-module__fadeTop___KT9tF", "fadeBottom": "styles-module__fadeBottom___x3ShT", "paletteFooterWrap": "styles-module__paletteFooterWrap___71-fI", "footerHidden": "styles-module__footerHidden___fJUik", "paletteFooterInnerContent": "styles-module__paletteFooterInnerContent___VC26h", "paletteFooterInner": "styles-module__paletteFooterInner___dfylY", "paletteFooterCount": "styles-module__paletteFooterCount___D3Fia", "paletteFooterClear": "styles-module__paletteFooterClear___ybBoa", "paletteFooterActions": "styles-module__paletteFooterActions___fLzv8", "rollingWrap": "styles-module__rollingWrap___S75jM", "rollingNum": "styles-module__rollingNum___1RKDx", "exitUp": "styles-module__exitUp___AFDRW", "numExitUp": "styles-module__numExitUp___FRQqx", "enterUp": "styles-module__enterUp___CPlXb", "numEnterUp": "styles-module__numEnterUp___2Yd-w", "exitDown": "styles-module__exitDown___-1yAy", "numExitDown": "styles-module__numExitDown___xm5by", "enterDown": "styles-module__enterDown___DDuFR", "numEnterDown": "styles-module__numEnterDown___hpxBk", "hoverHighlight": "styles-module__hoverHighlight___8eT-v", "highlightFadeIn": "styles-module__highlightFadeIn___Lg7KY", "sectionEnter": "styles-module__sectionEnter___-8BXT", "settled": "styles-module__settled___b5U5o", "sectionLabel": "styles-module__sectionLabel___F80HQ", "movedBadge": "styles-module__movedBadge___s8z-q", "sectionDimensions": "styles-module__sectionDimensions___RcJSL", "badgeVisible": "styles-module__badgeVisible___npbdS", "resizedBadge": "styles-module__resizedBadge___u51V8", "wireframeNotice": "styles-module__wireframeNotice___4GJyB", "wireframeOpacityRow": "styles-module__wireframeOpacityRow___CJXzi", "wireframeOpacityLabel": "styles-module__wireframeOpacityLabel___afkfT", "wireframeOpacitySlider": "styles-module__wireframeOpacitySlider___YcoEs", "wireframeNoticeTitleRow": "styles-module__wireframeNoticeTitleRow___PJqyG", "wireframeNoticeTitle": "styles-module__wireframeNoticeTitle___okr08", "wireframeNoticeDivider": "styles-module__wireframeNoticeDivider___PNKQ6", "wireframeStartOver": "styles-module__wireframeStartOver___YFk-I", "ghostEnter": "styles-module__ghostEnter___EC3Mb", "ghostBadge": "styles-module__ghostBadge___tsQUK", "badgeSlideIn": "styles-module__badgeSlideIn___typJ7", "ghostBadgeExtra": "styles-module__ghostBadgeExtra___6CVoD", "badgeExtraIn": "styles-module__badgeExtraIn___i4W8F", "originalOutline": "styles-module__originalOutline___Y6DD1", "originalLabel": "styles-module__originalLabel___HqI9g", "connectorSvg": "styles-module__connectorSvg___Lovld", "connectorLine": "styles-module__connectorLine___XeWh-", "connectorDraw": "styles-module__connectorDraw___8sK5I", "connectorDot": "styles-module__connectorDot___yvf7C", "connectorDotIn": "styles-module__connectorDotIn___NwTUq", "connectorExiting": "styles-module__connectorExiting___2lLOs", "connectorOut": "styles-module__connectorOut___5QoPl", "connectorDotOut": "styles-module__connectorDotOut___FEq7e" };
|
|
2708
2778
|
if (typeof document !== "undefined") {
|
|
2709
2779
|
let style = document.getElementById("feedback-tool-styles-design-mode-styles");
|
|
@@ -7472,9 +7542,141 @@ function findNearestComponentSource(element, maxAncestors = 10) {
|
|
|
7472
7542
|
return getSourceLocation(element);
|
|
7473
7543
|
}
|
|
7474
7544
|
|
|
7545
|
+
// src/utils/screenshot.ts
|
|
7546
|
+
var _domCaptureModule;
|
|
7547
|
+
async function getDomCapture() {
|
|
7548
|
+
if (_domCaptureModule !== void 0) return _domCaptureModule;
|
|
7549
|
+
try {
|
|
7550
|
+
_domCaptureModule = await import("modern-screenshot");
|
|
7551
|
+
return _domCaptureModule;
|
|
7552
|
+
} catch {
|
|
7553
|
+
_domCaptureModule = null;
|
|
7554
|
+
return null;
|
|
7555
|
+
}
|
|
7556
|
+
}
|
|
7557
|
+
function findCaptureTarget(captureX, captureY, captureW, captureH) {
|
|
7558
|
+
const cx = captureX + captureW / 2;
|
|
7559
|
+
const cy = captureY + captureH / 2;
|
|
7560
|
+
const elements = document.elementsFromPoint(cx, cy);
|
|
7561
|
+
for (const el of elements) {
|
|
7562
|
+
if (!(el instanceof HTMLElement)) continue;
|
|
7563
|
+
if (el.hasAttribute("data-ui-sniper-root")) continue;
|
|
7564
|
+
if (el.closest?.("[data-ui-sniper-root]")) continue;
|
|
7565
|
+
if (el.tagName === "CANVAS") continue;
|
|
7566
|
+
if (el === document.documentElement || el === document.body) continue;
|
|
7567
|
+
const rect = el.getBoundingClientRect();
|
|
7568
|
+
if (rect.left <= captureX + captureW * 0.1 && rect.top <= captureY + captureH * 0.1 && rect.right >= captureX + captureW * 0.9 && rect.bottom >= captureY + captureH * 0.9) {
|
|
7569
|
+
return el;
|
|
7570
|
+
}
|
|
7571
|
+
}
|
|
7572
|
+
return document.body;
|
|
7573
|
+
}
|
|
7574
|
+
async function captureDomRegion(regionX, regionY, regionW, regionH, strokes, padding = 32, quality = 0.85) {
|
|
7575
|
+
const mod = await getDomCapture();
|
|
7576
|
+
if (!mod) return null;
|
|
7577
|
+
const captureX = Math.max(0, regionX - padding);
|
|
7578
|
+
const captureY = Math.max(0, regionY - padding);
|
|
7579
|
+
const captureW = regionW + padding * 2;
|
|
7580
|
+
const captureH = regionH + padding * 2;
|
|
7581
|
+
const maxDim = 600;
|
|
7582
|
+
const outScale = Math.min(1, maxDim / Math.max(captureW, captureH));
|
|
7583
|
+
const outW = Math.round(captureW * outScale);
|
|
7584
|
+
const outH = Math.round(captureH * outScale);
|
|
7585
|
+
if (outW < 1 || outH < 1) return null;
|
|
7586
|
+
const uiSniperRoot = document.querySelector("[data-ui-sniper-root]");
|
|
7587
|
+
const prevVisibility = uiSniperRoot?.style.visibility;
|
|
7588
|
+
if (uiSniperRoot) uiSniperRoot.style.visibility = "hidden";
|
|
7589
|
+
try {
|
|
7590
|
+
const target = findCaptureTarget(captureX, captureY, captureW, captureH);
|
|
7591
|
+
const targetRect = target.getBoundingClientRect();
|
|
7592
|
+
let domCanvas = null;
|
|
7593
|
+
try {
|
|
7594
|
+
domCanvas = await mod.domToCanvas(target, {
|
|
7595
|
+
backgroundColor: "#ffffff",
|
|
7596
|
+
timeout: 5e3,
|
|
7597
|
+
fetch: {
|
|
7598
|
+
bypassingCache: true
|
|
7599
|
+
}
|
|
7600
|
+
});
|
|
7601
|
+
} catch (e) {
|
|
7602
|
+
console.warn("[UI Sniper] modern-screenshot failed, falling back to html2canvas", e);
|
|
7603
|
+
try {
|
|
7604
|
+
const html2canvas = (await import("html2canvas")).default;
|
|
7605
|
+
domCanvas = await html2canvas(target, {
|
|
7606
|
+
backgroundColor: "#ffffff",
|
|
7607
|
+
allowTaint: false,
|
|
7608
|
+
useCORS: true,
|
|
7609
|
+
logging: false
|
|
7610
|
+
});
|
|
7611
|
+
} catch (fallbackErr) {
|
|
7612
|
+
throw new Error("Both modern-screenshot and html2canvas failed");
|
|
7613
|
+
}
|
|
7614
|
+
}
|
|
7615
|
+
if (!domCanvas) throw new Error("Failed to create domCanvas");
|
|
7616
|
+
const ratioX = domCanvas.width / (target.scrollWidth || targetRect.width);
|
|
7617
|
+
const ratioY = domCanvas.height / (target.scrollHeight || targetRect.height);
|
|
7618
|
+
const scrollLeft = target === document.body ? window.scrollX : target.scrollLeft;
|
|
7619
|
+
const scrollTop = target === document.body ? window.scrollY : target.scrollTop;
|
|
7620
|
+
const elContentX = (captureX - targetRect.left + scrollLeft) * ratioX;
|
|
7621
|
+
const elContentY = (captureY - targetRect.top + scrollTop) * ratioY;
|
|
7622
|
+
const cropW = captureW * ratioX;
|
|
7623
|
+
const cropH = captureH * ratioY;
|
|
7624
|
+
const canvas = document.createElement("canvas");
|
|
7625
|
+
canvas.width = outW;
|
|
7626
|
+
canvas.height = outH;
|
|
7627
|
+
const ctx = canvas.getContext("2d");
|
|
7628
|
+
if (!ctx) return null;
|
|
7629
|
+
ctx.fillStyle = "#ffffff";
|
|
7630
|
+
ctx.fillRect(0, 0, outW, outH);
|
|
7631
|
+
ctx.drawImage(
|
|
7632
|
+
domCanvas,
|
|
7633
|
+
elContentX,
|
|
7634
|
+
elContentY,
|
|
7635
|
+
cropW,
|
|
7636
|
+
cropH,
|
|
7637
|
+
0,
|
|
7638
|
+
0,
|
|
7639
|
+
outW,
|
|
7640
|
+
outH
|
|
7641
|
+
);
|
|
7642
|
+
if (strokes && strokes.length > 0) {
|
|
7643
|
+
drawStrokesOnCanvas(ctx, strokes, captureX, captureY, outScale);
|
|
7644
|
+
}
|
|
7645
|
+
return canvas.toDataURL("image/jpeg", quality);
|
|
7646
|
+
} catch (err) {
|
|
7647
|
+
console.warn("[UI Sniper] DOM capture failed:", err);
|
|
7648
|
+
return null;
|
|
7649
|
+
} finally {
|
|
7650
|
+
if (uiSniperRoot) uiSniperRoot.style.visibility = prevVisibility ?? "";
|
|
7651
|
+
}
|
|
7652
|
+
}
|
|
7653
|
+
function drawStrokesOnCanvas(ctx, strokes, originX, originY, scale) {
|
|
7654
|
+
const scrollY = window.scrollY;
|
|
7655
|
+
for (const stroke of strokes) {
|
|
7656
|
+
if (stroke.points.length < 2) continue;
|
|
7657
|
+
ctx.save();
|
|
7658
|
+
ctx.strokeStyle = stroke.color;
|
|
7659
|
+
ctx.lineWidth = Math.max(2, 2.5 * scale);
|
|
7660
|
+
ctx.lineCap = "round";
|
|
7661
|
+
ctx.lineJoin = "round";
|
|
7662
|
+
ctx.beginPath();
|
|
7663
|
+
for (let i = 0; i < stroke.points.length; i++) {
|
|
7664
|
+
const p = stroke.points[i];
|
|
7665
|
+
const vx = p.x;
|
|
7666
|
+
const vy = stroke.fixed ? p.y : p.y - scrollY;
|
|
7667
|
+
const cx = (vx - originX) * scale;
|
|
7668
|
+
const cy = (vy - originY) * scale;
|
|
7669
|
+
if (i === 0) ctx.moveTo(cx, cy);
|
|
7670
|
+
else ctx.lineTo(cx, cy);
|
|
7671
|
+
}
|
|
7672
|
+
ctx.stroke();
|
|
7673
|
+
ctx.restore();
|
|
7674
|
+
}
|
|
7675
|
+
}
|
|
7676
|
+
|
|
7475
7677
|
// src/components/page-toolbar-css/styles.module.scss
|
|
7476
|
-
var css5 = '.styles-module__toolbar___wNsdK svg[fill=none],\n.styles-module__markersLayer___-25j1 svg[fill=none],\n.styles-module__fixedMarkersLayer___ffyX6 svg[fill=none] {\n fill: none !important;\n}\n.styles-module__toolbar___wNsdK svg[fill=none] :not([fill]),\n.styles-module__markersLayer___-25j1 svg[fill=none] :not([fill]),\n.styles-module__fixedMarkersLayer___ffyX6 svg[fill=none] :not([fill]) {\n fill: none !important;\n}\n\n.styles-module__controlsContent___9GJWU :where(button, input, select, textarea, label) {\n background: unset;\n border: unset;\n border-radius: unset;\n padding: unset;\n margin: unset;\n color: unset;\n font-family: unset;\n font-weight: unset;\n font-style: unset;\n line-height: unset;\n letter-spacing: unset;\n text-transform: unset;\n text-decoration: unset;\n box-shadow: unset;\n outline: unset;\n}\n\n@keyframes styles-module__toolbarEnter___u8RRu {\n from {\n opacity: 0;\n transform: scale(0.5) rotate(90deg);\n }\n to {\n opacity: 1;\n transform: scale(1) rotate(0deg);\n }\n}\n@keyframes styles-module__toolbarHide___y8kaT {\n from {\n opacity: 1;\n transform: scale(1);\n }\n to {\n opacity: 0;\n transform: scale(0.8);\n }\n}\n@keyframes styles-module__badgeEnter___mVQLj {\n from {\n opacity: 0;\n transform: scale(0);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes styles-module__scaleIn___c-r1K {\n from {\n opacity: 0;\n transform: scale(0.85);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes styles-module__scaleOut___Wctwz {\n from {\n opacity: 1;\n transform: scale(1);\n }\n to {\n opacity: 0;\n transform: scale(0.85);\n }\n}\n@keyframes styles-module__slideUp___kgD36 {\n from {\n opacity: 0;\n transform: scale(0.85) translateY(8px);\n }\n to {\n opacity: 1;\n transform: scale(1) translateY(0);\n }\n}\n@keyframes styles-module__slideDown___zcdje {\n from {\n opacity: 1;\n transform: scale(1) translateY(0);\n }\n to {\n opacity: 0;\n transform: scale(0.85) translateY(8px);\n }\n}\n@keyframes styles-module__fadeIn___b9qmf {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes styles-module__fadeOut___6Ut6- {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes styles-module__hoverHighlightIn___6WYHY {\n from {\n opacity: 0;\n transform: scale(0.98);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes styles-module__hoverTooltipIn___FYGQx {\n from {\n opacity: 0;\n transform: scale(0.95) translateY(4px);\n }\n to {\n opacity: 1;\n transform: scale(1) translateY(0);\n }\n}\n.styles-module__disableTransitions___EopxO :is(*, *::before, *::after) {\n transition: none !important;\n}\n\n.styles-module__toolbar___wNsdK {\n position: fixed;\n bottom: 1.25rem;\n right: 1.25rem;\n width: 337px;\n z-index: 100000;\n font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n pointer-events: none;\n transition: left 0s, top 0s, right 0s, bottom 0s;\n}\n\n:where(.styles-module__toolbar___wNsdK) {\n bottom: 1.25rem;\n right: 1.25rem;\n}\n\n.styles-module__toolbarContainer___dIhma {\n position: relative;\n user-select: none;\n margin-left: auto;\n align-self: flex-end;\n display: flex;\n align-items: center;\n justify-content: center;\n background: #1a1a1a;\n color: #fff;\n border: none;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2), 0 4px 16px rgba(0, 0, 0, 0.1);\n pointer-events: auto;\n transition: width 0.4s cubic-bezier(0.19, 1, 0.22, 1), transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);\n}\n.styles-module__toolbarContainer___dIhma.styles-module__entrance___sgHd8 {\n animation: styles-module__toolbarEnter___u8RRu 0.5s cubic-bezier(0.34, 1.2, 0.64, 1) forwards;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__hiding___1td44 {\n animation: styles-module__toolbarHide___y8kaT 0.4s cubic-bezier(0.4, 0, 1, 1) forwards;\n pointer-events: none;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__collapsed___Rydsn {\n width: 44px;\n height: 44px;\n border-radius: 22px;\n padding: 0;\n cursor: pointer;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__collapsed___Rydsn svg {\n margin-top: -1px;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__collapsed___Rydsn:hover {\n background: #2a2a2a;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__collapsed___Rydsn:active {\n transform: scale(0.95);\n}\n.styles-module__toolbarContainer___dIhma.styles-module__expanded___ofKPx {\n height: 44px;\n border-radius: 1.5rem;\n padding: 0.375rem;\n width: 297px;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__expanded___ofKPx.styles-module__serverConnected___Gfbou {\n width: 337px;\n}\n\n.styles-module__toggleContent___0yfyP {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: opacity 0.1s cubic-bezier(0.19, 1, 0.22, 1);\n}\n.styles-module__toggleContent___0yfyP.styles-module__visible___KHwEW {\n opacity: 1;\n visibility: visible;\n pointer-events: auto;\n}\n.styles-module__toggleContent___0yfyP.styles-module__hidden___Ae8H4 {\n opacity: 0;\n pointer-events: none;\n}\n\n.styles-module__controlsContent___9GJWU {\n display: flex;\n align-items: center;\n gap: 0.375rem;\n transition: filter 0.8s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.8s cubic-bezier(0.19, 1, 0.22, 1), transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);\n}\n.styles-module__controlsContent___9GJWU.styles-module__visible___KHwEW {\n opacity: 1;\n filter: blur(0px);\n transform: scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.styles-module__controlsContent___9GJWU.styles-module__hidden___Ae8H4 {\n pointer-events: none;\n opacity: 0;\n filter: blur(10px);\n transform: scale(0.4);\n}\n\n.styles-module__badge___2XsgF {\n position: absolute;\n top: -13px;\n right: -13px;\n user-select: none;\n min-width: 18px;\n height: 18px;\n padding: 0 5px;\n border-radius: 9px;\n background-color: var(--ui-sniper-color-accent);\n color: white;\n font-size: 0.625rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15), inset 0 0 0 1px rgba(255, 255, 255, 0.04);\n opacity: 1;\n transition: transform 0.3s ease, opacity 0.2s ease;\n transform: scale(1);\n}\n.styles-module__badge___2XsgF.styles-module__fadeOut___6Ut6- {\n opacity: 0;\n transform: scale(0);\n pointer-events: none;\n}\n.styles-module__badge___2XsgF.styles-module__entrance___sgHd8 {\n animation: styles-module__badgeEnter___mVQLj 0.3s cubic-bezier(0.34, 1.2, 0.64, 1) 0.4s both;\n}\n\n.styles-module__controlButton___8Q0jc {\n position: relative;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 34px;\n height: 34px;\n border-radius: 50%;\n border: none;\n background: transparent;\n color: rgba(255, 255, 255, 0.85);\n transition: background-color 0.15s ease, color 0.15s ease, transform 0.1s ease, opacity 0.2s ease;\n}\n.styles-module__controlButton___8Q0jc:hover:not(:disabled):not([data-active=true]):not([data-failed=true]):not([data-auto-sync=true]):not([data-error=true]):not([data-no-hover=true]) {\n background: rgba(255, 255, 255, 0.12);\n color: #fff;\n}\n.styles-module__controlButton___8Q0jc:active:not(:disabled) {\n transform: scale(0.92);\n}\n.styles-module__controlButton___8Q0jc:disabled {\n opacity: 0.35;\n cursor: not-allowed;\n}\n.styles-module__controlButton___8Q0jc[data-active=true] {\n color: var(--ui-sniper-color-blue);\n background-color: color-mix(in srgb, var(--ui-sniper-color-blue) 25%, transparent);\n}\n.styles-module__controlButton___8Q0jc[data-error=true] {\n color: var(--ui-sniper-color-red);\n background-color: color-mix(in srgb, var(--ui-sniper-color-red) 25%, transparent);\n}\n.styles-module__controlButton___8Q0jc[data-danger]:hover:not(:disabled):not([data-active=true]):not([data-failed=true]) {\n background-color: color-mix(in srgb, var(--ui-sniper-color-red) 25%, transparent);\n color: var(--ui-sniper-color-red);\n}\n.styles-module__controlButton___8Q0jc[data-no-hover=true], .styles-module__controlButton___8Q0jc.styles-module__statusShowing___te6iu {\n cursor: default;\n pointer-events: none;\n background: transparent !important;\n}\n.styles-module__controlButton___8Q0jc[data-auto-sync=true] {\n color: var(--ui-sniper-color-green);\n background: transparent;\n cursor: default;\n}\n.styles-module__controlButton___8Q0jc[data-failed=true] {\n color: var(--ui-sniper-color-red);\n background-color: color-mix(in srgb, var(--ui-sniper-color-red) 25%, transparent);\n}\n\n.styles-module__buttonBadge___NeFWb {\n position: absolute;\n top: 0px;\n right: 0px;\n min-width: 16px;\n height: 16px;\n padding: 0 4px;\n border-radius: 8px;\n background-color: var(--ui-sniper-color-accent);\n color: white;\n font-size: 0.625rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow: 0 0 0 2px #1a1a1a, 0 1px 3px rgba(0, 0, 0, 0.2);\n pointer-events: none;\n}\n[data-ui-sniper-theme=light] .styles-module__buttonBadge___NeFWb {\n box-shadow: 0 0 0 2px #fff, 0 1px 3px rgba(0, 0, 0, 0.2);\n}\n\n@keyframes styles-module__mcpIndicatorPulseConnected___EDodZ {\n 0%, 100% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-green) 50%, transparent);\n }\n 50% {\n box-shadow: 0 0 0 5px color-mix(in srgb, var(--ui-sniper-color-green) 0%, transparent);\n }\n}\n@keyframes styles-module__mcpIndicatorPulseConnecting___cCYte {\n 0%, 100% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-yellow) 50%, transparent);\n }\n 50% {\n box-shadow: 0 0 0 5px color-mix(in srgb, var(--ui-sniper-color-yellow) 0%, transparent);\n }\n}\n.styles-module__mcpIndicator___zGJeL {\n position: absolute;\n top: 3px;\n right: 3px;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n pointer-events: none;\n transition: background-color 0.3s ease, opacity 0.15s ease, transform 0.15s ease;\n opacity: 1;\n transform: scale(1);\n}\n.styles-module__mcpIndicator___zGJeL.styles-module__connected___7c28g {\n background-color: var(--ui-sniper-color-green);\n animation: styles-module__mcpIndicatorPulseConnected___EDodZ 2.5s ease-in-out infinite;\n}\n.styles-module__mcpIndicator___zGJeL.styles-module__connecting___uo-CW {\n background-color: var(--ui-sniper-color-yellow);\n animation: styles-module__mcpIndicatorPulseConnecting___cCYte 1.5s ease-in-out infinite;\n}\n.styles-module__mcpIndicator___zGJeL.styles-module__hidden___Ae8H4 {\n opacity: 0;\n transform: scale(0);\n animation: none;\n}\n\n@keyframes styles-module__connectionPulse___-Zycw {\n 0%, 100% {\n opacity: 1;\n transform: scale(1);\n }\n 50% {\n opacity: 0.6;\n transform: scale(0.9);\n }\n}\n.styles-module__connectionIndicatorWrapper___L-e-3 {\n width: 8px;\n height: 34px;\n margin-left: 6px;\n margin-right: 6px;\n}\n\n.styles-module__connectionIndicator___afk9p {\n position: relative;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n opacity: 0;\n transition: opacity 0.3s ease, background-color 0.3s ease;\n cursor: default;\n}\n\n.styles-module__connectionIndicatorVisible___C-i5B {\n opacity: 1;\n}\n\n.styles-module__connectionIndicatorConnected___IY8pR {\n background-color: var(--ui-sniper-color-green);\n animation: styles-module__connectionPulse___-Zycw 2.5s ease-in-out infinite;\n}\n\n.styles-module__connectionIndicatorDisconnected___kmpaZ {\n background-color: var(--ui-sniper-color-red);\n animation: none;\n}\n\n.styles-module__connectionIndicatorConnecting___QmSLH {\n background-color: var(--ui-sniper-color-yellow);\n animation: styles-module__connectionPulse___-Zycw 1s ease-in-out infinite;\n}\n\n.styles-module__buttonWrapper___rBcdv {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.styles-module__buttonWrapper___rBcdv:hover .styles-module__buttonTooltip___Burd9 {\n opacity: 1;\n visibility: visible;\n transform: translateX(-50%) scale(1);\n transition-delay: 0.85s;\n}\n.styles-module__buttonWrapper___rBcdv:has(.styles-module__controlButton___8Q0jc:disabled):hover .styles-module__buttonTooltip___Burd9 {\n opacity: 0;\n visibility: hidden;\n}\n\n.styles-module__tooltipsInSession___-0lHH .styles-module__buttonWrapper___rBcdv:hover .styles-module__buttonTooltip___Burd9 {\n transition-delay: 0s;\n}\n\n.styles-module__sendButtonWrapper___UUxG6 {\n width: 0;\n opacity: 0;\n overflow: hidden;\n pointer-events: none;\n margin-left: -0.375rem;\n transition: width 0.4s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.3s cubic-bezier(0.19, 1, 0.22, 1), margin 0.4s cubic-bezier(0.19, 1, 0.22, 1);\n}\n.styles-module__sendButtonWrapper___UUxG6 .styles-module__controlButton___8Q0jc {\n transform: scale(0.8);\n transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);\n}\n.styles-module__sendButtonWrapper___UUxG6.styles-module__sendButtonVisible___WPSQU {\n width: 34px;\n opacity: 1;\n overflow: visible;\n pointer-events: auto;\n margin-left: 0;\n}\n.styles-module__sendButtonWrapper___UUxG6.styles-module__sendButtonVisible___WPSQU .styles-module__controlButton___8Q0jc {\n transform: scale(1);\n}\n\n.styles-module__buttonTooltip___Burd9 {\n position: absolute;\n bottom: calc(100% + 14px);\n left: 50%;\n transform: translateX(-50%) scale(0.95);\n padding: 6px 10px;\n background: #1a1a1a;\n color: rgba(255, 255, 255, 0.9);\n font-size: 12px;\n font-weight: 500;\n border-radius: 8px;\n white-space: nowrap;\n opacity: 0;\n visibility: hidden;\n pointer-events: none;\n z-index: 100001;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);\n transition: opacity 0.135s ease, transform 0.135s ease, visibility 0.135s ease;\n}\n.styles-module__buttonTooltip___Burd9::after {\n content: "";\n position: absolute;\n top: calc(100% - 4px);\n left: 50%;\n transform: translateX(-50%) rotate(45deg);\n width: 8px;\n height: 8px;\n background: #1a1a1a;\n border-radius: 0 0 2px 0;\n}\n\n.styles-module__shortcut___lEAQk {\n margin-left: 4px;\n opacity: 0.5;\n}\n\n.styles-module__tooltipBelow___m6ats .styles-module__buttonTooltip___Burd9 {\n bottom: auto;\n top: calc(100% + 14px);\n transform: translateX(-50%) scale(0.95);\n}\n.styles-module__tooltipBelow___m6ats .styles-module__buttonTooltip___Burd9::after {\n top: -4px;\n bottom: auto;\n border-radius: 2px 0 0 0;\n}\n\n.styles-module__tooltipBelow___m6ats .styles-module__buttonWrapper___rBcdv:hover .styles-module__buttonTooltip___Burd9 {\n transform: translateX(-50%) scale(1);\n}\n\n.styles-module__tooltipsHidden___VtLJG .styles-module__buttonTooltip___Burd9 {\n opacity: 0 !important;\n visibility: hidden !important;\n transition: none !important;\n}\n\n.styles-module__tooltipVisible___0jcCv,\n.styles-module__tooltipsHidden___VtLJG .styles-module__tooltipVisible___0jcCv {\n opacity: 1 !important;\n visibility: visible !important;\n transform: translateX(-50%) scale(1) !important;\n transition-delay: 0s !important;\n}\n\n.styles-module__buttonWrapperAlignLeft___myzIp .styles-module__buttonTooltip___Burd9 {\n left: 50%;\n transform: translateX(-12px) scale(0.95);\n}\n.styles-module__buttonWrapperAlignLeft___myzIp .styles-module__buttonTooltip___Burd9::after {\n left: 16px;\n}\n.styles-module__buttonWrapperAlignLeft___myzIp:hover .styles-module__buttonTooltip___Burd9 {\n transform: translateX(-12px) scale(1);\n}\n\n.styles-module__tooltipBelow___m6ats .styles-module__buttonWrapperAlignLeft___myzIp .styles-module__buttonTooltip___Burd9 {\n transform: translateX(-12px) scale(0.95);\n}\n.styles-module__tooltipBelow___m6ats .styles-module__buttonWrapperAlignLeft___myzIp:hover .styles-module__buttonTooltip___Burd9 {\n transform: translateX(-12px) scale(1);\n}\n\n.styles-module__buttonWrapperAlignRight___HCQFR .styles-module__buttonTooltip___Burd9 {\n left: 50%;\n transform: translateX(calc(-100% + 12px)) scale(0.95);\n}\n.styles-module__buttonWrapperAlignRight___HCQFR .styles-module__buttonTooltip___Burd9::after {\n left: auto;\n right: 8px;\n}\n.styles-module__buttonWrapperAlignRight___HCQFR:hover .styles-module__buttonTooltip___Burd9 {\n transform: translateX(calc(-100% + 12px)) scale(1);\n}\n\n.styles-module__tooltipBelow___m6ats .styles-module__buttonWrapperAlignRight___HCQFR .styles-module__buttonTooltip___Burd9 {\n transform: translateX(calc(-100% + 12px)) scale(0.95);\n}\n.styles-module__tooltipBelow___m6ats .styles-module__buttonWrapperAlignRight___HCQFR:hover .styles-module__buttonTooltip___Burd9 {\n transform: translateX(calc(-100% + 12px)) scale(1);\n}\n\n.styles-module__divider___c--s1 {\n width: 1px;\n height: 12px;\n background: rgba(255, 255, 255, 0.15);\n margin: 0 0.125rem;\n}\n\n.styles-module__overlay___Q1O9y {\n position: fixed;\n inset: 0;\n z-index: 99997;\n pointer-events: none;\n}\n.styles-module__overlay___Q1O9y > * {\n pointer-events: auto;\n}\n\n.styles-module__hoverHighlight___ogakW {\n position: fixed;\n border: 2px solid color-mix(in srgb, var(--ui-sniper-color-accent) 50%, transparent);\n border-radius: 4px;\n background-color: color-mix(in srgb, var(--ui-sniper-color-accent) 4%, transparent);\n pointer-events: none !important;\n box-sizing: border-box;\n will-change: opacity;\n contain: layout style;\n}\n.styles-module__hoverHighlight___ogakW.styles-module__enter___WFIki {\n animation: styles-module__hoverHighlightIn___6WYHY 0.12s ease-out forwards;\n}\n\n.styles-module__multiSelectOutline___cSJ-m {\n position: fixed;\n border: 2px dashed color-mix(in srgb, var(--ui-sniper-color-green) 60%, transparent);\n border-radius: 4px;\n pointer-events: none !important;\n background-color: color-mix(in srgb, var(--ui-sniper-color-green) 5%, transparent);\n box-sizing: border-box;\n will-change: opacity;\n}\n.styles-module__multiSelectOutline___cSJ-m.styles-module__enter___WFIki {\n animation: styles-module__fadeIn___b9qmf 0.15s ease-out forwards;\n}\n.styles-module__multiSelectOutline___cSJ-m.styles-module__exit___fyOJ0 {\n animation: styles-module__fadeOut___6Ut6- 0.15s ease-out forwards;\n}\n\n.styles-module__singleSelectOutline___QhX-O {\n position: fixed;\n border: 2px solid color-mix(in srgb, var(--ui-sniper-color-blue) 60%, transparent);\n border-radius: 4px;\n pointer-events: none !important;\n background-color: color-mix(in srgb, var(--ui-sniper-color-blue) 5%, transparent);\n box-sizing: border-box;\n will-change: opacity;\n}\n.styles-module__singleSelectOutline___QhX-O.styles-module__enter___WFIki {\n animation: styles-module__fadeIn___b9qmf 0.15s ease-out forwards;\n}\n.styles-module__singleSelectOutline___QhX-O.styles-module__exit___fyOJ0 {\n animation: styles-module__fadeOut___6Ut6- 0.15s ease-out forwards;\n}\n\n.styles-module__hoverTooltip___bvLk7 {\n position: fixed;\n font-size: 0.6875rem;\n font-weight: 500;\n color: #fff;\n background: rgba(0, 0, 0, 0.85);\n padding: 0.35rem 0.6rem;\n border-radius: 0.375rem;\n pointer-events: none !important;\n white-space: nowrap;\n max-width: 280px;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.styles-module__hoverTooltip___bvLk7.styles-module__enter___WFIki {\n animation: styles-module__hoverTooltipIn___FYGQx 0.1s ease-out forwards;\n}\n\n.styles-module__hoverReactPath___gx1IJ {\n font-size: 0.625rem;\n color: rgba(255, 255, 255, 0.6);\n margin-bottom: 0.15rem;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.styles-module__hoverElementName___QMLMl {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.styles-module__markersLayer___-25j1 {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n height: 0;\n z-index: 99998;\n pointer-events: none;\n}\n.styles-module__markersLayer___-25j1 > * {\n pointer-events: auto;\n}\n\n.styles-module__fixedMarkersLayer___ffyX6 {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 99998;\n pointer-events: none;\n}\n.styles-module__fixedMarkersLayer___ffyX6 > * {\n pointer-events: auto;\n}\n\n.styles-module__marker___6sQrs {\n position: absolute;\n width: 22px;\n height: 22px;\n background: var(--ui-sniper-color-blue);\n color: white;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 0.6875rem;\n font-weight: 600;\n transform: translate(-50%, -50%) scale(1);\n opacity: 1;\n cursor: pointer;\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), inset 0 0 0 1px rgba(0, 0, 0, 0.04);\n user-select: none;\n will-change: transform, opacity;\n contain: layout style;\n z-index: 1;\n}\n.styles-module__marker___6sQrs:hover {\n z-index: 2;\n}\n.styles-module__marker___6sQrs:not(.styles-module__enter___WFIki):not(.styles-module__exit___fyOJ0):not(.styles-module__clearing___FQ--7) {\n transition: background-color 0.15s ease, transform 0.1s ease;\n}\n.styles-module__marker___6sQrs.styles-module__enter___WFIki {\n animation: styles-module__markerIn___5FaAP 0.25s cubic-bezier(0.22, 1, 0.36, 1) both;\n}\n.styles-module__marker___6sQrs.styles-module__exit___fyOJ0 {\n animation: styles-module__markerOut___GU5jX 0.2s ease-out both;\n pointer-events: none;\n}\n.styles-module__marker___6sQrs.styles-module__clearing___FQ--7 {\n animation: styles-module__markerOut___GU5jX 0.15s ease-out both;\n pointer-events: none;\n}\n.styles-module__marker___6sQrs:not(.styles-module__enter___WFIki):not(.styles-module__exit___fyOJ0):not(.styles-module__clearing___FQ--7):hover {\n transform: translate(-50%, -50%) scale(1.1);\n}\n.styles-module__marker___6sQrs.styles-module__pending___2IHLC {\n position: fixed;\n background-color: var(--ui-sniper-color-blue);\n cursor: default;\n}\n.styles-module__marker___6sQrs.styles-module__fixed___dBMHC {\n position: fixed;\n}\n.styles-module__marker___6sQrs.styles-module__multiSelect___YWiuz {\n background-color: var(--ui-sniper-color-green);\n width: 26px;\n height: 26px;\n border-radius: 6px;\n font-size: 0.75rem;\n}\n.styles-module__marker___6sQrs.styles-module__multiSelect___YWiuz.styles-module__pending___2IHLC {\n background-color: var(--ui-sniper-color-green);\n}\n.styles-module__marker___6sQrs.styles-module__hovered___ZgXIy {\n background-color: var(--ui-sniper-color-red);\n}\n\n.styles-module__renumber___nCTxD {\n display: block;\n animation: styles-module__renumberRoll___Wgbq3 0.2s ease-out;\n}\n\n@keyframes styles-module__renumberRoll___Wgbq3 {\n 0% {\n transform: translateX(-40%);\n opacity: 0;\n }\n 100% {\n transform: translateX(0);\n opacity: 1;\n }\n}\n.styles-module__markerTooltip___aLJID {\n position: absolute;\n top: calc(100% + 10px);\n left: 50%;\n transform: translateX(-50%) scale(0.909);\n z-index: 100002;\n background: #1a1a1a;\n padding: 8px 0.75rem;\n border-radius: 0.75rem;\n font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n font-weight: 400;\n color: #fff;\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.08);\n min-width: 120px;\n max-width: 200px;\n pointer-events: none;\n cursor: default;\n}\n.styles-module__markerTooltip___aLJID.styles-module__enter___WFIki {\n animation: styles-module__tooltipIn___0N31w 0.1s ease-out forwards;\n}\n\n.styles-module__markerQuote___FHmrz {\n display: block;\n font-size: 12px;\n font-style: italic;\n color: rgba(255, 255, 255, 0.6);\n margin-bottom: 0.3125rem;\n line-height: 1.4;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.styles-module__markerNote___QkrrS {\n display: block;\n font-size: 13px;\n font-weight: 400;\n line-height: 1.4;\n color: #fff;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n padding-bottom: 2px;\n}\n\n.styles-module__markerHint___2iF-6 {\n display: block;\n font-size: 0.625rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.6);\n margin-top: 0.375rem;\n white-space: nowrap;\n}\n\n.styles-module__settingsPanel___OxX3Y {\n position: absolute;\n right: 5px;\n bottom: calc(100% + 0.5rem);\n z-index: 1;\n overflow: hidden;\n background: #1c1c1c;\n border-radius: 1rem;\n padding: 13px 0 16px;\n min-width: 205px;\n cursor: default;\n opacity: 1;\n box-shadow: 0 1px 8px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(0, 0, 0, 0.04);\n transition: background-color 0.25s ease, box-shadow 0.25s ease;\n}\n.styles-module__settingsPanel___OxX3Y::before, .styles-module__settingsPanel___OxX3Y::after {\n content: "";\n position: absolute;\n top: 0;\n bottom: 0;\n width: 16px;\n z-index: 2;\n pointer-events: none;\n}\n.styles-module__settingsPanel___OxX3Y::before {\n left: 0;\n background: linear-gradient(to right, #1c1c1c 0%, transparent 100%);\n}\n.styles-module__settingsPanel___OxX3Y::after {\n right: 0;\n background: linear-gradient(to left, #1c1c1c 0%, transparent 100%);\n}\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsHeader___pwDY9,\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsBrand___0gJeM,\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsBrandSlash___uTG18,\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsVersion___TUcFq,\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsSection___m-YM2,\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsLabel___8UjfX,\n.styles-module__settingsPanel___OxX3Y .styles-module__cycleButton___FMKfw,\n.styles-module__settingsPanel___OxX3Y .styles-module__cycleDot___nPgLY,\n.styles-module__settingsPanel___OxX3Y .styles-module__dropdownButton___16NPz,\n.styles-module__settingsPanel___OxX3Y .styles-module__toggleLabel___Xm8Aa,\n.styles-module__settingsPanel___OxX3Y .styles-module__customCheckbox___U39ax,\n.styles-module__settingsPanel___OxX3Y .styles-module__sliderLabel___U8sPr,\n.styles-module__settingsPanel___OxX3Y .styles-module__slider___GLdxp,\n.styles-module__settingsPanel___OxX3Y .styles-module__themeToggle___2rUjA {\n transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;\n}\n.styles-module__settingsPanel___OxX3Y.styles-module__enter___WFIki {\n opacity: 1;\n transform: translateY(0) scale(1);\n filter: blur(0px);\n transition: opacity 0.2s ease, transform 0.2s ease, filter 0.2s ease;\n}\n.styles-module__settingsPanel___OxX3Y.styles-module__exit___fyOJ0 {\n opacity: 0;\n transform: translateY(8px) scale(0.95);\n filter: blur(5px);\n pointer-events: none;\n transition: opacity 0.1s ease, transform 0.1s ease, filter 0.1s ease;\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y {\n background: #1a1a1a;\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.08);\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y .styles-module__settingsLabel___8UjfX {\n color: rgba(255, 255, 255, 0.6);\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y .styles-module__settingsOption___UNa12 {\n color: rgba(255, 255, 255, 0.85);\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y .styles-module__settingsOption___UNa12:hover {\n background: rgba(255, 255, 255, 0.1);\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y .styles-module__settingsOption___UNa12.styles-module__selected___OwRqP {\n background: rgba(255, 255, 255, 0.15);\n color: #fff;\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y .styles-module__toggleLabel___Xm8Aa {\n color: rgba(255, 255, 255, 0.85);\n}\n\n.styles-module__settingsPanelContainer___Xksv8 {\n overflow: visible;\n position: relative;\n display: flex;\n padding: 0 1rem;\n}\n\n.styles-module__settingsPage___6YfHH {\n min-width: 100%;\n flex-shrink: 0;\n transition: transform 0.2s ease, opacity 0.2s ease;\n transition-delay: 0s;\n opacity: 1;\n}\n\n.styles-module__settingsPage___6YfHH.styles-module__slideLeft___Ps01J {\n transform: translateX(-24px);\n opacity: 0;\n pointer-events: none;\n}\n\n.styles-module__automationsPage___uvCq6 {\n position: absolute;\n top: 0;\n left: 24px;\n width: 100%;\n height: 100%;\n padding: 3px 1rem 0;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n transition: transform 0.2s ease, opacity 0.2s ease;\n opacity: 0;\n pointer-events: none;\n}\n\n.styles-module__automationsPage___uvCq6.styles-module__slideIn___4-qXe {\n transform: translateX(-24px);\n opacity: 1;\n pointer-events: auto;\n}\n\n.styles-module__settingsNavLink___wCzJt {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 0;\n border: none;\n background: transparent;\n font-family: inherit;\n font-size: 0.8125rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.5);\n cursor: pointer;\n transition: color 0.15s ease;\n}\n.styles-module__settingsNavLink___wCzJt:hover {\n color: rgba(255, 255, 255, 0.9);\n}\n[data-ui-sniper-theme=light] .styles-module__settingsNavLink___wCzJt {\n color: rgba(0, 0, 0, 0.5);\n}\n[data-ui-sniper-theme=light] .styles-module__settingsNavLink___wCzJt:hover {\n color: rgba(0, 0, 0, 0.8);\n}\n.styles-module__settingsNavLink___wCzJt svg {\n color: rgba(255, 255, 255, 0.4);\n transition: color 0.15s ease;\n}\n.styles-module__settingsNavLink___wCzJt:hover svg {\n color: #fff;\n}\n[data-ui-sniper-theme=light] .styles-module__settingsNavLink___wCzJt svg {\n color: rgba(0, 0, 0, 0.25);\n}\n[data-ui-sniper-theme=light] .styles-module__settingsNavLink___wCzJt:hover svg {\n color: rgba(0, 0, 0, 0.8);\n}\n\n.styles-module__settingsNavLinkRight___ZWwhj {\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.styles-module__mcpNavIndicator___cl9pO {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n flex-shrink: 0;\n}\n.styles-module__mcpNavIndicator___cl9pO.styles-module__connected___7c28g {\n background-color: var(--ui-sniper-color-green);\n animation: styles-module__mcpPulse___uNggr 2.5s ease-in-out infinite;\n}\n.styles-module__mcpNavIndicator___cl9pO.styles-module__connecting___uo-CW {\n background-color: var(--ui-sniper-color-yellow);\n animation: styles-module__mcpPulse___uNggr 1.5s ease-in-out infinite;\n}\n\n.styles-module__settingsBackButton___bIe2j {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 6px 0 12px 0;\n margin: -6px 0 0.5rem 0;\n border: none;\n border-bottom: 1px solid rgba(255, 255, 255, 0.07);\n border-radius: 0;\n background: transparent;\n font-family: inherit;\n font-size: 0.8125rem;\n font-weight: 500;\n letter-spacing: -0.15px;\n color: #fff;\n cursor: pointer;\n transition: transform 0.12s cubic-bezier(0.32, 0.72, 0, 1);\n}\n.styles-module__settingsBackButton___bIe2j svg {\n opacity: 0.4;\n flex-shrink: 0;\n transition: opacity 0.15s ease, transform 0.18s cubic-bezier(0.32, 0.72, 0, 1);\n}\n.styles-module__settingsBackButton___bIe2j:hover {\n border-bottom-color: rgba(255, 255, 255, 0.07);\n}\n.styles-module__settingsBackButton___bIe2j:hover svg {\n opacity: 1;\n}\n[data-ui-sniper-theme=light] .styles-module__settingsBackButton___bIe2j {\n color: rgba(0, 0, 0, 0.85);\n border-bottom-color: rgba(0, 0, 0, 0.08);\n}\n[data-ui-sniper-theme=light] .styles-module__settingsBackButton___bIe2j:hover {\n border-bottom-color: rgba(0, 0, 0, 0.08);\n}\n\n.styles-module__automationHeader___InP0r {\n display: flex;\n align-items: center;\n gap: 0.125rem;\n font-size: 0.8125rem;\n font-weight: 400;\n color: #fff;\n}\n[data-ui-sniper-theme=light] .styles-module__automationHeader___InP0r {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.styles-module__automationDescription___NKlmo {\n font-size: 0.6875rem;\n font-weight: 300;\n color: rgba(255, 255, 255, 0.5);\n margin-top: 2px;\n line-height: 14px;\n}\n[data-ui-sniper-theme=light] .styles-module__automationDescription___NKlmo {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__learnMoreLink___8xv-x {\n color: rgba(255, 255, 255, 0.8);\n text-decoration: underline dotted;\n text-decoration-color: rgba(255, 255, 255, 0.2);\n text-underline-offset: 2px;\n transition: color 0.15s ease;\n}\n.styles-module__learnMoreLink___8xv-x:hover {\n color: #fff;\n}\n[data-ui-sniper-theme=light] .styles-module__learnMoreLink___8xv-x {\n color: rgba(0, 0, 0, 0.6);\n text-decoration-color: rgba(0, 0, 0, 0.2);\n}\n[data-ui-sniper-theme=light] .styles-module__learnMoreLink___8xv-x:hover {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.styles-module__autoSendRow___UblX5 {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.styles-module__autoSendLabel___icDc2 {\n font-size: 0.6875rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.4);\n transition: color 0.15s ease;\n}\n.styles-module__autoSendLabel___icDc2.styles-module__active___-zoN6 {\n color: #66b8ff;\n color: color(display-p3 0.4 0.72 1);\n}\n[data-ui-sniper-theme=light] .styles-module__autoSendLabel___icDc2 {\n color: rgba(0, 0, 0, 0.4);\n}\n[data-ui-sniper-theme=light] .styles-module__autoSendLabel___icDc2.styles-module__active___-zoN6 {\n color: var(--ui-sniper-color-blue);\n}\n\n.styles-module__webhookUrlInput___2375C {\n display: block;\n width: 100%;\n flex: 1;\n min-height: 60px;\n box-sizing: border-box;\n margin-top: 11px;\n padding: 8px 10px;\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 6px;\n background: rgba(255, 255, 255, 0.03);\n font-family: inherit;\n font-size: 0.75rem;\n font-weight: 400;\n color: #fff;\n outline: none;\n resize: none;\n user-select: text;\n transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;\n}\n.styles-module__webhookUrlInput___2375C::placeholder {\n color: rgba(255, 255, 255, 0.3);\n}\n.styles-module__webhookUrlInput___2375C:focus {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgba(255, 255, 255, 0.08);\n}\n[data-ui-sniper-theme=light] .styles-module__webhookUrlInput___2375C {\n border-color: rgba(0, 0, 0, 0.1);\n background: rgba(0, 0, 0, 0.03);\n color: rgba(0, 0, 0, 0.85);\n}\n[data-ui-sniper-theme=light] .styles-module__webhookUrlInput___2375C::placeholder {\n color: rgba(0, 0, 0, 0.3);\n}\n[data-ui-sniper-theme=light] .styles-module__webhookUrlInput___2375C:focus {\n border-color: rgba(0, 0, 0, 0.25);\n background: rgba(0, 0, 0, 0.05);\n}\n\n.styles-module__settingsHeader___pwDY9 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-height: 24px;\n margin-bottom: 0.5rem;\n padding-bottom: 9px;\n border-bottom: 1px solid rgba(255, 255, 255, 0.07);\n}\n\n.styles-module__settingsBrand___0gJeM {\n font-size: 0.8125rem;\n font-weight: 600;\n letter-spacing: -0.0094em;\n color: #fff;\n text-decoration: none;\n}\n\n.styles-module__settingsBrandSlash___uTG18 {\n color: var(--ui-sniper-color-accent);\n transition: color 0.2s ease;\n}\n\n.styles-module__settingsVersion___TUcFq {\n font-size: 11px;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.4);\n margin-left: auto;\n letter-spacing: -0.0094em;\n}\n\n.styles-module__settingsSection___m-YM2 + .styles-module__settingsSection___m-YM2 {\n margin-top: 0.5rem;\n padding-top: 0.5rem;\n border-top: 1px solid rgba(255, 255, 255, 0.07);\n}\n.styles-module__settingsSection___m-YM2.styles-module__settingsSectionExtraPadding___jdhFV {\n padding-top: calc(0.5rem + 4px);\n}\n\n.styles-module__settingsSectionGrow___h-5HZ {\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n\n.styles-module__settingsRow___3sdhc {\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-height: 24px;\n}\n.styles-module__settingsRow___3sdhc.styles-module__settingsRowMarginTop___zA0Sp {\n margin-top: 8px;\n}\n\n.styles-module__dropdownContainer___BVnxe {\n position: relative;\n}\n\n.styles-module__dropdownButton___16NPz {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.25rem 0.5rem;\n border: none;\n border-radius: 0.375rem;\n background: transparent;\n font-size: 0.8125rem;\n font-weight: 600;\n color: #fff;\n cursor: pointer;\n transition: background-color 0.15s ease, color 0.15s ease;\n letter-spacing: -0.0094em;\n}\n.styles-module__dropdownButton___16NPz:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n.styles-module__dropdownButton___16NPz svg {\n opacity: 0.6;\n}\n\n.styles-module__cycleButton___FMKfw {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0;\n border: none;\n background: transparent;\n font-size: 0.8125rem;\n font-weight: 500;\n color: #fff;\n cursor: pointer;\n letter-spacing: -0.0094em;\n}\n[data-ui-sniper-theme=light] .styles-module__cycleButton___FMKfw {\n color: rgba(0, 0, 0, 0.85);\n}\n.styles-module__cycleButton___FMKfw:disabled {\n opacity: 0.35;\n cursor: not-allowed;\n}\n\n.styles-module__settingsRowDisabled___EgS0V .styles-module__settingsLabel___8UjfX {\n color: rgba(255, 255, 255, 0.2);\n}\n[data-ui-sniper-theme=light] .styles-module__settingsRowDisabled___EgS0V .styles-module__settingsLabel___8UjfX {\n color: rgba(0, 0, 0, 0.2);\n}\n.styles-module__settingsRowDisabled___EgS0V .styles-module__toggleSwitch___l4Ygm {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n@keyframes styles-module__cycleTextIn___Q6zJf {\n 0% {\n opacity: 0;\n transform: translateY(-6px);\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n.styles-module__cycleButtonText___fD1LR {\n display: inline-block;\n animation: styles-module__cycleTextIn___Q6zJf 0.2s ease-out;\n}\n\n.styles-module__cycleDots___LWuoQ {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.styles-module__cycleDot___nPgLY {\n width: 3px;\n height: 3px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.3);\n transform: scale(0.667);\n transition: background-color 0.25s ease-out, transform 0.25s ease-out;\n}\n.styles-module__cycleDot___nPgLY.styles-module__active___-zoN6 {\n background: #fff;\n transform: scale(1);\n}\n[data-ui-sniper-theme=light] .styles-module__cycleDot___nPgLY {\n background: rgba(0, 0, 0, 0.2);\n}\n[data-ui-sniper-theme=light] .styles-module__cycleDot___nPgLY.styles-module__active___-zoN6 {\n background: rgba(0, 0, 0, 0.7);\n}\n\n.styles-module__dropdownMenu___k73ER {\n position: absolute;\n right: 0;\n top: calc(100% + 0.25rem);\n background: #1a1a1a;\n border-radius: 0.5rem;\n padding: 0.25rem;\n min-width: 120px;\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.1);\n z-index: 10;\n animation: styles-module__scaleIn___c-r1K 0.15s ease-out;\n}\n\n.styles-module__dropdownItem___ylsLj {\n width: 100%;\n display: flex;\n align-items: center;\n padding: 0.5rem 0.625rem;\n border: none;\n border-radius: 0.375rem;\n background: transparent;\n font-size: 0.8125rem;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.85);\n cursor: pointer;\n text-align: left;\n transition: background-color 0.15s ease, color 0.15s ease;\n letter-spacing: -0.0094em;\n}\n.styles-module__dropdownItem___ylsLj:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n.styles-module__dropdownItem___ylsLj.styles-module__selected___OwRqP {\n background: rgba(255, 255, 255, 0.12);\n color: #fff;\n font-weight: 600;\n}\n\n.styles-module__settingsLabel___8UjfX {\n font-size: 0.8125rem;\n font-weight: 400;\n letter-spacing: -0.0094em;\n color: rgba(255, 255, 255, 0.5);\n display: flex;\n align-items: center;\n gap: 0.125rem;\n}\n[data-ui-sniper-theme=light] .styles-module__settingsLabel___8UjfX {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__settingsLabelMarker___ewdtV {\n padding-top: 3px;\n margin-bottom: 10px;\n}\n\n.styles-module__settingsOptions___LyrBA {\n display: flex;\n gap: 0.25rem;\n}\n\n.styles-module__settingsOption___UNa12 {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.25rem;\n padding: 0.375rem 0.5rem;\n border: none;\n border-radius: 0.375rem;\n background: transparent;\n font-size: 0.6875rem;\n font-weight: 500;\n color: rgba(0, 0, 0, 0.7);\n cursor: pointer;\n transition: background-color 0.15s ease, color 0.15s ease;\n}\n.styles-module__settingsOption___UNa12:hover {\n background: rgba(0, 0, 0, 0.05);\n}\n.styles-module__settingsOption___UNa12.styles-module__selected___OwRqP {\n background: color-mix(in srgb, var(--ui-sniper-color-blue) 15%, transparent);\n color: var(--ui-sniper-color-blue);\n}\n\n.styles-module__sliderContainer___ducXj {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.styles-module__slider___GLdxp {\n -webkit-appearance: none;\n appearance: none;\n width: 100%;\n height: 4px;\n background: rgba(255, 255, 255, 0.15);\n border-radius: 2px;\n outline: none;\n cursor: pointer;\n}\n.styles-module__slider___GLdxp::-webkit-slider-thumb {\n -webkit-appearance: none;\n appearance: none;\n width: 14px;\n height: 14px;\n background: white;\n border-radius: 50%;\n cursor: pointer;\n transition: transform 0.15s ease, box-shadow 0.15s ease;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\n}\n.styles-module__slider___GLdxp::-moz-range-thumb {\n width: 14px;\n height: 14px;\n background: white;\n border: none;\n border-radius: 50%;\n cursor: pointer;\n transition: transform 0.15s ease, box-shadow 0.15s ease;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\n}\n.styles-module__slider___GLdxp:hover::-webkit-slider-thumb {\n transform: scale(1.15);\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);\n}\n.styles-module__slider___GLdxp:hover::-moz-range-thumb {\n transform: scale(1.15);\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);\n}\n\n.styles-module__sliderLabels___FhLDB {\n display: flex;\n justify-content: space-between;\n}\n\n.styles-module__sliderLabel___U8sPr {\n font-size: 0.625rem;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.4);\n cursor: pointer;\n transition: color 0.15s ease;\n}\n.styles-module__sliderLabel___U8sPr:hover {\n color: rgba(255, 255, 255, 0.7);\n}\n.styles-module__sliderLabel___U8sPr.styles-module__active___-zoN6 {\n color: rgba(255, 255, 255, 0.9);\n}\n\n.styles-module__colorOptions___iHCNX {\n display: flex;\n gap: 0.5rem;\n margin-top: 0.375rem;\n margin-bottom: 1px;\n}\n\n.styles-module__colorOption___IodiY {\n display: block;\n width: 20px;\n height: 20px;\n border-radius: 50%;\n border: 2px solid transparent;\n background-color: var(--swatch);\n cursor: pointer;\n transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1);\n}\n@supports (color: color(display-p3 0 0 0)) {\n .styles-module__colorOption___IodiY {\n background-color: var(--swatch-p3);\n }\n}\n.styles-module__colorOption___IodiY:hover {\n transform: scale(1.15);\n}\n.styles-module__colorOption___IodiY.styles-module__selected___OwRqP {\n transform: scale(0.83);\n}\n\n.styles-module__colorOptionRing___U2xpo {\n display: flex;\n width: 24px;\n height: 24px;\n border: 2px solid transparent;\n border-radius: 50%;\n transition: border-color 0.3s ease;\n}\n.styles-module__colorOptionRing___U2xpo.styles-module__selected___OwRqP {\n border-color: var(--swatch);\n}\n@supports (color: color(display-p3 0 0 0)) {\n .styles-module__colorOptionRing___U2xpo.styles-module__selected___OwRqP {\n border-color: var(--swatch-p3);\n }\n}\n\n.styles-module__settingsToggle___fBrFn {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n cursor: pointer;\n}\n.styles-module__settingsToggle___fBrFn + .styles-module__settingsToggle___fBrFn {\n margin-top: calc(0.5rem + 6px);\n}\n.styles-module__settingsToggle___fBrFn input[type=checkbox] {\n position: absolute;\n opacity: 0;\n width: 0;\n height: 0;\n}\n.styles-module__settingsToggle___fBrFn.styles-module__settingsToggleMarginBottom___MZUyF {\n margin-bottom: calc(0.5rem + 6px);\n}\n\n.styles-module__customCheckbox___U39ax {\n position: relative;\n width: 14px;\n height: 14px;\n border: 1px solid rgba(255, 255, 255, 0.2);\n border-radius: 4px;\n background: rgba(255, 255, 255, 0.05);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n transition: background-color 0.25s ease, border-color 0.25s ease;\n}\n.styles-module__customCheckbox___U39ax svg {\n color: #1a1a1a;\n opacity: 1;\n transition: opacity 0.15s ease;\n}\ninput[type=checkbox]:checked + .styles-module__customCheckbox___U39ax {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgb(255, 255, 255);\n}\n[data-ui-sniper-theme=light] .styles-module__customCheckbox___U39ax {\n border: 1px solid rgba(0, 0, 0, 0.15);\n background: #fff;\n}\n[data-ui-sniper-theme=light] .styles-module__customCheckbox___U39ax.styles-module__checked___mnZLo {\n border-color: #1a1a1a;\n background: #1a1a1a;\n}\n[data-ui-sniper-theme=light] .styles-module__customCheckbox___U39ax.styles-module__checked___mnZLo svg {\n color: #fff;\n}\n\n.styles-module__toggleLabel___Xm8Aa {\n font-size: 0.8125rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.5);\n letter-spacing: -0.0094em;\n display: flex;\n align-items: center;\n gap: 0.25rem;\n}\n[data-ui-sniper-theme=light] .styles-module__toggleLabel___Xm8Aa {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__toggleSwitch___l4Ygm {\n position: relative;\n display: inline-block;\n width: 24px;\n height: 16px;\n flex-shrink: 0;\n cursor: pointer;\n transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n}\n.styles-module__toggleSwitch___l4Ygm input {\n opacity: 0;\n width: 0;\n height: 0;\n}\n.styles-module__toggleSwitch___l4Ygm input:checked + .styles-module__toggleSlider___wprIn {\n background-color: var(--ui-sniper-color-blue);\n}\n.styles-module__toggleSwitch___l4Ygm input:checked + .styles-module__toggleSlider___wprIn::before {\n transform: translateX(8px);\n}\n.styles-module__toggleSwitch___l4Ygm.styles-module__disabled___332Jw {\n opacity: 0.4;\n}\n.styles-module__toggleSwitch___l4Ygm.styles-module__disabled___332Jw .styles-module__toggleSlider___wprIn {\n cursor: not-allowed;\n}\n\n.styles-module__toggleSlider___wprIn {\n position: absolute;\n cursor: pointer;\n inset: 0;\n border-radius: 16px;\n background: #484848;\n}\n[data-ui-sniper-theme=light] .styles-module__toggleSlider___wprIn {\n background: #dddddd;\n}\n.styles-module__toggleSlider___wprIn::before {\n content: "";\n position: absolute;\n height: 12px;\n width: 12px;\n left: 2px;\n bottom: 2px;\n background: white;\n border-radius: 50%;\n transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n@keyframes styles-module__mcpPulse___uNggr {\n 0% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-green) 50%, transparent);\n }\n 70% {\n box-shadow: 0 0 0 6px color-mix(in srgb, var(--ui-sniper-color-green) 0%, transparent);\n }\n 100% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-green) 0%, transparent);\n }\n}\n@keyframes styles-module__mcpPulseError___fov9B {\n 0% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-red) 50%, transparent);\n }\n 70% {\n box-shadow: 0 0 0 6px color-mix(in srgb, var(--ui-sniper-color-red) 0%, transparent);\n }\n 100% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-red) 0%, transparent);\n }\n}\n.styles-module__mcpStatusDot___ibgkc {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n flex-shrink: 0;\n}\n.styles-module__mcpStatusDot___ibgkc.styles-module__connecting___uo-CW {\n background-color: var(--ui-sniper-color-yellow);\n animation: styles-module__mcpPulse___uNggr 1.5s infinite;\n}\n.styles-module__mcpStatusDot___ibgkc.styles-module__connected___7c28g {\n background-color: var(--ui-sniper-color-green);\n animation: styles-module__mcpPulse___uNggr 2.5s ease-in-out infinite;\n}\n.styles-module__mcpStatusDot___ibgkc.styles-module__disconnected___cHPxR {\n background-color: var(--ui-sniper-color-red);\n animation: styles-module__mcpPulseError___fov9B 2s infinite;\n}\n\n.styles-module__drawCanvas___7cG9U {\n position: fixed;\n inset: 0;\n z-index: 99996;\n pointer-events: none !important;\n}\n.styles-module__drawCanvas___7cG9U.styles-module__active___-zoN6 {\n pointer-events: auto !important;\n cursor: crosshair !important;\n}\n.styles-module__drawCanvas___7cG9U.styles-module__active___-zoN6[data-stroke-hover] {\n cursor: pointer !important;\n}\n\n.styles-module__dragSelection___kZLq2 {\n position: fixed;\n top: 0;\n left: 0;\n border: 2px solid color-mix(in srgb, var(--ui-sniper-color-green) 60%, transparent);\n border-radius: 4px;\n background-color: color-mix(in srgb, var(--ui-sniper-color-green) 8%, transparent);\n pointer-events: none;\n z-index: 99997;\n will-change: transform, width, height;\n contain: layout style;\n}\n\n.styles-module__dragCount___KM90j {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: var(--ui-sniper-color-green);\n color: white;\n font-size: 0.875rem;\n font-weight: 600;\n padding: 0.25rem 0.5rem;\n border-radius: 1rem;\n min-width: 1.5rem;\n text-align: center;\n}\n\n.styles-module__highlightsContainer___-0xzG {\n position: fixed;\n top: 0;\n left: 0;\n pointer-events: none;\n z-index: 99996;\n}\n\n.styles-module__selectedElementHighlight___fyVlI {\n position: fixed;\n top: 0;\n left: 0;\n border: 2px solid color-mix(in srgb, var(--ui-sniper-color-green) 50%, transparent);\n border-radius: 4px;\n background: color-mix(in srgb, var(--ui-sniper-color-green) 6%, transparent);\n pointer-events: none;\n will-change: transform, width, height;\n contain: layout style;\n}\n\n[data-ui-sniper-theme=light] .styles-module__toolbarContainer___dIhma {\n background: #fff;\n color: rgba(0, 0, 0, 0.85);\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(0, 0, 0, 0.04);\n}\n[data-ui-sniper-theme=light] .styles-module__toolbarContainer___dIhma.styles-module__collapsed___Rydsn:hover {\n background: #f5f5f5;\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc {\n color: rgba(0, 0, 0, 0.5);\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc:hover:not(:disabled):not([data-active=true]):not([data-failed=true]):not([data-auto-sync=true]):not([data-error=true]):not([data-no-hover=true]) {\n background: rgba(0, 0, 0, 0.06);\n color: rgba(0, 0, 0, 0.85);\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc[data-active=true] {\n color: var(--ui-sniper-color-blue);\n background: color-mix(in srgb, var(--ui-sniper-color-blue) 15%, transparent);\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc[data-error=true] {\n color: var(--ui-sniper-color-red);\n background: color-mix(in srgb, var(--ui-sniper-color-red) 15%, transparent);\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc[data-danger]:hover:not(:disabled):not([data-active=true]):not([data-failed=true]) {\n color: var(--ui-sniper-color-red);\n background: color-mix(in srgb, var(--ui-sniper-color-red) 15%, transparent);\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc[data-auto-sync=true] {\n color: var(--ui-sniper-color-green);\n background: transparent;\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc[data-failed=true] {\n color: var(--ui-sniper-color-red);\n background: color-mix(in srgb, var(--ui-sniper-color-red) 15%, transparent);\n}\n[data-ui-sniper-theme=light] .styles-module__buttonTooltip___Burd9 {\n background: #fff;\n color: rgba(0, 0, 0, 0.85);\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(0, 0, 0, 0.04);\n}\n[data-ui-sniper-theme=light] .styles-module__buttonTooltip___Burd9::after {\n background: #fff;\n}\n[data-ui-sniper-theme=light] .styles-module__divider___c--s1 {\n background: rgba(0, 0, 0, 0.1);\n}';
|
|
7477
|
-
var classNames5 = { "toolbar": "styles-module__toolbar___wNsdK", "markersLayer": "styles-module__markersLayer___-25j1", "fixedMarkersLayer": "styles-module__fixedMarkersLayer___ffyX6", "controlsContent": "styles-module__controlsContent___9GJWU", "disableTransitions": "styles-module__disableTransitions___EopxO", "toolbarContainer": "styles-module__toolbarContainer___dIhma", "entrance": "styles-module__entrance___sgHd8", "toolbarEnter": "styles-module__toolbarEnter___u8RRu", "hiding": "styles-module__hiding___1td44", "toolbarHide": "styles-module__toolbarHide___y8kaT", "collapsed": "styles-module__collapsed___Rydsn", "expanded": "styles-module__expanded___ofKPx", "serverConnected": "styles-module__serverConnected___Gfbou", "toggleContent": "styles-module__toggleContent___0yfyP", "visible": "styles-module__visible___KHwEW", "hidden": "styles-module__hidden___Ae8H4", "badge": "styles-module__badge___2XsgF", "fadeOut": "styles-module__fadeOut___6Ut6-", "badgeEnter": "styles-module__badgeEnter___mVQLj", "controlButton": "styles-module__controlButton___8Q0jc", "statusShowing": "styles-module__statusShowing___te6iu", "buttonBadge": "styles-module__buttonBadge___NeFWb", "mcpIndicator": "styles-module__mcpIndicator___zGJeL", "connected": "styles-module__connected___7c28g", "mcpIndicatorPulseConnected": "styles-module__mcpIndicatorPulseConnected___EDodZ", "connecting": "styles-module__connecting___uo-CW", "mcpIndicatorPulseConnecting": "styles-module__mcpIndicatorPulseConnecting___cCYte", "connectionIndicatorWrapper": "styles-module__connectionIndicatorWrapper___L-e-3", "connectionIndicator": "styles-module__connectionIndicator___afk9p", "connectionIndicatorVisible": "styles-module__connectionIndicatorVisible___C-i5B", "connectionIndicatorConnected": "styles-module__connectionIndicatorConnected___IY8pR", "connectionPulse": "styles-module__connectionPulse___-Zycw", "connectionIndicatorDisconnected": "styles-module__connectionIndicatorDisconnected___kmpaZ", "connectionIndicatorConnecting": "styles-module__connectionIndicatorConnecting___QmSLH", "buttonWrapper": "styles-module__buttonWrapper___rBcdv", "buttonTooltip": "styles-module__buttonTooltip___Burd9", "tooltipsInSession": "styles-module__tooltipsInSession___-0lHH", "sendButtonWrapper": "styles-module__sendButtonWrapper___UUxG6", "sendButtonVisible": "styles-module__sendButtonVisible___WPSQU", "shortcut": "styles-module__shortcut___lEAQk", "tooltipBelow": "styles-module__tooltipBelow___m6ats", "tooltipsHidden": "styles-module__tooltipsHidden___VtLJG", "tooltipVisible": "styles-module__tooltipVisible___0jcCv", "buttonWrapperAlignLeft": "styles-module__buttonWrapperAlignLeft___myzIp", "buttonWrapperAlignRight": "styles-module__buttonWrapperAlignRight___HCQFR", "divider": "styles-module__divider___c--s1", "overlay": "styles-module__overlay___Q1O9y", "hoverHighlight": "styles-module__hoverHighlight___ogakW", "enter": "styles-module__enter___WFIki", "hoverHighlightIn": "styles-module__hoverHighlightIn___6WYHY", "multiSelectOutline": "styles-module__multiSelectOutline___cSJ-m", "fadeIn": "styles-module__fadeIn___b9qmf", "exit": "styles-module__exit___fyOJ0", "singleSelectOutline": "styles-module__singleSelectOutline___QhX-O", "hoverTooltip": "styles-module__hoverTooltip___bvLk7", "hoverTooltipIn": "styles-module__hoverTooltipIn___FYGQx", "hoverReactPath": "styles-module__hoverReactPath___gx1IJ", "hoverElementName": "styles-module__hoverElementName___QMLMl", "marker": "styles-module__marker___6sQrs", "clearing": "styles-module__clearing___FQ--7", "markerIn": "styles-module__markerIn___5FaAP", "markerOut": "styles-module__markerOut___GU5jX", "pending": "styles-module__pending___2IHLC", "fixed": "styles-module__fixed___dBMHC", "multiSelect": "styles-module__multiSelect___YWiuz", "hovered": "styles-module__hovered___ZgXIy", "renumber": "styles-module__renumber___nCTxD", "renumberRoll": "styles-module__renumberRoll___Wgbq3", "markerTooltip": "styles-module__markerTooltip___aLJID", "tooltipIn": "styles-module__tooltipIn___0N31w", "markerQuote": "styles-module__markerQuote___FHmrz", "markerNote": "styles-module__markerNote___QkrrS", "markerHint": "styles-module__markerHint___2iF-6", "settingsPanel": "styles-module__settingsPanel___OxX3Y", "settingsHeader": "styles-module__settingsHeader___pwDY9", "settingsBrand": "styles-module__settingsBrand___0gJeM", "settingsBrandSlash": "styles-module__settingsBrandSlash___uTG18", "settingsVersion": "styles-module__settingsVersion___TUcFq", "settingsSection": "styles-module__settingsSection___m-YM2", "settingsLabel": "styles-module__settingsLabel___8UjfX", "cycleButton": "styles-module__cycleButton___FMKfw", "cycleDot": "styles-module__cycleDot___nPgLY", "dropdownButton": "styles-module__dropdownButton___16NPz", "toggleLabel": "styles-module__toggleLabel___Xm8Aa", "customCheckbox": "styles-module__customCheckbox___U39ax", "sliderLabel": "styles-module__sliderLabel___U8sPr", "slider": "styles-module__slider___GLdxp", "themeToggle": "styles-module__themeToggle___2rUjA", "settingsOption": "styles-module__settingsOption___UNa12", "selected": "styles-module__selected___OwRqP", "settingsPanelContainer": "styles-module__settingsPanelContainer___Xksv8", "settingsPage": "styles-module__settingsPage___6YfHH", "slideLeft": "styles-module__slideLeft___Ps01J", "automationsPage": "styles-module__automationsPage___uvCq6", "slideIn": "styles-module__slideIn___4-qXe", "settingsNavLink": "styles-module__settingsNavLink___wCzJt", "settingsNavLinkRight": "styles-module__settingsNavLinkRight___ZWwhj", "mcpNavIndicator": "styles-module__mcpNavIndicator___cl9pO", "mcpPulse": "styles-module__mcpPulse___uNggr", "settingsBackButton": "styles-module__settingsBackButton___bIe2j", "automationHeader": "styles-module__automationHeader___InP0r", "automationDescription": "styles-module__automationDescription___NKlmo", "learnMoreLink": "styles-module__learnMoreLink___8xv-x", "autoSendRow": "styles-module__autoSendRow___UblX5", "autoSendLabel": "styles-module__autoSendLabel___icDc2", "active": "styles-module__active___-zoN6", "webhookUrlInput": "styles-module__webhookUrlInput___2375C", "settingsSectionExtraPadding": "styles-module__settingsSectionExtraPadding___jdhFV", "settingsSectionGrow": "styles-module__settingsSectionGrow___h-5HZ", "settingsRow": "styles-module__settingsRow___3sdhc", "settingsRowMarginTop": "styles-module__settingsRowMarginTop___zA0Sp", "dropdownContainer": "styles-module__dropdownContainer___BVnxe", "settingsRowDisabled": "styles-module__settingsRowDisabled___EgS0V", "toggleSwitch": "styles-module__toggleSwitch___l4Ygm", "cycleButtonText": "styles-module__cycleButtonText___fD1LR", "cycleTextIn": "styles-module__cycleTextIn___Q6zJf", "cycleDots": "styles-module__cycleDots___LWuoQ", "dropdownMenu": "styles-module__dropdownMenu___k73ER", "scaleIn": "styles-module__scaleIn___c-r1K", "dropdownItem": "styles-module__dropdownItem___ylsLj", "settingsLabelMarker": "styles-module__settingsLabelMarker___ewdtV", "settingsOptions": "styles-module__settingsOptions___LyrBA", "sliderContainer": "styles-module__sliderContainer___ducXj", "sliderLabels": "styles-module__sliderLabels___FhLDB", "colorOptions": "styles-module__colorOptions___iHCNX", "colorOption": "styles-module__colorOption___IodiY", "colorOptionRing": "styles-module__colorOptionRing___U2xpo", "settingsToggle": "styles-module__settingsToggle___fBrFn", "settingsToggleMarginBottom": "styles-module__settingsToggleMarginBottom___MZUyF", "checked": "styles-module__checked___mnZLo", "toggleSlider": "styles-module__toggleSlider___wprIn", "disabled": "styles-module__disabled___332Jw", "mcpStatusDot": "styles-module__mcpStatusDot___ibgkc", "disconnected": "styles-module__disconnected___cHPxR", "mcpPulseError": "styles-module__mcpPulseError___fov9B", "drawCanvas": "styles-module__drawCanvas___7cG9U", "dragSelection": "styles-module__dragSelection___kZLq2", "dragCount": "styles-module__dragCount___KM90j", "highlightsContainer": "styles-module__highlightsContainer___-0xzG", "selectedElementHighlight": "styles-module__selectedElementHighlight___fyVlI", "scaleOut": "styles-module__scaleOut___Wctwz", "slideUp": "styles-module__slideUp___kgD36", "slideDown": "styles-module__slideDown___zcdje" };
|
|
7678
|
+
var css5 = '.styles-module__toolbar___wNsdK svg[fill=none],\n.styles-module__markersLayer___-25j1 svg[fill=none],\n.styles-module__fixedMarkersLayer___ffyX6 svg[fill=none] {\n fill: none !important;\n}\n.styles-module__toolbar___wNsdK svg[fill=none] :not([fill]),\n.styles-module__markersLayer___-25j1 svg[fill=none] :not([fill]),\n.styles-module__fixedMarkersLayer___ffyX6 svg[fill=none] :not([fill]) {\n fill: none !important;\n}\n\n.styles-module__controlsContent___9GJWU :where(button, input, select, textarea, label) {\n background: unset;\n border: unset;\n border-radius: unset;\n padding: unset;\n margin: unset;\n color: unset;\n font-family: unset;\n font-weight: unset;\n font-style: unset;\n line-height: unset;\n letter-spacing: unset;\n text-transform: unset;\n text-decoration: unset;\n box-shadow: unset;\n outline: unset;\n}\n\n@keyframes styles-module__toolbarEnter___u8RRu {\n from {\n opacity: 0;\n transform: scale(0.5) rotate(90deg);\n }\n to {\n opacity: 1;\n transform: scale(1) rotate(0deg);\n }\n}\n@keyframes styles-module__toolbarHide___y8kaT {\n from {\n opacity: 1;\n transform: scale(1);\n }\n to {\n opacity: 0;\n transform: scale(0.8);\n }\n}\n@keyframes styles-module__badgeEnter___mVQLj {\n from {\n opacity: 0;\n transform: scale(0);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes styles-module__scaleIn___c-r1K {\n from {\n opacity: 0;\n transform: scale(0.85);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes styles-module__scaleOut___Wctwz {\n from {\n opacity: 1;\n transform: scale(1);\n }\n to {\n opacity: 0;\n transform: scale(0.85);\n }\n}\n@keyframes styles-module__slideUp___kgD36 {\n from {\n opacity: 0;\n transform: scale(0.85) translateY(8px);\n }\n to {\n opacity: 1;\n transform: scale(1) translateY(0);\n }\n}\n@keyframes styles-module__slideDown___zcdje {\n from {\n opacity: 1;\n transform: scale(1) translateY(0);\n }\n to {\n opacity: 0;\n transform: scale(0.85) translateY(8px);\n }\n}\n@keyframes styles-module__fadeIn___b9qmf {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes styles-module__fadeOut___6Ut6- {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes styles-module__hoverHighlightIn___6WYHY {\n from {\n opacity: 0;\n transform: scale(0.98);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n}\n@keyframes styles-module__hoverTooltipIn___FYGQx {\n from {\n opacity: 0;\n transform: scale(0.95) translateY(4px);\n }\n to {\n opacity: 1;\n transform: scale(1) translateY(0);\n }\n}\n.styles-module__disableTransitions___EopxO :is(*, *::before, *::after) {\n transition: none !important;\n}\n\n.styles-module__toolbar___wNsdK {\n position: fixed;\n bottom: 1.25rem;\n right: 1.25rem;\n width: 337px;\n z-index: 100000;\n font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n pointer-events: none;\n transition: left 0s, top 0s, right 0s, bottom 0s;\n}\n\n:where(.styles-module__toolbar___wNsdK) {\n bottom: 1.25rem;\n right: 1.25rem;\n}\n\n.styles-module__toolbarContainer___dIhma {\n position: relative;\n user-select: none;\n margin-left: auto;\n align-self: flex-end;\n display: flex;\n align-items: center;\n justify-content: center;\n background: #1a1a1a;\n color: #fff;\n border: none;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2), 0 4px 16px rgba(0, 0, 0, 0.1);\n pointer-events: auto;\n transition: width 0.4s cubic-bezier(0.19, 1, 0.22, 1), transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);\n}\n.styles-module__toolbarContainer___dIhma.styles-module__entrance___sgHd8 {\n animation: styles-module__toolbarEnter___u8RRu 0.5s cubic-bezier(0.34, 1.2, 0.64, 1) forwards;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__hiding___1td44 {\n animation: styles-module__toolbarHide___y8kaT 0.4s cubic-bezier(0.4, 0, 1, 1) forwards;\n pointer-events: none;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__collapsed___Rydsn {\n width: 44px;\n height: 44px;\n border-radius: 22px;\n padding: 0;\n cursor: pointer;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__collapsed___Rydsn svg {\n margin-top: -1px;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__collapsed___Rydsn:hover {\n background: #2a2a2a;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__collapsed___Rydsn:active {\n transform: scale(0.95);\n}\n.styles-module__toolbarContainer___dIhma.styles-module__expanded___ofKPx {\n height: 44px;\n border-radius: 1.5rem;\n padding: 0.375rem;\n width: 297px;\n}\n.styles-module__toolbarContainer___dIhma.styles-module__expanded___ofKPx.styles-module__serverConnected___Gfbou {\n width: 337px;\n}\n\n.styles-module__toggleContent___0yfyP {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: opacity 0.1s cubic-bezier(0.19, 1, 0.22, 1);\n}\n.styles-module__toggleContent___0yfyP.styles-module__visible___KHwEW {\n opacity: 1;\n visibility: visible;\n pointer-events: auto;\n}\n.styles-module__toggleContent___0yfyP.styles-module__hidden___Ae8H4 {\n opacity: 0;\n pointer-events: none;\n}\n\n.styles-module__controlsContent___9GJWU {\n display: flex;\n align-items: center;\n gap: 0.375rem;\n transition: filter 0.8s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.8s cubic-bezier(0.19, 1, 0.22, 1), transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);\n}\n.styles-module__controlsContent___9GJWU.styles-module__visible___KHwEW {\n opacity: 1;\n filter: blur(0px);\n transform: scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.styles-module__controlsContent___9GJWU.styles-module__hidden___Ae8H4 {\n pointer-events: none;\n opacity: 0;\n filter: blur(10px);\n transform: scale(0.4);\n}\n\n.styles-module__badge___2XsgF {\n position: absolute;\n top: -13px;\n right: -13px;\n user-select: none;\n min-width: 18px;\n height: 18px;\n padding: 0 5px;\n border-radius: 9px;\n background-color: var(--ui-sniper-color-accent);\n color: white;\n font-size: 0.625rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15), inset 0 0 0 1px rgba(255, 255, 255, 0.04);\n opacity: 1;\n transition: transform 0.3s ease, opacity 0.2s ease;\n transform: scale(1);\n}\n.styles-module__badge___2XsgF.styles-module__fadeOut___6Ut6- {\n opacity: 0;\n transform: scale(0);\n pointer-events: none;\n}\n.styles-module__badge___2XsgF.styles-module__entrance___sgHd8 {\n animation: styles-module__badgeEnter___mVQLj 0.3s cubic-bezier(0.34, 1.2, 0.64, 1) 0.4s both;\n}\n\n.styles-module__controlButton___8Q0jc {\n position: relative;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 34px;\n height: 34px;\n border-radius: 50%;\n border: none;\n background: transparent;\n color: rgba(255, 255, 255, 0.85);\n transition: background-color 0.15s ease, color 0.15s ease, transform 0.1s ease, opacity 0.2s ease;\n}\n.styles-module__controlButton___8Q0jc:hover:not(:disabled):not([data-active=true]):not([data-failed=true]):not([data-auto-sync=true]):not([data-error=true]):not([data-no-hover=true]) {\n background: rgba(255, 255, 255, 0.12);\n color: #fff;\n}\n.styles-module__controlButton___8Q0jc:active:not(:disabled) {\n transform: scale(0.92);\n}\n.styles-module__controlButton___8Q0jc:disabled {\n opacity: 0.35;\n cursor: not-allowed;\n}\n.styles-module__controlButton___8Q0jc[data-active=true] {\n color: var(--ui-sniper-color-blue);\n background-color: color-mix(in srgb, var(--ui-sniper-color-blue) 25%, transparent);\n}\n.styles-module__controlButton___8Q0jc[data-error=true] {\n color: var(--ui-sniper-color-red);\n background-color: color-mix(in srgb, var(--ui-sniper-color-red) 25%, transparent);\n}\n.styles-module__controlButton___8Q0jc[data-danger]:hover:not(:disabled):not([data-active=true]):not([data-failed=true]) {\n background-color: color-mix(in srgb, var(--ui-sniper-color-red) 25%, transparent);\n color: var(--ui-sniper-color-red);\n}\n.styles-module__controlButton___8Q0jc[data-no-hover=true], .styles-module__controlButton___8Q0jc.styles-module__statusShowing___te6iu {\n cursor: default;\n pointer-events: none;\n background: transparent !important;\n}\n.styles-module__controlButton___8Q0jc[data-auto-sync=true] {\n color: var(--ui-sniper-color-green);\n background: transparent;\n cursor: default;\n}\n.styles-module__controlButton___8Q0jc[data-failed=true] {\n color: var(--ui-sniper-color-red);\n background-color: color-mix(in srgb, var(--ui-sniper-color-red) 25%, transparent);\n}\n\n.styles-module__buttonBadge___NeFWb {\n position: absolute;\n top: 0px;\n right: 0px;\n min-width: 16px;\n height: 16px;\n padding: 0 4px;\n border-radius: 8px;\n background-color: var(--ui-sniper-color-accent);\n color: white;\n font-size: 0.625rem;\n font-weight: 600;\n display: flex;\n align-items: center;\n justify-content: center;\n box-shadow: 0 0 0 2px #1a1a1a, 0 1px 3px rgba(0, 0, 0, 0.2);\n pointer-events: none;\n}\n[data-ui-sniper-theme=light] .styles-module__buttonBadge___NeFWb {\n box-shadow: 0 0 0 2px #fff, 0 1px 3px rgba(0, 0, 0, 0.2);\n}\n\n@keyframes styles-module__mcpIndicatorPulseConnected___EDodZ {\n 0%, 100% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-green) 50%, transparent);\n }\n 50% {\n box-shadow: 0 0 0 5px color-mix(in srgb, var(--ui-sniper-color-green) 0%, transparent);\n }\n}\n@keyframes styles-module__mcpIndicatorPulseConnecting___cCYte {\n 0%, 100% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-yellow) 50%, transparent);\n }\n 50% {\n box-shadow: 0 0 0 5px color-mix(in srgb, var(--ui-sniper-color-yellow) 0%, transparent);\n }\n}\n.styles-module__mcpIndicator___zGJeL {\n position: absolute;\n top: 3px;\n right: 3px;\n width: 6px;\n height: 6px;\n border-radius: 50%;\n pointer-events: none;\n transition: background-color 0.3s ease, opacity 0.15s ease, transform 0.15s ease;\n opacity: 1;\n transform: scale(1);\n}\n.styles-module__mcpIndicator___zGJeL.styles-module__connected___7c28g {\n background-color: var(--ui-sniper-color-green);\n animation: styles-module__mcpIndicatorPulseConnected___EDodZ 2.5s ease-in-out infinite;\n}\n.styles-module__mcpIndicator___zGJeL.styles-module__connecting___uo-CW {\n background-color: var(--ui-sniper-color-yellow);\n animation: styles-module__mcpIndicatorPulseConnecting___cCYte 1.5s ease-in-out infinite;\n}\n.styles-module__mcpIndicator___zGJeL.styles-module__hidden___Ae8H4 {\n opacity: 0;\n transform: scale(0);\n animation: none;\n}\n\n@keyframes styles-module__connectionPulse___-Zycw {\n 0%, 100% {\n opacity: 1;\n transform: scale(1);\n }\n 50% {\n opacity: 0.6;\n transform: scale(0.9);\n }\n}\n.styles-module__connectionIndicatorWrapper___L-e-3 {\n width: 8px;\n height: 34px;\n margin-left: 6px;\n margin-right: 6px;\n}\n\n.styles-module__connectionIndicator___afk9p {\n position: relative;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n opacity: 0;\n transition: opacity 0.3s ease, background-color 0.3s ease;\n cursor: default;\n}\n\n.styles-module__connectionIndicatorVisible___C-i5B {\n opacity: 1;\n}\n\n.styles-module__connectionIndicatorConnected___IY8pR {\n background-color: var(--ui-sniper-color-green);\n animation: styles-module__connectionPulse___-Zycw 2.5s ease-in-out infinite;\n}\n\n.styles-module__connectionIndicatorDisconnected___kmpaZ {\n background-color: var(--ui-sniper-color-red);\n animation: none;\n}\n\n.styles-module__connectionIndicatorConnecting___QmSLH {\n background-color: var(--ui-sniper-color-yellow);\n animation: styles-module__connectionPulse___-Zycw 1s ease-in-out infinite;\n}\n\n.styles-module__buttonWrapper___rBcdv {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.styles-module__buttonWrapper___rBcdv:hover .styles-module__buttonTooltip___Burd9 {\n opacity: 1;\n visibility: visible;\n transform: translateX(-50%) scale(1);\n transition-delay: 0.85s;\n}\n.styles-module__buttonWrapper___rBcdv:has(.styles-module__controlButton___8Q0jc:disabled):hover .styles-module__buttonTooltip___Burd9 {\n opacity: 0;\n visibility: hidden;\n}\n\n.styles-module__tooltipsInSession___-0lHH .styles-module__buttonWrapper___rBcdv:hover .styles-module__buttonTooltip___Burd9 {\n transition-delay: 0s;\n}\n\n.styles-module__sendButtonWrapper___UUxG6 {\n width: 0;\n opacity: 0;\n overflow: hidden;\n pointer-events: none;\n margin-left: -0.375rem;\n transition: width 0.4s cubic-bezier(0.19, 1, 0.22, 1), opacity 0.3s cubic-bezier(0.19, 1, 0.22, 1), margin 0.4s cubic-bezier(0.19, 1, 0.22, 1);\n}\n.styles-module__sendButtonWrapper___UUxG6 .styles-module__controlButton___8Q0jc {\n transform: scale(0.8);\n transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);\n}\n.styles-module__sendButtonWrapper___UUxG6.styles-module__sendButtonVisible___WPSQU {\n width: 34px;\n opacity: 1;\n overflow: visible;\n pointer-events: auto;\n margin-left: 0;\n}\n.styles-module__sendButtonWrapper___UUxG6.styles-module__sendButtonVisible___WPSQU .styles-module__controlButton___8Q0jc {\n transform: scale(1);\n}\n\n.styles-module__buttonTooltip___Burd9 {\n position: absolute;\n bottom: calc(100% + 14px);\n left: 50%;\n transform: translateX(-50%) scale(0.95);\n padding: 6px 10px;\n background: #1a1a1a;\n color: rgba(255, 255, 255, 0.9);\n font-size: 12px;\n font-weight: 500;\n border-radius: 8px;\n white-space: nowrap;\n opacity: 0;\n visibility: hidden;\n pointer-events: none;\n z-index: 100001;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);\n transition: opacity 0.135s ease, transform 0.135s ease, visibility 0.135s ease;\n}\n.styles-module__buttonTooltip___Burd9::after {\n content: "";\n position: absolute;\n top: calc(100% - 4px);\n left: 50%;\n transform: translateX(-50%) rotate(45deg);\n width: 8px;\n height: 8px;\n background: #1a1a1a;\n border-radius: 0 0 2px 0;\n}\n\n.styles-module__shortcut___lEAQk {\n margin-left: 4px;\n opacity: 0.5;\n}\n\n.styles-module__tooltipBelow___m6ats .styles-module__buttonTooltip___Burd9 {\n bottom: auto;\n top: calc(100% + 14px);\n transform: translateX(-50%) scale(0.95);\n}\n.styles-module__tooltipBelow___m6ats .styles-module__buttonTooltip___Burd9::after {\n top: -4px;\n bottom: auto;\n border-radius: 2px 0 0 0;\n}\n\n.styles-module__tooltipBelow___m6ats .styles-module__buttonWrapper___rBcdv:hover .styles-module__buttonTooltip___Burd9 {\n transform: translateX(-50%) scale(1);\n}\n\n.styles-module__tooltipsHidden___VtLJG .styles-module__buttonTooltip___Burd9 {\n opacity: 0 !important;\n visibility: hidden !important;\n transition: none !important;\n}\n\n.styles-module__tooltipVisible___0jcCv,\n.styles-module__tooltipsHidden___VtLJG .styles-module__tooltipVisible___0jcCv {\n opacity: 1 !important;\n visibility: visible !important;\n transform: translateX(-50%) scale(1) !important;\n transition-delay: 0s !important;\n}\n\n.styles-module__buttonWrapperAlignLeft___myzIp .styles-module__buttonTooltip___Burd9 {\n left: 50%;\n transform: translateX(-12px) scale(0.95);\n}\n.styles-module__buttonWrapperAlignLeft___myzIp .styles-module__buttonTooltip___Burd9::after {\n left: 16px;\n}\n.styles-module__buttonWrapperAlignLeft___myzIp:hover .styles-module__buttonTooltip___Burd9 {\n transform: translateX(-12px) scale(1);\n}\n\n.styles-module__tooltipBelow___m6ats .styles-module__buttonWrapperAlignLeft___myzIp .styles-module__buttonTooltip___Burd9 {\n transform: translateX(-12px) scale(0.95);\n}\n.styles-module__tooltipBelow___m6ats .styles-module__buttonWrapperAlignLeft___myzIp:hover .styles-module__buttonTooltip___Burd9 {\n transform: translateX(-12px) scale(1);\n}\n\n.styles-module__buttonWrapperAlignRight___HCQFR .styles-module__buttonTooltip___Burd9 {\n left: 50%;\n transform: translateX(calc(-100% + 12px)) scale(0.95);\n}\n.styles-module__buttonWrapperAlignRight___HCQFR .styles-module__buttonTooltip___Burd9::after {\n left: auto;\n right: 8px;\n}\n.styles-module__buttonWrapperAlignRight___HCQFR:hover .styles-module__buttonTooltip___Burd9 {\n transform: translateX(calc(-100% + 12px)) scale(1);\n}\n\n.styles-module__tooltipBelow___m6ats .styles-module__buttonWrapperAlignRight___HCQFR .styles-module__buttonTooltip___Burd9 {\n transform: translateX(calc(-100% + 12px)) scale(0.95);\n}\n.styles-module__tooltipBelow___m6ats .styles-module__buttonWrapperAlignRight___HCQFR:hover .styles-module__buttonTooltip___Burd9 {\n transform: translateX(calc(-100% + 12px)) scale(1);\n}\n\n.styles-module__divider___c--s1 {\n width: 1px;\n height: 12px;\n background: rgba(255, 255, 255, 0.15);\n margin: 0 0.125rem;\n}\n\n.styles-module__overlay___Q1O9y {\n position: fixed;\n inset: 0;\n z-index: 99997;\n pointer-events: none;\n}\n.styles-module__overlay___Q1O9y > * {\n pointer-events: auto;\n}\n\n.styles-module__hoverHighlight___ogakW {\n position: fixed;\n border: 2px solid color-mix(in srgb, var(--ui-sniper-color-accent) 50%, transparent);\n border-radius: 4px;\n background-color: color-mix(in srgb, var(--ui-sniper-color-accent) 4%, transparent);\n pointer-events: none !important;\n box-sizing: border-box;\n will-change: opacity;\n contain: layout style;\n}\n.styles-module__hoverHighlight___ogakW.styles-module__enter___WFIki {\n animation: styles-module__hoverHighlightIn___6WYHY 0.12s ease-out forwards;\n}\n\n.styles-module__multiSelectOutline___cSJ-m {\n position: fixed;\n border: 2px dashed color-mix(in srgb, var(--ui-sniper-color-green) 60%, transparent);\n border-radius: 4px;\n pointer-events: none !important;\n background-color: color-mix(in srgb, var(--ui-sniper-color-green) 5%, transparent);\n box-sizing: border-box;\n will-change: opacity;\n}\n.styles-module__multiSelectOutline___cSJ-m.styles-module__enter___WFIki {\n animation: styles-module__fadeIn___b9qmf 0.15s ease-out forwards;\n}\n.styles-module__multiSelectOutline___cSJ-m.styles-module__exit___fyOJ0 {\n animation: styles-module__fadeOut___6Ut6- 0.15s ease-out forwards;\n}\n\n.styles-module__singleSelectOutline___QhX-O {\n position: fixed;\n border: 2px solid color-mix(in srgb, var(--ui-sniper-color-blue) 60%, transparent);\n border-radius: 4px;\n pointer-events: none !important;\n background-color: color-mix(in srgb, var(--ui-sniper-color-blue) 5%, transparent);\n box-sizing: border-box;\n will-change: opacity;\n}\n.styles-module__singleSelectOutline___QhX-O.styles-module__enter___WFIki {\n animation: styles-module__fadeIn___b9qmf 0.15s ease-out forwards;\n}\n.styles-module__singleSelectOutline___QhX-O.styles-module__exit___fyOJ0 {\n animation: styles-module__fadeOut___6Ut6- 0.15s ease-out forwards;\n}\n\n.styles-module__hoverTooltip___bvLk7 {\n position: fixed;\n font-size: 0.6875rem;\n font-weight: 500;\n color: #fff;\n background: rgba(0, 0, 0, 0.85);\n padding: 0.35rem 0.6rem;\n border-radius: 0.375rem;\n pointer-events: none !important;\n white-space: nowrap;\n max-width: 280px;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.styles-module__hoverTooltip___bvLk7.styles-module__enter___WFIki {\n animation: styles-module__hoverTooltipIn___FYGQx 0.1s ease-out forwards;\n}\n\n.styles-module__hoverReactPath___gx1IJ {\n font-size: 0.625rem;\n color: rgba(255, 255, 255, 0.6);\n margin-bottom: 0.15rem;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.styles-module__hoverElementName___QMLMl {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.styles-module__markersLayer___-25j1 {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n height: 0;\n z-index: 99998;\n pointer-events: none;\n}\n.styles-module__markersLayer___-25j1 > * {\n pointer-events: auto;\n}\n\n.styles-module__fixedMarkersLayer___ffyX6 {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 99998;\n pointer-events: none;\n}\n.styles-module__fixedMarkersLayer___ffyX6 > * {\n pointer-events: auto;\n}\n\n.styles-module__marker___6sQrs {\n position: absolute;\n width: 22px;\n height: 22px;\n background: var(--ui-sniper-color-blue);\n color: white;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 0.6875rem;\n font-weight: 600;\n transform: translate(-50%, -50%) scale(1);\n opacity: 1;\n cursor: pointer;\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), inset 0 0 0 1px rgba(0, 0, 0, 0.04);\n user-select: none;\n will-change: transform, opacity;\n contain: layout style;\n z-index: 1;\n}\n.styles-module__marker___6sQrs:hover {\n z-index: 2;\n}\n.styles-module__marker___6sQrs:not(.styles-module__enter___WFIki):not(.styles-module__exit___fyOJ0):not(.styles-module__clearing___FQ--7) {\n transition: background-color 0.15s ease, transform 0.1s ease;\n}\n.styles-module__marker___6sQrs.styles-module__enter___WFIki {\n animation: styles-module__markerIn___5FaAP 0.25s cubic-bezier(0.22, 1, 0.36, 1) both;\n}\n.styles-module__marker___6sQrs.styles-module__exit___fyOJ0 {\n animation: styles-module__markerOut___GU5jX 0.2s ease-out both;\n pointer-events: none;\n}\n.styles-module__marker___6sQrs.styles-module__clearing___FQ--7 {\n animation: styles-module__markerOut___GU5jX 0.15s ease-out both;\n pointer-events: none;\n}\n.styles-module__marker___6sQrs:not(.styles-module__enter___WFIki):not(.styles-module__exit___fyOJ0):not(.styles-module__clearing___FQ--7):hover {\n transform: translate(-50%, -50%) scale(1.1);\n}\n.styles-module__marker___6sQrs.styles-module__pending___2IHLC {\n position: fixed;\n background-color: var(--ui-sniper-color-blue);\n cursor: default;\n}\n.styles-module__marker___6sQrs.styles-module__fixed___dBMHC {\n position: fixed;\n}\n.styles-module__marker___6sQrs.styles-module__multiSelect___YWiuz {\n background-color: var(--ui-sniper-color-green);\n width: 26px;\n height: 26px;\n border-radius: 6px;\n font-size: 0.75rem;\n}\n.styles-module__marker___6sQrs.styles-module__multiSelect___YWiuz.styles-module__pending___2IHLC {\n background-color: var(--ui-sniper-color-green);\n}\n.styles-module__marker___6sQrs.styles-module__hovered___ZgXIy {\n background-color: var(--ui-sniper-color-red);\n}\n\n.styles-module__renumber___nCTxD {\n display: block;\n animation: styles-module__renumberRoll___Wgbq3 0.2s ease-out;\n}\n\n@keyframes styles-module__renumberRoll___Wgbq3 {\n 0% {\n transform: translateX(-40%);\n opacity: 0;\n }\n 100% {\n transform: translateX(0);\n opacity: 1;\n }\n}\n.styles-module__markerTooltip___aLJID {\n position: absolute;\n top: calc(100% + 10px);\n left: 50%;\n transform: translateX(-50%) scale(0.909);\n z-index: 100002;\n background: #1a1a1a;\n padding: 8px 0.75rem;\n border-radius: 0.75rem;\n font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n font-weight: 400;\n color: #fff;\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.08);\n min-width: 120px;\n max-width: 200px;\n pointer-events: none;\n cursor: default;\n}\n.styles-module__markerTooltip___aLJID.styles-module__enter___WFIki {\n animation: styles-module__tooltipIn___0N31w 0.1s ease-out forwards;\n}\n\n.styles-module__markerQuote___FHmrz {\n display: block;\n font-size: 12px;\n font-style: italic;\n color: rgba(255, 255, 255, 0.6);\n margin-bottom: 0.3125rem;\n line-height: 1.4;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.styles-module__markerNote___QkrrS {\n display: block;\n font-size: 13px;\n font-weight: 400;\n line-height: 1.4;\n color: #fff;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n padding-bottom: 2px;\n}\n\n.styles-module__markerHint___2iF-6 {\n display: block;\n font-size: 0.625rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.6);\n margin-top: 0.375rem;\n white-space: nowrap;\n}\n\n.styles-module__settingsPanel___OxX3Y {\n position: absolute;\n right: 5px;\n bottom: calc(100% + 0.5rem);\n z-index: 1;\n overflow: hidden;\n background: #1c1c1c;\n border-radius: 1rem;\n padding: 13px 0 16px;\n min-width: 205px;\n cursor: default;\n opacity: 1;\n box-shadow: 0 1px 8px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(0, 0, 0, 0.04);\n transition: background-color 0.25s ease, box-shadow 0.25s ease;\n}\n.styles-module__settingsPanel___OxX3Y::before, .styles-module__settingsPanel___OxX3Y::after {\n content: "";\n position: absolute;\n top: 0;\n bottom: 0;\n width: 16px;\n z-index: 2;\n pointer-events: none;\n}\n.styles-module__settingsPanel___OxX3Y::before {\n left: 0;\n background: linear-gradient(to right, #1c1c1c 0%, transparent 100%);\n}\n.styles-module__settingsPanel___OxX3Y::after {\n right: 0;\n background: linear-gradient(to left, #1c1c1c 0%, transparent 100%);\n}\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsHeader___pwDY9,\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsBrand___0gJeM,\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsBrandSlash___uTG18,\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsVersion___TUcFq,\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsSection___m-YM2,\n.styles-module__settingsPanel___OxX3Y .styles-module__settingsLabel___8UjfX,\n.styles-module__settingsPanel___OxX3Y .styles-module__cycleButton___FMKfw,\n.styles-module__settingsPanel___OxX3Y .styles-module__cycleDot___nPgLY,\n.styles-module__settingsPanel___OxX3Y .styles-module__dropdownButton___16NPz,\n.styles-module__settingsPanel___OxX3Y .styles-module__toggleLabel___Xm8Aa,\n.styles-module__settingsPanel___OxX3Y .styles-module__customCheckbox___U39ax,\n.styles-module__settingsPanel___OxX3Y .styles-module__sliderLabel___U8sPr,\n.styles-module__settingsPanel___OxX3Y .styles-module__slider___GLdxp,\n.styles-module__settingsPanel___OxX3Y .styles-module__themeToggle___2rUjA {\n transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;\n}\n.styles-module__settingsPanel___OxX3Y.styles-module__enter___WFIki {\n opacity: 1;\n transform: translateY(0) scale(1);\n filter: blur(0px);\n transition: opacity 0.2s ease, transform 0.2s ease, filter 0.2s ease;\n}\n.styles-module__settingsPanel___OxX3Y.styles-module__exit___fyOJ0 {\n opacity: 0;\n transform: translateY(8px) scale(0.95);\n filter: blur(5px);\n pointer-events: none;\n transition: opacity 0.1s ease, transform 0.1s ease, filter 0.1s ease;\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y {\n background: #1a1a1a;\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.08);\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y .styles-module__settingsLabel___8UjfX {\n color: rgba(255, 255, 255, 0.6);\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y .styles-module__settingsOption___UNa12 {\n color: rgba(255, 255, 255, 0.85);\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y .styles-module__settingsOption___UNa12:hover {\n background: rgba(255, 255, 255, 0.1);\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y .styles-module__settingsOption___UNa12.styles-module__selected___OwRqP {\n background: rgba(255, 255, 255, 0.15);\n color: #fff;\n}\n[data-ui-sniper-theme=dark] .styles-module__settingsPanel___OxX3Y .styles-module__toggleLabel___Xm8Aa {\n color: rgba(255, 255, 255, 0.85);\n}\n\n.styles-module__settingsPanelContainer___Xksv8 {\n overflow: visible;\n position: relative;\n display: flex;\n padding: 0 1rem;\n}\n\n.styles-module__settingsPage___6YfHH {\n min-width: 100%;\n flex-shrink: 0;\n transition: transform 0.2s ease, opacity 0.2s ease;\n transition-delay: 0s;\n opacity: 1;\n}\n\n.styles-module__settingsPage___6YfHH.styles-module__slideLeft___Ps01J {\n transform: translateX(-24px);\n opacity: 0;\n pointer-events: none;\n}\n\n.styles-module__automationsPage___uvCq6 {\n position: absolute;\n top: 0;\n left: 24px;\n width: 100%;\n height: 100%;\n padding: 3px 1rem 0;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n transition: transform 0.2s ease, opacity 0.2s ease;\n opacity: 0;\n pointer-events: none;\n}\n\n.styles-module__automationsPage___uvCq6.styles-module__slideIn___4-qXe {\n transform: translateX(-24px);\n opacity: 1;\n pointer-events: auto;\n}\n\n.styles-module__settingsNavLink___wCzJt {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 0;\n border: none;\n background: transparent;\n font-family: inherit;\n font-size: 0.8125rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.5);\n cursor: pointer;\n transition: color 0.15s ease;\n}\n.styles-module__settingsNavLink___wCzJt:hover {\n color: rgba(255, 255, 255, 0.9);\n}\n[data-ui-sniper-theme=light] .styles-module__settingsNavLink___wCzJt {\n color: rgba(0, 0, 0, 0.5);\n}\n[data-ui-sniper-theme=light] .styles-module__settingsNavLink___wCzJt:hover {\n color: rgba(0, 0, 0, 0.8);\n}\n.styles-module__settingsNavLink___wCzJt svg {\n color: rgba(255, 255, 255, 0.4);\n transition: color 0.15s ease;\n}\n.styles-module__settingsNavLink___wCzJt:hover svg {\n color: #fff;\n}\n[data-ui-sniper-theme=light] .styles-module__settingsNavLink___wCzJt svg {\n color: rgba(0, 0, 0, 0.25);\n}\n[data-ui-sniper-theme=light] .styles-module__settingsNavLink___wCzJt:hover svg {\n color: rgba(0, 0, 0, 0.8);\n}\n\n.styles-module__settingsNavLinkRight___ZWwhj {\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.styles-module__mcpNavIndicator___cl9pO {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n flex-shrink: 0;\n}\n.styles-module__mcpNavIndicator___cl9pO.styles-module__connected___7c28g {\n background-color: var(--ui-sniper-color-green);\n animation: styles-module__mcpPulse___uNggr 2.5s ease-in-out infinite;\n}\n.styles-module__mcpNavIndicator___cl9pO.styles-module__connecting___uo-CW {\n background-color: var(--ui-sniper-color-yellow);\n animation: styles-module__mcpPulse___uNggr 1.5s ease-in-out infinite;\n}\n\n.styles-module__settingsBackButton___bIe2j {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 6px 0 12px 0;\n margin: -6px 0 0.5rem 0;\n border: none;\n border-bottom: 1px solid rgba(255, 255, 255, 0.07);\n border-radius: 0;\n background: transparent;\n font-family: inherit;\n font-size: 0.8125rem;\n font-weight: 500;\n letter-spacing: -0.15px;\n color: #fff;\n cursor: pointer;\n transition: transform 0.12s cubic-bezier(0.32, 0.72, 0, 1);\n}\n.styles-module__settingsBackButton___bIe2j svg {\n opacity: 0.4;\n flex-shrink: 0;\n transition: opacity 0.15s ease, transform 0.18s cubic-bezier(0.32, 0.72, 0, 1);\n}\n.styles-module__settingsBackButton___bIe2j:hover {\n border-bottom-color: rgba(255, 255, 255, 0.07);\n}\n.styles-module__settingsBackButton___bIe2j:hover svg {\n opacity: 1;\n}\n[data-ui-sniper-theme=light] .styles-module__settingsBackButton___bIe2j {\n color: rgba(0, 0, 0, 0.85);\n border-bottom-color: rgba(0, 0, 0, 0.08);\n}\n[data-ui-sniper-theme=light] .styles-module__settingsBackButton___bIe2j:hover {\n border-bottom-color: rgba(0, 0, 0, 0.08);\n}\n\n.styles-module__automationHeader___InP0r {\n display: flex;\n align-items: center;\n gap: 0.125rem;\n font-size: 0.8125rem;\n font-weight: 400;\n color: #fff;\n}\n[data-ui-sniper-theme=light] .styles-module__automationHeader___InP0r {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.styles-module__automationDescription___NKlmo {\n font-size: 0.6875rem;\n font-weight: 300;\n color: rgba(255, 255, 255, 0.5);\n margin-top: 2px;\n line-height: 14px;\n}\n[data-ui-sniper-theme=light] .styles-module__automationDescription___NKlmo {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__learnMoreLink___8xv-x {\n color: rgba(255, 255, 255, 0.8);\n text-decoration: underline dotted;\n text-decoration-color: rgba(255, 255, 255, 0.2);\n text-underline-offset: 2px;\n transition: color 0.15s ease;\n}\n.styles-module__learnMoreLink___8xv-x:hover {\n color: #fff;\n}\n[data-ui-sniper-theme=light] .styles-module__learnMoreLink___8xv-x {\n color: rgba(0, 0, 0, 0.6);\n text-decoration-color: rgba(0, 0, 0, 0.2);\n}\n[data-ui-sniper-theme=light] .styles-module__learnMoreLink___8xv-x:hover {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.styles-module__autoSendRow___UblX5 {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.styles-module__autoSendLabel___icDc2 {\n font-size: 0.6875rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.4);\n transition: color 0.15s ease;\n}\n.styles-module__autoSendLabel___icDc2.styles-module__active___-zoN6 {\n color: #66b8ff;\n color: color(display-p3 0.4 0.72 1);\n}\n[data-ui-sniper-theme=light] .styles-module__autoSendLabel___icDc2 {\n color: rgba(0, 0, 0, 0.4);\n}\n[data-ui-sniper-theme=light] .styles-module__autoSendLabel___icDc2.styles-module__active___-zoN6 {\n color: var(--ui-sniper-color-blue);\n}\n\n.styles-module__webhookUrlInput___2375C {\n display: block;\n width: 100%;\n flex: 1;\n min-height: 60px;\n box-sizing: border-box;\n margin-top: 11px;\n padding: 8px 10px;\n border: 1px solid rgba(255, 255, 255, 0.1);\n border-radius: 6px;\n background: rgba(255, 255, 255, 0.03);\n font-family: inherit;\n font-size: 0.75rem;\n font-weight: 400;\n color: #fff;\n outline: none;\n resize: none;\n user-select: text;\n transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;\n}\n.styles-module__webhookUrlInput___2375C::placeholder {\n color: rgba(255, 255, 255, 0.3);\n}\n.styles-module__webhookUrlInput___2375C:focus {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgba(255, 255, 255, 0.08);\n}\n[data-ui-sniper-theme=light] .styles-module__webhookUrlInput___2375C {\n border-color: rgba(0, 0, 0, 0.1);\n background: rgba(0, 0, 0, 0.03);\n color: rgba(0, 0, 0, 0.85);\n}\n[data-ui-sniper-theme=light] .styles-module__webhookUrlInput___2375C::placeholder {\n color: rgba(0, 0, 0, 0.3);\n}\n[data-ui-sniper-theme=light] .styles-module__webhookUrlInput___2375C:focus {\n border-color: rgba(0, 0, 0, 0.25);\n background: rgba(0, 0, 0, 0.05);\n}\n\n.styles-module__settingsHeader___pwDY9 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-height: 24px;\n margin-bottom: 0.5rem;\n padding-bottom: 9px;\n border-bottom: 1px solid rgba(255, 255, 255, 0.07);\n}\n\n.styles-module__settingsBrand___0gJeM {\n font-size: 0.8125rem;\n font-weight: 600;\n letter-spacing: -0.0094em;\n color: #fff;\n text-decoration: none;\n}\n\n.styles-module__settingsBrandSlash___uTG18 {\n color: var(--ui-sniper-color-accent);\n transition: color 0.2s ease;\n}\n\n.styles-module__settingsVersion___TUcFq {\n font-size: 11px;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.4);\n margin-left: auto;\n letter-spacing: -0.0094em;\n}\n\n.styles-module__settingsSection___m-YM2 + .styles-module__settingsSection___m-YM2 {\n margin-top: 0.5rem;\n padding-top: 0.5rem;\n border-top: 1px solid rgba(255, 255, 255, 0.07);\n}\n.styles-module__settingsSection___m-YM2.styles-module__settingsSectionExtraPadding___jdhFV {\n padding-top: calc(0.5rem + 4px);\n}\n\n.styles-module__settingsSectionGrow___h-5HZ {\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n\n.styles-module__settingsRow___3sdhc {\n display: flex;\n align-items: center;\n justify-content: space-between;\n min-height: 24px;\n}\n.styles-module__settingsRow___3sdhc.styles-module__settingsRowMarginTop___zA0Sp {\n margin-top: 8px;\n}\n\n.styles-module__dropdownContainer___BVnxe {\n position: relative;\n}\n\n.styles-module__dropdownButton___16NPz {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.25rem 0.5rem;\n border: none;\n border-radius: 0.375rem;\n background: transparent;\n font-size: 0.8125rem;\n font-weight: 600;\n color: #fff;\n cursor: pointer;\n transition: background-color 0.15s ease, color 0.15s ease;\n letter-spacing: -0.0094em;\n}\n.styles-module__dropdownButton___16NPz:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n.styles-module__dropdownButton___16NPz svg {\n opacity: 0.6;\n}\n\n.styles-module__cycleButton___FMKfw {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0;\n border: none;\n background: transparent;\n font-size: 0.8125rem;\n font-weight: 500;\n color: #fff;\n cursor: pointer;\n letter-spacing: -0.0094em;\n}\n[data-ui-sniper-theme=light] .styles-module__cycleButton___FMKfw {\n color: rgba(0, 0, 0, 0.85);\n}\n.styles-module__cycleButton___FMKfw:disabled {\n opacity: 0.35;\n cursor: not-allowed;\n}\n\n.styles-module__settingsRowDisabled___EgS0V .styles-module__settingsLabel___8UjfX {\n color: rgba(255, 255, 255, 0.2);\n}\n[data-ui-sniper-theme=light] .styles-module__settingsRowDisabled___EgS0V .styles-module__settingsLabel___8UjfX {\n color: rgba(0, 0, 0, 0.2);\n}\n.styles-module__settingsRowDisabled___EgS0V .styles-module__toggleSwitch___l4Ygm {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n@keyframes styles-module__cycleTextIn___Q6zJf {\n 0% {\n opacity: 0;\n transform: translateY(-6px);\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n.styles-module__cycleButtonText___fD1LR {\n display: inline-block;\n animation: styles-module__cycleTextIn___Q6zJf 0.2s ease-out;\n}\n\n.styles-module__cycleDots___LWuoQ {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.styles-module__cycleDot___nPgLY {\n width: 3px;\n height: 3px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.3);\n transform: scale(0.667);\n transition: background-color 0.25s ease-out, transform 0.25s ease-out;\n}\n.styles-module__cycleDot___nPgLY.styles-module__active___-zoN6 {\n background: #fff;\n transform: scale(1);\n}\n[data-ui-sniper-theme=light] .styles-module__cycleDot___nPgLY {\n background: rgba(0, 0, 0, 0.2);\n}\n[data-ui-sniper-theme=light] .styles-module__cycleDot___nPgLY.styles-module__active___-zoN6 {\n background: rgba(0, 0, 0, 0.7);\n}\n\n.styles-module__dropdownMenu___k73ER {\n position: absolute;\n right: 0;\n top: calc(100% + 0.25rem);\n background: #1a1a1a;\n border-radius: 0.5rem;\n padding: 0.25rem;\n min-width: 120px;\n box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.1);\n z-index: 10;\n animation: styles-module__scaleIn___c-r1K 0.15s ease-out;\n}\n\n.styles-module__dropdownItem___ylsLj {\n width: 100%;\n display: flex;\n align-items: center;\n padding: 0.5rem 0.625rem;\n border: none;\n border-radius: 0.375rem;\n background: transparent;\n font-size: 0.8125rem;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.85);\n cursor: pointer;\n text-align: left;\n transition: background-color 0.15s ease, color 0.15s ease;\n letter-spacing: -0.0094em;\n}\n.styles-module__dropdownItem___ylsLj:hover {\n background: rgba(255, 255, 255, 0.08);\n}\n.styles-module__dropdownItem___ylsLj.styles-module__selected___OwRqP {\n background: rgba(255, 255, 255, 0.12);\n color: #fff;\n font-weight: 600;\n}\n\n.styles-module__settingsLabel___8UjfX {\n font-size: 0.8125rem;\n font-weight: 400;\n letter-spacing: -0.0094em;\n color: rgba(255, 255, 255, 0.5);\n display: flex;\n align-items: center;\n gap: 0.125rem;\n}\n[data-ui-sniper-theme=light] .styles-module__settingsLabel___8UjfX {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__settingsLabelMarker___ewdtV {\n padding-top: 3px;\n margin-bottom: 10px;\n}\n\n.styles-module__settingsOptions___LyrBA {\n display: flex;\n gap: 0.25rem;\n}\n\n.styles-module__settingsOption___UNa12 {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.25rem;\n padding: 0.375rem 0.5rem;\n border: none;\n border-radius: 0.375rem;\n background: transparent;\n font-size: 0.6875rem;\n font-weight: 500;\n color: rgba(0, 0, 0, 0.7);\n cursor: pointer;\n transition: background-color 0.15s ease, color 0.15s ease;\n}\n.styles-module__settingsOption___UNa12:hover {\n background: rgba(0, 0, 0, 0.05);\n}\n.styles-module__settingsOption___UNa12.styles-module__selected___OwRqP {\n background: color-mix(in srgb, var(--ui-sniper-color-blue) 15%, transparent);\n color: var(--ui-sniper-color-blue);\n}\n\n.styles-module__sliderContainer___ducXj {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.styles-module__slider___GLdxp {\n -webkit-appearance: none;\n appearance: none;\n width: 100%;\n height: 4px;\n background: rgba(255, 255, 255, 0.15);\n border-radius: 2px;\n outline: none;\n cursor: pointer;\n}\n.styles-module__slider___GLdxp::-webkit-slider-thumb {\n -webkit-appearance: none;\n appearance: none;\n width: 14px;\n height: 14px;\n background: white;\n border-radius: 50%;\n cursor: pointer;\n transition: transform 0.15s ease, box-shadow 0.15s ease;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\n}\n.styles-module__slider___GLdxp::-moz-range-thumb {\n width: 14px;\n height: 14px;\n background: white;\n border: none;\n border-radius: 50%;\n cursor: pointer;\n transition: transform 0.15s ease, box-shadow 0.15s ease;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);\n}\n.styles-module__slider___GLdxp:hover::-webkit-slider-thumb {\n transform: scale(1.15);\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);\n}\n.styles-module__slider___GLdxp:hover::-moz-range-thumb {\n transform: scale(1.15);\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);\n}\n\n.styles-module__sliderLabels___FhLDB {\n display: flex;\n justify-content: space-between;\n}\n\n.styles-module__sliderLabel___U8sPr {\n font-size: 0.625rem;\n font-weight: 500;\n color: rgba(255, 255, 255, 0.4);\n cursor: pointer;\n transition: color 0.15s ease;\n}\n.styles-module__sliderLabel___U8sPr:hover {\n color: rgba(255, 255, 255, 0.7);\n}\n.styles-module__sliderLabel___U8sPr.styles-module__active___-zoN6 {\n color: rgba(255, 255, 255, 0.9);\n}\n\n.styles-module__colorOptions___iHCNX {\n display: flex;\n gap: 0.5rem;\n margin-top: 0.375rem;\n margin-bottom: 1px;\n}\n\n.styles-module__colorOption___IodiY {\n display: block;\n width: 20px;\n height: 20px;\n border-radius: 50%;\n border: 2px solid transparent;\n background-color: var(--swatch);\n cursor: pointer;\n transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1);\n}\n@supports (color: color(display-p3 0 0 0)) {\n .styles-module__colorOption___IodiY {\n background-color: var(--swatch-p3);\n }\n}\n.styles-module__colorOption___IodiY:hover {\n transform: scale(1.15);\n}\n.styles-module__colorOption___IodiY.styles-module__selected___OwRqP {\n transform: scale(0.83);\n}\n\n.styles-module__colorOptionRing___U2xpo {\n display: flex;\n width: 24px;\n height: 24px;\n border: 2px solid transparent;\n border-radius: 50%;\n transition: border-color 0.3s ease;\n}\n.styles-module__colorOptionRing___U2xpo.styles-module__selected___OwRqP {\n border-color: var(--swatch);\n}\n@supports (color: color(display-p3 0 0 0)) {\n .styles-module__colorOptionRing___U2xpo.styles-module__selected___OwRqP {\n border-color: var(--swatch-p3);\n }\n}\n\n.styles-module__settingsToggle___fBrFn {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n cursor: pointer;\n}\n.styles-module__settingsToggle___fBrFn + .styles-module__settingsToggle___fBrFn {\n margin-top: calc(0.5rem + 6px);\n}\n.styles-module__settingsToggle___fBrFn input[type=checkbox] {\n position: absolute;\n opacity: 0;\n width: 0;\n height: 0;\n}\n.styles-module__settingsToggle___fBrFn.styles-module__settingsToggleMarginBottom___MZUyF {\n margin-bottom: calc(0.5rem + 6px);\n}\n\n.styles-module__customCheckbox___U39ax {\n position: relative;\n width: 14px;\n height: 14px;\n border: 1px solid rgba(255, 255, 255, 0.2);\n border-radius: 4px;\n background: rgba(255, 255, 255, 0.05);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n transition: background-color 0.25s ease, border-color 0.25s ease;\n}\n.styles-module__customCheckbox___U39ax svg {\n color: #1a1a1a;\n opacity: 1;\n transition: opacity 0.15s ease;\n}\ninput[type=checkbox]:checked + .styles-module__customCheckbox___U39ax {\n border-color: rgba(255, 255, 255, 0.3);\n background: rgb(255, 255, 255);\n}\n[data-ui-sniper-theme=light] .styles-module__customCheckbox___U39ax {\n border: 1px solid rgba(0, 0, 0, 0.15);\n background: #fff;\n}\n[data-ui-sniper-theme=light] .styles-module__customCheckbox___U39ax.styles-module__checked___mnZLo {\n border-color: #1a1a1a;\n background: #1a1a1a;\n}\n[data-ui-sniper-theme=light] .styles-module__customCheckbox___U39ax.styles-module__checked___mnZLo svg {\n color: #fff;\n}\n\n.styles-module__toggleLabel___Xm8Aa {\n font-size: 0.8125rem;\n font-weight: 400;\n color: rgba(255, 255, 255, 0.5);\n letter-spacing: -0.0094em;\n display: flex;\n align-items: center;\n gap: 0.25rem;\n}\n[data-ui-sniper-theme=light] .styles-module__toggleLabel___Xm8Aa {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.styles-module__toggleSwitch___l4Ygm {\n position: relative;\n display: inline-block;\n width: 24px;\n height: 16px;\n flex-shrink: 0;\n cursor: pointer;\n transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n}\n.styles-module__toggleSwitch___l4Ygm input {\n opacity: 0;\n width: 0;\n height: 0;\n}\n.styles-module__toggleSwitch___l4Ygm input:checked + .styles-module__toggleSlider___wprIn {\n background-color: var(--ui-sniper-color-blue);\n}\n.styles-module__toggleSwitch___l4Ygm input:checked + .styles-module__toggleSlider___wprIn::before {\n transform: translateX(8px);\n}\n.styles-module__toggleSwitch___l4Ygm.styles-module__disabled___332Jw {\n opacity: 0.4;\n}\n.styles-module__toggleSwitch___l4Ygm.styles-module__disabled___332Jw .styles-module__toggleSlider___wprIn {\n cursor: not-allowed;\n}\n\n.styles-module__toggleSlider___wprIn {\n position: absolute;\n cursor: pointer;\n inset: 0;\n border-radius: 16px;\n background: #484848;\n}\n[data-ui-sniper-theme=light] .styles-module__toggleSlider___wprIn {\n background: #dddddd;\n}\n.styles-module__toggleSlider___wprIn::before {\n content: "";\n position: absolute;\n height: 12px;\n width: 12px;\n left: 2px;\n bottom: 2px;\n background: white;\n border-radius: 50%;\n transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n@keyframes styles-module__mcpPulse___uNggr {\n 0% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-green) 50%, transparent);\n }\n 70% {\n box-shadow: 0 0 0 6px color-mix(in srgb, var(--ui-sniper-color-green) 0%, transparent);\n }\n 100% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-green) 0%, transparent);\n }\n}\n@keyframes styles-module__mcpPulseError___fov9B {\n 0% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-red) 50%, transparent);\n }\n 70% {\n box-shadow: 0 0 0 6px color-mix(in srgb, var(--ui-sniper-color-red) 0%, transparent);\n }\n 100% {\n box-shadow: 0 0 0 0 color-mix(in srgb, var(--ui-sniper-color-red) 0%, transparent);\n }\n}\n.styles-module__mcpStatusDot___ibgkc {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n flex-shrink: 0;\n}\n.styles-module__mcpStatusDot___ibgkc.styles-module__connecting___uo-CW {\n background-color: var(--ui-sniper-color-yellow);\n animation: styles-module__mcpPulse___uNggr 1.5s infinite;\n}\n.styles-module__mcpStatusDot___ibgkc.styles-module__connected___7c28g {\n background-color: var(--ui-sniper-color-green);\n animation: styles-module__mcpPulse___uNggr 2.5s ease-in-out infinite;\n}\n.styles-module__mcpStatusDot___ibgkc.styles-module__disconnected___cHPxR {\n background-color: var(--ui-sniper-color-red);\n animation: styles-module__mcpPulseError___fov9B 2s infinite;\n}\n\n.styles-module__drawCanvas___7cG9U {\n position: fixed;\n inset: 0;\n z-index: 99996;\n pointer-events: none !important;\n}\n.styles-module__drawCanvas___7cG9U.styles-module__active___-zoN6 {\n pointer-events: auto !important;\n cursor: crosshair !important;\n}\n.styles-module__drawCanvas___7cG9U.styles-module__active___-zoN6[data-stroke-hover] {\n cursor: pointer !important;\n}\n\n.styles-module__dragSelection___kZLq2 {\n position: fixed;\n top: 0;\n left: 0;\n border: 2px solid color-mix(in srgb, var(--ui-sniper-color-green) 60%, transparent);\n border-radius: 4px;\n background-color: color-mix(in srgb, var(--ui-sniper-color-green) 8%, transparent);\n pointer-events: none;\n z-index: 99997;\n will-change: transform, width, height;\n contain: layout style;\n}\n\n.styles-module__dragCount___KM90j {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: var(--ui-sniper-color-green);\n color: white;\n font-size: 0.875rem;\n font-weight: 600;\n padding: 0.25rem 0.5rem;\n border-radius: 1rem;\n min-width: 1.5rem;\n text-align: center;\n}\n\n.styles-module__highlightsContainer___-0xzG {\n position: fixed;\n top: 0;\n left: 0;\n pointer-events: none;\n z-index: 99996;\n}\n\n.styles-module__selectedElementHighlight___fyVlI {\n position: fixed;\n top: 0;\n left: 0;\n border: 2px solid color-mix(in srgb, var(--ui-sniper-color-green) 50%, transparent);\n border-radius: 4px;\n background: color-mix(in srgb, var(--ui-sniper-color-green) 6%, transparent);\n pointer-events: none;\n will-change: transform, width, height;\n contain: layout style;\n}\n\n[data-ui-sniper-theme=light] .styles-module__toolbarContainer___dIhma {\n background: #fff;\n color: rgba(0, 0, 0, 0.85);\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(0, 0, 0, 0.04);\n}\n[data-ui-sniper-theme=light] .styles-module__toolbarContainer___dIhma.styles-module__collapsed___Rydsn:hover {\n background: #f5f5f5;\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc {\n color: rgba(0, 0, 0, 0.5);\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc:hover:not(:disabled):not([data-active=true]):not([data-failed=true]):not([data-auto-sync=true]):not([data-error=true]):not([data-no-hover=true]) {\n background: rgba(0, 0, 0, 0.06);\n color: rgba(0, 0, 0, 0.85);\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc[data-active=true] {\n color: var(--ui-sniper-color-blue);\n background: color-mix(in srgb, var(--ui-sniper-color-blue) 15%, transparent);\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc[data-error=true] {\n color: var(--ui-sniper-color-red);\n background: color-mix(in srgb, var(--ui-sniper-color-red) 15%, transparent);\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc[data-danger]:hover:not(:disabled):not([data-active=true]):not([data-failed=true]) {\n color: var(--ui-sniper-color-red);\n background: color-mix(in srgb, var(--ui-sniper-color-red) 15%, transparent);\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc[data-auto-sync=true] {\n color: var(--ui-sniper-color-green);\n background: transparent;\n}\n[data-ui-sniper-theme=light] .styles-module__controlButton___8Q0jc[data-failed=true] {\n color: var(--ui-sniper-color-red);\n background: color-mix(in srgb, var(--ui-sniper-color-red) 15%, transparent);\n}\n[data-ui-sniper-theme=light] .styles-module__buttonTooltip___Burd9 {\n background: #fff;\n color: rgba(0, 0, 0, 0.85);\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(0, 0, 0, 0.04);\n}\n[data-ui-sniper-theme=light] .styles-module__buttonTooltip___Burd9::after {\n background: #fff;\n}\n[data-ui-sniper-theme=light] .styles-module__divider___c--s1 {\n background: rgba(0, 0, 0, 0.1);\n}\n\n@media (max-width: 768px), (pointer: coarse) {\n .styles-module__toolbarContainer___dIhma {\n bottom: 24px;\n top: auto !important;\n left: 50% !important;\n transform: translateX(-50%) !important;\n width: max-content;\n max-width: 90vw;\n }\n}\n.styles-module__centerCrosshair___UQ3GL {\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n z-index: 99998;\n pointer-events: none;\n}\n.styles-module__centerCrosshair___UQ3GL .styles-module__crosshairDot___YjR0R {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 6px;\n height: 6px;\n background-color: var(--ui-sniper-color-accent);\n border-radius: 50%;\n box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.5);\n}\n.styles-module__centerCrosshair___UQ3GL .styles-module__crosshairLineHorizontal___VX9Ks {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 20px;\n height: 2px;\n background-color: var(--ui-sniper-color-accent);\n opacity: 0.5;\n}\n.styles-module__centerCrosshair___UQ3GL .styles-module__crosshairLineVertical___ZEZ7X {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 2px;\n height: 20px;\n background-color: var(--ui-sniper-color-accent);\n opacity: 0.5;\n}';
|
|
7679
|
+
var classNames5 = { "toolbar": "styles-module__toolbar___wNsdK", "markersLayer": "styles-module__markersLayer___-25j1", "fixedMarkersLayer": "styles-module__fixedMarkersLayer___ffyX6", "controlsContent": "styles-module__controlsContent___9GJWU", "disableTransitions": "styles-module__disableTransitions___EopxO", "toolbarContainer": "styles-module__toolbarContainer___dIhma", "entrance": "styles-module__entrance___sgHd8", "toolbarEnter": "styles-module__toolbarEnter___u8RRu", "hiding": "styles-module__hiding___1td44", "toolbarHide": "styles-module__toolbarHide___y8kaT", "collapsed": "styles-module__collapsed___Rydsn", "expanded": "styles-module__expanded___ofKPx", "serverConnected": "styles-module__serverConnected___Gfbou", "toggleContent": "styles-module__toggleContent___0yfyP", "visible": "styles-module__visible___KHwEW", "hidden": "styles-module__hidden___Ae8H4", "badge": "styles-module__badge___2XsgF", "fadeOut": "styles-module__fadeOut___6Ut6-", "badgeEnter": "styles-module__badgeEnter___mVQLj", "controlButton": "styles-module__controlButton___8Q0jc", "statusShowing": "styles-module__statusShowing___te6iu", "buttonBadge": "styles-module__buttonBadge___NeFWb", "mcpIndicator": "styles-module__mcpIndicator___zGJeL", "connected": "styles-module__connected___7c28g", "mcpIndicatorPulseConnected": "styles-module__mcpIndicatorPulseConnected___EDodZ", "connecting": "styles-module__connecting___uo-CW", "mcpIndicatorPulseConnecting": "styles-module__mcpIndicatorPulseConnecting___cCYte", "connectionIndicatorWrapper": "styles-module__connectionIndicatorWrapper___L-e-3", "connectionIndicator": "styles-module__connectionIndicator___afk9p", "connectionIndicatorVisible": "styles-module__connectionIndicatorVisible___C-i5B", "connectionIndicatorConnected": "styles-module__connectionIndicatorConnected___IY8pR", "connectionPulse": "styles-module__connectionPulse___-Zycw", "connectionIndicatorDisconnected": "styles-module__connectionIndicatorDisconnected___kmpaZ", "connectionIndicatorConnecting": "styles-module__connectionIndicatorConnecting___QmSLH", "buttonWrapper": "styles-module__buttonWrapper___rBcdv", "buttonTooltip": "styles-module__buttonTooltip___Burd9", "tooltipsInSession": "styles-module__tooltipsInSession___-0lHH", "sendButtonWrapper": "styles-module__sendButtonWrapper___UUxG6", "sendButtonVisible": "styles-module__sendButtonVisible___WPSQU", "shortcut": "styles-module__shortcut___lEAQk", "tooltipBelow": "styles-module__tooltipBelow___m6ats", "tooltipsHidden": "styles-module__tooltipsHidden___VtLJG", "tooltipVisible": "styles-module__tooltipVisible___0jcCv", "buttonWrapperAlignLeft": "styles-module__buttonWrapperAlignLeft___myzIp", "buttonWrapperAlignRight": "styles-module__buttonWrapperAlignRight___HCQFR", "divider": "styles-module__divider___c--s1", "overlay": "styles-module__overlay___Q1O9y", "hoverHighlight": "styles-module__hoverHighlight___ogakW", "enter": "styles-module__enter___WFIki", "hoverHighlightIn": "styles-module__hoverHighlightIn___6WYHY", "multiSelectOutline": "styles-module__multiSelectOutline___cSJ-m", "fadeIn": "styles-module__fadeIn___b9qmf", "exit": "styles-module__exit___fyOJ0", "singleSelectOutline": "styles-module__singleSelectOutline___QhX-O", "hoverTooltip": "styles-module__hoverTooltip___bvLk7", "hoverTooltipIn": "styles-module__hoverTooltipIn___FYGQx", "hoverReactPath": "styles-module__hoverReactPath___gx1IJ", "hoverElementName": "styles-module__hoverElementName___QMLMl", "marker": "styles-module__marker___6sQrs", "clearing": "styles-module__clearing___FQ--7", "markerIn": "styles-module__markerIn___5FaAP", "markerOut": "styles-module__markerOut___GU5jX", "pending": "styles-module__pending___2IHLC", "fixed": "styles-module__fixed___dBMHC", "multiSelect": "styles-module__multiSelect___YWiuz", "hovered": "styles-module__hovered___ZgXIy", "renumber": "styles-module__renumber___nCTxD", "renumberRoll": "styles-module__renumberRoll___Wgbq3", "markerTooltip": "styles-module__markerTooltip___aLJID", "tooltipIn": "styles-module__tooltipIn___0N31w", "markerQuote": "styles-module__markerQuote___FHmrz", "markerNote": "styles-module__markerNote___QkrrS", "markerHint": "styles-module__markerHint___2iF-6", "settingsPanel": "styles-module__settingsPanel___OxX3Y", "settingsHeader": "styles-module__settingsHeader___pwDY9", "settingsBrand": "styles-module__settingsBrand___0gJeM", "settingsBrandSlash": "styles-module__settingsBrandSlash___uTG18", "settingsVersion": "styles-module__settingsVersion___TUcFq", "settingsSection": "styles-module__settingsSection___m-YM2", "settingsLabel": "styles-module__settingsLabel___8UjfX", "cycleButton": "styles-module__cycleButton___FMKfw", "cycleDot": "styles-module__cycleDot___nPgLY", "dropdownButton": "styles-module__dropdownButton___16NPz", "toggleLabel": "styles-module__toggleLabel___Xm8Aa", "customCheckbox": "styles-module__customCheckbox___U39ax", "sliderLabel": "styles-module__sliderLabel___U8sPr", "slider": "styles-module__slider___GLdxp", "themeToggle": "styles-module__themeToggle___2rUjA", "settingsOption": "styles-module__settingsOption___UNa12", "selected": "styles-module__selected___OwRqP", "settingsPanelContainer": "styles-module__settingsPanelContainer___Xksv8", "settingsPage": "styles-module__settingsPage___6YfHH", "slideLeft": "styles-module__slideLeft___Ps01J", "automationsPage": "styles-module__automationsPage___uvCq6", "slideIn": "styles-module__slideIn___4-qXe", "settingsNavLink": "styles-module__settingsNavLink___wCzJt", "settingsNavLinkRight": "styles-module__settingsNavLinkRight___ZWwhj", "mcpNavIndicator": "styles-module__mcpNavIndicator___cl9pO", "mcpPulse": "styles-module__mcpPulse___uNggr", "settingsBackButton": "styles-module__settingsBackButton___bIe2j", "automationHeader": "styles-module__automationHeader___InP0r", "automationDescription": "styles-module__automationDescription___NKlmo", "learnMoreLink": "styles-module__learnMoreLink___8xv-x", "autoSendRow": "styles-module__autoSendRow___UblX5", "autoSendLabel": "styles-module__autoSendLabel___icDc2", "active": "styles-module__active___-zoN6", "webhookUrlInput": "styles-module__webhookUrlInput___2375C", "settingsSectionExtraPadding": "styles-module__settingsSectionExtraPadding___jdhFV", "settingsSectionGrow": "styles-module__settingsSectionGrow___h-5HZ", "settingsRow": "styles-module__settingsRow___3sdhc", "settingsRowMarginTop": "styles-module__settingsRowMarginTop___zA0Sp", "dropdownContainer": "styles-module__dropdownContainer___BVnxe", "settingsRowDisabled": "styles-module__settingsRowDisabled___EgS0V", "toggleSwitch": "styles-module__toggleSwitch___l4Ygm", "cycleButtonText": "styles-module__cycleButtonText___fD1LR", "cycleTextIn": "styles-module__cycleTextIn___Q6zJf", "cycleDots": "styles-module__cycleDots___LWuoQ", "dropdownMenu": "styles-module__dropdownMenu___k73ER", "scaleIn": "styles-module__scaleIn___c-r1K", "dropdownItem": "styles-module__dropdownItem___ylsLj", "settingsLabelMarker": "styles-module__settingsLabelMarker___ewdtV", "settingsOptions": "styles-module__settingsOptions___LyrBA", "sliderContainer": "styles-module__sliderContainer___ducXj", "sliderLabels": "styles-module__sliderLabels___FhLDB", "colorOptions": "styles-module__colorOptions___iHCNX", "colorOption": "styles-module__colorOption___IodiY", "colorOptionRing": "styles-module__colorOptionRing___U2xpo", "settingsToggle": "styles-module__settingsToggle___fBrFn", "settingsToggleMarginBottom": "styles-module__settingsToggleMarginBottom___MZUyF", "checked": "styles-module__checked___mnZLo", "toggleSlider": "styles-module__toggleSlider___wprIn", "disabled": "styles-module__disabled___332Jw", "mcpStatusDot": "styles-module__mcpStatusDot___ibgkc", "disconnected": "styles-module__disconnected___cHPxR", "mcpPulseError": "styles-module__mcpPulseError___fov9B", "drawCanvas": "styles-module__drawCanvas___7cG9U", "dragSelection": "styles-module__dragSelection___kZLq2", "dragCount": "styles-module__dragCount___KM90j", "highlightsContainer": "styles-module__highlightsContainer___-0xzG", "selectedElementHighlight": "styles-module__selectedElementHighlight___fyVlI", "centerCrosshair": "styles-module__centerCrosshair___UQ3GL", "crosshairDot": "styles-module__crosshairDot___YjR0R", "crosshairLineHorizontal": "styles-module__crosshairLineHorizontal___VX9Ks", "crosshairLineVertical": "styles-module__crosshairLineVertical___ZEZ7X", "scaleOut": "styles-module__scaleOut___Wctwz", "slideUp": "styles-module__slideUp___kgD36", "slideDown": "styles-module__slideDown___zcdje" };
|
|
7478
7680
|
if (typeof document !== "undefined") {
|
|
7479
7681
|
let style = document.getElementById("feedback-tool-styles-page-toolbar-css-styles");
|
|
7480
7682
|
if (!style) {
|
|
@@ -7893,7 +8095,7 @@ function SettingsPanel({
|
|
|
7893
8095
|
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)("a", { className: styles_module_default9.settingsBrand, href: "https://hara-xy.com", target: "_blank", rel: "noopener noreferrer", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("svg", { width: "72", height: "16", viewBox: "0 0 500 151", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("text", { x: "10", y: "110", "font-family": "'Arial Black', 'Impact', sans-serif", "font-size": "105", "font-weight": "900", "font-style": "italic", "letter-spacing": "-2", fill: "currentColor", children: "UI SNIPER" }) }) }),
|
|
7894
8096
|
/* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("p", { className: styles_module_default9.settingsVersion, children: [
|
|
7895
8097
|
"v",
|
|
7896
|
-
"3.0.
|
|
8098
|
+
"3.0.10"
|
|
7897
8099
|
] }),
|
|
7898
8100
|
/* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
7899
8101
|
"button",
|
|
@@ -8232,7 +8434,7 @@ var DEFAULT_SETTINGS = {
|
|
|
8232
8434
|
markerClickBehavior: "edit",
|
|
8233
8435
|
webhookUrl: "",
|
|
8234
8436
|
webhooksEnabled: true,
|
|
8235
|
-
includeScreenshots:
|
|
8437
|
+
includeScreenshots: true
|
|
8236
8438
|
};
|
|
8237
8439
|
var isValidUrl = (url) => {
|
|
8238
8440
|
if (!url || !url.trim()) return false;
|
|
@@ -8338,6 +8540,7 @@ function PageFeedbackToolbarCSS({
|
|
|
8338
8540
|
className: userClassName
|
|
8339
8541
|
} = {}) {
|
|
8340
8542
|
const [isActive, setIsActive] = (0, import_react8.useState)(false);
|
|
8543
|
+
const [isMobile, setIsMobile] = (0, import_react8.useState)(false);
|
|
8341
8544
|
const [annotations, setAnnotations] = (0, import_react8.useState)([]);
|
|
8342
8545
|
const [showMarkers, setShowMarkers] = (0, import_react8.useState)(true);
|
|
8343
8546
|
const [isToolbarHidden, setIsToolbarHidden] = (0, import_react8.useState)(() => loadToolbarHidden());
|
|
@@ -8472,6 +8675,10 @@ function PageFeedbackToolbarCSS({
|
|
|
8472
8675
|
const [settings, setSettings] = (0, import_react8.useState)(() => {
|
|
8473
8676
|
try {
|
|
8474
8677
|
const saved = JSON.parse(localStorage.getItem("feedback-toolbar-settings") ?? "");
|
|
8678
|
+
if (!localStorage.getItem("feedback-toolbar-migrated-screenshots")) {
|
|
8679
|
+
saved.includeScreenshots = true;
|
|
8680
|
+
localStorage.setItem("feedback-toolbar-migrated-screenshots", "1");
|
|
8681
|
+
}
|
|
8475
8682
|
return {
|
|
8476
8683
|
...DEFAULT_SETTINGS,
|
|
8477
8684
|
...saved,
|
|
@@ -8556,6 +8763,11 @@ function PageFeedbackToolbarCSS({
|
|
|
8556
8763
|
}
|
|
8557
8764
|
}, [shouldShowMarkers]);
|
|
8558
8765
|
(0, import_react8.useEffect)(() => {
|
|
8766
|
+
const checkMobile = () => {
|
|
8767
|
+
setIsMobile(window.innerWidth < 768 || window.matchMedia("(pointer: coarse)").matches);
|
|
8768
|
+
};
|
|
8769
|
+
checkMobile();
|
|
8770
|
+
window.addEventListener("resize", checkMobile);
|
|
8559
8771
|
setMounted(true);
|
|
8560
8772
|
setScrollY(window.scrollY);
|
|
8561
8773
|
const stored = loadAnnotations(pathname);
|
|
@@ -8582,6 +8794,7 @@ function PageFeedbackToolbarCSS({
|
|
|
8582
8794
|
}
|
|
8583
8795
|
} catch (e) {
|
|
8584
8796
|
}
|
|
8797
|
+
return () => window.removeEventListener("resize", checkMobile);
|
|
8585
8798
|
}, [pathname]);
|
|
8586
8799
|
(0, import_react8.useEffect)(() => {
|
|
8587
8800
|
if (mounted) {
|
|
@@ -9556,6 +9769,125 @@ function PageFeedbackToolbarCSS({
|
|
|
9556
9769
|
setEditingTargetElements([]);
|
|
9557
9770
|
}
|
|
9558
9771
|
}, []);
|
|
9772
|
+
(0, import_react8.useEffect)(() => {
|
|
9773
|
+
if (!isActive || !isMobile || pendingAnnotation || editingAnnotation || isDrawMode || isDesignMode) {
|
|
9774
|
+
return;
|
|
9775
|
+
}
|
|
9776
|
+
const updateCenterTarget = () => {
|
|
9777
|
+
const centerX = window.innerWidth / 2;
|
|
9778
|
+
const centerY = window.innerHeight / 2;
|
|
9779
|
+
const elementUnder = deepElementFromPoint(centerX, centerY);
|
|
9780
|
+
if (!elementUnder || closestCrossingShadow(elementUnder, "[data-feedback-toolbar]") || closestCrossingShadow(elementUnder, "[data-annotation-popup]") || closestCrossingShadow(elementUnder, "[data-annotation-marker]")) {
|
|
9781
|
+
setHoverInfo(null);
|
|
9782
|
+
return;
|
|
9783
|
+
}
|
|
9784
|
+
const { name, elementName, path, reactComponents } = identifyElementWithReact(
|
|
9785
|
+
elementUnder,
|
|
9786
|
+
effectiveReactMode
|
|
9787
|
+
);
|
|
9788
|
+
const rect = elementUnder.getBoundingClientRect();
|
|
9789
|
+
setHoverInfo({
|
|
9790
|
+
element: name,
|
|
9791
|
+
elementName,
|
|
9792
|
+
elementPath: path,
|
|
9793
|
+
rect,
|
|
9794
|
+
reactComponents
|
|
9795
|
+
});
|
|
9796
|
+
setHoverPosition({ x: centerX, y: centerY });
|
|
9797
|
+
};
|
|
9798
|
+
updateCenterTarget();
|
|
9799
|
+
window.addEventListener("scroll", updateCenterTarget, { passive: true });
|
|
9800
|
+
window.addEventListener("resize", updateCenterTarget, { passive: true });
|
|
9801
|
+
const interval = originalSetInterval(updateCenterTarget, 300);
|
|
9802
|
+
return () => {
|
|
9803
|
+
window.removeEventListener("scroll", updateCenterTarget);
|
|
9804
|
+
window.removeEventListener("resize", updateCenterTarget);
|
|
9805
|
+
clearInterval(interval);
|
|
9806
|
+
};
|
|
9807
|
+
}, [
|
|
9808
|
+
isActive,
|
|
9809
|
+
isMobile,
|
|
9810
|
+
pendingAnnotation,
|
|
9811
|
+
editingAnnotation,
|
|
9812
|
+
isDrawMode,
|
|
9813
|
+
isDesignMode,
|
|
9814
|
+
effectiveReactMode
|
|
9815
|
+
]);
|
|
9816
|
+
const handleSnipeCenterElement = (0, import_react8.useCallback)((e) => {
|
|
9817
|
+
if (e) {
|
|
9818
|
+
e.preventDefault();
|
|
9819
|
+
e.stopPropagation();
|
|
9820
|
+
}
|
|
9821
|
+
if (!hoverInfo) return;
|
|
9822
|
+
const centerX = window.innerWidth / 2;
|
|
9823
|
+
const centerY = window.innerHeight / 2;
|
|
9824
|
+
const elementUnder = deepElementFromPoint(centerX, centerY);
|
|
9825
|
+
if (!elementUnder) return;
|
|
9826
|
+
const { name, path, reactComponents } = identifyElementWithReact(elementUnder, effectiveReactMode);
|
|
9827
|
+
const rect = elementUnder.getBoundingClientRect();
|
|
9828
|
+
const x = centerX / window.innerWidth * 100;
|
|
9829
|
+
const isFixed = isElementFixed(elementUnder);
|
|
9830
|
+
const y = isFixed ? centerY : centerY + window.scrollY;
|
|
9831
|
+
const computedStylesObj = getDetailedComputedStyles(elementUnder);
|
|
9832
|
+
const computedStylesStr = getForensicComputedStyles(elementUnder);
|
|
9833
|
+
setPendingAnnotation({
|
|
9834
|
+
x,
|
|
9835
|
+
y,
|
|
9836
|
+
clientY: centerY,
|
|
9837
|
+
element: name,
|
|
9838
|
+
elementPath: path,
|
|
9839
|
+
boundingBox: {
|
|
9840
|
+
x: rect.left,
|
|
9841
|
+
y: isFixed ? rect.top : rect.top + window.scrollY,
|
|
9842
|
+
width: rect.width,
|
|
9843
|
+
height: rect.height
|
|
9844
|
+
},
|
|
9845
|
+
nearbyText: getNearbyText(elementUnder),
|
|
9846
|
+
cssClasses: getElementClasses(elementUnder),
|
|
9847
|
+
isFixed,
|
|
9848
|
+
fullPath: getFullElementPath(elementUnder),
|
|
9849
|
+
accessibility: getAccessibilityInfo(elementUnder),
|
|
9850
|
+
computedStyles: computedStylesStr,
|
|
9851
|
+
computedStylesObj,
|
|
9852
|
+
nearbyElements: getNearbyElements(elementUnder),
|
|
9853
|
+
reactComponents: reactComponents ?? void 0,
|
|
9854
|
+
sourceFile: detectSourceFile(elementUnder),
|
|
9855
|
+
targetElement: elementUnder
|
|
9856
|
+
});
|
|
9857
|
+
setHoverInfo(null);
|
|
9858
|
+
}, [hoverInfo, effectiveReactMode]);
|
|
9859
|
+
const handleRefineTarget = (0, import_react8.useCallback)((newTarget) => {
|
|
9860
|
+
setPendingAnnotation((prev) => {
|
|
9861
|
+
if (!prev) return prev;
|
|
9862
|
+
const { name, path, reactComponents } = identifyElementWithReact(newTarget, effectiveReactMode);
|
|
9863
|
+
const rect = newTarget.getBoundingClientRect();
|
|
9864
|
+
const isFixed = isElementFixed(newTarget);
|
|
9865
|
+
const computedStylesObj = getDetailedComputedStyles(newTarget);
|
|
9866
|
+
const computedStylesStr = getForensicComputedStyles(newTarget);
|
|
9867
|
+
return {
|
|
9868
|
+
...prev,
|
|
9869
|
+
element: name,
|
|
9870
|
+
elementPath: path,
|
|
9871
|
+
boundingBox: {
|
|
9872
|
+
x: rect.left,
|
|
9873
|
+
y: isFixed ? rect.top : rect.top + window.scrollY,
|
|
9874
|
+
width: rect.width,
|
|
9875
|
+
height: rect.height
|
|
9876
|
+
},
|
|
9877
|
+
nearbyText: getNearbyText(newTarget),
|
|
9878
|
+
cssClasses: getElementClasses(newTarget),
|
|
9879
|
+
isFixed,
|
|
9880
|
+
fullPath: getFullElementPath(newTarget),
|
|
9881
|
+
accessibility: getAccessibilityInfo(newTarget),
|
|
9882
|
+
computedStyles: computedStylesStr,
|
|
9883
|
+
computedStylesObj,
|
|
9884
|
+
nearbyElements: getNearbyElements(newTarget),
|
|
9885
|
+
reactComponents: reactComponents ?? void 0,
|
|
9886
|
+
sourceFile: detectSourceFile(newTarget),
|
|
9887
|
+
targetElement: newTarget
|
|
9888
|
+
};
|
|
9889
|
+
});
|
|
9890
|
+
}, [effectiveReactMode]);
|
|
9559
9891
|
(0, import_react8.useEffect)(() => {
|
|
9560
9892
|
if (!isActive || isDrawMode || isDesignMode) return;
|
|
9561
9893
|
const handleClick = (e) => {
|
|
@@ -10052,12 +10384,21 @@ function PageFeedbackToolbarCSS({
|
|
|
10052
10384
|
}
|
|
10053
10385
|
if (elToCapture) {
|
|
10054
10386
|
try {
|
|
10055
|
-
const
|
|
10056
|
-
|
|
10057
|
-
|
|
10058
|
-
|
|
10059
|
-
|
|
10060
|
-
|
|
10387
|
+
const rect = elToCapture.getBoundingClientRect();
|
|
10388
|
+
const result = await captureDomRegion(
|
|
10389
|
+
rect.left,
|
|
10390
|
+
rect.top,
|
|
10391
|
+
rect.width,
|
|
10392
|
+
rect.height,
|
|
10393
|
+
[],
|
|
10394
|
+
// No strokes for standard annotation
|
|
10395
|
+
150,
|
|
10396
|
+
// 150px padding to show surrounding context
|
|
10397
|
+
0.8
|
|
10398
|
+
);
|
|
10399
|
+
if (result) {
|
|
10400
|
+
screenshotData = result;
|
|
10401
|
+
}
|
|
10061
10402
|
} catch (e) {
|
|
10062
10403
|
console.error("Failed to capture screenshot:", e);
|
|
10063
10404
|
}
|
|
@@ -10830,6 +11171,22 @@ function PageFeedbackToolbarCSS({
|
|
|
10830
11171
|
onMouseEnter: handleControlsMouseEnter,
|
|
10831
11172
|
onMouseLeave: handleControlsMouseLeave,
|
|
10832
11173
|
children: [
|
|
11174
|
+
isMobile && !pendingAnnotation && !editingAnnotation && !isDesignMode && /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(import_jsx_runtime14.Fragment, { children: [
|
|
11175
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: styles_module_default4.buttonWrapper, children: [
|
|
11176
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
11177
|
+
"button",
|
|
11178
|
+
{
|
|
11179
|
+
className: `${styles_module_default4.controlButton} ${styles_module_default4.snipeButton}`,
|
|
11180
|
+
onClick: handleSnipeCenterElement,
|
|
11181
|
+
disabled: !hoverInfo,
|
|
11182
|
+
"data-active": true,
|
|
11183
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(IconTarget, { size: 24 })
|
|
11184
|
+
}
|
|
11185
|
+
),
|
|
11186
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: styles_module_default4.buttonTooltip, children: "Target Element" })
|
|
11187
|
+
] }),
|
|
11188
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: styles_module_default4.divider })
|
|
11189
|
+
] }),
|
|
10833
11190
|
/* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
10834
11191
|
"div",
|
|
10835
11192
|
{
|
|
@@ -11606,6 +11963,8 @@ function PageFeedbackToolbarCSS({
|
|
|
11606
11963
|
{
|
|
11607
11964
|
ref: popupRef,
|
|
11608
11965
|
element: pendingAnnotation.element,
|
|
11966
|
+
messageNumber: visibleAnnotations.length + 1,
|
|
11967
|
+
screenshotData: pendingAnnotation.screenshotData,
|
|
11609
11968
|
selectedText: pendingAnnotation.selectedText,
|
|
11610
11969
|
computedStyles: pendingAnnotation.computedStylesObj,
|
|
11611
11970
|
placeholder: pendingAnnotation.element === "Area selection" ? "What should we fix here?" : pendingAnnotation.isMultiSelect ? "What should we change about these?" : "Drop a note here...",
|
|
@@ -11614,7 +11973,14 @@ function PageFeedbackToolbarCSS({
|
|
|
11614
11973
|
isExiting: pendingExiting,
|
|
11615
11974
|
lightMode: !isDarkMode,
|
|
11616
11975
|
accentColor: pendingAnnotation.isMultiSelect ? "var(--ui-sniper-color-green)" : "var(--ui-sniper-color-accent)",
|
|
11617
|
-
|
|
11976
|
+
targetElement: pendingAnnotation.targetElement,
|
|
11977
|
+
onRefineTarget: handleRefineTarget,
|
|
11978
|
+
style: isMobile ? {
|
|
11979
|
+
top: "20px",
|
|
11980
|
+
left: "50%",
|
|
11981
|
+
width: "calc(100vw - 32px)",
|
|
11982
|
+
maxWidth: "400px"
|
|
11983
|
+
} : {
|
|
11618
11984
|
// Popup is 280px wide, centered with translateX(-50%), so 140px each side
|
|
11619
11985
|
// Clamp so popup stays 20px from viewport edges
|
|
11620
11986
|
left: Math.max(
|
|
@@ -11704,6 +12070,8 @@ function PageFeedbackToolbarCSS({
|
|
|
11704
12070
|
{
|
|
11705
12071
|
ref: editPopupRef,
|
|
11706
12072
|
element: editingAnnotation.element,
|
|
12073
|
+
messageNumber: visibleAnnotations.findIndex((a) => a.id === editingAnnotation.id) + 1,
|
|
12074
|
+
screenshotData: editingAnnotation.screenshotData,
|
|
11707
12075
|
selectedText: editingAnnotation.selectedText,
|
|
11708
12076
|
computedStyles: parseComputedStylesString(
|
|
11709
12077
|
editingAnnotation.computedStyles
|
|
@@ -11717,7 +12085,12 @@ function PageFeedbackToolbarCSS({
|
|
|
11717
12085
|
isExiting: editExiting,
|
|
11718
12086
|
lightMode: !isDarkMode,
|
|
11719
12087
|
accentColor: editingAnnotation.isMultiSelect ? "var(--ui-sniper-color-green)" : "var(--ui-sniper-color-accent)",
|
|
11720
|
-
style:
|
|
12088
|
+
style: isMobile ? {
|
|
12089
|
+
top: "20px",
|
|
12090
|
+
left: "50%",
|
|
12091
|
+
width: "calc(100vw - 32px)",
|
|
12092
|
+
maxWidth: "400px"
|
|
12093
|
+
} : (() => {
|
|
11721
12094
|
const markerY = editingAnnotation.isFixed ? editingAnnotation.y : editingAnnotation.y - scrollY;
|
|
11722
12095
|
return {
|
|
11723
12096
|
// Popup is 280px wide, centered with translateX(-50%), so 140px each side
|
|
@@ -11745,6 +12118,11 @@ function PageFeedbackToolbarCSS({
|
|
|
11745
12118
|
className: styles_module_default4.highlightsContainer
|
|
11746
12119
|
}
|
|
11747
12120
|
)
|
|
12121
|
+
] }),
|
|
12122
|
+
isMobile && isActive && !pendingAnnotation && !editingAnnotation && !isDrawMode && !isDesignMode && /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: styles_module_default4.centerCrosshair, "data-feedback-toolbar": true, children: [
|
|
12123
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: styles_module_default4.crosshairDot }),
|
|
12124
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: styles_module_default4.crosshairLineHorizontal }),
|
|
12125
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: styles_module_default4.crosshairLineVertical })
|
|
11748
12126
|
] })
|
|
11749
12127
|
]
|
|
11750
12128
|
}
|
|
@@ -11788,6 +12166,7 @@ function PageFeedbackToolbarCSS({
|
|
|
11788
12166
|
IconSendAnimated,
|
|
11789
12167
|
IconSendArrow,
|
|
11790
12168
|
IconSun,
|
|
12169
|
+
IconTarget,
|
|
11791
12170
|
IconTrash,
|
|
11792
12171
|
IconTrashAlt,
|
|
11793
12172
|
IconXmark,
|