@import"https://fonts.googleapis.com/css2?family=Space+Mono:wght@400;700&family=Syne:wght@400;700;800&display=swap";.svg-code-viewer{position:fixed;z-index:4000;background:var(--surface);border:1px solid rgba(255,255,255,.12);border-radius:12px;box-shadow:0 20px 60px #000000b3,0 0 20px #e8ff470a;display:flex;flex-direction:column;overflow:hidden;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);animation:scvSlideIn .3s cubic-bezier(.34,1.56,.64,1);min-width:280px;min-height:200px}@keyframes scvSlideIn{0%{opacity:0;transform:scale(.92) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}.scv-header{display:flex;align-items:center;gap:.7rem;padding:.55rem .8rem;background:linear-gradient(to right,rgba(232,255,71,.06),transparent);border-bottom:1px solid var(--border);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0}.scv-header:active{cursor:grabbing}.scv-title{font-family:var(--font-body);font-size:.8rem;font-weight:800;display:flex;align-items:center;gap:.5rem;color:var(--text);letter-spacing:-.02em;white-space:nowrap}.scv-title svg{color:var(--accent);filter:drop-shadow(0 0 4px rgba(232,255,71,.3))}.scv-stats{font-family:var(--font-mono);font-size:.6rem;opacity:.4;margin-right:auto;letter-spacing:.04em;white-space:nowrap}.scv-close{background:#ffffff08;border:1px solid transparent;color:var(--muted);font-size:.9rem;cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .25s;flex-shrink:0}.scv-close:hover{background:#ff4f4f26;color:var(--red);transform:rotate(90deg);border-color:#ff4f4f33}.scv-body{flex:1;min-height:0;padding:.5rem;background:#050508}.scv-textarea{width:100%;height:100%;background:#0006;border:1px solid rgba(255,255,255,.05);border-radius:6px;color:#51ff00;font-family:JetBrains Mono,Fira Code,Space Mono,monospace;font-size:.75rem;line-height:1.55;resize:none;outline:none;padding:.8rem;-moz-tab-size:4;tab-size:4;transition:border-color .3s;display:block;box-sizing:border-box}.scv-textarea:focus{border-color:#e8ff4740}.scv-textarea::selection{background:var(--accent);color:#000}.scv-resize-handle{position:absolute;bottom:0;right:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:nwse-resize;color:var(--muted);opacity:.4;transition:opacity .2s}.scv-resize-handle:hover{opacity:1;color:var(--accent)}.tb-sensitivity-wrap{display:flex;align-items:center;gap:.3rem;padding:0 .25rem}.tb-sensitivity-wrap .tb-sens-label{font-size:.55rem;opacity:.6;white-space:nowrap;text-transform:uppercase;letter-spacing:.03em}.tb-sensitivity-wrap input[type=range]{width:60px;height:4px;accent-color:var(--accent)}.tb-sensitivity-wrap .tb-sens-val{font-size:.6rem;font-family:var(--font-mono);min-width:18px;text-align:right;opacity:.7}.live-edit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05050ae6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;z-index:5000;opacity:0;pointer-events:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.live-edit-overlay.open{opacity:1;pointer-events:auto}.live-edit-modal{width:1200px;max-width:98vw;height:90vh;background:var(--surface);border:1px solid rgba(255,255,255,.1);border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 42px 100px #000c,0 0 40px #e8ff470d;transform:scale(.94) translateY(30px);transition:all .5s cubic-bezier(.34,1.56,.64,1)}.live-edit-overlay.open .live-edit-modal{transform:scale(1) translateY(0)}.live-edit-header{padding:1rem 1.8rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:1rem;background:linear-gradient(to right,rgba(232,255,71,.05),transparent)}.live-edit-title{font-family:var(--font-body);font-size:1.1rem;font-weight:800;display:flex;align-items:center;gap:.8rem;color:var(--text);letter-spacing:-.02em}.live-edit-title svg{color:var(--accent);filter:drop-shadow(0 0 5px rgba(232,255,71,.3))}.live-edit-title span{color:var(--accent)}.live-edit-hint{font-family:var(--font-mono);font-size:.65rem;opacity:.4;margin-right:auto;letter-spacing:.05em;text-transform:uppercase}.live-edit-close{background:#ffffff08;border:1px solid transparent;color:var(--muted);font-size:1.1rem;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s}.live-edit-close:hover{background:#ff4f4f26;color:var(--red);transform:rotate(90deg);border-color:#ff4f4f33}.live-edit-body{flex:1;display:flex;position:relative;background:#050508;overflow:hidden}.live-edit-code-pane{flex:1;min-width:0;padding:1rem;border-right:1px solid rgba(255,255,255,.1)}.live-edit-textarea{width:100%;height:100%;background:#0006;border:1px solid rgba(255,255,255,.05);border-radius:8px;color:#51ff00;font-family:JetBrains Mono,Fira Code,Space Mono,monospace;font-size:.85rem;line-height:1.6;resize:none;outline:none;padding:1.2rem;-moz-tab-size:4;tab-size:4;transition:border-color .3s}.live-edit-textarea:focus{border-color:#e8ff4733}.live-edit-preview-pane{flex:1;min-width:0;background-color:#111;background-image:linear-gradient(45deg,#1a1a1a 25%,transparent 25%),linear-gradient(-45deg,#1a1a1a 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1a1a1a 75%),linear-gradient(-45deg,transparent 75%,#1a1a1a 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px;display:flex;align-items:center;justify-content:center;padding:2rem;overflow:auto;cursor:crosshair}.live-edit-preview-container [data-loc]{transition:filter .2s,stroke-width .2s;cursor:pointer}.live-edit-preview-container [data-loc]:hover{filter:drop-shadow(0 0 8px rgba(232,255,71,.8)) brightness(1.2);outline:2px dashed var(--accent);outline-offset:4px}.live-edit-textarea::selection{background:var(--accent);color:#000}.live-edit-preview-container{max-width:100%;max-height:100%;filter:drop-shadow(0 20px 40px rgba(0,0,0,.5))}.live-edit-preview-container svg{max-width:100%;max-height:100%;display:block}.live-edit-footer{padding:1rem 1.8rem;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:var(--surface)}.live-edit-stats{font-family:var(--font-mono);font-size:.65rem;color:var(--muted);display:flex;gap:1.5rem}.live-edit-actions{display:flex;gap:1rem}.live-edit-btn-copy,.live-edit-btn-refresh,.live-edit-btn-close{padding:.6rem 1.6rem;border-radius:8px;font-weight:700;font-size:.85rem;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);font-family:var(--font-body);display:flex;align-items:center;justify-content:center}.live-edit-btn-refresh{background:#e8ff470d;color:var(--accent);border:1px solid rgba(232,255,71,.2)}.live-edit-btn-refresh:hover{background:#e8ff4726;border-color:var(--accent);transform:translateY(-2px);box-shadow:0 5px 15px #e8ff471a}.live-edit-btn-refresh:active{transform:scale(.95)}.live-edit-btn-copy{background:#ffffff0d;color:var(--text);border:1px solid var(--border)}.live-edit-btn-copy:hover{background:#ffffff1a;border-color:var(--accent);transform:translateY(-2px)}.live-edit-btn-copy.copied{background:var(--accent);color:#000;border-color:var(--accent)}.live-edit-btn-close{background:var(--accent);color:#000;border:1px solid var(--accent)}.live-edit-btn-close:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 8px 20px #e8ff4740}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0a0a0f;--surface: #111118;--surface2: #18181f;--surface3: #1e1e28;--accent: #e8ff47;--accent2: #7c3aed;--red: #ff4f4f;--green: #4ade80;--text: #efefef;--muted: #5a5a72;--border: #25253a;--font-body: "Syne", sans-serif;--font-mono: "Space Mono", monospace}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#0000001a}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#fff3}.color-palette-scroll::-webkit-scrollbar{height:4px}.color-palette-scroll::-webkit-scrollbar-thumb{background:#ffffff26}.tb-flyout{position:absolute;left:60px;top:50%;transform:translateY(-50%);width:260px;max-height:520px;background:var(--surface2);border:1px solid var(--border);border-radius:12px;z-index:100;display:flex;flex-direction:column;box-shadow:20px 0 60px #000000b3;animation:flyoutIn .3s cubic-bezier(.16,1,.3,1);overflow:hidden}@keyframes flyoutIn{0%{transform:translateY(-50%) translate(-20px);opacity:0}to{transform:translateY(-50%) translate(0);opacity:1}}.tb-flyout-header{padding:14px 16px;font-size:11px;font-weight:800;color:var(--accent);letter-spacing:.15em;border-bottom:1px solid var(--border);background:#ffffff05;text-transform:uppercase}.icon-lib-content{display:flex;flex-direction:column;height:100%;overflow:hidden}.icon-search-input{background:#0000004d;border:none;border-bottom:1px solid var(--border);color:#fff;padding:10px 12px;font-size:12px;outline:none}.icon-grid{flex:1;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:10px;overflow-y:auto}.icon-item-btn{aspect-ratio:1;background:#ffffff08;border:1px solid transparent;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text);transition:all .2s}.icon-item-btn:hover{background:var(--surface3);border-color:var(--accent);color:var(--accent)}.layers-actions-sleek{padding:2px;display:flex;flex-direction:column;gap:10px;background:linear-gradient(180deg,rgba(255,255,255,.04) 0%,transparent 100%);border-bottom:1px solid var(--border)}.sleek-row{display:flex;align-items:center;gap:8px;width:100%}.btn-sleek-primary{flex:1;height:44px;background:#e8ff4714;color:var(--accent);border:1px solid rgba(232,255,71,.3);border-radius:10px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center;gap:10px}.btn-sleek-primary:hover{background:#e8ff4726;border-color:var(--accent);box-shadow:0 0 15px #e8ff471a;transform:translateY(-1px)}.btn-sleek-primary:active{transform:translateY(0)}.sleek-dim-unit{display:flex;align-items:center;background:#0000004d;border:1px solid var(--border);border-radius:8px;overflow:hidden;height:34px;width:100%;transition:all .2s ease}.sleek-dim-unit:focus-within{border-color:#e8ff4766;background:#00000080}.sleek-dim-field{display:flex;align-items:center;padding:0 8px;flex:1;height:100%}.sleek-dim-stack{display:flex;flex-direction:column;gap:4px;flex:1}.sleek-dim-label-above{font-size:9px;font-weight:800;color:var(--accent);opacity:.5;-webkit-user-select:none;user-select:none;text-transform:uppercase;letter-spacing:.05em;padding-left:2px}.sleek-dim-label{font-size:9px;font-weight:800;color:var(--accent);opacity:.6;-webkit-user-select:none;user-select:none;width:12px;text-align:center}.sleek-dim-input{background:transparent;border:none;color:#fff;font-family:var(--font-mono);font-size:12px;width:100%;outline:none;text-align:right;padding:0}.btn-sleek-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;transition:all .2s}.btn-sleek-icon:hover:not(:disabled){background:#ffffff1a;border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.btn-sleek-icon:disabled{opacity:.2;cursor:not-allowed;filter:grayscale(1)}body{font-family:var(--font-body);background:var(--bg);color:var(--text);height:100vh;display:flex;flex-direction:column;overflow:hidden}#root{display:flex;flex-direction:column;flex:1;height:100%;min-height:0}.app-shell{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.app-header{padding:0 1.25rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.85rem;flex-shrink:0;background:var(--surface);height:48px}.header-left-tools{display:flex;align-items:center;gap:.4rem}.top-bar-btn{background:transparent;border:1px solid var(--border);color:var(--muted);height:32px;padding:0 .8rem;border-radius:6px;display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.65rem;font-weight:700;cursor:pointer;transition:all .2s;white-space:nowrap}.top-bar-btn:hover{background:var(--surface2);color:var(--text);border-color:var(--accent)}.top-bar-btn.accent{background:#e8ff4714;border-color:var(--accent);color:var(--accent)}.top-bar-btn.accent:hover{background:var(--accent);color:#000}.logo{font-size:1.1rem;font-weight:800;letter-spacing:-.03em;display:flex;align-items:center}.logo-fix{color:var(--text)}.logo-arrow{color:var(--accent)}.logo-svg{color:var(--text)}.header-spacer{flex:1}.header-hint{font-family:var(--font-mono);font-size:.6rem;color:var(--muted);letter-spacing:.04em}.top-toolbar{display:flex;align-items:center;padding:.6rem 1.25rem;background:var(--surface2);border-bottom:1px solid var(--border);gap:.5rem;flex-shrink:0;overflow-x:auto}.top-toolbar::-webkit-scrollbar{height:4px}.top-toolbar::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.tt-btn{background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:6px;padding:.4rem .6rem;display:flex;align-items:center;gap:.4rem;font-family:var(--font-mono);font-size:.6rem;font-weight:700;cursor:pointer;transition:all .2s;white-space:nowrap}.tt-btn:hover{background:var(--surface3);color:var(--text);border-color:var(--accent)}.tt-btn.active{background:#e8ff4714;color:var(--accent);border-color:var(--accent)}.tt-btn.primary{background:var(--accent);color:#000;border-color:var(--accent)}.tt-btn.primary:hover{background:#fff}.tt-btn.danger{color:#ff6b6b;border-color:#ff6b6b4d}.tt-btn.danger:hover{background:#ff6b6b1a;border-color:#ff6b6b;color:#ff6b6b}.tt-btn.icon-only{padding:.4rem}.tt-sep{width:1px;height:20px;background:var(--border);margin:0 4px}.app{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;position:relative}.main-content{display:flex;flex-direction:row;flex:1;min-height:0;position:relative;overflow:hidden}.sidebar{width:240px;flex-shrink:0;transition:width .3s ease}.app.sidebar-collapsed .sidebar{width:0!important;border-right:none}.workspace-container{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;overflow:hidden}.workspace-layout{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.workspace-main-view{display:flex;flex-direction:row;flex:1;min-height:0;overflow:hidden}.sidebar{background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;min-height:0}.sidebar-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1rem;display:flex;flex-direction:column;gap:.9rem}.sidebar-scroll::-webkit-scrollbar{width:4px}.sidebar-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.sidebar-footer{padding:.85rem 1rem;border-top:1px solid var(--border);flex-shrink:0}.drop-zone-wrap{position:relative}.drop-zone{border:2px dashed var(--border);border-radius:10px;background:var(--surface2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;min-height:110px;padding:1.2rem;text-align:center;cursor:pointer;transition:border-color .2s,background .2s;position:relative;overflow:hidden}.drop-zone.has-image{border-style:solid;border-color:var(--accent2);cursor:default;padding:0;min-height:130px}.drop-zone.drag-over{border-color:var(--accent);background:#e8ff470a}.drop-zone input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;cursor:pointer;z-index:1}.drop-zone.has-image input[type=file]{display:none}.dz-icon{font-size:1.8rem;opacity:.35}.drop-zone p{color:var(--muted);font-size:.75rem}.drop-zone strong{color:var(--accent)}.dz-empty{display:flex;flex-direction:column;align-items:center;gap:.5rem;pointer-events:none}.preview-thumb{width:100%;height:100%;object-fit:contain;max-height:130px;border-radius:8px;display:block}.btn-remove-img{position:absolute;top:5px;right:5px;width:20px;height:20px;background:#0a0a0fb8;border:1px solid rgba(255,255,255,.08);border-radius:4px;color:var(--muted);font-size:.65rem;cursor:pointer;display:none;align-items:center;justify-content:center;z-index:10;transition:background .15s,color .15s;font-family:monospace;font-weight:700;line-height:1}.btn-remove-img:hover{background:#282837f2;color:var(--text)}.drop-zone.has-image~.btn-remove-img{display:flex}.section-label{font-family:var(--font-mono);font-size:.58rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;border-top:1px solid var(--border);padding-top:.65rem}.ctrl{display:flex;flex-direction:column;gap:.28rem}.ctrl-label{font-family:var(--font-mono);font-size:.6rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;display:flex;justify-content:space-between}.ctrl-label span{color:var(--accent)}.ctrl-hint{font-size:.58rem;color:var(--muted);opacity:.5;line-height:1.5}input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer;height:3px}.toggle-row{display:flex;align-items:center;justify-content:space-between}.toggle-label{font-family:var(--font-mono);font-size:.6rem;color:var(--muted);letter-spacing:.06em}.toggle{width:34px;height:18px;background:var(--border);border-radius:999px;position:relative;cursor:pointer;transition:background .2s;flex-shrink:0;border:none;outline:none}.toggle.on{background:var(--accent2)}.toggle:after{content:"";position:absolute;width:12px;height:12px;background:#fff;border-radius:50%;top:3px;left:3px;transition:left .2s}.toggle.on:after{left:19px}.color-row{display:flex;gap:.3rem;flex-wrap:wrap;align-items:center}.swatch{width:22px;height:22px;border-radius:4px;cursor:pointer;border:2px solid transparent;transition:border-color .15s;flex-shrink:0}.swatch.selected{border-color:var(--accent)}.swatch-custom{position:relative;overflow:hidden;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.7rem}.swatch-custom input[type=color]{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;opacity:0;cursor:pointer;width:calc(100% + 8px);height:calc(100% + 8px)}.tab-row{display:flex;gap:.3rem;flex-wrap:wrap}.tab{font-family:var(--font-mono);font-size:.58rem;padding:.25rem .55rem;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all .15s}.tab.active{background:var(--accent);color:#000;border-color:var(--accent);font-weight:700}.tab:hover:not(.active){border-color:var(--accent);color:var(--text)}.btn-generate{width:100%;padding:.8rem;background:var(--accent);color:#000;border:none;border-radius:9px;font-family:var(--font-body);font-weight:800;font-size:.9rem;cursor:pointer;transition:opacity .2s,transform .1s;letter-spacing:-.01em}.btn-generate:hover:not(:disabled){opacity:.87}.btn-generate:active{transform:scale(.98)}.btn-generate:disabled{opacity:.35;cursor:not-allowed}.progress-bar{height:3px;background:var(--border);border-radius:999px;overflow:hidden;display:none;margin-top:.5rem}.progress-bar.active{display:block}.progress-fill{height:100%;background:var(--accent);border-radius:999px;transition:width .25s}.status-msg{font-family:var(--font-mono);font-size:.62rem;padding:.45rem .7rem;border-radius:6px;display:none;line-height:1.5}.status-msg.error{background:#ef44441f;color:#f87171;display:block}.status-msg.info{background:#e8ff4714;color:var(--accent);display:block}.status-msg.success{background:#22c55e1a;color:var(--green);display:block}.rm-mode-grid{display:flex;flex-direction:column;gap:.35rem}.rm-mode-btn{display:grid;grid-template-columns:2rem 1fr;column-gap:.5rem;padding:.55rem .7rem;border-radius:7px;border:1px solid var(--border);background:var(--surface2);cursor:pointer;text-align:left;transition:border-color .15s,background .15s}.rm-mode-btn:hover{border-color:var(--accent);background:#e8ff470a}.rm-mode-btn.active{border-color:var(--accent);background:#e8ff4714}.rm-icon{grid-row:1/3;font-size:.82rem;display:flex;align-items:center;justify-content:center;color:var(--accent);font-family:monospace;align-self:center}.rm-title{font-family:var(--font-mono);font-size:.64rem;font-weight:700;color:var(--text);letter-spacing:.03em}.rm-mode-btn.active .rm-title{color:var(--accent)}.rm-desc{grid-column:2;font-size:.59rem;color:var(--muted);line-height:1.5;margin-top:.12rem}.extra-rm-entry{display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:.4rem;padding:.45rem .5rem;border-radius:7px;border:1px solid var(--border);background:var(--surface2);margin-bottom:.35rem}.extra-rm-swatch{width:26px;height:26px;border-radius:5px;border:2px solid rgba(255,255,255,.08);position:relative;overflow:hidden;flex-shrink:0;cursor:pointer}.extra-rm-swatch input[type=color]{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;opacity:0;cursor:pointer;width:calc(100% + 12px);height:calc(100% + 12px)}.extra-rm-right{display:flex;flex-direction:column;gap:.2rem}.extra-rm-hex-row{display:flex;align-items:center;gap:.25rem}.extra-rm-mode-row{display:flex;gap:.25rem}.extra-rm-mode-tab{font-family:var(--font-mono);font-size:.52rem;padding:.15rem .4rem;border-radius:3px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all .12s}.extra-rm-mode-tab.active{background:var(--accent2);color:#fff;border-color:var(--accent2)}.extra-rm-tol-row{display:flex;align-items:center;gap:.3rem;font-family:var(--font-mono);font-size:.52rem;color:var(--muted)}.extra-rm-tol-row input[type=range]{width:70px;height:2px}.btn-rm-entry{background:transparent;border:none;color:var(--red);font-size:.75rem;cursor:pointer;padding:.2rem;line-height:1;opacity:.6;transition:opacity .15s;align-self:flex-start}.btn-rm-entry:hover{opacity:1}.btn-add-extra-rm{width:100%;margin-top:.5rem;font-family:var(--font-mono);font-size:.6rem;padding:.38rem .6rem;border-radius:6px;border:1px dashed var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all .15s;text-align:center}.btn-add-extra-rm:hover{border-color:var(--accent);color:var(--text)}.hex-input-wrap{display:flex;align-items:center;gap:.3rem;margin-top:.3rem}.hex-hash{font-family:var(--font-mono);font-size:.65rem;color:var(--muted)}.hex-input{font-family:var(--font-mono);font-size:.65rem;background:var(--surface3);border:1px solid var(--border);color:var(--text);border-radius:5px;padding:.22rem .4rem;width:5.5rem;letter-spacing:.04em;text-transform:uppercase;outline:none}.hex-input:focus{border-color:var(--accent)}.tools-bar{background:var(--surface2);border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:center;width:48px;padding:.8rem 0;gap:.5rem;overflow-y:auto;overflow-x:hidden;flex-shrink:0}.tools-bar.disabled{opacity:.5;pointer-events:none}.tools-bar::-webkit-scrollbar{display:none}.tb-btn{background:transparent;border:none;color:var(--muted);width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.tb-btn:hover{background:var(--surface3);color:var(--text)}.tb-btn.active{background:var(--accent)!important;color:#000!important;border-radius:4px}.tb-btn.active{background:var(--accent);color:#000}.tb-danger:hover{background:#ff4f4f26;color:var(--red)}.tb-accent:hover{background:#e8ff4726;color:var(--accent)}.tb-sep{width:24px;height:1px;background:var(--border);flex-shrink:0;margin:.25rem 0}.tb-spacer{flex:1}.tb-brush-wrap{display:flex;flex-direction:column;align-items:center;gap:.5rem}.tb-brush-wrap span{font-family:var(--font-mono);font-size:.65rem;color:var(--muted)}.tb-slider{-webkit-appearance:slider-vertical;-moz-appearance:slider-vertical;appearance:slider-vertical;width:12px;height:80px;background:transparent;cursor:pointer}.tb-zoom-label{font-family:var(--font-mono);font-size:.6rem;color:var(--muted);cursor:pointer;width:36px;text-align:center;-webkit-user-select:none;user-select:none}.tb-zoom-label:hover{color:var(--text)}.canvas-stats{position:absolute;bottom:.8rem;left:.8rem;background:#18181fd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:.4rem .8rem;border-radius:6px;font-family:var(--font-mono);font-size:.65rem;color:var(--muted);border:1px solid var(--border);z-index:100;pointer-events:none;white-space:nowrap}.right-panel{background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;height:100%}.rp-header{display:flex;padding:.75rem 1rem 0;gap:1rem;border-bottom:1px solid var(--border);flex-shrink:0}.rp-tab{padding:.5rem .2rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.rp-tab:hover{color:var(--text)}.rp-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.rp-content{flex:1;overflow-y:auto;position:relative;display:flex;flex-direction:column}.layers-container{padding:1rem;display:flex;flex-direction:column;gap:.5rem}.layer-item{display:flex;align-items:center;background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:.5rem;gap:.5rem;cursor:pointer;transition:border-color .2s}.layer-item.active{border-color:var(--accent);background:var(--surface3)}.layer-thumb{width:32px;height:32px;background:#111;border-radius:4px;flex-shrink:0;border:1px solid var(--border)}.layer-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.layer-name{font-size:.75rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layer-meta{font-family:var(--font-mono);font-size:.55rem;color:var(--muted)}.layer-actions{display:flex;gap:.2rem}.layer-btn{background:transparent;border:none;color:var(--muted);width:24px;height:24px;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer}.layer-btn:hover{background:var(--surface3);color:var(--text)}.layer-btn.danger:hover{color:var(--red)}.add-layer-btn{width:100%;padding:.6rem;background:transparent;border:1px dashed var(--border);color:var(--muted);border-radius:8px;font-size:.75rem;font-weight:700;cursor:pointer;margin-bottom:.5rem;transition:all .2s}.add-layer-btn:hover{border-color:var(--accent);color:var(--accent);background:#e8ff470d}.workspace{display:flex;flex-direction:column;flex:1;overflow:hidden;background:var(--bg);position:relative;min-width:0}.canvas-area{flex:1;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:0;cursor:crosshair}.workspace-toolbar{height:48px;width:100%;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 1rem;gap:.8rem;background:var(--surface);flex-shrink:0;z-index:20}.workspace-toolbar .tb-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text);width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),background .2s,color .2s,border-color .2s}.workspace-toolbar .tb-btn:active{transform:scale(.9)}.workspace-toolbar .tb-btn:hover{transform:scale(1.05)}.workspace-toolbar .tb-btn:hover{background:var(--surface3);border-color:var(--muted)}.workspace-toolbar .tb-btn.tb-accent{background:#e8ff471a;border-color:var(--accent);color:var(--accent)}.workspace-toolbar .tb-btn.tb-accent:hover{background:var(--accent);color:var(--bg)}.svg-tester-btn,.add-layer-btn,.color-panel-footer button,.btn-generate{border:1px solid var(--accent)!important}.svg-tester-btn{background:#e8ff470d;color:var(--accent);font-family:var(--font-mono);font-size:.65rem;font-weight:700;padding:0 .8rem;height:32px;border-radius:6px;display:flex;align-items:center;gap:.4rem;cursor:pointer;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),background .2s,color .2s;text-transform:uppercase}.svg-tester-btn:active{transform:scale(.95)}.svg-tester-btn:hover{background:var(--accent);color:var(--bg)}.canvas-toolbar{display:flex;align-items:center;gap:.45rem;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding:.5rem 1rem;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;scrollbar-width:none;touch-action:pan-x}.canvas-toolbar::-webkit-scrollbar{display:none}.canvas-toolbar.hidden{display:none}.tool-btn{font-family:var(--font-mono);font-size:.6rem;padding:.28rem .65rem;border-radius:5px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all .15s;white-space:nowrap}.tool-btn.active{background:var(--accent);color:#000;border-color:var(--accent);font-weight:700}.tool-btn:hover:not(.active){border-color:var(--accent);color:var(--text)}.tool-btn.red{color:var(--red);border-color:#ff4f4f4d}.tool-btn.red:hover{background:#ff4f4f1f}.tool-btn.green-btn{background:var(--green);color:#000;border-color:var(--green);font-weight:700}.tool-btn.green-btn:hover{opacity:.85}.t-sep{width:1px;height:18px;background:var(--border);flex-shrink:0}.brush-wrap{display:flex;align-items:center;gap:.35rem;font-family:var(--font-mono);font-size:.6rem;color:var(--muted)}.brush-wrap input[type=range]{width:80px;height:3px}.toolbar-spacer{flex:1}.stat-chips{display:flex;gap:.4rem;align-items:center}.chip{font-family:var(--font-mono);font-size:.58rem;background:var(--surface3);border:1px solid var(--border);padding:.22rem .55rem;border-radius:4px;color:var(--muted);white-space:nowrap}.chip span{color:var(--accent)}.zoom-wrap{display:flex;align-items:center;gap:.3rem;font-family:var(--font-mono);font-size:.6rem;color:var(--muted)}.zoom-btn{font-family:var(--font-mono);font-size:.72rem;font-weight:700;width:22px;height:22px;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all .12s;display:flex;align-items:center;justify-content:center;line-height:1}.zoom-btn:hover{border-color:var(--accent);color:var(--accent)}.canvas-area{flex:1;overflow:auto;position:relative;background-color:#0f0f18;background-image:linear-gradient(45deg,#15151f 25%,transparent 25%),linear-gradient(-45deg,#15151f 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#15151f 75%),linear-gradient(-45deg,transparent 75%,#15151f 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;touch-action:pan-x pan-y}.zoom-host{position:relative;min-width:100%;min-height:100%;display:flex;align-items:flex-start;justify-content:flex-start}.canvas-inner{display:block;position:relative;flex-shrink:0;padding:20px}#editor-canvas{display:block;image-rendering:pixelated;cursor:none;box-shadow:0 0 0 1px var(--border)}#cursor-ring{position:fixed;pointer-events:none;transform:translate(-50%,-50%);display:none;align-items:center;justify-content:center;box-sizing:border-box;z-index:99999}#dropper-bubble{position:fixed;pointer-events:none;z-index:9999;display:none;flex-direction:column;align-items:center;background:var(--surface);border:2px solid var(--accent);border-radius:10px;padding:4px 4px 6px;box-shadow:0 4px 20px #0009;width:80px}#dropper-bubble.active{display:flex}#dropper-zoom-canvas{width:72px;height:72px;image-rendering:pixelated;border-radius:6px;border:1px solid var(--border);display:block}#dropper-crosshair{position:absolute;top:4px;left:4px;width:72px;height:72px;pointer-events:none}#dropper-crosshair:before,#dropper-crosshair:after{content:"";position:absolute;background:#fffc}#dropper-crosshair:before{left:50%;top:0;width:1px;height:100%;transform:translate(-50%)}#dropper-crosshair:after{top:50%;left:0;height:1px;width:100%;transform:translateY(-50%)}#dropper-hex-label{font-family:var(--font-mono);font-size:.58rem;font-weight:700;color:var(--accent);letter-spacing:.04em;margin-top:4px;text-align:center}#dropper-result{display:none;align-items:center;gap:.3rem;font-family:var(--font-mono);font-size:.58rem;color:var(--accent);letter-spacing:.04em;cursor:pointer;white-space:nowrap;flex-shrink:0}#dropper-result.visible{display:flex}#dropper-result-swatch{width:14px;height:14px;border-radius:3px;border:1px solid rgba(255,255,255,.15);flex-shrink:0}.workspace-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;pointer-events:none;z-index:5}.workspace-empty .we-icon{font-size:3.5rem;opacity:.12}.workspace-empty p{font-size:.85rem;color:var(--muted)}.workspace-empty small{font-size:.72rem;color:var(--muted);opacity:.55}.processing-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0a0fd9;display:none;flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:50}.processing-overlay.active{display:flex}.spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.proc-label{font-family:var(--font-mono);font-size:.68rem;color:var(--accent);letter-spacing:.05em}.proc-bar{width:200px;height:3px;background:var(--border);border-radius:999px;overflow:hidden}.proc-fill{height:100%;background:var(--accent);border-radius:999px;transition:width .2s}@keyframes spin{to{transform:rotate(360deg)}}.layers-panel,.color-panel{background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;width:260px;min-width:260px;max-width:260px;position:relative;flex-shrink:0}.color-panel-header{padding:.75rem 1rem .6rem;border-bottom:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;gap:.35rem}.color-panel-title{font-family:var(--font-body);font-size:.8rem;font-weight:800;letter-spacing:-.01em;display:flex;align-items:center;gap:.45rem}.realtime-badge{font-family:var(--font-mono);font-size:.48rem;font-weight:700;background:var(--green);color:#000;padding:.12rem .45rem;border-radius:999px;letter-spacing:.04em;white-space:nowrap}.color-panel-hint{font-family:var(--font-mono);font-size:.55rem;color:var(--muted);line-height:1.5}.color-panel-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.75rem .85rem;display:flex;flex-direction:column;gap:.75rem}.color-panel-scroll::-webkit-scrollbar{width:3px}.color-panel-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.color-panel-footer{padding:.65rem .85rem;border-top:1px solid var(--border);flex-shrink:0;display:flex;gap:.4rem}.color-panel-footer button{font-family:var(--font-mono);font-size:.55rem;padding:.3rem .55rem;border-radius:5px;flex:1;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all .15s}.color-panel-footer button:hover{border-color:var(--accent);color:var(--text)}.palette-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem}.pal-swatch-wrap{display:flex;flex-direction:column;align-items:center;gap:.25rem;position:relative}.pal-swatch{width:100%;aspect-ratio:1;border-radius:6px;border:2px solid transparent;transition:border-color .15s,transform .1s;position:relative;overflow:hidden;flex-shrink:0;cursor:pointer}.pal-swatch-wrap.active{box-shadow:0 0 10px var(--accent);border:2px solid var(--accent);transform:scale(1.1)}.layers-actions-top{display:flex;gap:8px;padding:8px;border-bottom:1px solid rgba(255,255,255,.1);background:#0003}.layer-action-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#fff;padding:4px 8px;border-radius:4px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.layer-action-btn:hover:not(:disabled){background:var(--accent);color:#000}.layer-action-btn:disabled{opacity:.3;cursor:not-allowed}.layer-select-check{width:24px;height:100%;display:flex;align-items:center;justify-content:center;cursor:pointer;border-right:1px solid rgba(255,255,255,.05)}.custom-check{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-radius:3px;transition:all .2s}.custom-check.checked{background:var(--accent);border-color:var(--accent);box-shadow:0 0 5px var(--accent)}.tb-btn.danger:hover{background:#f44!important;color:#fff!important}.layer-item.active{background:#e8ff4714}.pal-swatch{width:100%;aspect-ratio:1/1;border-radius:6px;cursor:pointer;border:1px solid rgba(255,255,255,.1);position:relative;transition:transform .25s cubic-bezier(.175,.885,.32,1.275),box-shadow .2s ease,border-color .2s ease;overflow:visible;display:flex;align-items:center;justify-content:center;background-clip:padding-box}.pal-swatch:active{transform:scale(.92)}.pal-swatch:hover{transform:scale(1.05);box-shadow:0 4px 12px #0000004d;border-color:#ffffff4d}.pal-edit-trigger{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#0006;opacity:0;transition:opacity .15s;cursor:pointer;border-radius:50%;pointer-events:none}.pal-swatch:hover .pal-edit-trigger{opacity:1;pointer-events:auto}.pal-edit-trigger span{font-size:1rem;pointer-events:none}.pal-edit-trigger input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;pointer-events:auto}.pal-delete-btn{position:absolute;top:-6px;right:-6px;width:18px;height:18px;background:#f44;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:4px;display:none;align-items:center;justify-content:center;font-size:.6rem;cursor:pointer;z-index:20;transition:transform .1s;box-shadow:0 2px 5px #0000004d;pointer-events:none}.pal-swatch:hover .pal-delete-btn{display:flex;pointer-events:auto}.pal-delete-btn:hover{transform:scale(1.15);background:red}.pal-count{font-family:var(--font-mono);font-size:.48rem;color:var(--muted);text-align:center;margin-top:2px;line-height:1}.pal-swatch-wrap:hover .pal-delete-btn{display:flex}.pal-swatch-wrap .hex-input-wrap{margin-top:0}.pal-swatch-wrap .hex-input{width:100%;font-size:.52rem;padding:.18rem .3rem;text-transform:uppercase}.pal-swatch-wrap .hex-hash{font-size:.52rem}.export-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#05050ad1;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s}.export-modal-overlay.open{opacity:1;pointer-events:all}.export-modal{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:680px;max-width:96vw;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 80px #000000b3}.export-modal-header{padding:1.1rem 1.4rem .9rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.export-modal-title{font-size:1rem;font-weight:800;letter-spacing:-.02em}.export-modal-title span{color:var(--accent)}.export-close{background:transparent;border:none;color:var(--muted);font-size:1.1rem;cursor:pointer;padding:.2rem .4rem;border-radius:4px;transition:color .15s}.export-close:hover{color:var(--text)}.export-modal-body{overflow-y:auto;padding:1rem 1.2rem;display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.export-modal-body::-webkit-scrollbar{width:4px}.export-modal-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.export-card{border:1px solid var(--border);border-radius:9px;background:var(--surface2);padding:.8rem .9rem;cursor:pointer;transition:border-color .15s,background .15s;display:flex;flex-direction:column;gap:.35rem}.export-card:hover{border-color:var(--accent);background:#e8ff470a}.export-card-top{display:flex;align-items:center;gap:.55rem}.export-card-num{font-family:var(--font-mono);font-size:.52rem;background:var(--surface3);border:1px solid var(--border);padding:.1rem .38rem;border-radius:3px;color:var(--muted);flex-shrink:0}.export-card-name{font-size:.8rem;font-weight:700;letter-spacing:-.01em}.export-card-meta{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.export-tag{font-family:var(--font-mono);font-size:.47rem;padding:.1rem .38rem;border-radius:3px;white-space:nowrap}.tag-color{background:#7c3aed33;color:#a78bfa;border:1px solid rgba(124,58,237,.3)}.tag-size{background:#e8ff4714;color:var(--accent);border:1px solid rgba(232,255,71,.15)}.tag-type{background:#4ade801a;color:var(--green);border:1px solid rgba(74,222,128,.2)}.export-card-desc{font-family:var(--font-mono);font-size:.52rem;color:var(--muted);line-height:1.55}.export-card-btn{margin-top:.3rem;align-self:flex-start;font-family:var(--font-mono);font-size:.55rem;padding:.28rem .7rem;border-radius:5px;background:var(--accent);color:#000;border:none;font-weight:700;cursor:pointer;transition:opacity .15s}.export-card-btn:hover{opacity:.85}.export-prompt{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:#05050ae0;display:none;align-items:center;justify-content:center}.export-prompt.open{display:flex}.export-prompt-box{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1.4rem;width:360px;display:flex;flex-direction:column;gap:.75rem}.export-prompt-box label{font-family:var(--font-mono);font-size:.62rem;color:var(--muted)}.export-prompt-box input[type=text]{background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:.5rem .7rem;font-family:var(--font-mono);font-size:.72rem;outline:none;width:100%}.export-prompt-box input:focus{border-color:var(--accent)}.export-prompt-actions{display:flex;gap:.5rem;justify-content:flex-end}.export-prompt-actions button{font-family:var(--font-mono);font-size:.6rem;padding:.32rem .9rem;border-radius:5px;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--muted);transition:all .12s}.export-prompt-actions .btn-confirm{background:var(--accent);color:#000;border-color:var(--accent);font-weight:700}.svg-preview-btn{font-family:var(--font-mono);font-size:.58rem;font-weight:700;display:flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:7px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all .15s;white-space:nowrap;flex-shrink:0}.svg-preview-btn:hover{border-color:var(--accent);color:var(--accent);background:#e8ff470f}#svg-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#05050ae0;display:flex;align-items:stretch;opacity:0;pointer-events:none;transition:opacity .2s}#svg-preview-overlay.open{opacity:1;pointer-events:all}#svg-preview-modal{display:flex;flex-direction:row;width:100%;height:100%;overflow:hidden}#svg-editor-pane{width:420px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}#svg-editor-header{padding:.9rem 1.1rem .7rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}#svg-editor-title{font-family:var(--font-body);font-size:1rem;font-weight:800;letter-spacing:-.02em}#svg-editor-title span{color:var(--accent)}.svgp-close{font-family:var(--font-mono);font-size:.7rem;background:transparent;border:1px solid var(--border);color:var(--muted);padding:.25rem .6rem;border-radius:5px;cursor:pointer;transition:all .12s}.svgp-close:hover{border-color:var(--red);color:var(--red)}#svg-textarea-wrap{flex:1;display:flex;flex-direction:column;padding:.75rem;gap:.5rem;overflow:hidden}#svg-input{flex:1;font-family:var(--font-mono);font-size:.62rem;line-height:1.6;background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:.75rem;resize:none;outline:none;overflow-y:auto;-moz-tab-size:2;tab-size:2;transition:border-color .15s}#svg-input:focus{border-color:var(--accent)}#svg-input::placeholder{color:var(--muted);opacity:.5}#svg-editor-toolbar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.svgp-btn{font-family:var(--font-mono);font-size:.58rem;padding:.3rem .65rem;border-radius:5px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all .12s;white-space:nowrap}.svgp-btn:hover{border-color:var(--accent);color:var(--text)}.svgp-btn.primary{background:var(--accent);color:#000;border-color:var(--accent);font-weight:700}.svgp-btn.primary:hover{opacity:.85}#svg-error-msg{font-family:var(--font-mono);font-size:.56rem;color:var(--red);min-height:1.2em;padding:0 .25rem}#svg-icon-lib{border-top:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;max-height:300px;overflow:hidden}#svg-icon-lib-header{padding:.55rem .75rem;display:flex;align-items:center;justify-content:space-between;cursor:pointer}#svg-icon-lib-header span{font-family:var(--font-mono);font-size:.6rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}#svg-icon-search{font-family:var(--font-mono);font-size:.58rem;background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:5px;padding:.25rem .5rem;outline:none;width:130px;transition:border-color .12s}#svg-icon-search:focus{border-color:var(--accent)}#svg-icon-grid{overflow-y:auto;padding:.5rem .75rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:.35rem}.icon-chip{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.35rem .2rem;border:1px solid var(--border);border-radius:6px;cursor:pointer;background:var(--surface2);transition:all .12s}.icon-chip:hover{border-color:var(--accent);background:#e8ff470f}.pal-swatch-wrap{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;background:#ffffff08;border:1px solid transparent;border-radius:6px;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer}.pal-swatch-wrap:hover{background:#ffffff14;border-color:var(--border);transform:translateY(-2px)}.pal-swatch-wrap.active{background:#e8ff471a;border-color:var(--accent);box-shadow:0 0 12px #e8ff474d}.icon-chip svg{width:20px;height:20px;color:var(--text)}.icon-chip span{font-family:var(--font-mono);font-size:.38rem;color:var(--muted);text-align:center;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}#svg-preview-pane{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}#svg-preview-controls{padding:.7rem 1rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.75rem;flex-shrink:0;flex-wrap:wrap;background:var(--surface)}.svgp-ctrl-label{font-family:var(--font-mono);font-size:.58rem;color:var(--muted)}#svgp-bg-options{display:flex;gap:.3rem}.svgp-bg-btn{width:22px;height:22px;border-radius:4px;cursor:pointer;border:2px solid transparent;transition:border-color .1s}.svgp-bg-btn.active{border-color:var(--accent)}#svgp-size-input{font-family:var(--font-mono);font-size:.6rem;background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:5px;padding:.22rem .45rem;outline:none;width:60px;text-align:center}#svgp-color-input{width:30px;height:24px;border:none;cursor:pointer;border-radius:4px}#svgp-info{font-family:var(--font-mono);font-size:.55rem;color:var(--muted);margin-left:auto}#svg-preview-canvas-wrap{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative}#svg-preview-canvas-wrap.bg-transparent{background-color:#1a1a28;background-image:linear-gradient(45deg,#252535 25%,transparent 25%),linear-gradient(-45deg,#252535 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#252535 75%),linear-gradient(-45deg,transparent 75%,#252535 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0}#svg-preview-canvas-wrap.bg-white{background:#fff}#svg-preview-canvas-wrap.bg-black{background:#000}#svg-preview-canvas-wrap.bg-dark{background:#0a0a0f}#svg-output-frame{display:block;max-width:100%;max-height:100%;box-shadow:0 8px 40px #0006}#svg-output-frame svg{display:block}.settings-wrap{position:relative}.settings-btn{width:32px;height:32px;border-radius:7px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s,background .15s;flex-shrink:0}.settings-btn:hover,.settings-btn.open{border-color:var(--accent);color:var(--text);background:var(--surface2)}.settings-btn.open svg{transform:rotate(45deg)}.settings-btn svg{transition:transform .25s ease}.settings-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:210px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.75rem;box-shadow:0 12px 40px #00000073;z-index:500;display:none;flex-direction:column;gap:.5rem}.settings-dropdown.open{display:flex}.settings-section-title{font-family:var(--font-mono);font-size:.52rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;padding-bottom:.3rem;border-bottom:1px solid var(--border)}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:.2rem 0}.settings-label{font-family:var(--font-mono);font-size:.6rem;color:var(--text);display:flex;align-items:center;gap:.4rem}.settings-icon{font-size:.75rem}.settings-size-group{display:flex;gap:.35rem;margin-top:.2rem}.size-btn{flex:1;padding:.3rem;font-family:var(--font-mono);font-size:.65rem;font-weight:700;border:1px solid var(--border);border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;transition:all .15s}.size-btn:hover{border-color:var(--accent);color:var(--text)}.size-btn.active{background:var(--accent);color:#000;border-color:var(--accent)}.settings-size-desc{font-family:var(--font-mono);font-size:.52rem;color:var(--muted);text-align:center;margin-top:.1rem}.sidebar-collapse-btn{position:absolute;top:50%;left:240px;transform:translateY(-50%);z-index:500;width:8px;height:40px;background:var(--surface2);border:1px solid var(--border);border-radius:4px 0 0 4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--muted);transition:left .3s ease,right .3s ease,background .15s,opacity .15s;opacity:.4}.sidebar-collapse-btn:hover{background:var(--surface2);color:var(--accent);opacity:1}.icon-lib-flyout,.tb-flyout{z-index:2000!important}.sidebar-collapse-btn:first-of-type{border-radius:0 4px 4px 0}canvas{cursor:default}.sidebar-collapse-btn svg{transition:transform .3s ease;flex-shrink:0}.main-content.sidebar-collapsed .sidebar-collapse-btn{left:0}.main-content.sidebar-collapsed .sidebar-collapse-btn svg{transform:rotate(180deg)}.app.sidebar-collapsed .sidebar-collapse-btn{left:0}.app.sidebar-collapsed .sidebar-collapse-btn svg{transform:rotate(180deg)}.app.sidebar-collapsed>.sidebar-collapse-btn{left:0;border-left:1px solid var(--border)}.app.sidebar-collapsed>.sidebar-collapse-btn svg{transform:rotate(180deg)}.svg-code-container{background:var(--surface2);border-top:1px solid var(--border);display:flex;flex-direction:column;position:relative;overflow:hidden;z-index:100}.svg-code-resizer{height:4px;width:100%;background:transparent;cursor:ns-resize;position:absolute;top:0;z-index:10}.svg-code-resizer:hover{background:var(--accent)}.svg-code-header{height:30px;background:var(--surface3);display:flex;align-items:center;justify-content:space-between;padding:0 1rem;font-size:.65rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05rem}.svg-code-textarea{width:100%;background:#0d0d12;color:#8c7;border:none;font-family:var(--font-mono);font-size:.75rem;padding:1rem;resize:none;overflow-y:auto;outline:none;line-height:1.5}.svg-code-textarea::selection{background:var(--accent);color:#000}.transform-overlay{position:absolute;pointer-events:none;border:1.5px solid var(--accent);box-shadow:0 0 10px #00000080;box-sizing:border-box}.transform-handle{position:absolute;width:8px;height:8px;background:#fff;border:1.5px solid var(--accent);border-radius:50%;pointer-events:auto;z-index:10;transform:translate(-50%,-50%)}.transform-handle:hover{background:var(--accent);transform:translate(-50%,-50%) scale(1.3)}.handle-tl{top:0;left:0;cursor:nwse-resize}.handle-t{top:0;left:50%;cursor:ns-resize}.handle-tr{top:0;left:100%;cursor:nesw-resize}.handle-l{top:50%;left:0;cursor:ew-resize}.handle-r{top:50%;left:100%;cursor:ew-resize}.handle-bl{top:100%;left:0;cursor:nesw-resize}.handle-b{top:100%;left:50%;cursor:ns-resize}.handle-br{top:100%;left:100%;cursor:nwse-resize}.rotation-handle{position:absolute;top:-30px;left:50%;transform:translate(-50%);width:24px;height:24px;background:var(--surface3);border:1.5px solid var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:grab;pointer-events:auto;box-shadow:0 2px 5px #0000004d}.rotation-handle:active{cursor:grabbing}.color-panel-collapse-btn{position:absolute;top:50%;left:-14px;transform:translateY(-50%);z-index:50;width:24px;height:48px;background:var(--surface2);border:1px solid var(--border);border-right:none;border-radius:8px 0 0 8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--muted);transition:background .15s,color .15s,border-color .15s}.color-panel-collapse-btn:hover{background:var(--surface3);color:var(--accent);border-color:var(--accent)}:root[data-size=medium] .app{grid-template-columns:300px 48px minmax(0,1fr) 0px}:root[data-size=medium] .app.right-panel-open{grid-template-columns:300px 48px minmax(100px,1fr) 280px}:root[data-size=medium] .sidebar-scroll{padding:1.2rem;gap:1.1rem}:root[data-size=medium] .ctrl-label{font-size:.68rem}:root[data-size=medium] .ctrl-hint{font-size:.63rem}:root[data-size=medium] .section-label{font-size:.64rem}:root[data-size=medium] .toggle-label{font-size:.66rem}:root[data-size=medium] .tab{font-size:.64rem;padding:.3rem .65rem}:root[data-size=medium] .tool-btn{font-size:.65rem;padding:.32rem .75rem}:root[data-size=medium] .btn-generate{font-size:1rem}:root[data-size=medium] .logo{font-size:1.35rem}:root[data-size=medium] .sidebar-collapse-btn{left:300px}:root[data-size=medium] .app.sidebar-collapsed .sidebar-collapse-btn{left:0}:root[data-size=large] .app{grid-template-columns:360px 48px minmax(0,1fr) 0px}:root[data-size=large] .app.right-panel-open{grid-template-columns:360px 48px minmax(100px,1fr) 280px}:root[data-size=large] .sidebar-scroll{padding:1.4rem;gap:1.25rem}:root[data-size=large] .ctrl-label{font-size:.75rem}:root[data-size=large] .ctrl-hint{font-size:.68rem}:root[data-size=large] .section-label{font-size:.7rem}:root[data-size=large] .toggle-label{font-size:.72rem}:root[data-size=large] .tab{font-size:.7rem;padding:.35rem .75rem}:root[data-size=large] .tool-btn{font-size:.7rem;padding:.36rem .85rem}:root[data-size=large] .btn-generate{font-size:1.1rem;padding:.95rem}:root[data-size=large] .logo{font-size:1.5rem}:root[data-size=large] header{padding:.9rem 1.75rem}:root[data-size=large] .sidebar-collapse-btn{left:360px}:root[data-size=large] .app.sidebar-collapsed .sidebar-collapse-btn{left:0}:root.light{--bg: #f0f0f5;--surface: #ffffff;--surface2: #f5f5fa;--surface3: #ebebf3;--text: #111118;--muted: #7a7a9a;--border: #d8d8e8;--accent: #b8cc00;--accent2: #6d28d9;--red: #dc2626;--green: #16a34a}:root.light .canvas-area{background-color:#e0e0ec;background-image:linear-gradient(45deg,#d0d0de 25%,transparent 25%),linear-gradient(-45deg,#d0d0de 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d0d0de 75%),linear-gradient(-45deg,transparent 75%,#d0d0de 75%)}.mob-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:190;background:#05050aa6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transition:opacity .25s}.mob-backdrop.show{display:block}.mob-nav{display:none}@media (max-width: 768px){body{height:100dvh;overflow:hidden}header{padding:.55rem .9rem;gap:.55rem}.logo{font-size:.95rem}.header-hint,.svg-preview-btn,.sidebar-collapse-btn,.color-panel-collapse-btn{display:none!important}.app{grid-template-columns:1fr!important;position:relative;overflow:visible}.app.color-panel-open{grid-template-columns:1fr!important}.workspace{grid-column:1!important;grid-row:1!important;height:100%;min-width:0}.canvas-area{padding-bottom:calc(58px + env(safe-area-inset-bottom,0px));touch-action:none}.sidebar{position:fixed;bottom:calc(58px + env(safe-area-inset-bottom,0px));left:0;right:0;height:78dvh;max-height:78dvh;z-index:300;border-radius:18px 18px 0 0;border-right:none;border-top:2px solid var(--border);transform:translateY(100%);transition:transform .33s cubic-bezier(.25,.46,.45,.94);box-shadow:0 -16px 60px #0000008c;overflow:hidden;width:auto!important;min-width:0!important}.sidebar:before{content:"";display:block;flex-shrink:0;width:44px;height:4px;background:var(--muted);border-radius:2px;margin:.6rem auto 0;opacity:.4}.sidebar.mob-open{transform:translateY(0)}.color-panel{position:fixed;bottom:calc(58px + env(safe-area-inset-bottom,0px));left:0;right:0;height:68dvh;max-height:68dvh;z-index:300;border-radius:18px 18px 0 0;border-left:none;border-top:2px solid var(--border);transform:translateY(100%);transition:transform .33s cubic-bezier(.25,.46,.45,.94);box-shadow:0 -16px 60px #0000008c;overflow:hidden;width:100%!important}.color-panel:before{content:"";display:block;flex-shrink:0;width:44px;height:4px;background:var(--muted);border-radius:2px;margin:.6rem auto 0;opacity:.4}.color-panel.mob-open{transform:translateY(0)}.tool-btn{padding:.38rem .7rem;font-size:.62rem;min-height:34px}.stat-chips{display:none!important}.mob-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:58px;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--surface);border-top:1px solid var(--border);z-index:400;box-shadow:0 -4px 24px #0006}.mob-nav-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.18rem;background:transparent;border:none;color:var(--muted);cursor:pointer;font-family:var(--font-mono);font-size:.46rem;letter-spacing:.05em;text-transform:uppercase;transition:color .15s;-webkit-tap-highlight-color:transparent;position:relative}.mob-nav-btn.active{color:var(--accent)}.mob-nav-btn.active:after{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:24px;height:2px;background:var(--accent);border-radius:0 0 2px 2px}.export-modal{width:100%;height:100dvh;max-height:100dvh;border-radius:0}.export-modal-body{grid-template-columns:1fr}#svg-preview-modal{flex-direction:column}#svg-editor-pane{width:100%!important;border-right:none;border-bottom:1px solid var(--border);max-height:55dvh;flex-shrink:0}}.tb-recolor-group{display:flex;flex-direction:column;align-items:center;gap:4px;padding:4px 0}.tb-recolor-swatch{width:28px;height:28px;border-radius:6px;border:2px solid rgba(255,255,255,.2);cursor:pointer;position:relative;transition:border-color .2s}.tb-recolor-swatch:hover{border-color:var(--accent)}.tb-recolor-input{position:absolute;width:28px;height:28px;opacity:0;cursor:pointer;margin-top:-32px}.tb-btn.accent{background:var(--accent)!important;color:#000!important;border-color:var(--accent)!important}.tb-btn.accent:hover{filter:brightness(1.2)}.tb-stroke-group{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 0}.tb-stroke-label{font-size:.5rem;font-family:var(--font-mono);color:var(--muted);letter-spacing:.03em;text-transform:uppercase}.tb-stroke-btn{width:28px;height:22px;border-radius:4px;border:1px solid rgba(255,255,255,.15);background:#ffffff0d;color:var(--text);font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;padding:0;line-height:1}.tb-stroke-btn:hover{background:var(--accent);color:#000;border-color:var(--accent)}
