:root{color-scheme:light;--bg: #f7f8fa;--panel: #ffffff;--panel-2: #fafbfc;--sunken: #f7f7f8;--text: #17181c;--text-2: #7b8190;--text-3: #9aa1ab;--text-inverse: #ffffff;--line: #e8eaf0;--line-strong: #d4d8de;--accent: #6c5cff;--accent-hover: #5b4aee;--accent-soft: #f2efff;--accent-line: #c8befa;--ok: #17845a;--ok-soft: #e8f5ef;--warn: #9a6b00;--warn-soft: #fdf3dd;--danger: #c02b2b;--danger-hover: #a72323;--danger-soft: #fdecec;--stage-plain: #f1f2f5;--stage-dark: #16181d;--stage-light: #ffffff;--checker-a: #f0f1f4;--checker-b: #fafbfc;--r-panel: 20px;--r-card: 14px;--r-ctl: 10px;--r-sm: 8px;--r-full: 999px;--sp-1: 8px;--sp-2: 12px;--sp-3: 16px;--sp-4: 24px;--panel-pad: 20px;--fs-title: 20px;--fs-panel: 16px;--fs-body: 14px;--fs-hint: 13px;--topbar-h: 64px;--editor-w: 360px;--gutter: 24px;--ctl-h: 40px;--ctl-h-lg: 44px;--shadow-1: 0 1px 2px rgba(25, 30, 50, .04);--shadow-2: 0 8px 30px rgba(25, 30, 50, .05);--shadow-3: 0 20px 56px rgba(16, 20, 28, .18);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--ease: cubic-bezier(.2, 0, 0, 1);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}[data-theme=dark]{color-scheme:dark;--bg: #101216;--panel: #191c22;--panel-2: #1e222a;--sunken: #252932;--text: #e9ebef;--text-2: #a3aab5;--text-3: #737b87;--text-inverse: #12141a;--line: #282d36;--line-strong: #3a404a;--accent: #8f7bff;--accent-hover: #9e8dff;--accent-soft: #241f4d;--accent-line: #4b3f92;--ok: #4fc596;--ok-soft: #14291f;--warn: #d6a743;--warn-soft: #2b2415;--danger: #ef6a6a;--danger-hover: #f37f7f;--danger-soft: #2e1818;--stage-plain: #1c2027;--stage-light: #ffffff;--checker-a: #23262c;--checker-b: #1a1d22;--shadow-1: 0 1px 2px rgba(0, 0, 0, .45);--shadow-2: 0 8px 24px rgba(0, 0, 0, .5);--shadow-3: 0 20px 56px rgba(0, 0, 0, .62)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-body);line-height:1.55;-webkit-font-smoothing:antialiased;overflow:hidden;overscroll-behavior:none}button,input,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4{margin:0;font-weight:600}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--r-full);border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.app{display:flex;flex-direction:column;height:100%;height:var(--vh, 100%)}.boot-loading,.boot-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-2);height:100%;color:var(--text-2);text-align:center;padding:var(--sp-4)}.boot-error h1{font-size:var(--fs-title);color:var(--text)}.muted{color:var(--text-2)}.hint{margin:0;color:var(--text-2);font-size:var(--fs-hint);line-height:1.6}.grow{flex:1}.dot{width:3px;height:3px;border-radius:50%;background:var(--text-3);flex:none}.badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-full);background:var(--accent);color:#fff;font-size:11px;font-weight:700;line-height:1}.link-btn{display:inline-flex;align-items:center;gap:4px;border:0;padding:0;background:none;color:var(--accent);font-size:var(--fs-hint);cursor:pointer}.link-btn:hover{color:var(--accent-hover)}.icon-btn{display:inline-grid;place-items:center;width:var(--ctl-h);height:var(--ctl-h);border:0;border-radius:var(--r-ctl);background:none;color:var(--text-2);cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease)}.icon-btn:hover:not(:disabled){background:var(--sunken);color:var(--text)}.icon-btn:disabled{opacity:.35;cursor:default}.notice{display:flex;align-items:flex-start;gap:6px;margin:0;padding:10px 12px;border-radius:var(--r-ctl);font-size:var(--fs-hint);line-height:1.6}.notice.is-warn{background:var(--warn-soft);color:var(--warn)}.notice.is-bad{background:var(--danger-soft);color:var(--danger)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);height:var(--topbar-h);flex:none;padding:0 var(--gutter);padding-top:var(--safe-top);background:var(--panel);border-bottom:1px solid var(--line)}.topbar-left,.topbar-right{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.brand{display:inline-flex;align-items:center;gap:6px;color:var(--accent);margin-right:var(--sp-2)}.brand b{color:var(--text);font-size:var(--fs-panel);letter-spacing:.02em;white-space:nowrap}.brand-handle{color:var(--text-3);font-size:var(--fs-hint);white-space:nowrap}.tasks{display:inline-flex;gap:2px;padding:3px;border-radius:var(--r-ctl);background:var(--sunken)}.tasks button{height:34px;padding:0 14px;border:0;border-radius:8px;background:none;color:var(--text-2);font-size:var(--fs-body);cursor:pointer;white-space:nowrap;transition:background .12s var(--ease),color .12s var(--ease)}.tasks button:hover{color:var(--text)}.tasks button.is-active{background:var(--panel);color:var(--accent);font-weight:600;box-shadow:var(--shadow-1)}.user-chip{display:inline-flex;align-items:center;gap:6px;height:var(--ctl-h);padding:0 12px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--panel);color:var(--text-2);font-size:var(--fs-hint);cursor:pointer;max-width:160px}.user-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-chip:hover{border-color:var(--line-strong);color:var(--text)}.wallet{display:inline-flex;align-items:center;gap:4px;height:var(--ctl-h);padding:0 12px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--panel);color:var(--text-2);font-size:var(--fs-hint);cursor:pointer;white-space:nowrap}.wallet:hover{border-color:var(--accent);color:var(--accent)}.wallet b{color:var(--text);font-size:var(--fs-body)}.wallet:hover b{color:var(--accent)}.save-badge{display:inline-flex;align-items:center;gap:5px;color:var(--text-3);font-size:var(--fs-hint);white-space:nowrap}.save-badge.is-saved{color:var(--ok)}.save-badge.is-error{color:var(--danger)}.guest-bar{display:flex;align-items:center;gap:var(--sp-1);flex:none;padding:10px var(--gutter);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-hint)}.guest-bar button{border:0;background:none;color:inherit;font:inherit;font-weight:600;text-decoration:underline;cursor:pointer;margin-left:auto}.shell{flex:1;min-height:0;display:grid;grid-template-columns:var(--editor-w) minmax(0,1fr);gap:var(--gutter);padding:var(--gutter)}.editor-col{min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-2);padding-right:4px}.preview-col{min-height:0;display:flex;flex-direction:column;gap:var(--sp-2)}.panel{flex:none;display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--panel-pad);border:1px solid var(--line);border-radius:var(--r-panel);background:var(--panel)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-1)}.panel-head h2{font-size:var(--fs-panel);font-weight:600}.text-input{width:100%;padding:12px 14px;border:1px solid var(--line-strong);border-radius:var(--r-ctl);background:var(--sunken);color:var(--text);font:inherit;font-size:var(--fs-body);line-height:1.7;resize:vertical}.text-input.is-tall{min-height:132px}.text-input:focus{outline:none;border-color:var(--accent);background:var(--panel)}.text-input::placeholder{color:var(--text-3)}.text-meta{display:flex;align-items:center;gap:var(--sp-1);color:var(--text-2);font-size:var(--fs-hint)}.text-meta .is-over{color:var(--danger);font-weight:600}.samples{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:4px;height:32px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-full);background:var(--panel);color:var(--text-2);font-size:var(--fs-hint);cursor:pointer;white-space:nowrap;transition:border-color .12s var(--ease),color .12s var(--ease)}.chip:hover{border-color:var(--line-strong);color:var(--text)}.chip.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.chip-sm{height:28px;padding:0 10px}.chip.is-more{color:var(--accent);border-style:dashed}.chip-row{display:flex;flex-wrap:wrap;gap:6px}.anim-picker{display:flex;flex-direction:column;gap:var(--sp-1)}.seg{display:inline-flex;gap:2px;padding:3px;border-radius:var(--r-ctl);background:var(--sunken)}.seg button{height:32px;padding:0 14px;border:0;border-radius:8px;background:none;color:var(--text-2);font-size:var(--fs-hint);cursor:pointer;white-space:nowrap}.seg button:hover{color:var(--text)}.seg button.is-active{background:var(--panel);color:var(--accent);font-weight:600;box-shadow:var(--shadow-1)}.seg-full{display:flex}.seg-full button{flex:1}.seg-sm button{height:28px;padding:0 10px;font-size:12px}.style-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-2)}@media(max-width:1180px){.style-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.style-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:0 0 12px;border:0;border-radius:var(--r-card);background:none;cursor:pointer;text-align:left;transition:transform .16s var(--ease)}.style-card:hover{transform:translateY(-2px)}.style-shot{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:16 / 10;margin-bottom:8px;border:1px solid transparent;border-radius:var(--r-card);background:var(--sunken);overflow:hidden;transition:border-color .16s var(--ease),background .16s var(--ease)}.style-card:hover .style-shot{border-color:var(--line)}.style-card.is-active .style-shot{border-color:var(--accent);background:var(--accent-soft)}.style-shot img{width:76%;height:76%;object-fit:contain}.style-play{position:absolute;left:7px;bottom:7px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#10121a8c;color:#fff;opacity:.55;cursor:pointer;transition:opacity .14s var(--ease),background .14s var(--ease)}.style-card:hover .style-play{opacity:1;background:#10121ac7}.style-check{position:absolute;top:7px;right:7px;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--accent);color:#fff}.style-name{font-size:var(--fs-body);font-weight:500;color:var(--text)}.style-card.is-active .style-name{color:var(--accent)}.style-desc{font-size:12px;color:var(--text-2);line-height:1.5}.advanced{flex:none;border:1px solid var(--line);border-radius:var(--r-panel);background:var(--panel);overflow:hidden}.advanced-toggle{display:flex;align-items:center;gap:var(--sp-1);width:100%;padding:var(--panel-pad);border:0;background:none;color:var(--text);font-size:var(--fs-panel);font-weight:600;cursor:pointer;text-align:left}.advanced-toggle .hint{margin-left:auto}.advanced-toggle:hover{background:var(--panel-2)}.advanced-body{padding:0 var(--panel-pad) var(--sp-2);border-top:1px solid var(--line)}.param-section+.param-section{border-top:1px solid var(--line)}.param-head button{display:flex;align-items:center;gap:8px;width:100%;padding:12px 0;border:0;background:none;color:var(--text);font-size:var(--fs-body);font-weight:600;cursor:pointer;text-align:left}.param-head button:hover{color:var(--accent)}.param-head{display:flex;align-items:center;gap:var(--sp-1)}.param-caret{flex:none;color:var(--text-3);transition:transform .14s var(--ease)}.param-section.is-open .param-caret{transform:rotate(90deg)}.param-head button>span{flex:1}.param-body{display:flex;flex-direction:column;gap:var(--sp-2);padding-bottom:var(--sp-3)}.field{display:flex;flex-direction:column;gap:6px}.field-label{color:var(--text-2);font-size:var(--fs-hint)}.note{margin:0;color:var(--text-2);font-size:12px;line-height:1.6}.font-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.font-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--panel);cursor:pointer;text-align:left}.font-card:hover{border-color:var(--line-strong)}.font-card.is-active{border-color:var(--accent);background:var(--accent-soft)}.font-name{font-size:var(--fs-body);color:var(--text)}.font-card.is-active .font-name{color:var(--accent);font-weight:600}.font-desc{font-size:12px;color:var(--text-2);line-height:1.4}.candidates{display:flex;flex-direction:column;gap:5px}.candidate-row{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.candidate{height:26px;border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer;padding:0}.candidate:hover{border-color:var(--accent)}.stage{flex:1;min-height:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r-panel);background:var(--panel);overflow:hidden}.stage-top{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);flex:none;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--line)}.stage-meta{display:flex;align-items:center;gap:6px;color:var(--text-2);font-size:var(--fs-hint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.canvas{position:relative;flex:1;min-height:0;display:grid;place-items:center;overflow:auto;padding:56px var(--sp-4)}.canvas-plain{background:var(--stage-plain)}.canvas-light{background:var(--stage-light)}.canvas-dark{background:var(--stage-dark)}.canvas-checker{background-image:linear-gradient(45deg,var(--checker-a) 25%,transparent 25%,transparent 75%,var(--checker-a) 75%),linear-gradient(45deg,var(--checker-a) 25%,transparent 25%,transparent 75%,var(--checker-a) 75%);background-size:20px 20px;background-position:0 0,10px 10px;background-color:var(--checker-b)}.canvas-empty{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);color:var(--text-3);text-align:center;max-width:280px}.canvas-empty p{margin:0;font-size:var(--fs-hint)}.canvas-sample{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);text-align:center}.canvas-sample img{max-width:min(320px,70%);image-rendering:auto}.canvas-sample p{margin:0;color:var(--text-3);font-size:var(--fs-hint)}.canvas-busy{position:absolute;top:var(--sp-2);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--r-full);background:var(--panel);box-shadow:var(--shadow-2);color:var(--text-2);font-size:var(--fs-hint)}.stage-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1);flex:none;padding:var(--sp-1) var(--sp-3);border-top:1px solid var(--line)}.zoom-label{color:var(--text-2);font-size:var(--fs-hint);min-width:62px;text-align:center}.pieces{position:relative;display:flex;align-items:center;justify-content:center;gap:0;flex-wrap:wrap;max-width:100%}.pieces.is-grid{gap:var(--sp-2)}.pieces.is-banner{gap:0;flex-wrap:nowrap;max-width:none}.piece{position:relative;border:1px solid transparent;border-radius:var(--r-sm);background:none;padding:0;cursor:pointer;flex:none;transition:border-color .12s var(--ease)}.piece:hover{border-color:var(--line-strong)}.piece.is-tile{border-radius:0;cursor:default}.piece.is-tile:hover{border-color:transparent}.pieces.is-banner:hover .piece.is-tile:not(:last-child){box-shadow:inset -1px 0 #80808073}.piece.is-selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.piece.is-overridden:after{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:var(--accent)}.piece.is-missing{border-style:dashed;border-color:var(--line-strong)}.piece-img{display:block;width:100%;height:100%;background-repeat:no-repeat;image-rendering:auto}.piece-missing{display:grid;place-items:center;height:100%;color:var(--text-3);font-size:20px}.canvas-msg{align-content:center;justify-items:center}.msg{max-width:420px;padding:12px 16px;border-radius:18px 18px 18px 6px;background:var(--accent-soft);color:var(--text);font-size:15px;line-height:1.85;white-space:pre-wrap;word-break:break-word}.msg-link{color:var(--accent);text-decoration:none}.msg-emoji{display:inline-flex;gap:2px;vertical-align:-3px}.msg-emoji i{width:19px;height:19px;border-radius:5px;background:var(--accent);opacity:.28}.msg-sample{display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:var(--sp-2)}.msg-sample img{height:52px;object-fit:contain}.msg-note,.msg-sent{max-width:420px;margin:var(--sp-2) 0 0;color:var(--text-2);font-size:var(--fs-hint);text-align:center}.msg-sent{display:flex;align-items:center;justify-content:center;gap:5px;color:var(--ok)}.actionbar{display:flex;align-items:center;gap:var(--sp-2);flex:none;padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--r-panel);background:var(--panel)}.actionbar-info{flex:1;min-width:0;color:var(--text-2);font-size:var(--fs-hint)}.shell.is-mobile{display:flex;flex-direction:column;gap:0;padding:0}.mpreview{flex:none;height:clamp(200px,38vh,340px);display:flex;padding:var(--sp-2) var(--sp-2) 0}.medit{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-2);padding-bottom:calc(var(--sp-2) + var(--safe-bottom) + var(--kb, 0px))}.guided{display:flex;flex-direction:column;gap:var(--sp-2)}.guided-steps{display:flex;gap:2px;margin:0;padding:0;list-style:none}.guided-step{flex:1}.guided-step button{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:38px;padding:0 4px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--panel);color:var(--text-2);font-size:var(--fs-body);cursor:pointer}.guided-step button:disabled{opacity:.45;cursor:not-allowed}.guided-num{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--sunken);font-size:11px;font-weight:600}.guided-step.is-current button{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.guided-step.is-current .guided-num{background:var(--accent);color:#fff}.guided-step.is-done .guided-num{background:var(--accent-soft);color:var(--accent)}@media(max-width:420px){.guided-label{display:none}}.guided-pane{display:flex;flex-direction:column;gap:var(--sp-2)}.guided-pane h3{margin:0;font-size:var(--fs-body);font-weight:600}.guided-sub{margin-top:var(--sp-2)!important}.guided-nav{display:flex;gap:var(--sp-2)}.guided-nav .btn{flex:1;min-height:var(--ctl-h-lg)}.guided-summary{margin:0;display:grid;gap:6px}.guided-summary>div{display:grid;grid-template-columns:56px 1fr;gap:var(--sp-2);align-items:baseline}.guided-summary dt{color:var(--text-2);font-size:var(--fs-hint)}.guided-summary dd{margin:0;font-weight:600;word-break:break-all}@media(max-height:560px){.mpreview{display:none}}.drawer{display:flex;flex-direction:column;width:min(760px,100%);max-height:min(80vh,720px);border-radius:var(--r-panel);background:var(--panel);box-shadow:var(--shadow-3);overflow:hidden}.drawer-head{display:flex;align-items:center;justify-content:space-between;flex:none;padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-4);border-bottom:1px solid var(--line)}.drawer-head h2{font-size:var(--fs-title)}.drawer-filters{display:flex;gap:6px;flex-wrap:wrap;flex:none;padding:var(--sp-2) var(--sp-4)}.drawer-body{flex:1;min-height:0;overflow-y:auto;padding:0 var(--sp-4) var(--sp-4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--r-sm);border:1px solid transparent;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .12s var(--ease),border-color .12s var(--ease)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-md{height:32px;padding:0 12px;font-size:13px}.btn-sm{height:26px;padding:0 9px;font-size:12px}.btn.is-icon{padding:0;width:32px}.btn-sm.is-icon{width:26px}.btn.is-full{width:100%}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-ghost{background:var(--panel-2);border-color:var(--line-strong);color:var(--text)}.btn-ghost:hover:not(:disabled){background:var(--sunken)}.btn-quiet{background:none;color:var(--text-2)}.btn-quiet:hover:not(:disabled){background:var(--sunken);color:var(--text)}.btn-quiet.is-active{background:var(--accent-soft);color:var(--accent)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:var(--danger-hover)}.segmented{display:inline-flex;padding:2px;border-radius:var(--r-sm);background:var(--sunken);border:1px solid var(--line)}.segmented button{display:inline-flex;align-items:center;justify-content:center;gap:4px;border:0;background:none;border-radius:4px;color:var(--text-2);cursor:pointer;padding:0 10px;height:26px;font-size:12px;flex:1}.segmented-sm button{height:22px;padding:0 8px}.segmented button.is-active{background:var(--panel);color:var(--text);box-shadow:var(--shadow-1);font-weight:600}.segmented button:disabled{opacity:.4;cursor:not-allowed}.toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);cursor:pointer;user-select:none}.toggle-label{font-size:13px}.toggle input{position:absolute;opacity:0;width:0;height:0}.toggle-track{position:relative;width:36px;height:20px;border-radius:var(--r-full);background:var(--line-strong);transition:background .14s var(--ease);flex:none}.toggle-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:var(--shadow-1);transition:transform .14s var(--ease)}.toggle input:checked+.toggle-track{background:var(--accent)}.toggle input:checked+.toggle-track .toggle-knob{transform:translate(16px)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--accent);outline-offset:2px}.slider{display:flex;flex-direction:column;gap:3px}.slider-head{display:flex;justify-content:space-between;align-items:baseline;font-size:12px}.slider-head label{color:var(--text-2);cursor:pointer}.slider-head output{color:var(--text);font-variant-numeric:tabular-nums;font-family:var(--mono);font-size:11px}.slider-hint{margin:0;font-size:10px;color:var(--text-3)}.slider input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:18px;background:none;cursor:pointer;margin:0}.slider input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:var(--r-full);background:linear-gradient(to right,var(--accent) var(--pct, 0%),var(--line-strong) var(--pct, 0%))}.slider input[type=range]::-moz-range-track{height:4px;border-radius:var(--r-full);background:var(--line-strong)}.slider input[type=range]::-moz-range-progress{height:4px;border-radius:var(--r-full);background:var(--accent)}.slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:50%;background:var(--panel);border:2px solid var(--accent);box-shadow:var(--shadow-1)}.slider input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--panel);border:2px solid var(--accent)}.color-field{position:relative;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.color-label{font-size:12px;color:var(--text-2)}.color-body{display:flex;align-items:center;gap:4px;padding:2px 6px 2px 2px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--sunken)}.color-chip{width:22px;height:22px;border-radius:4px;border:1px solid rgba(0,0,0,.14);cursor:pointer;padding:0}.color-hash{color:var(--text-3);font-size:11px}.color-hex{width:60px;border:0;background:none;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.color-hex:focus{outline:none}.color-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:20;width:190px;padding:var(--sp-2);border-radius:var(--r-md);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-2)}.color-pop input[type=color]{width:100%;height:34px;border:1px solid var(--line);border-radius:var(--r-sm);background:none;cursor:pointer;padding:2px}.color-pop-title{margin:var(--sp-2) 0 4px;font-size:11px;color:var(--text-3)}.color-recent{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.color-recent button{height:20px;border-radius:4px;border:1px solid var(--line);cursor:pointer;padding:0}.scrim{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:var(--sp-4);padding-top:calc(var(--sp-4) + var(--safe-top));padding-bottom:calc(var(--sp-4) + var(--safe-bottom));background:#0e101680;backdrop-filter:blur(2px)}.modal{width:min(480px,100%);max-height:100%;display:flex;flex-direction:column;border-radius:var(--r-lg);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-3);overflow:hidden}.modal.is-wide{width:min(720px,100%)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-size:15px}.modal-body{padding:var(--sp-4);overflow-y:auto;min-height:0}.modal-foot{display:flex;justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--line);background:var(--panel-2)}.published{padding:var(--sp-5);text-align:center;gap:var(--sp-3);align-items:center}.published h2{margin:0;font-size:17px}.published p{margin:0}.published .row{justify-content:center}.published-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:var(--ok-soft);color:var(--ok);margin:0 auto}.publish-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-4)}@media(max-width:640px){.publish-grid{grid-template-columns:1fr}}.publish-label{display:flex;align-items:center;gap:6px;margin:0 0 6px;font-size:12px;color:var(--text-2)}.sample-video{width:100%;border-radius:var(--r-md);background:#000;display:block}.sample-building{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-6) var(--sp-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel-2);text-align:center}.sample-building p{margin:0;font-size:13px}.sample-building .muted{font-size:11px;line-height:1.6}.link-btn{border:0;background:none;color:var(--accent);font-weight:600;cursor:pointer;padding:0;font-size:12px}.sample-failed{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--sp-5) var(--sp-3);border:1px dashed var(--danger);border-radius:var(--r-md);color:var(--danger);text-align:center}.sample-failed p{margin:0;font-size:12px}.publish-form{display:flex;flex-direction:column;gap:var(--sp-3)}.publish-count{display:flex;align-items:baseline;gap:6px;padding:var(--sp-3);border-radius:var(--r-md);background:var(--accent-soft);color:var(--accent)}.publish-count b{font-size:24px;font-variant-numeric:tabular-nums}.publish-count span{font-size:13px}.mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px}.mode-switch button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--panel-2);color:var(--text-2);font-size:12px;cursor:pointer}.mode-switch button.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.mode-switch button:disabled{opacity:.45;cursor:not-allowed}.publish-step{display:flex;align-items:center;gap:6px;margin:0;font-size:12px;color:var(--text-2)}.inline-error{display:flex;gap:8px;padding:10px;border-radius:var(--r-md);background:var(--danger-soft);color:var(--danger);font-size:12px}.inline-error svg{flex:none;margin-top:1px}.inline-error p{margin:0}.tag{padding:1px 7px;border-radius:var(--r-full);font-size:11px;font-weight:600}.tag-quiet{background:var(--sunken);color:var(--text-3);font-family:var(--mono)}.tag-accent{background:var(--accent-soft);color:var(--accent)}.login-lead{margin:0 0 var(--sp-4);line-height:1.6}.login-or{margin:var(--sp-3) 0;text-align:center;font-size:12px;color:var(--text-3)}.login-handoff{margin-top:var(--sp-2)}.login-waiting{display:flex;gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-md);background:var(--panel-2);border:1px solid var(--line)}.login-waiting p{margin:0;font-size:13px}.login-fallback{margin:var(--sp-2) 0 0;font-size:12px;color:var(--text-3)}.login-fallback a{color:var(--accent)}.login-note{margin:var(--sp-4) 0 0;font-size:11px;color:var(--text-3);line-height:1.5}.lib-tabs{display:flex;gap:var(--sp-2);margin-bottom:var(--sp-3);border-bottom:1px solid var(--line)}.lib-tabs button{display:inline-flex;align-items:center;gap:5px;padding:7px 2px;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;background:none;color:var(--text-2);font-size:13px;cursor:pointer}.lib-tabs button.is-active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.lib-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.lib-list li{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2);border-radius:var(--r-md);border:1px solid transparent}.lib-list li:hover{background:var(--panel-2);border-color:var(--line)}.lib-list li.is-current{background:var(--accent-soft);border-color:var(--accent-line)}.lib-thumb{width:42px;height:42px;flex:none;display:grid;place-items:center;border-radius:var(--r-sm);background:var(--sunken);font-size:20px}.lib-main{flex:1;min-width:0}.lib-title{margin:0;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-sub{margin:0;font-size:11px;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-actions{display:flex;gap:2px;flex:none}.lib-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:var(--sp-6);color:var(--text-3)}.pack-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-bottom:var(--sp-3);font-size:13px;color:var(--text-2);flex-wrap:wrap}.pack-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:6px}.pack-cell{position:relative;aspect-ratio:1;display:grid;place-items:center;border-radius:var(--r-sm);background:var(--sunken);border:1px solid var(--line)}.pack-char{font-size:22px}.pack-del{position:absolute;top:2px;right:2px;width:18px;height:18px;display:grid;place-items:center;border:0;border-radius:4px;background:var(--panel);color:var(--text-3);cursor:pointer;opacity:0}.pack-cell:hover .pack-del{opacity:1}.pack-del:hover{color:var(--danger)}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-top:var(--sp-5);padding:var(--sp-3);border:1px solid var(--danger);border-radius:var(--r-md);background:var(--danger-soft);flex-wrap:wrap}.danger-title{margin:0 0 2px;font-size:13px;font-weight:600;color:var(--danger)}.danger-zone p.muted{margin:0;font-size:11px;max-width:44ch}.conflict-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3);margin-top:var(--sp-3)}.conflict-text{margin:4px 0 0;padding:8px;border-radius:var(--r-sm);background:var(--sunken);font-size:13px;word-break:break-all}.empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:var(--sp-6) var(--sp-3);color:var(--text-3);text-align:center}.empty-title{margin:0;font-size:13px;color:var(--text-2)}.empty-hint{margin:0;font-size:12px;max-width:30ch}.toasts{position:fixed;left:50%;bottom:calc(var(--sp-5) + var(--safe-bottom));transform:translate(-50%);z-index:80;display:flex;flex-direction:column;gap:6px;width:min(420px,calc(100vw - 32px));pointer-events:none}.toast{display:flex;gap:8px;padding:10px 12px;border-radius:var(--r-md);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-2);font-size:13px;animation:toast-in .18s var(--ease)}.toast p{margin:0}.toast svg{flex:none;margin-top:2px}.toast-ok svg{color:var(--ok)}.toast-error{border-color:var(--danger)}.toast-error svg{color:var(--danger)}.toast-warn svg{color:var(--warn)}.toast-info svg{color:var(--accent)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.spin{animation:spin .72s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.logo-panel{display:flex;flex-direction:column;gap:var(--sp-3)}.logo-drop{display:flex;flex-direction:column;align-items:center;gap:3px;padding:var(--sp-4) var(--sp-3);border:1px dashed var(--line-strong);border-radius:var(--r-md);background:var(--panel-2);color:var(--text-2);font-size:13px;cursor:pointer;text-align:center;transition:border-color .12s var(--ease),background .12s var(--ease)}.logo-drop:hover,.logo-drop.is-over{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.logo-drop .muted{font-size:11px;line-height:1.5}.logo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:6px}.logo-item{position:relative;aspect-ratio:1;border:1px solid var(--line);border-radius:var(--r-sm);background-color:var(--sunken);background-image:linear-gradient(45deg,rgba(128,128,128,.1) 25%,transparent 25%),linear-gradient(-45deg,rgba(128,128,128,.1) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(128,128,128,.1) 75%),linear-gradient(-45deg,transparent 75%,rgba(128,128,128,.1) 75%);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0;overflow:hidden}.logo-item.is-active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.logo-item>button{width:100%;height:100%;border:0;background:none;padding:4px;cursor:pointer;display:grid;place-items:center}.logo-item img{max-width:100%;max-height:100%;object-fit:contain}.logo-del{position:absolute;top:2px;right:2px;width:17px;height:17px;display:grid;place-items:center;border-radius:4px;background:var(--panel);color:var(--text-3);cursor:pointer;opacity:0}.logo-item:hover .logo-del{opacity:1}.logo-del:hover{color:var(--danger)}.logo-count{margin:0;font-size:11px}.logo-slots{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.logo-slots button{padding:6px 4px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--panel-2);color:var(--text-2);font-size:12px;cursor:pointer}.logo-slots button.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.logo-slots button:disabled{opacity:.4;cursor:not-allowed}.quick-logo{max-width:420px;margin:0 auto;width:100%;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel)}@media(hover:none){.logo-del{opacity:1}}.decor-panel{display:flex;flex-direction:column;gap:var(--sp-3)}.decor-group{display:flex;flex-direction:column;gap:5px}.decor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.decor-card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--panel-2);color:var(--text-2);font-size:10px;cursor:pointer}.decor-card:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.decor-card:disabled{opacity:.4;cursor:not-allowed}.decor-card img{width:30px;height:30px;object-fit:contain}.decor-list{display:flex;flex-direction:column;gap:4px}.decor-row{display:flex;align-items:center;gap:4px;border:1px solid transparent;border-radius:var(--r-sm);padding:2px}.decor-row.is-active{border-color:var(--accent);background:var(--accent-soft)}.decor-row-pick{flex:1;display:flex;align-items:center;gap:6px;border:0;background:none;color:var(--text-2);font-size:12px;cursor:pointer;padding:3px 4px;text-align:left}.decor-row-pick img{width:22px;height:22px;object-fit:contain}.decor-edit{display:flex;flex-direction:column;gap:8px;padding:var(--sp-2);border:1px solid var(--accent-line);border-radius:var(--r-md);background:var(--accent-soft)}.decor-slider{display:grid;grid-template-columns:34px 1fr 42px;align-items:center;gap:6px;font-size:11px;color:var(--text-2)}.decor-slider output{text-align:right;font-family:var(--mono);font-size:10px;color:var(--text)}.decor-slider input[type=range]{width:100%;accent-color:var(--accent)}.decor-handle{position:absolute;transform:translate(-50%,-50%);z-index:3}.decor-grab{display:block;width:100%;height:100%;border:0;padding:0;background:none;cursor:grab;touch-action:none}.decor-grab:active{cursor:grabbing}.decor-grab img{width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}.decor-handle.is-active .decor-grab{outline:2px dashed var(--accent);outline-offset:3px;border-radius:4px}.decor-remove{position:absolute;top:-8px;right:-8px;width:20px;height:20px;display:grid;place-items:center;padding:0;border:1px solid var(--line-strong);border-radius:50%;background:var(--panel);color:var(--text-2);cursor:pointer;opacity:0;transition:opacity .12s var(--ease),background .12s var(--ease);box-shadow:var(--shadow-1)}.decor-handle:hover .decor-remove,.decor-handle.is-active .decor-remove{opacity:1}.decor-remove:hover{background:var(--danger);border-color:var(--danger);color:#fff}.decor-remove:after{content:"";position:absolute;inset:-8px}@media(hover:none){.decor-remove{opacity:1}}.stage-pieces{position:relative}.plate-group{display:flex;flex-direction:column;gap:4px;margin-bottom:var(--sp-2)}.plate-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.plate-card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 2px 5px;border:1px solid var(--line);border-radius:var(--r-sm);background:linear-gradient(45deg,var(--line) 25%,transparent 25%,transparent 75%,var(--line) 75%),linear-gradient(45deg,var(--line) 25%,transparent 25%,transparent 75%,var(--line) 75%),var(--panel-2);background-size:10px 10px;background-position:0 0,5px 5px;color:var(--text-2);font-size:10px;cursor:pointer;transition:border-color .12s var(--ease)}.plate-card:hover{border-color:var(--accent)}.plate-card img{width:100%;aspect-ratio:1;object-fit:contain}.plate-card span{padding:0 3px;border-radius:var(--r-full);background:var(--panel);white-space:nowrap}.plate-shapes{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.plate-shape{padding:5px 4px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--panel-2);color:var(--text-2);font-size:12px;cursor:pointer}.plate-shape:hover{border-color:var(--accent)}.plate-shape.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}@media(max-width:560px){.topbar{gap:var(--sp-1);padding:0 var(--sp-2)}.brand{margin-right:0}.brand b{font-size:var(--fs-body)}.brand-handle{display:none}.tasks button{padding:0 10px;font-size:var(--fs-hint)}.guest-bar{padding:8px var(--sp-2);font-size:12px}.stage-top{padding:var(--sp-1) var(--sp-2)}.stage-top .seg button{padding:0 9px;font-size:12px}.canvas{padding:var(--sp-2)}}.topup{display:flex;flex-direction:column;gap:var(--sp-3);width:min(420px,100%);padding:var(--sp-4)}.modal-head{display:flex;align-items:center;justify-content:space-between}.modal-head h2{font-size:var(--fs-title)}.topup-balance{display:flex;flex-direction:column;gap:2px;padding:var(--sp-3);border-radius:var(--r-ctl);background:var(--accent-soft)}.topup-balance b{color:var(--accent);font-size:24px;line-height:1.2}.coin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.coin-card{display:flex;flex-direction:column;align-items:center;gap:1px;padding:10px 4px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--panel);cursor:pointer}.coin-card:hover{border-color:var(--line-strong)}.coin-card.is-active{border-color:var(--accent);background:var(--accent-soft)}.coin-card b{font-size:var(--fs-panel);color:var(--text)}.coin-card.is-active b{color:var(--accent)}.coin-card span{font-size:12px;color:var(--text-2)}.coin-card em{font-style:normal;font-size:11px;color:var(--text-3)}.topup-loading,.topup-waiting{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-ctl);background:var(--panel-2);color:var(--text-2);font-size:var(--fs-hint)}.topup-waiting p{margin:0}.topup-waiting>div{flex:1}.topup-done{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-4) 0;color:var(--ok);text-align:center}.topup-done p{margin:0;color:var(--text)}.library-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.library-heading strong{font-size:15px;font-weight:600}.library-heading p{color:var(--text-2);font-size:12px;margin:5px 0 0}.style-search{width:100%;box-sizing:border-box;padding:11px 13px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:var(--sunken);font:inherit;font-size:13px}.style-filters{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}.library-count{font-size:11px;color:var(--text-2);margin-bottom:10px}.style-library .style-grid{gap:14px 10px}.style-library .style-shot{background:#f0f2f5;aspect-ratio:1.6}.surface-dark .style-shot{background:#252936}.surface-dark .style-card.is-active .style-shot{background:#303044}.style-library .style-card.is-active .style-shot{box-shadow:0 0 0 1px var(--accent)}.style-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px}.surface-switch{display:flex;gap:8px;padding:6px;border:1px solid var(--line);border-radius:20px}.surface-dot{width:19px;height:19px;border:2px solid transparent;border-radius:50%;cursor:pointer}.surface-dot.light{background:#eceef2}.surface-dot.dark{background:#252936}.surface-dot.selected{outline:2px solid var(--accent);outline-offset:2px}.motion-feature{display:flex;align-items:center;gap:16px;padding:14px;background:var(--sunken);border-radius:16px}.motion-sample{flex:0 0 86px;width:86px;height:86px;display:grid;place-items:center}.motion-sample img{width:100%;height:100%;object-fit:contain}.motion-feature strong{font-size:15px}.motion-feature p{margin:5px 0 8px;font-size:12px;color:var(--text-2)}.motion-feature small{display:block;font-size:10px;color:var(--text-2);margin-top:8px}.motion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.motion-card{display:flex;flex-direction:column;gap:5px;padding:12px 8px;text-align:left;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text);cursor:pointer}.motion-card span{font-size:12px;font-weight:500}.motion-card small{font-size:10px;color:var(--text-2)}.motion-card.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.style-card:focus-visible,.motion-card:focus-visible,.surface-dot:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(max-width:480px){.motion-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.style-card{transition:none}.style-card:hover{transform:none}}.style-library .style-grid{grid-template-columns:repeat(auto-fit,minmax(min(130px,100%),1fr))}.motion-grid{grid-template-columns:repeat(auto-fit,minmax(86px,1fr))}@media(max-width:760px){.style-filters{flex-wrap:nowrap;overflow-x:auto;padding:3px 2px 6px;margin:10px 0;scrollbar-width:thin}.style-filters .chip{flex:0 0 auto}.library-heading{margin-bottom:10px}}.chat-size-select{max-width:170px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text-2);font:inherit;font-size:12px}.motion-feature{flex-wrap:wrap}.motion-sample{width:100%;height:108px}.motion-sample img{width:auto;max-width:100%;height:auto;max-height:96px;object-fit:contain}.effect-picker{display:flex;flex-direction:column;gap:var(--sp-2)}.effect-picker .field{display:flex;align-items:center;gap:var(--sp-2)}.effect-picker .field-label{flex:none;min-width:3em;color:var(--text-2);font-size:var(--fs-hint)}.effect-picker input[type=range]{flex:1}.effect-picker .muted{color:var(--text-3);font-size:var(--fs-hint);line-height:1.5}.guided-steps{position:sticky;top:0;z-index:4;background:var(--panel);padding:10px 0}.guided-step button{min-height:46px;padding:8px 4px}.guided-label{display:inline;font-size:12px}.guided-pane>h3{font-size:20px;letter-spacing:-.5px;margin-top:8px}.guided-nav{position:sticky;bottom:0;z-index:5;padding:12px 0 max(12px,var(--safe-bottom));background:var(--panel);border-top:1px solid var(--line)}.guided-nav .btn{min-height:48px}.style-library .style-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.style-card{border-radius:16px;overflow:hidden}.style-card.is-active{box-shadow:0 0 0 2px var(--accent)}.style-shot{min-height:105px}.appearance-controls{display:grid;gap:14px;margin-top:20px}.appearance-section,.segment-editor{padding:16px;border:1px solid var(--line);background:var(--panel-2);border-radius:16px}.appearance-section summary{cursor:pointer;font-weight:600;min-height:30px}.appearance-section summary small{display:block;font-weight:400;color:var(--text-2);margin:5px 0 12px}.font-grid,.material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.font-card,.material-card{border:1px solid var(--line);border-radius:12px;background:#edf3fb;padding:12px 8px;color:#254366;cursor:pointer;min-width:0}.font-card img,.material-card img{display:block;width:100%;height:50px;object-fit:contain;margin-bottom:8px}.font-card.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.segment-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.segment-inputs input{width:100%;min-width:0;min-height:46px;padding:10px;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:8px}.stage-top,.stage-foot{flex-wrap:wrap}.stage .motion-toggle{min-height:36px;padding:4px 12px}.motion-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0 16px}.motion-presets button{min-height:66px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);color:var(--text);cursor:pointer}.motion-presets button.is-active{border-color:var(--accent);background:var(--accent-soft)}.motion-presets small{display:block;color:var(--text-2);margin-top:5px}@media(max-width:700px){.mpreview{height:clamp(172px,28dvh,240px)}.stage-top{padding:6px 10px;gap:5px}.stage-meta{font-size:10px}.stage-foot{padding:6px 10px;gap:6px}.canvas{padding:16px 8px}.guided-num{width:21px;height:21px}.guided-step button{gap:4px}.guided-pane>h3{font-size:18px}}@media(max-height:560px){.mpreview{display:flex;height:116px}.mpreview .stage-top{display:none}.mpreview .canvas{padding:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}}.material-card.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.kit-frame{width:100%;height:100%;border:0;background:transparent}.kit-sizes{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;padding:var(--sp-2)}.kit-mini{display:block;overflow:auto;flex:1 1 100%;border:1px dashed var(--line);border-radius:var(--r-ctl)}.kit-mini-sheet{display:block;position:relative}.kit-mini iframe{position:absolute;left:0;top:0;border:0;background:transparent}.kit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:var(--sp-2);max-height:none;overflow-y:auto;padding:2px}.kit-card{min-height:76px;position:relative;display:flex;flex-direction:column;gap:6px;padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-card);background:var(--panel);cursor:pointer;text-align:left}.kit-card.is-active{border-color:var(--accent);background:var(--accent-soft)}.kit-name{font-size:var(--fs-hint);color:var(--text-1)}.kit-swatch{display:flex;height:18px;border-radius:5px;overflow:hidden}.kit-swatch i{flex:1}.kit-sub{display:flex;align-items:center;justify-content:space-between;margin:var(--sp-3) 0 var(--sp-2);font-size:var(--fs-body);font-weight:600}.kit-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:var(--sp-2)}.kit-slot{display:flex;align-items:center;gap:6px;font-size:var(--fs-hint)}.kit-slot input[type=color]{width:30px;height:30px;padding:0;border:1px solid var(--line);border-radius:7px;background:none;cursor:pointer}.kit-icons{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px;max-height:30vh;overflow-y:auto}.kit-icon{display:grid;place-items:center;aspect-ratio:1;min-height:44px;padding:6px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--panel);cursor:pointer}.kit-icon img{display:block;width:28px;height:28px;max-width:100%;object-fit:contain}.kit-icon:hover{border-color:var(--accent)}.field-row{display:flex;align-items:center;gap:8px}.engine-switch{margin-top:var(--sp-2)}.engine-switch .seg{width:100%}.engine-switch .seg button{flex:1;display:flex;flex-direction:column;gap:2px;padding:8px 6px;line-height:1.25}.engine-switch .seg button small{font-size:var(--fs-hint);opacity:.72;font-weight:400}.engine-switch .hint{margin-top:6px}.text-tools{margin-top:var(--sp-2)}.text-tools-row{display:flex;flex-wrap:wrap;gap:6px}.text-tools-icons{margin-top:var(--sp-2);padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-card);background:var(--sunken)}.text-tools-icons .kit-icons{margin-top:6px;max-height:24vh}.kit-icon.is-active{border-color:var(--accent);background:var(--accent-soft)}.sample-done{display:grid;place-items:center;gap:6px;padding:var(--sp-4) var(--sp-3);text-align:center;color:var(--text-1)}.sample-done p{margin:0}.published-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;margin-top:4px}.published-actions>.btn{min-width:0;min-height:48px;padding:10px 12px;font-size:14px;white-space:nowrap;border:1px solid var(--line-strong);border-radius:12px;background:var(--panel);color:var(--text-2);justify-content:center}.published-actions>.btn:first-child{grid-column:1 / -1;background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent);font-weight:600}.published-actions>.btn:hover{border-color:var(--accent);color:var(--accent)}@media(max-width:380px){.published{padding:20px}.published-actions{gap:8px}.published-actions>.btn{font-size:13px;padding:10px 8px}}:root{--editor-w:440px;--accent:#4f64ee;--accent-hover:#3c50df;--accent-soft:#edf0ff;--bg:#edf0f5;--stage-plain:#e5eaf3;--gutter:20px}.app{background:var(--bg)}.topbar{height:68px;background:var(--panel);border-bottom:1px solid var(--line);padding:0 26px}.brand{gap:10px}.brand>svg{background:var(--accent);color:#fff;padding:8px;width:36px;height:36px;border-radius:11px}.brand b{font-size:19px;letter-spacing:-.5px}.brand-studio{font-size:11px;letter-spacing:2px;margin-left:6px;color:var(--text-2)}.brand-handle{padding-left:16px;border-left:1px solid var(--line);font-size:12px}.history-tools{display:flex;gap:3px;border-right:1px solid var(--line);padding-right:12px;margin-right:4px}.guest-bar{background:var(--panel);justify-content:center;padding:6px;font-size:11px;border-bottom:1px solid var(--line)}.shell:not(.is-mobile){grid-template-columns:minmax(0,1fr) minmax(380px,440px);max-width:1800px;width:100%;margin:auto}.editor-col{order:2;border:1px solid var(--line);border-radius:22px;padding:0;background:var(--panel);overflow:hidden}.preview-col{order:1}.studio-editor{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--panel)}.studio-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.kit-preview-sheet{position:relative;flex:none}.kit-preview-sheet .kit-frame{position:absolute;left:0;top:0;max-width:none}.studio-heading{flex:none;padding:24px 24px 18px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--accent)}.studio-heading h1{font-size:25px;line-height:1.4;letter-spacing:-.8px;margin:5px 0}.studio-heading p{color:var(--text-2);font-size:12px;margin:0}.content-card{flex:none;margin:0 20px 16px;padding:14px;border:1px solid var(--line);background:var(--panel-2);border-radius:14px}.content-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--text-2)}.content-label label{font-weight:600;color:var(--text)}.content-card textarea{width:100%;display:block;border:none;outline:none;resize:vertical;padding:10px 0;min-height:60px;max-height:130px;font:600 20px/1.5 var(--font);letter-spacing:.2px;color:var(--text);background:transparent}.content-card textarea:focus-visible{box-shadow:0 2px 0 var(--accent)}.content-card textarea::placeholder{font-size:15px;font-weight:400;color:var(--text-3)}.content-options{display:flex;justify-content:space-between;align-items:center;gap:8px}.content-options>span{font-size:11px;color:var(--text-2)}.content-options .seg{background:var(--panel)}.content-options .seg button{min-height:30px;font-size:11px;padding:5px 9px}.quick-copy{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}.quick-copy button{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:4px 7px;color:var(--text-2);font-size:11px;cursor:pointer}.quick-copy span{margin-left:9px;color:var(--accent)}.studio-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0 14px;border-bottom:1px solid var(--line);flex:none}.studio-tabs button{display:flex;justify-content:center;gap:6px;align-items:center;color:var(--text-2);background:none;border:0;border-bottom:2px solid transparent;padding:13px 2px;cursor:pointer;font-size:12px;white-space:nowrap}.studio-tabs button.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:700}.studio-tools{flex:none;min-height:260px;overflow:visible;padding:20px;overscroll-behavior:contain}.tool-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.tool-title h2{font-size:14px;margin:0}.tool-title>span{font-size:10px;color:var(--text-2)}.studio-tools .library-heading{display:none}.studio-tools .style-search{background:var(--panel-2);border-radius:9px;min-height:36px;font-size:12px}.studio-tools .style-filters{gap:5px;margin:12px 0}.studio-tools .style-filters .chip{font-size:11px;min-height:28px;padding:4px 9px}.studio-tools .style-card{border:1px solid var(--line);padding:0;background:var(--panel);border-radius:13px;transition:box-shadow .16s,border-color .16s}.studio-tools .style-card:hover{border-color:var(--accent-line);box-shadow:0 5px 15px #13244512}.studio-tools .style-card.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.studio-tools .style-shot{min-height:94px;height:94px;border:0;border-radius:0;padding:12px 8px;background:#e8eef7}.studio-tools .surface-dark .style-shot{background:#19283f}.studio-tools .style-name{font-size:12px;padding:9px 10px 3px}.studio-tools .style-desc{font-size:10px;padding:0 10px 11px;line-height:1.5;color:var(--text-2)}.studio-tools .style-play{bottom:6px;right:6px}.studio-tools .library-count{font-size:10px}.editor-footnote{font-size:11px;line-height:1.6;color:var(--text-2);margin-top:16px}.studio-detail{border:1px solid var(--line);border-radius:12px;margin-top:14px;padding:12px}.studio-detail summary{cursor:pointer;font-size:12px;min-height:24px}.studio-detail[open] summary{margin-bottom:14px}.expert summary{color:var(--text-2)}.expert summary svg{vertical-align:middle;margin-right:6px}.studio-publish{flex:none;padding:12px 20px 16px;border-top:1px solid var(--line);background:var(--panel);box-shadow:0 -10px 25px #1c284905}.selected-design{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-2);margin-bottom:8px}.selected-design>span:nth-child(2){flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-design small{margin-left:auto;font-size:10px}.live-dot{height:5px;width:5px;background:#29b983;border-radius:50%}.studio-publish .actionbar{border:0;padding:0;background:none;display:flex;flex-wrap:wrap;gap:7px}.studio-publish .actionbar-info{font-size:11px}.studio-publish .actionbar>.btn{width:100%;min-height:46px;border-radius:11px;font-weight:600}.stage{border:1px solid #d9e0eb;background:var(--panel);border-radius:22px;box-shadow:0 12px 40px #23334e08}.stage-top{padding:18px 22px;border-bottom:0}.stage-meta{font-size:12px}.stage-top .seg button{font-size:11px;min-height:30px}.canvas-plain{background:radial-gradient(ellipse at 50% 40%,#f8faff,#e8edf6 58%,#dce4f0)}.canvas{min-height:160px}.stage-foot{background:var(--panel);padding:12px 20px;border-top:0}.chat-proof{padding:20px 24px;background:var(--panel);border-top:1px solid var(--line)}.chat-proof-head{display:flex;justify-content:space-between;color:var(--text-2);font-size:11px;margin-bottom:12px}.chat-proof-message{width:max-content;max-width:100%;overflow:auto;border-radius:14px 14px 14px 3px;background:#e8edf5;padding:17px;display:flex;align-items:center}.chat-proof-message>span{display:block;flex:none;width:24px;height:24px;background-repeat:no-repeat}.chat-proof-message .chat-more{color:#567;font:14px var(--font)}[data-theme=dark] .canvas-plain{background:radial-gradient(ellipse at 50% 40%,#22334e,#111c2d)}[data-theme=dark] .chat-proof-message{background:#24364d}[data-theme=dark] .studio-tools .style-shot{background:#26364b}@media(max-width:899px){.topbar{height:52px;padding:0 12px}.brand-studio,.brand-handle{display:none}.brand b{font-size:16px}.brand>svg{width:29px;height:29px;padding:6px}.guest-bar{font-size:10px;padding:4px 8px}.guest-bar>button{display:none}.history-tools{padding-right:6px;margin:0}.shell.is-mobile{gap:10px;padding:10px}.mpreview{height:clamp(175px,27dvh,240px);padding:0}.medit{padding:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.studio-heading{display:none}.content-card{margin:12px 12px 8px;padding:10px}.content-card textarea{font-size:17px;min-height:43px;padding:5px 0;max-height:76px}.content-card textarea::placeholder{font-size:13px}.content-options .seg button{font-size:10px;min-height:25px}.studio-tabs{padding:0 8px}.studio-tabs button{padding:10px 0;font-size:11px;gap:4px}.studio-tabs svg{width:14px}.studio-tools{padding:14px}.tool-title{margin-bottom:10px}.studio-publish{padding:8px 12px max(10px,var(--safe-bottom))}.studio-publish .actionbar>.btn{min-height:41px}.selected-design{margin-bottom:5px;font-size:10px}.stage-top{padding:8px 12px}.stage-foot{padding:6px 10px}.stage .canvas{min-height:50px;padding:10px}.stage-meta{font-size:10px}.chat-proof{padding:9px 12px}.chat-proof-head{margin-bottom:6px;font-size:10px}.chat-proof-message{padding:6px 10px}.mpreview .stage-foot{display:none}.content-label{font-size:10px}.quick-copy{margin:3px 0 8px}.stage-top .seg button{font-size:10px;min-height:24px;padding:3px 6px}.studio-tools .style-shot{height:85px;min-height:85px}.studio-tools .style-name{font-size:11px}.studio-tools .style-grid{gap:9px}}@media(max-height:650px)and (max-width:899px){.mpreview{height:190px}.chat-proof{display:none}.studio-publish .selected-design{display:flex}.content-card{margin:8px}.content-options{display:none}}@media(prefers-reduced-motion:reduce){.style-card{transition:none!important}}.emblem-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.emblem-choice select{max-width:65%;padding:9px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:8px}.scene-options{border:0;padding:0;margin:18px 0}.scene-options legend{font-weight:700;margin-bottom:10px}.scene-icons h3{margin:10px 0}.scene-motion .btn{margin-top:12px}.content-options button:disabled{opacity:.4;cursor:not-allowed}.scene-icons .motion-presets{grid-template-columns:repeat(3,minmax(0,1fr))}.scene-icons .motion-presets button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:90px}.scene-icons img{object-fit:contain;background:#b8d9ed;border-radius:9px;padding:4px}.blocks{display:flex;flex-direction:column;gap:6px;margin:6px 0 8px}.block{display:flex;align-items:flex-start;gap:8px;padding:4px 8px;border:1px solid transparent;border-radius:10px;background:var(--panel)}.block.is-active{border-color:var(--accent-line)}.block textarea{flex:1;min-height:30px;max-height:92px;padding:5px 0;font-size:18px;resize:none;overflow-y:auto}.block-no{flex:none;margin-top:9px;min-width:15px;font-size:10px;font-weight:700;color:var(--text-3);text-align:center}.block-side{flex:none;display:flex;align-items:center;gap:4px;margin-top:8px}.block-tiles{font-size:10px;color:var(--text-2);white-space:nowrap}.block-del{display:flex;padding:3px;border:0;border-radius:5px;background:none;color:var(--text-3);cursor:pointer}.block-del:hover{color:#d2504a;background:#d2504a14}.block-add{display:flex;align-items:center;gap:6px;width:100%;margin-bottom:10px;padding:7px 9px;border:1px dashed var(--line);border-radius:9px;background:none;color:var(--text-2);font-size:12px;cursor:pointer}.block-add:hover{border-color:var(--accent);color:var(--accent)}.block-add small{margin-left:auto;font-size:10px;color:var(--text-3)}.picker-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0 2px}.shuffle-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--accent);font-size:13px;font-weight:600;cursor:pointer}.shuffle-btn:hover{border-color:var(--accent);color:var(--accent)}@media(max-width:899px){.block textarea{font-size:16px;min-height:30px;max-height:60px}.block-add{padding:6px 8px;font-size:11px}.block-add small{display:none}}.format-hint{font-size:12px;color:var(--text-2);line-height:1.6;margin:8px 0}.format-units{display:flex;flex-wrap:wrap;gap:7px;padding:10px 0}.format-unit{min-width:44px;min-height:44px;padding:8px 12px;border:1px solid var(--line,#ddd);border-radius:10px;background:var(--panel,#fff);color:var(--text,#222);font:inherit;cursor:pointer}.format-unit.is-highlight{background:#fff0ba;color:#604400;border-color:#e7bf47}.format-unit.is-outline{border:2px solid #7775ed;color:var(--text,#222)}.format-unit.is-anchor{outline:3px solid #5357f5;outline-offset:2px;background:#eef;color:#3034ac}.format-line-break{flex-basis:100%;height:0}.format-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.format-insert{display:flex;gap:8px;margin-top:10px}.format-insert input{min-width:0;flex:1}.format-insert button{flex-shrink:0}.tool-dialog-backdrop{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;background:#0f142352;padding:24px}.tool-dialog{display:flex;flex-direction:column;width:min(560px,100%);max-height:80vh;max-height:80dvh;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:24px;box-shadow:0 24px 80px #0003;overflow:hidden;outline:none}.tool-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid var(--line);flex-shrink:0}.tool-dialog-header h2{margin:0;font-size:19px}.tool-dialog-header .icon-btn{font-size:28px;min-width:44px;min-height:44px}.tool-dialog-body{padding:18px 22px;overflow-y:auto;overscroll-behavior:contain;min-height:0;-webkit-overflow-scrolling:touch}.tool-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-top:1px solid var(--line);flex-shrink:0;background:var(--panel)}.tool-dialog-footer span{font-size:12px;color:var(--text-2)}.tool-dialog-footer .btn{min-width:120px;min-height:44px}.tool-dialog-grip{display:none}.tool-dialog .text-tools-panel{margin:0;padding:0;border:0;background:none}.tool-dialog .kit-icons{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:10px;max-height:none;overflow:visible}.tool-dialog .kit-icon{min-height:64px}.tool-dialog .kit-icon img{width:42px;height:42px}.tool-icon-search{display:block}.tool-icon-search>span{display:block;font-size:13px;margin-bottom:8px;color:var(--text-2)}.tool-icon-selected{display:flex;align-items:center;gap:10px;font-size:13px;margin:14px 0;color:var(--text-2)}.tool-icon-selected img{width:32px;height:32px;object-fit:contain}.tool-dialog .text-effect-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tool-dialog .text-effect-grid .chip{min-height:56px;justify-content:center;font-size:16px}@media(max-width:899px){.tool-dialog-backdrop{align-items:flex-end;padding:0;background:#0f142326}.tool-dialog{width:100%;max-height:58vh;max-height:58dvh;border-radius:24px 24px 0 0;border-bottom:0;box-shadow:0 -12px 40px #0002}.tool-dialog.tool-dialog-icons{height:72vh;height:72dvh;max-height:72vh;max-height:72dvh}.tool-dialog-grip{display:block;align-self:center;width:38px;height:4px;background:var(--line-strong);border-radius:6px;margin-top:10px;flex-shrink:0}.tool-dialog-header{padding:8px 18px}.tool-dialog-body{padding:14px 18px}.tool-dialog-footer{padding:12px 18px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.tool-dialog .format-units{gap:9px}.tool-dialog .format-unit{min-width:48px;min-height:48px;font-size:17px}}@media(prefers-reduced-motion:no-preference){.tool-dialog{animation:tool-dialog-enter .18s ease-out}@keyframes tool-dialog-enter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}.tool-dialog-body{padding-bottom:max(18px,env(safe-area-inset-bottom))}.tool-dialog-backdrop{bottom:var(--kb,0px)}.tool-dialog{max-height:min(80dvh,calc(var(--vh,100dvh) - 24px))}@media(max-width:899px){.tool-dialog{max-height:min(58dvh,calc(var(--vh,100dvh) - 16px))}.tool-dialog.tool-dialog-icons{max-height:min(72dvh,calc(var(--vh,100dvh) - 16px))}}:root{--accent:#515de9;--accent-hover:#424dd2;--accent-soft:#eef0ff;--accent-line:#bcc3ff;--bg:#f3f4fb;--panel-2:#f8f9fe;--line:#e6e8f3;--line-strong:#ccd1e5}.app{background:radial-gradient(ellipse at 5% 0%,#e9e6ff80,transparent 48%),var(--bg)}.topbar{border-bottom-color:var(--line);box-shadow:0 3px 20px #343b7b04}.brand{gap:8px}.brand-mark{display:block;width:44px;height:44px;object-fit:contain;flex:none}.brand b{font-size:20px;letter-spacing:-.5px}.brand-studio{font-size:10px;color:var(--accent);font-weight:700;letter-spacing:2px}.brand-handle{color:var(--text-2)}.icon-btn{border-radius:12px}.icon-btn:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.stage,.editor-col,.medit{border-color:var(--line);box-shadow:0 8px 32px #343b7b06}.stage-top{padding:16px 20px}.stage-meta{font-size:13px}.stage-meta .dot{background:#37bb9f}.stage-top .seg{border:1px solid var(--line);padding:4px;background:var(--panel-2);border-radius:14px}.stage-top .seg button{min-height:32px;border-radius:10px;font-size:12px;padding:5px 10px}.stage-top .seg button.is-active{box-shadow:0 2px 6px #29306b0c}.canvas-plain{background:radial-gradient(ellipse at 50% 35%,#fff,#f0f2fb 72%,#e9edf8)}.studio-welcome{display:flex;flex-direction:column;align-items:center;gap:8px;max-width:360px;padding:16px;text-align:center}.studio-welcome img{width:min(280px,100%);height:auto;max-height:190px;object-fit:contain}.studio-welcome h2{font-size:18px;color:var(--text)}.studio-welcome p{margin:0;font-size:13px;color:var(--text-2)}.studio-heading{position:relative;padding:16px 24px 14px;min-height:82px;overflow:hidden}.heading-art{position:absolute;right:8px;top:8px;width:78px;height:59px;object-fit:contain;opacity:.95;pointer-events:none}.studio-heading h1{font-size:20px;margin:4px 0;position:relative}.studio-heading p{display:none}.eyebrow{font-size:10px;letter-spacing:2.2px}.content-card{border-color:var(--line);background:var(--panel-2);border-radius:17px}.content-label{font-size:12px}.block{border-radius:12px;padding:6px 10px}.block.is-active{border-color:var(--accent-line);box-shadow:0 0 0 2px #515de908}.block-add{min-height:36px;font-size:12px;border-radius:10px}.studio-tabs{gap:10px;padding:0 16px}.studio-tabs button{font-size:13px;min-height:42px;padding:10px 2px;border-bottom-width:3px}.studio-tabs button.active{background:linear-gradient(0deg,var(--accent-soft),transparent)}.tool-title{align-items:baseline;gap:8px;margin-bottom:10px}.tool-title h2{font-size:15px}.tool-title>span{font-size:11px}.studio-tools .style-search{min-height:42px;border:1px solid var(--line);border-radius:12px;font-size:13px;background:var(--panel-2)}.picker-head{margin:8px 0}.studio-tools .library-count{font-size:12px}.kit-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.kit-card{min-height:90px;padding:12px;gap:12px;border-radius:15px;transition:box-shadow .15s,border-color .15s}.kit-card:hover{border-color:var(--accent-line);box-shadow:0 4px 14px #37437a0a}.kit-card.is-active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.kit-swatch{height:28px;border-radius:8px;flex:none;box-shadow:inset 0 1px 2px #ffffff30}.kit-name{font-size:13px;font-weight:600;color:var(--text);line-height:1.5;padding-right:12px}.style-check{width:20px;height:20px;border-radius:7px}.kit-sub{font-size:13px}.kit-slot{padding:8px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2)}.kit-sizes{padding:10px 16px;gap:8px}.kit-sizes .hint{font-size:12px}.kit-sizes button{min-height:32px}.studio-publish{padding:12px 20px 16px;box-shadow:0 -5px 20px #343b7b05}.selected-design{font-size:12px;gap:8px;margin-bottom:10px}.selected-design .shuffle-btn{flex:none;min-height:42px;padding:9px 14px;font-size:13px;border-radius:12px;color:var(--accent);background:var(--accent-soft);border-color:var(--accent-line)}.selected-design .shuffle-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}.studio-publish .actionbar>.btn{min-height:48px;border-radius:13px;font-size:15px}.btn-primary{background:linear-gradient(135deg,#636cf5,#4b55dd);border-color:#515de9;box-shadow:0 5px 13px #515de92b,inset 0 1px #ffffff24;color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#5862ee,#414acb);box-shadow:0 6px 16px #515de936}.btn-primary:active:not(:disabled){box-shadow:0 2px 6px #515de922}.btn:disabled{box-shadow:none}[data-theme=dark]{--bg:#121626;--panel:#1c2235;--panel-2:#232b40;--line:#313b56;--line-strong:#495672;--accent:#adb4ff;--accent-hover:#c3c8ff;--accent-soft:#2d355c;--accent-line:#6473be}[data-theme=dark] .app{background:radial-gradient(ellipse at 5% 0%,#35315940,transparent 48%),var(--bg)}[data-theme=dark] .canvas-plain{background:radial-gradient(ellipse at 50% 35%,#293653,#172238 80%)}[data-theme=dark] .btn-primary{color:#fff}[data-theme=dark] .selected-design .shuffle-btn:hover{color:#182037}@media(max-width:899px){.topbar{padding:0 12px}.brand-mark{width:36px;height:36px}.brand b{font-size:17px}.stage-top{padding:8px 12px}.stage-meta{font-size:11px}.stage-top .seg button{min-height:28px;font-size:11px;padding:4px 8px}.studio-publish{padding:8px 12px max(10px,var(--safe-bottom))}.selected-design{font-size:11px;margin-bottom:8px}.selected-design .shuffle-btn{min-height:40px;padding:8px 12px;font-size:13px}.studio-publish .actionbar>.btn{min-height:44px;font-size:14px}.studio-tabs{padding:0 12px}.studio-tabs button{min-height:42px;font-size:12px}.kit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kit-card{min-height:84px}.content-card{padding:10px}.tool-title>span{display:none}.kit-sizes{padding:7px 10px}.kit-sizes button{min-height:28px}.studio-welcome{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:4px 10px;padding:0 6px}.studio-welcome img{width:90px;max-height:60px}.studio-welcome h2{font-size:14px}.studio-welcome p{flex-basis:100%;font-size:12px}}@media(prefers-reduced-motion:reduce){.kit-card{transition:none}}[data-theme=dark] .kit-icon:not(.is-color) img{filter:invert(1)}@media(max-width:899px)and (max-height:520px){.shell.is-mobile{overflow-y:auto;overscroll-behavior:contain}.medit{flex:none;height:460px;min-height:460px}}.style-shuffle-primary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;margin:10px 0;padding:10px 14px;border:1px solid #515de9;border-radius:12px;background:linear-gradient(135deg,#636cf5,#4b55dd);color:#fff;font-size:14px;font-weight:700;cursor:pointer;box-shadow:0 3px 9px #515de920}.style-shuffle-primary:hover:not(:disabled){background:linear-gradient(135deg,#5862ee,#414acb)}.style-shuffle-primary:disabled{opacity:.45;cursor:default;box-shadow:none}.text-tools-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.text-tools-row>.chip{min-height:38px;justify-content:center;font-size:13px;padding:8px;border-radius:10px}.tool-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:6px;background:var(--accent);color:var(--panel);font-size:11px}.text-tools-panel{margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.text-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;font-size:12px;font-weight:600}.text-panel-heading small{font-size:11px;font-weight:400;color:var(--text-2)}.text-effect-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.text-effect-grid>.chip{justify-content:center;min-height:38px;padding:8px 4px;font-size:13px;border-radius:10px}
