body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@font-face{font-display:swap;font-family:Swiss721BoldCondensed;font-style:normal;src:url(/static/media/swiss-721-bt-bold-condensed.d072dbd3c0ed6e0aefbb.ttf) format("truetype")}@font-face{font-display:swap;font-family:LiberationMono;font-style:normal;font-weight:400;src:url(/static/media/LiberationMono-Regular-webfont.b6705bc63b0a64afa09a.woff) format("woff")}.App{height:100vh;overflow:hidden;width:100%}body{margin:0;padding:0}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.barcode-container{margin:0 auto;max-width:800px;padding:20px}.input-group{display:flex;gap:10px;justify-content:center;margin:20px 0}.input-group input{border:1px solid #ccc;border-radius:4px;font-size:16px;padding:8px 12px;width:300px}.input-group button{background-color:#06c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:8px 16px}.input-group button:hover{background-color:#0052a3}.text-element{box-sizing:border-box;color:#000;line-height:1!important;margin:0;padding:0;pointer-events:none;transform:translateZ(0);white-space:pre-wrap;will-change:transform;word-break:break-word}.text-element[style*=normal]{border:1px dashed #0000}.selected-element-border{border:2px solid #2196f3;bottom:-2px;left:-2px;right:-2px;top:-2px}.element-container.text-element{margin:0;padding:0}.line-wrapping-settings{background-color:#f9f9f9;border:1px solid #e0e0e0;border-radius:15px;margin-bottom:10px;margin-top:10px;padding:10px}.element-container{font-size:0;line-height:0;margin:0;padding:0;position:absolute}.element-container.centered{animation:flash-center .5s ease-out}.selected-element-border{border:3px solid #0275ff}.grid-element-wrapper{display:inline-block;line-height:0;position:relative}.grid-element-line{pointer-events:none;position:absolute}.grid-element-line-vertical{height:100%;top:0}.grid-element-line-horizontal{left:0;width:100%}.copy-icon-button{align-items:center;background:none;border:none;border-radius:6px;cursor:pointer;display:flex;justify-content:center;padding:6px;position:relative;transform:scale(1)}.copy-icon-button,.copy-icon-button:before{transition:all .25s cubic-bezier(.4,0,.2,1)}.copy-icon-button:before{background-color:#2196f326;border-radius:10px;bottom:0;box-shadow:0 0 0 #2196f300;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transform:scale(.95);z-index:0}.copy-icon-button:hover:before{box-shadow:0 2px 12px #2196f340,0 1px 4px #0000001a;opacity:1;transform:scale(1)}.copy-icon-button:hover{transform:scale(1.1)}.copy-icon-button:active{transform:scale(.95)}.copy-icon-svg{height:20px;position:relative;transform:scale(1);transition:all .25s cubic-bezier(.4,0,.2,1);width:20px;z-index:1}.copy-icon-button:hover .copy-icon-svg{transform:scale(1.05)}.copy-icon-svg path,.copy-icon-svg rect{transition:all .25s cubic-bezier(.4,0,.2,1)}.copy-icon-button:disabled{cursor:default;opacity:.5}.label-dialog.legal-dialog.MuiPaper-root{max-height:calc(100dvh - 64px);max-width:calc(100vw - 48px);overflow:hidden;width:760px}.legal-dialog.MuiPaper-root .MuiDialogTitle-root{flex-shrink:0;padding-bottom:8px}.legal-dialog .MuiDialogTitle-root:focus{outline:none}.legal-date{color:#888;flex-shrink:0;font-size:12px;margin:0 0 24px}.legal-dialog.MuiPaper-root .legal-content{-webkit-overflow-scrolling:touch;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;padding:0 16px 0 0;scrollbar-color:#ccc #0000;scrollbar-gutter:stable;scrollbar-width:thin}.legal-content:focus-visible{border-radius:4px;outline:2px solid #2196f3;outline-offset:-2px}.legal-content h3{color:#333;font-size:16px;font-weight:600;line-height:1.4;margin:28px 0 10px}.legal-content p{margin:0 0 16px}.legal-content .legal-summary{background:#f8f8f8;border:1px solid #e4e4e4;border-radius:16px;margin-bottom:24px;padding:20px}.legal-summary h3{margin:0 0 10px}.legal-summary p:last-child{margin-bottom:0}.legal-content a{overflow-wrap:anywhere}.legal-footer{align-items:center;border-top:1px solid #eee;display:flex;flex-shrink:0;font-size:12px;gap:16px;margin-top:20px;padding-top:18px}.legal-footer span{color:#888;margin-right:auto}.legal-notice{color:#777;font-size:12px;line-height:1.6;margin:16px 0 0}.legal-notice a{color:#666;text-underline-offset:3px}.editor-legal-notice{background:#fafafa;box-sizing:border-box;order:2;padding:7px 16px;position:static}.editor-legal-notice,.gallery-legal-notice{border-top:1px solid #eee;flex-shrink:0;margin:0;text-align:center}.gallery-legal-notice{padding:16px 24px}.legal-dialog a:focus-visible,.legal-notice a:focus-visible{border-radius:3px;outline:2px solid #2196f3;outline-offset:3px}@media (max-width:700px){.legal-dialog-root .MuiDialog-container{align-items:flex-end}.label-dialog.legal-dialog.MuiPaper-root{border-radius:30px 30px 0 0;margin:0;max-height:calc(100dvh - 24px);max-width:100%;padding:32px 24px max(20px,env(safe-area-inset-bottom));width:100%}.legal-dialog.MuiPaper-root .MuiDialogTitle-root{font-size:24px}.legal-date{margin-bottom:20px}.legal-dialog.MuiPaper-root .legal-content{padding-right:8px}.legal-content .legal-summary{padding:16px}}.document-toolbar{background:#fff;border-bottom:1px solid #ddd;box-sizing:border-box;display:flex;gap:16px;height:54px;padding:8px 20px}.document-toolbar,.workspace-button{align-items:center;color:#4b4b4b;flex-shrink:0}.workspace-button{background:#0000;border:0;border-radius:10px;cursor:pointer;display:inline-flex;font:inherit;font-size:14px;font-weight:500;gap:9px;justify-content:center;line-height:1.4;padding:9px 12px;transition:background .25s,box-shadow .25s,transform .25s}.workspace-button:hover:not(:disabled){background:#2196f326;box-shadow:0 2px 12px #2196f340,0 1px 4px #0000001a;transform:scale(1.04)}.workspace-button:active:not(:disabled){transform:scale(.97)}.workspace-settings{border-radius:10px;box-sizing:border-box;height:32px;padding:7px;transition:all .25s cubic-bezier(.4,0,.2,1);width:32px}.workspace-settings:hover:not(:disabled){transform:scale(1.1)}.workspace-settings:active:not(:disabled){transform:scale(.95)}.workspace-button:disabled{cursor:default;opacity:.4}.workspace-button-filled{background:#f0f0f0}.workspace-danger{color:#b33b3b}.document-name:focus-visible,.label-open:focus-visible,.labels-gallery-header input:focus-visible,.workspace-button:focus-visible{outline:2px solid #2196f3;outline-offset:3px}.document-name{background:#0000;border:1px solid #0000;border-radius:10px;color:#333;flex:1 1;font:inherit;font-size:14px;max-width:320px;min-width:100px;padding:8px 10px}.document-name:hover{border-color:#ddd}.document-status{color:#777;flex:1 1;font-size:12px;text-align:right;white-space:nowrap}.signin-notice{align-items:center;background:repeating-linear-gradient(-45deg,#f6b66b 0 7px,#b97538 7px 14px);display:flex;flex-shrink:0;justify-content:center;min-height:30px;padding:0 20px}.signin-notice-content{align-items:center;color:#443e30;display:flex;font-size:12px;gap:8px;isolation:isolate;min-height:32px;padding:4px 20px;position:relative}.signin-notice-content:before{--signin-glass-fade:linear-gradient(90deg,#0000,#0000000a 8px,#00000029 20px,#00000080 36px,#000000d6 52px,#000000f5 64px,#000 72px,#000 calc(100% - 72px),#000000f5 calc(100% - 64px),#000000d6 calc(100% - 52px),#00000080 calc(100% - 36px),#00000029 calc(100% - 20px),#0000000a calc(100% - 8px),#0000);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#f4f1eadb;content:"";inset:0 -48px;-webkit-mask-image:var(--signin-glass-fade);mask-image:var(--signin-glass-fade);pointer-events:none;position:absolute;z-index:-1}.document-notice{align-items:center;background:#f8f8f8;border-bottom:1px solid #e5e5e5;color:#555;display:flex;font-size:13px;gap:12px;padding:10px 20px}.document-notice>span{flex:1 1}.document-notice>button:not(.workspace-button){background:none;border:none;border-radius:10px;color:#555;cursor:pointer;font:inherit;padding:8px}.document-notice>button:hover{background:#2196f326}.workspace-close{height:40px;padding:8px;width:40px}.workspace-close svg{height:24px;width:24px}.labels-gallery.MuiPaper-root{background:#fafafa;color:#333}.labels-gallery-header{align-items:center;-webkit-backdrop-filter:blur(10px) saturate(140%);backdrop-filter:blur(10px) saturate(140%);background:#ffffffbd;border-bottom:1px solid #ddd;box-sizing:border-box;display:flex;flex-shrink:0;gap:24px;height:54px;min-height:54px;padding:8px 20px}.labels-brand{align-items:center;color:#4b4b4b;display:inline-flex;font-size:15px;font-weight:600;gap:9px;line-height:20px;margin:0;white-space:nowrap}.labels-brand-icon{filter:drop-shadow(0 2px 2px rgba(0,0,0,.18));height:28px;object-fit:contain;width:28px}.labels-actions{align-items:center;display:flex;gap:8px;margin-left:auto}.guest-builder-link{flex-shrink:1;margin-left:auto}.guest-builder-link svg{flex-shrink:0;transform:rotate(180deg)}.guest-library{display:grid;flex:1 1;min-height:420px;overflow:hidden;padding:32px;place-items:center;position:relative}.guest-label-placeholders{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr));inset:48px max(32px,8%);opacity:.5;pointer-events:none;position:absolute}.guest-label-placeholder{background:#fff;border:1px solid #e5e7e9;border-radius:18px;overflow:hidden}.guest-label-placeholder-preview{background:#f0f1f2;display:grid;height:170px;place-items:center}.guest-label-placeholder-paper{background:#fff;box-shadow:0 2px 5px #00000008;box-sizing:border-box;height:106px;padding:14px 10px;width:74px}.guest-label-placeholder i{background:#e1e3e5;border-radius:3px;display:block;height:5px;margin-bottom:7px}.guest-label-placeholder-paper i:nth-child(2){width:70%}.guest-label-placeholder-paper b{background:repeating-linear-gradient(90deg,#dee0e2 0 2px,#0000 2px 4px);display:block;height:24px;margin-top:22px}.guest-label-placeholder-caption{padding:18px}.guest-label-placeholder-caption i:first-child{width:55%}.guest-label-placeholder-caption i:last-child{width:32%}.guest-library:after{background:radial-gradient(ellipse at center,#fafafaf0 15%,#fafafa90 60%,#0000);content:"";inset:0;pointer-events:none;position:absolute}.guest-signin-card{background:#fff;border:1px solid #dedfe1;border-radius:18px;box-shadow:0 8px 28px #0000000f;box-sizing:border-box;max-width:100%;padding:36px 28px;position:relative;text-align:center;width:380px;z-index:1}.guest-signin-card h2{color:#333;font-size:20px;font-weight:500;margin:0 0 24px}.guest-google-button{display:flex;justify-content:center;min-height:44px}.guest-signin-error{color:#8c4938;font-size:12px;line-height:1.5;margin:16px 0 0}.labels-gallery-content{box-sizing:border-box;flex:1 1;margin:0 auto;max-width:1600px;overflow-y:auto;padding:32px 48px;width:100%}.labels-gallery-header input{background:#fff9;border:1px solid #e4e4e4;border-radius:10px;box-sizing:border-box;color:#333;font:inherit;font-size:13px;height:36px;line-height:20px;max-width:30vw;padding:7px 12px;width:260px}.labels-muted{color:#777;font-size:13px;line-height:1.6}.label-grid{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.label-card{background:#fff;border:1px solid #e4e4e4;border-radius:20px;min-width:0;transition:transform .25s,box-shadow .25s,border-color .25s}.label-card:focus-within,.label-card:hover{border-color:#c2dff5;box-shadow:0 8px 24px #2196f31a,0 2px 8px #0000000d;transform:scale(1.025)}.label-open{background:#0000;border:0;border-radius:20px;color:#333;cursor:pointer;display:block;font:inherit;padding:0;text-align:left;width:100%}.label-preview{align-items:center;background:#f2f3f4;border-radius:19px 19px 0 0;display:flex;height:280px;justify-content:center;overflow:hidden;pointer-events:none}.label-preview-frame{pointer-events:none;position:relative}.label-preview-paper{background:#fff;border:1px solid #ddd;box-shadow:0 4px 18px #00000024;box-sizing:border-box;isolation:isolate;left:50%;overflow:hidden;position:absolute;text-align:left;text-align:initial;top:50%;transform-origin:center}.label-card-caption{padding:20px 20px 8px}.label-card-caption strong{display:block;font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.label-card-caption small{color:#888;display:block;font-size:12px;margin-top:6px}.label-card-actions{display:flex;justify-content:flex-end;padding:0 10px 10px}.label-menu-trigger:hover:not(:disabled),.label-menu-trigger[aria-expanded=true]{background:#f0f0f0;box-shadow:0 2px 6px #0000001a}.label-options-menu.MuiPaper-root{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border:1px solid #00000014;border-radius:14px;box-shadow:0 8px 28px #0000001f;margin-top:6px;min-width:160px}.label-options-menu .MuiList-root{padding:6px}.label-options-menu .MuiMenuItem-root{border-radius:8px;color:#4b4b4b;font-size:14px;min-height:36px;transition:background .18s}.label-options-menu.MuiPaper-root .MuiMenuItem-root.Mui-focusVisible,.label-options-menu.MuiPaper-root .MuiMenuItem-root:hover{background:#f0f0f0;border-radius:8px;color:#333}.label-options-menu .MuiMenuItem-root.label-menu-delete{border-radius:8px;color:#a12c2c;margin-top:9px;position:relative}.label-options-menu .label-menu-delete:before{background:#eee;content:"";height:1px;left:8px;pointer-events:none;position:absolute;right:8px;top:-5px}.label-options-menu.MuiPaper-root .MuiMenuItem-root.label-menu-delete.Mui-focusVisible,.label-options-menu.MuiPaper-root .MuiMenuItem-root.label-menu-delete:hover{background:#f0f0f0;color:#a12c2c}.labels-drafts{margin-top:48px}.labels-drafts h2{font-size:16px;font-weight:500;margin-bottom:20px}.labels-drafts>p{margin-bottom:24px;margin-top:0}.labels-empty{border:1px dashed #ddd;border-radius:20px;color:#888;padding:64px 24px;text-align:center}.labels-empty h2{color:#555;font-size:20px;font-weight:500}.labels-legal{align-items:center;color:#888;display:flex;font-size:12px;gap:20px;padding-top:48px}.labels-legal span{margin-right:auto}.label-dialog a,.labels-legal a{color:#666;text-underline-offset:3px}.workspace-backdrop.MuiBackdrop-root{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080}.label-dialog.MuiPaper-root{border-radius:30px;box-shadow:0 8px 32px #0003;box-sizing:border-box;max-width:calc(100vw - 48px);padding:40px;width:500px}.label-dialog>.workspace-close{position:absolute;right:20px;top:20px}.label-dialog .MuiDialogTitle-root{color:#333;font-family:inherit;font-size:26px;font-weight:600;line-height:1.3;padding:0 36px 24px 0}.label-dialog .MuiDialogContent-root{color:#555;font-family:inherit;font-size:14px;line-height:1.6;padding:4px 0}.label-dialog .MuiDialogContent-root p:first-child{margin-top:0}.label-dialog .MuiDialogActions-root{flex-wrap:wrap;gap:8px;padding:24px 0 0}.label-dialog .MuiDialogActions-root>:not(style)~:not(style){margin-left:0}.label-dialog .MuiOutlinedInput-root{border-radius:12px}.label-dialog .MuiTextField-root{margin-top:8px;width:100%}.label-dialog .MuiFormControlLabel-root{align-items:flex-start;margin-top:8px}.label-dialog .MuiFormControlLabel-label{font:inherit;font-size:13px;padding-top:9px}.label-dialog .MuiCheckbox-root{color:#777}.label-dialog .MuiAlert-root{border-radius:12px;margin:12px 0}.settings-danger-zone{border-top:1px solid #e5e5e5;margin-top:24px;padding-top:16px}.settings-danger-zone .workspace-button{font-size:12px;font-weight:400;padding:8px 0}.settings-danger-zone .workspace-button:hover:not(:disabled){background:#0000;box-shadow:none;text-decoration:underline;text-underline-offset:3px;transform:none}@media (max-width:1150px){.document-toolbar,.editor-workspace>.document-notice,.editor-workspace>.signin-notice{display:none}}@media (max-width:700px){.labels-gallery-header{gap:12px;padding:8px 12px}.labels-gallery-content{padding:24px}.labels-legal{flex-wrap:wrap}.label-dialog.MuiPaper-root{padding:32px 24px}}@media (prefers-reduced-motion:reduce){.label-card,.workspace-button{transition:none}.label-card:focus-within,.label-card:hover,.workspace-button:hover:not(:disabled){transform:none}}.label-controls{display:flex;flex-wrap:wrap;gap:16px;justify-content:flex-start;width:100%}.control-group{align-items:center;display:flex;flex-direction:column;max-width:120px;min-width:100px}.control-group label{color:#555;display:block;font-size:13px;margin-bottom:5px;text-align:center;width:100%}.control-group select,.dimension-input{background-color:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:7px;width:100%}.dots-info{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:9px;box-shadow:0 1px 3px #0000001a;box-sizing:border-box;color:#555;display:inline-flex;font-size:13px;padding:6px 12px;position:absolute;right:30px;top:15px;white-space:nowrap;z-index:10}.control-group:has(.center-button){min-width:140px}.center-button{margin-top:auto;padding:8px 12px;width:100%}@media (max-width:600px){.label-controls{justify-content:center}.control-group{min-width:90px}}.absolute-toggle-bar{border-radius:6px;padding:2px;position:absolute;right:15px;top:15px;z-index:100}.absolute-canvas-controls{-webkit-backdrop-filter:blur(10px) saturate(140%);backdrop-filter:blur(10px) saturate(140%);backface-visibility:hidden;background-color:#ffffffbd;border:1px solid #ffffffb8;border-radius:18px;box-shadow:inset 0 1px 0 #ffffffbf,inset 0 -1px 0 #ffffff40,0 10px 30px #0f172a1f,0 2px 8px #00000014;isolation:isolate;left:30px;max-width:calc(100% - 200px);padding:12px;position:absolute;top:30px;transform-origin:top left;transition:all .3s cubic-bezier(.4,0,.2,1);will-change:transform,opacity;z-index:100}.absolute-canvas-controls.visible{opacity:1;pointer-events:auto;transform:scale(1)}.absolute-canvas-controls.hidden{opacity:0;pointer-events:none;transform:scale(.85)}.absolute-element-tools{left:30px;position:absolute;top:50%;transform-origin:left center;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:100}.absolute-element-tools.visible{opacity:1;pointer-events:auto;transform:translateY(-50%) scale(1)}.absolute-element-tools.hidden{opacity:0;pointer-events:none;transform:translateY(-50%) scale(.85)}.absolute-zoom-controls{bottom:30px;position:absolute;right:30px;transform-origin:bottom right;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:100}.absolute-zoom-controls.visible{opacity:1;pointer-events:auto;transform:scale(1)}.absolute-zoom-controls.hidden{opacity:0;pointer-events:none;transform:scale(.85)}.absolute-clear-button{bottom:30px;left:50%;position:absolute;transform-origin:bottom center;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:100}.absolute-clear-button.visible{opacity:1;pointer-events:auto;transform:translateX(-50%) scale(1)}.absolute-clear-button.hidden{opacity:0;pointer-events:none;transform:translateX(-50%) scale(.85)}.clear-example-countdown{align-items:center;border-radius:12px;box-sizing:border-box;display:inline-flex;height:46px;isolation:isolate;justify-content:center;position:relative;width:150px}.clear-example-countdown-border{height:100%;inset:0;overflow:visible;pointer-events:none;position:absolute;width:100%;z-index:2}.clear-example-countdown-border path{fill:none;stroke:#475569;stroke-width:3;stroke-linecap:round;stroke-dasharray:1 1;stroke-dashoffset:0;animation:clearExampleCountdown 20s linear forwards}.clear-example-countdown button{position:relative;z-index:1}.absolute-clear-button.animating-out .clear-example-countdown-border path{animation-play-state:paused}.absolute-clear-button.animating-out{animation:clearButtonExit .6s cubic-bezier(.4,0,.2,1) forwards;pointer-events:none}@keyframes clearButtonExit{0%{opacity:1;transform:translateX(-50%) scale(1)}30%{opacity:1;transform:translateX(-50%) scale(1.1)}to{opacity:0;transform:translateX(-50%) scale(.3)}}@keyframes clearExampleCountdown{0%{stroke-dashoffset:0}to{stroke-dashoffset:1}}.canvas-scroll-container{border:1px solid #ddd!important;flex:1 1;height:100%;overflow:auto;position:relative;width:100%}.canvas-content{align-items:center;background-color:#f5f5f5;box-shadow:inset 0 0 10px #0000000f;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-start;min-height:100%;padding:120px 30px 30px;position:relative;width:100%}.canvas-marquee-selection-rect{background-color:#0275ff29;border:1px solid #0275ff;box-sizing:border-box;pointer-events:none;position:absolute;z-index:90}.canvas-info{color:#555;font-size:14px;margin-bottom:15px;text-align:center}.center-button:active,.center-button:hover{background-color:#0275ff}.canvas-top-bar{display:none}.context-menu{background-color:#fff;border:1px solid #ccc;border-radius:6px;box-shadow:0 4px 12px #00000026;font-size:14px;min-width:140px;overflow:hidden;position:fixed;z-index:1000}.context-menu-item{border-bottom:1px solid #f0f0f0;color:#333;cursor:pointer;padding:10px 14px;transition:background-color .2s ease}.context-menu-item:last-child{border-bottom:none}.context-menu-item:hover{background-color:#f8f9fa!important;color:#0275ff}.context-menu-item:active{background-color:#e3f2fd!important}.multi-label-panel{isolation:isolate;min-width:0;overflow:hidden}.board-stage{background:#f5f5f5;inset:0;overflow:hidden;position:absolute;touch-action:none}.board-world{left:0;top:0;transform-origin:0 0}.board-label,.board-world{height:0;position:absolute;width:0}.board-paper-transform{position:absolute;transform-origin:center}.board-paper-transform .label-canvas{max-width:none;transition:none}.board-paper-transform .printer-head{flex-shrink:0}.label-activation-overlay{background:#0000;border:0;cursor:default;height:100%;inset:0;padding:0;position:absolute;width:100%;z-index:100}.label-activation-overlay:focus-visible{outline:2px solid #0275ff;outline-offset:4px}.board-label-handle{align-items:center;background:#fffffff5;border:1px solid #d8dde5;border-radius:12px;box-shadow:0 3px 10px #0000001a;box-sizing:border-box;cursor:grab;display:flex;gap:4px;opacity:.75;padding:4px;position:absolute;touch-action:none;transform-origin:left top;transition:opacity .15s;white-space:nowrap}.board-label-handle:focus-within,.board-label.focused .board-label-handle,.board-label:hover .board-label-handle{opacity:1}.board-label-handle button{align-items:center;background:#0000;border:1px solid #0000;border-radius:8px;color:#4b5563;display:inline-flex;font:12px Arial,sans-serif;height:34px;justify-content:center;padding:0 8px;touch-action:none}.board-label-handle .label-move-grip{background:#0000;cursor:grab;flex-shrink:0;font-size:25px;width:36px}.board-label-handle .label-actions-button{cursor:pointer;flex-shrink:0;font-size:22px;width:34px}.board-label-handle .label-name-button{cursor:text;display:block;flex:1 1;font-weight:500;min-width:0;overflow:hidden;text-align:left;text-overflow:ellipsis}.board-label-handle .label-name-input{background:#fff;border:1px solid #777;border-radius:6px;box-sizing:border-box;color:#243449;flex:1 1;font:12px Arial,sans-serif;height:34px;min-width:0;outline:none;padding:0 6px;width:100%}.board-label-handle[data-side=left],.board-label-handle[data-side=right]{grid-gap:4px;display:grid;gap:4px;grid-template-columns:1fr 34px;grid-template-rows:38px 40px;padding:6px}.board-label-handle[data-side=left] .label-move-grip,.board-label-handle[data-side=right] .label-move-grip{grid-column:1/-1;width:100%}.board-label-handle button:hover{background:#f0f0f0;border-color:#d8dde5;color:#243449}.board-label-handle button:focus-visible{outline:2px solid #777;outline-offset:1px}.label-printer-guide{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.label-printer-guide img,.label-printer-guide svg{pointer-events:none}.board-label-handle .label-move-grip:active,.board-label.moving .board-label-handle,.board-label.moving .label-printer-guide{cursor:grabbing}.overview .board-label:not(.focused):not(:hover) .board-label-handle{opacity:0;pointer-events:none}.label-controls-content{animation:labelControlsEnter .18s ease;transform-origin:top left}@keyframes labelControlsEnter{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.multi-label-panel .absolute-canvas-controls{transition:opacity .18s ease,transform .18s ease}.multi-label-panel .absolute-canvas-controls.hidden{transform:scale(.96)}.multi-label-panel .absolute-element-tools{align-items:center;bottom:150px;display:flex;top:180px}.multi-label-panel .absolute-element-tools.visible{transform:scale(1)}.multi-label-panel .absolute-element-tools.hidden{transform:scale(.85)}.multi-label-panel .floating-tools-panel{min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.multi-label-panel .floating-tools-panel::-webkit-scrollbar{display:none}.multi-label-panel .tool-item{flex-shrink:0}.absolute-new-label{bottom:30px;left:30px;position:absolute;transform-origin:bottom left;transition:opacity .18s ease,transform .18s ease;z-index:100}.absolute-new-label.hidden{opacity:0;pointer-events:none;transform:scale(.96)}.new-label-tile{align-items:center;backdrop-filter:blur(10px) saturate(140%);-webkit-backdrop-filter:blur(10px) saturate(140%);background:#ffffffbd;border:1px solid #ffffffb8;border-radius:18px;box-shadow:inset 0 1px 0 #ffffffbf,inset 0 -1px 0 #ffffff40,0 10px 30px #0f172a1f,0 2px 8px #0000001a;color:#4c5968;cursor:grab;display:flex;flex-direction:column;gap:6px;height:98px;justify-content:center;padding:10px;transition:background .18s,transform .18s;width:96px}.new-label-tile .new-label-icon{height:48px;object-fit:contain;pointer-events:none;width:62px}.new-label-tile span{font:500 12px Arial,sans-serif}.new-label-tile:hover{background:#ffffffe6;transform:translateY(-2px)}.new-label-tile:active{cursor:grabbing}.new-label-tile:focus-visible{outline:2px solid #0275ff;outline-offset:3px}.board-stage.accepting-label{box-shadow:inset 0 0 0 2px #0275ff38}.empty-board-hint{color:#8a929d;font-size:14px;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.canvas-output-empty{align-items:center;color:#7a8491;display:flex;font-size:14px;height:100%;justify-content:center;min-height:200px}@media (prefers-reduced-motion:reduce){.absolute-new-label,.board-label-handle,.multi-label-panel .absolute-canvas-controls,.new-label-tile{transition:none}.label-controls-content{animation:none}}.board-label-handle .label-move-grip:hover{background:#0000;border-color:#0000}.panel-toggle-container{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;min-height:auto;min-width:auto;padding:6px;transform:scale(1);transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.panel-toggle-container.container-hovered{background-color:#2196f326;border-radius:10px;box-shadow:0 4px 16px #2196f333,0 2px 8px #0000001a;transform:scale(1.05)}.panel-toggle-container:active{transform:scale(.95)}.panel-toggle-container.container-hovered .toggle-section:hover,.panel-toggle-container.container-hovered .toggle-section:hover .toggle-svg{transform:scale(1)}.panel-toggle-container.container-hovered .toggle-section:hover:before{box-shadow:0 0 0 #2196f300;opacity:0;transform:scale(.95)}.toggle-grid{display:flex;gap:12px;margin-bottom:0}.toggle-section{align-items:center;border-radius:6px;cursor:pointer;display:flex;justify-content:center;padding:6px;position:relative;transform:scale(1)}.toggle-section,.toggle-section:before{transition:all .25s cubic-bezier(.4,0,.2,1)}.toggle-section:before{background-color:#2196f326;border-radius:10px;bottom:0;box-shadow:0 0 0 #2196f300;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transform:scale(.95);z-index:0}.toggle-section:hover:before{box-shadow:0 2px 12px #2196f340,0 1px 4px #0000001a;opacity:1;transform:scale(1)}.toggle-section:hover{transform:scale(1.1)}.toggle-section:active{transform:scale(.95)}.toggle-svg{height:20px;position:relative;transform:scale(1);transition:all .25s cubic-bezier(.4,0,.2,1);width:20px;z-index:1}.toggle-section:hover .toggle-svg{transform:scale(1.05)}.toggle-svg path,.toggle-svg rect{transition:all .25s cubic-bezier(.4,0,.2,1)}.toggle-section .toggle-svg path[fill="#4B4B4B"],.toggle-section .toggle-svg rect[fill="#4B4B4B"]{fill:#4b4b4b}@media (max-width:480px){.toggle-grid{gap:8px}.toggle-svg{height:16px;width:16px}.panel-toggle-container{padding:4px}}.panel-toggle-container:focus,.toggle-section:focus{outline:2px solid #2196f3;outline-offset:2px}.zoom-controls{-webkit-backdrop-filter:blur(10px) saturate(140%);backdrop-filter:blur(10px) saturate(140%);backface-visibility:hidden;background-color:#ffffffbd;border:1px solid #ffffffb8;border-radius:18px;box-shadow:inset 0 1px 0 #ffffffbf,inset 0 -1px 0 #ffffff40,0 10px 30px #0f172a1f,0 2px 8px #0000001a;flex-direction:column;gap:6px;isolation:isolate;padding:8px;width:68px;will-change:transform,opacity;z-index:20}.zoom-controls,.zoom-controls button{align-items:center;box-sizing:border-box;display:flex;position:relative}.zoom-controls button{background-color:initial;border:none;border-radius:6px;color:#333;cursor:pointer;flex:0 0 32px;font-size:18px;font-weight:700;height:32px;justify-content:center;padding:6px;transform:scale(1);transition:all .25s cubic-bezier(.4,0,.2,1);width:32px}.zoom-controls button:before{background-color:#2196f326;border-radius:10px;bottom:0;box-shadow:0 0 0 #2196f300;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transform:scale(.95);transition:all .25s cubic-bezier(.4,0,.2,1);z-index:0}.zoom-controls button:hover:before{box-shadow:0 2px 12px #2196f340,0 1px 4px #0000001a;opacity:1;transform:scale(1)}.zoom-controls button:hover{background-color:initial;border-color:#0275ff;color:#0275ff;transform:scale(1.1)}.zoom-controls button:active{transform:scale(.95)}.zoom-controls button,.zoom-controls button span,.zoom-icon{position:relative;z-index:1}.zoom-icon{height:20px;width:20px}.zoom-icon,.zoom-icon path,.zoom-icon rect{transition:all .25s cubic-bezier(.4,0,.2,1)}.zoom-level{box-sizing:border-box;color:#666;font-size:12px;font-weight:500;margin-bottom:2px;padding:2px 0;text-align:center;width:52px}.label-canvas{box-shadow:0 2px 5px #0003;box-sizing:border-box;max-height:85vh;max-width:100%;transition:width .4s,height .4s}.barcode-container{display:inline-block;font-size:0;line-height:0;transition:left .2s ease;vertical-align:top}.barcode-container canvas{margin:0;padding:0}.barcode-container:hover{border-color:#2196f380!important}.barcode-container.selected{z-index:10}.barcode-container canvas{display:block;pointer-events:none;transform:none!important;transition:none!important}.barcode-container.centered{animation:flash-center .5s ease-out}.center-indicator,.element-alignment-guide{animation:pulsate 1.5s infinite}.marquee-selection-rect,.virtual-selection-bounds{box-sizing:border-box;pointer-events:none;position:absolute;z-index:60}.marquee-selection-rect{background-color:#0275ff29;border:1px solid #0275ff}.virtual-selection-bounds{background-color:#0275ff0f;border:2px solid #0275ff;border-radius:3px}.selected-element-border,.virtual-selection-bounds{animation:pulsate-selection 2s ease-in-out infinite}.selected-element-border{border:5px solid #0275ff;border-radius:2px;bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0;transform:scale(1);transform-origin:top left}@keyframes pulsate{0%,to{opacity:.7}50%{opacity:1}}@keyframes flash-center{0%{box-shadow:0 0 0 2px #0275ff}to{box-shadow:0 0 0 0 #2196f300}}@keyframes pulsate-selection{0%,to{opacity:.3}50%{opacity:1}}.printer-head-container{border:2px solid #454545;border-radius:15px;box-sizing:border-box;height:18px;padding:4px}.printer-head-inner{background-color:#454545;border-radius:50px;height:100%;width:100%}.printer-head-icons{align-items:center;display:grid;grid-template-columns:1fr 1fr 1fr;margin-bottom:10px;text-align:center}.icon{height:22px;margin:0 auto;width:auto}.right-arrow{transform:scaleX(-1)}.tools-container{display:flex;flex-direction:column;gap:15px}.elements-panel-shell{display:flex;max-height:100%;min-height:0;position:relative}.elements-scroll-fade{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:linear-gradient(180deg,#fafafa00,#fafafaeb);border-radius:0 0 17px 17px;bottom:1px;height:90px;left:1px;-webkit-mask-image:linear-gradient(180deg,#0000,#000 65%);mask-image:linear-gradient(180deg,#0000,#000 65%);max-height:calc(100% - 2px);opacity:0;pointer-events:none;position:absolute;right:1px;transition:opacity .5s ease-in-out;z-index:1}.elements-scroll-fade.is-visible{opacity:1}@media (prefers-reduced-motion:reduce){.elements-scroll-fade{transition:none}}.element-drag-hint{align-items:center;animation:dragHintBounce 1.5s infinite;color:#0275ff;display:flex;font-size:18px;font-weight:700;height:52px;justify-content:center;left:72px;margin-top:-26px;pointer-events:none;position:absolute;width:18px;z-index:2}.floating-tools-panel{-webkit-backdrop-filter:blur(10px) saturate(140%);backdrop-filter:blur(10px) saturate(140%);backface-visibility:hidden;background-color:#ffffffbd;border:1px solid #ffffffb8;border-radius:18px;box-shadow:inset 0 1px 0 #ffffffbf,inset 0 -1px 0 #ffffff40,0 10px 30px #0f172a1f,0 2px 8px #0000001a;box-sizing:border-box;isolation:isolate;overflow:visible;padding:8px;width:68px;will-change:transform,opacity}.floating-tools-panel .tools-container{align-items:center;gap:6px}.tool-item{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:16px;cursor:grab;display:flex;flex-direction:column;height:50px;justify-content:center;overflow:hidden;padding:5px;position:relative;transition:all .2s ease;width:50px}.floating-tools-panel .tool-item{background-color:#ffffff57;border:1px solid #0000;border-radius:16px;box-sizing:border-box;height:52px;overflow:visible;padding:0;width:52px}.floating-tools-panel .tool-item:hover{background-color:#ffffff80;border-color:#aaa}.tool-item:hover{border-color:#aaa;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.tool-item:hover:before{animation:dragPulse 1.5s infinite;background:linear-gradient(135deg,#2196f31a,#2196f300 50%,#2196f31a);content:"";height:100%;left:0;pointer-events:none;position:absolute;right:0;top:0}.floating-tools-panel .tool-item:hover:before{display:none}.tool-item:hover:after{align-items:center;animation:dragHintBounce 1.5s infinite;background-color:#ffffffe6;border-top:1px dashed #0275ff;bottom:0;color:#0275ff;content:"→";display:flex;font-size:20px;font-weight:700;height:50%;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;text-align:center}.floating-tools-panel .tool-item:hover:after{display:none}@keyframes dragPulse{0%{opacity:.3}50%{opacity:.8}to{opacity:.3}}@keyframes dragHintBounce{0%,to{transform:translateX(0)}50%{transform:translateX(2px)}}.tool-icon{align-items:center;display:flex;height:36px;justify-content:center;width:36px}.tool-icon img,.tool-icon svg{height:32px;object-fit:contain;width:32px}.floating-tools-panel .tool-icon{height:36px;width:36px}.floating-tools-panel .tool-icon img,.floating-tools-panel .tool-icon svg{height:30px;width:30px}.tool-icon.line-icon{height:40px;width:40px}.tool-icon.line-icon svg{height:38px;width:38px}.tool-icon.circle-icon{height:40px;width:40px}.tool-icon.circle-icon svg{height:38px;width:38px}.tool-icon.grid-icon{height:40px;width:40px}.tool-icon.grid-icon svg{height:38px;width:38px}.floating-tools-panel .tool-icon.circle-icon,.floating-tools-panel .tool-icon.grid-icon,.floating-tools-panel .tool-icon.line-icon{height:36px;width:36px}.floating-tools-panel .barcode-icon svg,.floating-tools-panel .tool-icon.circle-icon svg,.floating-tools-panel .tool-icon.grid-icon svg,.floating-tools-panel .tool-icon.line-icon svg{height:30px;width:30px}.barcode-icon svg{height:32px;width:32px}.barcode-icon rect{fill:#000}.tool-label{color:#555;font-size:13px;font-weight:500;line-height:1.2;margin-top:2px;text-align:center;width:100%}.tool-item:active{cursor:grabbing}.drag-preview{align-items:center;background-color:#fffc;border-radius:4px;box-shadow:0 2px 8px #0003;display:flex;justify-content:center;padding:4px}.tool-panel h2{color:#fff}.panel-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.zpl-wrapper{margin-bottom:20px;padding-bottom:0;position:relative;width:100%}.zpl-content{background-color:#f8f8f8;border:1px solid #ddd;border-radius:20px;box-sizing:border-box;display:flex;flex-direction:column;height:47vh;min-height:300px;overflow:hidden;padding:12px;width:100%}.zpl-code{flex:1 1;font-family:monospace;font-size:14px;margin:0;min-height:0;overflow-x:auto;overflow-y:auto;padding:10px 40px 10px 10px;-webkit-user-select:text;user-select:text;white-space:pre}.zpl-code .highlight{color:#2196f3;font-weight:700}.copy-button{background-color:#f3f3f3;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px}.copy-button:hover{background-color:#e3e3e3}.copy-button.copied{background-color:#4caf50}.gutter:hover,.resize-handle:hover,.resizer:hover,.splitter-control:hover,[data-role=resizer]:hover,[data-type=resize]:hover,[role=separator]:hover{background-color:#0275ff!important;cursor:col-resize!important}.highlight{animation:fade-highlight 1.5s ease-out;background-color:#ff0;border-radius:2px;padding:0 2px}@keyframes fade-highlight{0%{background-color:#ff0}to{background-color:initial}}.metric-row{margin-bottom:15px}.metric-row label{display:block;font-weight:500;margin-bottom:5px}.metric-row input[type=range]{width:100%}.barcode-metrics{background-color:#f8f8f8;border:1px solid #ddd;border-radius:20px;margin-top:20px;padding:15px}.barcode-metrics h3{color:#333;font-size:16px;margin-bottom:25px;margin-top:5px}.highlighted,input.highlighted{border-color:#0275ff;color:#0275ff;font-weight:700}.panel.code-panel{box-sizing:border-box;height:100%;overflow-y:auto;padding:20px}.panel-rounded{border-radius:25px}.copy-icon-container{background:#f8f8f8;border-radius:30px;display:flex;gap:8px;padding:5px;position:absolute;right:12px;top:12px;z-index:10}.preset-buttons{display:flex;gap:8px;margin-top:5px}.preset-button{background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;cursor:pointer;flex:1 1;font-size:13px;padding:6px 12px;transition:background-color .2s}.preset-button:hover{background-color:#e9e9e9}.preset-button:active{background-color:#ddd}.done-button,.edit-button{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:all .2s}.edit-button{background-color:#f0f0f0;color:#333}.edit-button:hover{background-color:#e0e0e0;box-shadow:0 2px 8px #00000026}.done-button{background-color:#2196f3;color:#fff}.done-button:hover{background-color:#1976d2;box-shadow:0 2px 8px #2196f34d}.zpl-textarea{background-color:#f8f8f8;border:1px solid #0000;border-radius:20px;box-sizing:border-box;flex:1 1;font-family:monospace;font-size:14px;min-height:0;overflow-x:auto;overflow-y:auto;padding:10px;resize:none;white-space:pre;width:100%}.zpl-textarea:focus{border-color:#0000;outline:none}.zpl-error{background-color:#ffd6d6;border:1px solid #ef5350;border-radius:0 0 20px 20px;bottom:0;box-shadow:0 -2px 8px #0000001a;box-sizing:border-box;color:#c62828;font-size:13px;left:0;margin:0;overflow:hidden;padding:15px;position:absolute;right:0;text-align:center;width:100%;z-index:10}.zpl-error-title{font-weight:700;margin-bottom:8px}.zpl-error-message,.zpl-error-title{overflow-wrap:anywhere;word-break:break-word}.zpl-error-message{font-size:12px;line-height:1.4;white-space:normal}.image-prep-overlay{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.image-prep-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;bottom:0;left:0;position:absolute;right:0;top:0}.image-prep-modal{animation:modalSlideIn .3s ease-out;background-color:#fff;border-radius:30px;box-shadow:0 8px 32px #0003;max-height:80vh;max-width:500px;overflow:hidden;position:relative;width:90%;z-index:1001}.image-prep-modal.processing{display:flex;flex-direction:column;height:95vh;max-height:none;max-width:none;position:relative;width:95vw}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#333;cursor:pointer;display:flex;justify-content:center;padding:8px;right:20px;top:20px;transform:scale(1);z-index:1002}.close-button,.close-button:before{position:absolute;transition:all .25s cubic-bezier(.4,0,.2,1)}.close-button:before{background-color:#2196f326;border-radius:10px;bottom:0;box-shadow:0 0 0 #2196f300;content:"";left:0;opacity:0;right:0;top:0;transform:scale(.95);z-index:0}.close-button:hover:before{box-shadow:0 2px 12px #2196f340,0 1px 4px #0000001a;opacity:1;transform:scale(1)}.close-button:hover{color:#0275ff;transform:scale(1.1)}.close-button:active{transform:scale(.95)}.close-button svg{height:24px;position:relative;width:24px;z-index:1}.close-button svg,.close-button svg path,.close-button svg rect{transition:all .25s cubic-bezier(.4,0,.2,1)}.image-prep-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden;padding:40px;text-align:center}.image-prep-content h2{color:#333;font-size:28px;font-weight:600;margin:0 0 30px}.upload-area{background-color:#f8f9fa;border:2px dashed #ddd;border-radius:16px;cursor:pointer;padding:40px 20px;transition:all .3s ease}.upload-area:hover{background-color:#0275ff05;border-color:#0275ff}.upload-icon{font-size:48px;margin-bottom:20px;opacity:.6}.upload-text{color:#333;font-size:18px;font-weight:500;margin:0 0 10px}.supported-types{color:#666;font-size:14px;line-height:1.4;margin:0 0 30px}.upload-button{background-color:#0275ff;border:none;border-radius:8px;box-shadow:0 2px 8px #0275ff33;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .2s ease}.upload-button:hover{background-color:#0052a3;box-shadow:0 4px 12px #0275ff4d;transform:translateY(-1px)}.upload-button:active{box-shadow:0 2px 8px #0275ff33;transform:translateY(0)}.image-processing-area{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:flex-start;overflow:hidden;padding-bottom:120px;width:100%}.image-preview-section{box-sizing:border-box;flex:5 1;flex-direction:column;min-height:500px}.image-preview-section,.processed-image-container{align-items:center;display:flex;justify-content:center;overflow:hidden;width:100%}.processed-image-container{flex-direction:column;height:100%;text-align:center}.image-with-crop{border-radius:20px;box-shadow:0 4px 12px 7px #0000001a;box-sizing:border-box;display:inline-block;line-height:0;margin:0 auto;max-height:calc(100% - 60px);max-width:calc(100% - 60px);overflow:visible;padding:30px}.preview-image{border-radius:8px;display:block;height:auto;max-height:500px;max-width:100%}.image-processing-area .processed-image-container .preview-image{border:2px solid #ddd;display:block;height:auto;max-height:100%;max-width:100%;object-fit:contain;width:auto}.simple-crop-overlay{background-color:initial;border:3px solid #0275ff;box-sizing:border-box;z-index:999}.simple-crop-overlay:hover{border-color:#06c}.crop-resize-handle{background-color:#0275ff;border-radius:4px;box-shadow:0 2px 4px #0003;transition:all .2s ease;z-index:1000}.crop-resize-handle:hover{background-color:#06c;box-shadow:0 3px 6px #0000004d;transform:scale(1.1)}.crop-resize-handle.top{height:20px;top:-13px;transform:translateX(-50%);width:80px}.crop-resize-handle.bottom{bottom:-13px;height:20px;transform:translateX(-50%);width:80px}.crop-resize-handle.left{height:80px;left:-13px;transform:translateY(-50%);width:20px}.crop-resize-handle.right{height:80px;right:-13px;transform:translateY(-50%);width:20px}.crop-resize-handle.bottom:hover,.crop-resize-handle.top:hover{transform:translateX(-50%) scale(1.1)}.crop-resize-handle.left:hover,.crop-resize-handle.right:hover{transform:translateY(-50%) scale(1.1)}.crop-resize-handle.bottom:active,.crop-resize-handle.top:active{transform:translateX(-50%) scale(1.05)}.crop-resize-handle.left:active,.crop-resize-handle.right:active{transform:translateY(-50%) scale(1.05)}.processed-image-container .preview-image{border:2px solid #ddd}.image-controls{background-color:#fff;border-top:1px solid #e0e0e0;bottom:0;box-shadow:0 -2px 8px #0000001a;display:flex;flex-wrap:wrap;gap:15px;justify-content:center;left:0;min-height:100px;position:absolute;right:0;z-index:1003}.upload-button.primary{background-color:#28a745;box-shadow:0 2px 8px #28a74533}.upload-button.primary:hover{background-color:#218838;box-shadow:0 4px 12px #28a7454d}@media (max-width:600px){.image-prep-modal{margin:20px;width:95%}.image-prep-modal.processing{height:98vh;width:98vw}.image-prep-content{padding:20px 15px}.image-prep-content h2{font-size:24px}.upload-area{padding:30px 15px}.image-processing-area .processed-image-container .preview-image{max-height:100%;max-width:100%}.image-preview-section{flex:5 1;min-height:400px}.image-processing-area{padding-bottom:140px}.image-controls{align-items:center;background-color:#fff;border-top:1px solid #e0e0e0;bottom:0;box-shadow:0 -2px 8px #0000001a;flex-direction:column;left:0;margin-top:0;padding:15px;position:absolute;right:0;z-index:1003}.upload-button{font-size:18px;max-width:200px;padding:15px 20px;width:100%}}.threshold-controls{margin:20px 0}.accept-button-container{margin-top:16px;text-align:center}.accept-button{font-size:14px;min-width:100px;padding:8px 16px}.hidden-original-image{height:auto;left:-9999px;position:absolute;top:-9999px;visibility:hidden;width:auto}.image-with-crop{position:relative}.loading-overlay{align-items:center;background-color:#fffc;bottom:30px;display:flex;justify-content:center;right:30px;z-index:999}.crop-dim-overlay,.loading-overlay{left:30px;position:absolute;top:30px}.crop-dim-overlay{pointer-events:none;z-index:998}.dim-area{background:#0009;position:absolute}.dim-area.top{top:0}.dim-area.bottom,.dim-area.top{left:0;width:100%}.dim-area.left{left:0}.simple-crop-overlay{border:2px solid #007bff;cursor:move;position:absolute}.crop-resize-handle{background:#007bff;border:2px solid #fff;position:absolute}.crop-resize-handle.top{cursor:ns-resize;height:12px;left:50%;top:-10px;width:12px}.crop-resize-handle.bottom{bottom:-10px;cursor:ns-resize;height:12px;left:50%;width:12px}.crop-resize-handle.left{cursor:ew-resize;height:12px;left:-10px;top:50%;width:12px}.crop-resize-handle.right{cursor:ew-resize;height:12px;right:-10px;top:50%;width:12px}.hidden-canvas{display:none}.agent-state-hidden{overflow:hidden}.agent-state-hidden,.agent-state-hidden textarea{height:1px;opacity:0;pointer-events:none;position:absolute;width:1px}.agent-state-hidden textarea{border:0;padding:0}.editor-workspace{display:flex;flex-direction:column;height:100vh}.editor-container{background-color:#f5f5f5;display:flex;flex:1 1;height:0;min-height:0;-webkit-user-select:none;user-select:none;width:100%}.agent-import-error{background:#fff1f2;border:1px solid #fca5a5;border-radius:8px;box-shadow:0 12px 30px #0f172a24;color:#991b1b;font-size:13px;left:50%;line-height:1.4;max-width:min(720px,calc(100vw - 32px));padding:10px 14px;position:fixed;top:16px;transform:translateX(-50%);-webkit-user-select:text;user-select:text;z-index:9500}.panel{background-color:#fff;box-shadow:0 0 10px #0000001a;padding:20px}.tool-panel{background-color:#333;border-right:1px solid #ddd}.canvas-panel{display:flex;flex:1 1;flex-direction:column;padding:0 2px 0 0;position:relative}.code-panel{width:100%}.resizer{background-color:#ddd;cursor:col-resize;transition:background-color .2s;width:4px}.resizer:active,.resizer:hover{background-color:#999}h2{color:#333;font-size:1.2rem;margin-bottom:20px;margin-top:0}.right-panel{background-color:#fff;border-left:1px solid #ddd;display:flex;flex-direction:column;width:300px}.panel-tabs{border-bottom:1px solid #ddd;display:flex}.panel-tabs button{background:none;border:none;border-bottom:3px solid #0000;color:#555;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:12px;transition:all .2s}.panel-tabs button:hover{background-color:#f5f5f5}.panel-tabs button.active{border-bottom-color:#2196f3;color:#2196f3}.property-panel{flex:1 1;overflow-y:auto}.screen-too-small{align-items:center;background-color:#f5f5f5;display:none;flex-direction:column;height:100vh;justify-content:center;left:0;padding:0;position:fixed;text-align:center;top:0;width:100%;z-index:1000}.screen-too-small img{display:block;height:30px;margin-bottom:20px;width:30px}.screen-too-small h2{color:#333;font-size:1.5rem;margin:0 0 10px}.screen-too-small p{color:#666;font-size:1rem;margin:0 auto;max-width:300px;padding:0}@media (max-width:1150px){.agent-prompt-shell,.editor-container{display:none}.screen-too-small{display:flex}}.agent-prompt-shell{bottom:58px;max-width:calc(100vw - 48px);pointer-events:none;position:fixed;right:24px;z-index:10000}.agent-prompt-card{background:#fff;border:0;border-radius:16px;box-shadow:0 8px 32px #0003;box-sizing:border-box;color:#333;isolation:isolate;padding:20px;pointer-events:auto;position:relative;width:min(380px,calc(100vw - 48px))}.agent-prompt-countdown-border{height:100%;inset:0;overflow:visible;pointer-events:none;position:absolute;width:100%;z-index:2}.agent-prompt-countdown-border path{fill:none;stroke:#475569;stroke-width:3;stroke-linecap:round;stroke-dasharray:1 1;stroke-dashoffset:0;animation:agent-prompt-countdown 60s linear forwards}.agent-prompt-card h2,.agent-prompt-card p,.agent-prompt-code-block,.agent-prompt-copy,.agent-prompt-text{position:relative;z-index:1}.agent-prompt-card.closing{animation:agent-prompt-exit .26s cubic-bezier(.4,0,.2,1) forwards}.agent-prompt-card.closing .agent-prompt-countdown-border path{animation-play-state:paused}@keyframes agent-prompt-countdown{0%{stroke-dashoffset:0}to{stroke-dashoffset:1}}@keyframes agent-prompt-exit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}.agent-prompt-card h2{align-items:center;color:#333;display:flex;flex-wrap:wrap;font-size:20px;gap:8px;letter-spacing:0;line-height:1.2;margin:0 42px 10px 0}.agent-prompt-new-pill{align-items:center;background:#16a34a;border-radius:999px;color:#fff;display:inline-flex;font-size:11px;font-weight:700;justify-content:center;letter-spacing:0;line-height:1;padding:3px 8px;text-transform:uppercase}.agent-prompt-card p{color:#555;font-size:14px;line-height:1.45;margin:0 0 10px}.agent-prompt-card p:last-of-type{margin-bottom:14px}.agent-prompt-card p.agent-prompt-instruction{color:#222;font-weight:700;margin:0 0 8px}.agent-prompt-close{align-items:center;background:none;border:none;border-radius:50%;color:#333;cursor:pointer;display:flex;height:36px;justify-content:center;padding:6px;right:12px;top:12px;transform:scale(1);width:36px;z-index:3}.agent-prompt-close,.agent-prompt-close:before{position:absolute;transition:all .25s cubic-bezier(.4,0,.2,1)}.agent-prompt-close:before{background-color:#2196f326;border-radius:10px;box-shadow:0 0 0 #2196f300;content:"";inset:0;opacity:0;transform:scale(.95);z-index:0}.agent-prompt-close:hover:before{box-shadow:0 2px 12px #2196f340,0 1px 4px #0000001a;opacity:1;transform:scale(1)}.agent-prompt-close:hover{color:#0275ff;transform:scale(1.1)}.agent-prompt-close:active{transform:scale(.95)}.agent-prompt-close svg{height:22px;position:relative;width:22px;z-index:1}.agent-prompt-code-block{position:relative}.agent-prompt-text{background:#f8f8f8;border:1px solid #d5d5d5;border-radius:12px;box-sizing:border-box;color:#333;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.45;max-height:150px;min-height:96px;padding:12px 46px 12px 12px;resize:vertical;width:100%}.agent-prompt-copy{align-items:center;background:#f8f8f8;border:none;color:#333;cursor:pointer;display:inline-flex;height:32px;justify-content:center;line-height:1;padding:6px;right:8px;top:8px;transform:scale(1);width:32px;z-index:2}.agent-prompt-copy,.agent-prompt-copy:before{border-radius:8px;position:absolute;transition:all .25s cubic-bezier(.4,0,.2,1)}.agent-prompt-copy:before{background-color:#2196f326;box-shadow:0 0 0 #2196f300;content:"";inset:0;opacity:0;transform:scale(.95);z-index:0}.agent-prompt-copy.copied:before,.agent-prompt-copy:hover:before{box-shadow:0 2px 12px #2196f340,0 1px 4px #0000001a;opacity:1;transform:scale(1)}.agent-prompt-copy:hover{color:#0275ff;transform:scale(1.04)}.agent-prompt-copy:active{transform:scale(.98)}.agent-prompt-copy .copy-icon-svg{height:20px;position:relative;transition:all .25s cubic-bezier(.4,0,.2,1);width:20px;z-index:1}.agent-prompt-copy:hover .copy-icon-svg{transform:scale(1.05)}@media (max-width:640px){.agent-prompt-shell{bottom:12px;max-width:calc(100vw - 24px);right:12px}.agent-prompt-card{padding:18px;width:calc(100vw - 24px)}}
/*# sourceMappingURL=main.2edfe7da.css.map*/