.tg-root{position:fixed;top:0;right:0;bottom:0;left:0;background:#fafafa;overflow-y:auto;z-index:60;display:flex;flex-direction:column}.tg-header{padding:24px 32px 16px;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;align-items:flex-end;gap:24px;flex-shrink:0}.tg-title{font-family:Playfair Display,serif;font-size:32px;font-weight:700;color:#0f172a;margin:0;letter-spacing:-.02em}.tg-subtitle{font-size:13px;color:#64748b;margin:4px 0 0}.tg-search{margin-left:auto;min-width:300px;padding:10px 14px;border:1px solid #e2e8f0;border-radius:10px;font-size:14px;background:#f8fafc}.tg-search:focus{outline:none;border-color:#6366f1;background:#fff;box-shadow:0 0 0 3px #6366f11f}.tg-hero-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px 32px}.tg-hero-card{display:flex;flex-direction:column;gap:6px;padding:24px;border-radius:16px;border:1px solid transparent;cursor:pointer;text-align:left;transition:transform .15s,box-shadow .15s}.tg-hero-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #0f172a1a}.tg-hero-ai{background:linear-gradient(135deg,#6366f1,#ec4899 70%,#f59e0b);color:#fff}.tg-hero-blank{background:#fff;border-color:#e2e8f0;color:#0f172a}.tg-hero-icon{font-size:28px}.tg-hero-title{font-size:18px;font-weight:700}.tg-hero-sub{font-size:13px;opacity:.85}.tg-filters{padding:0 32px 16px;display:flex;flex-direction:column;gap:10px;background:#fff;border-bottom:1px solid #e2e8f0}.tg-filter-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tg-filter-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#475569;margin-right:8px;min-width:60px}.tg-chip{padding:5px 12px;font-size:12px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;color:#475569;cursor:pointer;transition:all .12s}.tg-chip:hover{border-color:#94a3b8}.tg-chip.active{background:#0f172a;color:#fff;border-color:#0f172a}.tg-grid-wrap{padding:24px 32px 48px;flex:1}.tg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.tg-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;cursor:pointer;padding:0;text-align:left;transition:transform .15s,box-shadow .15s,border-color .15s}.tg-card:hover{border-color:#6366f1;transform:translateY(-3px);box-shadow:0 16px 28px -12px #6366f14d}.tg-thumb{background:#f1f5f9;display:grid;place-items:center;overflow:hidden}.tg-thumb-img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.tg-thumb-loading{color:#cbd5e1;font-size:24px}.tg-card-body{padding:10px 14px 14px}.tg-card-name{font-size:13px;font-weight:600;color:#0f172a;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tg-card-tags{display:flex;gap:4px}.tg-tag{font-size:10px;padding:2px 8px;border-radius:999px;background:#eef2ff;color:#4338ca;font-weight:600;letter-spacing:.02em}.tg-tag-muted{background:#f1f5f9;color:#475569}.tg-loading,.tg-empty{padding:64px 32px;text-align:center;color:#64748b}.tg-btn{margin-top:12px;padding:8px 18px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;cursor:pointer;font-weight:600}[v-cloak]{display:none}.editor-root{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:#f8fafc;z-index:50;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:#0f172a}.moo-topbar{height:56px;flex-shrink:0;background:#fff;border-bottom:1px solid #e2e8f0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 20px}.moo-tb-left{display:flex;align-items:center;gap:12px}.moo-tb-center{display:flex;align-items:center;gap:16px;justify-content:center}.moo-tb-right{display:flex;align-items:center;gap:6px;justify-content:flex-end}.moo-logo{text-decoration:none}.moo-badge{width:32px;height:32px;border-radius:9px;background:linear-gradient(135deg,#6366f1,#ec4899,#f59e0b);display:grid;place-items:center;color:#fff;font-weight:700;font-size:14px;box-shadow:0 2px 8px #6366f140}.moo-back{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;color:#334155;font-size:13px;font-weight:500;cursor:pointer;transition:all .12s}.moo-back:hover{border-color:#94a3b8;color:#0f172a}.moo-product{font-size:14px;font-weight:500;color:#0f172a}.moo-save{font-size:12px;color:#94a3b8;padding:2px 10px;border-radius:999px;transition:all .2s}.moo-save.saving{color:#d97706;background:#fef3c7}.moo-save.saved{color:#059669;background:#d1fae5}.moo-save.error{color:#dc2626;background:#fee2e2}.moo-tb-sep{width:1px;height:22px;background:#e2e8f0;margin:0 6px}.moo-icon-btn{width:34px;height:34px;border:none;background:transparent;color:#475569;border-radius:8px;display:grid;place-items:center;font-size:16px;cursor:pointer;transition:background .12s}.moo-icon-btn:hover:not(:disabled){background:#f1f5f9;color:#0f172a}.moo-icon-btn:disabled{opacity:.35;cursor:not-allowed}.moo-icon-btn.danger{color:#dc2626}.moo-icon-btn.danger:hover{background:#fee2e2}.moo-btn{padding:8px 18px;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;border:1px solid transparent;transition:all .12s}.moo-btn:disabled{opacity:.45;cursor:not-allowed}.moo-btn-ghost{background:#fff;color:#0f172a;border-color:#e2e8f0}.moo-btn-ghost:hover:not(:disabled){border-color:#94a3b8}.moo-btn-primary{background:#0f172a;color:#fff}.moo-btn-primary:hover:not(:disabled){background:#4f46e5}.moo-btn-primary:active:not(:disabled){transform:scale(.97)}.moo-btn-ai{background:linear-gradient(135deg,#6366f11f,#ec48991f);color:#4338ca;border-color:transparent}.moo-btn-ai:hover:not(:disabled){background:linear-gradient(135deg,#6366f138,#ec489938)}.moo-btn-full{width:100%}.moo-body{flex:1;display:flex;min-height:0;overflow:hidden;position:relative}.moo-rail{width:68px;flex-shrink:0;background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;padding:10px 6px;gap:2px;z-index:5}.moo-rail-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;background:transparent;border:none;border-radius:10px;color:#64748b;cursor:pointer;transition:all .12s}.moo-rail-btn:hover{background:#f8fafc;color:#0f172a}.moo-rail-btn.active{background:#eef2ff;color:#4338ca}.moo-rail-icon{font-size:20px;font-weight:600;line-height:1}.moo-rail-label{font-size:10px;font-weight:500;letter-spacing:.02em}.moo-rail-sep{height:1px;background:#e2e8f0;margin:6px 4px}.moo-flyout{width:288px;flex-shrink:0;background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;overflow-y:auto;z-index:4;box-shadow:4px 0 24px -12px #0f172a14}.moo-flyout-header{padding:14px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f1f5f9;flex-shrink:0}.moo-flyout-header h3{font-size:14px;font-weight:600;color:#0f172a;margin:0}.moo-flyout-body{padding:14px 18px 24px;flex:1;overflow-y:auto}.flyout-enter-active,.flyout-leave-active{transition:transform .2s ease,opacity .2s ease}.flyout-enter-from{transform:translate(-24px);opacity:0}.flyout-leave-to{transform:translate(-16px);opacity:0}.moo-sub{font-size:12px;color:#64748b;margin:0 0 12px}.moo-subhead{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin:14px 0 8px;display:flex;align-items:center;gap:8px}.moo-text-presets{display:flex;flex-direction:column;gap:6px}.moo-preset{padding:14px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;text-align:left;cursor:pointer;transition:all .12s}.moo-preset:hover{border-color:#6366f1;background:#fafbff}.moo-fonts{display:grid;grid-template-columns:1fr 1fr;gap:6px}.moo-font-tile{padding:10px 8px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:13px}.moo-font-tile:hover{border-color:#6366f1}.moo-upload-btn{display:block;width:100%;padding:12px;border:2px dashed #cbd5e1;background:#f8fafc;color:#475569;border-radius:10px;cursor:pointer;font-weight:600;font-size:13px;margin-bottom:12px}.moo-upload-btn:hover{border-color:#6366f1;background:#eef2ff;color:#4338ca}.upload-input{display:none}.moo-asset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.moo-asset-tile{aspect-ratio:1 / 1;border:1px solid #e2e8f0;background:#f8fafc;border-radius:6px;overflow:hidden;padding:0;cursor:pointer}.moo-asset-tile:hover{border-color:#6366f1}.moo-asset-tile img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.moo-chips{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px}.moo-chip{padding:5px 12px;font-size:11px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;color:#475569;cursor:pointer;transition:all .12s}.moo-chip:hover:not(:disabled){border-color:#94a3b8}.moo-chip.active{background:#0f172a;color:#fff;border-color:#0f172a}.moo-chip:disabled{opacity:.4;cursor:not-allowed}.moo-chip-sm{padding:3px 9px;font-size:10px}.moo-element-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.moo-element-tile{aspect-ratio:1 / 1;display:grid;place-items:center;background:#f8fafc;border:1px solid transparent;border-radius:8px;padding:6px;cursor:pointer;transition:background .1s,border-color .1s}.moo-element-tile:hover{background:#eef2ff;border-color:#6366f1}.moo-input{width:100%;padding:10px 12px;border-radius:8px;border:1px solid #cbd5e1;font-size:13px;background:#fff;font-family:inherit;resize:vertical}.moo-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.moo-suggestions{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0}.moo-error{font-size:12px;color:#dc2626;margin:8px 0}.moo-empty{font-size:12px;color:#94a3b8;padding:20px 0;text-align:center}.moo-pill{display:inline-flex;padding:2px 7px;border-radius:999px;font-size:9px;font-weight:700;background:linear-gradient(135deg,#6366f1,#ec4899);color:#fff;letter-spacing:.05em;text-transform:uppercase}.moo-pill-alt{background:#f59e0b}.moo-layers{border-top:1px solid #f1f5f9;border-radius:0}.moo-layer{display:flex;align-items:center;gap:6px;padding:8px 4px;border-bottom:1px solid #f1f5f9;font-size:12px;cursor:pointer}.moo-layer.selected{background:#eef2ff;color:#4338ca}.moo-layer:hover{background:#f8fafc}.moo-layer-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.moo-layer-actions{display:flex;gap:1px;opacity:.4}.moo-layer:hover .moo-layer-actions,.moo-layer.selected .moo-layer-actions{opacity:1}.moo-layer-actions .moo-icon-btn{width:24px;height:24px;font-size:12px}.moo-preflight{margin-top:8px;font-size:12px}.moo-preflight .moo-ok{color:#059669;padding:8px 0}.moo-findings{padding:0;list-style:none;margin:0}.moo-findings li{padding:6px 0;border-bottom:1px solid #f1f5f9}.moo-findings li.err{color:#dc2626}.moo-findings li.warn{color:#d97706}.moo-specs{font-size:12px;color:#64748b;line-height:1.6;margin-top:6px}.moo-center{flex:1;position:relative;display:flex;flex-direction:column;min-width:0;background:#f8fafc}.moo-side-chip{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:3;display:inline-flex;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:4px;gap:2px;box-shadow:0 4px 12px -4px #0f172a14}.moo-side-chip button:not(.moo-chip-action){padding:6px 16px;background:transparent;border:none;border-radius:999px;font-size:12px;font-weight:500;color:#64748b;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .12s}.moo-side-chip button.active{background:#0f172a;color:#fff}.moo-side-chip .dot{width:5px;height:5px;border-radius:50%;background:#22c55e}.moo-side-chip .moo-sep{width:1px;height:16px;background:#e2e8f0;margin:0 2px}.moo-side-chip .moo-chip-action{width:28px;height:28px;border-radius:999px;background:transparent;border:none;color:#64748b;cursor:pointer;font-size:14px}.moo-side-chip .moo-chip-action:hover{background:#f1f5f9;color:#0f172a}.moo-canvas-area{flex:1;display:flex;align-items:center;justify-content:center;overflow:auto;padding:72px 40px 40px}.moo-canvas-wrapper{background:#fff;box-shadow:0 24px 64px -12px #0f172a2e,0 6px 16px -4px #0f172a14;position:relative;border-radius:3px}.moo-loading{color:#94a3b8;font-size:14px}.moo-error-text{color:#dc2626;font-size:14px}.moo-zoom{position:absolute;bottom:20px;right:20px;z-index:3;display:inline-flex;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:4px;gap:2px;box-shadow:0 4px 12px -4px #0f172a1a}.moo-zoom .moo-icon-btn{width:28px;height:28px;font-size:16px}.moo-zoom-level{padding:4px 10px;background:transparent;border:none;font-size:12px;font-weight:600;color:#334155;cursor:pointer;min-width:48px}.moo-zoom-level:hover{color:#0f172a}.moo-properties{width:0;flex-shrink:0;background:#fff;border-left:1px solid #e2e8f0;display:flex;flex-direction:column;overflow:hidden;transition:width .2s ease}.moo-properties.open{width:288px}.moo-prop-content{flex:1;display:flex;flex-direction:column;min-width:288px;overflow-y:auto}.moo-prop-header{padding:14px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f1f5f9;flex-shrink:0}.moo-prop-header h3{font-size:14px;font-weight:600;margin:0;color:#0f172a}.moo-prop-body{padding:14px 18px;display:flex;flex-direction:column;gap:4px}.moo-field-label{display:block;font-size:11px;font-weight:500;color:#64748b;margin-top:12px;margin-bottom:4px}.moo-prop-body>.moo-field-label:first-child{margin-top:0}.moo-prop-body input[type=range]{width:100%;accent-color:#4f46e5}.moo-row{display:flex;gap:4px;margin-top:4px}.moo-seg{flex:1;padding:7px 10px;background:#fff;border:1px solid #e2e8f0;border-radius:7px;font-size:13px;color:#334155;cursor:pointer;transition:all .1s}.moo-seg:hover:not(:disabled){border-color:#94a3b8}.moo-seg.active{background:#0f172a;color:#fff;border-color:#0f172a}.moo-color{position:relative;display:block;height:36px;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;padding:4px}.moo-color:hover{border-color:#94a3b8}.moo-color-swatch{display:block;width:100%;height:100%;border-radius:5px;border:1px solid rgba(15,23,42,.06)}.moo-color input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;border:none;padding:0}.moo-divider{height:1px;background:#f1f5f9;margin:14px 0 8px}.moo-color-grow{flex:1}.moo-count{display:inline-block;font-size:10px;font-weight:600;color:#64748b;background:#f1f5f9;padding:1px 6px;border-radius:999px;vertical-align:middle;margin-left:4px}.moo-palette{margin-top:8px}.moo-palette-name{font-size:10px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:4px}.moo-palette-row{display:flex;flex-wrap:wrap;gap:4px}.moo-swatch{width:22px;height:22px;border-radius:6px;border:1px solid rgba(15,23,42,.1);cursor:pointer;padding:0;transition:transform .1s,box-shadow .1s}.moo-swatch:hover{transform:scale(1.1);box-shadow:0 2px 6px #00000026}.moo-palette-toggle{margin-top:8px;font-size:11px}.moo-palette-toggle summary{cursor:pointer;color:#64748b;font-weight:500;padding:4px 0;list-style:none}.moo-palette-toggle summary::-webkit-details-marker{display:none}.moo-palette-toggle summary:before{content:"▸ ";display:inline-block;transition:transform .15s}.moo-palette-toggle[open] summary:before{transform:rotate(90deg)}.moo-stock-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.moo-stock-tile{aspect-ratio:1;border-radius:8px;overflow:hidden;cursor:pointer;border:none;padding:0;background:#f1f5f9;position:relative}.moo-stock-tile img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .2s}.moo-stock-tile:hover img{transform:scale(1.05)}.moo-stock-empty{padding:20px 12px;color:#94a3b8;font-size:12px;text-align:center}.moo-stock-tile[disabled]{cursor:default;opacity:.6}.moo-tile-skeleton{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(110deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 65%);background-size:200% 100%;animation:moo-shimmer 1.4s linear infinite}@keyframes moo-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.moo-spinner{width:22px;height:22px;border:2px solid rgba(99,102,241,.25);border-top-color:#6366f1;border-radius:50%;animation:moo-spin .8s linear infinite}@keyframes moo-spin{to{transform:rotate(360deg)}}.moo-hint{font-size:11px;color:#94a3b8;margin-top:6px;text-align:center}.moo-toggle{position:relative;display:inline-block;width:36px;height:20px;cursor:pointer}.moo-toggle input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;cursor:pointer}.moo-toggle span{position:absolute;top:0;right:0;bottom:0;left:0;background:#cbd5e1;border-radius:999px;transition:background .15s}.moo-toggle span:before{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .15s}.moo-toggle input:checked+span{background:#6366f1}.moo-toggle input:checked+span:before{transform:translate(16px)}.moo-bg-strip{margin-top:auto;border-top:1px solid #e2e8f0;padding:12px 18px;background:#fff;display:flex;align-items:center;gap:10px;flex-shrink:0}.moo-properties:not(.open) .moo-bg-strip{display:none}.moo-bg-label{font-size:11px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.04em}.moo-bg-swatches{display:flex;gap:4px;flex:1}.moo-swatch-btn{width:22px;height:22px;border-radius:6px;border:1px solid rgba(15,23,42,.1);cursor:pointer;padding:0}.moo-swatch-btn:hover{transform:scale(1.12)}.moo-swatch-custom{background:#fff!important;display:grid;place-items:center;color:#94a3b8;font-size:14px;position:relative}.moo-swatch-custom input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;border:none;padding:0}.text-edit-hint{position:absolute;bottom:-44px;left:50%;transform:translate(-50%);background:#0f172a;color:#fff;padding:8px 16px;border-radius:999px;font-size:13px;font-weight:500;white-space:nowrap;box-shadow:0 8px 20px #0f172a33;display:flex;align-items:center;gap:8px;pointer-events:none;z-index:10}.text-edit-hint:before{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #0f172a}.hint-enter-active,.hint-leave-active{transition:all .25s ease}.hint-enter-from{opacity:0;transform:translate(-50%) translateY(6px)}.hint-leave-to{opacity:0;transform:translate(-50%) translateY(-6px)}.ml-auto{margin-left:auto}
