.frame-block{position:relative;width:100%;max-width:100%;box-sizing:border-box;cursor:default;overflow:hidden;display:flex;flex-direction:column;min-height:60px}.frame-block[data-text-frame]{min-height:unset}.frame-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w));cursor:grab}.frame-block[data-banner-preset].selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.frame-block:hover:not(.selected)::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:100}.frame-block:not(.selected):not([data-text-frame]):not(:has(.selected)) *:not(.shape-block):not(.shape-handle){pointer-events:none}.frame-block.selected *{pointer-events:auto}.frame-block.ss-drag-over{outline:2px dashed var(--sel-color)}.frame-block.has-bg-opacity{background:transparent}.frame-block.has-bg-opacity::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-color:var(--frame-bg, transparent);background-image:var(--frame-bg-img, none);background-size:cover;background-position:var(--frame-bg-pos, center);opacity:var(--frame-bg-opacity, 1);border-radius:inherit}.frame-block.has-bg-opacity>*{position:relative;z-index:1}#ss-handles-overlay{position:fixed;inset:0;pointer-events:none;z-index:9990}.ss-resize-handle{position:absolute;width:7px;height:7px;background:#fff;border:var(--ui-handle-border-w, 1px) solid var(--sel-color);border-radius:1px;z-index:1;pointer-events:auto;box-sizing:border-box;cursor:nwse-resize}.ss-resize-handle.ne,.ss-resize-handle.sw{cursor:nesw-resize}.ss-radius-handle{position:absolute;width:7px;height:7px;background:#fff;border:var(--ui-handle-border-w-round, 1.5px) solid var(--sel-color);border-radius:50%;z-index:1001;pointer-events:auto;box-sizing:border-box;cursor:crosshair;transition:transform 0.1s}.ss-radius-handle:hover{transform:scale(1.4);background:var(--sel-color)}.asset-radius-handle{position:absolute;width:7px;height:7px;background:#fff;border:var(--ui-handle-border-w-round, 1.5px) solid var(--sel-color);border-radius:50%;z-index:1001;pointer-events:auto;box-sizing:border-box;cursor:crosshair;transition:transform 0.1s}.asset-radius-handle:hover{transform:scale(1.4);background:var(--sel-color)}.asset-handle{position:absolute;width:7px;height:7px;background:#fff;border:var(--ui-handle-border-w, 1px) solid var(--sel-color);border-radius:1px;z-index:100;pointer-events:auto;box-sizing:border-box;opacity:0;transition:opacity 0.1s}.asset-block.selected .asset-handle{opacity:1}.asset-handle.nw{top:-3.5px;left:-3.5px;cursor:nw-resize}.asset-handle.ne{top:-3.5px;right:-3.5px;cursor:ne-resize}.asset-handle.sw{bottom:-3.5px;left:-3.5px;cursor:sw-resize}.asset-handle.se{bottom:-3.5px;right:-3.5px;cursor:se-resize}.asset-overlay-handle{position:absolute;width:7px;height:7px;background:#fff;border:var(--ui-handle-border-w-round, 1.5px) solid var(--sel-color);border-radius:1px;z-index:9992;pointer-events:auto;box-sizing:border-box}.asset-overlay-handle.nw{cursor:nw-resize}.asset-overlay-handle.ne{cursor:ne-resize}.asset-overlay-handle.sw{cursor:sw-resize}.asset-overlay-handle.se{cursor:se-resize}.canvas-overlay-handle{position:absolute;width:7px;height:7px;background:#fff;border:var(--ui-handle-border-w-round, 1.5px) solid var(--sel-color);border-radius:1px;z-index:9992;pointer-events:auto;box-sizing:border-box}.canvas-overlay-handle.nw{cursor:nw-resize}.canvas-overlay-handle.ne{cursor:ne-resize}.canvas-overlay-handle.sw{cursor:sw-resize}.canvas-overlay-handle.se{cursor:se-resize}.vector-overlay-handle{position:absolute;width:7px;height:7px;background:#fff;border:var(--ui-handle-border-w-round, 1.5px) solid var(--sel-color);border-radius:1px;z-index:9992;pointer-events:auto;box-sizing:border-box}.vector-overlay-handle.nw{cursor:nw-resize}.vector-overlay-handle.ne{cursor:ne-resize}.vector-overlay-handle.sw{cursor:sw-resize}.vector-overlay-handle.se{cursor:se-resize}.canvas-radius-handle{position:absolute;width:7px;height:7px;background:#fff;border:var(--ui-handle-border-w-round, 1.5px) solid var(--sel-color);border-radius:50%;z-index:9993;pointer-events:auto;box-sizing:border-box;cursor:crosshair;transition:transform 0.1s}.canvas-radius-handle:hover{transform:scale(1.4);background:var(--sel-color)}.asset-block.has-image{padding:0;margin-top:0;margin-bottom:0;overflow:visible;position:relative;background:transparent}.asset-img-clip{position:absolute;inset:0;overflow:hidden;border-radius:inherit}.asset-img{width:100%;height:100%;object-fit:cover;display:block}.asset-block.img-editing{cursor:default}.asset-block.img-editing .asset-img{cursor:move;user-select:none}.img-boundary{position:absolute;outline:1px solid var(--sel-color);outline-offset:-1px;pointer-events:none;z-index:15;box-sizing:border-box}.img-corner-handle{position:absolute;width:7px;height:7px;background:#fff;border:var(--ui-handle-border-w, 1px) solid var(--sel-color);border-radius:1px;z-index:9992;box-sizing:border-box;pointer-events:auto}.img-corner-handle:hover{background:var(--sel-color)}.img-edge-handle{position:absolute;width:7px;height:7px;background:var(--sel-color);border:1px solid #fff;border-radius:50%;z-index:9992;box-sizing:border-box;pointer-events:auto}.img-snap-guide-h{position:absolute;height:1px;background:var(--sel-color);opacity:0.7;pointer-events:none;z-index:9993;transform:translateY(-0.5px)}.img-snap-guide-v{position:absolute;width:1px;background:var(--sel-color);opacity:0.7;pointer-events:none;z-index:9993;transform:translateX(-0.5px)}.img-rotate-zone{position:absolute;width:20px;height:20px;z-index:9991;pointer-events:auto;cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'><path d='M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z' fill='%231592fe'/></svg>") 8 8,crosshair}.icon-circle-block.img-editing{outline:2px dashed var(--sel-color)!important;outline-offset:3px;cursor:default}.icon-circle-block.img-editing .icb-img{cursor:move;user-select:none}.icon-circle-block.img-editing .icb-clear-btn{display:none}.img-edit-hint{position:absolute;bottom:12px;left:50%;transform:translateX(-50%) scale(var(--inv-zoom, 1));transform-origin:bottom center;background:rgba(18,18,18,0.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:rgba(255,255,255,0.9);font-size:10px;font-weight:500;letter-spacing:0.04em;padding:4px 12px;border-radius:20px;pointer-events:none;white-space:nowrap;z-index:20;border:1px solid rgba(255,255,255,0.1);box-shadow:0 2px 12px rgba(0,0,0,0.5)}.asset-overlay-clear{position:absolute;top:10px;right:10px;width:30px;height:30px;background:rgba(0,0,0,0.55);color:#fff;border:none;border-radius:50%;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.15s}.asset-block.has-image:hover .asset-overlay-clear,.asset-block.has-image.selected .asset-overlay-clear{opacity:1}.asset-block.drag-over{outline:2px dashed var(--sel-color)!important;outline-offset:-3px}#canvas .asset-block[data-motion=gif]::after{content:"GIF";position:absolute;top:calc(6px * var(--inv-zoom, 1));right:calc(6px * var(--inv-zoom, 1));z-index:5;font-size:calc(11px * var(--inv-zoom, 1));font-weight:var(--ui-fw-medium);letter-spacing:0.06em;color:var(--ui-text-muted);background:var(--ui-bg-input);padding:calc(2px * var(--inv-zoom, 1)) calc(7px * var(--inv-zoom, 1));border-radius:calc(4px * var(--inv-zoom, 1));pointer-events:none;opacity:0.85}.asset-block.pos-dragging{outline:1px solid var(--sel-color)!important;outline-offset:2px;cursor:default}.asset-block.pos-dragging .asset-img{cursor:grab;user-select:none}.asset-block.pos-dragging .asset-img:active{cursor:grabbing}.section-block.bg-pos-dragging,.frame-block.bg-pos-dragging{outline:1px solid var(--sel-color)!important;outline-offset:-2px;cursor:grab;user-select:none}.section-block.bg-pos-dragging:active,.frame-block.bg-pos-dragging:active{cursor:grabbing}.prop-action-btn{width:100%;height:24px;padding:0;border:1px solid var(--ui-border);border-radius:4px;font-size:var(--ui-fs-base);font-weight:var(--ui-fw-semibold);cursor:pointer;margin-top:6px;letter-spacing:0.02em;display:flex;align-items:center;justify-content:center}.prop-action-btn.primary{background:var(--ui-accent-primary);border-color:var(--ui-accent-primary);color:#fff}.prop-action-btn.primary:hover{background:var(--ui-accent-primary-hover);border-color:var(--ui-accent-primary-hover)}.prop-action-btn.secondary{background:var(--ui-bg-app);color:var(--ui-text-dim);border:1px solid var(--ui-border)}.prop-action-btn.secondary:hover{border-color:var(--ui-divider);color:var(--ui-text-sub)}.prop-action-btn.danger{background:var(--ui-danger-bg);border-color:var(--ui-danger-border);color:var(--ui-danger)}.prop-action-btn.danger:hover{background:var(--ui-danger-hover);border-color:var(--ui-danger-hover);color:#fff}.gap-block{cursor:grab}.gap-block:active{cursor:grabbing}.gap-block{position:relative;width:100%;height:50px;outline:2px solid transparent;transition:background 0.1s}.gap-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.gap-block::before{display:none}.gap-block:hover::before{display:none}.section-block:hover .section-inner>:first-child::before,.section-block.selected .section-inner>:first-child::before{display:none}.gap-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.gap-block.selected::before{display:block}.row{cursor:grab}.row:active{cursor:grabbing}.row [contenteditable=true]{cursor:text}.row [contenteditable=true]:active{cursor:text}.row.dragging,.gap-block.dragging,.frame-block.dragging{pointer-events:none;cursor:grabbing}.drop-indicator{height:5px;background:var(--ui-accent-primary);border-radius:3px;flex-shrink:0;pointer-events:none;margin:2px 0;position:relative;box-shadow:0 0 8px var(--color-selection-glow)}.drop-indicator::before{content:"";position:absolute;left:-6px;top:-5px;width:15px;height:15px;border-radius:50%;background:var(--ui-accent-primary);box-shadow:0 0 6px var(--color-selection-glow-med)}.layer-drop-indicator{height:3px;background:var(--ui-accent-primary);border-radius:2px;flex-shrink:0;pointer-events:none;margin:1px 6px;position:relative}.layer-drop-indicator::before{content:"";position:absolute;left:-4px;top:-4px;width:11px;height:11px;border-radius:50%;background:var(--ui-accent-primary)}.layer-item.layer-dragging{opacity:0.3}.section-block.section-dragging{pointer-events:none}.section-drop-indicator{height:6px;background:var(--ui-accent-primary);border-radius:3px;flex-shrink:0;pointer-events:none;position:relative;box-shadow:0 0 12px var(--color-selection-glow-hi)}.section-drop-indicator::before{content:"";position:absolute;left:-7px;top:-6px;width:18px;height:18px;border-radius:50%;background:var(--ui-accent-primary);box-shadow:0 0 8px var(--color-selection-glow)}.layer-section-drop-indicator{height:3px;background:var(--ui-accent-primary);border-radius:2px;flex-shrink:0;pointer-events:none;margin:1px 0;position:relative}.layer-section-drop-indicator::before{content:"";position:absolute;left:-4px;top:-4px;width:11px;height:11px;border-radius:50%;background:var(--ui-accent-primary)}.layer-section.layer-section-dragging{opacity:0.3}.section-label{cursor:grab}.section-label:active{cursor:grabbing}.section-label::before{content:"\283f";margin-right:5px;opacity:0.5;font-size:12px;vertical-align:middle}.icon-circle-block{display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:8px}.icon-circle-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.icon-circle-block{position:relative}.icon-circle-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w));border-radius:8px}.icon-circle-block.drag-over .icb-circle{outline:2px dashed var(--sel-color)}.icb-circle{width:80px;height:80px;aspect-ratio:1 / 1;align-self:center;border-radius:50%;background:repeating-conic-gradient(#d8d8d8 0% 25%,#f0f0f0 0% 50%) 0 0 / 72px 72px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;position:relative}.icon-circle-block.has-image .icb-circle{background-image:none}.icb-placeholder{font-size:28px;color:var(--ui-text-sub);line-height:1;user-select:none;pointer-events:none}.icb-img{width:100%;height:100%;object-fit:cover;display:block}.icb-clear-btn{position:absolute;top:4px;right:4px;width:18px;height:18px;border-radius:50%;background:rgba(0,0,0,0.55);color:#fff;border:none;cursor:pointer;font-size:9px;line-height:18px;text-align:center;display:none;padding:0}.icon-circle-block:hover .icb-clear-btn,.icon-circle-block.selected .icb-clear-btn{display:block}.icb-circle[data-border=solid]{border:3px solid var(--ui-border)}.icb-circle[data-border=dashed]{border:3px dashed var(--ui-border)}.table-block{position:relative;width:100%;padding:8px;cursor:pointer;border-radius:6px;box-sizing:border-box;outline:2px solid transparent}.table-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.table-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w));border-radius:0}.table-block .tb-table th,.table-block .tb-table td{color:var(--tbl-text-color, inherit);font-family:var(--tbl-font-family, inherit)}.table-block .tb-table td.cell-selected,.table-block .tb-table th.cell-selected{outline:2px solid var(--sel-color, #2b8aff);outline-offset:-2px;background-image:linear-gradient(var(--sel-color-fill, rgba(43,138,255,0.16)),var(--sel-color-fill, rgba(43,138,255,0.16)))}.tb-table{width:100%;border-collapse:collapse;font-size:28px;table-layout:fixed;color:#222}.tb-table thead th{font-weight:600;font-size:var(--tbl-header-size, inherit)}.table-block[data-style=default] .tb-table th,.table-block[data-style=default] .tb-table td,.table-block[data-style=first-col-bold] .tb-table th,.table-block[data-style=first-col-bold] .tb-table td,.table-block:not([data-style]) .tb-table th,.table-block:not([data-style]) .tb-table td{border:1px solid var(--tbl-line-color, #ccc);padding:10px 16px;text-align:center;vertical-align:middle}.table-block[data-style=first-col-bold] .tb-table tbody tr>td:first-child{font-weight:var(--ui-fw-bold, 700)}.table-block[data-style=colored] .tb-table{border-collapse:collapse}.table-block[data-style=colored] .tb-table th,.table-block[data-style=colored] .tb-table td{border-top:0;border-bottom:0;border-left:0;border-right:0;padding:10px 16px;vertical-align:middle}.table-block[data-style=colored][data-show-h-lines=true] .tb-table tr{border-bottom:var(--tbl-hline-w, 1px) solid var(--tbl-line-color, #ccc)!important}.table-block[data-style=colored][data-show-v-lines=true] .tb-table th,.table-block[data-style=colored][data-show-v-lines=true] .tb-table td{border-left:var(--tbl-vline-w, 1px) solid var(--tbl-line-color, #ccc)!important;border-right:var(--tbl-vline-w, 1px) solid var(--tbl-line-color, #ccc)!important}.table-block[data-style=colored][data-show-outer-x=true] .tb-table{border-left:var(--tbl-outer-w, 1px) solid var(--tbl-line-color, #ccc)!important;border-right:var(--tbl-outer-w, 1px) solid var(--tbl-line-color, #ccc)!important}.table-block[data-style=colored][data-show-outer-y=true] .tb-table{border-top:var(--tbl-outer-w, 1px) solid var(--tbl-line-color, #ccc)!important;border-bottom:var(--tbl-outer-w, 1px) solid var(--tbl-line-color, #ccc)!important}.table-block[data-style=default] .tb-table thead th,.table-block[data-style=first-col-bold] .tb-table thead th,.table-block:not([data-style]) .tb-table thead th{background:var(--tbl-header-bg, #f0f0f0);font-weight:600}.table-block[data-style=stripe] .tb-table th,.table-block[data-style=stripe] .tb-table td{border:1px solid var(--tbl-line-color, #ddd);padding:10px 16px;text-align:center;vertical-align:middle}.table-block[data-style=stripe] .tb-table thead th{background:var(--tbl-header-bg, var(--ui-border));color:var(--tbl-text-color, #fff);font-weight:600}.table-block[data-style=stripe] .tb-table tbody tr:nth-child(even) td{background:#f7f7f7}.table-block[data-style=borderless] .tb-table th,.table-block[data-style=borderless] .tb-table td{border:none;border-bottom:1px solid var(--tbl-line-color, #eee);padding:10px 16px;text-align:center;vertical-align:middle}.table-block[data-style=borderless] .tb-table thead th{background:var(--tbl-header-bg, transparent);font-weight:600;color:var(--tbl-text-color, var(--ui-text-dim))}.table-block .tb-table tr:first-child>th,.table-block .tb-table tr:first-child>td{border-top-width:var(--tbl-outer-w, 1px)}.table-block .tb-table tr:last-child>th,.table-block .tb-table tr:last-child>td{border-bottom-width:var(--tbl-outer-w, 1px)}.table-block .tb-table tr>th:first-child,.table-block .tb-table tr>td:first-child{border-left-width:var(--tbl-outer-w, 1px)}.table-block .tb-table tr>th:last-child,.table-block .tb-table tr>td:last-child{border-right-width:var(--tbl-outer-w, 1px)}.table-block[data-show-v-lines=false] .tb-table tr>th:not(:last-child),.table-block[data-show-v-lines=false] .tb-table tr>td:not(:last-child){border-right:none}.table-block[data-show-v-lines=false] .tb-table tr>th:not(:first-child),.table-block[data-show-v-lines=false] .tb-table tr>td:not(:first-child){border-left:none}.table-block[data-show-h-lines=false] .tb-table tr:not(:last-child)>th,.table-block[data-show-h-lines=false] .tb-table tr:not(:last-child)>td{border-bottom:none}.table-block[data-show-h-lines=false] .tb-table tr:not(:first-child)>th,.table-block[data-show-h-lines=false] .tb-table tr:not(:first-child)>td{border-top:none}.table-block[data-show-outer-x=false] .tb-table tr>th:first-child,.table-block[data-show-outer-x=false] .tb-table tr>td:first-child{border-left:none}.table-block[data-show-outer-x=false] .tb-table tr>th:last-child,.table-block[data-show-outer-x=false] .tb-table tr>td:last-child{border-right:none}.table-block[data-show-outer-y=false] .tb-table tr:first-child>th,.table-block[data-show-outer-y=false] .tb-table tr:first-child>td{border-top:none}.table-block[data-show-outer-y=false] .tb-table tr:last-child>th,.table-block[data-show-outer-y=false] .tb-table tr:last-child>td{border-bottom:none}.table-block[data-show-outer-y=false] .tb-table tr:last-child{border-bottom:none!important}.table-block[data-show-outer-y=false] .tb-table tr:first-child{border-top:none!important}.tb-table td[contenteditable=true],.tb-table th[contenteditable=true]{outline:1px solid var(--sel-color);outline-offset:2px;background:var(--sel-color-fill)!important;cursor:text}.divider-block{position:relative;width:100%;cursor:pointer;box-sizing:border-box;padding:12px 0;outline:2px solid transparent}.divider-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.divider-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.bridge-block{position:relative;width:100%;cursor:pointer;box-sizing:border-box;outline:2px solid transparent}.bridge-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.bridge-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.duo-block,.infocard-block,.innercard-block{position:relative;width:100%;cursor:pointer;box-sizing:border-box;outline:2px solid transparent}.duo-block:hover::after,.infocard-block:hover::after,.innercard-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.duo-block.selected,.infocard-block.selected,.innercard-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.row:has(.text-block.selected),.frame-block[data-text-frame=true]:has(.text-block.selected){outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.row:has(.text-block.selected)>.text-block.selected,.frame-block[data-text-frame=true]>.text-block.selected{outline:var(--sel-outline-w) solid transparent}.row:has(.speech-bubble-block.selected),.frame-block[data-text-frame=true]:has(.speech-bubble-block.selected){outline:none!important;position:relative}.row:has(.speech-bubble-block.selected)::after,.frame-block[data-text-frame=true]:has(.speech-bubble-block.selected)::after{content:"";position:absolute;inset:0;border:var(--sel-outline-w) solid var(--sel-color);background:transparent;box-sizing:border-box;pointer-events:none;z-index:10}.label-group-block:hover:not(.selected)::after,.icon-circle-block:hover:not(.selected)::after,.table-block:hover:not(.selected)::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}#canvas [data-is-placeholder=true]{opacity:0.45}#canvas [data-is-placeholder=true][contenteditable=true]{opacity:1}.text-block.selected,.asset-block.selected,.gap-block.selected,.label-group-block.selected,.icon-circle-block.selected,.table-block.selected,.graph-block.selected,.divider-block.selected,.bridge-block.selected,.duo-block.selected,.infocard-block.selected,.innercard-block.selected,.mockup-block.selected{z-index:2}.row.row-active,.col.col-active{z-index:1}.dvd-line{width:100%;border:none;border-top:1px solid #ccc;margin:0}.joker-block{position:relative;width:fit-content;user-select:none;cursor:default}.joker-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w));z-index:2}.joker-block-inner{overflow:hidden}.joker-block-svg svg{width:100%;height:100%;display:block}.shape-block{position:absolute;width:100%;height:100%;user-select:none;cursor:default}.shape-block:hover:not(.selected)::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.shape-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w));z-index:2}.shape-block .shape-svg{display:block;width:100%;height:100%;position:relative;z-index:1}.frame-block:has(.shape-block.selected){overflow:visible}.frame-block:has(.shape-block[data-shape-rotation]){overflow:visible}.frame-block:has(.speech-bubble-block){overflow:visible}.frame-block[data-text-frame=true]:has(.text-block.selected){overflow:visible}.shape-handle{position:absolute;width:calc(7px * var(--inv-zoom, 1));height:calc(7px * var(--inv-zoom, 1));background:#fff;border:var(--ui-handle-border-w-round, 1.5px) solid var(--sel-color);border-radius:1px;z-index:10;display:none;box-sizing:border-box}.shape-block.selected .shape-handle{display:block}.shape-handle.nw{top:calc(-3.5px * var(--inv-zoom, 1));left:calc(-3.5px * var(--inv-zoom, 1));cursor:nwse-resize}.shape-handle.ne{top:calc(-3.5px * var(--inv-zoom, 1));right:calc(-3.5px * var(--inv-zoom, 1));cursor:nesw-resize}.shape-handle.sw{bottom:calc(-3.5px * var(--inv-zoom, 1));left:calc(-3.5px * var(--inv-zoom, 1));cursor:nesw-resize}.shape-handle.se{bottom:calc(-3.5px * var(--inv-zoom, 1));right:calc(-3.5px * var(--inv-zoom, 1));cursor:nwse-resize}.frame-block:not(.selected) .text-block:hover,.frame-block:not(.selected) .asset-block:hover,.frame-block:not(.selected) .gap-block:hover,.frame-block:not(.selected) .icon-circle-block:hover,.frame-block:not(.selected) .table-block:hover,.frame-block:not(.selected) .label-group-block:hover,.frame-block:not(.selected) .graph-block:hover,.frame-block:not(.selected) .divider-block:hover,.frame-block:not(.selected) .bridge-block:hover,.frame-block:not(.selected) .duo-block:hover,.frame-block:not(.selected) .infocard-block:hover,.frame-block:not(.selected) .innercard-block:hover,.frame-block:not(.selected) .icon-text-block:hover,.frame-block:not(.selected) .shape-block:hover{outline:none!important}.frame-block:not(.selected) .gap-block:hover::after,.frame-block:not(.selected) .icon-circle-block:hover::after,.frame-block:not(.selected) .table-block:hover::after,.frame-block:not(.selected) .graph-block:hover::after,.frame-block:not(.selected) .divider-block:hover::after,.frame-block:not(.selected) .bridge-block:hover::after,.frame-block:not(.selected) .duo-block:hover::after,.frame-block:not(.selected) .infocard-block:hover::after,.frame-block:not(.selected) .innercard-block:hover::after,.frame-block:not(.selected) .label-group-block:hover::after,.frame-block:not(.selected) .shape-block:hover::after{display:none!important}.frame-block[data-text-frame=true]:not(.selected) .speech-bubble-block:hover::after{display:none!important}.frame-block:not(.selected) .row:has(.text-block:hover),.frame-block:not(.selected) .frame-block[data-text-frame=true]:has(.text-block:hover){outline:none!important}.smart-guide{position:absolute;pointer-events:none;z-index:9999}.smart-guide.vertical{width:1px;background:rgba(233,60,60,0.85)}.smart-guide.horizontal{height:1px;background:rgba(233,60,60,0.85)}.smart-guide.spacing.vertical{width:1px;background:rgba(233,60,180,0.75);border-left:1px dashed rgba(233,60,180,0.85);background:none}.smart-guide.spacing.horizontal{height:1px;background:rgba(233,60,180,0.75);border-top:1px dashed rgba(233,60,180,0.85);background:none}.smart-guide-label{position:absolute;font-size:9px;font-family:-apple-system,BlinkMacSystemFont,sans-serif;color:rgb(233,60,180);background:rgba(255,255,255,0.88);padding:1px 3px;border-radius:2px;pointer-events:none;z-index:9999;white-space:nowrap;line-height:1.4}.icon-block{display:flex;align-items:center;justify-content:center;cursor:pointer;margin:0 auto;flex-shrink:0;position:relative}.icon-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.icon-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.icon-block svg{display:block}.icon-block img{display:block}.canvas-block{display:block;position:relative;margin:0 auto;cursor:pointer;box-sizing:border-box;user-select:none}.canvas-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:var(--ui-sel-outline-offset-out, calc(1px * var(--inv-zoom, 1)))}.canvas-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.banner02-block{display:block;position:relative;margin:0 auto;cursor:pointer;box-sizing:border-box;user-select:none}.banner02-block .bn2-line-empty{min-height:14px;outline:1px dashed var(--ui-border-mid);outline-offset:1px}.banner02-block .bn2-line-selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:2px}.banner02-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:var(--ui-sel-outline-offset-out, calc(1px * var(--inv-zoom, 1)))}.banner02-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.comparison-block{display:block;position:relative;margin:0 auto;cursor:pointer;box-sizing:border-box;user-select:none;overflow:visible}.comparison-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.comparison-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.comparison-block .cmp-hd[contenteditable=true],.comparison-block .cmp-row[contenteditable=true]{outline:1px solid var(--sel-color);outline-offset:2px;border-radius:4px;cursor:text}.comparison-block .cmp-row.cmp-img.cmp-img-empty{background-color:#f2f3f5;background-image:linear-gradient(45deg,#d8dadf 25%,transparent 25%),linear-gradient(-45deg,#d8dadf 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d8dadf 75%),linear-gradient(-45deg,transparent 75%,#d8dadf 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0}.canvas-block .cvb-inner{position:absolute;inset:0;overflow:hidden;pointer-events:none}.canvas-block .cvb-card-title,.canvas-block .cvb-card-desc{pointer-events:auto}.vector-block{display:inline-block;cursor:pointer;position:relative;box-sizing:border-box;user-select:none;margin:0 auto}.vector-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.vector-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.vector-block .vb-inner{width:100%;height:100%;display:flex;align-items:center;justify-content:center;pointer-events:none}.vector-block svg{width:100%;height:100%}.cvb-layer-row{display:flex;align-items:center;gap:6px;padding:4px 0;border-bottom:1px solid var(--ui-border, #e8e8e8);font-size:11px}.cvb-layer-row:last-child{border-bottom:none}.cvb-layer-icon{flex-shrink:0;width:14px;text-align:center;font-size:11px;color:var(--ui-text-muted, #999)}.cvb-layer-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ui-text, #333)}.cvb-layer-tag{flex-shrink:0;font-size:10px;color:var(--ui-text-muted, #999);background:var(--ui-bg-card, #f3f3f3);padding:1px 5px;border-radius:3px}.cvb-layer-swatch{flex-shrink:0;width:16px!important;height:16px!important;border-radius:3px;cursor:pointer}.grid-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin:2px 0 4px}.grid-picker-cell{aspect-ratio:1;border:1px solid var(--ui-bg-input, #333);border-radius:2px;background:var(--ui-bg-2, #1c1c1c);cursor:pointer;transition:background .08s,border-color .08s}.grid-picker-cell.active{background:rgba(45,111,232,0.25);border-color:rgba(45,111,232,0.5)}.grid-picker-label{text-align:center;font-size:10px;color:var(--ui-text-dim, #666);height:14px}.cvb-card-input{background:#1e1e1e;color:#ddd;border:1px solid #333;border-radius:4px;padding:4px 6px;font-size:11px;box-sizing:border-box;width:100%}.cvb-card-input::placeholder{color:var(--ui-text-dim)}textarea.cvb-card-input{resize:none;font-family:Pretendard,sans-serif;margin-bottom:4px}.cvb-card-border-width{width:40px;background:#1e1e1e;color:#ddd;border:1px solid #333;border-radius:4px;padding:2px 4px;font-size:11px;text-align:center;box-sizing:border-box}.cvb-card-meta{font-size:10px;color:var(--ui-text-dim)}.cvb-card-meta-label{font-size:10px;color:var(--ui-text-dim);font-weight:600;flex:1}.cvb-card-item{padding:8px 0;border-bottom:1px solid #2a2a2a}.cvb-card-btn-sm{width:auto;height:auto;font-size:10px;padding:2px 6px}.cvb-card-btn-sm-del{width:auto;height:auto;font-size:10px;padding:2px 4px;color:var(--ui-danger)}.mockup-block{display:block;position:relative;margin:0 auto;cursor:pointer;box-sizing:border-box;user-select:none}.mockup-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.mockup-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.mkp-screen{position:absolute;overflow:hidden}.mkp-frame{position:absolute;inset:0;z-index:2;pointer-events:none;line-height:0}.step-block{display:block;width:100%;box-sizing:border-box;cursor:pointer;user-select:none;padding:8px 0;position:relative}.step-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.step-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.chat-block{position:relative;display:block;width:100%;box-sizing:border-box;cursor:pointer;user-select:none}.chat-block:hover::after{content:"";position:absolute;inset:0;background:var(--sel-color-fill);pointer-events:none;z-index:0}.chat-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.laurel-block{position:relative;display:block;width:100%;box-sizing:border-box;cursor:pointer;user-select:none;padding:8px 0}.laurel-block .laurel-leaf{display:block}.laurel-block .laurel-text{display:inline-block}.laurel-block .laurel-cell{min-width:0;overflow:hidden;display:flex;align-items:center;justify-content:center}.laurel-block .laurel-inner{min-width:0;max-width:100%}.laurel-block .laurel-text-stack{min-width:0;flex-shrink:1}.laurel-block .laurel-text-line{max-width:100%;overflow:hidden;text-overflow:ellipsis}.laurel-block:hover{outline:1px dashed var(--sel-color);outline-offset:-1px}.laurel-block.selected{outline:var(--sel-outline-w) solid var(--sel-color);outline-offset:calc(-1 * var(--sel-outline-w))}.chb-msg{display:flex;width:100%;align-items:flex-start;gap:8px}.chb-msg.chb-left{justify-content:flex-start}.chb-msg.chb-right{justify-content:flex-end}.chb-profile{display:flex;flex-direction:column;align-items:center;gap:4px}.chb-profile-img{width:100%;aspect-ratio:1 / 1;border-radius:50%;object-fit:cover;background:#b8b8b8;display:block}.chb-profile-placeholder{background:transparent;display:flex;align-items:center;justify-content:center;user-select:none;overflow:hidden}.chb-profile-placeholder svg{width:100%;height:100%;display:block}.chb-wrap .chb-profile-name{font-weight:500;margin-bottom:4px;word-break:keep-all;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.chb-wrap{position:relative;padding-bottom:16px;max-width:70%}.chb-bubble{display:block;padding:10px 14px;word-break:break-word;white-space:pre-wrap;font-family:"Pretendard",sans-serif;line-height:1.5}.chb-bubble[contenteditable=true]{user-select:text;-webkit-user-select:text;cursor:text;outline:1px dashed var(--sel-color);outline-offset:1px}.chb-tail{position:absolute;bottom:10px;width:19px;height:16px}.chb-msg.chb-left .chb-tail{left:2px}.chb-msg.chb-right .chb-tail{right:2px}.stb-item{display:flex;align-items:stretch}.stb-left{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.stb-badge{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0;line-height:1}.stb-line{flex:1;width:2px;min-height:16px}.stb-content{flex:1;min-width:0}.stb-title{font-weight:600;line-height:1.4;word-break:keep-all}.stb-desc{margin-top:4px;line-height:1.6;opacity:0.65;word-break:keep-all}.speech-bubble-block{--bubble-bg: #e5e5ea;position:relative;display:block;width:100%;padding-bottom:16px;overflow:visible}.speech-bubble-block[data-tail=right] .tb-bubble{margin-left:auto}.speech-bubble-block[data-tail=center] .tb-bubble{margin-left:auto;margin-right:auto}.speech-bubble-block[data-tail=center] .tb-bubble-tail{left:50%;transform:translateX(-50%)}.tb-sender-name{font-size:16px;color:#8e8d94;margin-bottom:4px;font-family:"Pretendard",sans-serif;line-height:1.3}.speech-bubble-block[data-tail=left] .tb-sender-name{padding-left:22px}.speech-bubble-block[data-tail=right] .tb-sender-name{padding-right:22px;text-align:right}.tb-bubble{background:var(--bubble-bg);color:#1c1c1e;border-radius:22px;padding:14px 22px;font-size:28px;line-height:1.5;font-family:"Pretendard",sans-serif;position:relative;display:block;width:fit-content;max-width:80%;min-width:60px;word-break:break-word}.tb-bubble-tail{position:absolute;bottom:0;width:19px;height:16px;fill:var(--bubble-bg, #e5e5ea)}.speech-bubble-block[data-tail=left] .tb-bubble-tail{left:2px;bottom:10px;transform:scaleX(-1)}.speech-bubble-block[data-tail=right] .tb-bubble-tail{right:2px;bottom:10px}.speech-bubble-block .tb-bubble[data-is-placeholder=true]{opacity:1!important;color:rgba(28,28,30,0.4)}.speech-bubble-block .tb-bubble[data-is-placeholder=true][contenteditable=true]{color:#1c1c1e}.liner-block{position:relative;display:block;width:100%;overflow:visible}.liner-block .lnr-svg{display:block;width:100%;height:auto;overflow:visible;pointer-events:none}.liner-block .tb-liner{position:absolute;top:0;left:0;width:100%;text-align:center;font-size:28px;line-height:1.2;color:transparent;opacity:0;pointer-events:none;white-space:nowrap;z-index:1}.liner-block.editing .tb-liner{position:relative;opacity:1;color:#111;pointer-events:auto;outline:none}.liner-block.editing .lnr-svg{opacity:0.25}.liner-block .tb-liner[data-is-placeholder=true]{color:transparent}.liner-block.editing .tb-liner[data-is-placeholder=true]{color:rgba(17,17,17,0.4)}.liner-block.selected{outline:none!important}.sp2c-replace-target{outline:2px solid var(--ui-accent-primary)!important;outline-offset:-3px;box-shadow:0 0 12px var(--color-selection-glow)}.sp2c-badge{position:absolute;top:8px;left:50%;transform:translateX(-50%);background:var(--ui-accent-primary);color:#fff;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;pointer-events:none;z-index:50;box-shadow:0 2px 8px rgba(0,0,0,0.3)}.sp2c-badge-append{top:auto;bottom:12px}.sp2c-insert-indicator{height:5px;background:var(--ui-accent-primary);border-radius:3px;flex-shrink:0;pointer-events:none;margin:2px 0;position:relative;box-shadow:0 0 8px var(--color-selection-glow)}.sp2c-insert-indicator::before{content:"";position:absolute;left:-6px;top:-5px;width:15px;height:15px;border-radius:50%;background:var(--ui-accent-primary)}.sp2c-section-target{outline:2px dashed var(--ui-accent-primary)!important;outline-offset:-4px}body.pen-mode,body.pen-mode #canvas-wrap,body.pen-mode #canvas-scaler,body.pen-mode .section-block,body.pen-mode .section-block *{cursor:crosshair!important}body.pen-mode .annot-label[contenteditable=true]{cursor:text!important}body.hlb-mode,body.hlb-mode #canvas-wrap,body.hlb-mode #canvas-scaler,body.hlb-mode .section-block,body.hlb-mode .section-block *{cursor:crosshair!important}body.hlb-mode .hlb-preview{cursor:crosshair!important;pointer-events:none}#fp-pen-btn.active{background:var(--ui-accent-primary);border-color:var(--ui-accent-primary);color:#fff}.annotation-block{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:50}.annot-svg{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible;pointer-events:none}.annot-label{position:absolute;transform:translate(0,-50%);padding:4px 8px;background:#fff;border:1px solid #1a1a1a;border-radius:4px;color:#1a1a1a;font-size:20px;font-family:"Pretendard",sans-serif;line-height:1.3;white-space:nowrap;pointer-events:auto;cursor:text;user-select:none}.annot-label[contenteditable=true]{user-select:text;outline:1px solid var(--ui-accent-primary);outline-offset:1px}body:not(.pen-mode) .annot-label{cursor:move}body:not(.pen-mode) .annot-label:hover{outline:1px dashed var(--ui-accent-primary);outline-offset:1px}body:not(.pen-mode) .annot-label[contenteditable=true]{cursor:text}.annotation-block.selected .annot-label{outline:1.5px solid var(--ui-accent-primary);outline-offset:1px;box-shadow:0 0 0 3px var(--ui-accent-fill, rgba(45, 111, 232, 0.15))}.annotation-block.selected .annot-line{stroke-width:2.5}.annot-handle{cursor:move;pointer-events:auto;transition:r 0.1s ease}.annot-handle:hover{r:6}.annot-anchor-preview{position:absolute;width:8px;height:8px;border-radius:50%;background:#e74c3c;transform:translate(-50%,-50%);pointer-events:none;z-index:51}.badge-hologram-row{display:inline-flex;align-items:center;gap:40px;padding:24px}.badge-hologram-square{position:relative;width:200px;height:200px;border-radius:28px;padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:repeating-radial-gradient(circle at 50% 50%,transparent 0px,transparent 1.2px,rgba(255,255,255,0.22) 1.2px,rgba(255,255,255,0.22) 1.6px),repeating-radial-gradient(circle at 50% 50%,transparent 0px,transparent 1.6px,rgba(0,0,0,0.18) 1.6px,rgba(0,0,0,0.18) 2.0px),repeating-radial-gradient(circle at 50% 50%,transparent 0px,transparent 7px,rgba(255,255,255,0.06) 7px,rgba(255,255,255,0.06) 8px),conic-gradient(from 210deg at 50% 50%,#f0e8dc 0deg,#ffe8f0 40deg,#ccddc0 90deg,#ebe0f5 140deg,#b8acc8 200deg,#ffffff 250deg,#c8b8e0 310deg,#f0e8dc 360deg);box-shadow:0 14px 32px rgba(0,0,0,0.55),0 4px 10px rgba(0,0,0,0.35),0 1px 3px rgba(0,0,0,0.25),inset 0 3px 0 rgba(255,255,255,0.95),inset 3px 0 0 rgba(255,255,255,0.55),inset 0 -3px 0 rgba(0,0,0,0.45),inset -2px 0 0 rgba(0,0,0,0.3),inset 0 0 0 1px rgba(255,255,255,0.25);overflow:hidden;isolation:isolate;flex-shrink:0}.badge-hologram-square::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 90% 55% at 30% 18%,rgba(255,255,255,0.55),transparent 55%),radial-gradient(ellipse 70% 45% at 75% 82%,rgba(255,255,255,0.22),transparent 60%),linear-gradient(135deg,transparent 45%,rgba(255,255,255,0.1) 50%,transparent 55%);mix-blend-mode:overlay;pointer-events:none;z-index:1}.badge-hologram-square::after{content:"";position:absolute;top:-10%;left:-150%;width:100%;height:120%;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,0.5) 42%,rgba(255,255,255,1) 50%,rgba(255,255,255,0.5) 58%,transparent 75%);transform:skewX(-22deg);pointer-events:none;z-index:2}.badge-hologram-square .badge-logo{position:relative;z-index:3;font-family:"Pretendard",sans-serif;font-weight:900;font-size:30px;letter-spacing:0.06em;line-height:1;text-align:center;color:#000000;background:linear-gradient(180deg,#000000 0%,#000000 50%,#0a0a0a 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(255,255,255,0.18);outline:none}.badge-hologram-square .badge-logo-sub{color:rgba(20,20,20,0.85)!important}.badge-hologram-square .badge-logo-sub{position:relative;z-index:1;margin-top:8px;font-family:"Pretendard",sans-serif;font-weight:500;font-size:12px;color:rgba(40,40,40,0.75);text-align:center;outline:none}.badge-hologram-row .badge-content{display:flex;flex-direction:column;gap:14px}.badge-hologram-row .badge-title{font-family:"Pretendard",sans-serif;font-weight:800;font-size:30px;letter-spacing:-0.01em;color:#ffffff;line-height:1.2;outline:none}.badge-hologram-row .badge-desc{font-family:"Pretendard",sans-serif;font-weight:400;font-size:17px;color:#b0b0b0;line-height:1.6;outline:none;max-width:560px}.badge-hologram-row [contenteditable=true]:focus{box-shadow:0 0 0 1px rgba(120,170,255,0.5);border-radius:4px}.badge-hologram-row.shape-square .badge-hologram-square{border-radius:28px}.badge-hologram-row.shape-round .badge-hologram-square{border-radius:16px}.badge-hologram-row.shape-circle .badge-hologram-square{border-radius:50%}.badge-hologram-row.shape-zigzag .badge-hologram-square{border-radius:0;clip-path:polygon(0% 4%,5% 0%,10% 4%,15% 0%,20% 4%,25% 0%,30% 4%,35% 0%,40% 4%,45% 0%,50% 4%,55% 0%,60% 4%,65% 0%,70% 4%,75% 0%,80% 4%,85% 0%,90% 4%,95% 0%,100% 4%,96% 5%,100% 10%,96% 15%,100% 20%,96% 25%,100% 30%,96% 35%,100% 40%,96% 45%,100% 50%,96% 55%,100% 60%,96% 65%,100% 70%,96% 75%,100% 80%,96% 85%,100% 90%,96% 95%,100% 96%,95% 100%,90% 96%,85% 100%,80% 96%,75% 100%,70% 96%,65% 100%,60% 96%,55% 100%,50% 96%,45% 100%,40% 96%,35% 100%,30% 96%,25% 100%,20% 96%,15% 100%,10% 96%,5% 100%,0% 96%,4% 95%,0% 90%,4% 85%,0% 80%,4% 75%,0% 70%,4% 65%,0% 60%,4% 55%,0% 50%,4% 45%,0% 40%,4% 35%,0% 30%,4% 25%,0% 20%,4% 15%,0% 10%,4% 5%)}.badge-hologram-row.shape-zigzag .badge-hologram-square{filter:drop-shadow(0 8px 18px rgba(0,0,0,0.4))}.badge-hologram-row.shape-zigzag .badge-trace-svg{display:none}.badge-hologram-row.color-gold .badge-hologram-square{background:repeating-radial-gradient(circle at 50% 50%,transparent 0 1.4px,rgba(255,255,255,0.1) 1.4px 1.8px),repeating-radial-gradient(circle at 50% 50%,transparent 0 1.8px,rgba(80,40,0,0.08) 1.8px 2.2px),conic-gradient(from 210deg at 50% 50%,#d4a956 0deg,#fff3c2 40deg,#b8821a 90deg,#f0d088 140deg,#a87420 200deg,#ffefa0 250deg,#b88830 310deg,#d4a956 360deg)}.badge-hologram-row.color-rose .badge-hologram-square{background:repeating-radial-gradient(circle at 50% 50%,transparent 0 1.4px,rgba(255,255,255,0.1) 1.4px 1.8px),repeating-radial-gradient(circle at 50% 50%,transparent 0 1.8px,rgba(80,20,30,0.07) 1.8px 2.2px),conic-gradient(from 210deg at 50% 50%,#e0a8a0 0deg,#ffe0d8 40deg,#c88478 90deg,#f0c8c0 140deg,#b07060 200deg,#ffe8e0 250deg,#c08878 310deg,#e0a8a0 360deg)}.badge-hologram-row.color-pearl .badge-hologram-square{background:repeating-radial-gradient(circle at 50% 50%,transparent 0 1.4px,rgba(255,255,255,0.18) 1.4px 1.8px),repeating-radial-gradient(circle at 50% 50%,transparent 0 1.8px,rgba(120,60,150,0.1) 1.8px 2.2px),conic-gradient(from 210deg at 50% 50%,#f0d8f5 0deg,#fff0fa 40deg,#c8b0e5 90deg,#fdd8f0 140deg,#a890c8 200deg,#ffffff 250deg,#d8a8e5 310deg,#f0d8f5 360deg)}.badge-hologram-row.color-gold .badge-logo{background:linear-gradient(180deg,#3a2400 0%,#5a3a10 45%,#806020 50%,#3a2400 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.badge-hologram-row.color-rose .badge-logo{background:linear-gradient(180deg,#4a1a18 0%,#6a2828 45%,#88403a 50%,#4a1a18 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.badge-hologram-row.anim-sweep .badge-hologram-square::after{animation:badge-shine 1.1s linear infinite}.badge-hologram-row.anim-rotate .badge-hologram-square{animation:badge-spin 6s linear infinite}.badge-hologram-row.anim-pulse .badge-hologram-square{animation:badge-pulse 1.6s ease-in-out infinite}.badge-trace-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:5;overflow:visible}.badge-trace-svg rect{fill:none;vector-effect:non-scaling-stroke}.badge-trace-svg rect.deco-thick{stroke:rgba(0,0,0,0.5);stroke-width:1.8}.badge-trace-svg rect.deco-thin{stroke:rgba(0,0,0,0.35);stroke-width:0.7}.badge-trace-svg rect.trace-path{stroke:rgba(255,255,255,0);stroke-width:2.4;filter:drop-shadow(0 0 3px rgba(255,255,255,1)) drop-shadow(0 0 8px rgba(255,255,255,0.85)) drop-shadow(0 0 18px rgba(200,220,255,0.7)) drop-shadow(0 0 28px rgba(180,210,255,0.45))}.badge-hologram-row.anim-trace .badge-trace-svg rect.trace-path{stroke:rgba(255,255,255,1);stroke-linecap:round;stroke-dasharray:18 82;animation:badge-trace-stroke 0.85s linear infinite}.badge-hologram-row.anim-trace .badge-hologram-square{overflow:visible}@keyframes badge-shine{0%{left:-150%}100%{left:150%}}@keyframes badge-spin{from{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}@keyframes badge-pulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.12)}}.badge-hologram-row.no-deco-thick .badge-trace-svg rect.deco-thick{display:none}.badge-hologram-row.no-deco-thin .badge-trace-svg rect.deco-thin{display:none}@keyframes badge-trace-stroke{from{stroke-dashoffset:0}to{stroke-dashoffset:-100}}.section-inner.badge-align-left{justify-content:flex-start!important}.section-inner.badge-align-center{justify-content:center!important}.section-inner.badge-align-right{justify-content:flex-end!important}.text-effect{position:relative;--tfx-color: #ff2d6e;--tfx-intensity: 0.7;--tfx-grain: 0.4}.text-effect.tfx-neon{color:var(--tfx-color)!important;text-shadow:0 0 calc(2px * var(--tfx-intensity)) #fff,0 0 calc(6px * var(--tfx-intensity)) var(--tfx-glow-color, var(--tfx-color)),0 0 calc(14px * var(--tfx-intensity)) var(--tfx-glow-color, var(--tfx-color)),0 0 calc(28px * var(--tfx-intensity)) var(--tfx-glow-color, var(--tfx-color)),calc(1px * var(--tfx-intensity)) 0 calc(1px * var(--tfx-intensity)) rgba(0,255,255,0.6),calc(-1px * var(--tfx-intensity)) 0 calc(1px * var(--tfx-intensity)) rgba(255,0,128,0.6)}.text-effect.tfx-metallic{background:linear-gradient(180deg,var(--tfx-color) 0%,#ffffff 35%,var(--tfx-color) 50%,#2a2a2a 65%,var(--tfx-color) 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;text-shadow:0 calc(1px * var(--tfx-intensity)) 0 rgba(255,255,255,0.4),0 calc(2px * var(--tfx-intensity)) calc(4px * var(--tfx-intensity)) rgba(0,0,0,0.6);filter:drop-shadow(0 calc(2px * var(--tfx-intensity)) calc(3px * var(--tfx-intensity)) rgba(0,0,0,0.5))}.text-effect.tfx-grunge{background-image:var(--tfx-texture, url(../assets/textures/grunge-dots.png))!important;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;color:transparent!important;font-weight:900!important;letter-spacing:0.01em;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.35)) drop-shadow(0 6px 14px rgba(0,0,0,0.25)) drop-shadow(0 0 18px rgba(0,0,0,0.18))}.text-effect.tfx-grunge.tfx-tex-dots{--tfx-texture: url(../assets/textures/grunge-dots.png)}.text-effect.tfx-grunge.tfx-tex-scratches{--tfx-texture: url(../assets/textures/grunge-scratches.png)}.text-effect.tfx-grunge.tfx-tex-paint{--tfx-texture: url(../assets/textures/grunge-paint.png)}.text-effect.tfx-grunge.tfx-tex-001{--tfx-texture: url(../assets/textures/texture-001.png)}.text-effect.tfx-grunge.tfx-tex-001-expand{--tfx-texture: url(../assets/textures/texture-001-expand.png)}.text-effect.tfx-grunge.tfx-tex-002{--tfx-texture: url(../assets/textures/texture-002.png)}.text-effect.tfx-grunge.tfx-tex-pamyo{--tfx-texture: url(../assets/textures/texture-003-pamyo.png)}.text-effect.tfx-grunge.tfx-tex-004{--tfx-texture: url(../assets/textures/texture-004.png)}.text-effect.tfx-grunge.tfx-tex-005{--tfx-texture: url(../assets/textures/texture-005.png)}.text-effect.tfx-grunge.tfx-tex-black-inv{--tfx-texture: url(../assets/textures/texture-black-001-inv.png)}.text-effect.tfx-vintage{background:linear-gradient(180deg,#d4a574 0%,var(--tfx-color) 50%,#5c3a1e 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;filter:sepia(calc(0.4 * var(--tfx-intensity))) contrast(calc(1 + 0.2 * var(--tfx-intensity)));position:relative}.text-effect.tfx-vintage::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(95deg,transparent 0,transparent 3px,rgba(0,0,0,calc(0.15 * var(--tfx-grain))) 3px,rgba(0,0,0,calc(0.15 * var(--tfx-grain))) 4px),repeating-linear-gradient(85deg,transparent 0,transparent 7px,rgba(255,255,255,calc(0.08 * var(--tfx-grain))) 7px,rgba(255,255,255,calc(0.08 * var(--tfx-grain))) 8px);mix-blend-mode:overlay}.text-effect.tfx-cinematic{background:linear-gradient(180deg,#ffffff 0%,var(--tfx-color) 60%,#1a1a1a 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;text-shadow:0 calc(2px * var(--tfx-intensity)) calc(8px * var(--tfx-intensity)) rgba(0,0,0,0.5);position:relative}.text-effect.tfx-cinematic::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(ellipse at 50% 50%,transparent 60%,rgba(0,0,0,calc(0.4 * var(--tfx-grain))) 100%),repeating-radial-gradient(circle at 33% 47%,rgba(255,255,255,calc(0.05 * var(--tfx-grain))) 0px,transparent 1px,transparent 3px);mix-blend-mode:overlay}.sticker-block[data-shape=highlight],.sticker-block[data-shape=highlightB]{mix-blend-mode:multiply}.gradient-block{box-sizing:border-box}.gradient-block.selected{outline:var(--sel-outline-w) solid var(--ui-sel-overlay, #9966ff);outline-offset:calc(-1 * var(--sel-outline-w));isolation:isolate}.sticker-block[data-shape=text] .sticker-text[contenteditable=true]{user-select:text!important;-webkit-user-select:text!important;cursor:text!important;outline:var(--sel-outline-w) dashed var(--ui-sel-overlay, #9966ff);outline-offset:var(--sel-outline-w)}.sticker-block,.mockup-block{clip-path:var(--sec-clip, none)}.sticker-block.selected,.mockup-block.selected{clip-path:none}.section-block[data-overflow-visible=true] .sticker-block,.section-block[data-overflow-visible=true] .mockup-block{clip-path:none}.sticker-block.selected{outline:var(--sel-outline-w) solid var(--ui-sel-overlay, #9966ff);outline-offset:calc(-1 * var(--sel-outline-w));isolation:isolate}.sticker-block.selected[data-shape=highlight]::after{content:"";position:absolute;inset:0;pointer-events:none;outline:var(--sel-outline-w) solid var(--ui-sel-overlay, #9966ff);outline-offset:calc(-1 * var(--sel-outline-w));mix-blend-mode:normal;z-index:99}.sticker-block.selected[data-shape=highlight]{outline:none}.sticker-block.selected[data-shape=highlightB]{outline:none}.hlb-handle{position:absolute;width:12px;height:12px;margin-left:-6px;margin-top:-6px;background:#ffffff;border:1.5px solid var(--ui-sel-overlay, #9966ff);border-radius:50%;cursor:pointer;pointer-events:auto;z-index:100;box-shadow:0 1px 3px rgba(0,0,0,0.3)}.hlb-handle:hover{background:#f0e8ff}.sticker-corner-handle{position:absolute;width:calc(7px * var(--inv-zoom, 1));height:calc(7px * var(--inv-zoom, 1));background:#fff;border:1px solid var(--ui-sel-overlay, #9966ff);border-radius:1px;pointer-events:auto;z-index:100;box-sizing:border-box;mix-blend-mode:normal;isolation:isolate}.sticker-corner-handle[data-corner=tl]{top:calc(-3.5px * var(--inv-zoom, 1));left:calc(-3.5px * var(--inv-zoom, 1));cursor:nwse-resize}.sticker-corner-handle[data-corner=tr]{top:calc(-3.5px * var(--inv-zoom, 1));right:calc(-3.5px * var(--inv-zoom, 1));cursor:nesw-resize}.sticker-corner-handle[data-corner=bl]{bottom:calc(-3.5px * var(--inv-zoom, 1));left:calc(-3.5px * var(--inv-zoom, 1));cursor:nesw-resize}.sticker-corner-handle[data-corner=br]{bottom:calc(-3.5px * var(--inv-zoom, 1));right:calc(-3.5px * var(--inv-zoom, 1));cursor:nwse-resize}.sticker-corner-handle:hover{background:#f0e8ff}.gradient-corner-handle{position:absolute;width:calc(7px * var(--inv-zoom, 1));height:calc(7px * var(--inv-zoom, 1));background:#fff;border:1px solid var(--ui-sel-overlay, #9966ff);border-radius:1px;pointer-events:auto;z-index:100;box-sizing:border-box;mix-blend-mode:normal;isolation:isolate}.gradient-corner-handle[data-corner=tl]{top:calc(-3.5px * var(--inv-zoom, 1));left:calc(-3.5px * var(--inv-zoom, 1));cursor:nwse-resize}.gradient-corner-handle[data-corner=tr]{top:calc(-3.5px * var(--inv-zoom, 1));right:calc(-3.5px * var(--inv-zoom, 1));cursor:nesw-resize}.gradient-corner-handle[data-corner=bl]{bottom:calc(-3.5px * var(--inv-zoom, 1));left:calc(-3.5px * var(--inv-zoom, 1));cursor:nesw-resize}.gradient-corner-handle[data-corner=br]{bottom:calc(-3.5px * var(--inv-zoom, 1));right:calc(-3.5px * var(--inv-zoom, 1));cursor:nwse-resize}.gradient-corner-handle:hover{background:#f0e8ff}.sticker-hlb-svg{display:block}.sticker-hlb-line{vector-effect:non-scaling-stroke}
