.mobile-properties-button{display:none}.inline-cell-editor{position:absolute;z-index:8;border:2px solid #e9844d;border-radius:4px;background:#fffdf8;box-shadow:0 2px 12px #172b2a33}.inline-cell-input{width:100%;height:100%;min-width:0;padding:0 4px;border:0;background:transparent;color:#315d50;font:600 16px var(--mono);text-align:center;border-radius:2px}.inline-cell-input:focus{box-shadow:none}.inline-cell-editor.invalid{border-color:#d85050;background:#fff4f4}@media(max-width:760px){.mobile-properties-button{display:inline-flex;width:30px;height:30px;border-radius:5px;color:#8e9ba5;margin-right:5px}.mobile-properties-button.active{background:#fff1e9;color:#c47d58}.properties-collapsed .properties-panel{display:none}}:root{font-family:DM Sans,Segoe UI,Microsoft YaHei,sans-serif;color:#303841;background:#f6f7f9;font-synthesis:none;font-size:12px;font-weight:450;--accent: #dd734c;--accent-light: #fff1e9;--muted: #959ba5;--border: #e9ebef;--mono: "IBM Plex Mono", "Consolas", monospace}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;background:none;color:inherit;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,box-shadow .15s}button:disabled{cursor:default;opacity:.3}button:hover:not(:disabled){background:#f0f2f5}button:focus-visible,a:focus-visible{outline:2px solid #d8784e;outline-offset:3px}input:focus,textarea:focus{outline:none;border-color:#e6a68d!important;box-shadow:0 0 0 3px #e7896420}input[type=number]{appearance:textfield;-moz-appearance:textfield}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=color]{cursor:pointer}input[type=range]{accent-color:var(--accent)}h2,h3,p{margin:0}svg{flex-shrink:0}kbd{font-family:var(--mono);font-size:10px;font-weight:400;color:#9399a1;background:#f3f4f6;padding:2px 5px;border:1px solid #e9ebef;border-radius:4px}a{color:inherit;text-decoration:none}.app-shell{height:100dvh;min-height:600px;display:flex;flex-direction:column;overflow:hidden}.app-header{height:68px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 24px;gap:24px;flex-shrink:0;position:relative;z-index:30}.brand{display:flex;align-items:center;gap:10px}.brand-mark{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:#293b3b;color:#c0e3d6;border-radius:9px;box-shadow:inset 0 0 0 1px #0000000c}.brand strong{font-size:23px;letter-spacing:-1px;font-weight:700;color:#263638}.brand strong>span{font-weight:450}.brand-tag{font-size:11px;color:#8c939d;letter-spacing:1px;margin-left:5px;padding-top:3px}.document-title{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.header-divider{width:1px;height:23px;background:var(--border);margin-right:17px}.document-title>input{width:162px;min-width:60px;max-width:230px;text-overflow:ellipsis;background:transparent;border:1px solid transparent;padding:5px 3px;border-radius:4px;font-size:12px;color:#4e5661}.document-title>input:hover{background:#f6f7f9}.document-extension{font:10px var(--mono);color:#a7adb5;margin-left:-5px}.save-status{display:flex;align-items:center;gap:4px;font-size:10px;color:#8d9696;margin-left:13px;white-space:nowrap}.save-status.saved{color:#6d8d7c}.save-status.error{color:#d1764b}.save-status .live-dot{background:#d1aa71}.header-actions{display:flex;align-items:center;gap:10px}.icon-button{width:30px;height:30px;border-radius:5px;color:#7f8791}.help-button{margin-right:5px}.secondary-button,.primary-button{min-height:34px;padding:0 13px;border:1px solid #e2e5e9;background:#fff;border-radius:6px;font-size:11px;font-weight:500;gap:7px}.primary-button{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 2px 2px #b5613e0c}.primary-button:hover:not(:disabled){background:#c96540;border-color:#c96540}.secondary-button:hover:not(:disabled){background:#f6f7f9;border-color:#d7dce2}.open-button,.export-button{min-width:90px}.toolbar{display:flex;align-items:center;justify-content:space-between;height:55px;background:#fff;padding:0 23px;border-bottom:1px solid #e3e6eb;flex-shrink:0;gap:20px;z-index:5}.tool-list{display:flex;align-items:center;gap:5px}.tool-button{height:33px;padding:0 12px;border-radius:6px;color:#6c737d;position:relative;gap:8px;font-size:12px}.tool-button svg{color:#7f8791}.tool-button kbd{font-size:9px;min-width:16px;padding:1px 3px;margin-left:6px;color:#a8adb5;background:#f7f8fa;border-color:#eef0f2}.tool-button.active{color:#b35c3d;background:var(--accent-light);font-weight:600}.tool-button.active svg{color:#ce754f}.tool-button.active kbd{color:#c4947d;border-color:#ecdace;background:#fff9f5}.tool-separated{margin-left:19px}.tool-separated:before{content:"";position:absolute;left:-12px;height:19px;width:1px;background:var(--border)}.toolbar-right{display:flex;align-items:center;gap:5px}.vertical-divider{height:18px;width:1px;background:var(--border);margin:0 14px}.overlay-button{height:30px;font-size:11px;color:#808792;gap:7px}.overlay-button>i{height:6px;width:6px;border-radius:50%;background:#bbc0c7;margin:0 2px}.overlay-button.enabled>i{background:#6fa691}.editor-layout{display:flex;flex:1;min-height:0;position:relative}.layers-panel{width:218px;background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;z-index:2}.panel-heading{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:0 20px;border-bottom:1px solid #eff0f3;font-weight:600;font-size:12px;color:#424c56}.panel-heading>span:first-child{display:flex;align-items:center;gap:9px}.panel-heading svg{color:#808a96}.count-badge{font:10px var(--mono);color:#8c959f;font-weight:500;background:#f4f5f7;padding:3px 6px;border-radius:4px}.layer-content{padding:21px 14px 0;overflow-y:auto;min-height:0;scrollbar-width:thin}.layer-section-label{display:flex;align-items:center;justify-content:space-between;color:#8f97a2;letter-spacing:.5px;font-size:10px;padding:0 4px;margin-bottom:13px}.layer-section-label>span{font:9px var(--mono);color:#b0b6be}.source-card{border:1px solid #e6e9ed;border-radius:7px;overflow:hidden;background:#fff}.source-image{height:112px;background:#333c37;position:relative;overflow:hidden}.source-image img{width:100%;height:100%;object-fit:cover}.source-image>span{position:absolute;bottom:7px;left:7px;display:flex;align-items:center;gap:3px;padding:3px 5px;background:#182322a3;border:1px solid #ffffff2b;color:#fff;border-radius:3px;font-size:9px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.source-title{display:flex;align-items:center;gap:6px;padding:9px 9px 0;color:#727d89;font-size:9px}.source-title>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#505b68;flex:1}.source-title .icon-button{height:20px;width:18px}.source-meta{display:flex;align-items:center;justify-content:space-between;padding:4px 12px 12px 28px;font:9px var(--mono);color:#a1a7b0}.source-meta>span{font-size:8px;background:#f3f5f6;padding:2px 4px;border-radius:3px;color:#8e969f}.upload-button{width:100%;height:33px;margin-top:9px;border:1px dashed #dfe3e8;border-radius:5px;color:#808995;font-size:10px}.upload-button svg{color:#8f99a4}.elements-label{margin-top:31px;margin-bottom:11px}.element-list{display:flex;flex-direction:column;gap:5px}.layer-row{position:relative;border:1px solid transparent;border-radius:5px;display:flex;align-items:center;transition:background .15s}.layer-row:hover{background:#f7f8fa}.layer-row.selected{background:#fff6f0;border-color:#f0e0d4}.layer-select{width:100%;padding:10px 28px 10px 8px;justify-content:flex-start;gap:9px;text-align:left;border-radius:5px}.layer-select:hover:not(:disabled){background:transparent}.layer-icon{width:29px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:5px;background:#f0f6f4;color:#72988c;flex-shrink:0}.layer-icon.text,.selected-type-icon.text{background:#eef2fa;color:#8999bb}.layer-icon.axes,.selected-type-icon.axes{background:#fbf1e9;color:#c18e63}.layer-row.selected .layer-icon{background:#f6e6db;color:#c58861}.layer-name{display:flex;flex:1;min-width:0;flex-direction:column;font-size:11px;gap:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer-name>small{font-size:9px;color:#a3a8af;font-weight:400;letter-spacing:.2px}.layer-index{font:9px var(--mono);color:#b4bac1;display:none}.layer-eye{position:absolute;right:5px;width:24px;height:28px;color:#a2a9b1;border-radius:4px}.layer-row:not(:hover):not(.selected) .layer-eye{opacity:.55}.hidden-layer .layer-select{opacity:.45}.add-layer{width:100%;height:34px;justify-content:flex-start;padding-left:14px;color:#8c959f;font-size:10px;border-radius:5px;margin-top:8px}.layers-bottom{margin-top:auto;padding:24px 17px 0;background:#fff}.workspace-summary{display:flex;gap:10px;padding:13px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.summary-icon{width:32px;height:33px;background:#f3f5f5;display:flex;align-items:center;justify-content:center;color:#8c9b98;border-radius:7px}.workspace-summary>div{display:flex;flex-direction:column;gap:5px;justify-content:center}.workspace-summary strong{font:600 14px var(--mono);color:#53615f}.workspace-summary strong>span{font:10px Segoe UI,Microsoft YaHei,sans-serif;color:#7e898b}.workspace-summary small{font-size:9px;color:#a5acb4}.shortcuts-button{font-size:10px;color:#9aa2ab;padding:17px 1px 13px;gap:7px;width:100%;justify-content:flex-start}.shortcuts-button svg:last-child{margin-left:auto;color:#afb5bc}.version-label{display:flex;justify-content:space-between;font:7px var(--mono);letter-spacing:1px;color:#bcc1c7;padding-bottom:16px}.canvas-container{flex:1;min-width:0;position:relative;overflow:hidden;background:#eef0f3}.workspace{position:absolute;inset:0;overflow:hidden}.workspace canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;display:block}.ruler{position:absolute;background:#f6f7f9de;color:#a3abb6;font:8px var(--mono);pointer-events:none}.ruler-x{height:22px;top:0;left:0;right:0;border-bottom:1px solid #e2e5ea}.ruler-x>span{position:absolute;top:0;height:22px;padding:3px 0 0 5px;border-left:1px solid #d2d8df}.ruler-y{width:22px;top:0;bottom:0;left:0;border-right:1px solid #e2e5ea}.ruler-y>span{position:absolute;left:0;width:22px;padding:5px 0 0 4px;border-top:1px solid #d2d8df;writing-mode:vertical-lr}.ruler-origin{position:absolute;left:0;top:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:#f7f8fa;border:1px solid #e1e5ea;border-top:0;border-left:0;color:#9da5b0;font:7px var(--mono)}.canvas-heading{display:flex;position:absolute;top:42px;left:43px;gap:13px;align-items:center;pointer-events:none}.canvas-document{display:flex;gap:6px;align-items:center;font-size:10px;color:#777f8a}.canvas-document svg{color:#939da9}.canvas-size{font:8px var(--mono);color:#a4acb6;padding-left:12px;border-left:1px solid #d9dfe5}.canvas-corner{position:absolute;right:22px;top:44px;display:flex;align-items:center;gap:6px;font-size:8px;color:#939ca6;pointer-events:none}.live-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#79a28e;flex-shrink:0}.thin-divider{height:9px;width:1px;background:#d5dbe2;margin:0 3px}.canvas-image-label{position:absolute;color:#89929c;white-space:nowrap;pointer-events:none;font-size:9px;display:flex;align-items:center;gap:7px}.canvas-image-label>span{font:8px var(--mono);color:#a3adb5;border:1px solid #ccd4dc;border-radius:3px;padding:1px 4px}.canvas-bottom-note{position:absolute;bottom:26px;left:40px;display:flex;align-items:center;gap:7px;color:#939ca7;font-size:9px;pointer-events:none;max-width:calc(100% - 245px);line-height:1.6}.canvas-bottom-note>svg{color:#a1a9b2}.zoom-controls{position:absolute;bottom:20px;right:22px;display:flex;align-items:center;background:#fff;border:1px solid #e2e6eb;border-radius:7px;height:36px;padding:3px;box-shadow:0 2px 8px #283d4b07;z-index:1}.zoom-controls>button{height:28px;min-width:28px;border-radius:4px;color:#7d8693;gap:2px}.zoom-controls .zoom-value{font:10px var(--mono);min-width:51px;color:#5f6a78}.zoom-value>span{font-size:9px;color:#959ea8}.zoom-controls>span{height:15px;width:1px;background:var(--border);margin:0 3px}.draw-dimensions{position:absolute;left:50%;bottom:75px;transform:translate(-50%);background:#243f3ee8;color:#ecfaf5;padding:9px 12px;border-radius:6px;box-shadow:0 3px 12px #0002;display:flex;align-items:center;gap:12px;font:10px var(--mono);pointer-events:none}.draw-dimensions>b{padding-left:12px;border-left:1px solid #ffffff35;color:#88dfc1}.properties-panel{width:294px;flex-shrink:0;background:#fff;border-left:1px solid var(--border);display:flex;flex-direction:column;z-index:2}.properties-panel>.panel-heading{padding:0 21px}.panel-tool-badge{font:8px var(--mono);letter-spacing:.8px;color:#b5a291;font-weight:400}.properties-content{overflow:auto;min-height:0;flex:1;scrollbar-width:thin;scrollbar-color:#dfe3e8 transparent}.panel-section{padding:22px 21px;border-bottom:1px solid #eff0f3}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;min-height:15px}.section-heading h3{font-size:11px;font-weight:600;color:#5e6773}.section-meta{font-size:9px;color:#a7aeb7}.segmented{display:flex;padding:3px;border:1px solid #ebedf0;background:#f5f6f8;border-radius:6px;margin-bottom:21px;height:35px}.segmented>button{flex:1;border-radius:4px;font-size:10px;color:#9098a3}.segmented>button.active{background:#fff;color:#4b5562;box-shadow:0 1px 4px #25344910;font-weight:500}.field-pair{display:flex;align-items:flex-end;gap:10px}.number-field{display:flex;flex-direction:column;gap:7px;min-width:0;flex:1}.number-field>span,.text-field{font-size:10px;color:#929aa5}.number-field>div{display:flex;border:1px solid #e5e8ed;background:#fafbfc;height:34px;border-radius:5px;align-items:center;position:relative;overflow:hidden}.number-field>div:focus-within{border-color:#dfa88e;box-shadow:0 0 0 3px #e7896415}.number-field input{width:100%;min-width:0;border:0;background:transparent;box-shadow:none!important;height:100%;padding:0 10px;color:#647180;font:11px var(--mono)}.number-field>div>span{font:9px var(--mono);color:#a9b0ba;padding-right:10px;flex-shrink:0}.field-times{height:34px;display:flex;align-items:center;color:#b8bfc6;font:14px var(--mono);margin:0 -2px}.field-hint{font-size:9px;color:#a1a9b3;line-height:1.8;margin-top:10px}.grid-visual{display:flex;align-items:center;gap:13px;background:#f7f9f9;border:1px solid #e8eded;border-radius:6px;padding:13px 12px;margin-top:18px}.mini-grid{display:grid;border-left:1px solid #92b8a9;border-top:1px solid #92b8a9;width:68px;height:42px;opacity:.8;background:#edf4f1;flex-shrink:0}.mini-grid>i{border-right:1px solid #92b8a9;border-bottom:1px solid #92b8a9}.grid-visual>div:last-child{display:flex;flex-direction:column;gap:7px}.grid-visual strong{font:500 15px var(--mono);color:#65867a}.grid-visual strong>span{color:#9db2a9;font-size:12px}.grid-visual small{font-size:9px;color:#a0aba9}.inline-label{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#949ca7;margin-bottom:11px}.inline-label>span{font:9px var(--mono);color:#a3acb7;text-transform:uppercase}.swatches{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding-bottom:18px}.swatches>button{width:23px;height:23px;padding:0;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px #16263d17;color:#3e7163;position:relative}.swatches>button:hover:not(:disabled){background:var(--swatch);transform:scale(1.1)}.swatches>button.chosen:after{content:"";position:absolute;inset:-3px;border:1px solid #8fae9d;border-radius:50%}.custom-color{width:23px;height:23px;display:flex;align-items:center;justify-content:center;border:1px dashed #d7dce2;border-radius:50%;position:relative;cursor:pointer;color:#a3abb4}.custom-color>input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.line-width{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#929aa6;margin-bottom:7px}.line-width>div{width:85px}.line-width .number-field{gap:0}.line-width .number-field>span{display:none}.line-width .number-field>div{height:30px}.toggle-row{display:flex;width:100%;justify-content:space-between;padding:11px 0;font-size:10px;color:#7c8692}.toggle-row:hover:not(:disabled){background:none;color:#3b4653}.toggle-row>span{display:flex;flex-direction:column;gap:5px;text-align:left}.toggle-row small{font-size:9px;color:#a5aeb8}.switch{width:26px;height:15px;background:#dce1e7;border-radius:9px;display:flex;align-items:center;padding:2px;flex-shrink:0;transition:background .2s}.switch>b{display:block;height:11px;width:11px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0002;transition:transform .15s}.switch.on{background:#83a494}.switch.on>b{transform:translate(11px)}.panel-tip{padding:25px 20px 29px;margin:21px;border:1px solid #eeeee9;border-radius:7px;background:linear-gradient(145deg,#fcfcfa,#f7f8f5);display:flex;flex-direction:column}.tip-icon{color:#98a38e;margin-bottom:15px}.panel-tip>strong{font-size:11px;color:#7d8777;font-weight:500;margin-bottom:9px}.panel-tip>p{font-size:10px;line-height:1.9;color:#a3aaa0}.panel-tip>div:last-child{display:flex;align-items:center;gap:5px;font-size:8px;color:#a1aa9b;margin-top:19px}.panel-tip>div:last-child>span{font:8px var(--mono);color:#a7b29e}.panel-tip>div:last-child>i{height:1px;width:13px;background:#d6ddd0;margin:0 1px}.properties-footer{min-height:40px;border-top:1px solid var(--border);padding:0 16px;display:flex;align-items:center;font-size:8px;color:#a5acb5;gap:6px;flex-shrink:0}.properties-footer .live-dot{height:4px;width:4px;background:#9bad9e}.properties-footer>span:last-child{margin-left:auto;color:#b5bdc5;font-size:7px}.selected-element-heading{display:flex;align-items:center;gap:10px;padding:19px 17px;border-bottom:1px solid #eff0f3}.selected-type-icon{height:35px;width:35px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#eff6f3;color:#82a394;flex-shrink:0}.selected-element-heading>div{flex:1;display:flex;flex-direction:column;min-width:0;gap:5px}.selected-element-heading input{width:100%;padding:1px 0;background:transparent;border:0;font-size:12px;color:#4e5b65;text-overflow:ellipsis}.selected-element-heading small{font-size:9px;color:#a1a9b1}.selected-element-heading .icon-button{height:24px;width:22px;align-self:flex-start;color:#aeb5be}.rotation-field{display:flex;align-items:center;gap:9px;margin-top:13px;color:#9ba5b0}.rotation-field .number-field{flex-direction:row;align-items:center;justify-content:space-between}.rotation-field .number-field>div{width:99px;flex-shrink:0}.text-icon-button{color:#99a3ad;padding:0;width:20px;height:18px;border-radius:3px}.unit-badge{font:9px var(--mono);color:#9fa8b4;background:#f4f6f8;border:1px solid #eceff2;padding:2px 5px;border-radius:3px}.data-summary{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px}.data-summary>div{display:flex;flex-direction:column;gap:8px}.data-summary strong{font:500 23px var(--mono);color:#586d62}.data-summary strong>small{font:12px var(--mono);color:#aeb7b0}.data-summary>div>span{font-size:9px;color:#a0aaa4}.progress-ring{height:42px;width:42px;border-radius:50%;background:conic-gradient(#96b5a4 var(--progress),#eef1ed 0);display:flex;align-items:center;justify-content:center;position:relative;font:10px var(--mono);color:#88a08e;isolation:isolate}.progress-ring:before{content:"";position:absolute;inset:3px;border-radius:50%;background:#fff;z-index:-1}.progress-ring>small{font-size:7px}.stat-pair{display:flex;padding:12px 0;border-top:1px solid #f0f1f3;margin-bottom:12px}.stat-pair>div{display:flex;flex-direction:column;gap:7px;width:50%;padding-left:12px;border-left:1px solid #eceff2}.stat-pair>div:first-child{border:0;padding:0}.stat-pair small{font-size:9px;color:#a0a8b1}.stat-pair b{font:500 14px var(--mono);color:#6b7b74}.full{width:100%}.full>svg:last-child{margin-left:auto}.element-actions{display:flex;gap:9px}.element-actions>button{flex:1;font-size:10px}.danger{color:#bf7965}.eraser-preview{height:130px;border:1px solid #eceff2;border-radius:6px;background-color:#f8f9fb;background-image:linear-gradient(#e6eaf088 1px,transparent 1px),linear-gradient(90deg,#e6eaf088 1px,transparent 1px);background-size:18px 18px;display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:18px}.eraser-preview>div{border:1.5px solid #db8467;border-radius:50%;background:#e7977920;position:absolute;top:43%;transform:translateY(-50%)}.eraser-preview>span{position:absolute;bottom:14px;font-size:9px;color:#b3a39c}.range-input{width:100%;height:3px;margin:22px 0 0;cursor:pointer}.range-labels{display:flex;justify-content:space-between;font:9px var(--mono);color:#afb7bf;margin-top:9px}.radio-stack{display:flex;flex-direction:column;gap:21px}.radio-stack>label{display:flex;align-items:flex-start;gap:7px;cursor:pointer}.radio-stack input{accent-color:#d87c56;margin:1px 0 0}.radio-stack label>span{font-size:11px;color:#78818b}.radio-stack small{display:block;font-size:9px;line-height:1.7;color:#a5adb6;margin-top:5px}.info-note{display:flex;align-items:flex-start;gap:8px;background:#f7f8f9;border:1px solid #eef0f2;border-radius:5px;padding:13px 11px;margin:20px;color:#abb3ba}.info-note>p{font-size:9px;line-height:1.9;color:#98a2ac}.info-note kbd{font-size:8px;padding:1px 3px;background:#fff}.text-editor{resize:vertical;width:100%;border:1px solid #e0e5e9;border-radius:5px;padding:10px;color:#697480;background:#fafbfc;font-size:11px;line-height:1.8}.color-field{display:flex;align-items:center;justify-content:space-between;margin:19px 0;font-size:10px;color:#929ca7}.color-field>input{width:50px;height:27px;padding:2px;background:#fff;border:1px solid #e5e9ee;border-radius:4px}.text-field{display:flex;flex-direction:column;gap:7px;flex:1;min-width:0}.text-field>input{background:#fafbfc;border:1px solid #e5e9ee;border-radius:5px;height:34px;padding:0 10px;min-width:0;width:100%;color:#687786}.text-field+.text-field{margin:0}.text-field~.number-field,.panel-section>.number-field+.number-field,.field-pair+.number-field{margin-top:16px}.panel-empty{display:flex;align-items:center;flex-direction:column;text-align:center;padding:56px 30px;color:#b3bdc8;gap:19px}.panel-empty>strong{font-size:12px;font-weight:500;color:#8d98a3}.panel-empty>p{font-size:10px;line-height:1.9;color:#adb5bd}.status-bar{display:flex;align-items:center;justify-content:space-between;height:30px;flex-shrink:0;background:#fff;border-top:1px solid #e1e5eb;padding:0 18px;color:#8f99a4;font-size:9px;z-index:3;gap:16px}.status-bar>div{display:flex;align-items:center;gap:12px;white-space:nowrap}.status-ready{display:flex;align-items:center;gap:6px;color:#8a9c91}.status-ready>i{width:5px;height:5px;border-radius:50%;background:#7ea78d}.status-divider{height:10px;width:1px;background:#e5e9ed}.status-hint{margin-left:7px;color:#b0b6be;font-size:8px}.coordinates{font:8px var(--mono);color:#adb4be;display:flex;gap:7px;align-items:center}.coordinates>b{font-weight:400;color:#8e9aa6;min-width:22px;text-align:right}.coordinates>span{margin-left:7px}.status-bar b{font-weight:450}.scale-indicator{display:flex;align-items:center;gap:6px;font:8px var(--mono);color:#a0aab4}.scale-indicator>i{height:5px;width:37px;border:1px solid #abb6bf;border-top:0}.menu-anchor{position:relative;z-index:40}.dropdown{position:absolute;right:0;top:45px;width:260px;padding:6px;background:#fff;border:1px solid #e1e6eb;box-shadow:0 8px 30px #28384917;border-radius:9px}.dropdown>button{display:flex;justify-content:flex-start;align-items:center;width:100%;padding:11px 10px;gap:11px;border-radius:5px;font-size:11px;color:#7e8995;text-align:left}.dropdown>button>span:not(.format){display:flex;flex-direction:column;color:#596674;gap:5px;flex:1;font-size:11px}.dropdown small{font-size:9px;color:#a3aeb8;font-weight:400}.format{font:8px var(--mono);color:#abb5bf;background:#f4f6f7;border:1px solid #edf0f3;border-radius:3px;padding:3px 4px}.dropdown-caption{padding:9px 11px;font-size:9px;color:#a8afb8;letter-spacing:.5px}.dropdown hr{border:0;border-top:1px solid var(--border);margin:5px 8px}.dropdown kbd{font-size:8px}.menu-dismiss{position:fixed;inset:0;z-index:20}.toast{position:fixed;bottom:51px;left:50%;transform:translate(-50%);z-index:80;display:flex;align-items:center;gap:10px;background:#fff;padding:12px 15px;border:1px solid #dfe5e8;box-shadow:0 4px 24px #24374c14;border-radius:8px;font-size:11px;max-width:min(90vw,650px);color:#6e7e7b;animation:toast-in .2s ease-out}.toast>span{display:flex;align-items:center;justify-content:center;color:#799b88;width:22px;height:22px;background:#eef5f0;border-radius:50%;flex-shrink:0}.toast>button{margin-left:7px;color:#a9b2b8;width:20px;height:20px;border-radius:3px}.modal-backdrop{position:fixed;inset:0;z-index:70;background:#22303c52;display:flex;align-items:center;justify-content:center;padding:25px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{background:#fff;border-radius:13px;border:1px solid #ffffff88;box-shadow:0 20px 70px #17253429;padding:28px;max-height:90dvh;overflow:auto;animation:toast-in .18s ease-out;width:620px;max-width:100%}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.eyebrow{font:8px var(--mono);letter-spacing:1.6px;color:#bba08d;display:block;margin-bottom:12px}.modal h2{font-size:21px;font-weight:550;letter-spacing:-.3px;color:#3e4d52;line-height:1.6}.modal-header p{font-size:11px;line-height:1.8;color:#99a3ab;margin-top:7px}.modal-header>.icon-button{margin:-8px -8px 0 0}.guide-steps{display:flex;margin:28px 0;padding-bottom:27px;border-bottom:1px solid #eceff2;gap:15px}.guide-steps>div{flex:1;display:flex;flex-direction:column;gap:8px}.guide-steps>div>span{font:10px var(--mono);color:#c5a58f;margin-bottom:5px}.guide-steps strong{font-weight:500;color:#657673;font-size:12px}.guide-steps p{font-size:9px;color:#a4acae;line-height:1.8}.shortcuts-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 25px}.shortcuts-grid>div{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#909ba5;gap:8px}.shortcuts-grid kbd{font-size:8px;white-space:nowrap;color:#8a97a3;background:#f8f9fb;border-color:#e7ecf0}.modal-footer{margin-top:27px;border-top:1px solid #edf0f2;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:15px}.modal-footer>span{font-size:9px;color:#a4aeb6;line-height:1.7}.cell-modal{width:390px}.cell-modal .modal-header h2{font-size:21px}.thickness-input{margin-top:29px;display:flex;align-items:center;border:1px solid #dce5df;border-radius:7px;overflow:hidden;background:#fafcfb;height:67px}.thickness-input>input{border:0;background:transparent;height:100%;width:100%;padding:0 20px;font:500 27px var(--mono);color:#678674;min-width:0}.thickness-input>input:focus{box-shadow:none}.thickness-input>input::placeholder{color:#cfdbd3}.thickness-input>span{font:13px var(--mono);color:#aab9ae;padding-right:20px}.cell-modal .modal-footer{gap:9px}.cell-modal .modal-footer>button:first-child{flex:1}.cell-modal .modal-footer>button:last-child{min-width:90px}.data-modal{width:860px}.data-table-scroll{overflow:auto;margin-top:25px;border:1px solid #e5e9ed;border-radius:6px}.data-table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:350px;font:11px var(--mono)}.data-table th{font-weight:500;background:#f5f8f7;color:#8ca598;font-size:10px;height:37px;border-bottom:1px solid #e6ece8;border-right:1px solid #e6ece8;width:60px}.data-table td{border:1px solid #edf0f1;height:42px;min-width:60px;text-align:center}.data-table input{width:100%;min-width:0;background:transparent;border:1px solid transparent;height:40px;font:11px var(--mono);color:#688775;text-align:center}.data-table input::placeholder{color:#cbd4cf}.data-table .deleted-cell{background:repeating-linear-gradient(135deg,#f4f5f6,#f4f5f6 4px,#fafbfc 4px 8px);color:#c6cbd0}.data-pagination{display:flex;justify-content:space-between;gap:10px;padding-top:13px}.data-pagination>div{display:flex;align-items:center;gap:8px;font-size:9px;color:#9aa7af}.data-pagination button{font-size:9px;padding:4px;border:1px solid #e5e9eb;border-radius:3px}.data-modal .modal-footer{margin-top:20px}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:#dce1e5;border-radius:5px}::-webkit-scrollbar-track{background:transparent}@keyframes toast-in{0%{opacity:0;translate:0 7px}to{opacity:1;translate:0 0}}@media(min-width:1600px){.layers-panel{width:238px}.properties-panel{width:316px}.layer-content{padding:23px 19px 0}.source-image{height:130px}.panel-section{padding:25px}.panel-heading{min-height:58px}.toolbar{height:59px}.app-header{height:73px}.canvas-bottom-note,.source-title{font-size:10px}.panel-tip{margin:25px;padding:29px 20px}.properties-panel>.panel-heading{padding:0 25px}.selected-element-heading{padding:21px}.brand-tag{font-size:12px}}@media(max-width:1190px){.brand-tag{display:none}.app-header{gap:18px;padding:0 18px}.layers-panel{width:192px}.properties-panel{width:270px}.panel-section{padding:18px}.panel-heading{padding:0 17px}.source-image{height:99px}.save-status{margin-left:8px}.document-title>input{width:145px}.canvas-corner{display:none}.canvas-size{font-size:7px}.canvas-bottom-note{font-size:8px;max-width:calc(100% - 225px);left:35px}.tool-button{padding:0 9px}.swatches{gap:7px}.status-hint{display:none}.brand{gap:8px}}@media(max-width:960px){.layers-panel{width:164px}.layer-content{padding:18px 10px 0}.properties-panel{width:247px}.source-image{height:85px}.source-title{padding-left:7px;font-size:8px;gap:3px}.source-meta{padding-left:10px;font-size:8px}.layers-bottom{padding-left:12px;padding-right:12px}.source-title>.icon-button{width:14px}.document-extension,.save-status,.canvas-size{display:none}.brand strong{font-size:21px}.app-header{height:61px}.toolbar{padding:0 15px}.tool-button{padding:0 8px;gap:6px}.tool-button kbd{display:none}.tool-separated{margin-left:13px}.overlay-button span{display:none}.vertical-divider{margin:0 9px}.panel-section{padding:18px 16px}.swatches{gap:7px}.swatches>button,.custom-color{height:21px;width:21px}.grid-visual{padding:11px;gap:10px}.mini-grid{width:61px}.panel-tip{margin:16px;padding:20px 14px}.panel-tip>strong{font-size:10px}.panel-tip>p{font-size:9px}.panel-tip>div:last-child{font-size:7px}.properties-footer{padding:0 11px;font-size:7px}.canvas-bottom-note{display:none}.zoom-controls{right:15px}.coordinates>b{min-width:15px}.status-bar{font-size:8px;padding:0 12px}.status-bar>div{gap:9px}.scale-indicator{display:none}.properties-panel>.panel-heading{padding:0 16px}.source-title>svg{display:none}.layer-select{padding-left:3px;gap:6px}.layer-icon{width:25px;height:27px}.layer-name{font-size:10px}.version-label{letter-spacing:.5px;font-size:6px}.header-actions{gap:7px}.help-button{margin:0}}@media(max-width:760px){.layers-panel{display:none}.properties-panel{width:235px}.document-title{display:none}.app-header{justify-content:space-between;padding:0 14px}.brand strong{font-size:22px}.help-button{display:none}.toolbar{padding:0 10px;height:50px;gap:8px}.tool-list{gap:2px}.tool-button{font-size:11px;padding:0 7px;gap:5px}.tool-button>svg{width:16px;height:16px}.tool-separated{margin-left:5px}.tool-separated:before{display:none}.toolbar-right{gap:0}.toolbar-right>.vertical-divider,.overlay-button{display:none}.toolbar-right>.icon-button{width:27px}.app-shell{min-height:540px}.canvas-heading{top:36px;left:34px}.canvas-document{font-size:8px}.canvas-document>svg{display:none}.canvas-image-label{font-size:8px}.zoom-controls{height:32px;bottom:14px;right:12px}.zoom-controls>button{min-width:25px;height:25px}.zoom-controls>.zoom-value{min-width:41px;font-size:9px}.status-bar>div:last-child{display:none}.properties-footer>span:last-child{display:none}.panel-section{padding:17px 14px}.section-heading{margin-bottom:14px}.properties-panel>.panel-heading{padding:0 14px;min-height:48px}.selected-element-heading{padding:16px 12px}.panel-tool-badge{font-size:7px}.swatches{gap:7px}.swatches>button,.custom-color{width:20px;height:20px}.field-pair{gap:7px}.mini-grid{width:54px}.grid-visual{gap:10px}.grid-visual strong{font-size:14px}.panel-tip{margin:14px;padding:18px 12px}.panel-tip>div:last-child{gap:3px}.guide-steps{gap:10px}.shortcuts-grid{grid-template-columns:1fr}.modal{padding:22px}.modal h2{font-size:18px}.modal-footer{align-items:flex-start}.help-modal .modal-footer>span{max-width:60%}.data-pagination{flex-direction:column}.data-pagination>div{justify-content:space-between}.data-table{min-width:500px}}@media(max-width:480px){.properties-panel{width:196px}.panel-tool-badge{display:none}.tool-button{padding:0 6px}.tool-button>span{display:none}.tool-button>svg{width:18px;height:18px}.tool-button{width:34px;height:32px}.tool-list{gap:4px}.toolbar-right>.icon-button{width:26px}.open-button,.export-button{min-width:72px;padding:0 9px;font-size:10px}.app-header{padding:0 11px}.brand-mark{height:30px;width:30px}.brand strong{font-size:20px}.header-actions{gap:5px}.swatches{gap:6px;flex-wrap:wrap}.swatches>button,.custom-color{height:19px;width:19px}.swatches{padding-bottom:15px}.mini-grid{width:44px;height:33px}.grid-visual{padding:9px 7px;gap:8px}.grid-visual strong{font-size:12px}.grid-visual small{font-size:8px}.panel-tip>div:last-child{flex-wrap:wrap;line-height:1.7}.panel-tip p{font-size:8px}.panel-tip strong{font-size:9px}.properties-footer{font-size:6px}.number-field input{padding:0 7px;font-size:10px}.number-field>div>span{padding-right:6px;font-size:8px}.field-times{font-size:11px}.segmented>button{font-size:8px}.segmented{height:32px;margin-bottom:16px}.canvas-heading,.canvas-image-label{display:none}.canvas-container{min-width:130px}.zoom-controls{right:9px;left:30px;justify-content:center}.zoom-controls>button{min-width:21px}.zoom-controls>.zoom-value{min-width:34px;font-size:8px}.zoom-controls>span{margin:0 1px}.panel-heading{font-size:11px}.panel-empty{padding:40px 20px}.modal-backdrop{padding:15px}.guide-steps{flex-direction:column;gap:18px}.guide-steps>div{display:grid;grid-template-columns:23px 1fr;gap:4px 9px}.guide-steps p{grid-column:2}.guide-steps>div>span{grid-row:1/3;margin:0}.help-modal .modal-footer{flex-direction:column;gap:13px}.help-modal .modal-footer>span{max-width:100%}.help-modal .modal-footer>.primary-button{width:100%}.modal h2{font-size:17px}.toast{font-size:10px;padding:10px;max-width:94vw;gap:7px;width:max-content}.cell-modal .modal-footer{gap:6px}.cell-modal .secondary-button{font-size:10px;padding:0 8px}.data-modal .modal-footer>span{font-size:8px}.data-modal .modal-footer .primary-button{padding:0 10px;min-width:70px}}.completion-button{margin-top:9px}.completion-panel-note{color:var(--muted);font-size:11px;margin:10px 0 0}.completion-modal{width:min(560px,100%)}.completion-body{padding:20px 0 22px}.completion-summary{font-size:12px;line-height:1.8;color:#66737f;margin:0 0 20px}.completion-body fieldset{border:0;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:18px}.completion-color{display:flex;align-items:center;gap:10px;font-size:12px;flex-wrap:wrap}.completion-color>span{width:100%}.completion-color small{color:#78838e;font-size:10px;margin-left:10px}.completion-color input{width:32px;height:30px;padding:2px;background:#fafbfc;border:1px solid #e2e6ea;border-radius:5px;cursor:pointer}.completion-color code{font-size:11px;color:#66737f}.completion-hint{color:#71808b;font-size:11px;line-height:1.9;margin:18px 0 0}.completion-error{color:#b34832;font-size:12px;line-height:1.7}.completion-modal .modal-footer{gap:10px;flex-wrap:wrap}.completion-modal .modal-footer>span{margin-right:auto}@media(max-width:500px){.completion-body{padding:20px 0 18px}.completion-body fieldset{grid-template-columns:1fr;gap:12px}}.export-image-modal{width:min(560px,100%)}.export-scale-field{display:grid;gap:10px;color:#66737f;font-size:12px}.export-scale-field select{width:100%;border:1px solid #e2e6ea;border-radius:6px;background:#fafbfc;color:#3e4d52;padding:10px}.export-resolution{display:grid;gap:10px;padding:20px;margin-top:20px;border:1px solid #e5ece9;border-radius:8px;background:#f7faf9}.export-resolution>span{color:#66737f;font-size:11px}.export-resolution strong{color:#315d50;font:500 23px var(--mono)}.export-resolution small{display:block;font:11px var(--mono);color:#71808b;margin-top:8px}.export-size-note{color:#9d652f;font-size:11px;line-height:1.9;margin-top:16px}.export-image-modal .modal-footer{gap:10px;flex-wrap:wrap}.export-image-modal .modal-footer>span{margin-right:auto}
