.cm-app{--cm-fg: var(--color-foreground, 18, 18, 18);--cm-bg: var(--color-background, 255, 255, 255);--cm-accent: var(--color-button, 18, 18, 18);--cm-accent-text: var(--color-button-text, 255, 255, 255);--cm-radius-btn: var(--buttons-radius, 4px);--cm-radius-input: var(--inputs-radius, 4px);--cm-border: rgba(var(--cm-fg), .15);--cm-muted: rgba(var(--cm-fg), .6);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);gap:30px;font-family:var(--font-body-family, inherit);font-style:var(--font-body-style, normal);font-weight:var(--font-body-weight, 400);color:rgb(var(--cm-fg));letter-spacing:.02em}@media (max-width: 860px){.cm-app{grid-template-columns:1fr;gap:20px}}.cm-app{border:1px solid #000;border-radius:4px;padding:16px}.cm-app--embedded{grid-template-columns:1fr;gap:20px;margin-top:4px}.cm-loading,.cm-stage-loading{padding:48px;text-align:center;color:var(--cm-muted)}.cm-stage-box{position:relative;width:100%;min-height:220px;background:rgba(var(--cm-fg),.03);border:1px solid var(--cm-border);border-radius:var(--media-radius, 8px);overflow:hidden;touch-action:none}.cm-view-tabs{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.cm-view-tab{padding:8px 14px;border:1px solid var(--cm-border);border-radius:var(--cm-radius-btn);background:rgb(var(--cm-bg));color:rgb(var(--cm-fg));cursor:pointer;font-size:13px;font-family:inherit}.cm-view-tab--active{border-color:rgb(var(--cm-fg));box-shadow:0 0 0 1px rgb(var(--cm-fg)) inset;font-weight:600}.cm-view-tab__badge{margin-left:6px;background:rgb(var(--cm-accent));color:rgb(var(--cm-accent-text));border-radius:999px;padding:1px 7px;font-size:11px}.cm-app__panel{display:flex;flex-direction:column;gap:20px}.cm-panel-title{font-size:13px;font-weight:400;color:var(--cm-muted);margin:0 0 8px;text-transform:none}.cm-option{border:0;padding:0;margin:0 0 12px}.cm-option__name{font-size:13px;color:var(--cm-muted);margin-bottom:6px}.cm-option__values{display:flex;flex-wrap:wrap;gap:8px}.cm-swatch{padding:8px 16px;border:1px solid var(--cm-border);border-radius:var(--cm-radius-btn);background:rgb(var(--cm-bg));color:rgb(var(--cm-fg));cursor:pointer;font-size:14px;font-family:inherit;min-height:42px}.cm-swatch--active{border-color:rgb(var(--cm-fg));box-shadow:0 0 0 1px rgb(var(--cm-fg)) inset;font-weight:600}.cm-swatch--unavailable{opacity:.4;text-decoration:line-through}.cm-upload__zone{display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px 16px;border:1px solid #000;border-radius:4px;background:rgba(var(--cm-fg),.03);cursor:pointer;text-align:center;font-size:14px;transition:border-color .15s,background .15s}.cm-upload__zone--over{border-color:rgb(var(--cm-fg));background:rgba(var(--cm-fg),.06)}.cm-upload__icon{font-size:22px}.cm-upload__zone small{color:var(--cm-muted);font-size:12px}.cm-upload__error{color:#b91c1c;font-size:13px;margin:6px 0 0}.cm-layers__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.cm-layer{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid var(--cm-border);border-radius:var(--cm-radius-input);background:rgb(var(--cm-bg));cursor:pointer}.cm-layer--selected{border-color:rgb(var(--cm-fg));box-shadow:0 0 0 1px rgb(var(--cm-fg)) inset}.cm-layer__thumb{width:36px;height:36px;object-fit:contain;background:conic-gradient(rgba(var(--cm-fg),.08) 25%,rgb(var(--cm-bg)) 0,rgb(var(--cm-bg)) 50%,rgba(var(--cm-fg),.08) 0,rgba(var(--cm-fg),.08) 75%,rgb(var(--cm-bg)) 0) 0 0/12px 12px;border-radius:calc(var(--cm-radius-input) / 2 + 2px)}.cm-layer__name{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cm-layer__status{color:var(--cm-muted)}.cm-layer__status--error{color:#b91c1c;font-weight:700}.cm-layer__actions{display:flex;gap:4px}.cm-layer__actions button{border:1px solid var(--cm-border);background:rgb(var(--cm-bg));color:rgb(var(--cm-fg));border-radius:calc(var(--cm-radius-input) / 2 + 2px);width:30px;height:30px;cursor:pointer;font-size:13px}.cm-layer__delete{color:#b91c1c}.cm-quantity{border:1px solid #000;border-radius:4px;padding:12px 14px}.cm-quantity__head{display:flex;justify-content:space-between;align-items:center}.cm-quantity__min-hint{font-size:12px;font-weight:400;color:#6b7280}.cm-quantity__input{width:78px;padding:8px;border:var(--inputs-border-width, 1px) solid var(--cm-border);border-radius:var(--cm-radius-input);background:rgb(var(--cm-bg));color:rgb(var(--cm-fg));font-size:15px;font-family:inherit;text-align:center}.cm-quantity__range{width:100%;margin:12px 0;accent-color:rgb(var(--cm-accent));height:28px}.cm-quantity__presets{display:flex;gap:8px;flex-wrap:wrap}.cm-chip{padding:6px 14px;border:1px solid var(--cm-border);border-radius:var(--cm-radius-btn);background:rgb(var(--cm-bg));color:rgb(var(--cm-fg));cursor:pointer;font-size:13px;font-family:inherit}.cm-chip--active{border-color:rgb(var(--cm-accent));background:rgb(var(--cm-accent));color:rgb(var(--cm-accent-text))}.cm-price{border-top:1px solid var(--cm-border);padding:14px 0 0;font-size:14px}.cm-price__row{display:flex;justify-content:space-between;padding:4px 0}.cm-price__row--adjustment{color:#059669}.cm-price__row--total{border-top:1px solid var(--cm-border);margin-top:6px;padding-top:10px;font-size:18px;font-weight:600}.cm-quality-warning{margin-top:12px;padding:12px 14px;border:1px solid #fbbf24;background:#fffbeb;border-radius:var(--cm-radius-input);font-size:13px;color:#92400e}.cm-quality-warning p{margin:6px 0 0}.cm-atc__button{width:100%;min-height:46px;padding:15px 30px;border:var(--buttons-border-width, 0px) solid rgba(var(--cm-accent),var(--buttons-border-opacity, 1));border-radius:var(--cm-radius-btn);background:rgb(var(--cm-accent));color:rgb(var(--cm-accent-text));font-size:15px;font-family:inherit;font-weight:500;letter-spacing:1px;cursor:pointer;transition:opacity .15s,box-shadow .15s}.cm-atc__button:hover:not(:disabled){box-shadow:0 0 0 1px rgb(var(--cm-accent)) inset,0 0 0 2px rgb(var(--cm-accent))}.cm-atc__button:disabled{opacity:.55;cursor:not-allowed}.cm-atc__button--busy{animation:cm-pulse 1.2s ease-in-out infinite}@keyframes cm-pulse{50%{opacity:.75}}.cm-atc__hint{font-size:12px;color:var(--cm-muted);margin:8px 0 0}.cm-atc__error{font-size:13px;color:#b91c1c;margin:8px 0 0}