@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0f11;--surface:#15181b;--surface-2:#1b1f23;--surface-3:#22272c;--line:#2c3238;--line-strong:#414850;--text:#f5f7fa;--muted:#969fa9;--muted-2:#68717a;--accent:#8cff32;--accent-dark:#101d08;--accent-line:#58783e;--accent-button:#8cff32;--accent-ink:#10150c;--danger:#ff6b6b;--warning:#ffcb66;--body-glow:#8cff320d;--topbar-bg:#0d0f11d1;--panel-start:#1b1f23eb;--panel-end:#131619f5;--input-bg:#101316;--canvas-bg:#111417;--checker-a:#13171a;--checker-b:#171c20;--icon-tile:#f1f4f6;--icon-tile-hover:#fff;--icon-selected:#e7ffd5;--icon-label:#5b6670;--icon-skeleton:#d8dde2;--radius:16px;--radius-small:10px;--shadow:0 24px 80px #00000047;font-synthesis:none;text-rendering:optimizelegibility;font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3f5f2;--surface:#fff;--surface-2:#f0f3ef;--surface-3:#e5eae4;--line:#d8ddd7;--line-strong:#b9c1b8;--text:#171b17;--muted:#5f695f;--muted-2:#7c867c;--accent:#347b08;--accent-dark:#e9f7df;--accent-line:#71a94d;--accent-button:#72df25;--accent-ink:#102007;--danger:#b52b2b;--warning:#8b5b00;--body-glow:#57ae1f14;--topbar-bg:#fafcf9e0;--panel-start:#fffffffa;--panel-end:#f7f9f6fa;--input-bg:#f7f9f6;--canvas-bg:#e8ece7;--checker-a:#edf0ec;--checker-b:#e2e7e1;--icon-tile:#f1f4f6;--icon-tile-hover:#fff;--icon-selected:#e7ffd5;--icon-label:#56616b;--icon-skeleton:#d8dde2;--shadow:0 24px 70px #1f2d1d1a}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{background:radial-gradient(circle at 50% -10%, var(--body-glow), transparent 35rem), var(--bg);min-width:320px;min-height:100vh;color:var(--text);margin:0}button,input,select{font:inherit}button,label,select{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--accent);color:var(--accent-ink);border-radius:8px;padding:10px 14px;font-weight:800;transition:transform .16s;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.topbar{border-bottom:1px solid var(--line);background:var(--topbar-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20;justify-content:space-between;align-items:center;gap:24px;min-height:72px;padding:14px clamp(16px,3vw,48px);display:flex;position:sticky;top:0}.brand{color:var(--text);letter-spacing:-.035em;align-items:center;gap:12px;font-size:17px;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{grid-template-columns:repeat(2,8px);gap:2px;display:grid;transform:rotate(45deg)}.brand-mark span{background:var(--accent);width:8px;height:8px}.brand-mark span:first-child{border-radius:5px 0 0}.brand-mark span:last-child{border-radius:0 0 5px}.topbar-actions,.topbar-copy{align-items:center;gap:16px;display:flex}.topbar-note{color:var(--muted);font-size:12px}.theme-toggle{border:1px solid var(--line-strong);background:var(--surface);min-width:78px;height:36px;color:var(--text);cursor:pointer;border-radius:99px;justify-content:center;align-items:center;gap:7px;padding:0 11px;font-size:10px;font-weight:800;transition:border-color .16s,background .16s,transform .16s;display:inline-flex}.theme-toggle:hover{border-color:var(--accent-line);transform:translateY(-1px)}.theme-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.moon-icon,:root[data-theme=light] .sun-icon{display:none}:root[data-theme=light] .moon-icon{display:block}.eyebrow,.step-label{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0;font-family:DM Mono,monospace;font-size:10px;font-weight:500}.eyebrow{border:1px solid var(--accent-line);border-radius:99px;padding:5px 8px}.editor-shell{grid-template-columns:minmax(300px,1fr) minmax(460px,1.2fr) minmax(290px,1fr);align-items:start;gap:clamp(12px,1.4vw,24px);width:min(1740px,100%);margin:0 auto;padding:clamp(14px,2vw,30px);display:grid}.panel,.stage-column{min-width:0}.panel{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(155deg, var(--panel-start), var(--panel-end));box-shadow:var(--shadow);overflow:hidden}.library-panel,.controls-panel{padding:22px}.panel-heading,.section-heading-row{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.panel-heading{margin-bottom:18px}.section-heading-row{margin-bottom:14px}.section-heading-row.compact{align-items:center;margin-bottom:16px}.section-heading-row>span{color:var(--muted-2);text-transform:uppercase;font-family:DM Mono,monospace;font-size:10px}h1,h2,h3{letter-spacing:-.035em;margin:0}h1,h2{font-size:21px;line-height:1.2}h3{font-size:13px;font-weight:700}.step-label+h1,.step-label+h2{margin-top:5px}.count-badge,.mini-badge,.source-pill{border:1px solid var(--line-strong);color:var(--muted);border-radius:99px;font-family:DM Mono,monospace;font-size:10px;line-height:1}.count-badge,.mini-badge{padding:6px 9px}.source-pill{text-overflow:ellipsis;white-space:nowrap;max-width:52%;padding:8px 11px;overflow:hidden}.content-tabs,.appearance-tabs{border:1px solid var(--line);background:var(--input-bg);border-radius:10px;grid-template-columns:repeat(2,1fr);gap:4px;padding:3px;display:grid}.content-tabs{margin-bottom:16px}.content-tabs button,.appearance-tabs button{min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;font-size:10px;font-weight:800}.content-tabs button.active,.appearance-tabs button.active{background:var(--surface-3);color:var(--text);box-shadow:0 1px 4px #0000004d}.content-tab-panel{min-width:0}.search-wrap{border:1px solid var(--line);border-radius:var(--radius-small);background:var(--input-bg);align-items:center;gap:10px;height:44px;padding:0 12px;transition:border-color .16s,box-shadow .16s;display:flex}.search-wrap:focus-within{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--body-glow)}.search-wrap svg{fill:none;width:18px;stroke:var(--muted);stroke-width:1.8px}.search-wrap input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1}.search-wrap input::placeholder{color:var(--muted-2)}.search-wrap kbd{border:1px solid var(--line);color:var(--muted-2);border-radius:5px;padding:2px 6px;font-family:DM Mono,monospace;font-size:10px}.category-tabs{scrollbar-width:none;gap:5px;margin:14px 0 16px;display:flex;overflow-x:auto}.category-tabs::-webkit-scrollbar{display:none}.category-tabs button,.segmented-control button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:7px;font-size:11px;font-weight:700}.category-tabs button{padding:7px 10px}.category-tabs button:hover{color:var(--text)}.category-tabs button.active{border-color:var(--accent-line);background:var(--accent-dark);color:var(--accent)}.icon-gallery{scrollbar-color:var(--line-strong) transparent;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;max-height:min(43vh,420px);padding:1px 4px 1px 1px;display:grid;overflow:auto}.icon-card{aspect-ratio:1;border:1px solid var(--line);background:var(--icon-tile);cursor:pointer;border-radius:10px;place-items:center;min-width:0;transition:transform .15s,border-color .15s,background .15s;display:grid;position:relative}.icon-card:hover{border-color:var(--accent-line);background:var(--icon-tile-hover);transform:translateY(-2px)}.icon-card.selected{border-color:var(--accent);background:var(--icon-selected);box-shadow:inset 0 0 0 1px var(--accent)}.icon-card img{object-fit:contain;pointer-events:none;width:38%;height:38%}.icon-card[data-palette=true] img{width:48%;height:48%}.icon-card[data-icon-id^="3dicons:"] img{width:72%;height:72%}.icon-card small{color:var(--icon-label);text-align:center;text-overflow:ellipsis;white-space:nowrap;font:7px/1.1 DM Mono,monospace;position:absolute;bottom:4px;left:5px;right:5px;overflow:hidden}.icon-skeleton{cursor:default;overflow:hidden}.icon-skeleton:after{content:"";background:var(--icon-skeleton);border-radius:7px;width:36%;height:36%;animation:1s ease-in-out infinite alternate pulse}@keyframes pulse{to{opacity:.35}}.gallery-message,.empty-state{border:1px solid var(--line);background:var(--input-bg);color:var(--muted);border-radius:12px;font-size:12px}.gallery-message{margin-bottom:10px;padding:12px}.gallery-message.error{color:#faa;border-color:#ff6b6b59}.empty-state{text-align:center;padding:28px 20px}.empty-state .empty-orbit{border:1px solid var(--line-strong);width:44px;height:44px;color:var(--accent);border-radius:50%;place-items:center;margin:0 auto 12px;display:grid}.empty-state h2{font-size:16px}.empty-state p{max-width:250px;margin:7px auto 12px;line-height:1.5}.accent-link{color:var(--accent);text-underline-offset:3px;font-size:12px;font-weight:800}.divider{color:var(--muted-2);text-transform:uppercase;align-items:center;gap:10px;margin:18px 0 12px;font:9px DM Mono,monospace;display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.upload-zone{border:1px dashed var(--line-strong);background:color-mix(in srgb, var(--surface) 92%, transparent);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:12px;min-height:70px;padding:12px;transition:border-color .16s,background .16s;display:flex}.upload-zone:hover,.upload-zone.dragging{border-color:var(--accent);background:var(--accent-dark)}.upload-zone input{opacity:0;width:1px;height:1px;position:absolute}.upload-icon{border:1px solid var(--line-strong);width:32px;height:32px;color:var(--accent);border-radius:8px;place-items:center;display:grid}.upload-zone strong,.upload-zone small{display:block}.upload-zone strong{font-size:11px}.upload-zone small{color:var(--muted-2);margin-top:3px;font-size:9px}.initials-editor{padding-top:2px}.initials-intro{border:1px solid var(--line);background:var(--input-bg);border-radius:12px;align-items:center;gap:12px;margin-bottom:20px;padding:14px;display:flex}.initials-intro>span{background:var(--accent-dark);width:42px;height:42px;color:var(--accent);border-radius:10px;place-items:center;font-weight:800;display:grid}.initials-intro strong,.initials-intro small{display:block}.initials-intro strong{font-size:12px}.initials-intro small{color:var(--muted-2);margin-top:3px;font-size:9px}.text-control>span,.weight-toggle>span:first-child{color:var(--muted);margin-bottom:7px;font-size:10px;font-weight:600;display:block}.text-control input{border:1px solid var(--line);background:var(--input-bg);width:100%;height:46px;color:var(--text);letter-spacing:.08em;border-radius:9px;padding:0 13px;font-size:18px;font-weight:800}.text-control input[aria-invalid=true]{border-color:var(--danger)}.select-control{margin-top:18px;display:block}.validation-message{min-height:14px;color:var(--danger);margin:5px 0 0;font-size:9px;line-height:1.4}.initials-row{grid-template-columns:1.2fr .8fr;gap:9px;margin-top:17px;display:grid}.toggle-input-wrap{border:1px solid var(--line);background:var(--input-bg);min-height:38px;color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:5px 9px;font-size:10px;font-weight:800;display:flex}.toggle-input-wrap input{width:16px;height:16px;accent-color:var(--accent);margin:0}.stage-column{padding:4px clamp(0px,1vw,16px)}.canvas-frame{aspect-ratio:1;border:1px solid var(--line-strong);background:var(--canvas-bg);border-radius:22px;width:min(100%,680px);margin:0 auto;position:relative;overflow:hidden;box-shadow:0 10px 20px #00000029,inset 0 0 0 8px #ffffff04}.canvas-checker{background-color:var(--checker-a);background-image:linear-gradient(45deg, var(--checker-b) 25%, transparent 25%), linear-gradient(-45deg, var(--checker-b) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--checker-b) 75%), linear-gradient(-45deg, transparent 75%, var(--checker-b) 75%);background-position:0 0,0 14px,14px -14px,-14px 0;background-size:28px 28px;position:absolute;inset:0}.canvas-frame .canvas-container,.canvas-frame canvas{width:100%!important;height:100%!important}.canvas-placeholder{z-index:5;pointer-events:none;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:0}.canvas-placeholder>span{border:1px solid var(--line-strong);width:64px;height:64px;color:var(--accent);border-radius:18px;place-items:center;margin-bottom:8px;font-size:26px;display:grid;transform:rotate(8deg)}.canvas-placeholder strong{color:var(--text);font-size:14px}.canvas-placeholder small{color:var(--muted-2);font-size:10px}.canvas-placeholder[hidden]{display:none}.canvas-export{grid-template-columns:minmax(170px,.85fr) minmax(138px,1fr) auto;gap:8px;width:min(100%,680px);margin:10px auto 0;display:grid}.canvas-export select,.canvas-export button{min-width:0;height:42px}.canvas-export .primary-button{padding-inline:12px}.status-bar{min-height:34px;color:var(--muted-2);justify-content:center;align-items:center;gap:8px;font-family:DM Mono,monospace;font-size:9px;display:flex}.status-dot{background:var(--accent);width:5px;height:5px;box-shadow:0 0 10px var(--accent);border-radius:50%}.status-bar.error{color:var(--danger)}.status-bar.error .status-dot{background:var(--danger);box-shadow:0 0 10px var(--danger)}.preview-section{margin-top:16px}.preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.preview-card{border:1px solid var(--line);background:var(--surface);border-radius:11px;flex-direction:column;justify-content:space-between;align-items:center;gap:8px;min-height:92px;padding:12px 6px 9px;display:flex}.preview-image-wrap{place-items:center;min-height:54px;display:grid}.preview-card img{image-rendering:auto;max-width:54px;max-height:54px;display:block}.preview-card span{color:var(--muted-2);font:8px DM Mono,monospace}.appearance-tab-panel{padding-top:16px}.appearance-tabs.icon-hidden{grid-template-columns:1fr}.control-fieldset{border:0;min-width:0;margin:0;padding:0}.control-fieldset:disabled{opacity:.42}.two-column-controls{grid-template-columns:1fr 1fr;gap:9px;display:grid}.color-control>span:first-child,.select-label{color:var(--muted);margin-bottom:7px;font-size:10px;font-weight:600;display:block}.color-input-wrap{border:1px solid var(--line);background:var(--input-bg);border-radius:8px;align-items:center;gap:8px;height:38px;padding:5px 8px;display:flex}.color-input-wrap input{cursor:pointer;background:0 0;border:0;border-radius:5px;width:24px;height:24px;padding:0}.color-input-wrap input::-webkit-color-swatch-wrapper{padding:0}.color-input-wrap input::-webkit-color-swatch{border:0;border-radius:5px}.color-input-wrap output{min-width:0;color:var(--muted);font:9px DM Mono,monospace}.range-control{margin-top:17px;display:block}.range-control>span{color:var(--muted);justify-content:space-between;margin-bottom:9px;font-size:10px;font-weight:600;display:flex}.range-control output{color:var(--text);font-family:DM Mono,monospace}input[type=range]{width:100%;height:4px;accent-color:var(--accent);cursor:pointer;margin:0}.field-note{color:var(--muted-2);margin:10px 0 0;font-size:9px;line-height:1.45}.background-presets{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-top:13px;display:grid}.background-presets button{border:1px solid var(--line);background:var(--input-bg);min-width:0;color:var(--muted);cursor:pointer;border-radius:9px;padding:3px;overflow:hidden}.background-presets button:hover{border-color:var(--line-strong);color:var(--text)}.background-presets button.active{border-color:var(--accent);color:var(--text);box-shadow:0 0 0 1px var(--accent)}.preset-swatch{aspect-ratio:1;border-radius:5px;width:100%;display:block;box-shadow:inset 0 0 0 1px #ffffff2e}.preset-aurora{background:linear-gradient(135deg,#7c3aed,#22d3ee)}.preset-sunset{background:linear-gradient(45deg,#fb7185,#f59e0b)}.preset-mint-burst{background:linear-gradient(120deg,#34d399,#0ea5e9)}.preset-ember{background:linear-gradient(160deg,#ef4444,#7c2d12)}.preset-halo{background:radial-gradient(circle at 50% 35%,#fde68a,#ec4899 75%)}.preset-deep-sea{background:radial-gradient(circle at 25% 20%,#67e8f9,#0f172a 95%)}.preset-lime-glow{background:radial-gradient(circle at 35% 25%,#ecfccb,#65a30d 85%)}.preset-cosmic{background:radial-gradient(circle at 70% 25%,#c084fc,#111827 90%)}.preset-violet-glass{background:linear-gradient(155deg,#fffc,#0000 42%),linear-gradient(135deg,#8b5cf6,#312e81)}.preset-blue-glass{background:linear-gradient(155deg,#ffffffd1,#0000 42%),radial-gradient(circle at 30% 20%,#93c5fd,#172554 90%)}.preset-rose-glass{background:linear-gradient(155deg,#ffffffd1,#0000 42%),linear-gradient(120deg,#fb7185,#881337)}.preset-emerald-glass{background:linear-gradient(155deg,#ffffffd1,#0000 42%),radial-gradient(circle at 35% 20%,#6ee7b7,#064e3b 90%)}.shape-options{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:13px;display:grid}.shape-options button{border:1px solid var(--line);background:var(--input-bg);color:var(--muted);cursor:pointer;border-radius:9px;flex-direction:column;align-items:center;gap:7px;padding:9px 3px 7px;font-size:8px;display:flex}.shape-options button.active{border-color:var(--accent-line);background:var(--accent-dark);color:var(--accent)}.shape-swatch{background:#373e45;border:1px solid;width:20px;height:20px;display:block}.shape-swatch.rounded{border-radius:6px}.shape-swatch.circle{border-radius:50%}.shape-swatch.transparent{background-color:#fff;background-image:conic-gradient(#aeb7be 25%, #fff 0 50%, #aeb7be 0 75%, #fff 0);background-size:8px 8px;border-color:#6d7780;position:relative;box-shadow:inset 0 0 0 1px #ffffffbf}.shape-swatch.transparent:after{content:"";background:#e05252;border-radius:2px;width:2px;height:25px;position:absolute;top:-3px;left:8px;transform:rotate(45deg);box-shadow:0 0 0 1px #ffffffbf}.segmented-control{border:1px solid var(--line);background:var(--input-bg);border-radius:9px;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:15px;padding:3px;display:grid}.segmented-control button{padding:8px}.segmented-control button.active{background:var(--surface-3);color:var(--text);box-shadow:0 1px 4px #0000004d}.gradient-type-control{grid-template-columns:repeat(2,1fr);gap:6px;margin-top:10px;display:grid}.gradient-type-control button{border:1px solid var(--line);background:var(--input-bg);color:var(--muted);cursor:pointer;border-radius:8px;padding:7px;font-size:9px;font-weight:700}.gradient-type-control button.active{border-color:var(--accent-line);background:var(--accent-dark);color:var(--accent)}.background-colors{margin-top:14px}.radial-controls{margin-top:16px}.radial-heading{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:9px;font-size:10px;font-weight:600;display:flex}.radial-heading output{color:var(--text);text-transform:capitalize;font:9px DM Mono,monospace}.radial-position{border:1px solid var(--line);background:var(--input-bg);border-radius:9px;grid-template-columns:repeat(3,22px);justify-content:center;gap:6px;padding:9px;display:grid}.radial-position button{border:1px solid var(--line-strong);background:var(--surface-2);cursor:pointer;border-radius:6px;width:22px;height:22px;padding:0;position:relative}.radial-position button:after{content:"";background:var(--muted-2);border-radius:50%;position:absolute;inset:7px}.radial-position button:hover{border-color:var(--accent-line)}.radial-position button.active{border-color:var(--accent);background:var(--accent-dark);box-shadow:0 0 0 1px var(--accent)}.radial-position button.active:after{background:var(--accent)}.radial-controls .range-control{margin-top:14px}select{border:1px solid var(--line);background:var(--input-bg);width:100%;height:42px;color:var(--text);border-radius:9px;padding:0 12px}.primary-button,.secondary-button{cursor:pointer;border-radius:9px;min-height:42px;font-size:16px;font-weight:800;transition:transform .15s,opacity .15s,border-color .15s}.primary-button{border:1px solid var(--accent-button);background:var(--accent-button);color:var(--accent-ink);justify-content:center;align-items:center;gap:7px;display:flex}.secondary-button{border:1px solid var(--line-strong);background:var(--surface-2);color:var(--text);padding:0 15px}.primary-button:hover:not(:disabled),.secondary-button:hover:not(:disabled){transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.38}.full-width{width:100%;margin-top:10px}footer{color:var(--muted-2);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;gap:20px;padding:12px clamp(16px,3vw,48px) 22px;font:8px DM Mono,monospace;display:flex}[hidden]{display:none!important}@media (width<=1160px){.editor-shell{grid-template-columns:minmax(260px,.78fr) minmax(400px,1.22fr)}.controls-panel{grid-column:1/-1}.preview-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=760px){.topbar{min-height:62px;position:static}.topbar-copy{display:none}.editor-shell{flex-direction:column;padding:12px;display:flex}.library-panel,.stage-column,.controls-panel{width:100%}.stage-column{order:-1;padding:0}.canvas-frame{border-radius:16px}.library-panel,.controls-panel{padding:18px}.controls-panel{display:block}.icon-gallery{max-height:360px}footer{text-align:center;flex-direction:column;align-items:center}}@media (width<=430px){.topbar{padding-inline:15px}.editor-shell{padding:8px}.canvas-export{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr) auto;gap:6px}.canvas-export select,.canvas-export button{font-size:9px}.canvas-export .primary-button{padding-inline:8px}.preview-grid{grid-template-columns:repeat(3,1fr)}.preview-card{min-height:82px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
